x86, extable: Use .pushsection ... .popsection for _ASM_EXTABLE()
Instead of using .section ... .previous, use .pushsection ... .popsection; this is (hopefully) a bit more robust, especially in complex assembly code. Signed-off-by: H. Peter Anvin <hpa@zytor.com> Cc: David Daney <david.daney@cavium.com> Link: http://lkml.kernel.org/r/CA%2B55aFyijf43qSu3N9nWHEBwaGbb7T2Oq9A=9EyR=Jtyqfq_cQ@mail.gmail.com
This commit is contained in:
parent
060feb6500
commit
d4541805e8
@ -42,17 +42,17 @@
|
||||
|
||||
/* Exception table entry */
|
||||
#ifdef __ASSEMBLY__
|
||||
# define _ASM_EXTABLE(from,to) \
|
||||
__ASM_EX_SEC ; \
|
||||
_ASM_ALIGN ; \
|
||||
_ASM_PTR from , to ; \
|
||||
.previous
|
||||
# define _ASM_EXTABLE(from,to) \
|
||||
.pushsection "__ex_table","a" ; \
|
||||
_ASM_ALIGN ; \
|
||||
_ASM_PTR from , to ; \
|
||||
.popsection
|
||||
#else
|
||||
# define _ASM_EXTABLE(from,to) \
|
||||
__ASM_EX_SEC \
|
||||
_ASM_ALIGN "\n" \
|
||||
_ASM_PTR #from "," #to "\n" \
|
||||
" .previous\n"
|
||||
# define _ASM_EXTABLE(from,to) \
|
||||
" .pushsection \"__ex_table\",\"a\"\n" \
|
||||
_ASM_ALIGN "\n" \
|
||||
_ASM_PTR #from "," #to "\n" \
|
||||
" .popsection\n"
|
||||
#endif
|
||||
|
||||
#endif /* _ASM_X86_ASM_H */
|
||||
|
Loading…
x
Reference in New Issue
Block a user