1*c9ea9e7aSLionel Sambuc /* A Bison parser, made by GNU Bison 3.0.2. */ 2*c9ea9e7aSLionel Sambuc 3*c9ea9e7aSLionel Sambuc /* Bison interface for Yacc-like parsers in C 4*c9ea9e7aSLionel Sambuc 5*c9ea9e7aSLionel Sambuc Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc. 6*c9ea9e7aSLionel Sambuc 7*c9ea9e7aSLionel Sambuc This program is free software: you can redistribute it and/or modify 8*c9ea9e7aSLionel Sambuc it under the terms of the GNU General Public License as published by 9*c9ea9e7aSLionel Sambuc the Free Software Foundation, either version 3 of the License, or 10*c9ea9e7aSLionel Sambuc (at your option) any later version. 11*c9ea9e7aSLionel Sambuc 12*c9ea9e7aSLionel Sambuc This program is distributed in the hope that it will be useful, 13*c9ea9e7aSLionel Sambuc but WITHOUT ANY WARRANTY; without even the implied warranty of 14*c9ea9e7aSLionel Sambuc MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15*c9ea9e7aSLionel Sambuc GNU General Public License for more details. 16*c9ea9e7aSLionel Sambuc 17*c9ea9e7aSLionel Sambuc You should have received a copy of the GNU General Public License 18*c9ea9e7aSLionel Sambuc along with this program. If not, see <http://www.gnu.org/licenses/>. */ 19*c9ea9e7aSLionel Sambuc 20*c9ea9e7aSLionel Sambuc /* As a special exception, you may create a larger work that contains 21*c9ea9e7aSLionel Sambuc part or all of the Bison parser skeleton and distribute that work 22*c9ea9e7aSLionel Sambuc under terms of your choice, so long as that work isn't itself a 23*c9ea9e7aSLionel Sambuc parser generator using the skeleton or a modified version thereof 24*c9ea9e7aSLionel Sambuc as a parser skeleton. Alternatively, if you modify or redistribute 25*c9ea9e7aSLionel Sambuc the parser skeleton itself, you may (at your option) remove this 26*c9ea9e7aSLionel Sambuc special exception, which will cause the skeleton and the resulting 27*c9ea9e7aSLionel Sambuc Bison output files to be licensed under the GNU General Public 28*c9ea9e7aSLionel Sambuc License without this special exception. 29*c9ea9e7aSLionel Sambuc 30*c9ea9e7aSLionel Sambuc This special exception was added by the Free Software Foundation in 31*c9ea9e7aSLionel Sambuc version 2.2 of Bison. */ 32*c9ea9e7aSLionel Sambuc 33*c9ea9e7aSLionel Sambuc #ifndef YY_YY_YYSCRIPT_H_INCLUDED 34*c9ea9e7aSLionel Sambuc # define YY_YY_YYSCRIPT_H_INCLUDED 35*c9ea9e7aSLionel Sambuc /* Debug traces. */ 36*c9ea9e7aSLionel Sambuc #ifndef YYDEBUG 37*c9ea9e7aSLionel Sambuc # define YYDEBUG 0 38*c9ea9e7aSLionel Sambuc #endif 39*c9ea9e7aSLionel Sambuc #if YYDEBUG 40*c9ea9e7aSLionel Sambuc extern int yydebug; 41*c9ea9e7aSLionel Sambuc #endif 42*c9ea9e7aSLionel Sambuc 43*c9ea9e7aSLionel Sambuc /* Token type. */ 44*c9ea9e7aSLionel Sambuc #ifndef YYTOKENTYPE 45*c9ea9e7aSLionel Sambuc # define YYTOKENTYPE 46*c9ea9e7aSLionel Sambuc enum yytokentype 47*c9ea9e7aSLionel Sambuc { 48*c9ea9e7aSLionel Sambuc PLUSEQ = 258, 49*c9ea9e7aSLionel Sambuc MINUSEQ = 259, 50*c9ea9e7aSLionel Sambuc MULTEQ = 260, 51*c9ea9e7aSLionel Sambuc DIVEQ = 261, 52*c9ea9e7aSLionel Sambuc LSHIFTEQ = 262, 53*c9ea9e7aSLionel Sambuc RSHIFTEQ = 263, 54*c9ea9e7aSLionel Sambuc ANDEQ = 264, 55*c9ea9e7aSLionel Sambuc OREQ = 265, 56*c9ea9e7aSLionel Sambuc OROR = 266, 57*c9ea9e7aSLionel Sambuc ANDAND = 267, 58*c9ea9e7aSLionel Sambuc EQ = 268, 59*c9ea9e7aSLionel Sambuc NE = 269, 60*c9ea9e7aSLionel Sambuc LE = 270, 61*c9ea9e7aSLionel Sambuc GE = 271, 62*c9ea9e7aSLionel Sambuc LSHIFT = 272, 63*c9ea9e7aSLionel Sambuc RSHIFT = 273, 64*c9ea9e7aSLionel Sambuc UNARY = 274, 65*c9ea9e7aSLionel Sambuc STRING = 275, 66*c9ea9e7aSLionel Sambuc QUOTED_STRING = 276, 67*c9ea9e7aSLionel Sambuc INTEGER = 277, 68*c9ea9e7aSLionel Sambuc ABSOLUTE = 278, 69*c9ea9e7aSLionel Sambuc ADDR = 279, 70*c9ea9e7aSLionel Sambuc ALIGN_K = 280, 71*c9ea9e7aSLionel Sambuc ALIGNOF = 281, 72*c9ea9e7aSLionel Sambuc ASSERT_K = 282, 73*c9ea9e7aSLionel Sambuc AS_NEEDED = 283, 74*c9ea9e7aSLionel Sambuc AT = 284, 75*c9ea9e7aSLionel Sambuc BIND = 285, 76*c9ea9e7aSLionel Sambuc BLOCK = 286, 77*c9ea9e7aSLionel Sambuc BYTE = 287, 78*c9ea9e7aSLionel Sambuc CONSTANT = 288, 79*c9ea9e7aSLionel Sambuc CONSTRUCTORS = 289, 80*c9ea9e7aSLionel Sambuc COPY = 290, 81*c9ea9e7aSLionel Sambuc CREATE_OBJECT_SYMBOLS = 291, 82*c9ea9e7aSLionel Sambuc DATA_SEGMENT_ALIGN = 292, 83*c9ea9e7aSLionel Sambuc DATA_SEGMENT_END = 293, 84*c9ea9e7aSLionel Sambuc DATA_SEGMENT_RELRO_END = 294, 85*c9ea9e7aSLionel Sambuc DEFINED = 295, 86*c9ea9e7aSLionel Sambuc DSECT = 296, 87*c9ea9e7aSLionel Sambuc ENTRY = 297, 88*c9ea9e7aSLionel Sambuc EXCLUDE_FILE = 298, 89*c9ea9e7aSLionel Sambuc EXTERN = 299, 90*c9ea9e7aSLionel Sambuc FILL = 300, 91*c9ea9e7aSLionel Sambuc FLOAT = 301, 92*c9ea9e7aSLionel Sambuc FORCE_COMMON_ALLOCATION = 302, 93*c9ea9e7aSLionel Sambuc GLOBAL = 303, 94*c9ea9e7aSLionel Sambuc GROUP = 304, 95*c9ea9e7aSLionel Sambuc HLL = 305, 96*c9ea9e7aSLionel Sambuc INCLUDE = 306, 97*c9ea9e7aSLionel Sambuc INHIBIT_COMMON_ALLOCATION = 307, 98*c9ea9e7aSLionel Sambuc INFO = 308, 99*c9ea9e7aSLionel Sambuc INPUT = 309, 100*c9ea9e7aSLionel Sambuc KEEP = 310, 101*c9ea9e7aSLionel Sambuc LEN = 311, 102*c9ea9e7aSLionel Sambuc LENGTH = 312, 103*c9ea9e7aSLionel Sambuc LOADADDR = 313, 104*c9ea9e7aSLionel Sambuc LOCAL = 314, 105*c9ea9e7aSLionel Sambuc LONG = 315, 106*c9ea9e7aSLionel Sambuc MAP = 316, 107*c9ea9e7aSLionel Sambuc MAX_K = 317, 108*c9ea9e7aSLionel Sambuc MEMORY = 318, 109*c9ea9e7aSLionel Sambuc MIN_K = 319, 110*c9ea9e7aSLionel Sambuc NEXT = 320, 111*c9ea9e7aSLionel Sambuc NOCROSSREFS = 321, 112*c9ea9e7aSLionel Sambuc NOFLOAT = 322, 113*c9ea9e7aSLionel Sambuc NOLOAD = 323, 114*c9ea9e7aSLionel Sambuc ONLY_IF_RO = 324, 115*c9ea9e7aSLionel Sambuc ONLY_IF_RW = 325, 116*c9ea9e7aSLionel Sambuc ORG = 326, 117*c9ea9e7aSLionel Sambuc ORIGIN = 327, 118*c9ea9e7aSLionel Sambuc OUTPUT = 328, 119*c9ea9e7aSLionel Sambuc OUTPUT_ARCH = 329, 120*c9ea9e7aSLionel Sambuc OUTPUT_FORMAT = 330, 121*c9ea9e7aSLionel Sambuc OVERLAY = 331, 122*c9ea9e7aSLionel Sambuc PHDRS = 332, 123*c9ea9e7aSLionel Sambuc PROVIDE = 333, 124*c9ea9e7aSLionel Sambuc PROVIDE_HIDDEN = 334, 125*c9ea9e7aSLionel Sambuc QUAD = 335, 126*c9ea9e7aSLionel Sambuc SEARCH_DIR = 336, 127*c9ea9e7aSLionel Sambuc SECTIONS = 337, 128*c9ea9e7aSLionel Sambuc SEGMENT_START = 338, 129*c9ea9e7aSLionel Sambuc SHORT = 339, 130*c9ea9e7aSLionel Sambuc SIZEOF = 340, 131*c9ea9e7aSLionel Sambuc SIZEOF_HEADERS = 341, 132*c9ea9e7aSLionel Sambuc SORT_BY_ALIGNMENT = 342, 133*c9ea9e7aSLionel Sambuc SORT_BY_NAME = 343, 134*c9ea9e7aSLionel Sambuc SPECIAL = 344, 135*c9ea9e7aSLionel Sambuc SQUAD = 345, 136*c9ea9e7aSLionel Sambuc STARTUP = 346, 137*c9ea9e7aSLionel Sambuc SUBALIGN = 347, 138*c9ea9e7aSLionel Sambuc SYSLIB = 348, 139*c9ea9e7aSLionel Sambuc TARGET_K = 349, 140*c9ea9e7aSLionel Sambuc TRUNCATE = 350, 141*c9ea9e7aSLionel Sambuc VERSIONK = 351, 142*c9ea9e7aSLionel Sambuc OPTION = 352, 143*c9ea9e7aSLionel Sambuc PARSING_LINKER_SCRIPT = 353, 144*c9ea9e7aSLionel Sambuc PARSING_VERSION_SCRIPT = 354, 145*c9ea9e7aSLionel Sambuc PARSING_DEFSYM = 355, 146*c9ea9e7aSLionel Sambuc PARSING_DYNAMIC_LIST = 356 147*c9ea9e7aSLionel Sambuc }; 148*c9ea9e7aSLionel Sambuc #endif 149*c9ea9e7aSLionel Sambuc /* Tokens. */ 150*c9ea9e7aSLionel Sambuc #define PLUSEQ 258 151*c9ea9e7aSLionel Sambuc #define MINUSEQ 259 152*c9ea9e7aSLionel Sambuc #define MULTEQ 260 153*c9ea9e7aSLionel Sambuc #define DIVEQ 261 154*c9ea9e7aSLionel Sambuc #define LSHIFTEQ 262 155*c9ea9e7aSLionel Sambuc #define RSHIFTEQ 263 156*c9ea9e7aSLionel Sambuc #define ANDEQ 264 157*c9ea9e7aSLionel Sambuc #define OREQ 265 158*c9ea9e7aSLionel Sambuc #define OROR 266 159*c9ea9e7aSLionel Sambuc #define ANDAND 267 160*c9ea9e7aSLionel Sambuc #define EQ 268 161*c9ea9e7aSLionel Sambuc #define NE 269 162*c9ea9e7aSLionel Sambuc #define LE 270 163*c9ea9e7aSLionel Sambuc #define GE 271 164*c9ea9e7aSLionel Sambuc #define LSHIFT 272 165*c9ea9e7aSLionel Sambuc #define RSHIFT 273 166*c9ea9e7aSLionel Sambuc #define UNARY 274 167*c9ea9e7aSLionel Sambuc #define STRING 275 168*c9ea9e7aSLionel Sambuc #define QUOTED_STRING 276 169*c9ea9e7aSLionel Sambuc #define INTEGER 277 170*c9ea9e7aSLionel Sambuc #define ABSOLUTE 278 171*c9ea9e7aSLionel Sambuc #define ADDR 279 172*c9ea9e7aSLionel Sambuc #define ALIGN_K 280 173*c9ea9e7aSLionel Sambuc #define ALIGNOF 281 174*c9ea9e7aSLionel Sambuc #define ASSERT_K 282 175*c9ea9e7aSLionel Sambuc #define AS_NEEDED 283 176*c9ea9e7aSLionel Sambuc #define AT 284 177*c9ea9e7aSLionel Sambuc #define BIND 285 178*c9ea9e7aSLionel Sambuc #define BLOCK 286 179*c9ea9e7aSLionel Sambuc #define BYTE 287 180*c9ea9e7aSLionel Sambuc #define CONSTANT 288 181*c9ea9e7aSLionel Sambuc #define CONSTRUCTORS 289 182*c9ea9e7aSLionel Sambuc #define COPY 290 183*c9ea9e7aSLionel Sambuc #define CREATE_OBJECT_SYMBOLS 291 184*c9ea9e7aSLionel Sambuc #define DATA_SEGMENT_ALIGN 292 185*c9ea9e7aSLionel Sambuc #define DATA_SEGMENT_END 293 186*c9ea9e7aSLionel Sambuc #define DATA_SEGMENT_RELRO_END 294 187*c9ea9e7aSLionel Sambuc #define DEFINED 295 188*c9ea9e7aSLionel Sambuc #define DSECT 296 189*c9ea9e7aSLionel Sambuc #define ENTRY 297 190*c9ea9e7aSLionel Sambuc #define EXCLUDE_FILE 298 191*c9ea9e7aSLionel Sambuc #define EXTERN 299 192*c9ea9e7aSLionel Sambuc #define FILL 300 193*c9ea9e7aSLionel Sambuc #define FLOAT 301 194*c9ea9e7aSLionel Sambuc #define FORCE_COMMON_ALLOCATION 302 195*c9ea9e7aSLionel Sambuc #define GLOBAL 303 196*c9ea9e7aSLionel Sambuc #define GROUP 304 197*c9ea9e7aSLionel Sambuc #define HLL 305 198*c9ea9e7aSLionel Sambuc #define INCLUDE 306 199*c9ea9e7aSLionel Sambuc #define INHIBIT_COMMON_ALLOCATION 307 200*c9ea9e7aSLionel Sambuc #define INFO 308 201*c9ea9e7aSLionel Sambuc #define INPUT 309 202*c9ea9e7aSLionel Sambuc #define KEEP 310 203*c9ea9e7aSLionel Sambuc #define LEN 311 204*c9ea9e7aSLionel Sambuc #define LENGTH 312 205*c9ea9e7aSLionel Sambuc #define LOADADDR 313 206*c9ea9e7aSLionel Sambuc #define LOCAL 314 207*c9ea9e7aSLionel Sambuc #define LONG 315 208*c9ea9e7aSLionel Sambuc #define MAP 316 209*c9ea9e7aSLionel Sambuc #define MAX_K 317 210*c9ea9e7aSLionel Sambuc #define MEMORY 318 211*c9ea9e7aSLionel Sambuc #define MIN_K 319 212*c9ea9e7aSLionel Sambuc #define NEXT 320 213*c9ea9e7aSLionel Sambuc #define NOCROSSREFS 321 214*c9ea9e7aSLionel Sambuc #define NOFLOAT 322 215*c9ea9e7aSLionel Sambuc #define NOLOAD 323 216*c9ea9e7aSLionel Sambuc #define ONLY_IF_RO 324 217*c9ea9e7aSLionel Sambuc #define ONLY_IF_RW 325 218*c9ea9e7aSLionel Sambuc #define ORG 326 219*c9ea9e7aSLionel Sambuc #define ORIGIN 327 220*c9ea9e7aSLionel Sambuc #define OUTPUT 328 221*c9ea9e7aSLionel Sambuc #define OUTPUT_ARCH 329 222*c9ea9e7aSLionel Sambuc #define OUTPUT_FORMAT 330 223*c9ea9e7aSLionel Sambuc #define OVERLAY 331 224*c9ea9e7aSLionel Sambuc #define PHDRS 332 225*c9ea9e7aSLionel Sambuc #define PROVIDE 333 226*c9ea9e7aSLionel Sambuc #define PROVIDE_HIDDEN 334 227*c9ea9e7aSLionel Sambuc #define QUAD 335 228*c9ea9e7aSLionel Sambuc #define SEARCH_DIR 336 229*c9ea9e7aSLionel Sambuc #define SECTIONS 337 230*c9ea9e7aSLionel Sambuc #define SEGMENT_START 338 231*c9ea9e7aSLionel Sambuc #define SHORT 339 232*c9ea9e7aSLionel Sambuc #define SIZEOF 340 233*c9ea9e7aSLionel Sambuc #define SIZEOF_HEADERS 341 234*c9ea9e7aSLionel Sambuc #define SORT_BY_ALIGNMENT 342 235*c9ea9e7aSLionel Sambuc #define SORT_BY_NAME 343 236*c9ea9e7aSLionel Sambuc #define SPECIAL 344 237*c9ea9e7aSLionel Sambuc #define SQUAD 345 238*c9ea9e7aSLionel Sambuc #define STARTUP 346 239*c9ea9e7aSLionel Sambuc #define SUBALIGN 347 240*c9ea9e7aSLionel Sambuc #define SYSLIB 348 241*c9ea9e7aSLionel Sambuc #define TARGET_K 349 242*c9ea9e7aSLionel Sambuc #define TRUNCATE 350 243*c9ea9e7aSLionel Sambuc #define VERSIONK 351 244*c9ea9e7aSLionel Sambuc #define OPTION 352 245*c9ea9e7aSLionel Sambuc #define PARSING_LINKER_SCRIPT 353 246*c9ea9e7aSLionel Sambuc #define PARSING_VERSION_SCRIPT 354 247*c9ea9e7aSLionel Sambuc #define PARSING_DEFSYM 355 248*c9ea9e7aSLionel Sambuc #define PARSING_DYNAMIC_LIST 356 249*c9ea9e7aSLionel Sambuc 250*c9ea9e7aSLionel Sambuc /* Value type. */ 251*c9ea9e7aSLionel Sambuc #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 252*c9ea9e7aSLionel Sambuc typedef union YYSTYPE YYSTYPE; 253*c9ea9e7aSLionel Sambuc union YYSTYPE 254*c9ea9e7aSLionel Sambuc { 255*c9ea9e7aSLionel Sambuc #line 53 "yyscript.y" /* yacc.c:1909 */ 256*c9ea9e7aSLionel Sambuc 257*c9ea9e7aSLionel Sambuc /* A string. */ 258*c9ea9e7aSLionel Sambuc struct Parser_string string; 259*c9ea9e7aSLionel Sambuc /* A number. */ 260*c9ea9e7aSLionel Sambuc uint64_t integer; 261*c9ea9e7aSLionel Sambuc /* An expression. */ 262*c9ea9e7aSLionel Sambuc Expression_ptr expr; 263*c9ea9e7aSLionel Sambuc /* An output section header. */ 264*c9ea9e7aSLionel Sambuc struct Parser_output_section_header output_section_header; 265*c9ea9e7aSLionel Sambuc /* An output section trailer. */ 266*c9ea9e7aSLionel Sambuc struct Parser_output_section_trailer output_section_trailer; 267*c9ea9e7aSLionel Sambuc /* A section constraint. */ 268*c9ea9e7aSLionel Sambuc enum Section_constraint constraint; 269*c9ea9e7aSLionel Sambuc /* A complete input section specification. */ 270*c9ea9e7aSLionel Sambuc struct Input_section_spec input_section_spec; 271*c9ea9e7aSLionel Sambuc /* A list of wildcard specifications, with exclusions. */ 272*c9ea9e7aSLionel Sambuc struct Wildcard_sections wildcard_sections; 273*c9ea9e7aSLionel Sambuc /* A single wildcard specification. */ 274*c9ea9e7aSLionel Sambuc struct Wildcard_section wildcard_section; 275*c9ea9e7aSLionel Sambuc /* A list of strings. */ 276*c9ea9e7aSLionel Sambuc String_list_ptr string_list; 277*c9ea9e7aSLionel Sambuc /* Information for a program header. */ 278*c9ea9e7aSLionel Sambuc struct Phdr_info phdr_info; 279*c9ea9e7aSLionel Sambuc /* Used for version scripts and within VERSION {}. */ 280*c9ea9e7aSLionel Sambuc struct Version_dependency_list* deplist; 281*c9ea9e7aSLionel Sambuc struct Version_expression_list* versyms; 282*c9ea9e7aSLionel Sambuc struct Version_tree* versnode; 283*c9ea9e7aSLionel Sambuc enum Script_section_type section_type; 284*c9ea9e7aSLionel Sambuc 285*c9ea9e7aSLionel Sambuc #line 286 "yyscript.h" /* yacc.c:1909 */ 286*c9ea9e7aSLionel Sambuc }; 287*c9ea9e7aSLionel Sambuc # define YYSTYPE_IS_TRIVIAL 1 288*c9ea9e7aSLionel Sambuc # define YYSTYPE_IS_DECLARED 1 289*c9ea9e7aSLionel Sambuc #endif 290*c9ea9e7aSLionel Sambuc 291*c9ea9e7aSLionel Sambuc 292*c9ea9e7aSLionel Sambuc 293*c9ea9e7aSLionel Sambuc int yyparse (void* closure); 294*c9ea9e7aSLionel Sambuc 295*c9ea9e7aSLionel Sambuc #endif /* !YY_YY_YYSCRIPT_H_INCLUDED */ 296