From: H. Peter Anvin Date: Mon, 31 Aug 2009 18:57:20 +0000 (-0700) Subject: x86, asm: Make _ASM_EXTABLE() usable from assembly code X-Git-Tag: v2.6.32-rc1~711^2~15 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=709972b1f6f70535d1fddbe1243a51b90c408a1c;p=profile%2Fivi%2Fkernel-x86-ivi.git x86, asm: Make _ASM_EXTABLE() usable from assembly code We have had this convenient macro _ASM_EXTABLE() to generate exception table entry in inline assembly. Make it also usable for pure assembly. Signed-off-by: H. Peter Anvin --- diff --git a/arch/x86/include/asm/asm.h b/arch/x86/include/asm/asm.h index 56be78f..b3ed1e1 100644 --- a/arch/x86/include/asm/asm.h +++ b/arch/x86/include/asm/asm.h @@ -3,7 +3,7 @@ #ifdef __ASSEMBLY__ # define __ASM_FORM(x) x -# define __ASM_EX_SEC .section __ex_table +# define __ASM_EX_SEC .section __ex_table, "a" #else # define __ASM_FORM(x) " " #x " " # define __ASM_EX_SEC " .section __ex_table,\"a\"\n" @@ -38,10 +38,18 @@ #define _ASM_DI __ASM_REG(di) /* Exception table entry */ +#ifdef __ASSEMBLY__ +# define _ASM_EXTABLE(from,to) \ + __ASM_EX_SEC ; \ + _ASM_ALIGN ; \ + _ASM_PTR from , to ; \ + .previous +#else # define _ASM_EXTABLE(from,to) \ __ASM_EX_SEC \ _ASM_ALIGN "\n" \ _ASM_PTR #from "," #to "\n" \ " .previous\n" +#endif #endif /* _ASM_X86_ASM_H */