From: Alex Deucher Date: Mon, 19 Oct 2009 16:10:59 +0000 (-0400) Subject: Merge branch 'mesa_7_6_branch' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=620270c76e7241fe4c391e31e3706468d708fe69;p=mesa.git Merge branch 'mesa_7_6_branch' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa regenerated lex.yy.c --- 620270c76e7241fe4c391e31e3706468d708fe69 diff --cc src/mesa/shader/lex.yy.c index 3c86913fdfc,fefef573ee5..17843c2121b --- a/src/mesa/shader/lex.yy.c +++ b/src/mesa/shader/lex.yy.c @@@ -1160,7 -1004,7 +1153,7 @@@ handle_ident(struct asm_parser_state *s } while(0); #define YY_EXTRA_TYPE struct asm_parser_state * - #line 1164 "lex.yy.c" -#line 1008 "lex.yy.c" ++#line 1157 "lex.yy.c" #define INITIAL 0 @@@ -1406,10 -1245,10 +1394,10 @@@ YY_DEC register int yy_act; struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; - #line 156 "program_lexer.l" -#line 137 "program_lexer.l" ++#line 157 "program_lexer.l" - #line 1413 "lex.yy.c" -#line 1252 "lex.yy.c" ++#line 1401 "lex.yy.c" yylval = yylval_param; @@@ -1498,17 -1337,17 +1486,17 @@@ do_action: /* This label is used only t case 1: YY_RULE_SETUP - #line 158 "program_lexer.l" -#line 139 "program_lexer.l" ++#line 159 "program_lexer.l" { return ARBvp_10; } YY_BREAK case 2: YY_RULE_SETUP - #line 159 "program_lexer.l" -#line 140 "program_lexer.l" ++#line 160 "program_lexer.l" { return ARBfp_10; } YY_BREAK case 3: YY_RULE_SETUP - #line 160 "program_lexer.l" -#line 141 "program_lexer.l" ++#line 161 "program_lexer.l" { yylval->integer = at_address; return_token_or_IDENTIFIER(require_ARB_vp, ADDRESS); @@@ -1516,702 -1355,770 +1504,702 @@@ YY_BREAK case 4: YY_RULE_SETUP - #line 164 "program_lexer.l" -#line 145 "program_lexer.l" ++#line 165 "program_lexer.l" { return ALIAS; } YY_BREAK case 5: YY_RULE_SETUP - #line 165 "program_lexer.l" -#line 146 "program_lexer.l" ++#line 166 "program_lexer.l" { return ATTRIB; } YY_BREAK case 6: YY_RULE_SETUP - #line 166 "program_lexer.l" -#line 147 "program_lexer.l" ++#line 167 "program_lexer.l" { return END; } YY_BREAK case 7: YY_RULE_SETUP - #line 167 "program_lexer.l" -#line 148 "program_lexer.l" ++#line 168 "program_lexer.l" { return OPTION; } YY_BREAK case 8: YY_RULE_SETUP - #line 168 "program_lexer.l" -#line 149 "program_lexer.l" ++#line 169 "program_lexer.l" { return OUTPUT; } YY_BREAK case 9: YY_RULE_SETUP - #line 169 "program_lexer.l" -#line 150 "program_lexer.l" ++#line 170 "program_lexer.l" { return PARAM; } YY_BREAK case 10: YY_RULE_SETUP - #line 170 "program_lexer.l" -#line 151 "program_lexer.l" ++#line 171 "program_lexer.l" { yylval->integer = at_temp; return TEMP; } YY_BREAK case 11: YY_RULE_SETUP - #line 172 "program_lexer.l" -#line 153 "program_lexer.l" -{ return_opcode( 1, VECTOR_OP, ABS, OFF); } ++#line 173 "program_lexer.l" +{ return_opcode( 1, VECTOR_OP, ABS, 3); } YY_BREAK case 12: YY_RULE_SETUP - #line 173 "program_lexer.l" -#line 154 "program_lexer.l" -{ return_opcode(require_ARB_fp, VECTOR_OP, ABS, ZERO_ONE); } ++#line 174 "program_lexer.l" +{ return_opcode( 1, BIN_OP, ADD, 3); } YY_BREAK case 13: YY_RULE_SETUP - #line 174 "program_lexer.l" -#line 155 "program_lexer.l" -{ return_opcode( 1, BIN_OP, ADD, OFF); } ++#line 175 "program_lexer.l" +{ return_opcode(require_ARB_vp, ARL, ARL, 3); } YY_BREAK case 14: YY_RULE_SETUP - #line 176 "program_lexer.l" -#line 156 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, ADD, ZERO_ONE); } ++#line 177 "program_lexer.l" +{ return_opcode(require_ARB_fp, TRI_OP, CMP, 3); } YY_BREAK case 15: YY_RULE_SETUP - #line 177 "program_lexer.l" -#line 157 "program_lexer.l" -{ return_opcode(require_ARB_vp, ARL, ARL, OFF); } ++#line 178 "program_lexer.l" +{ return_opcode(require_ARB_fp, SCALAR_OP, COS, 3); } YY_BREAK case 16: YY_RULE_SETUP - #line 179 "program_lexer.l" -#line 159 "program_lexer.l" -{ return_opcode(require_ARB_fp, TRI_OP, CMP, OFF); } ++#line 180 "program_lexer.l" +{ return_opcode(require_NV_fp, VECTOR_OP, DDX, 3); } YY_BREAK case 17: YY_RULE_SETUP - #line 180 "program_lexer.l" -#line 160 "program_lexer.l" -{ return_opcode(require_ARB_fp, TRI_OP, CMP, ZERO_ONE); } ++#line 181 "program_lexer.l" +{ return_opcode(require_NV_fp, VECTOR_OP, DDY, 3); } YY_BREAK case 18: YY_RULE_SETUP - #line 181 "program_lexer.l" -#line 161 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, COS, OFF); } ++#line 182 "program_lexer.l" +{ return_opcode( 1, BIN_OP, DP3, 3); } YY_BREAK case 19: YY_RULE_SETUP - #line 182 "program_lexer.l" -#line 162 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, COS, ZERO_ONE); } ++#line 183 "program_lexer.l" +{ return_opcode( 1, BIN_OP, DP4, 3); } YY_BREAK case 20: YY_RULE_SETUP - #line 183 "program_lexer.l" -#line 164 "program_lexer.l" -{ return_opcode( 1, BIN_OP, DP3, OFF); } ++#line 184 "program_lexer.l" +{ return_opcode( 1, BIN_OP, DPH, 3); } YY_BREAK case 21: YY_RULE_SETUP - #line 184 "program_lexer.l" -#line 165 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, DP3, ZERO_ONE); } ++#line 185 "program_lexer.l" +{ return_opcode( 1, BIN_OP, DST, 3); } YY_BREAK case 22: YY_RULE_SETUP - #line 186 "program_lexer.l" -#line 166 "program_lexer.l" -{ return_opcode( 1, BIN_OP, DP4, OFF); } ++#line 187 "program_lexer.l" +{ return_opcode( 1, SCALAR_OP, EX2, 3); } YY_BREAK case 23: YY_RULE_SETUP - #line 187 "program_lexer.l" -#line 167 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, DP4, ZERO_ONE); } ++#line 188 "program_lexer.l" +{ return_opcode(require_ARB_vp, SCALAR_OP, EXP, 3); } YY_BREAK case 24: YY_RULE_SETUP - #line 189 "program_lexer.l" -#line 168 "program_lexer.l" -{ return_opcode( 1, BIN_OP, DPH, OFF); } ++#line 190 "program_lexer.l" +{ return_opcode( 1, VECTOR_OP, FLR, 3); } YY_BREAK case 25: YY_RULE_SETUP - #line 190 "program_lexer.l" -#line 169 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, DPH, ZERO_ONE); } ++#line 191 "program_lexer.l" +{ return_opcode( 1, VECTOR_OP, FRC, 3); } YY_BREAK case 26: YY_RULE_SETUP - #line 192 "program_lexer.l" -#line 170 "program_lexer.l" -{ return_opcode( 1, BIN_OP, DST, OFF); } ++#line 193 "program_lexer.l" +{ return_opcode(require_ARB_fp, KIL, KIL, 3); } YY_BREAK case 27: YY_RULE_SETUP - #line 194 "program_lexer.l" -#line 171 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, DST, ZERO_ONE); } ++#line 195 "program_lexer.l" +{ return_opcode( 1, VECTOR_OP, LIT, 3); } YY_BREAK case 28: YY_RULE_SETUP - #line 195 "program_lexer.l" -#line 173 "program_lexer.l" -{ return_opcode( 1, SCALAR_OP, EX2, OFF); } ++#line 196 "program_lexer.l" +{ return_opcode( 1, SCALAR_OP, LG2, 3); } YY_BREAK case 29: YY_RULE_SETUP - #line 196 "program_lexer.l" -#line 174 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, EX2, ZERO_ONE); } ++#line 197 "program_lexer.l" +{ return_opcode(require_ARB_vp, SCALAR_OP, LOG, 3); } YY_BREAK case 30: YY_RULE_SETUP - #line 197 "program_lexer.l" -#line 175 "program_lexer.l" -{ return_opcode(require_ARB_vp, SCALAR_OP, EXP, OFF); } ++#line 198 "program_lexer.l" +{ return_opcode(require_ARB_fp, TRI_OP, LRP, 3); } YY_BREAK case 31: YY_RULE_SETUP - #line 199 "program_lexer.l" -#line 177 "program_lexer.l" -{ return_opcode( 1, VECTOR_OP, FLR, OFF); } ++#line 200 "program_lexer.l" +{ return_opcode( 1, TRI_OP, MAD, 3); } YY_BREAK case 32: YY_RULE_SETUP - #line 200 "program_lexer.l" -#line 178 "program_lexer.l" -{ return_opcode(require_ARB_fp, VECTOR_OP, FLR, ZERO_ONE); } ++#line 201 "program_lexer.l" +{ return_opcode( 1, BIN_OP, MAX, 3); } YY_BREAK case 33: YY_RULE_SETUP - #line 201 "program_lexer.l" -#line 179 "program_lexer.l" -{ return_opcode( 1, VECTOR_OP, FRC, OFF); } ++#line 202 "program_lexer.l" +{ return_opcode( 1, BIN_OP, MIN, 3); } YY_BREAK case 34: YY_RULE_SETUP - #line 202 "program_lexer.l" -#line 180 "program_lexer.l" -{ return_opcode(require_ARB_fp, VECTOR_OP, FRC, ZERO_ONE); } ++#line 203 "program_lexer.l" +{ return_opcode( 1, VECTOR_OP, MOV, 3); } YY_BREAK case 35: YY_RULE_SETUP - #line 203 "program_lexer.l" -#line 182 "program_lexer.l" -{ return_opcode(require_ARB_fp, KIL, KIL, OFF); } ++#line 204 "program_lexer.l" +{ return_opcode( 1, BIN_OP, MUL, 3); } YY_BREAK case 36: YY_RULE_SETUP - #line 205 "program_lexer.l" -#line 184 "program_lexer.l" -{ return_opcode( 1, VECTOR_OP, LIT, OFF); } ++#line 206 "program_lexer.l" +{ return_opcode(require_NV_fp, VECTOR_OP, PK2H, 4); } YY_BREAK case 37: YY_RULE_SETUP - #line 206 "program_lexer.l" -#line 185 "program_lexer.l" -{ return_opcode(require_ARB_fp, VECTOR_OP, LIT, ZERO_ONE); } ++#line 207 "program_lexer.l" +{ return_opcode(require_NV_fp, VECTOR_OP, PK2US, 5); } YY_BREAK case 38: YY_RULE_SETUP - #line 207 "program_lexer.l" -#line 186 "program_lexer.l" -{ return_opcode( 1, SCALAR_OP, LG2, OFF); } ++#line 208 "program_lexer.l" +{ return_opcode(require_NV_fp, VECTOR_OP, PK4B, 4); } YY_BREAK case 39: YY_RULE_SETUP - #line 208 "program_lexer.l" -#line 187 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, LG2, ZERO_ONE); } ++#line 209 "program_lexer.l" +{ return_opcode(require_NV_fp, VECTOR_OP, PK4UB, 5); } YY_BREAK case 40: YY_RULE_SETUP - #line 209 "program_lexer.l" -#line 188 "program_lexer.l" -{ return_opcode(require_ARB_vp, SCALAR_OP, LOG, OFF); } ++#line 210 "program_lexer.l" +{ return_opcode( 1, BINSC_OP, POW, 3); } YY_BREAK case 41: YY_RULE_SETUP - #line 211 "program_lexer.l" -#line 189 "program_lexer.l" -{ return_opcode(require_ARB_fp, TRI_OP, LRP, OFF); } ++#line 212 "program_lexer.l" +{ return_opcode( 1, SCALAR_OP, RCP, 3); } YY_BREAK case 42: YY_RULE_SETUP - #line 212 "program_lexer.l" -#line 190 "program_lexer.l" -{ return_opcode(require_ARB_fp, TRI_OP, LRP, ZERO_ONE); } ++#line 213 "program_lexer.l" +{ return_opcode(require_NV_fp, BIN_OP, RFL, 3); } YY_BREAK case 43: YY_RULE_SETUP - #line 213 "program_lexer.l" -#line 192 "program_lexer.l" -{ return_opcode( 1, TRI_OP, MAD, OFF); } ++#line 214 "program_lexer.l" +{ return_opcode( 1, SCALAR_OP, RSQ, 3); } YY_BREAK case 44: YY_RULE_SETUP - #line 215 "program_lexer.l" -#line 193 "program_lexer.l" -{ return_opcode(require_ARB_fp, TRI_OP, MAD, ZERO_ONE); } ++#line 216 "program_lexer.l" +{ return_opcode(require_ARB_fp, SCALAR_OP, SCS, 3); } YY_BREAK case 45: YY_RULE_SETUP - #line 216 "program_lexer.l" -#line 194 "program_lexer.l" -{ return_opcode( 1, BIN_OP, MAX, OFF); } ++#line 217 "program_lexer.l" +{ return_opcode(require_NV_fp, BIN_OP, SEQ, 3); } YY_BREAK case 46: YY_RULE_SETUP - #line 217 "program_lexer.l" -#line 195 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, MAX, ZERO_ONE); } ++#line 218 "program_lexer.l" +{ return_opcode(require_NV_fp, BIN_OP, SFL, 3); } YY_BREAK case 47: YY_RULE_SETUP - #line 218 "program_lexer.l" -#line 196 "program_lexer.l" -{ return_opcode( 1, BIN_OP, MIN, OFF); } ++#line 219 "program_lexer.l" +{ return_opcode( 1, BIN_OP, SGE, 3); } YY_BREAK case 48: YY_RULE_SETUP - #line 219 "program_lexer.l" -#line 197 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, MIN, ZERO_ONE); } ++#line 220 "program_lexer.l" +{ return_opcode(require_NV_fp, BIN_OP, SGT, 3); } YY_BREAK case 49: YY_RULE_SETUP - #line 220 "program_lexer.l" -#line 198 "program_lexer.l" -{ return_opcode( 1, VECTOR_OP, MOV, OFF); } ++#line 221 "program_lexer.l" +{ return_opcode(require_ARB_fp, SCALAR_OP, SIN, 3); } YY_BREAK case 50: YY_RULE_SETUP - #line 221 "program_lexer.l" -#line 199 "program_lexer.l" -{ return_opcode(require_ARB_fp, VECTOR_OP, MOV, ZERO_ONE); } ++#line 222 "program_lexer.l" +{ return_opcode(require_NV_fp, BIN_OP, SLE, 3); } YY_BREAK case 51: YY_RULE_SETUP - #line 222 "program_lexer.l" -#line 200 "program_lexer.l" -{ return_opcode( 1, BIN_OP, MUL, OFF); } ++#line 223 "program_lexer.l" +{ return_opcode( 1, BIN_OP, SLT, 3); } YY_BREAK case 52: YY_RULE_SETUP - #line 223 "program_lexer.l" -#line 201 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, MUL, ZERO_ONE); } ++#line 224 "program_lexer.l" +{ return_opcode(require_NV_fp, BIN_OP, SNE, 3); } YY_BREAK case 53: YY_RULE_SETUP - #line 224 "program_lexer.l" -#line 203 "program_lexer.l" -{ return_opcode( 1, BINSC_OP, POW, OFF); } ++#line 225 "program_lexer.l" +{ return_opcode(require_NV_fp, BIN_OP, STR, 3); } YY_BREAK case 54: YY_RULE_SETUP - #line 225 "program_lexer.l" -#line 204 "program_lexer.l" -{ return_opcode(require_ARB_fp, BINSC_OP, POW, ZERO_ONE); } ++#line 226 "program_lexer.l" +{ return_opcode( 1, BIN_OP, SUB, 3); } YY_BREAK case 55: YY_RULE_SETUP - #line 226 "program_lexer.l" -#line 206 "program_lexer.l" -{ return_opcode( 1, SCALAR_OP, RCP, OFF); } ++#line 227 "program_lexer.l" +{ return_opcode( 1, SWZ, SWZ, 3); } YY_BREAK case 56: YY_RULE_SETUP - #line 228 "program_lexer.l" -#line 207 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, RCP, ZERO_ONE); } ++#line 229 "program_lexer.l" +{ return_opcode(require_ARB_fp, SAMPLE_OP, TEX, 3); } YY_BREAK case 57: YY_RULE_SETUP - #line 229 "program_lexer.l" -#line 208 "program_lexer.l" -{ return_opcode( 1, SCALAR_OP, RSQ, OFF); } ++#line 230 "program_lexer.l" +{ return_opcode(require_ARB_fp, SAMPLE_OP, TXB, 3); } YY_BREAK case 58: YY_RULE_SETUP - #line 230 "program_lexer.l" -#line 209 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, RSQ, ZERO_ONE); } ++#line 231 "program_lexer.l" +{ return_opcode(require_NV_fp, TXD_OP, TXD, 3); } YY_BREAK case 59: YY_RULE_SETUP - #line 231 "program_lexer.l" -#line 211 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, SCS, OFF); } ++#line 232 "program_lexer.l" +{ return_opcode(require_ARB_fp, SAMPLE_OP, TXP, 3); } YY_BREAK case 60: YY_RULE_SETUP - #line 233 "program_lexer.l" -#line 212 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, SCS, ZERO_ONE); } ++#line 234 "program_lexer.l" +{ return_opcode(require_NV_fp, SCALAR_OP, UP2H, 4); } YY_BREAK case 61: YY_RULE_SETUP - #line 234 "program_lexer.l" -#line 213 "program_lexer.l" -{ return_opcode( 1, BIN_OP, SGE, OFF); } ++#line 235 "program_lexer.l" +{ return_opcode(require_NV_fp, SCALAR_OP, UP2US, 5); } YY_BREAK case 62: YY_RULE_SETUP - #line 235 "program_lexer.l" -#line 214 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, SGE, ZERO_ONE); } ++#line 236 "program_lexer.l" +{ return_opcode(require_NV_fp, SCALAR_OP, UP4B, 4); } YY_BREAK case 63: YY_RULE_SETUP - #line 236 "program_lexer.l" -#line 215 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, SIN, OFF); } ++#line 237 "program_lexer.l" +{ return_opcode(require_NV_fp, SCALAR_OP, UP4UB, 5); } YY_BREAK case 64: YY_RULE_SETUP - #line 238 "program_lexer.l" -#line 216 "program_lexer.l" -{ return_opcode(require_ARB_fp, SCALAR_OP, SIN, ZERO_ONE); } ++#line 239 "program_lexer.l" +{ return_opcode(require_NV_fp, TRI_OP, X2D, 3); } YY_BREAK case 65: YY_RULE_SETUP - #line 239 "program_lexer.l" -#line 217 "program_lexer.l" -{ return_opcode( 1, BIN_OP, SLT, OFF); } ++#line 240 "program_lexer.l" +{ return_opcode( 1, BIN_OP, XPD, 3); } YY_BREAK case 66: YY_RULE_SETUP - #line 241 "program_lexer.l" -#line 218 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, SLT, ZERO_ONE); } ++#line 242 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_vp, VERTEX); } YY_BREAK case 67: YY_RULE_SETUP - #line 242 "program_lexer.l" -#line 219 "program_lexer.l" -{ return_opcode( 1, BIN_OP, SUB, OFF); } ++#line 243 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp, FRAGMENT); } YY_BREAK case 68: YY_RULE_SETUP - #line 243 "program_lexer.l" -#line 220 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, SUB, ZERO_ONE); } ++#line 244 "program_lexer.l" +{ return PROGRAM; } YY_BREAK case 69: YY_RULE_SETUP - #line 244 "program_lexer.l" -#line 221 "program_lexer.l" -{ return_opcode( 1, SWZ, SWZ, OFF); } ++#line 245 "program_lexer.l" +{ return STATE; } YY_BREAK case 70: YY_RULE_SETUP - #line 245 "program_lexer.l" -#line 222 "program_lexer.l" -{ return_opcode(require_ARB_fp, SWZ, SWZ, ZERO_ONE); } ++#line 246 "program_lexer.l" +{ return RESULT; } YY_BREAK case 71: YY_RULE_SETUP - #line 247 "program_lexer.l" -#line 224 "program_lexer.l" -{ return_opcode(require_ARB_fp, SAMPLE_OP, TEX, OFF); } ++#line 248 "program_lexer.l" +{ return AMBIENT; } YY_BREAK case 72: YY_RULE_SETUP - #line 248 "program_lexer.l" -#line 225 "program_lexer.l" -{ return_opcode(require_ARB_fp, SAMPLE_OP, TEX, ZERO_ONE); } ++#line 249 "program_lexer.l" +{ return ATTENUATION; } YY_BREAK case 73: YY_RULE_SETUP - #line 249 "program_lexer.l" -#line 226 "program_lexer.l" -{ return_opcode(require_ARB_fp, SAMPLE_OP, TXB, OFF); } ++#line 250 "program_lexer.l" +{ return BACK; } YY_BREAK case 74: YY_RULE_SETUP - #line 250 "program_lexer.l" -#line 227 "program_lexer.l" -{ return_opcode(require_ARB_fp, SAMPLE_OP, TXB, ZERO_ONE); } ++#line 251 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, CLIP); } YY_BREAK case 75: YY_RULE_SETUP - #line 251 "program_lexer.l" -#line 228 "program_lexer.l" -{ return_opcode(require_ARB_fp, SAMPLE_OP, TXP, OFF); } ++#line 252 "program_lexer.l" +{ return COLOR; } YY_BREAK case 76: YY_RULE_SETUP - #line 252 "program_lexer.l" -#line 229 "program_lexer.l" -{ return_opcode(require_ARB_fp, SAMPLE_OP, TXP, ZERO_ONE); } ++#line 253 "program_lexer.l" +{ return_token_or_DOT(require_ARB_fp, DEPTH); } YY_BREAK case 77: YY_RULE_SETUP - #line 253 "program_lexer.l" -#line 231 "program_lexer.l" -{ return_opcode( 1, BIN_OP, XPD, OFF); } ++#line 254 "program_lexer.l" +{ return DIFFUSE; } YY_BREAK case 78: YY_RULE_SETUP - #line 254 "program_lexer.l" -#line 232 "program_lexer.l" -{ return_opcode(require_ARB_fp, BIN_OP, XPD, ZERO_ONE); } ++#line 255 "program_lexer.l" +{ return DIRECTION; } YY_BREAK case 79: YY_RULE_SETUP - #line 255 "program_lexer.l" -#line 234 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_vp, VERTEX); } ++#line 256 "program_lexer.l" +{ return EMISSION; } YY_BREAK case 80: YY_RULE_SETUP - #line 256 "program_lexer.l" -#line 235 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp, FRAGMENT); } ++#line 257 "program_lexer.l" +{ return ENV; } YY_BREAK case 81: YY_RULE_SETUP - #line 257 "program_lexer.l" -#line 236 "program_lexer.l" -{ return PROGRAM; } ++#line 258 "program_lexer.l" +{ return EYE; } YY_BREAK case 82: YY_RULE_SETUP - #line 258 "program_lexer.l" -#line 237 "program_lexer.l" -{ return STATE; } ++#line 259 "program_lexer.l" +{ return FOGCOORD; } YY_BREAK case 83: YY_RULE_SETUP - #line 259 "program_lexer.l" -#line 238 "program_lexer.l" -{ return RESULT; } ++#line 260 "program_lexer.l" +{ return FOG; } YY_BREAK case 84: YY_RULE_SETUP - #line 260 "program_lexer.l" -#line 240 "program_lexer.l" -{ return AMBIENT; } ++#line 261 "program_lexer.l" +{ return FRONT; } YY_BREAK case 85: YY_RULE_SETUP - #line 261 "program_lexer.l" -#line 241 "program_lexer.l" -{ return ATTENUATION; } ++#line 262 "program_lexer.l" +{ return HALF; } YY_BREAK case 86: YY_RULE_SETUP - #line 262 "program_lexer.l" -#line 242 "program_lexer.l" -{ return BACK; } ++#line 263 "program_lexer.l" +{ return INVERSE; } YY_BREAK case 87: YY_RULE_SETUP - #line 263 "program_lexer.l" -#line 243 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, CLIP); } ++#line 264 "program_lexer.l" +{ return INVTRANS; } YY_BREAK case 88: YY_RULE_SETUP - #line 264 "program_lexer.l" -#line 244 "program_lexer.l" -{ return COLOR; } ++#line 265 "program_lexer.l" +{ return LIGHT; } YY_BREAK case 89: YY_RULE_SETUP - #line 265 "program_lexer.l" -#line 245 "program_lexer.l" -{ return_token_or_DOT(require_ARB_fp, DEPTH); } ++#line 266 "program_lexer.l" +{ return LIGHTMODEL; } YY_BREAK case 90: YY_RULE_SETUP - #line 266 "program_lexer.l" -#line 246 "program_lexer.l" -{ return DIFFUSE; } ++#line 267 "program_lexer.l" +{ return LIGHTPROD; } YY_BREAK case 91: YY_RULE_SETUP - #line 267 "program_lexer.l" -#line 247 "program_lexer.l" -{ return DIRECTION; } ++#line 268 "program_lexer.l" +{ return LOCAL; } YY_BREAK case 92: YY_RULE_SETUP - #line 268 "program_lexer.l" -#line 248 "program_lexer.l" -{ return EMISSION; } ++#line 269 "program_lexer.l" +{ return MATERIAL; } YY_BREAK case 93: YY_RULE_SETUP - #line 269 "program_lexer.l" -#line 249 "program_lexer.l" -{ return ENV; } ++#line 270 "program_lexer.l" +{ return MAT_PROGRAM; } YY_BREAK case 94: YY_RULE_SETUP - #line 270 "program_lexer.l" -#line 250 "program_lexer.l" -{ return EYE; } ++#line 271 "program_lexer.l" +{ return MATRIX; } YY_BREAK case 95: YY_RULE_SETUP - #line 271 "program_lexer.l" -#line 251 "program_lexer.l" -{ return FOGCOORD; } ++#line 272 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, MATRIXINDEX); } YY_BREAK case 96: YY_RULE_SETUP - #line 272 "program_lexer.l" -#line 252 "program_lexer.l" -{ return FOG; } ++#line 273 "program_lexer.l" +{ return MODELVIEW; } YY_BREAK case 97: YY_RULE_SETUP - #line 273 "program_lexer.l" -#line 253 "program_lexer.l" -{ return FRONT; } ++#line 274 "program_lexer.l" +{ return MVP; } YY_BREAK case 98: YY_RULE_SETUP - #line 274 "program_lexer.l" -#line 254 "program_lexer.l" -{ return HALF; } ++#line 275 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, NORMAL); } YY_BREAK case 99: YY_RULE_SETUP - #line 275 "program_lexer.l" -#line 255 "program_lexer.l" -{ return INVERSE; } ++#line 276 "program_lexer.l" +{ return OBJECT; } YY_BREAK case 100: YY_RULE_SETUP - #line 276 "program_lexer.l" -#line 256 "program_lexer.l" -{ return INVTRANS; } ++#line 277 "program_lexer.l" +{ return PALETTE; } YY_BREAK case 101: YY_RULE_SETUP - #line 277 "program_lexer.l" -#line 257 "program_lexer.l" -{ return LIGHT; } ++#line 278 "program_lexer.l" +{ return PARAMS; } YY_BREAK case 102: YY_RULE_SETUP - #line 278 "program_lexer.l" -#line 258 "program_lexer.l" -{ return LIGHTMODEL; } ++#line 279 "program_lexer.l" +{ return PLANE; } YY_BREAK case 103: YY_RULE_SETUP - #line 279 "program_lexer.l" -#line 259 "program_lexer.l" -{ return LIGHTPROD; } ++#line 280 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, POINT_TOK); } YY_BREAK case 104: YY_RULE_SETUP - #line 280 "program_lexer.l" -#line 260 "program_lexer.l" -{ return LOCAL; } ++#line 281 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, POINTSIZE); } YY_BREAK case 105: YY_RULE_SETUP - #line 281 "program_lexer.l" -#line 261 "program_lexer.l" -{ return MATERIAL; } ++#line 282 "program_lexer.l" +{ return POSITION; } YY_BREAK case 106: YY_RULE_SETUP - #line 282 "program_lexer.l" -#line 262 "program_lexer.l" -{ return MAT_PROGRAM; } ++#line 283 "program_lexer.l" +{ return PRIMARY; } YY_BREAK case 107: YY_RULE_SETUP - #line 283 "program_lexer.l" -#line 263 "program_lexer.l" -{ return MATRIX; } ++#line 284 "program_lexer.l" +{ return PROJECTION; } YY_BREAK case 108: YY_RULE_SETUP - #line 284 "program_lexer.l" -#line 264 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, MATRIXINDEX); } ++#line 285 "program_lexer.l" +{ return_token_or_DOT(require_ARB_fp, RANGE); } YY_BREAK case 109: YY_RULE_SETUP - #line 285 "program_lexer.l" -#line 265 "program_lexer.l" -{ return MODELVIEW; } ++#line 286 "program_lexer.l" +{ return ROW; } YY_BREAK case 110: YY_RULE_SETUP - #line 286 "program_lexer.l" -#line 266 "program_lexer.l" -{ return MVP; } ++#line 287 "program_lexer.l" +{ return SCENECOLOR; } YY_BREAK case 111: YY_RULE_SETUP - #line 287 "program_lexer.l" -#line 267 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, NORMAL); } ++#line 288 "program_lexer.l" +{ return SECONDARY; } YY_BREAK case 112: YY_RULE_SETUP - #line 288 "program_lexer.l" -#line 268 "program_lexer.l" -{ return OBJECT; } ++#line 289 "program_lexer.l" +{ return SHININESS; } YY_BREAK case 113: YY_RULE_SETUP - #line 289 "program_lexer.l" -#line 269 "program_lexer.l" -{ return PALETTE; } ++#line 290 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, SIZE_TOK); } YY_BREAK case 114: YY_RULE_SETUP - #line 290 "program_lexer.l" -#line 270 "program_lexer.l" -{ return PARAMS; } ++#line 291 "program_lexer.l" +{ return SPECULAR; } YY_BREAK case 115: YY_RULE_SETUP - #line 291 "program_lexer.l" -#line 271 "program_lexer.l" -{ return PLANE; } ++#line 292 "program_lexer.l" +{ return SPOT; } YY_BREAK case 116: YY_RULE_SETUP - #line 292 "program_lexer.l" -#line 272 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, POINT_TOK); } ++#line 293 "program_lexer.l" +{ return TEXCOORD; } YY_BREAK case 117: YY_RULE_SETUP - #line 293 "program_lexer.l" -#line 273 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, POINTSIZE); } ++#line 294 "program_lexer.l" +{ return_token_or_DOT(require_ARB_fp, TEXENV); } YY_BREAK case 118: YY_RULE_SETUP - #line 294 "program_lexer.l" -#line 274 "program_lexer.l" -{ return POSITION; } ++#line 295 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, TEXGEN); } YY_BREAK case 119: YY_RULE_SETUP - #line 295 "program_lexer.l" -#line 275 "program_lexer.l" -{ return PRIMARY; } ++#line 296 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, TEXGEN_Q); } YY_BREAK case 120: YY_RULE_SETUP - #line 296 "program_lexer.l" -#line 276 "program_lexer.l" -{ return PROJECTION; } ++#line 297 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, TEXGEN_S); } YY_BREAK case 121: YY_RULE_SETUP - #line 297 "program_lexer.l" -#line 277 "program_lexer.l" -{ return_token_or_DOT(require_ARB_fp, RANGE); } ++#line 298 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, TEXGEN_T); } YY_BREAK case 122: YY_RULE_SETUP - #line 298 "program_lexer.l" -#line 278 "program_lexer.l" -{ return ROW; } ++#line 299 "program_lexer.l" +{ return TEXTURE; } YY_BREAK case 123: YY_RULE_SETUP - #line 299 "program_lexer.l" -#line 279 "program_lexer.l" -{ return SCENECOLOR; } ++#line 300 "program_lexer.l" +{ return TRANSPOSE; } YY_BREAK case 124: YY_RULE_SETUP - #line 300 "program_lexer.l" -#line 280 "program_lexer.l" -{ return SECONDARY; } ++#line 301 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, VTXATTRIB); } YY_BREAK case 125: YY_RULE_SETUP - #line 301 "program_lexer.l" -#line 281 "program_lexer.l" -{ return SHININESS; } ++#line 302 "program_lexer.l" +{ return_token_or_DOT(require_ARB_vp, WEIGHT); } YY_BREAK case 126: YY_RULE_SETUP - #line 303 "program_lexer.l" -#line 282 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, SIZE_TOK); } ++#line 304 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp, TEXTURE_UNIT); } YY_BREAK case 127: YY_RULE_SETUP - #line 304 "program_lexer.l" -#line 283 "program_lexer.l" -{ return SPECULAR; } ++#line 305 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp, TEX_1D); } YY_BREAK case 128: YY_RULE_SETUP - #line 305 "program_lexer.l" -#line 284 "program_lexer.l" -{ return SPOT; } ++#line 306 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp, TEX_2D); } YY_BREAK case 129: YY_RULE_SETUP - #line 306 "program_lexer.l" -#line 285 "program_lexer.l" -{ return TEXCOORD; } ++#line 307 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp, TEX_3D); } YY_BREAK case 130: YY_RULE_SETUP - #line 307 "program_lexer.l" -#line 286 "program_lexer.l" -{ return_token_or_DOT(require_ARB_fp, TEXENV); } ++#line 308 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp, TEX_CUBE); } YY_BREAK case 131: YY_RULE_SETUP - #line 308 "program_lexer.l" -#line 287 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, TEXGEN); } ++#line 309 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp && require_rect, TEX_RECT); } YY_BREAK case 132: YY_RULE_SETUP - #line 309 "program_lexer.l" -#line 288 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, TEXGEN_Q); } ++#line 310 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow, TEX_SHADOW1D); } YY_BREAK case 133: YY_RULE_SETUP - #line 310 "program_lexer.l" -#line 289 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, TEXGEN_S); } ++#line 311 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow, TEX_SHADOW2D); } YY_BREAK case 134: YY_RULE_SETUP - #line 311 "program_lexer.l" -#line 290 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, TEXGEN_T); } ++#line 312 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow && require_rect, TEX_SHADOWRECT); } YY_BREAK case 135: YY_RULE_SETUP - #line 312 "program_lexer.l" -#line 291 "program_lexer.l" -{ return TEXTURE; } ++#line 313 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp && require_texarray, TEX_ARRAY1D); } YY_BREAK case 136: YY_RULE_SETUP - #line 313 "program_lexer.l" -#line 292 "program_lexer.l" -{ return TRANSPOSE; } ++#line 314 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp && require_texarray, TEX_ARRAY2D); } YY_BREAK case 137: YY_RULE_SETUP - #line 314 "program_lexer.l" -#line 293 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, VTXATTRIB); } ++#line 315 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow && require_texarray, TEX_ARRAYSHADOW1D); } YY_BREAK case 138: YY_RULE_SETUP - #line 315 "program_lexer.l" -#line 294 "program_lexer.l" -{ return_token_or_DOT(require_ARB_vp, WEIGHT); } ++#line 316 "program_lexer.l" +{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow && require_texarray, TEX_ARRAYSHADOW2D); } YY_BREAK case 139: YY_RULE_SETUP - #line 317 "program_lexer.l" -#line 296 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp, TEXTURE_UNIT); } ++#line 318 "program_lexer.l" +{ return handle_ident(yyextra, yytext, yylval); } YY_BREAK case 140: YY_RULE_SETUP - #line 319 "program_lexer.l" -#line 297 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp, TEX_1D); } - YY_BREAK -case 141: -YY_RULE_SETUP -#line 298 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp, TEX_2D); } - YY_BREAK -case 142: -YY_RULE_SETUP -#line 299 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp, TEX_3D); } - YY_BREAK -case 143: -YY_RULE_SETUP -#line 300 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp, TEX_CUBE); } - YY_BREAK -case 144: -YY_RULE_SETUP -#line 301 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp && require_rect, TEX_RECT); } - YY_BREAK -case 145: -YY_RULE_SETUP -#line 302 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow, TEX_SHADOW1D); } - YY_BREAK -case 146: -YY_RULE_SETUP -#line 303 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow, TEX_SHADOW2D); } - YY_BREAK -case 147: -YY_RULE_SETUP -#line 304 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow && require_rect, TEX_SHADOWRECT); } - YY_BREAK -case 148: -YY_RULE_SETUP -#line 305 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp && require_texarray, TEX_ARRAY1D); } - YY_BREAK -case 149: -YY_RULE_SETUP -#line 306 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp && require_texarray, TEX_ARRAY2D); } - YY_BREAK -case 150: -YY_RULE_SETUP -#line 307 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow && require_texarray, TEX_ARRAYSHADOW1D); } - YY_BREAK -case 151: -YY_RULE_SETUP -#line 308 "program_lexer.l" -{ return_token_or_IDENTIFIER(require_ARB_fp && require_shadow && require_texarray, TEX_ARRAYSHADOW2D); } - YY_BREAK -case 152: -YY_RULE_SETUP -#line 310 "program_lexer.l" -{ - yylval->string = strdup(yytext); - return IDENTIFIER; -} - YY_BREAK -case 153: -YY_RULE_SETUP -#line 315 "program_lexer.l" ++#line 320 "program_lexer.l" { return DOT_DOT; } YY_BREAK -case 154: +case 141: YY_RULE_SETUP - #line 321 "program_lexer.l" -#line 317 "program_lexer.l" ++#line 322 "program_lexer.l" { yylval->integer = strtol(yytext, NULL, 10); return INTEGER; } YY_BREAK -case 155: +case 142: YY_RULE_SETUP - #line 325 "program_lexer.l" -#line 321 "program_lexer.l" ++#line 326 "program_lexer.l" { - yylval->real = strtod(yytext, NULL); + yylval->real = _mesa_strtod(yytext, NULL); return REAL; } YY_BREAK @@@ -2221,40 -2128,40 +2209,40 @@@ case 143 yyg->yy_c_buf_p = yy_cp -= 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP - #line 329 "program_lexer.l" -#line 325 "program_lexer.l" ++#line 330 "program_lexer.l" { - yylval->real = strtod(yytext, NULL); + yylval->real = _mesa_strtod(yytext, NULL); return REAL; } YY_BREAK -case 157: +case 144: YY_RULE_SETUP - #line 333 "program_lexer.l" -#line 329 "program_lexer.l" ++#line 334 "program_lexer.l" { - yylval->real = strtod(yytext, NULL); + yylval->real = _mesa_strtod(yytext, NULL); return REAL; } YY_BREAK -case 158: +case 145: YY_RULE_SETUP - #line 337 "program_lexer.l" -#line 333 "program_lexer.l" ++#line 338 "program_lexer.l" { - yylval->real = strtod(yytext, NULL); + yylval->real = _mesa_strtod(yytext, NULL); return REAL; } YY_BREAK -case 159: +case 146: YY_RULE_SETUP - #line 342 "program_lexer.l" -#line 338 "program_lexer.l" ++#line 343 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_NOOP; yylval->swiz_mask.mask = WRITEMASK_XYZW; return MASK4; } YY_BREAK -case 160: +case 147: YY_RULE_SETUP - #line 348 "program_lexer.l" -#line 344 "program_lexer.l" ++#line 349 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_XY @@@ -2262,27 -2169,27 +2250,27 @@@ return MASK3; } YY_BREAK -case 161: +case 148: YY_RULE_SETUP - #line 354 "program_lexer.l" -#line 350 "program_lexer.l" ++#line 355 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_XZW; return MASK3; } YY_BREAK -case 162: +case 149: YY_RULE_SETUP - #line 359 "program_lexer.l" -#line 355 "program_lexer.l" ++#line 360 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_YZW; return MASK3; } YY_BREAK -case 163: +case 150: YY_RULE_SETUP - #line 365 "program_lexer.l" -#line 361 "program_lexer.l" ++#line 366 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_X @@@ -2290,9 -2197,9 +2278,9 @@@ return MASK2; } YY_BREAK -case 164: +case 151: YY_RULE_SETUP - #line 371 "program_lexer.l" -#line 367 "program_lexer.l" ++#line 372 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_Y @@@ -2300,18 -2207,18 +2288,18 @@@ return MASK2; } YY_BREAK -case 165: +case 152: YY_RULE_SETUP - #line 377 "program_lexer.l" -#line 373 "program_lexer.l" ++#line 378 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_ZW; return MASK2; } YY_BREAK -case 166: +case 153: YY_RULE_SETUP - #line 383 "program_lexer.l" -#line 379 "program_lexer.l" ++#line 384 "program_lexer.l" { const unsigned s = swiz_from_char(yytext[1]); yylval->swiz_mask.swizzle = MAKE_SWIZZLE4(s, s, s, s); @@@ -2319,9 -2226,9 +2307,9 @@@ return MASK1; } YY_BREAK -case 167: +case 154: YY_RULE_SETUP - #line 390 "program_lexer.l" -#line 386 "program_lexer.l" ++#line 391 "program_lexer.l" { yylval->swiz_mask.swizzle = MAKE_SWIZZLE4(swiz_from_char(yytext[1]), swiz_from_char(yytext[2]), @@@ -2331,18 -2238,18 +2319,18 @@@ return SWIZZLE; } YY_BREAK -case 168: +case 155: YY_RULE_SETUP - #line 399 "program_lexer.l" -#line 395 "program_lexer.l" ++#line 400 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_NOOP; yylval->swiz_mask.mask = WRITEMASK_XYZW; return_token_or_DOT(require_ARB_fp, MASK4); } YY_BREAK -case 169: +case 156: YY_RULE_SETUP - #line 405 "program_lexer.l" -#line 401 "program_lexer.l" ++#line 406 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_XY @@@ -2350,27 -2257,27 +2338,27 @@@ return_token_or_DOT(require_ARB_fp, MASK3); } YY_BREAK -case 170: +case 157: YY_RULE_SETUP - #line 411 "program_lexer.l" -#line 407 "program_lexer.l" ++#line 412 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_XZW; return_token_or_DOT(require_ARB_fp, MASK3); } YY_BREAK -case 171: +case 158: YY_RULE_SETUP - #line 416 "program_lexer.l" -#line 412 "program_lexer.l" ++#line 417 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_YZW; return_token_or_DOT(require_ARB_fp, MASK3); } YY_BREAK -case 172: +case 159: YY_RULE_SETUP - #line 422 "program_lexer.l" -#line 418 "program_lexer.l" ++#line 423 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_X @@@ -2378,9 -2285,9 +2366,9 @@@ return_token_or_DOT(require_ARB_fp, MASK2); } YY_BREAK -case 173: +case 160: YY_RULE_SETUP - #line 428 "program_lexer.l" -#line 424 "program_lexer.l" ++#line 429 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_Y @@@ -2388,18 -2295,18 +2376,18 @@@ return_token_or_DOT(require_ARB_fp, MASK2); } YY_BREAK -case 174: +case 161: YY_RULE_SETUP - #line 434 "program_lexer.l" -#line 430 "program_lexer.l" ++#line 435 "program_lexer.l" { yylval->swiz_mask.swizzle = SWIZZLE_INVAL; yylval->swiz_mask.mask = WRITEMASK_ZW; return_token_or_DOT(require_ARB_fp, MASK2); } YY_BREAK -case 175: +case 162: YY_RULE_SETUP - #line 440 "program_lexer.l" -#line 436 "program_lexer.l" ++#line 441 "program_lexer.l" { const unsigned s = swiz_from_char(yytext[1]); yylval->swiz_mask.swizzle = MAKE_SWIZZLE4(s, s, s, s); @@@ -2407,9 -2314,9 +2395,9 @@@ return_token_or_DOT(require_ARB_fp, MASK1); } YY_BREAK -case 176: +case 163: YY_RULE_SETUP - #line 448 "program_lexer.l" -#line 444 "program_lexer.l" ++#line 449 "program_lexer.l" { if (require_ARB_vp) { return TEXGEN_R; @@@ -2421,9 -2328,9 +2409,9 @@@ } } YY_BREAK -case 177: +case 164: YY_RULE_SETUP - #line 459 "program_lexer.l" -#line 455 "program_lexer.l" ++#line 460 "program_lexer.l" { yylval->swiz_mask.swizzle = MAKE_SWIZZLE4(swiz_from_char(yytext[1]), swiz_from_char(yytext[2]), @@@ -2433,15 -2340,15 +2421,15 @@@ return_token_or_DOT(require_ARB_fp, SWIZZLE); } YY_BREAK -case 178: +case 165: YY_RULE_SETUP - #line 468 "program_lexer.l" -#line 464 "program_lexer.l" ++#line 469 "program_lexer.l" { return DOT; } YY_BREAK -case 179: -/* rule 179 can match eol */ +case 166: +/* rule 166 can match eol */ YY_RULE_SETUP - #line 470 "program_lexer.l" -#line 466 "program_lexer.l" ++#line 471 "program_lexer.l" { yylloc->first_line++; yylloc->first_column = 1; @@@ -2450,30 -2357,30 +2438,30 @@@ yylloc->position++; } YY_BREAK -case 180: +case 167: YY_RULE_SETUP - #line 477 "program_lexer.l" -#line 473 "program_lexer.l" ++#line 478 "program_lexer.l" /* eat whitespace */ ; YY_BREAK -case 181: +case 168: *yy_cp = yyg->yy_hold_char; /* undo effects of setting up yytext */ yyg->yy_c_buf_p = yy_cp -= 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP - #line 478 "program_lexer.l" -#line 474 "program_lexer.l" ++#line 479 "program_lexer.l" /* eat comments */ ; YY_BREAK -case 182: +case 169: YY_RULE_SETUP - #line 479 "program_lexer.l" -#line 475 "program_lexer.l" ++#line 480 "program_lexer.l" { return yytext[0]; } YY_BREAK -case 183: +case 170: YY_RULE_SETUP - #line 480 "program_lexer.l" -#line 476 "program_lexer.l" ++#line 481 "program_lexer.l" ECHO; YY_BREAK - #line 2477 "lex.yy.c" -#line 2384 "lex.yy.c" ++#line 2465 "lex.yy.c" case YY_STATE_EOF(INITIAL): yyterminate(); @@@ -3648,7 -3555,7 +3636,7 @@@ void yyfree (void * ptr , yyscan_t yysc #define YYTABLES_NAME "yytables" - #line 480 "program_lexer.l" -#line 476 "program_lexer.l" ++#line 481 "program_lexer.l"