Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* |
2 | * include/asm-v850/module.h -- Architecture-specific module hooks | |
3 | * | |
4 | * Copyright (C) 2001,02,03,04 NEC Corporation | |
5 | * Copyright (C) 2001,02,03,04 Miles Bader <miles@gnu.org> | |
6 | * Copyright (C) 2001,03 Rusty Russell | |
7 | * | |
8 | * This file is subject to the terms and conditions of the GNU General | |
9 | * Public License. See the file COPYING in the main directory of this | |
10 | * archive for more details. | |
11 | * | |
12 | * Written by Miles Bader <miles@gnu.org> | |
13 | * | |
14 | * Derived in part from include/asm-ppc/module.h | |
15 | */ | |
16 | ||
17 | #ifndef __V850_MODULE_H__ | |
18 | #define __V850_MODULE_H__ | |
19 | ||
20 | #define MODULE_SYMBOL_PREFIX "_" | |
21 | ||
22 | struct v850_plt_entry | |
23 | { | |
24 | /* Indirect jump instruction sequence (6-byte mov + 2-byte jr). */ | |
25 | unsigned long tramp[2]; | |
26 | }; | |
27 | ||
28 | struct mod_arch_specific | |
29 | { | |
30 | /* Indices of PLT sections within module. */ | |
31 | unsigned int core_plt_section, init_plt_section; | |
32 | }; | |
33 | ||
34 | #define Elf_Shdr Elf32_Shdr | |
35 | #define Elf_Sym Elf32_Sym | |
36 | #define Elf_Ehdr Elf32_Ehdr | |
37 | ||
38 | /* Make empty sections for module_frob_arch_sections to expand. */ | |
39 | #ifdef MODULE | |
40 | asm(".section .plt,\"ax\",@nobits; .align 3; .previous"); | |
41 | asm(".section .init.plt,\"ax\",@nobits; .align 3; .previous"); | |
42 | #endif | |
43 | ||
44 | /* We don't do exception tables. */ | |
45 | struct exception_table_entry; | |
46 | static inline const struct exception_table_entry * | |
47 | search_extable(const struct exception_table_entry *first, | |
48 | const struct exception_table_entry *last, | |
49 | unsigned long value) | |
50 | { | |
51 | return 0; | |
52 | } | |
53 | #define ARCH_HAS_SEARCH_EXTABLE | |
54 | static inline void | |
55 | sort_extable(struct exception_table_entry *start, | |
56 | struct exception_table_entry *finish) | |
57 | { | |
58 | /* nada */ | |
59 | } | |
60 | #define ARCH_HAS_SORT_EXTABLE | |
61 | ||
62 | #endif /* __V850_MODULE_H__ */ |