Initial revision
[binutils.git] / gas / config / obj-multi.h
blobfe8d98d0d6e8e0c90d4d562d7ffeffdd49156c8d
1 /* hi */
3 #include "emul.h"
4 #include "targ-cpu.h"
6 #define OUTPUT_FLAVOR (this_format->flavor)
7 #define obj_frob_symbol(S,P) (this_format->frob_symbol)(S,&(P))
8 #define obj_frob_file (this_format->frob_file)
9 #define obj_frob_file_after_relocs (this_format->frob_file_after_relocs)
10 #define obj_ecoff_set_ext (this_format->ecoff_set_ext)
11 #define obj_pop_insert (this_format->pop_insert)
12 #define obj_read_begin_hook() (this_format->read_begin_hook?this_format->read_begin_hook():(void)0)
13 #define obj_symbol_new_hook (this_format->symbol_new_hook)
14 #define obj_sec_sym_ok_for_reloc (this_format->sec_sym_ok_for_reloc)
15 #define S_GET_SIZE (this_format->s_get_size)
16 #define S_SET_SIZE (this_format->s_set_size)
17 #define S_GET_ALIGN (this_format->s_get_align)
18 #define S_SET_ALIGN (this_format->s_set_align)
19 #define OBJ_COPY_SYMBOL_ATTRIBUTES (this_format->copy_symbol_attributes)
20 #define OBJ_PROCESS_STAB (this_format->process_stab)
22 #if defined (OBJ_MAYBE_ECOFF) || (defined (OBJ_MAYBE_ELF) && defined (TC_MIPS))
23 #define ECOFF_DEBUGGING 1
24 #endif
26 /* FIXME: What's the story here? Why do we have to define
27 OBJ_SYMFIELD_TYPE both here and in obj-elf.h? */
28 #ifdef OBJ_MAYBE_ELF
29 struct elf_obj_sy
31 expressionS *size;
32 char *versioned_name;
34 #define OBJ_SYMFIELD_TYPE struct elf_obj_sy
35 #define ELF_TARGET_SYMBOL_FIELDS int local:1;
36 #else
37 #define ELF_TARGET_SYMBOL_FIELDS
38 #endif
40 #ifdef ECOFF_DEBUGGING
41 struct efdr;
42 struct localsym;
43 #define ECOFF_DEBUG_TARGET_SYMBOL_FIELDS struct efdr *ecoff_file; struct localsym *ecoff_symbol; valueT ecoff_extern_size;
44 #else
45 #define ECOFF_DEBUG_TARGET_SYMBOL_FIELDS
46 #endif
48 #define TARGET_SYMBOL_FIELDS \
49 ELF_TARGET_SYMBOL_FIELDS \
50 ECOFF_DEBUG_TARGET_SYMBOL_FIELDS