• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* A Bison parser, made by GNU Bison 2.5.  */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5       Copyright (C) 1984, 1989-1990, 2000-2011 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 
34 /* Tokens.  */
35 #ifndef YYTOKENTYPE
36 # define YYTOKENTYPE
37    /* Put the tokens into the symbol table, so that GDB and other debuggers
38       know about them.  */
39    enum yytokentype {
40      ARBvp_10 = 258,
41      ARBfp_10 = 259,
42      ADDRESS = 260,
43      ALIAS = 261,
44      ATTRIB = 262,
45      OPTION = 263,
46      OUTPUT = 264,
47      PARAM = 265,
48      TEMP = 266,
49      END = 267,
50      BIN_OP = 268,
51      BINSC_OP = 269,
52      SAMPLE_OP = 270,
53      SCALAR_OP = 271,
54      TRI_OP = 272,
55      VECTOR_OP = 273,
56      ARL = 274,
57      KIL = 275,
58      SWZ = 276,
59      TXD_OP = 277,
60      INTEGER = 278,
61      REAL = 279,
62      AMBIENT = 280,
63      ATTENUATION = 281,
64      BACK = 282,
65      CLIP = 283,
66      COLOR = 284,
67      DEPTH = 285,
68      DIFFUSE = 286,
69      DIRECTION = 287,
70      EMISSION = 288,
71      ENV = 289,
72      EYE = 290,
73      FOG = 291,
74      FOGCOORD = 292,
75      FRAGMENT = 293,
76      FRONT = 294,
77      HALF = 295,
78      INVERSE = 296,
79      INVTRANS = 297,
80      LIGHT = 298,
81      LIGHTMODEL = 299,
82      LIGHTPROD = 300,
83      LOCAL = 301,
84      MATERIAL = 302,
85      MAT_PROGRAM = 303,
86      MATRIX = 304,
87      MATRIXINDEX = 305,
88      MODELVIEW = 306,
89      MVP = 307,
90      NORMAL = 308,
91      OBJECT = 309,
92      PALETTE = 310,
93      PARAMS = 311,
94      PLANE = 312,
95      POINT_TOK = 313,
96      POINTSIZE = 314,
97      POSITION = 315,
98      PRIMARY = 316,
99      PROGRAM = 317,
100      PROJECTION = 318,
101      RANGE = 319,
102      RESULT = 320,
103      ROW = 321,
104      SCENECOLOR = 322,
105      SECONDARY = 323,
106      SHININESS = 324,
107      SIZE_TOK = 325,
108      SPECULAR = 326,
109      SPOT = 327,
110      STATE = 328,
111      TEXCOORD = 329,
112      TEXENV = 330,
113      TEXGEN = 331,
114      TEXGEN_Q = 332,
115      TEXGEN_R = 333,
116      TEXGEN_S = 334,
117      TEXGEN_T = 335,
118      TEXTURE = 336,
119      TRANSPOSE = 337,
120      TEXTURE_UNIT = 338,
121      TEX_1D = 339,
122      TEX_2D = 340,
123      TEX_3D = 341,
124      TEX_CUBE = 342,
125      TEX_RECT = 343,
126      TEX_SHADOW1D = 344,
127      TEX_SHADOW2D = 345,
128      TEX_SHADOWRECT = 346,
129      TEX_ARRAY1D = 347,
130      TEX_ARRAY2D = 348,
131      TEX_ARRAYSHADOW1D = 349,
132      TEX_ARRAYSHADOW2D = 350,
133      VERTEX = 351,
134      VTXATTRIB = 352,
135      WEIGHT = 353,
136      IDENTIFIER = 354,
137      USED_IDENTIFIER = 355,
138      MASK4 = 356,
139      MASK3 = 357,
140      MASK2 = 358,
141      MASK1 = 359,
142      SWIZZLE = 360,
143      DOT_DOT = 361,
144      DOT = 362
145    };
146 #endif
147 /* Tokens.  */
148 #define ARBvp_10 258
149 #define ARBfp_10 259
150 #define ADDRESS 260
151 #define ALIAS 261
152 #define ATTRIB 262
153 #define OPTION 263
154 #define OUTPUT 264
155 #define PARAM 265
156 #define TEMP 266
157 #define END 267
158 #define BIN_OP 268
159 #define BINSC_OP 269
160 #define SAMPLE_OP 270
161 #define SCALAR_OP 271
162 #define TRI_OP 272
163 #define VECTOR_OP 273
164 #define ARL 274
165 #define KIL 275
166 #define SWZ 276
167 #define TXD_OP 277
168 #define INTEGER 278
169 #define REAL 279
170 #define AMBIENT 280
171 #define ATTENUATION 281
172 #define BACK 282
173 #define CLIP 283
174 #define COLOR 284
175 #define DEPTH 285
176 #define DIFFUSE 286
177 #define DIRECTION 287
178 #define EMISSION 288
179 #define ENV 289
180 #define EYE 290
181 #define FOG 291
182 #define FOGCOORD 292
183 #define FRAGMENT 293
184 #define FRONT 294
185 #define HALF 295
186 #define INVERSE 296
187 #define INVTRANS 297
188 #define LIGHT 298
189 #define LIGHTMODEL 299
190 #define LIGHTPROD 300
191 #define LOCAL 301
192 #define MATERIAL 302
193 #define MAT_PROGRAM 303
194 #define MATRIX 304
195 #define MATRIXINDEX 305
196 #define MODELVIEW 306
197 #define MVP 307
198 #define NORMAL 308
199 #define OBJECT 309
200 #define PALETTE 310
201 #define PARAMS 311
202 #define PLANE 312
203 #define POINT_TOK 313
204 #define POINTSIZE 314
205 #define POSITION 315
206 #define PRIMARY 316
207 #define PROGRAM 317
208 #define PROJECTION 318
209 #define RANGE 319
210 #define RESULT 320
211 #define ROW 321
212 #define SCENECOLOR 322
213 #define SECONDARY 323
214 #define SHININESS 324
215 #define SIZE_TOK 325
216 #define SPECULAR 326
217 #define SPOT 327
218 #define STATE 328
219 #define TEXCOORD 329
220 #define TEXENV 330
221 #define TEXGEN 331
222 #define TEXGEN_Q 332
223 #define TEXGEN_R 333
224 #define TEXGEN_S 334
225 #define TEXGEN_T 335
226 #define TEXTURE 336
227 #define TRANSPOSE 337
228 #define TEXTURE_UNIT 338
229 #define TEX_1D 339
230 #define TEX_2D 340
231 #define TEX_3D 341
232 #define TEX_CUBE 342
233 #define TEX_RECT 343
234 #define TEX_SHADOW1D 344
235 #define TEX_SHADOW2D 345
236 #define TEX_SHADOWRECT 346
237 #define TEX_ARRAY1D 347
238 #define TEX_ARRAY2D 348
239 #define TEX_ARRAYSHADOW1D 349
240 #define TEX_ARRAYSHADOW2D 350
241 #define VERTEX 351
242 #define VTXATTRIB 352
243 #define WEIGHT 353
244 #define IDENTIFIER 354
245 #define USED_IDENTIFIER 355
246 #define MASK4 356
247 #define MASK3 357
248 #define MASK2 358
249 #define MASK1 359
250 #define SWIZZLE 360
251 #define DOT_DOT 361
252 #define DOT 362
253 
254 
255 
256 
257 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
258 typedef union YYSTYPE
259 {
260 
261 /* Line 2068 of yacc.c  */
262 #line 126 "src/src/mesa/program/program_parse.y"
263 
264    struct asm_instruction *inst;
265    struct asm_symbol *sym;
266    struct asm_symbol temp_sym;
267    struct asm_swizzle_mask swiz_mask;
268    struct asm_src_register src_reg;
269    struct prog_dst_register dst_reg;
270    struct prog_instruction temp_inst;
271    char *string;
272    unsigned result;
273    unsigned attrib;
274    int integer;
275    float real;
276    gl_state_index state[STATE_LENGTH];
277    int negate;
278    struct asm_vector vector;
279    gl_inst_opcode opcode;
280 
281    struct {
282       unsigned swz;
283       unsigned rgba_valid:1;
284       unsigned xyzw_valid:1;
285       unsigned negate:1;
286    } ext_swizzle;
287 
288 
289 
290 /* Line 2068 of yacc.c  */
291 #line 292 "src/chromium_gensrc/mesa/program/program_parse.tab.h"
292 } YYSTYPE;
293 # define YYSTYPE_IS_TRIVIAL 1
294 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
295 # define YYSTYPE_IS_DECLARED 1
296 #endif
297 
298 
299 
300 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
301 typedef struct YYLTYPE
302 {
303   int first_line;
304   int first_column;
305   int last_line;
306   int last_column;
307 } YYLTYPE;
308 # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
309 # define YYLTYPE_IS_DECLARED 1
310 # define YYLTYPE_IS_TRIVIAL 1
311 #endif
312 
313 
314 
315