aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-x86/linkage.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-x86/linkage.h')
-rw-r--r--include/asm-x86/linkage.h26
1 files changed, 23 insertions, 3 deletions
diff --git a/include/asm-x86/linkage.h b/include/asm-x86/linkage.h
index 94b257fa870..31739c7d66a 100644
--- a/include/asm-x86/linkage.h
+++ b/include/asm-x86/linkage.h
@@ -1,5 +1,25 @@
1#ifndef __ASM_LINKAGE_H
2#define __ASM_LINKAGE_H
3
4#ifdef CONFIG_X86_64
5#define __ALIGN .p2align 4,,15
6#define __ALIGN_STR ".p2align 4,,15"
7#endif
8
1#ifdef CONFIG_X86_32 9#ifdef CONFIG_X86_32
2# include "linkage_32.h" 10#define asmlinkage CPP_ASMLINKAGE __attribute__((regparm(0)))
3#else 11#define prevent_tail_call(ret) __asm__ ("" : "=r" (ret) : "0" (ret))
4# include "linkage_64.h" 12/*
13 * For 32-bit UML - mark functions implemented in assembly that use
14 * regparm input parameters:
15 */
16#define asmregparm __attribute__((regparm(3)))
17#endif
18
19#ifdef CONFIG_X86_ALIGNMENT_16
20#define __ALIGN .align 16,0x90
21#define __ALIGN_STR ".align 16,0x90"
22#endif
23
5#endif 24#endif
25