From: Ian Romanick Date: Wed, 22 Jul 2009 17:51:18 +0000 (-0700) Subject: parser: Anonymous constants come from the PROGRAM_CONSTANT file X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=69d3d19b54c46cb7b0e05c04a5304830a1ee2691;p=mesa.git parser: Anonymous constants come from the PROGRAM_CONSTANT file --- diff --git a/src/mesa/shader/program_parse.tab.c b/src/mesa/shader/program_parse.tab.c index 090c399f440..bf48b9752fd 100644 --- a/src/mesa/shader/program_parse.tab.c +++ b/src/mesa/shader/program_parse.tab.c @@ -743,27 +743,27 @@ static const yytype_uint16 yyrline[] = 314, 317, 318, 321, 327, 334, 341, 349, 356, 364, 375, 381, 387, 388, 389, 390, 391, 394, 406, 419, 432, 454, 463, 472, 479, 488, 516, 558, 569, 590, - 598, 604, 628, 645, 645, 647, 654, 666, 667, 668, - 671, 683, 695, 713, 724, 736, 738, 739, 740, 741, - 744, 744, 744, 744, 745, 748, 749, 750, 751, 752, - 753, 756, 774, 778, 784, 788, 792, 796, 800, 804, - 808, 812, 818, 829, 829, 830, 832, 836, 840, 844, - 850, 850, 852, 868, 891, 894, 905, 911, 917, 918, - 925, 931, 937, 945, 951, 957, 965, 971, 977, 985, - 986, 989, 990, 991, 992, 993, 994, 995, 996, 997, - 998, 1001, 1010, 1014, 1018, 1024, 1033, 1037, 1041, 1045, - 1049, 1055, 1061, 1068, 1073, 1081, 1091, 1093, 1101, 1107, - 1111, 1115, 1121, 1132, 1141, 1145, 1150, 1154, 1158, 1162, - 1168, 1175, 1179, 1185, 1193, 1204, 1211, 1215, 1221, 1231, - 1242, 1246, 1264, 1273, 1276, 1282, 1286, 1290, 1296, 1307, - 1312, 1317, 1322, 1327, 1331, 1339, 1342, 1347, 1360, 1368, - 1381, 1381, 1383, 1383, 1385, 1395, 1400, 1407, 1417, 1426, - 1431, 1438, 1448, 1458, 1470, 1470, 1471, 1471, 1473, 1480, - 1485, 1492, 1497, 1503, 1511, 1522, 1526, 1532, 1533, 1534, - 1537, 1537, 1540, 1540, 1543, 1549, 1557, 1570, 1579, 1588, - 1592, 1601, 1610, 1621, 1628, 1633, 1642, 1654, 1657, 1666, - 1677, 1678, 1679, 1682, 1683, 1684, 1687, 1688, 1691, 1692, - 1695, 1696, 1699, 1710, 1721, 1732 + 600, 606, 630, 647, 647, 649, 656, 668, 669, 670, + 673, 685, 697, 715, 726, 738, 740, 741, 742, 743, + 746, 746, 746, 746, 747, 750, 751, 752, 753, 754, + 755, 758, 776, 780, 786, 790, 794, 798, 802, 806, + 810, 814, 820, 831, 831, 832, 834, 838, 842, 846, + 852, 852, 854, 870, 893, 896, 907, 913, 919, 920, + 927, 933, 939, 947, 953, 959, 967, 973, 979, 987, + 988, 991, 992, 993, 994, 995, 996, 997, 998, 999, + 1000, 1003, 1012, 1016, 1020, 1026, 1035, 1039, 1043, 1047, + 1051, 1057, 1063, 1070, 1075, 1083, 1093, 1095, 1103, 1109, + 1113, 1117, 1123, 1134, 1143, 1147, 1152, 1156, 1160, 1164, + 1170, 1177, 1181, 1187, 1195, 1206, 1213, 1217, 1223, 1233, + 1244, 1248, 1266, 1275, 1278, 1284, 1288, 1292, 1298, 1309, + 1314, 1319, 1324, 1329, 1333, 1341, 1344, 1349, 1362, 1370, + 1383, 1383, 1385, 1385, 1387, 1397, 1402, 1409, 1419, 1428, + 1433, 1440, 1450, 1460, 1472, 1472, 1473, 1473, 1475, 1482, + 1487, 1494, 1499, 1505, 1513, 1524, 1528, 1534, 1535, 1536, + 1539, 1539, 1542, 1542, 1545, 1551, 1559, 1572, 1581, 1590, + 1594, 1603, 1612, 1623, 1630, 1635, 1644, 1656, 1659, 1668, + 1679, 1680, 1681, 1684, 1685, 1686, 1689, 1690, 1693, 1694, + 1697, 1698, 1701, 1712, 1723, 1734 }; #endif @@ -2466,7 +2466,9 @@ yyreduce: #line 591 "program_parse.y" { init_src_reg(& (yyval.src_reg)); - (yyval.src_reg).Base.File = (yyvsp[(1) - (1)].temp_sym).param_binding_type; + (yyval.src_reg).Base.File = ((yyvsp[(1) - (1)].temp_sym).name != NULL) + ? (yyvsp[(1) - (1)].temp_sym).param_binding_type + : PROGRAM_CONSTANT; (yyval.src_reg).Base.Index = (yyvsp[(1) - (1)].temp_sym).param_binding_begin; ;} break; @@ -2474,7 +2476,7 @@ yyreduce: case 50: /* Line 1455 of yacc.c */ -#line 599 "program_parse.y" +#line 601 "program_parse.y" { init_dst_reg(& (yyval.dst_reg)); (yyval.dst_reg).File = PROGRAM_OUTPUT; @@ -2485,7 +2487,7 @@ yyreduce: case 51: /* Line 1455 of yacc.c */ -#line 605 "program_parse.y" +#line 607 "program_parse.y" { struct asm_symbol *const s = (struct asm_symbol *) _mesa_symbol_table_find_symbol(state->st, 0, (yyvsp[(1) - (1)].string)); @@ -2512,7 +2514,7 @@ yyreduce: case 52: /* Line 1455 of yacc.c */ -#line 629 "program_parse.y" +#line 631 "program_parse.y" { struct asm_symbol *const s = (struct asm_symbol *) _mesa_symbol_table_find_symbol(state->st, 0, (yyvsp[(1) - (1)].string)); @@ -2532,7 +2534,7 @@ yyreduce: case 55: /* Line 1455 of yacc.c */ -#line 648 "program_parse.y" +#line 650 "program_parse.y" { init_src_reg(& (yyval.src_reg)); (yyval.src_reg).Base.Index = (yyvsp[(1) - (1)].integer); @@ -2542,7 +2544,7 @@ yyreduce: case 56: /* Line 1455 of yacc.c */ -#line 655 "program_parse.y" +#line 657 "program_parse.y" { /* FINISHME: Add support for multiple address registers. */ @@ -2557,28 +2559,28 @@ yyreduce: case 57: /* Line 1455 of yacc.c */ -#line 666 "program_parse.y" +#line 668 "program_parse.y" { (yyval.integer) = 0; ;} break; case 58: /* Line 1455 of yacc.c */ -#line 667 "program_parse.y" +#line 669 "program_parse.y" { (yyval.integer) = (yyvsp[(2) - (2)].integer); ;} break; case 59: /* Line 1455 of yacc.c */ -#line 668 "program_parse.y" +#line 670 "program_parse.y" { (yyval.integer) = -(yyvsp[(2) - (2)].integer); ;} break; case 60: /* Line 1455 of yacc.c */ -#line 672 "program_parse.y" +#line 674 "program_parse.y" { if (((yyvsp[(1) - (1)].integer) < 0) || ((yyvsp[(1) - (1)].integer) > 63)) { yyerror(& (yylsp[(1) - (1)]), state, @@ -2593,7 +2595,7 @@ yyreduce: case 61: /* Line 1455 of yacc.c */ -#line 684 "program_parse.y" +#line 686 "program_parse.y" { if (((yyvsp[(1) - (1)].integer) < 0) || ((yyvsp[(1) - (1)].integer) > 64)) { yyerror(& (yylsp[(1) - (1)]), state, @@ -2608,7 +2610,7 @@ yyreduce: case 62: /* Line 1455 of yacc.c */ -#line 696 "program_parse.y" +#line 698 "program_parse.y" { struct asm_symbol *const s = (struct asm_symbol *) _mesa_symbol_table_find_symbol(state->st, 0, (yyvsp[(1) - (1)].string)); @@ -2629,7 +2631,7 @@ yyreduce: case 63: /* Line 1455 of yacc.c */ -#line 714 "program_parse.y" +#line 716 "program_parse.y" { if ((yyvsp[(1) - (1)].swiz_mask).mask != WRITEMASK_X) { yyerror(& (yylsp[(1) - (1)]), state, "invalid address component selector"); @@ -2643,7 +2645,7 @@ yyreduce: case 64: /* Line 1455 of yacc.c */ -#line 725 "program_parse.y" +#line 727 "program_parse.y" { if ((yyvsp[(1) - (1)].swiz_mask).mask != WRITEMASK_X) { yyerror(& (yylsp[(1) - (1)]), state, @@ -2658,21 +2660,21 @@ yyreduce: case 69: /* Line 1455 of yacc.c */ -#line 741 "program_parse.y" +#line 743 "program_parse.y" { (yyval.swiz_mask).swizzle = SWIZZLE_NOOP; (yyval.swiz_mask).mask = WRITEMASK_XYZW; ;} break; case 74: /* Line 1455 of yacc.c */ -#line 745 "program_parse.y" +#line 747 "program_parse.y" { (yyval.swiz_mask).swizzle = SWIZZLE_NOOP; (yyval.swiz_mask).mask = WRITEMASK_XYZW; ;} break; case 81: /* Line 1455 of yacc.c */ -#line 757 "program_parse.y" +#line 759 "program_parse.y" { struct asm_symbol *const s = declare_variable(state, (yyvsp[(2) - (4)].string), at_attrib, & (yylsp[(2) - (4)])); @@ -2693,7 +2695,7 @@ yyreduce: case 82: /* Line 1455 of yacc.c */ -#line 775 "program_parse.y" +#line 777 "program_parse.y" { (yyval.attrib) = (yyvsp[(2) - (2)].attrib); ;} @@ -2702,7 +2704,7 @@ yyreduce: case 83: /* Line 1455 of yacc.c */ -#line 779 "program_parse.y" +#line 781 "program_parse.y" { (yyval.attrib) = (yyvsp[(2) - (2)].attrib); ;} @@ -2711,7 +2713,7 @@ yyreduce: case 84: /* Line 1455 of yacc.c */ -#line 785 "program_parse.y" +#line 787 "program_parse.y" { (yyval.attrib) = VERT_ATTRIB_POS; ;} @@ -2720,7 +2722,7 @@ yyreduce: case 85: /* Line 1455 of yacc.c */ -#line 789 "program_parse.y" +#line 791 "program_parse.y" { (yyval.attrib) = VERT_ATTRIB_WEIGHT; ;} @@ -2729,7 +2731,7 @@ yyreduce: case 86: /* Line 1455 of yacc.c */ -#line 793 "program_parse.y" +#line 795 "program_parse.y" { (yyval.attrib) = VERT_ATTRIB_NORMAL; ;} @@ -2738,7 +2740,7 @@ yyreduce: case 87: /* Line 1455 of yacc.c */ -#line 797 "program_parse.y" +#line 799 "program_parse.y" { (yyval.attrib) = VERT_ATTRIB_COLOR0 + (yyvsp[(2) - (2)].integer); ;} @@ -2747,7 +2749,7 @@ yyreduce: case 88: /* Line 1455 of yacc.c */ -#line 801 "program_parse.y" +#line 803 "program_parse.y" { (yyval.attrib) = VERT_ATTRIB_FOG; ;} @@ -2756,7 +2758,7 @@ yyreduce: case 89: /* Line 1455 of yacc.c */ -#line 805 "program_parse.y" +#line 807 "program_parse.y" { (yyval.attrib) = VERT_ATTRIB_TEX0 + (yyvsp[(2) - (2)].integer); ;} @@ -2765,7 +2767,7 @@ yyreduce: case 90: /* Line 1455 of yacc.c */ -#line 809 "program_parse.y" +#line 811 "program_parse.y" { YYERROR; ;} @@ -2774,7 +2776,7 @@ yyreduce: case 91: /* Line 1455 of yacc.c */ -#line 813 "program_parse.y" +#line 815 "program_parse.y" { (yyval.attrib) = VERT_ATTRIB_GENERIC0 + (yyvsp[(3) - (4)].integer); ;} @@ -2783,7 +2785,7 @@ yyreduce: case 92: /* Line 1455 of yacc.c */ -#line 819 "program_parse.y" +#line 821 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) >= state->limits->MaxAttribs) { yyerror(& (yylsp[(1) - (1)]), state, "invalid vertex attribute reference"); @@ -2797,7 +2799,7 @@ yyreduce: case 96: /* Line 1455 of yacc.c */ -#line 833 "program_parse.y" +#line 835 "program_parse.y" { (yyval.attrib) = FRAG_ATTRIB_WPOS; ;} @@ -2806,7 +2808,7 @@ yyreduce: case 97: /* Line 1455 of yacc.c */ -#line 837 "program_parse.y" +#line 839 "program_parse.y" { (yyval.attrib) = FRAG_ATTRIB_COL0 + (yyvsp[(2) - (2)].integer); ;} @@ -2815,7 +2817,7 @@ yyreduce: case 98: /* Line 1455 of yacc.c */ -#line 841 "program_parse.y" +#line 843 "program_parse.y" { (yyval.attrib) = FRAG_ATTRIB_FOGC; ;} @@ -2824,7 +2826,7 @@ yyreduce: case 99: /* Line 1455 of yacc.c */ -#line 845 "program_parse.y" +#line 847 "program_parse.y" { (yyval.attrib) = FRAG_ATTRIB_TEX0 + (yyvsp[(2) - (2)].integer); ;} @@ -2833,7 +2835,7 @@ yyreduce: case 102: /* Line 1455 of yacc.c */ -#line 853 "program_parse.y" +#line 855 "program_parse.y" { struct asm_symbol *const s = declare_variable(state, (yyvsp[(2) - (3)].string), at_param, & (yylsp[(2) - (3)])); @@ -2852,7 +2854,7 @@ yyreduce: case 103: /* Line 1455 of yacc.c */ -#line 869 "program_parse.y" +#line 871 "program_parse.y" { if (((yyvsp[(4) - (6)].integer) != 0) && ((yyvsp[(4) - (6)].integer) != (yyvsp[(6) - (6)].temp_sym).param_binding_length)) { yyerror(& (yylsp[(4) - (6)]), state, @@ -2877,7 +2879,7 @@ yyreduce: case 104: /* Line 1455 of yacc.c */ -#line 891 "program_parse.y" +#line 893 "program_parse.y" { (yyval.integer) = 0; ;} @@ -2886,7 +2888,7 @@ yyreduce: case 105: /* Line 1455 of yacc.c */ -#line 895 "program_parse.y" +#line 897 "program_parse.y" { if (((yyvsp[(1) - (1)].integer) < 1) || ((yyvsp[(1) - (1)].integer) >= state->limits->MaxParameters)) { yyerror(& (yylsp[(1) - (1)]), state, "invalid parameter array size"); @@ -2900,7 +2902,7 @@ yyreduce: case 106: /* Line 1455 of yacc.c */ -#line 906 "program_parse.y" +#line 908 "program_parse.y" { (yyval.temp_sym) = (yyvsp[(2) - (2)].temp_sym); ;} @@ -2909,7 +2911,7 @@ yyreduce: case 107: /* Line 1455 of yacc.c */ -#line 912 "program_parse.y" +#line 914 "program_parse.y" { (yyval.temp_sym) = (yyvsp[(3) - (4)].temp_sym); ;} @@ -2918,7 +2920,7 @@ yyreduce: case 109: /* Line 1455 of yacc.c */ -#line 919 "program_parse.y" +#line 921 "program_parse.y" { (yyvsp[(1) - (3)].temp_sym).param_binding_length += (yyvsp[(3) - (3)].temp_sym).param_binding_length; (yyval.temp_sym) = (yyvsp[(1) - (3)].temp_sym); @@ -2928,7 +2930,7 @@ yyreduce: case 110: /* Line 1455 of yacc.c */ -#line 926 "program_parse.y" +#line 928 "program_parse.y" { memset(& (yyval.temp_sym), 0, sizeof((yyval.temp_sym))); (yyval.temp_sym).param_binding_begin = ~0; @@ -2939,7 +2941,7 @@ yyreduce: case 111: /* Line 1455 of yacc.c */ -#line 932 "program_parse.y" +#line 934 "program_parse.y" { memset(& (yyval.temp_sym), 0, sizeof((yyval.temp_sym))); (yyval.temp_sym).param_binding_begin = ~0; @@ -2950,7 +2952,7 @@ yyreduce: case 112: /* Line 1455 of yacc.c */ -#line 938 "program_parse.y" +#line 940 "program_parse.y" { memset(& (yyval.temp_sym), 0, sizeof((yyval.temp_sym))); (yyval.temp_sym).param_binding_begin = ~0; @@ -2961,7 +2963,7 @@ yyreduce: case 113: /* Line 1455 of yacc.c */ -#line 946 "program_parse.y" +#line 948 "program_parse.y" { memset(& (yyval.temp_sym), 0, sizeof((yyval.temp_sym))); (yyval.temp_sym).param_binding_begin = ~0; @@ -2972,7 +2974,7 @@ yyreduce: case 114: /* Line 1455 of yacc.c */ -#line 952 "program_parse.y" +#line 954 "program_parse.y" { memset(& (yyval.temp_sym), 0, sizeof((yyval.temp_sym))); (yyval.temp_sym).param_binding_begin = ~0; @@ -2983,7 +2985,7 @@ yyreduce: case 115: /* Line 1455 of yacc.c */ -#line 958 "program_parse.y" +#line 960 "program_parse.y" { memset(& (yyval.temp_sym), 0, sizeof((yyval.temp_sym))); (yyval.temp_sym).param_binding_begin = ~0; @@ -2994,7 +2996,7 @@ yyreduce: case 116: /* Line 1455 of yacc.c */ -#line 966 "program_parse.y" +#line 968 "program_parse.y" { memset(& (yyval.temp_sym), 0, sizeof((yyval.temp_sym))); (yyval.temp_sym).param_binding_begin = ~0; @@ -3005,7 +3007,7 @@ yyreduce: case 117: /* Line 1455 of yacc.c */ -#line 972 "program_parse.y" +#line 974 "program_parse.y" { memset(& (yyval.temp_sym), 0, sizeof((yyval.temp_sym))); (yyval.temp_sym).param_binding_begin = ~0; @@ -3016,7 +3018,7 @@ yyreduce: case 118: /* Line 1455 of yacc.c */ -#line 978 "program_parse.y" +#line 980 "program_parse.y" { memset(& (yyval.temp_sym), 0, sizeof((yyval.temp_sym))); (yyval.temp_sym).param_binding_begin = ~0; @@ -3027,91 +3029,91 @@ yyreduce: case 119: /* Line 1455 of yacc.c */ -#line 985 "program_parse.y" +#line 987 "program_parse.y" { memcpy((yyval.state), (yyvsp[(1) - (1)].state), sizeof((yyval.state))); ;} break; case 120: /* Line 1455 of yacc.c */ -#line 986 "program_parse.y" +#line 988 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 121: /* Line 1455 of yacc.c */ -#line 989 "program_parse.y" +#line 991 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 122: /* Line 1455 of yacc.c */ -#line 990 "program_parse.y" +#line 992 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 123: /* Line 1455 of yacc.c */ -#line 991 "program_parse.y" +#line 993 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 124: /* Line 1455 of yacc.c */ -#line 992 "program_parse.y" +#line 994 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 125: /* Line 1455 of yacc.c */ -#line 993 "program_parse.y" +#line 995 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 126: /* Line 1455 of yacc.c */ -#line 994 "program_parse.y" +#line 996 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 127: /* Line 1455 of yacc.c */ -#line 995 "program_parse.y" +#line 997 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 128: /* Line 1455 of yacc.c */ -#line 996 "program_parse.y" +#line 998 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 129: /* Line 1455 of yacc.c */ -#line 997 "program_parse.y" +#line 999 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 130: /* Line 1455 of yacc.c */ -#line 998 "program_parse.y" +#line 1000 "program_parse.y" { memcpy((yyval.state), (yyvsp[(2) - (2)].state), sizeof((yyval.state))); ;} break; case 131: /* Line 1455 of yacc.c */ -#line 1002 "program_parse.y" +#line 1004 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = STATE_MATERIAL; @@ -3123,7 +3125,7 @@ yyreduce: case 132: /* Line 1455 of yacc.c */ -#line 1011 "program_parse.y" +#line 1013 "program_parse.y" { (yyval.integer) = (yyvsp[(1) - (1)].integer); ;} @@ -3132,7 +3134,7 @@ yyreduce: case 133: /* Line 1455 of yacc.c */ -#line 1015 "program_parse.y" +#line 1017 "program_parse.y" { (yyval.integer) = STATE_EMISSION; ;} @@ -3141,7 +3143,7 @@ yyreduce: case 134: /* Line 1455 of yacc.c */ -#line 1019 "program_parse.y" +#line 1021 "program_parse.y" { (yyval.integer) = STATE_SHININESS; ;} @@ -3150,7 +3152,7 @@ yyreduce: case 135: /* Line 1455 of yacc.c */ -#line 1025 "program_parse.y" +#line 1027 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = STATE_LIGHT; @@ -3162,7 +3164,7 @@ yyreduce: case 136: /* Line 1455 of yacc.c */ -#line 1034 "program_parse.y" +#line 1036 "program_parse.y" { (yyval.integer) = (yyvsp[(1) - (1)].integer); ;} @@ -3171,7 +3173,7 @@ yyreduce: case 137: /* Line 1455 of yacc.c */ -#line 1038 "program_parse.y" +#line 1040 "program_parse.y" { (yyval.integer) = STATE_POSITION; ;} @@ -3180,7 +3182,7 @@ yyreduce: case 138: /* Line 1455 of yacc.c */ -#line 1042 "program_parse.y" +#line 1044 "program_parse.y" { (yyval.integer) = STATE_ATTENUATION; ;} @@ -3189,7 +3191,7 @@ yyreduce: case 139: /* Line 1455 of yacc.c */ -#line 1046 "program_parse.y" +#line 1048 "program_parse.y" { (yyval.integer) = (yyvsp[(2) - (2)].integer); ;} @@ -3198,7 +3200,7 @@ yyreduce: case 140: /* Line 1455 of yacc.c */ -#line 1050 "program_parse.y" +#line 1052 "program_parse.y" { (yyval.integer) = STATE_HALF_VECTOR; ;} @@ -3207,7 +3209,7 @@ yyreduce: case 141: /* Line 1455 of yacc.c */ -#line 1056 "program_parse.y" +#line 1058 "program_parse.y" { (yyval.integer) = STATE_SPOT_DIRECTION; ;} @@ -3216,7 +3218,7 @@ yyreduce: case 142: /* Line 1455 of yacc.c */ -#line 1062 "program_parse.y" +#line 1064 "program_parse.y" { (yyval.state)[0] = (yyvsp[(2) - (2)].state)[0]; (yyval.state)[1] = (yyvsp[(2) - (2)].state)[1]; @@ -3226,7 +3228,7 @@ yyreduce: case 143: /* Line 1455 of yacc.c */ -#line 1069 "program_parse.y" +#line 1071 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = STATE_LIGHTMODEL_AMBIENT; @@ -3236,7 +3238,7 @@ yyreduce: case 144: /* Line 1455 of yacc.c */ -#line 1074 "program_parse.y" +#line 1076 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = STATE_LIGHTMODEL_SCENECOLOR; @@ -3247,7 +3249,7 @@ yyreduce: case 145: /* Line 1455 of yacc.c */ -#line 1082 "program_parse.y" +#line 1084 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = STATE_LIGHTPROD; @@ -3260,7 +3262,7 @@ yyreduce: case 147: /* Line 1455 of yacc.c */ -#line 1094 "program_parse.y" +#line 1096 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = (yyvsp[(3) - (3)].integer); @@ -3271,7 +3273,7 @@ yyreduce: case 148: /* Line 1455 of yacc.c */ -#line 1102 "program_parse.y" +#line 1104 "program_parse.y" { (yyval.integer) = STATE_TEXENV_COLOR; ;} @@ -3280,7 +3282,7 @@ yyreduce: case 149: /* Line 1455 of yacc.c */ -#line 1108 "program_parse.y" +#line 1110 "program_parse.y" { (yyval.integer) = STATE_AMBIENT; ;} @@ -3289,7 +3291,7 @@ yyreduce: case 150: /* Line 1455 of yacc.c */ -#line 1112 "program_parse.y" +#line 1114 "program_parse.y" { (yyval.integer) = STATE_DIFFUSE; ;} @@ -3298,7 +3300,7 @@ yyreduce: case 151: /* Line 1455 of yacc.c */ -#line 1116 "program_parse.y" +#line 1118 "program_parse.y" { (yyval.integer) = STATE_SPECULAR; ;} @@ -3307,7 +3309,7 @@ yyreduce: case 152: /* Line 1455 of yacc.c */ -#line 1122 "program_parse.y" +#line 1124 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) >= state->MaxLights) { yyerror(& (yylsp[(1) - (1)]), state, "invalid light selector"); @@ -3321,7 +3323,7 @@ yyreduce: case 153: /* Line 1455 of yacc.c */ -#line 1133 "program_parse.y" +#line 1135 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = STATE_TEXGEN; @@ -3333,7 +3335,7 @@ yyreduce: case 154: /* Line 1455 of yacc.c */ -#line 1142 "program_parse.y" +#line 1144 "program_parse.y" { (yyval.integer) = STATE_TEXGEN_EYE_S; ;} @@ -3342,7 +3344,7 @@ yyreduce: case 155: /* Line 1455 of yacc.c */ -#line 1146 "program_parse.y" +#line 1148 "program_parse.y" { (yyval.integer) = STATE_TEXGEN_OBJECT_S; ;} @@ -3351,7 +3353,7 @@ yyreduce: case 156: /* Line 1455 of yacc.c */ -#line 1151 "program_parse.y" +#line 1153 "program_parse.y" { (yyval.integer) = STATE_TEXGEN_EYE_S - STATE_TEXGEN_EYE_S; ;} @@ -3360,7 +3362,7 @@ yyreduce: case 157: /* Line 1455 of yacc.c */ -#line 1155 "program_parse.y" +#line 1157 "program_parse.y" { (yyval.integer) = STATE_TEXGEN_EYE_T - STATE_TEXGEN_EYE_S; ;} @@ -3369,7 +3371,7 @@ yyreduce: case 158: /* Line 1455 of yacc.c */ -#line 1159 "program_parse.y" +#line 1161 "program_parse.y" { (yyval.integer) = STATE_TEXGEN_EYE_R - STATE_TEXGEN_EYE_S; ;} @@ -3378,7 +3380,7 @@ yyreduce: case 159: /* Line 1455 of yacc.c */ -#line 1163 "program_parse.y" +#line 1165 "program_parse.y" { (yyval.integer) = STATE_TEXGEN_EYE_Q - STATE_TEXGEN_EYE_S; ;} @@ -3387,7 +3389,7 @@ yyreduce: case 160: /* Line 1455 of yacc.c */ -#line 1169 "program_parse.y" +#line 1171 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = (yyvsp[(2) - (2)].integer); @@ -3397,7 +3399,7 @@ yyreduce: case 161: /* Line 1455 of yacc.c */ -#line 1176 "program_parse.y" +#line 1178 "program_parse.y" { (yyval.integer) = STATE_FOG_COLOR; ;} @@ -3406,7 +3408,7 @@ yyreduce: case 162: /* Line 1455 of yacc.c */ -#line 1180 "program_parse.y" +#line 1182 "program_parse.y" { (yyval.integer) = STATE_FOG_PARAMS; ;} @@ -3415,7 +3417,7 @@ yyreduce: case 163: /* Line 1455 of yacc.c */ -#line 1186 "program_parse.y" +#line 1188 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = STATE_CLIPPLANE; @@ -3426,7 +3428,7 @@ yyreduce: case 164: /* Line 1455 of yacc.c */ -#line 1194 "program_parse.y" +#line 1196 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) >= state->MaxClipPlanes) { yyerror(& (yylsp[(1) - (1)]), state, "invalid clip plane selector"); @@ -3440,7 +3442,7 @@ yyreduce: case 165: /* Line 1455 of yacc.c */ -#line 1205 "program_parse.y" +#line 1207 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = (yyvsp[(2) - (2)].integer); @@ -3450,7 +3452,7 @@ yyreduce: case 166: /* Line 1455 of yacc.c */ -#line 1212 "program_parse.y" +#line 1214 "program_parse.y" { (yyval.integer) = STATE_POINT_SIZE; ;} @@ -3459,7 +3461,7 @@ yyreduce: case 167: /* Line 1455 of yacc.c */ -#line 1216 "program_parse.y" +#line 1218 "program_parse.y" { (yyval.integer) = STATE_POINT_ATTENUATION; ;} @@ -3468,7 +3470,7 @@ yyreduce: case 168: /* Line 1455 of yacc.c */ -#line 1222 "program_parse.y" +#line 1224 "program_parse.y" { (yyval.state)[0] = (yyvsp[(1) - (5)].state)[0]; (yyval.state)[1] = (yyvsp[(1) - (5)].state)[1]; @@ -3481,7 +3483,7 @@ yyreduce: case 169: /* Line 1455 of yacc.c */ -#line 1232 "program_parse.y" +#line 1234 "program_parse.y" { (yyval.state)[0] = (yyvsp[(1) - (2)].state)[0]; (yyval.state)[1] = (yyvsp[(1) - (2)].state)[1]; @@ -3494,7 +3496,7 @@ yyreduce: case 170: /* Line 1455 of yacc.c */ -#line 1242 "program_parse.y" +#line 1244 "program_parse.y" { (yyval.state)[2] = 0; (yyval.state)[3] = 3; @@ -3504,7 +3506,7 @@ yyreduce: case 171: /* Line 1455 of yacc.c */ -#line 1247 "program_parse.y" +#line 1249 "program_parse.y" { /* It seems logical that the matrix row range specifier would have * to specify a range or more than one row (i.e., $5 > $3). @@ -3525,7 +3527,7 @@ yyreduce: case 172: /* Line 1455 of yacc.c */ -#line 1265 "program_parse.y" +#line 1267 "program_parse.y" { (yyval.state)[0] = (yyvsp[(2) - (3)].state)[0]; (yyval.state)[1] = (yyvsp[(2) - (3)].state)[1]; @@ -3536,7 +3538,7 @@ yyreduce: case 173: /* Line 1455 of yacc.c */ -#line 1273 "program_parse.y" +#line 1275 "program_parse.y" { (yyval.integer) = 0; ;} @@ -3545,7 +3547,7 @@ yyreduce: case 174: /* Line 1455 of yacc.c */ -#line 1277 "program_parse.y" +#line 1279 "program_parse.y" { (yyval.integer) = (yyvsp[(1) - (1)].integer); ;} @@ -3554,7 +3556,7 @@ yyreduce: case 175: /* Line 1455 of yacc.c */ -#line 1283 "program_parse.y" +#line 1285 "program_parse.y" { (yyval.integer) = STATE_MATRIX_INVERSE; ;} @@ -3563,7 +3565,7 @@ yyreduce: case 176: /* Line 1455 of yacc.c */ -#line 1287 "program_parse.y" +#line 1289 "program_parse.y" { (yyval.integer) = STATE_MATRIX_TRANSPOSE; ;} @@ -3572,7 +3574,7 @@ yyreduce: case 177: /* Line 1455 of yacc.c */ -#line 1291 "program_parse.y" +#line 1293 "program_parse.y" { (yyval.integer) = STATE_MATRIX_INVTRANS; ;} @@ -3581,7 +3583,7 @@ yyreduce: case 178: /* Line 1455 of yacc.c */ -#line 1297 "program_parse.y" +#line 1299 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) > 3) { yyerror(& (yylsp[(1) - (1)]), state, "invalid matrix row reference"); @@ -3595,7 +3597,7 @@ yyreduce: case 179: /* Line 1455 of yacc.c */ -#line 1308 "program_parse.y" +#line 1310 "program_parse.y" { (yyval.state)[0] = STATE_MODELVIEW_MATRIX; (yyval.state)[1] = (yyvsp[(2) - (2)].integer); @@ -3605,7 +3607,7 @@ yyreduce: case 180: /* Line 1455 of yacc.c */ -#line 1313 "program_parse.y" +#line 1315 "program_parse.y" { (yyval.state)[0] = STATE_PROJECTION_MATRIX; (yyval.state)[1] = 0; @@ -3615,7 +3617,7 @@ yyreduce: case 181: /* Line 1455 of yacc.c */ -#line 1318 "program_parse.y" +#line 1320 "program_parse.y" { (yyval.state)[0] = STATE_MVP_MATRIX; (yyval.state)[1] = 0; @@ -3625,7 +3627,7 @@ yyreduce: case 182: /* Line 1455 of yacc.c */ -#line 1323 "program_parse.y" +#line 1325 "program_parse.y" { (yyval.state)[0] = STATE_TEXTURE_MATRIX; (yyval.state)[1] = (yyvsp[(2) - (2)].integer); @@ -3635,7 +3637,7 @@ yyreduce: case 183: /* Line 1455 of yacc.c */ -#line 1328 "program_parse.y" +#line 1330 "program_parse.y" { YYERROR; ;} @@ -3644,7 +3646,7 @@ yyreduce: case 184: /* Line 1455 of yacc.c */ -#line 1332 "program_parse.y" +#line 1334 "program_parse.y" { (yyval.state)[0] = STATE_PROGRAM_MATRIX; (yyval.state)[1] = (yyvsp[(3) - (4)].integer); @@ -3654,7 +3656,7 @@ yyreduce: case 185: /* Line 1455 of yacc.c */ -#line 1339 "program_parse.y" +#line 1341 "program_parse.y" { (yyval.integer) = 0; ;} @@ -3663,7 +3665,7 @@ yyreduce: case 186: /* Line 1455 of yacc.c */ -#line 1343 "program_parse.y" +#line 1345 "program_parse.y" { (yyval.integer) = (yyvsp[(1) - (1)].integer); ;} @@ -3672,7 +3674,7 @@ yyreduce: case 187: /* Line 1455 of yacc.c */ -#line 1348 "program_parse.y" +#line 1350 "program_parse.y" { /* Since GL_ARB_vertex_blend isn't supported, only modelview matrix * zero is valid. @@ -3689,7 +3691,7 @@ yyreduce: case 188: /* Line 1455 of yacc.c */ -#line 1361 "program_parse.y" +#line 1363 "program_parse.y" { /* Since GL_ARB_matrix_palette isn't supported, just let any value * through here. The error will be generated later. @@ -3701,7 +3703,7 @@ yyreduce: case 189: /* Line 1455 of yacc.c */ -#line 1369 "program_parse.y" +#line 1371 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) >= state->MaxProgramMatrices) { yyerror(& (yylsp[(1) - (1)]), state, "invalid program matrix selector"); @@ -3715,7 +3717,7 @@ yyreduce: case 194: /* Line 1455 of yacc.c */ -#line 1386 "program_parse.y" +#line 1388 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = state->state_param_enum; @@ -3728,7 +3730,7 @@ yyreduce: case 195: /* Line 1455 of yacc.c */ -#line 1396 "program_parse.y" +#line 1398 "program_parse.y" { (yyval.state)[0] = (yyvsp[(1) - (1)].integer); (yyval.state)[1] = (yyvsp[(1) - (1)].integer); @@ -3738,7 +3740,7 @@ yyreduce: case 196: /* Line 1455 of yacc.c */ -#line 1401 "program_parse.y" +#line 1403 "program_parse.y" { (yyval.state)[0] = (yyvsp[(1) - (3)].integer); (yyval.state)[1] = (yyvsp[(3) - (3)].integer); @@ -3748,7 +3750,7 @@ yyreduce: case 197: /* Line 1455 of yacc.c */ -#line 1408 "program_parse.y" +#line 1410 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = state->state_param_enum; @@ -3761,7 +3763,7 @@ yyreduce: case 198: /* Line 1455 of yacc.c */ -#line 1418 "program_parse.y" +#line 1420 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = state->state_param_enum; @@ -3774,7 +3776,7 @@ yyreduce: case 199: /* Line 1455 of yacc.c */ -#line 1427 "program_parse.y" +#line 1429 "program_parse.y" { (yyval.state)[0] = (yyvsp[(1) - (1)].integer); (yyval.state)[1] = (yyvsp[(1) - (1)].integer); @@ -3784,7 +3786,7 @@ yyreduce: case 200: /* Line 1455 of yacc.c */ -#line 1432 "program_parse.y" +#line 1434 "program_parse.y" { (yyval.state)[0] = (yyvsp[(1) - (3)].integer); (yyval.state)[1] = (yyvsp[(3) - (3)].integer); @@ -3794,7 +3796,7 @@ yyreduce: case 201: /* Line 1455 of yacc.c */ -#line 1439 "program_parse.y" +#line 1441 "program_parse.y" { memset((yyval.state), 0, sizeof((yyval.state))); (yyval.state)[0] = state->state_param_enum; @@ -3807,7 +3809,7 @@ yyreduce: case 202: /* Line 1455 of yacc.c */ -#line 1449 "program_parse.y" +#line 1451 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) >= state->limits->MaxEnvParams) { yyerror(& (yylsp[(1) - (1)]), state, "invalid environment parameter reference"); @@ -3820,7 +3822,7 @@ yyreduce: case 203: /* Line 1455 of yacc.c */ -#line 1459 "program_parse.y" +#line 1461 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) >= state->limits->MaxLocalParams) { yyerror(& (yylsp[(1) - (1)]), state, "invalid local parameter reference"); @@ -3833,7 +3835,7 @@ yyreduce: case 208: /* Line 1455 of yacc.c */ -#line 1474 "program_parse.y" +#line 1476 "program_parse.y" { (yyval.vector).count = 1; (yyval.vector).data[0] = (yyvsp[(1) - (1)].real); @@ -3843,7 +3845,7 @@ yyreduce: case 209: /* Line 1455 of yacc.c */ -#line 1481 "program_parse.y" +#line 1483 "program_parse.y" { (yyval.vector).count = 1; (yyval.vector).data[0] = (yyvsp[(1) - (1)].real); @@ -3853,7 +3855,7 @@ yyreduce: case 210: /* Line 1455 of yacc.c */ -#line 1486 "program_parse.y" +#line 1488 "program_parse.y" { (yyval.vector).count = 1; (yyval.vector).data[0] = (float) (yyvsp[(1) - (1)].integer); @@ -3863,7 +3865,7 @@ yyreduce: case 211: /* Line 1455 of yacc.c */ -#line 1493 "program_parse.y" +#line 1495 "program_parse.y" { (yyval.vector).count = 1; (yyval.vector).data[0] = (yyvsp[(2) - (3)].real); @@ -3873,7 +3875,7 @@ yyreduce: case 212: /* Line 1455 of yacc.c */ -#line 1498 "program_parse.y" +#line 1500 "program_parse.y" { (yyval.vector).count = 2; (yyval.vector).data[0] = (yyvsp[(2) - (5)].real); @@ -3884,7 +3886,7 @@ yyreduce: case 213: /* Line 1455 of yacc.c */ -#line 1505 "program_parse.y" +#line 1507 "program_parse.y" { (yyval.vector).count = 3; (yyval.vector).data[0] = (yyvsp[(2) - (7)].real); @@ -3896,7 +3898,7 @@ yyreduce: case 214: /* Line 1455 of yacc.c */ -#line 1513 "program_parse.y" +#line 1515 "program_parse.y" { (yyval.vector).count = 4; (yyval.vector).data[0] = (yyvsp[(2) - (9)].real); @@ -3909,7 +3911,7 @@ yyreduce: case 215: /* Line 1455 of yacc.c */ -#line 1523 "program_parse.y" +#line 1525 "program_parse.y" { (yyval.real) = ((yyvsp[(1) - (2)].negate)) ? -(yyvsp[(2) - (2)].real) : (yyvsp[(2) - (2)].real); ;} @@ -3918,7 +3920,7 @@ yyreduce: case 216: /* Line 1455 of yacc.c */ -#line 1527 "program_parse.y" +#line 1529 "program_parse.y" { (yyval.real) = (float)(((yyvsp[(1) - (2)].negate)) ? -(yyvsp[(2) - (2)].integer) : (yyvsp[(2) - (2)].integer)); ;} @@ -3927,42 +3929,42 @@ yyreduce: case 217: /* Line 1455 of yacc.c */ -#line 1532 "program_parse.y" +#line 1534 "program_parse.y" { (yyval.negate) = FALSE; ;} break; case 218: /* Line 1455 of yacc.c */ -#line 1533 "program_parse.y" +#line 1535 "program_parse.y" { (yyval.negate) = TRUE; ;} break; case 219: /* Line 1455 of yacc.c */ -#line 1534 "program_parse.y" +#line 1536 "program_parse.y" { (yyval.negate) = FALSE; ;} break; case 220: /* Line 1455 of yacc.c */ -#line 1537 "program_parse.y" +#line 1539 "program_parse.y" { (yyval.integer) = (yyvsp[(1) - (1)].integer); ;} break; case 222: /* Line 1455 of yacc.c */ -#line 1540 "program_parse.y" +#line 1542 "program_parse.y" { (yyval.integer) = (yyvsp[(1) - (1)].integer); ;} break; case 224: /* Line 1455 of yacc.c */ -#line 1544 "program_parse.y" +#line 1546 "program_parse.y" { if (!declare_variable(state, (yyvsp[(3) - (3)].string), (yyvsp[(0) - (3)].integer), & (yylsp[(3) - (3)]))) { YYERROR; @@ -3973,7 +3975,7 @@ yyreduce: case 225: /* Line 1455 of yacc.c */ -#line 1550 "program_parse.y" +#line 1552 "program_parse.y" { if (!declare_variable(state, (yyvsp[(1) - (1)].string), (yyvsp[(0) - (1)].integer), & (yylsp[(1) - (1)]))) { YYERROR; @@ -3984,7 +3986,7 @@ yyreduce: case 226: /* Line 1455 of yacc.c */ -#line 1558 "program_parse.y" +#line 1560 "program_parse.y" { struct asm_symbol *const s = declare_variable(state, (yyvsp[(2) - (4)].string), at_output, & (yylsp[(2) - (4)])); @@ -4000,7 +4002,7 @@ yyreduce: case 227: /* Line 1455 of yacc.c */ -#line 1571 "program_parse.y" +#line 1573 "program_parse.y" { if (state->mode == ARB_vertex) { (yyval.result) = VERT_RESULT_HPOS; @@ -4014,7 +4016,7 @@ yyreduce: case 228: /* Line 1455 of yacc.c */ -#line 1580 "program_parse.y" +#line 1582 "program_parse.y" { if (state->mode == ARB_vertex) { (yyval.result) = VERT_RESULT_FOGC; @@ -4028,7 +4030,7 @@ yyreduce: case 229: /* Line 1455 of yacc.c */ -#line 1589 "program_parse.y" +#line 1591 "program_parse.y" { (yyval.result) = (yyvsp[(2) - (2)].result); ;} @@ -4037,7 +4039,7 @@ yyreduce: case 230: /* Line 1455 of yacc.c */ -#line 1593 "program_parse.y" +#line 1595 "program_parse.y" { if (state->mode == ARB_vertex) { (yyval.result) = VERT_RESULT_PSIZ; @@ -4051,7 +4053,7 @@ yyreduce: case 231: /* Line 1455 of yacc.c */ -#line 1602 "program_parse.y" +#line 1604 "program_parse.y" { if (state->mode == ARB_vertex) { (yyval.result) = VERT_RESULT_TEX0 + (yyvsp[(3) - (3)].integer); @@ -4065,7 +4067,7 @@ yyreduce: case 232: /* Line 1455 of yacc.c */ -#line 1611 "program_parse.y" +#line 1613 "program_parse.y" { if (state->mode == ARB_fragment) { (yyval.result) = FRAG_RESULT_DEPTH; @@ -4079,7 +4081,7 @@ yyreduce: case 233: /* Line 1455 of yacc.c */ -#line 1622 "program_parse.y" +#line 1624 "program_parse.y" { (yyval.result) = (yyvsp[(2) - (3)].integer) + (yyvsp[(3) - (3)].integer); ;} @@ -4088,7 +4090,7 @@ yyreduce: case 234: /* Line 1455 of yacc.c */ -#line 1628 "program_parse.y" +#line 1630 "program_parse.y" { (yyval.integer) = (state->mode == ARB_vertex) ? VERT_RESULT_COL0 @@ -4099,7 +4101,7 @@ yyreduce: case 235: /* Line 1455 of yacc.c */ -#line 1634 "program_parse.y" +#line 1636 "program_parse.y" { if (state->mode == ARB_vertex) { (yyval.integer) = VERT_RESULT_COL0; @@ -4113,7 +4115,7 @@ yyreduce: case 236: /* Line 1455 of yacc.c */ -#line 1643 "program_parse.y" +#line 1645 "program_parse.y" { if (state->mode == ARB_vertex) { (yyval.integer) = VERT_RESULT_BFC0; @@ -4127,7 +4129,7 @@ yyreduce: case 237: /* Line 1455 of yacc.c */ -#line 1654 "program_parse.y" +#line 1656 "program_parse.y" { (yyval.integer) = 0; ;} @@ -4136,7 +4138,7 @@ yyreduce: case 238: /* Line 1455 of yacc.c */ -#line 1658 "program_parse.y" +#line 1660 "program_parse.y" { if (state->mode == ARB_vertex) { (yyval.integer) = 0; @@ -4150,7 +4152,7 @@ yyreduce: case 239: /* Line 1455 of yacc.c */ -#line 1667 "program_parse.y" +#line 1669 "program_parse.y" { if (state->mode == ARB_vertex) { (yyval.integer) = 1; @@ -4164,91 +4166,91 @@ yyreduce: case 240: /* Line 1455 of yacc.c */ -#line 1677 "program_parse.y" +#line 1679 "program_parse.y" { (yyval.integer) = 0; ;} break; case 241: /* Line 1455 of yacc.c */ -#line 1678 "program_parse.y" +#line 1680 "program_parse.y" { (yyval.integer) = 0; ;} break; case 242: /* Line 1455 of yacc.c */ -#line 1679 "program_parse.y" +#line 1681 "program_parse.y" { (yyval.integer) = 1; ;} break; case 243: /* Line 1455 of yacc.c */ -#line 1682 "program_parse.y" +#line 1684 "program_parse.y" { (yyval.integer) = 0; ;} break; case 244: /* Line 1455 of yacc.c */ -#line 1683 "program_parse.y" +#line 1685 "program_parse.y" { (yyval.integer) = 0; ;} break; case 245: /* Line 1455 of yacc.c */ -#line 1684 "program_parse.y" +#line 1686 "program_parse.y" { (yyval.integer) = 1; ;} break; case 246: /* Line 1455 of yacc.c */ -#line 1687 "program_parse.y" +#line 1689 "program_parse.y" { (yyval.integer) = 0; ;} break; case 247: /* Line 1455 of yacc.c */ -#line 1688 "program_parse.y" +#line 1690 "program_parse.y" { (yyval.integer) = (yyvsp[(2) - (3)].integer); ;} break; case 248: /* Line 1455 of yacc.c */ -#line 1691 "program_parse.y" +#line 1693 "program_parse.y" { (yyval.integer) = 0; ;} break; case 249: /* Line 1455 of yacc.c */ -#line 1692 "program_parse.y" +#line 1694 "program_parse.y" { (yyval.integer) = (yyvsp[(2) - (3)].integer); ;} break; case 250: /* Line 1455 of yacc.c */ -#line 1695 "program_parse.y" +#line 1697 "program_parse.y" { (yyval.integer) = 0; ;} break; case 251: /* Line 1455 of yacc.c */ -#line 1696 "program_parse.y" +#line 1698 "program_parse.y" { (yyval.integer) = (yyvsp[(2) - (3)].integer); ;} break; case 252: /* Line 1455 of yacc.c */ -#line 1700 "program_parse.y" +#line 1702 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) >= state->MaxTextureCoordUnits) { yyerror(& (yylsp[(1) - (1)]), state, "invalid texture coordinate unit selector"); @@ -4262,7 +4264,7 @@ yyreduce: case 253: /* Line 1455 of yacc.c */ -#line 1711 "program_parse.y" +#line 1713 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) >= state->MaxTextureImageUnits) { yyerror(& (yylsp[(1) - (1)]), state, "invalid texture image unit selector"); @@ -4276,7 +4278,7 @@ yyreduce: case 254: /* Line 1455 of yacc.c */ -#line 1722 "program_parse.y" +#line 1724 "program_parse.y" { if ((yyvsp[(1) - (1)].integer) >= state->MaxTextureUnits) { yyerror(& (yylsp[(1) - (1)]), state, "invalid texture unit selector"); @@ -4290,7 +4292,7 @@ yyreduce: case 255: /* Line 1455 of yacc.c */ -#line 1733 "program_parse.y" +#line 1735 "program_parse.y" { struct asm_symbol *exist = (struct asm_symbol *) _mesa_symbol_table_find_symbol(state->st, 0, (yyvsp[(2) - (4)].string)); @@ -4314,7 +4316,7 @@ yyreduce: /* Line 1455 of yacc.c */ -#line 4318 "program_parse.tab.c" +#line 4320 "program_parse.tab.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -4533,7 +4535,7 @@ yyreturn: /* Line 1675 of yacc.c */ -#line 1753 "program_parse.y" +#line 1755 "program_parse.y" struct asm_instruction * diff --git a/src/mesa/shader/program_parse.y b/src/mesa/shader/program_parse.y index 39e3ee1f1e2..0260196210a 100644 --- a/src/mesa/shader/program_parse.y +++ b/src/mesa/shader/program_parse.y @@ -590,7 +590,9 @@ srcReg: IDENTIFIER /* temporaryReg | progParamSingle */ | paramSingleItemUse { init_src_reg(& $$); - $$.Base.File = $1.param_binding_type; + $$.Base.File = ($1.name != NULL) + ? $1.param_binding_type + : PROGRAM_CONSTANT; $$.Base.Index = $1.param_binding_begin; } ;