mesa: allow variable indexing into the predefined uniform variable arrays
[mesa.git] / src / mesa / shader / slang / library / slang_pp_expression_syn.h
1
2 /* DO NOT EDIT - THIS FILE IS AUTOMATICALLY GENERATED FROM THE .syn FILE */
3
4 ".syntax expression;\n"
5 ".emtcode EXP_END 0\n"
6 ".emtcode EXP_EXPRESSION 1\n"
7 ".emtcode OP_END 0\n"
8 ".emtcode OP_PUSHINT 1\n"
9 ".emtcode OP_LOGICALOR 2\n"
10 ".emtcode OP_LOGICALAND 3\n"
11 ".emtcode OP_OR 4\n"
12 ".emtcode OP_XOR 5\n"
13 ".emtcode OP_AND 6\n"
14 ".emtcode OP_EQUAL 7\n"
15 ".emtcode OP_NOTEQUAL 8\n"
16 ".emtcode OP_LESSEQUAL 9\n"
17 ".emtcode OP_GREATEREQUAL 10\n"
18 ".emtcode OP_LESS 11\n"
19 ".emtcode OP_GREATER 12\n"
20 ".emtcode OP_LEFTSHIFT 13\n"
21 ".emtcode OP_RIGHTSHIFT 14\n"
22 ".emtcode OP_ADD 15\n"
23 ".emtcode OP_SUBTRACT 16\n"
24 ".emtcode OP_MULTIPLY 17\n"
25 ".emtcode OP_DIVIDE 18\n"
26 ".emtcode OP_MODULUS 19\n"
27 ".emtcode OP_PLUS 20\n"
28 ".emtcode OP_MINUS 21\n"
29 ".emtcode OP_NEGATE 22\n"
30 ".emtcode OP_COMPLEMENT 23\n"
31 "expression\n"
32 " first_expression .and optional_second_expression .and optional_space .and '\\0' .emit EXP_END;\n"
33 "first_expression\n"
34 " optional_space .and logical_or_expression .emit EXP_EXPRESSION .and .true .emit OP_END;\n"
35 "optional_second_expression\n"
36 " second_expression .or .true;\n"
37 "second_expression\n"
38 " space .and logical_or_expression .emit EXP_EXPRESSION .and .true .emit OP_END;\n"
39 "logical_or_expression\n"
40 " logical_and_expression .and .loop logical_or_expression_1;\n"
41 "logical_or_expression_1\n"
42 " barbar .and logical_and_expression .and .true .emit OP_LOGICALOR;\n"
43 "logical_and_expression\n"
44 " or_expression .and .loop logical_and_expression_1;\n"
45 "logical_and_expression_1\n"
46 " ampersandampersand .and or_expression .and .true .emit OP_LOGICALAND;\n"
47 "or_expression\n"
48 " xor_expression .and .loop or_expression_1;\n"
49 "or_expression_1\n"
50 " bar .and xor_expression .and .true .emit OP_OR;\n"
51 "xor_expression\n"
52 " and_expression .and .loop xor_expression_1;\n"
53 "xor_expression_1\n"
54 " caret .and and_expression .and .true .emit OP_XOR;\n"
55 "and_expression\n"
56 " equality_expression .and .loop and_expression_1;\n"
57 "and_expression_1\n"
58 " ampersand .and equality_expression .and .true .emit OP_AND;\n"
59 "equality_expression\n"
60 " relational_expression .and .loop equality_expression_1;\n"
61 "equality_expression_1\n"
62 " equality_expression_2 .or equality_expression_3;\n"
63 "equality_expression_2\n"
64 " equalsequals .and relational_expression .and .true .emit OP_EQUAL;\n"
65 "equality_expression_3\n"
66 " bangequals .and relational_expression .and .true .emit OP_NOTEQUAL;\n"
67 "relational_expression\n"
68 " shift_expression .and .loop relational_expression_1;\n"
69 "relational_expression_1\n"
70 " relational_expression_2 .or relational_expression_3 .or relational_expression_4 .or\n"
71 " relational_expression_5;\n"
72 "relational_expression_2\n"
73 " lessequals .and shift_expression .and .true .emit OP_LESSEQUAL;\n"
74 "relational_expression_3\n"
75 " greaterequals .and shift_expression .and .true .emit OP_GREATEREQUAL;\n"
76 "relational_expression_4\n"
77 " less .and shift_expression .and .true .emit OP_LESS;\n"
78 "relational_expression_5\n"
79 " greater .and shift_expression .and .true .emit OP_GREATER;\n"
80 "shift_expression\n"
81 " additive_expression .and .loop shift_expression_1;\n"
82 "shift_expression_1\n"
83 " shift_expression_2 .or shift_expression_3;\n"
84 "shift_expression_2\n"
85 " lessless .and additive_expression .and .true .emit OP_LEFTSHIFT;\n"
86 "shift_expression_3\n"
87 " greatergreater .and additive_expression .and .true .emit OP_RIGHTSHIFT;\n"
88 "additive_expression\n"
89 " multiplicative_expression .and .loop additive_expression_1;\n"
90 "additive_expression_1\n"
91 " additive_expression_2 .or additive_expression_3;\n"
92 "additive_expression_2\n"
93 " plus .and multiplicative_expression .and .true .emit OP_ADD;\n"
94 "additive_expression_3\n"
95 " dash .and multiplicative_expression .and .true .emit OP_SUBTRACT;\n"
96 "multiplicative_expression\n"
97 " unary_expression .and .loop multiplicative_expression_1;\n"
98 "multiplicative_expression_1\n"
99 " multiplicative_expression_2 .or multiplicative_expression_3 .or multiplicative_expression_4;\n"
100 "multiplicative_expression_2\n"
101 " star .and unary_expression .and .true .emit OP_MULTIPLY;\n"
102 "multiplicative_expression_3\n"
103 " slash .and unary_expression .and .true .emit OP_DIVIDE;\n"
104 "multiplicative_expression_4\n"
105 " percent .and unary_expression .and .true .emit OP_MODULUS;\n"
106 "unary_expression\n"
107 " primary_expression .or unary_expression_1 .or unary_expression_2 .or unary_expression_3 .or\n"
108 " unary_expression_4;\n"
109 "unary_expression_1\n"
110 " plus .and unary_expression .and .true .emit OP_PLUS;\n"
111 "unary_expression_2\n"
112 " dash .and unary_expression .and .true .emit OP_MINUS;\n"
113 "unary_expression_3\n"
114 " bang .and unary_expression .and .true .emit OP_NEGATE;\n"
115 "unary_expression_4\n"
116 " tilda .and unary_expression .and .true .emit OP_COMPLEMENT;\n"
117 "primary_expression\n"
118 " intconstant .or primary_expression_1;\n"
119 "primary_expression_1\n"
120 " lparen .and logical_or_expression .and rparen;\n"
121 "intconstant\n"
122 " integer .emit OP_PUSHINT;\n"
123 "integer\n"
124 " integer_dec;\n"
125 "integer_dec\n"
126 " digit_dec .emit 10 .emit * .and .loop digit_dec .emit * .and .true .emit '\\0';\n"
127 "digit_dec\n"
128 " '0'-'9';\n"
129 "optional_space\n"
130 " .loop single_space;\n"
131 "space\n"
132 " single_space .and .loop single_space;\n"
133 "single_space\n"
134 " ' ' .or '\\t';\n"
135 "ampersand\n"
136 " optional_space .and '&' .and optional_space;\n"
137 "ampersandampersand\n"
138 " optional_space .and '&' .and '&' .and optional_space;\n"
139 "bang\n"
140 " optional_space .and '!' .and optional_space;\n"
141 "bangequals\n"
142 " optional_space .and '!' .and '=' .and optional_space;\n"
143 "bar\n"
144 " optional_space .and '|' .and optional_space;\n"
145 "barbar\n"
146 " optional_space .and '|' .and '|' .and optional_space;\n"
147 "caret\n"
148 " optional_space .and '^' .and optional_space;\n"
149 "dash\n"
150 " optional_space .and '-' .and optional_space;\n"
151 "equalsequals\n"
152 " optional_space .and '=' .and '=' .and optional_space;\n"
153 "greater\n"
154 " optional_space .and '>' .and optional_space;\n"
155 "greaterequals\n"
156 " optional_space .and '>' .and '=' .and optional_space;\n"
157 "greatergreater\n"
158 " optional_space .and '>' .and '>' .and optional_space;\n"
159 "less\n"
160 " optional_space .and '<' .and optional_space;\n"
161 "lessequals\n"
162 " optional_space .and '<' .and '=' .and optional_space;\n"
163 "lessless\n"
164 " optional_space .and '<' .and '<' .and optional_space;\n"
165 "lparen\n"
166 " optional_space .and '(' .and optional_space;\n"
167 "percent\n"
168 " optional_space .and '%' .and optional_space;\n"
169 "plus\n"
170 " optional_space .and '+' .and optional_space;\n"
171 "rparen\n"
172 " optional_space .and ')' .and optional_space;\n"
173 "slash\n"
174 " optional_space .and '/' .and optional_space;\n"
175 "star\n"
176 " optional_space .and '*' .and optional_space;\n"
177 "tilda\n"
178 " optional_space .and '~' .and optional_space;\n"
179 ""