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

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [gas/] [config/] [obj-multi.h] - Blame information for rev 241

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 16 khays
/* Multiple object format emulation.
2
   Copyright 1995, 1996, 1997, 1999, 2000, 2002, 2004, 2005, 2007, 2009, 2010
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_symbol_clone_hook(N, O)                     \
85
        (this_format->symbol_clone_hook                 \
86
         ? (*this_format->symbol_clone_hook) (N, O)     \
87
         : (void) 0)
88
 
89
#define obj_sec_sym_ok_for_reloc(A)                     \
90
        (this_format->sec_sym_ok_for_reloc              \
91
         ? (*this_format->sec_sym_ok_for_reloc) (A)     \
92
         : 0)
93
 
94
#define obj_adjust_symtab()                             \
95
        (this_format->adjust_symtab                     \
96
         ? (*this_format->adjust_symtab) ()             \
97
         : (void) 0)
98
 
99
#define S_GET_SIZE                                      \
100
        (*this_format->s_get_size)
101
 
102
#define S_SET_SIZE(S, N)                                \
103
        (this_format->s_set_size                        \
104
         ? (*this_format->s_set_size) (S, N)            \
105
         : (void) 0)
106
 
107
#define S_GET_ALIGN                                     \
108
        (*this_format->s_get_align)
109
 
110
#define S_SET_ALIGN(S, N)                               \
111
        (this_format->s_set_align                       \
112
         ? (*this_format->s_set_align) (S, N)           \
113
         : (void) 0)
114
 
115
#define S_GET_OTHER                                     \
116
        (*this_format->s_get_other)
117
 
118
#define S_SET_OTHER(S, O)                               \
119
        (this_format->s_set_other                       \
120
         ? (*this_format->s_set_other) (S, O)           \
121
         : (void) 0)
122
 
123
#define S_GET_DESC                                      \
124
        (*this_format->s_get_desc)
125
 
126
#define S_SET_DESC(S, D)                                \
127
        (this_format->s_set_desc                        \
128
         ? (*this_format->s_set_desc) (S, D)            \
129
         : (void) 0)
130
 
131
#define S_GET_TYPE                                      \
132
        (*this_format->s_get_desc)
133
 
134
#define S_SET_TYPE(S, T)                                \
135
        (this_format->s_set_type                        \
136
         ? (*this_format->s_set_type) (S, T)            \
137
         : (void) 0)
138
 
139
#define OBJ_COPY_SYMBOL_ATTRIBUTES(d,s)                 \
140
        (this_format->copy_symbol_attributes            \
141
         ? (*this_format->copy_symbol_attributes) (d, s) \
142
         : (void) 0)
143
 
144
#define OBJ_PROCESS_STAB(SEG,W,S,T,O,D)                 \
145
        (this_format->process_stab                      \
146
         ? (*this_format->process_stab) (SEG,W,S,T,O,D) \
147
         : (void) 0)
148
 
149
#define SEPARATE_STAB_SECTIONS \
150
        ((*this_format->separate_stab_sections) ())
151
 
152
#define INIT_STAB_SECTION(S)                            \
153
        (this_format->init_stab_section                 \
154
         ? (*this_format->init_stab_section) (S)        \
155
         : (void) 0)
156
 
157
#define EMIT_SECTION_SYMBOLS (this_format->emit_section_symbols)
158
 
159
#define FAKE_LABEL_NAME (this_emulation->fake_label_name)
160
 
161
#ifdef OBJ_MAYBE_ELF
162
/* We need OBJ_SYMFIELD_TYPE so that symbol_get_obj is defined in symbol.c
163
   We also need various STAB defines for stab.c  */
164
#include "obj-elf.h"
165
#endif
166
 
167
#ifdef OBJ_MAYBE_AOUT
168
/* We want aout_process_stab in stabs.c for the aout table.  Defining this
169
   macro will have no other effect.  */
170
#define AOUT_STABS
171
#endif
172
 
173
#endif /* !OBJ_HEADER */
174
#endif /* _OBJ_MULTI_H */

powered by: WebSVN 2.1.0

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