OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [binutils-2.20.1/] [gas/] [config/] [obj-multi.h] - Blame information for rev 818

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 205 julius
/* Multiple object format emulation.
2
   Copyright 1995, 1996, 1997, 1999, 2000, 2002, 2004, 2005, 2007, 2009
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 3, 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, 51 Franklin Street - Fifth Floor, Boston, MA
20
   02110-1301, USA.  */
21
 
22
#ifndef _OBJ_MULTI_H
23
#define _OBJ_MULTI_H
24
 
25
#ifdef OBJ_HEADER
26
#include OBJ_HEADER
27
#else
28
 
29
#include "emul.h"
30
#include "targ-cpu.h"
31
 
32
#define OUTPUT_FLAVOR                                   \
33
        (this_format->flavor)
34
 
35
#define obj_begin()                                     \
36
        (this_format->begin                             \
37
         ? (*this_format->begin) ()                     \
38
         : (void) 0)
39
 
40
#define obj_app_file(NAME, APPFILE)                     \
41
        (this_format->app_file                          \
42
         ? (*this_format->app_file) (NAME, APPFILE)     \
43
         : (void) 0)
44
 
45
#define obj_frob_symbol(S,P)                            \
46
        (*this_format->frob_symbol) (S, &(P))
47
 
48
#define obj_frob_file()                                 \
49
        (this_format->frob_file                         \
50
         ? (*this_format->frob_file) ()                 \
51
         : (void) 0)
52
 
53
#define obj_frob_file_before_adjust()                   \
54
        (this_format->frob_file_before_adjust           \
55
         ? (*this_format->frob_file_before_adjust) ()   \
56
         : (void) 0)
57
 
58
#define obj_frob_file_before_fix()                      \
59
        (this_format->frob_file_before_fix              \
60
         ? (*this_format->frob_file_before_fix) ()      \
61
         : (void) 0)
62
 
63
#define obj_frob_file_after_relocs()                    \
64
        (this_format->frob_file_after_relocs            \
65
         ? (*this_format->frob_file_after_relocs) ()    \
66
         : (void) 0)
67
 
68
#define obj_ecoff_set_ext                               \
69
        (*this_format->ecoff_set_ext)
70
 
71
#define obj_pop_insert                                  \
72
        (*this_format->pop_insert)
73
 
74
#define obj_read_begin_hook()                           \
75
        (this_format->read_begin_hook                   \
76
         ? (*this_format->read_begin_hook) ()           \
77
         : (void) 0)
78
 
79
#define obj_symbol_new_hook(S)                          \
80
        (this_format->symbol_new_hook                   \
81
         ? (*this_format->symbol_new_hook) (S)          \
82
         : (void) 0)
83
 
84
#define obj_sec_sym_ok_for_reloc(A)                     \
85
        (this_format->sec_sym_ok_for_reloc              \
86
         ? (*this_format->sec_sym_ok_for_reloc) (A)     \
87
         : 0)
88
 
89
#define S_GET_SIZE                                      \
90
        (*this_format->s_get_size)
91
 
92
#define S_SET_SIZE(S, N)                                \
93
        (this_format->s_set_size                        \
94
         ? (*this_format->s_set_size) (S, N)            \
95
         : (void) 0)
96
 
97
#define S_GET_ALIGN                                     \
98
        (*this_format->s_get_align)
99
 
100
#define S_SET_ALIGN(S, N)                               \
101
        (this_format->s_set_align                       \
102
         ? (*this_format->s_set_align) (S, N)           \
103
         : (void) 0)
104
 
105
#define S_GET_OTHER                                     \
106
        (*this_format->s_get_other)
107
 
108
#define S_SET_OTHER(S, O)                               \
109
        (this_format->s_set_other                       \
110
         ? (*this_format->s_set_other) (S, O)           \
111
         : (void) 0)
112
 
113
#define S_GET_DESC                                      \
114
        (*this_format->s_get_desc)
115
 
116
#define S_SET_DESC(S, D)                                \
117
        (this_format->s_set_desc                        \
118
         ? (*this_format->s_set_desc) (S, D)            \
119
         : (void) 0)
120
 
121
#define S_GET_TYPE                                      \
122
        (*this_format->s_get_desc)
123
 
124
#define S_SET_TYPE(S, T)                                \
125
        (this_format->s_set_type                        \
126
         ? (*this_format->s_set_type) (S, T)            \
127
         : (void) 0)
128
 
129
#define OBJ_COPY_SYMBOL_ATTRIBUTES(d,s)                 \
130
        (this_format->copy_symbol_attributes            \
131
         ? (*this_format->copy_symbol_attributes) (d, s) \
132
         : (void) 0)
133
 
134
#define OBJ_PROCESS_STAB(SEG,W,S,T,O,D)                 \
135
        (this_format->process_stab                      \
136
         ? (*this_format->process_stab) (SEG,W,S,T,O,D) \
137
         : (void) 0)
138
 
139
#define SEPARATE_STAB_SECTIONS \
140
        ((*this_format->separate_stab_sections) ())
141
 
142
#define INIT_STAB_SECTION(S)                            \
143
        (this_format->init_stab_section                 \
144
         ? (*this_format->init_stab_section) (S)        \
145
         : (void) 0)
146
 
147
#define EMIT_SECTION_SYMBOLS (this_format->emit_section_symbols)
148
 
149
#define FAKE_LABEL_NAME (this_emulation->fake_label_name)
150
 
151
#ifdef OBJ_MAYBE_ELF
152
/* We need OBJ_SYMFIELD_TYPE so that symbol_get_obj is defined in symbol.c
153
   We also need various STAB defines for stab.c  */
154
#include "obj-elf.h"
155
#endif
156
 
157
#ifdef OBJ_MAYBE_AOUT
158
/* We want aout_process_stab in stabs.c for the aout table.  Defining this
159
   macro will have no other effect.  */
160
#define AOUT_STABS
161
#endif
162
 
163
#endif /* !OBJ_HEADER */
164
#endif /* _OBJ_MULTI_H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.