program_parse.tab.h revision 848b8605
1/* A Bison parser, made by GNU Bison 2.6.4. */ 2 3/* Bison interface for Yacc-like parsers in C 4 5 Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. 6 7 This program 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 of the License, or 10 (at your option) any later version. 11 12 This program 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 this program. If not, see <http://www.gnu.org/licenses/>. */ 19 20/* As a special exception, you may create a larger work that contains 21 part or all of the Bison parser skeleton and distribute that work 22 under terms of your choice, so long as that work isn't itself a 23 parser generator using the skeleton or a modified version thereof 24 as a parser skeleton. Alternatively, if you modify or redistribute 25 the parser skeleton itself, you may (at your option) remove this 26 special exception, which will cause the skeleton and the resulting 27 Bison output files to be licensed under the GNU General Public 28 License without this special exception. 29 30 This special exception was added by the Free Software Foundation in 31 version 2.2 of Bison. */ 32 33#ifndef YY__MESA_PROGRAM_PROGRAM_PARSE_TAB_H_INCLUDED 34# define YY__MESA_PROGRAM_PROGRAM_PARSE_TAB_H_INCLUDED 35/* Enabling traces. */ 36#ifndef YYDEBUG 37# define YYDEBUG 0 38#endif 39#if YYDEBUG 40extern int _mesa_program_debug; 41#endif 42 43/* Tokens. */ 44#ifndef YYTOKENTYPE 45# define YYTOKENTYPE 46 /* Put the tokens into the symbol table, so that GDB and other debuggers 47 know about them. */ 48 enum yytokentype { 49 ARBvp_10 = 258, 50 ARBfp_10 = 259, 51 ADDRESS = 260, 52 ALIAS = 261, 53 ATTRIB = 262, 54 OPTION = 263, 55 OUTPUT = 264, 56 PARAM = 265, 57 TEMP = 266, 58 END = 267, 59 BIN_OP = 268, 60 BINSC_OP = 269, 61 SAMPLE_OP = 270, 62 SCALAR_OP = 271, 63 TRI_OP = 272, 64 VECTOR_OP = 273, 65 ARL = 274, 66 KIL = 275, 67 SWZ = 276, 68 TXD_OP = 277, 69 INTEGER = 278, 70 REAL = 279, 71 AMBIENT = 280, 72 ATTENUATION = 281, 73 BACK = 282, 74 CLIP = 283, 75 COLOR = 284, 76 DEPTH = 285, 77 DIFFUSE = 286, 78 DIRECTION = 287, 79 EMISSION = 288, 80 ENV = 289, 81 EYE = 290, 82 FOG = 291, 83 FOGCOORD = 292, 84 FRAGMENT = 293, 85 FRONT = 294, 86 HALF = 295, 87 INVERSE = 296, 88 INVTRANS = 297, 89 LIGHT = 298, 90 LIGHTMODEL = 299, 91 LIGHTPROD = 300, 92 LOCAL = 301, 93 MATERIAL = 302, 94 MAT_PROGRAM = 303, 95 MATRIX = 304, 96 MATRIXINDEX = 305, 97 MODELVIEW = 306, 98 MVP = 307, 99 NORMAL = 308, 100 OBJECT = 309, 101 PALETTE = 310, 102 PARAMS = 311, 103 PLANE = 312, 104 POINT_TOK = 313, 105 POINTSIZE = 314, 106 POSITION = 315, 107 PRIMARY = 316, 108 PROGRAM = 317, 109 PROJECTION = 318, 110 RANGE = 319, 111 RESULT = 320, 112 ROW = 321, 113 SCENECOLOR = 322, 114 SECONDARY = 323, 115 SHININESS = 324, 116 SIZE_TOK = 325, 117 SPECULAR = 326, 118 SPOT = 327, 119 STATE = 328, 120 TEXCOORD = 329, 121 TEXENV = 330, 122 TEXGEN = 331, 123 TEXGEN_Q = 332, 124 TEXGEN_R = 333, 125 TEXGEN_S = 334, 126 TEXGEN_T = 335, 127 TEXTURE = 336, 128 TRANSPOSE = 337, 129 TEXTURE_UNIT = 338, 130 TEX_1D = 339, 131 TEX_2D = 340, 132 TEX_3D = 341, 133 TEX_CUBE = 342, 134 TEX_RECT = 343, 135 TEX_SHADOW1D = 344, 136 TEX_SHADOW2D = 345, 137 TEX_SHADOWRECT = 346, 138 TEX_ARRAY1D = 347, 139 TEX_ARRAY2D = 348, 140 TEX_ARRAYSHADOW1D = 349, 141 TEX_ARRAYSHADOW2D = 350, 142 VERTEX = 351, 143 VTXATTRIB = 352, 144 WEIGHT = 353, 145 IDENTIFIER = 354, 146 USED_IDENTIFIER = 355, 147 MASK4 = 356, 148 MASK3 = 357, 149 MASK2 = 358, 150 MASK1 = 359, 151 SWIZZLE = 360, 152 DOT_DOT = 361, 153 DOT = 362 154 }; 155#endif 156 157 158#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 159typedef union YYSTYPE 160{ 161/* Line 2077 of yacc.c */ 162#line 124 "/usr/xsrc/external/mit/MesaLib/dist/src/mesa/program/program_parse.y" 163 164 struct asm_instruction *inst; 165 struct asm_symbol *sym; 166 struct asm_symbol temp_sym; 167 struct asm_swizzle_mask swiz_mask; 168 struct asm_src_register src_reg; 169 struct prog_dst_register dst_reg; 170 struct prog_instruction temp_inst; 171 char *string; 172 unsigned result; 173 unsigned attrib; 174 int integer; 175 float real; 176 gl_state_index state[STATE_LENGTH]; 177 int negate; 178 struct asm_vector vector; 179 gl_inst_opcode opcode; 180 181 struct { 182 unsigned swz; 183 unsigned rgba_valid:1; 184 unsigned xyzw_valid:1; 185 unsigned negate:1; 186 } ext_swizzle; 187 188 189/* Line 2077 of yacc.c */ 190#line 191 "program_parse.tab.h" 191} YYSTYPE; 192# define YYSTYPE_IS_TRIVIAL 1 193# define yystype YYSTYPE /* obsolescent; will be withdrawn */ 194# define YYSTYPE_IS_DECLARED 1 195#endif 196 197#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED 198typedef struct YYLTYPE 199{ 200 int first_line; 201 int first_column; 202 int last_line; 203 int last_column; 204} YYLTYPE; 205# define yyltype YYLTYPE /* obsolescent; will be withdrawn */ 206# define YYLTYPE_IS_DECLARED 1 207# define YYLTYPE_IS_TRIVIAL 1 208#endif 209 210 211#ifdef YYPARSE_PARAM 212#if defined __STDC__ || defined __cplusplus 213int _mesa_program_parse (void *YYPARSE_PARAM); 214#else 215int _mesa_program_parse (); 216#endif 217#else /* ! YYPARSE_PARAM */ 218#if defined __STDC__ || defined __cplusplus 219int _mesa_program_parse (struct asm_parser_state *state); 220#else 221int _mesa_program_parse (); 222#endif 223#endif /* ! YYPARSE_PARAM */ 224 225#endif /* !YY__MESA_PROGRAM_PROGRAM_PARSE_TAB_H_INCLUDED */ 226