Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.
1: #ifndef _ASM_X86_ASM_H 2: #define _ASM_X86_ASM_H 3: 4: #ifdef __ASSEMBLY__ 5: # define __ASM_FORM(x) x 6: # define __ASM_FORM_RAW(x) x 7: # define __ASM_FORM_COMMA(x) x, 8: #else 9: # define __ASM_FORM(x) " " #x " " 10: # define __ASM_FORM_RAW(x) #x 11: # define __ASM_FORM_COMMA(x) " " #x "," 12: #endif 13: 14: #ifdef CONFIG_X86_32 15: # define __ASM_SEL(a,b) __ASM_FORM(a) 16: # define __ASM_SEL_RAW(a,b) __ASM_FORM_RAW(a) 17: #else 18: # define __ASM_SEL(a,b) __ASM_FORM(b) 19: # define __ASM_SEL_RAW(a,b) __ASM_FORM_RAW(b) 20: #endif 21: 22: #define __ASM_SIZE(inst, ...) __ASM_SEL(inst##l##__VA_ARGS__, \ 23: inst##q##__VA_ARGS__) 24: #define __ASM_REG(reg) __ASM_SEL_RAW(e##reg, r##reg) 25: 26: #define _ASM_PTR __ASM_SEL(.long, .quad) 27: #define _ASM_ALIGN __ASM_SEL(.balign 4, .balign 8) 28: 29: #define _ASM_MOV __ASM_SIZE(mov) 30: #define _ASM_INC __ASM_SIZE(inc) 31: #define _ASM_DEC __ASM_SIZE(dec) 32: #define _ASM_ADD __ASM_SIZE(add) 33: #define _ASM_SUB __ASM_SIZE(sub) 34: #define _ASM_XADD __ASM_SIZE(xadd) 35: 36: #define _ASM_AX __ASM_REG(ax) 37: #define _ASM_BX __ASM_REG(bx) 38: #define _ASM_CX __ASM_REG(cx) 39: #define _ASM_DX __ASM_REG(dx) 40: #define _ASM_SP __ASM_REG(sp) 41: #define _ASM_BP __ASM_REG(bp) 42: #define _ASM_SI __ASM_REG(si) 43: #define _ASM_DI __ASM_REG(di) 44: 45: /* Exception table entry */ 46: #ifdef __ASSEMBLY__ 47: # define _ASM_EXTABLE(from,to) \ 48: .pushsection "__ex_table","a" ; \ 49: .balign 8 ; \ 50: .long (from) - . ; \ 51: .long (to) - . ; \ 52: .popsection 53: 54: # define _ASM_EXTABLE_EX(from,to) \ 55: .pushsection "__ex_table","a" ; \ 56: .balign 8 ; \ 57: .long (from) - . ; \ 58: .long (to) - . + 0x7ffffff0 ; \ 59: .popsection 60: #else 61: # define _ASM_EXTABLE(from,to) \ 62: " .pushsection \"__ex_table\",\"a\"\n" \ 63: " .balign 8\n" \ 64: " .long (" #from ") - .\n" \ 65: " .long (" #to ") - .\n" \ 66: " .popsection\n" 67: 68: # define _ASM_EXTABLE_EX(from,to) \ 69: " .pushsection \"__ex_table\",\"a\"\n" \ 70: " .balign 8\n" \ 71: " .long (" #from ") - .\n" \ 72: " .long (" #to ") - . + 0x7ffffff0\n" \ 73: " .popsection\n" 74: #endif 75: 76: #endif /* _ASM_X86_ASM_H */ 77: