This set of patches add support for aout emulation on the x86
[deliverable/binutils-gdb.git] / gas / config / obj-multi.h
CommitLineData
4c63da97
AM
1/* Multiple object format emulation.
2 Copyright (C) 1995, 96, 97, 99, 2000
3 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 published by
9 the Free Software Foundation; either version 1, or (at your option)
10 any later version.
11
12 GAS is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 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, 59 Temple Place - Suite 330, Boston, MA
20 02111-1307, USA. */
21
22#ifndef _OBJ_MULTI_H
23#define _OBJ_MULTI_H
24
25#ifdef OBJ_HEADER
26#include OBJ_HEADER
27#else
252b5132
RH
28
29#include "emul.h"
30#include "targ-cpu.h"
31
4ca72d38
AM
32#define OUTPUT_FLAVOR \
33 (this_format->flavor)
34
35#define obj_frob_symbol(S,P) \
4c63da97 36 (*this_format->frob_symbol) (S, &(P))
4ca72d38
AM
37
38#define obj_frob_file() \
39 (this_format->frob_file \
4c63da97 40 ? (*this_format->frob_file) () \
4ca72d38
AM
41 : (void) 0)
42
4c63da97
AM
43#define obj_frob_file_after_relocs() \
44 (this_format->frob_file_after_relocs \
45 ? (*this_format->frob_file_after_relocs) () \
46 : (void) 0)
4ca72d38
AM
47
48#define obj_ecoff_set_ext \
4c63da97 49 (*this_format->ecoff_set_ext)
4ca72d38
AM
50
51#define obj_pop_insert \
4c63da97 52 (*this_format->pop_insert)
4ca72d38
AM
53
54#define obj_read_begin_hook() \
55 (this_format->read_begin_hook \
4c63da97 56 ? (*this_format->read_begin_hook) () \
4ca72d38
AM
57 : (void) 0)
58
4c63da97
AM
59#define obj_symbol_new_hook(S) \
60 (this_format->symbol_new_hook \
61 ? (*this_format->symbol_new_hook) (S) \
62 : (void) 0)
4ca72d38 63
4c63da97
AM
64#define obj_sec_sym_ok_for_reloc(A) \
65 (this_format->sec_sym_ok_for_reloc \
66 ? (*this_format->sec_sym_ok_for_reloc) (A) \
67 : 0)
4ca72d38
AM
68
69#define S_GET_SIZE \
4c63da97 70 (*this_format->s_get_size)
4ca72d38
AM
71
72#define S_SET_SIZE \
4c63da97 73 (*this_format->s_set_size)
4ca72d38
AM
74
75#define S_GET_ALIGN \
4c63da97 76 (*this_format->s_get_align)
4ca72d38
AM
77
78#define S_SET_ALIGN \
4c63da97
AM
79 (*this_format->s_set_align)
80
81#define S_GET_OTHER \
82 (*this_format->s_get_other)
83
84#define S_GET_DESC \
85 (*this_format->s_get_desc)
4ca72d38
AM
86
87#define OBJ_COPY_SYMBOL_ATTRIBUTES(d,s) \
88 (this_format->copy_symbol_attributes \
4c63da97 89 ? (*this_format->copy_symbol_attributes) (d, s) \
4ca72d38
AM
90 : (void) 0)
91
92#define OBJ_PROCESS_STAB(SEG,W,S,T,O,D) \
93 (this_format->process_stab \
4c63da97 94 ? (*this_format->process_stab) (SEG,W,S,T,O,D) \
4ca72d38 95 : (void) 0)
252b5132 96
252b5132 97#ifdef OBJ_MAYBE_ELF
4c63da97
AM
98/* We need OBJ_SYMFIELD_TYPE so that symbol_get_obj is defined in symbol.c
99 We also need various STAB defines for stab.c */
4ca72d38 100#include "obj-elf.h"
252b5132 101#endif
4c63da97
AM
102
103#endif /* !OBJ_HEADER */
104#endif /* _OBJ_MULTI_H */
This page took 0.042232 seconds and 4 git commands to generate.