diff options
author | Helge Deller <deller@gmx.de> | 2013-10-13 15:11:30 -0400 |
---|---|---|
committer | Helge Deller <deller@gmx.de> | 2013-11-07 16:25:33 -0500 |
commit | 61dbbaeb86c2181c79efae2d186193e0f8008af1 (patch) | |
tree | d12b369af162dcdb8835731b36da025158c8b616 /arch/parisc/lib | |
parent | 5e01dc7b26d9f24f39abace5da98ccbd6a5ceb52 (diff) |
parisc: provide macro to create exception table entries
Provide a macro ASM_EXCEPTIONTABLE_ENTRY() to create exception table
entries and convert all open-coded places to use that macro.
This patch is a first step toward creating a exception table which only
holds 32bit pointers even on a 64bit kernel. That way in my own kernel
I was able to reduce the in-kernel exception table from 44kB to 22kB.
Signed-off-by: Helge Deller <deller@gmx.de>
Diffstat (limited to 'arch/parisc/lib')
-rw-r--r-- | arch/parisc/lib/lusercopy.S | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/arch/parisc/lib/lusercopy.S b/arch/parisc/lib/lusercopy.S index 6f2d9355efe2..a512f07d4feb 100644 --- a/arch/parisc/lib/lusercopy.S +++ b/arch/parisc/lib/lusercopy.S | |||
@@ -88,9 +88,7 @@ ENDPROC(lclear_user) | |||
88 | ldo 1(%r25),%r25 | 88 | ldo 1(%r25),%r25 |
89 | .previous | 89 | .previous |
90 | 90 | ||
91 | .section __ex_table,"aw" | 91 | ASM_EXCEPTIONTABLE_ENTRY(1b,2b) |
92 | ASM_ULONG_INSN 1b,2b | ||
93 | .previous | ||
94 | 92 | ||
95 | .procend | 93 | .procend |
96 | 94 | ||
@@ -129,10 +127,8 @@ ENDPROC(lstrnlen_user) | |||
129 | copy %r24,%r26 /* reset r26 so 0 is returned on fault */ | 127 | copy %r24,%r26 /* reset r26 so 0 is returned on fault */ |
130 | .previous | 128 | .previous |
131 | 129 | ||
132 | .section __ex_table,"aw" | 130 | ASM_EXCEPTIONTABLE_ENTRY(1b,3b) |
133 | ASM_ULONG_INSN 1b,3b | 131 | ASM_EXCEPTIONTABLE_ENTRY(2b,3b) |
134 | ASM_ULONG_INSN 2b,3b | ||
135 | .previous | ||
136 | 132 | ||
137 | .procend | 133 | .procend |
138 | 134 | ||