diff options
Diffstat (limited to 'ld/ldgram.h')
-rw-r--r-- | ld/ldgram.h | 347 |
1 files changed, 347 insertions, 0 deletions
diff --git a/ld/ldgram.h b/ld/ldgram.h new file mode 100644 index 0000000..2cc4c50 --- /dev/null +++ b/ld/ldgram.h @@ -0,0 +1,347 @@ +/* A Bison parser, made by GNU Bison 2.3. */ + +/* Skeleton interface for Bison's Yacc-like parsers in C + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ + +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. + + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ + +/* Tokens. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + /* Put the tokens into the symbol table, so that GDB and other debuggers + know about them. */ + enum yytokentype { + INT = 258, + NAME = 259, + LNAME = 260, + OREQ = 261, + ANDEQ = 262, + RSHIFTEQ = 263, + LSHIFTEQ = 264, + DIVEQ = 265, + MULTEQ = 266, + MINUSEQ = 267, + PLUSEQ = 268, + OROR = 269, + ANDAND = 270, + NE = 271, + EQ = 272, + GE = 273, + LE = 274, + RSHIFT = 275, + LSHIFT = 276, + UNARY = 277, + END = 278, + ALIGN_K = 279, + BLOCK = 280, + BIND = 281, + QUAD = 282, + SQUAD = 283, + LONG = 284, + SHORT = 285, + BYTE = 286, + SECTIONS = 287, + PHDRS = 288, + INSERT_K = 289, + AFTER = 290, + BEFORE = 291, + DATA_SEGMENT_ALIGN = 292, + DATA_SEGMENT_RELRO_END = 293, + DATA_SEGMENT_END = 294, + SORT_BY_NAME = 295, + SORT_BY_ALIGNMENT = 296, + SORT_NONE = 297, + SORT_BY_INIT_PRIORITY = 298, + SIZEOF_HEADERS = 299, + OUTPUT_FORMAT = 300, + FORCE_COMMON_ALLOCATION = 301, + OUTPUT_ARCH = 302, + INHIBIT_COMMON_ALLOCATION = 303, + SEGMENT_START = 304, + INCLUDE = 305, + MEMORY = 306, + REGION_ALIAS = 307, + LD_FEATURE = 308, + NOLOAD = 309, + DSECT = 310, + COPY = 311, + INFO = 312, + OVERLAY = 313, + DEFINED = 314, + TARGET_K = 315, + SEARCH_DIR = 316, + MAP = 317, + ENTRY = 318, + NEXT = 319, + SIZEOF = 320, + ALIGNOF = 321, + ADDR = 322, + LOADADDR = 323, + MAX_K = 324, + MIN_K = 325, + STARTUP = 326, + HLL = 327, + SYSLIB = 328, + FLOAT = 329, + NOFLOAT = 330, + NOCROSSREFS = 331, + ORIGIN = 332, + FILL = 333, + LENGTH = 334, + CREATE_OBJECT_SYMBOLS = 335, + INPUT = 336, + GROUP = 337, + OUTPUT = 338, + CONSTRUCTORS = 339, + ALIGNMOD = 340, + AT = 341, + SUBALIGN = 342, + HIDDEN = 343, + PROVIDE = 344, + PROVIDE_HIDDEN = 345, + AS_NEEDED = 346, + CHIP = 347, + LIST = 348, + SECT = 349, + ABSOLUTE = 350, + LOAD = 351, + NEWLINE = 352, + ENDWORD = 353, + ORDER = 354, + NAMEWORD = 355, + ASSERT_K = 356, + LOG2CEIL = 357, + FORMAT = 358, + PUBLIC = 359, + DEFSYMEND = 360, + BASE = 361, + ALIAS = 362, + TRUNCATE = 363, + REL = 364, + INPUT_SCRIPT = 365, + INPUT_MRI_SCRIPT = 366, + INPUT_DEFSYM = 367, + CASE = 368, + EXTERN = 369, + START = 370, + VERS_TAG = 371, + VERS_IDENTIFIER = 372, + GLOBAL = 373, + LOCAL = 374, + VERSIONK = 375, + INPUT_VERSION_SCRIPT = 376, + KEEP = 377, + ONLY_IF_RO = 378, + ONLY_IF_RW = 379, + SPECIAL = 380, + INPUT_SECTION_FLAGS = 381, + ALIGN_WITH_INPUT = 382, + EXCLUDE_FILE = 383, + CONSTANT = 384, + INPUT_DYNAMIC_LIST = 385 + }; +#endif +/* Tokens. */ +#define INT 258 +#define NAME 259 +#define LNAME 260 +#define OREQ 261 +#define ANDEQ 262 +#define RSHIFTEQ 263 +#define LSHIFTEQ 264 +#define DIVEQ 265 +#define MULTEQ 266 +#define MINUSEQ 267 +#define PLUSEQ 268 +#define OROR 269 +#define ANDAND 270 +#define NE 271 +#define EQ 272 +#define GE 273 +#define LE 274 +#define RSHIFT 275 +#define LSHIFT 276 +#define UNARY 277 +#define END 278 +#define ALIGN_K 279 +#define BLOCK 280 +#define BIND 281 +#define QUAD 282 +#define SQUAD 283 +#define LONG 284 +#define SHORT 285 +#define BYTE 286 +#define SECTIONS 287 +#define PHDRS 288 +#define INSERT_K 289 +#define AFTER 290 +#define BEFORE 291 +#define DATA_SEGMENT_ALIGN 292 +#define DATA_SEGMENT_RELRO_END 293 +#define DATA_SEGMENT_END 294 +#define SORT_BY_NAME 295 +#define SORT_BY_ALIGNMENT 296 +#define SORT_NONE 297 +#define SORT_BY_INIT_PRIORITY 298 +#define SIZEOF_HEADERS 299 +#define OUTPUT_FORMAT 300 +#define FORCE_COMMON_ALLOCATION 301 +#define OUTPUT_ARCH 302 +#define INHIBIT_COMMON_ALLOCATION 303 +#define SEGMENT_START 304 +#define INCLUDE 305 +#define MEMORY 306 +#define REGION_ALIAS 307 +#define LD_FEATURE 308 +#define NOLOAD 309 +#define DSECT 310 +#define COPY 311 +#define INFO 312 +#define OVERLAY 313 +#define DEFINED 314 +#define TARGET_K 315 +#define SEARCH_DIR 316 +#define MAP 317 +#define ENTRY 318 +#define NEXT 319 +#define SIZEOF 320 +#define ALIGNOF 321 +#define ADDR 322 +#define LOADADDR 323 +#define MAX_K 324 +#define MIN_K 325 +#define STARTUP 326 +#define HLL 327 +#define SYSLIB 328 +#define FLOAT 329 +#define NOFLOAT 330 +#define NOCROSSREFS 331 +#define ORIGIN 332 +#define FILL 333 +#define LENGTH 334 +#define CREATE_OBJECT_SYMBOLS 335 +#define INPUT 336 +#define GROUP 337 +#define OUTPUT 338 +#define CONSTRUCTORS 339 +#define ALIGNMOD 340 +#define AT 341 +#define SUBALIGN 342 +#define HIDDEN 343 +#define PROVIDE 344 +#define PROVIDE_HIDDEN 345 +#define AS_NEEDED 346 +#define CHIP 347 +#define LIST 348 +#define SECT 349 +#define ABSOLUTE 350 +#define LOAD 351 +#define NEWLINE 352 +#define ENDWORD 353 +#define ORDER 354 +#define NAMEWORD 355 +#define ASSERT_K 356 +#define LOG2CEIL 357 +#define FORMAT 358 +#define PUBLIC 359 +#define DEFSYMEND 360 +#define BASE 361 +#define ALIAS 362 +#define TRUNCATE 363 +#define REL 364 +#define INPUT_SCRIPT 365 +#define INPUT_MRI_SCRIPT 366 +#define INPUT_DEFSYM 367 +#define CASE 368 +#define EXTERN 369 +#define START 370 +#define VERS_TAG 371 +#define VERS_IDENTIFIER 372 +#define GLOBAL 373 +#define LOCAL 374 +#define VERSIONK 375 +#define INPUT_VERSION_SCRIPT 376 +#define KEEP 377 +#define ONLY_IF_RO 378 +#define ONLY_IF_RW 379 +#define SPECIAL 380 +#define INPUT_SECTION_FLAGS 381 +#define ALIGN_WITH_INPUT 382 +#define EXCLUDE_FILE 383 +#define CONSTANT 384 +#define INPUT_DYNAMIC_LIST 385 + + + + +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +typedef union YYSTYPE +#line 60 "ldgram.y" +{ + bfd_vma integer; + struct big_int + { + bfd_vma integer; + char *str; + } bigint; + fill_type *fill; + char *name; + const char *cname; + struct wildcard_spec wildcard; + struct wildcard_list *wildcard_list; + struct name_list *name_list; + struct flag_info_list *flag_info_list; + struct flag_info *flag_info; + int token; + union etree_union *etree; + struct phdr_info + { + bfd_boolean filehdr; + bfd_boolean phdrs; + union etree_union *at; + union etree_union *flags; + } phdr; + struct lang_nocrossref *nocrossref; + struct lang_output_section_phdr_list *section_phdr; + struct bfd_elf_version_deps *deflist; + struct bfd_elf_version_expr *versyms; + struct bfd_elf_version_tree *versnode; +} +/* Line 1529 of yacc.c. */ +#line 340 "ldgram.h" + YYSTYPE; +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ +# define YYSTYPE_IS_DECLARED 1 +# define YYSTYPE_IS_TRIVIAL 1 +#endif + +extern YYSTYPE yylval; + |