1
2 #include <asm/ftrace.h>
3 #include <linux/uaccess.h>
4 #include <asm/string.h>
5 #include <asm/page.h>
6 #include <asm/checksum.h>
7
8 #include <asm-generic/asm-prototypes.h>
9
10 #include <asm/pgtable.h>
11 #include <asm/special_insns.h>
12 #include <asm/preempt.h>
13 #include <asm/asm.h>
14
15 #ifndef CONFIG_X86_CMPXCHG64
16 extern void cmpxchg8b_emu(void);
17 #endif
18
19 #ifdef CONFIG_RETPOLINE
20 #ifdef CONFIG_X86_32
21 #define INDIRECT_THUNK(reg) extern asmlinkage void __x86_indirect_thunk_e ## reg(void);
22 #else
23 #define INDIRECT_THUNK(reg) extern asmlinkage void __x86_indirect_thunk_r ## reg(void);
24 INDIRECT_THUNK(8)
25 INDIRECT_THUNK(9)
26 INDIRECT_THUNK(10)
27 INDIRECT_THUNK(11)
28 INDIRECT_THUNK(12)
29 INDIRECT_THUNK(13)
30 INDIRECT_THUNK(14)
31 INDIRECT_THUNK(15)
32 #endif
33 INDIRECT_THUNK(ax)
34 INDIRECT_THUNK(bx)
35 INDIRECT_THUNK(cx)
36 INDIRECT_THUNK(dx)
37 INDIRECT_THUNK(si)
38 INDIRECT_THUNK(di)
39 INDIRECT_THUNK(bp)
40 #endif