X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2Fconfig%2Fobj-ecoff.h;h=6e256fc22ac3347f40f773e0cf4ed23d1a41579e;hb=eb408eaac923140f561d8307cb63da9c9550096a;hp=92676e6f02f66ec46f5322d8363c84de80eb91dc;hpb=e98fe4f7b54cbdf29aef9287bbb1bea8801dd05a;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/config/obj-ecoff.h b/gas/config/obj-ecoff.h index 92676e6f02..6e256fc22a 100644 --- a/gas/config/obj-ecoff.h +++ b/gas/config/obj-ecoff.h @@ -1,5 +1,5 @@ /* ECOFF object file format header file. - Copyright (C) 1993 Free Software Foundation, Inc. + Copyright (C) 1993-2016 Free Software Foundation, Inc. Contributed by Cygnus Support. Written by Ian Lance Taylor . @@ -7,7 +7,7 @@ GAS is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) + the Free Software Foundation; either version 3, or (at your option) any later version. GAS is distributed in the hope that it will be useful, @@ -16,8 +16,9 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with GAS; see the file COPYING. If not, write to - the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + along with GAS; see the file COPYING. If not, write to the Free + Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA + 02110-1301, USA. */ #define OBJ_ECOFF 1 @@ -35,29 +36,42 @@ symbols is undefined (this last is needed to distinguish a .extern symbols from a .comm symbol). */ -#define TARGET_SYMBOL_FIELDS \ - struct efdr *ecoff_file; \ - struct localsym *ecoff_symbol; \ +struct ecoff_sy_obj +{ + struct efdr *ecoff_file; + struct localsym *ecoff_symbol; valueT ecoff_extern_size; +}; + +#define OBJ_SYMFIELD_TYPE struct ecoff_sy_obj /* Modify the ECOFF symbol. */ #define obj_frob_symbol(symp, punt) ecoff_frob_symbol (symp) +/* Set section VMAs and GP. */ +#define obj_frob_file_before_fix() ecoff_frob_file_before_fix () + /* This is used to write the symbolic data in the format that BFD expects it. */ -extern void ecoff_frob_file PARAMS ((void)); #define obj_frob_file() ecoff_frob_file () /* We use the ECOFF functions as our hooks. */ #define obj_read_begin_hook ecoff_read_begin_hook #define obj_symbol_new_hook ecoff_symbol_new_hook +#define obj_symbol_clone_hook ecoff_symbol_clone_hook + +/* Record file switches in the ECOFF symbol table. */ +#define obj_app_file(name, app) ecoff_new_file (name, app) /* At the moment we don't want to do any stabs processing in read.c. */ #define OBJ_PROCESS_STAB(seg, what, string, type, other, desc) \ - ecoff_stab ((what), (string), (type), (other), (desc)) - -#define OBJ_GENERATE_ASM_LINENO(filename, lineno) \ - ecoff_generate_asm_lineno ((filename), (lineno)) + ecoff_stab ((seg), (what), (string), (type), (other), (desc)) #define EMIT_SECTION_SYMBOLS 0 #define obj_sec_sym_ok_for_reloc(SEC) 1 + +#define obj_ecoff_set_ext ecoff_set_ext + +extern void ecoff_frob_file_before_fix (void); +extern void ecoff_frob_file (void); +extern void obj_ecoff_set_ext (symbolS *, EXTR *);