diff options
author | Alan Modra <amodra@gmail.com> | 1999-09-02 15:12:01 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 1999-09-02 15:12:01 +0000 |
commit | 4ca72d382982b09b4a838e6170792d657cc707ff (patch) | |
tree | 7c989fb9562e1e88ae43671e9127ee7ee87b6242 /gas/config/obj-multi.h | |
parent | bcef92fa2302e7e7728bc92c28571672b6efd9c1 (diff) | |
download | gdb-4ca72d382982b09b4a838e6170792d657cc707ff.zip gdb-4ca72d382982b09b4a838e6170792d657cc707ff.tar.gz gdb-4ca72d382982b09b4a838e6170792d657cc707ff.tar.bz2 |
Enable --emulation={i386coff,i386elf} for i386 gas.
Diffstat (limited to 'gas/config/obj-multi.h')
-rw-r--r-- | gas/config/obj-multi.h | 86 |
1 files changed, 54 insertions, 32 deletions
diff --git a/gas/config/obj-multi.h b/gas/config/obj-multi.h index d54c61f..56e1f92 100644 --- a/gas/config/obj-multi.h +++ b/gas/config/obj-multi.h @@ -3,42 +3,64 @@ #include "emul.h" #include "targ-cpu.h" -#define OUTPUT_FLAVOR (this_format->flavor) -#define obj_frob_symbol(S,P) (this_format->frob_symbol)(S,&(P)) -#define obj_frob_file (this_format->frob_file) -#define obj_frob_file_after_relocs (this_format->frob_file_after_relocs) -#define obj_ecoff_set_ext (this_format->ecoff_set_ext) -#define obj_pop_insert (this_format->pop_insert) -#define obj_read_begin_hook() (this_format->read_begin_hook?this_format->read_begin_hook():(void)0) -#define obj_symbol_new_hook (this_format->symbol_new_hook) -#define obj_sec_sym_ok_for_reloc (this_format->sec_sym_ok_for_reloc) -#define S_GET_SIZE (this_format->s_get_size) -#define S_SET_SIZE (this_format->s_set_size) -#define S_GET_ALIGN (this_format->s_get_align) -#define S_SET_ALIGN (this_format->s_set_align) -#define OBJ_COPY_SYMBOL_ATTRIBUTES (this_format->copy_symbol_attributes) -#define OBJ_PROCESS_STAB (this_format->process_stab) +#define OUTPUT_FLAVOR \ + (this_format->flavor) + +#define obj_frob_symbol(S,P) \ + (this_format->frob_symbol) (S, &(P)) + +#define obj_frob_file() \ + (this_format->frob_file \ + ? this_format->frob_file () \ + : (void) 0) + +#define obj_frob_file_after_relocs \ + (this_format->frob_file_after_relocs) + +#define obj_ecoff_set_ext \ + (this_format->ecoff_set_ext) + +#define obj_pop_insert \ + (this_format->pop_insert) + +#define obj_read_begin_hook() \ + (this_format->read_begin_hook \ + ? this_format->read_begin_hook () \ + : (void) 0) + +#define obj_symbol_new_hook \ + (this_format->symbol_new_hook) + +#define obj_sec_sym_ok_for_reloc \ + (this_format->sec_sym_ok_for_reloc) + +#define S_GET_SIZE \ + (this_format->s_get_size) + +#define S_SET_SIZE \ + (this_format->s_set_size) + +#define S_GET_ALIGN \ + (this_format->s_get_align) + +#define S_SET_ALIGN \ + (this_format->s_set_align) + +#define OBJ_COPY_SYMBOL_ATTRIBUTES(d,s) \ + (this_format->copy_symbol_attributes \ + ? this_format->copy_symbol_attributes (d, s) \ + : (void) 0) + +#define OBJ_PROCESS_STAB(SEG,W,S,T,O,D) \ + (this_format->process_stab \ + ? this_format->process_stab (SEG,W,S,T,O,D) \ + : (void) 0) #if defined (OBJ_MAYBE_ECOFF) || (defined (OBJ_MAYBE_ELF) && defined (TC_MIPS)) #define ECOFF_DEBUGGING 1 #endif -/* FIXME: What's the story here? Why do we have to define - OBJ_SYMFIELD_TYPE both here and in obj-elf.h? */ - #ifdef OBJ_MAYBE_ELF -struct elf_obj_sy -{ - int local; - expressionS *size; - char *versioned_name; -#ifdef ECOFF_DEBUGGING - /* If we are generating ECOFF debugging information, we need some - additional fields for each symbol. */ - struct efdr *ecoff_file; - struct localsym *ecoff_symbol; - valueT ecoff_extern_size; -#endif -}; -#define OBJ_SYMFIELD_TYPE struct elf_obj_sy +/* We need obj-elf for OBJ_SYMFIELD_TYPE so that symbol_get_obj is defined */ +#include "obj-elf.h" #endif |