aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc/include/asm/module.h
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2008-12-26 18:35:41 -0500
committerDavid S. Miller <davem@davemloft.net>2008-12-26 18:35:41 -0500
commite1648a8194117c7afeb432afb0d10896e10cbea4 (patch)
tree8d8940aa54c06b471b6aa942716064b83bfe7a7f /arch/sparc/include/asm/module.h
parentfe6875ec5c3ca7f6bcb399b6649ba2b64744df51 (diff)
sparc: unify module.h
Use some preprocessor magic in combination with the newly introduced CONFIG_BITS to unify module.h. A few additional symbols are added as they are needed in a follow-up patch Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/include/asm/module.h')
-rw-r--r--arch/sparc/include/asm/module.h32
1 files changed, 24 insertions, 8 deletions
diff --git a/arch/sparc/include/asm/module.h b/arch/sparc/include/asm/module.h
index e82cf9a3e60e..ff8e02d80334 100644
--- a/arch/sparc/include/asm/module.h
+++ b/arch/sparc/include/asm/module.h
@@ -1,8 +1,24 @@
1#ifndef ___ASM_SPARC_MODULE_H 1#ifndef __SPARC_MODULE_H
2#define ___ASM_SPARC_MODULE_H 2#define __SPARC_MODULE_H
3#if defined(__sparc__) && defined(__arch64__) 3struct mod_arch_specific { };
4#include <asm/module_64.h> 4
5#else 5/*
6#include <asm/module_32.h> 6 * Use some preprocessor magic to define the correct symbol
7#endif 7 * for sparc32 and sparc64.
8#endif 8 * Elf_Addr becomes Elf32_Addr for sparc32 and Elf64_Addr for sparc64
9 */
10#define ___ELF(a, b, c) a##b##c
11#define __ELF(a, b, c) ___ELF(a, b, c)
12#define _Elf(t) __ELF(Elf, CONFIG_BITS, t)
13#define _ELF(t) __ELF(ELF, CONFIG_BITS, t)
14
15#define Elf_Shdr _Elf(_Shdr)
16#define Elf_Sym _Elf(_Sym)
17#define Elf_Ehdr _Elf(_Ehdr)
18#define Elf_Rela _Elf(_Rela)
19#define Elf_Addr _Elf(_Addr)
20
21#define ELF_R_SYM _ELF(_R_SYM)
22#define ELF_R_TYPE _ELF(_R_TYPE)
23
24#endif /* __SPARC_MODULE_H */