1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- /* ECOFF object file format header file.
- Copyright (C) 1993-2022 Free Software Foundation, Inc.
- Contributed by Cygnus Support.
- Written by Ian Lance Taylor <ian@cygnus.com>.
- This file is part of GAS.
- 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 3, or (at your option)
- any later version.
- GAS is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- 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, 51 Franklin Street - Fifth Floor, Boston, MA
- 02110-1301, USA. */
- #define OBJ_ECOFF 1
- /* Use the generic ECOFF debugging code. */
- #define ECOFF_DEBUGGING 1
- #define OUTPUT_FLAVOR bfd_target_ecoff_flavour
- #include "targ-cpu.h"
- #include "ecoff.h"
- /* For each gas symbol we keep track of which file it came from, of
- whether we have generated an ECOFF symbol for it, and whether the
- symbols is undefined (this last is needed to distinguish a .extern
- symbols from a .comm 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. */
- #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 ((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 *);
|