Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / include / asm-ia64 / module.h
1 #ifndef _ASM_IA64_MODULE_H
2 #define _ASM_IA64_MODULE_H
3
4 /*
5  * IA-64-specific support for kernel module loader.
6  *
7  * Copyright (C) 2003 Hewlett-Packard Co
8  *      David Mosberger-Tang <davidm@hpl.hp.com>
9  */
10
11 struct elf64_shdr;                      /* forward declration */
12
13 struct mod_arch_specific {
14         struct elf64_shdr *core_plt;    /* core PLT section */
15         struct elf64_shdr *init_plt;    /* init PLT section */
16         struct elf64_shdr *got;         /* global offset table */
17         struct elf64_shdr *opd;         /* official procedure descriptors */
18         struct elf64_shdr *unwind;      /* unwind-table section */
19         unsigned long gp;               /* global-pointer for module */
20
21         void *core_unw_table;           /* core unwind-table cookie returned by unwinder */
22         void *init_unw_table;           /* init unwind-table cookie returned by unwinder */
23         unsigned int next_got_entry;    /* index of next available got entry */
24 };
25
26 #define MODULES_ARE_ELF64
27 #define Elf_Shdr        Elf64_Shdr
28 #define Elf_Sym         Elf64_Sym
29 #define Elf_Ehdr        Elf64_Ehdr
30 #define Elf_Rel         Elf64_Rel
31 #define Elf_Rela        Elf64_Rela
32 #define ELF_R_TYPE(X)   ELF64_R_TYPE(X)
33 #define ELF_R_SYM(X)    ELF64_R_SYM(X)
34
35 #define MODULE_PROC_FAMILY      "ia64"
36 #define MODULE_ARCH_VERMAGIC    MODULE_PROC_FAMILY
37
38 #define ARCH_SHF_SMALL  SHF_IA_64_SHORT
39
40 #endif /* _ASM_IA64_MODULE_H */