obj-aout.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /* obj-aout.h, a.out object file format for gas, the assembler.
  2. Copyright (C) 1989-2015 Free Software Foundation, Inc.
  3. This file is part of GAS, the GNU Assembler.
  4. GAS is free software; you can redistribute it and/or modify
  5. it under the terms of the GNU General Public License as
  6. published by the Free Software Foundation; either version 3,
  7. or (at your option) any later version.
  8. GAS is distributed in the hope that it will be useful, but
  9. WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
  11. the GNU General Public License for more details.
  12. You should have received a copy of the GNU General Public License
  13. along with GAS; see the file COPYING. If not, write to the Free
  14. Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
  15. 02110-1301, USA. */
  16. /* Tag to validate a.out object file format processing */
  17. #define OBJ_AOUT 1
  18. #include "targ-cpu.h"
  19. #include "bfd/libaout.h"
  20. #define OUTPUT_FLAVOR bfd_target_aout_flavour
  21. extern const pseudo_typeS aout_pseudo_table[];
  22. #ifndef obj_pop_insert
  23. #define obj_pop_insert() pop_insert (aout_pseudo_table)
  24. #endif
  25. /* Symbol table entry data type. */
  26. typedef struct nlist obj_symbol_type; /* Symbol table entry. */
  27. /* Symbol table macros and constants */
  28. #define S_SET_OTHER(S,V) \
  29. (aout_symbol (symbol_get_bfdsym (S))->other = (V))
  30. #define S_SET_TYPE(S,T) \
  31. (aout_symbol (symbol_get_bfdsym (S))->type = (T))
  32. #define S_SET_DESC(S,D) \
  33. (aout_symbol (symbol_get_bfdsym (S))->desc = (D))
  34. #define S_GET_OTHER(S) \
  35. (aout_symbol (symbol_get_bfdsym (S))->other)
  36. #define S_GET_TYPE(S) \
  37. (aout_symbol (symbol_get_bfdsym (S))->type)
  38. #define S_GET_DESC(S) \
  39. (aout_symbol (symbol_get_bfdsym (S))->desc)
  40. extern asection *text_section, *data_section, *bss_section;
  41. #define obj_frob_symbol(S,PUNT) obj_aout_frob_symbol (S, &PUNT)
  42. #define obj_frob_file_before_fix() obj_aout_frob_file_before_fix ()
  43. extern void obj_aout_frob_symbol (symbolS *, int *);
  44. extern void obj_aout_frob_file_before_fix (void);
  45. #define obj_sec_sym_ok_for_reloc(SEC) 1
  46. #define obj_read_begin_hook() {;}
  47. #define obj_symbol_new_hook(s) {;}
  48. #define EMIT_SECTION_SYMBOLS 0
  49. #define AOUT_STABS