Go to the documentation of this file. 6 #ifndef XTF_X86_ASM_MACROS_H 7 #define XTF_X86_ASM_MACROS_H 11 # define __ASM_CODE(x) x 12 # define __ASM_CODE_RAW(x) x 14 # define __ASM_CODE(x) " " #x " " 15 # define __ASM_CODE_RAW(x) #x 18 #define ALIGN .align 16 22 # define __ASM_SEL(c, l) __ASM_CODE(c) 23 # define __ASM_SEL_RAW(c, l) __ASM_CODE_RAW(c) 25 # define __ASM_SEL(c, l) __ASM_CODE(l) 26 # define __ASM_SEL_RAW(c, l) __ASM_CODE_RAW(l) 29 #define _WORD __ASM_SEL(.long, .quad) 31 #define __ASM_REG(reg) __ASM_SEL_RAW(e ## reg, r ## reg) 33 #define _ASM_AX __ASM_REG(ax) 34 #define _ASM_CX __ASM_REG(cx) 35 #define _ASM_DX __ASM_REG(dx) 36 #define _ASM_BX __ASM_REG(bx) 37 #define _ASM_SP __ASM_REG(sp) 38 #define _ASM_BP __ASM_REG(bp) 39 #define _ASM_SI __ASM_REG(si) 40 #define _ASM_DI __ASM_REG(di) 46 #if defined(__x86_64__) 62 #elif defined(__i386__) 71 # error Bad architecture for SAVE_ALL 76 #if defined(__x86_64__) 92 #elif defined(__i386__) 101 # error Bad architecture for RESTORE_ALL