1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _ASM_X86_LINKAGE_H 3 #define _ASM_X86_LINKAGE_H 4 5 #include <linux/stringify.h> 6 7 #undef notrace 8 #define notrace __attribute__((no_instrument_function)) 9 10 #ifdef CONFIG_X86_32 11 #define asmlinkage CPP_ASMLINKAGE __attribute__((regparm(0))) 12 #endif /* CONFIG_X86_32 */ 13 14 #ifdef __ASSEMBLY__ 15 16 /* 17 * GLOBAL is DEPRECATED 18 * 19 * use SYM_DATA_START, SYM_FUNC_START, SYM_INNER_LABEL, SYM_CODE_START, or 20 * similar 21 */ 22 #define GLOBAL(name) SYM_ENTRY(name, SYM_L_GLOBAL, SYM_A_NONE) 23 24 #if defined(CONFIG_X86_64) || defined(CONFIG_X86_ALIGNMENT_16) 25 #define __ALIGN .p2align 4, 0x90 26 #define __ALIGN_STR __stringify(__ALIGN) 27 #endif 28 29 #endif /* __ASSEMBLY__ */ 30 31 #endif /* _ASM_X86_LINKAGE_H */ 32 33