e959c4afab59958b4607c9127a93b781e5398908
[linux-2.6.git] / arch / x86 / include / asm / module.h
1 #ifndef _ASM_X86_MODULE_H
2 #define _ASM_X86_MODULE_H
3
4 /* x86_32/64 are simple */
5 struct mod_arch_specific {};
6
7 #ifdef CONFIG_X86_32
8 # define Elf_Shdr Elf32_Shdr
9 # define Elf_Sym Elf32_Sym
10 # define Elf_Ehdr Elf32_Ehdr
11 #else
12 # define Elf_Shdr Elf64_Shdr
13 # define Elf_Sym Elf64_Sym
14 # define Elf_Ehdr Elf64_Ehdr
15 #endif
16
17 #ifdef CONFIG_X86_64
18 /* X86_64 does not define MODULE_PROC_FAMILY */
19 #elif defined CONFIG_M386
20 #define MODULE_PROC_FAMILY "386 "
21 #elif defined CONFIG_M486
22 #define MODULE_PROC_FAMILY "486 "
23 #elif defined CONFIG_M586
24 #define MODULE_PROC_FAMILY "586 "
25 #elif defined CONFIG_M586TSC
26 #define MODULE_PROC_FAMILY "586TSC "
27 #elif defined CONFIG_M586MMX
28 #define MODULE_PROC_FAMILY "586MMX "
29 #elif defined CONFIG_MCORE2
30 #define MODULE_PROC_FAMILY "CORE2 "
31 #elif defined CONFIG_MATOM
32 #define MODULE_PROC_FAMILY "ATOM "
33 #elif defined CONFIG_M686
34 #define MODULE_PROC_FAMILY "686 "
35 #elif defined CONFIG_MPENTIUMII
36 #define MODULE_PROC_FAMILY "PENTIUMII "
37 #elif defined CONFIG_MPENTIUMIII
38 #define MODULE_PROC_FAMILY "PENTIUMIII "
39 #elif defined CONFIG_MPENTIUMM
40 #define MODULE_PROC_FAMILY "PENTIUMM "
41 #elif defined CONFIG_MPENTIUM4
42 #define MODULE_PROC_FAMILY "PENTIUM4 "
43 #elif defined CONFIG_MK6
44 #define MODULE_PROC_FAMILY "K6 "
45 #elif defined CONFIG_MK7
46 #define MODULE_PROC_FAMILY "K7 "
47 #elif defined CONFIG_MK8
48 #define MODULE_PROC_FAMILY "K8 "
49 #elif defined CONFIG_X86_ELAN
50 #define MODULE_PROC_FAMILY "ELAN "
51 #elif defined CONFIG_MCRUSOE
52 #define MODULE_PROC_FAMILY "CRUSOE "
53 #elif defined CONFIG_MEFFICEON
54 #define MODULE_PROC_FAMILY "EFFICEON "
55 #elif defined CONFIG_MWINCHIPC6
56 #define MODULE_PROC_FAMILY "WINCHIPC6 "
57 #elif defined CONFIG_MWINCHIP3D
58 #define MODULE_PROC_FAMILY "WINCHIP3D "
59 #elif defined CONFIG_MCYRIXIII
60 #define MODULE_PROC_FAMILY "CYRIXIII "
61 #elif defined CONFIG_MVIAC3_2
62 #define MODULE_PROC_FAMILY "VIAC3-2 "
63 #elif defined CONFIG_MVIAC7
64 #define MODULE_PROC_FAMILY "VIAC7 "
65 #elif defined CONFIG_MGEODEGX1
66 #define MODULE_PROC_FAMILY "GEODEGX1 "
67 #elif defined CONFIG_MGEODE_LX
68 #define MODULE_PROC_FAMILY "GEODE "
69 #else
70 #error unknown processor family
71 #endif
72
73 #ifdef CONFIG_X86_32
74 # ifdef CONFIG_4KSTACKS
75 #  define MODULE_STACKSIZE "4KSTACKS "
76 # else
77 #  define MODULE_STACKSIZE ""
78 # endif
79 # define MODULE_ARCH_VERMAGIC MODULE_PROC_FAMILY MODULE_STACKSIZE
80 #endif
81
82 #endif /* _ASM_X86_MODULE_H */