tizen 2.3.1 release
[external/binutils.git] / ld / ldgram.h
1 /* A Bison parser, made by GNU Bison 2.3.  */
2
3 /* Skeleton interface for Bison's Yacc-like parsers in C
4
5    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6    Free Software Foundation, Inc.
7
8    This program is free software; you can redistribute it and/or modify
9    it under the terms of the GNU General Public License as published by
10    the Free Software Foundation; either version 2, or (at your option)
11    any later version.
12
13    This program is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16    GNU General Public License for more details.
17
18    You should have received a copy of the GNU General Public License
19    along with this program; if not, write to the Free Software
20    Foundation, Inc., 51 Franklin Street, Fifth Floor,
21    Boston, MA 02110-1301, USA.  */
22
23 /* As a special exception, you may create a larger work that contains
24    part or all of the Bison parser skeleton and distribute that work
25    under terms of your choice, so long as that work isn't itself a
26    parser generator using the skeleton or a modified version thereof
27    as a parser skeleton.  Alternatively, if you modify or redistribute
28    the parser skeleton itself, you may (at your option) remove this
29    special exception, which will cause the skeleton and the resulting
30    Bison output files to be licensed under the GNU General Public
31    License without this special exception.
32
33    This special exception was added by the Free Software Foundation in
34    version 2.2 of Bison.  */
35
36 /* Tokens.  */
37 #ifndef YYTOKENTYPE
38 # define YYTOKENTYPE
39    /* Put the tokens into the symbol table, so that GDB and other debuggers
40       know about them.  */
41    enum yytokentype {
42      INT = 258,
43      NAME = 259,
44      LNAME = 260,
45      OREQ = 261,
46      ANDEQ = 262,
47      RSHIFTEQ = 263,
48      LSHIFTEQ = 264,
49      DIVEQ = 265,
50      MULTEQ = 266,
51      MINUSEQ = 267,
52      PLUSEQ = 268,
53      OROR = 269,
54      ANDAND = 270,
55      NE = 271,
56      EQ = 272,
57      GE = 273,
58      LE = 274,
59      RSHIFT = 275,
60      LSHIFT = 276,
61      UNARY = 277,
62      END = 278,
63      ALIGN_K = 279,
64      BLOCK = 280,
65      BIND = 281,
66      QUAD = 282,
67      SQUAD = 283,
68      LONG = 284,
69      SHORT = 285,
70      BYTE = 286,
71      SECTIONS = 287,
72      PHDRS = 288,
73      INSERT_K = 289,
74      AFTER = 290,
75      BEFORE = 291,
76      DATA_SEGMENT_ALIGN = 292,
77      DATA_SEGMENT_RELRO_END = 293,
78      DATA_SEGMENT_END = 294,
79      SORT_BY_NAME = 295,
80      SORT_BY_ALIGNMENT = 296,
81      SORT_BY_INIT_PRIORITY = 297,
82      SIZEOF_HEADERS = 298,
83      OUTPUT_FORMAT = 299,
84      FORCE_COMMON_ALLOCATION = 300,
85      OUTPUT_ARCH = 301,
86      INHIBIT_COMMON_ALLOCATION = 302,
87      SEGMENT_START = 303,
88      INCLUDE = 304,
89      MEMORY = 305,
90      REGION_ALIAS = 306,
91      LD_FEATURE = 307,
92      NOLOAD = 308,
93      DSECT = 309,
94      COPY = 310,
95      INFO = 311,
96      OVERLAY = 312,
97      DEFINED = 313,
98      TARGET_K = 314,
99      SEARCH_DIR = 315,
100      MAP = 316,
101      ENTRY = 317,
102      NEXT = 318,
103      SIZEOF = 319,
104      ALIGNOF = 320,
105      ADDR = 321,
106      LOADADDR = 322,
107      MAX_K = 323,
108      MIN_K = 324,
109      STARTUP = 325,
110      HLL = 326,
111      SYSLIB = 327,
112      FLOAT = 328,
113      NOFLOAT = 329,
114      NOCROSSREFS = 330,
115      ORIGIN = 331,
116      FILL = 332,
117      LENGTH = 333,
118      CREATE_OBJECT_SYMBOLS = 334,
119      INPUT = 335,
120      GROUP = 336,
121      OUTPUT = 337,
122      CONSTRUCTORS = 338,
123      ALIGNMOD = 339,
124      AT = 340,
125      SUBALIGN = 341,
126      PROVIDE = 342,
127      PROVIDE_HIDDEN = 343,
128      AS_NEEDED = 344,
129      CHIP = 345,
130      LIST = 346,
131      SECT = 347,
132      ABSOLUTE = 348,
133      LOAD = 349,
134      NEWLINE = 350,
135      ENDWORD = 351,
136      ORDER = 352,
137      NAMEWORD = 353,
138      ASSERT_K = 354,
139      FORMAT = 355,
140      PUBLIC = 356,
141      DEFSYMEND = 357,
142      BASE = 358,
143      ALIAS = 359,
144      TRUNCATE = 360,
145      REL = 361,
146      INPUT_SCRIPT = 362,
147      INPUT_MRI_SCRIPT = 363,
148      INPUT_DEFSYM = 364,
149      CASE = 365,
150      EXTERN = 366,
151      START = 367,
152      VERS_TAG = 368,
153      VERS_IDENTIFIER = 369,
154      GLOBAL = 370,
155      LOCAL = 371,
156      VERSIONK = 372,
157      INPUT_VERSION_SCRIPT = 373,
158      KEEP = 374,
159      ONLY_IF_RO = 375,
160      ONLY_IF_RW = 376,
161      SPECIAL = 377,
162      INPUT_SECTION_FLAGS = 378,
163      EXCLUDE_FILE = 379,
164      CONSTANT = 380,
165      INPUT_DYNAMIC_LIST = 381
166    };
167 #endif
168 /* Tokens.  */
169 #define INT 258
170 #define NAME 259
171 #define LNAME 260
172 #define OREQ 261
173 #define ANDEQ 262
174 #define RSHIFTEQ 263
175 #define LSHIFTEQ 264
176 #define DIVEQ 265
177 #define MULTEQ 266
178 #define MINUSEQ 267
179 #define PLUSEQ 268
180 #define OROR 269
181 #define ANDAND 270
182 #define NE 271
183 #define EQ 272
184 #define GE 273
185 #define LE 274
186 #define RSHIFT 275
187 #define LSHIFT 276
188 #define UNARY 277
189 #define END 278
190 #define ALIGN_K 279
191 #define BLOCK 280
192 #define BIND 281
193 #define QUAD 282
194 #define SQUAD 283
195 #define LONG 284
196 #define SHORT 285
197 #define BYTE 286
198 #define SECTIONS 287
199 #define PHDRS 288
200 #define INSERT_K 289
201 #define AFTER 290
202 #define BEFORE 291
203 #define DATA_SEGMENT_ALIGN 292
204 #define DATA_SEGMENT_RELRO_END 293
205 #define DATA_SEGMENT_END 294
206 #define SORT_BY_NAME 295
207 #define SORT_BY_ALIGNMENT 296
208 #define SORT_BY_INIT_PRIORITY 297
209 #define SIZEOF_HEADERS 298
210 #define OUTPUT_FORMAT 299
211 #define FORCE_COMMON_ALLOCATION 300
212 #define OUTPUT_ARCH 301
213 #define INHIBIT_COMMON_ALLOCATION 302
214 #define SEGMENT_START 303
215 #define INCLUDE 304
216 #define MEMORY 305
217 #define REGION_ALIAS 306
218 #define LD_FEATURE 307
219 #define NOLOAD 308
220 #define DSECT 309
221 #define COPY 310
222 #define INFO 311
223 #define OVERLAY 312
224 #define DEFINED 313
225 #define TARGET_K 314
226 #define SEARCH_DIR 315
227 #define MAP 316
228 #define ENTRY 317
229 #define NEXT 318
230 #define SIZEOF 319
231 #define ALIGNOF 320
232 #define ADDR 321
233 #define LOADADDR 322
234 #define MAX_K 323
235 #define MIN_K 324
236 #define STARTUP 325
237 #define HLL 326
238 #define SYSLIB 327
239 #define FLOAT 328
240 #define NOFLOAT 329
241 #define NOCROSSREFS 330
242 #define ORIGIN 331
243 #define FILL 332
244 #define LENGTH 333
245 #define CREATE_OBJECT_SYMBOLS 334
246 #define INPUT 335
247 #define GROUP 336
248 #define OUTPUT 337
249 #define CONSTRUCTORS 338
250 #define ALIGNMOD 339
251 #define AT 340
252 #define SUBALIGN 341
253 #define PROVIDE 342
254 #define PROVIDE_HIDDEN 343
255 #define AS_NEEDED 344
256 #define CHIP 345
257 #define LIST 346
258 #define SECT 347
259 #define ABSOLUTE 348
260 #define LOAD 349
261 #define NEWLINE 350
262 #define ENDWORD 351
263 #define ORDER 352
264 #define NAMEWORD 353
265 #define ASSERT_K 354
266 #define FORMAT 355
267 #define PUBLIC 356
268 #define DEFSYMEND 357
269 #define BASE 358
270 #define ALIAS 359
271 #define TRUNCATE 360
272 #define REL 361
273 #define INPUT_SCRIPT 362
274 #define INPUT_MRI_SCRIPT 363
275 #define INPUT_DEFSYM 364
276 #define CASE 365
277 #define EXTERN 366
278 #define START 367
279 #define VERS_TAG 368
280 #define VERS_IDENTIFIER 369
281 #define GLOBAL 370
282 #define LOCAL 371
283 #define VERSIONK 372
284 #define INPUT_VERSION_SCRIPT 373
285 #define KEEP 374
286 #define ONLY_IF_RO 375
287 #define ONLY_IF_RW 376
288 #define SPECIAL 377
289 #define INPUT_SECTION_FLAGS 378
290 #define EXCLUDE_FILE 379
291 #define CONSTANT 380
292 #define INPUT_DYNAMIC_LIST 381
293
294
295
296
297 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
298 typedef union YYSTYPE
299 #line 62 "ldgram.y"
300 {
301   bfd_vma integer;
302   struct big_int
303     {
304       bfd_vma integer;
305       char *str;
306     } bigint;
307   fill_type *fill;
308   char *name;
309   const char *cname;
310   struct wildcard_spec wildcard;
311   struct wildcard_list *wildcard_list;
312   struct name_list *name_list;
313   struct flag_info_list *flag_info_list;
314   struct flag_info *flag_info;
315   int token;
316   union etree_union *etree;
317   struct phdr_info
318     {
319       bfd_boolean filehdr;
320       bfd_boolean phdrs;
321       union etree_union *at;
322       union etree_union *flags;
323     } phdr;
324   struct lang_nocrossref *nocrossref;
325   struct lang_output_section_phdr_list *section_phdr;
326   struct bfd_elf_version_deps *deflist;
327   struct bfd_elf_version_expr *versyms;
328   struct bfd_elf_version_tree *versnode;
329 }
330 /* Line 1529 of yacc.c.  */
331 #line 332 "ldgram.h"
332         YYSTYPE;
333 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
334 # define YYSTYPE_IS_DECLARED 1
335 # define YYSTYPE_IS_TRIVIAL 1
336 #endif
337
338 extern YYSTYPE yylval;
339