1#ifndef __ASM_GENERIC_MODULE_H 2#define __ASM_GENERIC_MODULE_H 3 4/* 5 * Many architectures just need a simple module 6 * loader without arch specific data. 7 */ 8#ifndef CONFIG_HAVE_MOD_ARCH_SPECIFIC 9struct mod_arch_specific 10{ 11}; 12#endif 13 14#ifdef CONFIG_64BIT 15#define Elf_Shdr Elf64_Shdr 16#define Elf_Phdr Elf64_Phdr 17#define Elf_Sym Elf64_Sym 18#define Elf_Dyn Elf64_Dyn 19#define Elf_Ehdr Elf64_Ehdr 20#define Elf_Addr Elf64_Addr 21#ifdef CONFIG_MODULES_USE_ELF_REL 22#define Elf_Rel Elf64_Rel 23#endif 24#ifdef CONFIG_MODULES_USE_ELF_RELA 25#define Elf_Rela Elf64_Rela 26#endif 27#define ELF_R_TYPE(X) ELF64_R_TYPE(X) 28#define ELF_R_SYM(X) ELF64_R_SYM(X) 29 30#else /* CONFIG_64BIT */ 31 32#define Elf_Shdr Elf32_Shdr 33#define Elf_Phdr Elf32_Phdr 34#define Elf_Sym Elf32_Sym 35#define Elf_Dyn Elf32_Dyn 36#define Elf_Ehdr Elf32_Ehdr 37#define Elf_Addr Elf32_Addr 38#ifdef CONFIG_MODULES_USE_ELF_REL 39#define Elf_Rel Elf32_Rel 40#endif 41#ifdef CONFIG_MODULES_USE_ELF_RELA 42#define Elf_Rela Elf32_Rela 43#endif 44#define ELF_R_TYPE(X) ELF32_R_TYPE(X) 45#define ELF_R_SYM(X) ELF32_R_SYM(X) 46#endif 47 48#endif /* __ASM_GENERIC_MODULE_H */ 49