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