diff options
Diffstat (limited to 'assembler/gram.h')
-rw-r--r-- | assembler/gram.h | 535 |
1 files changed, 535 insertions, 0 deletions
diff --git a/assembler/gram.h b/assembler/gram.h new file mode 100644 index 00000000..25579058 --- /dev/null +++ b/assembler/gram.h @@ -0,0 +1,535 @@ +/* A Bison parser, made by GNU Bison 2.7. */ + +/* Bison interface for Yacc-like parsers in C + + Copyright (C) 1984, 1989-1990, 2000-2012 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 3 of the License, 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, see <http://www.gnu.org/licenses/>. */ + +/* 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. */ + +#ifndef YY_YY_GRAM_H_INCLUDED +# define YY_YY_GRAM_H_INCLUDED +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif +#if YYDEBUG +extern int yydebug; +#endif + +/* Tokens. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + /* Put the tokens into the symbol table, so that GDB and other debuggers + know about them. */ + enum yytokentype { + COLON = 258, + SEMICOLON = 259, + LPAREN = 260, + RPAREN = 261, + LANGLE = 262, + RANGLE = 263, + LCURLY = 264, + RCURLY = 265, + LSQUARE = 266, + RSQUARE = 267, + COMMA = 268, + EQ = 269, + ABS = 270, + DOT = 271, + PLUS = 272, + MINUS = 273, + MULTIPLY = 274, + DIVIDE = 275, + TYPE_UD = 276, + TYPE_D = 277, + TYPE_UW = 278, + TYPE_W = 279, + TYPE_UB = 280, + TYPE_B = 281, + TYPE_VF = 282, + TYPE_HF = 283, + TYPE_V = 284, + TYPE_F = 285, + ALIGN1 = 286, + ALIGN16 = 287, + SECHALF = 288, + COMPR = 289, + SWITCH = 290, + ATOMIC = 291, + NODDCHK = 292, + NODDCLR = 293, + MASK_DISABLE = 294, + BREAKPOINT = 295, + ACCWRCTRL = 296, + EOT = 297, + SEQ = 298, + ANY2H = 299, + ALL2H = 300, + ANY4H = 301, + ALL4H = 302, + ANY8H = 303, + ALL8H = 304, + ANY16H = 305, + ALL16H = 306, + ANYV = 307, + ALLV = 308, + ZERO = 309, + EQUAL = 310, + NOT_ZERO = 311, + NOT_EQUAL = 312, + GREATER = 313, + GREATER_EQUAL = 314, + LESS = 315, + LESS_EQUAL = 316, + ROUND_INCREMENT = 317, + OVERFLOW = 318, + UNORDERED = 319, + GENREG = 320, + MSGREG = 321, + ADDRESSREG = 322, + ACCREG = 323, + FLAGREG = 324, + MASKREG = 325, + AMASK = 326, + IMASK = 327, + LMASK = 328, + CMASK = 329, + MASKSTACKREG = 330, + LMS = 331, + IMS = 332, + MASKSTACKDEPTHREG = 333, + IMSD = 334, + LMSD = 335, + NOTIFYREG = 336, + STATEREG = 337, + CONTROLREG = 338, + IPREG = 339, + GENREGFILE = 340, + MSGREGFILE = 341, + MOV = 342, + FRC = 343, + RNDU = 344, + RNDD = 345, + RNDE = 346, + RNDZ = 347, + NOT = 348, + LZD = 349, + MUL = 350, + MAC = 351, + MACH = 352, + LINE = 353, + SAD2 = 354, + SADA2 = 355, + DP4 = 356, + DPH = 357, + DP3 = 358, + DP2 = 359, + AVG = 360, + ADD = 361, + SEL = 362, + AND = 363, + OR = 364, + XOR = 365, + SHR = 366, + SHL = 367, + ASR = 368, + CMP = 369, + CMPN = 370, + PLN = 371, + ADDC = 372, + BFI1 = 373, + BFREV = 374, + CBIT = 375, + F16TO32 = 376, + F32TO16 = 377, + FBH = 378, + FBL = 379, + SEND = 380, + SENDC = 381, + NOP = 382, + JMPI = 383, + IF = 384, + IFF = 385, + WHILE = 386, + ELSE = 387, + BREAK = 388, + CONT = 389, + HALT = 390, + MSAVE = 391, + PUSH = 392, + MREST = 393, + POP = 394, + WAIT = 395, + DO = 396, + ENDIF = 397, + ILLEGAL = 398, + MATH_INST = 399, + MAD = 400, + LRP = 401, + BFE = 402, + BFI2 = 403, + SUBB = 404, + CALL = 405, + RET = 406, + BRD = 407, + BRC = 408, + NULL_TOKEN = 409, + MATH = 410, + SAMPLER = 411, + GATEWAY = 412, + READ = 413, + WRITE = 414, + URB = 415, + THREAD_SPAWNER = 416, + VME = 417, + DATA_PORT = 418, + CRE = 419, + MSGLEN = 420, + RETURNLEN = 421, + ALLOCATE = 422, + USED = 423, + COMPLETE = 424, + TRANSPOSE = 425, + INTERLEAVE = 426, + SATURATE = 427, + INTEGER = 428, + STRING = 429, + NUMBER = 430, + INV = 431, + LOG = 432, + EXP = 433, + SQRT = 434, + RSQ = 435, + POW = 436, + SIN = 437, + COS = 438, + SINCOS = 439, + INTDIV = 440, + INTMOD = 441, + INTDIVMOD = 442, + SIGNED = 443, + SCALAR = 444, + X = 445, + Y = 446, + Z = 447, + W = 448, + KERNEL_PRAGMA = 449, + END_KERNEL_PRAGMA = 450, + CODE_PRAGMA = 451, + END_CODE_PRAGMA = 452, + REG_COUNT_PAYLOAD_PRAGMA = 453, + REG_COUNT_TOTAL_PRAGMA = 454, + DECLARE_PRAGMA = 455, + BASE = 456, + ELEMENTSIZE = 457, + SRCREGION = 458, + DSTREGION = 459, + TYPE = 460, + DEFAULT_EXEC_SIZE_PRAGMA = 461, + DEFAULT_REG_TYPE_PRAGMA = 462, + SUBREGNUM = 463, + SNDOPR = 464, + UMINUS = 465, + STR_SYMBOL_REG = 466, + EMPTEXECSIZE = 467 + }; +#endif +/* Tokens. */ +#define COLON 258 +#define SEMICOLON 259 +#define LPAREN 260 +#define RPAREN 261 +#define LANGLE 262 +#define RANGLE 263 +#define LCURLY 264 +#define RCURLY 265 +#define LSQUARE 266 +#define RSQUARE 267 +#define COMMA 268 +#define EQ 269 +#define ABS 270 +#define DOT 271 +#define PLUS 272 +#define MINUS 273 +#define MULTIPLY 274 +#define DIVIDE 275 +#define TYPE_UD 276 +#define TYPE_D 277 +#define TYPE_UW 278 +#define TYPE_W 279 +#define TYPE_UB 280 +#define TYPE_B 281 +#define TYPE_VF 282 +#define TYPE_HF 283 +#define TYPE_V 284 +#define TYPE_F 285 +#define ALIGN1 286 +#define ALIGN16 287 +#define SECHALF 288 +#define COMPR 289 +#define SWITCH 290 +#define ATOMIC 291 +#define NODDCHK 292 +#define NODDCLR 293 +#define MASK_DISABLE 294 +#define BREAKPOINT 295 +#define ACCWRCTRL 296 +#define EOT 297 +#define SEQ 298 +#define ANY2H 299 +#define ALL2H 300 +#define ANY4H 301 +#define ALL4H 302 +#define ANY8H 303 +#define ALL8H 304 +#define ANY16H 305 +#define ALL16H 306 +#define ANYV 307 +#define ALLV 308 +#define ZERO 309 +#define EQUAL 310 +#define NOT_ZERO 311 +#define NOT_EQUAL 312 +#define GREATER 313 +#define GREATER_EQUAL 314 +#define LESS 315 +#define LESS_EQUAL 316 +#define ROUND_INCREMENT 317 +#define OVERFLOW 318 +#define UNORDERED 319 +#define GENREG 320 +#define MSGREG 321 +#define ADDRESSREG 322 +#define ACCREG 323 +#define FLAGREG 324 +#define MASKREG 325 +#define AMASK 326 +#define IMASK 327 +#define LMASK 328 +#define CMASK 329 +#define MASKSTACKREG 330 +#define LMS 331 +#define IMS 332 +#define MASKSTACKDEPTHREG 333 +#define IMSD 334 +#define LMSD 335 +#define NOTIFYREG 336 +#define STATEREG 337 +#define CONTROLREG 338 +#define IPREG 339 +#define GENREGFILE 340 +#define MSGREGFILE 341 +#define MOV 342 +#define FRC 343 +#define RNDU 344 +#define RNDD 345 +#define RNDE 346 +#define RNDZ 347 +#define NOT 348 +#define LZD 349 +#define MUL 350 +#define MAC 351 +#define MACH 352 +#define LINE 353 +#define SAD2 354 +#define SADA2 355 +#define DP4 356 +#define DPH 357 +#define DP3 358 +#define DP2 359 +#define AVG 360 +#define ADD 361 +#define SEL 362 +#define AND 363 +#define OR 364 +#define XOR 365 +#define SHR 366 +#define SHL 367 +#define ASR 368 +#define CMP 369 +#define CMPN 370 +#define PLN 371 +#define ADDC 372 +#define BFI1 373 +#define BFREV 374 +#define CBIT 375 +#define F16TO32 376 +#define F32TO16 377 +#define FBH 378 +#define FBL 379 +#define SEND 380 +#define SENDC 381 +#define NOP 382 +#define JMPI 383 +#define IF 384 +#define IFF 385 +#define WHILE 386 +#define ELSE 387 +#define BREAK 388 +#define CONT 389 +#define HALT 390 +#define MSAVE 391 +#define PUSH 392 +#define MREST 393 +#define POP 394 +#define WAIT 395 +#define DO 396 +#define ENDIF 397 +#define ILLEGAL 398 +#define MATH_INST 399 +#define MAD 400 +#define LRP 401 +#define BFE 402 +#define BFI2 403 +#define SUBB 404 +#define CALL 405 +#define RET 406 +#define BRD 407 +#define BRC 408 +#define NULL_TOKEN 409 +#define MATH 410 +#define SAMPLER 411 +#define GATEWAY 412 +#define READ 413 +#define WRITE 414 +#define URB 415 +#define THREAD_SPAWNER 416 +#define VME 417 +#define DATA_PORT 418 +#define CRE 419 +#define MSGLEN 420 +#define RETURNLEN 421 +#define ALLOCATE 422 +#define USED 423 +#define COMPLETE 424 +#define TRANSPOSE 425 +#define INTERLEAVE 426 +#define SATURATE 427 +#define INTEGER 428 +#define STRING 429 +#define NUMBER 430 +#define INV 431 +#define LOG 432 +#define EXP 433 +#define SQRT 434 +#define RSQ 435 +#define POW 436 +#define SIN 437 +#define COS 438 +#define SINCOS 439 +#define INTDIV 440 +#define INTMOD 441 +#define INTDIVMOD 442 +#define SIGNED 443 +#define SCALAR 444 +#define X 445 +#define Y 446 +#define Z 447 +#define W 448 +#define KERNEL_PRAGMA 449 +#define END_KERNEL_PRAGMA 450 +#define CODE_PRAGMA 451 +#define END_CODE_PRAGMA 452 +#define REG_COUNT_PAYLOAD_PRAGMA 453 +#define REG_COUNT_TOTAL_PRAGMA 454 +#define DECLARE_PRAGMA 455 +#define BASE 456 +#define ELEMENTSIZE 457 +#define SRCREGION 458 +#define DSTREGION 459 +#define TYPE 460 +#define DEFAULT_EXEC_SIZE_PRAGMA 461 +#define DEFAULT_REG_TYPE_PRAGMA 462 +#define SUBREGNUM 463 +#define SNDOPR 464 +#define UMINUS 465 +#define STR_SYMBOL_REG 466 +#define EMPTEXECSIZE 467 + + + +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +typedef union YYSTYPE +{ +/* Line 2058 of yacc.c */ +#line 437 "gram.y" + + char *string; + int integer; + double number; + struct brw_program_instruction instruction; + struct brw_program program; + struct region region; + struct regtype regtype; + struct brw_reg reg; + struct condition condition; + struct predicate predicate; + struct options options; + struct declared_register symbol_reg; + imm32_t imm32; + + struct src_operand src_operand; + + +/* Line 2058 of yacc.c */ +#line 500 "gram.h" +} YYSTYPE; +# define YYSTYPE_IS_TRIVIAL 1 +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ +# define YYSTYPE_IS_DECLARED 1 +#endif + +#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED +typedef struct YYLTYPE +{ + int first_line; + int first_column; + int last_line; + int last_column; +} YYLTYPE; +# define yyltype YYLTYPE /* obsolescent; will be withdrawn */ +# define YYLTYPE_IS_DECLARED 1 +# define YYLTYPE_IS_TRIVIAL 1 +#endif + +extern YYSTYPE yylval; +extern YYLTYPE yylloc; +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ + +#endif /* !YY_YY_GRAM_H_INCLUDED */ |