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