xref: /openbmc/linux/arch/x86/include/asm/linkage.h (revision ffedeeb7)
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