diff options
author | Dan Gohman <gohman@apple.com> | 2008-05-31 00:58:22 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2008-05-31 00:58:22 +0000 |
commit | 81a0c0b44e582baca8b68754a7fcabfc3aef2e7a (patch) | |
tree | 0b0d24cd0d230447b1d8419bb0360c74955fdda1 /lib/AsmParser/llvmAsmParser.cpp.cvs | |
parent | 652f7ea955bb433d6b7a4d33685dca9485fd7b8b (diff) |
IR, bitcode reader, bitcode writer, and asmparser changes to
insertvalue and extractvalue to use constant indices instead of
Value* indices. And begin updating LangRef.html.
There's definately more to come here, but I'm checking this
basic support in now to make it available to people who are
interested.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51806 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AsmParser/llvmAsmParser.cpp.cvs')
-rw-r--r-- | lib/AsmParser/llvmAsmParser.cpp.cvs | 1885 |
1 files changed, 955 insertions, 930 deletions
diff --git a/lib/AsmParser/llvmAsmParser.cpp.cvs b/lib/AsmParser/llvmAsmParser.cpp.cvs index 78bd21881d..c4dd86be98 100644 --- a/lib/AsmParser/llvmAsmParser.cpp.cvs +++ b/lib/AsmParser/llvmAsmParser.cpp.cvs @@ -1109,6 +1109,10 @@ ParseGlobalVariable(std::string *NameStr, GenerateError("Cannot declare global vars of function type"); return 0; } + if (Ty == Type::LabelTy) { + GenerateError("Cannot declare global vars of label type"); + return 0; + } const PointerType *PTy = PointerType::get(Ty, AddressSpace); @@ -1344,7 +1348,7 @@ Module *llvm::RunVMAsmParser(llvm::MemoryBuffer *MB) { #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 949 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y" +#line 953 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y" { llvm::Module *ModuleVal; llvm::Function *FunctionVal; @@ -1358,6 +1362,7 @@ typedef union YYSTYPE llvm::PATypeHolder *TypeVal; llvm::Value *ValueVal; std::vector<llvm::Value*> *ValueList; + std::vector<unsigned> *ConstantList; llvm::ArgListType *ArgList; llvm::TypeWithAttrs TypeWithAttrs; llvm::TypeWithAttrsList *TypeWithAttrsList; @@ -1392,7 +1397,7 @@ typedef union YYSTYPE llvm::FCmpInst::Predicate FPredicate; } /* Line 193 of yacc.c. */ -#line 1396 "llvmAsmParser.tab.c" +#line 1401 "llvmAsmParser.tab.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -1405,7 +1410,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 1409 "llvmAsmParser.tab.c" +#line 1414 "llvmAsmParser.tab.c" #ifdef short # undef short @@ -1620,16 +1625,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 44 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 2144 +#define YYLAST 2191 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 170 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 85 +#define YYNNTS 86 /* YYNRULES -- Number of rules. */ -#define YYNRULES 331 +#define YYNRULES 333 /* YYNRULES -- Number of states. */ -#define YYNSTATES 679 +#define YYNSTATES 683 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -1720,10 +1725,10 @@ static const yytype_uint16 yyprhs[] = 766, 768, 770, 773, 775, 779, 782, 785, 789, 792, 793, 795, 798, 801, 805, 815, 825, 834, 849, 851, 853, 860, 866, 869, 876, 884, 889, 894, 901, 908, - 909, 910, 914, 917, 919, 925, 931, 938, 945, 952, - 959, 964, 971, 976, 981, 988, 995, 998, 1007, 1009, - 1011, 1012, 1016, 1023, 1027, 1034, 1037, 1043, 1051, 1057, - 1062, 1067 + 909, 910, 914, 917, 921, 924, 926, 932, 938, 945, + 952, 959, 966, 971, 978, 983, 988, 995, 1002, 1005, + 1014, 1016, 1018, 1019, 1023, 1030, 1034, 1041, 1044, 1050, + 1058, 1064, 1069, 1074 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -1783,8 +1788,8 @@ static const yytype_int16 yyrhs[] = -1, 93, 175, 156, 210, 159, 210, 157, -1, 135, 156, 210, 159, 210, 157, -1, 136, 156, 210, 159, 210, 159, 210, 157, -1, 137, 156, 210, 159, 210, - 159, 210, 157, -1, 139, 156, 210, 250, 157, -1, - 140, 156, 210, 159, 210, 250, 157, -1, 212, 159, + 159, 210, 157, -1, 139, 156, 210, 251, 157, -1, + 140, 156, 210, 159, 210, 251, 157, -1, 212, 159, 210, -1, 210, -1, 32, -1, 33, -1, 37, -1, -1, 206, 238, -1, 125, 156, 215, 38, 204, 157, -1, 217, -1, -1, 218, -1, 217, 218, -1, -1, @@ -1815,67 +1820,68 @@ static const yytype_int16 yyrhs[] = 239, 162, 164, -1, 72, 191, 206, 239, 156, 249, 157, 195, 38, 17, 239, 73, 17, 239, -1, 73, -1, 74, -1, 246, 176, 237, 159, 17, 239, -1, - 176, 237, 159, 17, 239, -1, 181, 252, -1, 204, + 176, 237, 159, 17, 239, -1, 181, 253, -1, 204, 162, 239, 159, 239, 164, -1, 248, 159, 162, 239, 159, 239, 164, -1, 204, 193, 239, 193, -1, 17, 193, 239, 193, -1, 249, 159, 204, 193, 239, 193, -1, 249, 159, 17, 193, 239, 193, -1, -1, -1, - 250, 159, 240, -1, 58, 57, -1, 57, -1, 171, - 204, 239, 159, 239, -1, 172, 204, 239, 159, 239, - -1, 90, 174, 204, 239, 159, 239, -1, 91, 175, - 204, 239, 159, 239, -1, 92, 174, 204, 239, 159, - 239, -1, 93, 175, 204, 239, 159, 239, -1, 173, - 240, 38, 204, -1, 133, 240, 159, 240, 159, 240, - -1, 134, 240, 159, 204, -1, 135, 240, 159, 240, - -1, 136, 240, 159, 240, 159, 240, -1, 137, 240, - 159, 240, 159, 240, -1, 132, 248, -1, 251, 191, - 206, 239, 156, 249, 157, 195, -1, 254, -1, 36, - -1, -1, 114, 204, 198, -1, 114, 204, 159, 11, - 239, 198, -1, 115, 204, 198, -1, 115, 204, 159, - 11, 239, 198, -1, 116, 240, -1, 253, 117, 204, - 239, 198, -1, 253, 118, 240, 159, 204, 239, 198, - -1, 138, 204, 239, 159, 4, -1, 119, 204, 239, - 250, -1, 139, 204, 239, 250, -1, 140, 204, 239, - 159, 204, 239, 250, -1 + 250, 159, 240, -1, 159, 4, -1, 251, 159, 4, + -1, 58, 57, -1, 57, -1, 171, 204, 239, 159, + 239, -1, 172, 204, 239, 159, 239, -1, 90, 174, + 204, 239, 159, 239, -1, 91, 175, 204, 239, 159, + 239, -1, 92, 174, 204, 239, 159, 239, -1, 93, + 175, 204, 239, 159, 239, -1, 173, 240, 38, 204, + -1, 133, 240, 159, 240, 159, 240, -1, 134, 240, + 159, 204, -1, 135, 240, 159, 240, -1, 136, 240, + 159, 240, 159, 240, -1, 137, 240, 159, 240, 159, + 240, -1, 132, 248, -1, 252, 191, 206, 239, 156, + 249, 157, 195, -1, 255, -1, 36, -1, -1, 114, + 204, 198, -1, 114, 204, 159, 11, 239, 198, -1, + 115, 204, 198, -1, 115, 204, 159, 11, 239, 198, + -1, 116, 240, -1, 254, 117, 204, 239, 198, -1, + 254, 118, 240, 159, 204, 239, 198, -1, 138, 204, + 239, 159, 4, -1, 119, 204, 239, 250, -1, 139, + 204, 239, 251, -1, 140, 204, 239, 159, 204, 239, + 251, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, - 1112, 1113, 1113, 1113, 1113, 1113, 1113, 1114, 1114, 1114, - 1114, 1114, 1114, 1115, 1115, 1115, 1115, 1115, 1115, 1118, - 1118, 1119, 1119, 1120, 1120, 1121, 1121, 1122, 1122, 1126, - 1126, 1127, 1127, 1128, 1128, 1129, 1129, 1130, 1130, 1131, - 1131, 1132, 1132, 1133, 1134, 1139, 1140, 1140, 1140, 1140, - 1140, 1142, 1142, 1142, 1143, 1143, 1145, 1146, 1150, 1154, - 1159, 1159, 1161, 1162, 1167, 1173, 1174, 1175, 1176, 1177, - 1178, 1182, 1183, 1184, 1188, 1189, 1190, 1191, 1195, 1196, - 1197, 1201, 1202, 1203, 1204, 1205, 1209, 1210, 1211, 1214, - 1215, 1216, 1217, 1218, 1219, 1220, 1227, 1228, 1229, 1230, - 1231, 1232, 1233, 1234, 1235, 1236, 1240, 1241, 1246, 1247, - 1248, 1249, 1250, 1251, 1254, 1255, 1260, 1261, 1268, 1269, - 1275, 1276, 1285, 1293, 1294, 1299, 1300, 1301, 1306, 1319, - 1319, 1319, 1319, 1319, 1319, 1319, 1322, 1326, 1330, 1337, - 1342, 1350, 1379, 1404, 1409, 1419, 1429, 1433, 1443, 1450, - 1459, 1466, 1471, 1476, 1483, 1484, 1491, 1498, 1506, 1512, - 1524, 1552, 1568, 1595, 1623, 1649, 1669, 1695, 1715, 1727, - 1734, 1800, 1810, 1820, 1826, 1836, 1842, 1852, 1857, 1862, - 1875, 1887, 1908, 1916, 1922, 1933, 1938, 1943, 1948, 1953, - 1959, 1965, 1971, 1992, 2016, 2020, 2028, 2028, 2031, 2031, - 2034, 2046, 2067, 2072, 2080, 2081, 2085, 2085, 2089, 2089, - 2092, 2095, 2119, 2131, 2130, 2142, 2141, 2151, 2150, 2161, - 2201, 2204, 2210, 2220, 2224, 2229, 2231, 2236, 2241, 2250, - 2260, 2271, 2275, 2284, 2293, 2298, 2427, 2427, 2429, 2438, - 2438, 2440, 2445, 2457, 2461, 2466, 2470, 2474, 2478, 2482, - 2486, 2490, 2494, 2498, 2523, 2527, 2537, 2541, 2545, 2550, - 2557, 2557, 2563, 2572, 2577, 2582, 2586, 2595, 2604, 2613, - 2617, 2625, 2632, 2636, 2641, 2651, 2670, 2679, 2765, 2769, - 2776, 2787, 2800, 2810, 2821, 2831, 2842, 2850, 2860, 2867, - 2870, 2871, 2878, 2882, 2887, 2903, 2920, 2934, 2948, 2962, - 2976, 2988, 2996, 3003, 3009, 3015, 3021, 3036, 3126, 3131, - 3135, 3142, 3149, 3157, 3164, 3172, 3180, 3194, 3211, 3219, - 3234, 3249 + 0, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, + 1118, 1119, 1119, 1119, 1119, 1119, 1119, 1120, 1120, 1120, + 1120, 1120, 1120, 1121, 1121, 1121, 1121, 1121, 1121, 1124, + 1124, 1125, 1125, 1126, 1126, 1127, 1127, 1128, 1128, 1132, + 1132, 1133, 1133, 1134, 1134, 1135, 1135, 1136, 1136, 1137, + 1137, 1138, 1138, 1139, 1140, 1145, 1146, 1146, 1146, 1146, + 1146, 1148, 1148, 1148, 1149, 1149, 1151, 1152, 1156, 1160, + 1165, 1165, 1167, 1168, 1173, 1179, 1180, 1181, 1182, 1183, + 1184, 1188, 1189, 1190, 1194, 1195, 1196, 1197, 1201, 1202, + 1203, 1207, 1208, 1209, 1210, 1211, 1215, 1216, 1217, 1220, + 1221, 1222, 1223, 1224, 1225, 1226, 1233, 1234, 1235, 1236, + 1237, 1238, 1239, 1240, 1241, 1242, 1246, 1247, 1252, 1253, + 1254, 1255, 1256, 1257, 1260, 1261, 1266, 1267, 1274, 1275, + 1281, 1282, 1291, 1299, 1300, 1305, 1306, 1307, 1312, 1325, + 1325, 1325, 1325, 1325, 1325, 1325, 1328, 1332, 1336, 1343, + 1348, 1356, 1385, 1410, 1415, 1425, 1435, 1439, 1449, 1456, + 1465, 1472, 1477, 1482, 1489, 1490, 1497, 1504, 1512, 1518, + 1530, 1558, 1574, 1601, 1629, 1655, 1675, 1701, 1721, 1733, + 1740, 1806, 1816, 1826, 1832, 1842, 1848, 1858, 1864, 1870, + 1883, 1895, 1916, 1924, 1930, 1941, 1946, 1951, 1956, 1961, + 1967, 1973, 1979, 1987, 1998, 2002, 2010, 2010, 2013, 2013, + 2016, 2028, 2049, 2054, 2062, 2063, 2067, 2067, 2071, 2071, + 2074, 2077, 2101, 2113, 2112, 2124, 2123, 2133, 2132, 2143, + 2183, 2186, 2192, 2202, 2206, 2211, 2213, 2218, 2223, 2232, + 2242, 2253, 2257, 2266, 2275, 2280, 2409, 2409, 2411, 2420, + 2420, 2422, 2427, 2439, 2443, 2448, 2452, 2456, 2460, 2464, + 2468, 2472, 2476, 2480, 2508, 2512, 2522, 2526, 2530, 2535, + 2542, 2542, 2548, 2557, 2562, 2567, 2571, 2580, 2589, 2598, + 2602, 2610, 2617, 2621, 2626, 2637, 2656, 2665, 2751, 2755, + 2762, 2773, 2786, 2796, 2807, 2817, 2828, 2836, 2846, 2853, + 2856, 2857, 2865, 2871, 2880, 2884, 2889, 2905, 2922, 2936, + 2950, 2964, 2978, 2990, 2998, 3005, 3011, 3017, 3023, 3038, + 3128, 3133, 3137, 3144, 3151, 3161, 3168, 3178, 3186, 3200, + 3217, 3225, 3240, 3255 }; #endif @@ -1926,8 +1932,9 @@ static const char *const yytname[] = "Function", "FunctionProto", "OptSideEffect", "ConstValueRef", "SymbolicValueRef", "ValueRef", "ResolvedVal", "ReturnedVal", "BasicBlockList", "BasicBlock", "InstructionList", "BBTerminatorInst", - "JumpTable", "Inst", "PHIList", "ParamList", "IndexList", "OptTailCall", - "InstVal", "OptVolatile", "MemoryInst", 0 + "JumpTable", "Inst", "PHIList", "ParamList", "IndexList", + "ConstantIndexList", "OptTailCall", "InstVal", "OptVolatile", + "MemoryInst", 0 }; #endif @@ -1989,10 +1996,10 @@ static const yytype_uint8 yyr1[] = 239, 239, 240, 241, 241, 242, 242, 243, 244, 244, 244, 245, 245, 245, 245, 245, 245, 245, 245, 245, 246, 246, 247, 248, 248, 249, 249, 249, 249, 249, - 250, 250, 251, 251, 252, 252, 252, 252, 252, 252, - 252, 252, 252, 252, 252, 252, 252, 252, 252, 253, - 253, 254, 254, 254, 254, 254, 254, 254, 254, 254, - 254, 254 + 250, 250, 251, 251, 252, 252, 253, 253, 253, 253, + 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, + 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -2028,10 +2035,10 @@ static const yytype_uint8 yyr2[] = 1, 1, 2, 1, 3, 2, 2, 3, 2, 0, 1, 2, 2, 3, 9, 9, 8, 14, 1, 1, 6, 5, 2, 6, 7, 4, 4, 6, 6, 0, - 0, 3, 2, 1, 5, 5, 6, 6, 6, 6, - 4, 6, 4, 4, 6, 6, 2, 8, 1, 1, - 0, 3, 6, 3, 6, 2, 5, 7, 5, 4, - 4, 7 + 0, 3, 2, 3, 2, 1, 5, 5, 6, 6, + 6, 6, 4, 6, 4, 4, 6, 6, 2, 8, + 1, 1, 0, 3, 6, 3, 6, 2, 5, 7, + 5, 4, 4, 7 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -2052,26 +2059,26 @@ static const yytype_uint16 yydefact[] = 237, 0, 167, 150, 0, 0, 0, 0, 156, 168, 0, 0, 167, 0, 0, 0, 98, 97, 0, 206, 207, 0, 0, 100, 101, 102, 103, 104, 0, 252, - 0, 320, 278, 0, 235, 166, 116, 162, 164, 0, + 0, 322, 278, 0, 235, 166, 116, 162, 164, 0, 0, 0, 0, 0, 0, 155, 0, 0, 148, 0, 0, 161, 0, 160, 0, 229, 139, 140, 141, 144, 143, 142, 0, 0, 67, 67, 105, 0, 246, 247, - 248, 319, 303, 0, 0, 0, 0, 99, 288, 289, + 248, 321, 305, 0, 0, 0, 0, 99, 288, 289, 2, 3, 4, 5, 6, 7, 8, 9, 10, 14, 15, 16, 11, 12, 13, 0, 0, 0, 0, 0, 0, 0, 0, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 277, 99, 292, - 0, 318, 236, 159, 0, 124, 67, 67, 158, 0, + 0, 320, 236, 159, 0, 124, 67, 67, 158, 0, 169, 0, 124, 67, 67, 0, 210, 187, 188, 183, 185, 184, 186, 189, 182, 178, 179, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 181, 180, 223, 0, 302, + 0, 0, 0, 0, 0, 181, 180, 223, 0, 304, 282, 67, 273, 281, 0, 0, 55, 0, 0, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 0, 53, 54, 49, 50, 51, 52, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 0, 0, 0, 130, - 130, 325, 67, 67, 316, 0, 0, 0, 0, 0, + 130, 327, 67, 67, 318, 0, 0, 0, 0, 0, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0, 107, 109, 108, 106, 110, 111, 112, 113, 114, 117, 165, 163, 152, 153, 154, 157, 66, 151, 225, 227, @@ -2079,137 +2086,139 @@ static const yytype_uint16 yydefact[] = 0, 0, 171, 205, 0, 0, 0, 175, 0, 172, 0, 0, 0, 135, 244, 255, 256, 257, 262, 258, 259, 260, 261, 253, 0, 264, 271, 270, 272, 0, - 0, 283, 0, 0, 67, 67, 67, 67, 0, 321, - 0, 323, 300, 0, 0, 0, 0, 0, 0, 0, - 0, 300, 0, 0, 0, 0, 0, 67, 0, 115, + 0, 283, 0, 0, 67, 67, 67, 67, 0, 323, + 0, 325, 300, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 67, 0, 115, 121, 120, 118, 119, 122, 123, 125, 135, 135, 0, - 0, 0, 0, 0, 300, 0, 0, 0, 0, 300, + 0, 0, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 170, 156, 168, 0, 173, 174, 0, 0, 0, 0, 224, 243, 116, 241, 0, 254, 0, 0, 274, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 329, 0, 0, 0, 312, 313, 0, 0, 0, - 330, 0, 0, 0, 310, 0, 130, 0, 226, 228, - 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 204, 177, 0, 0, 0, 0, 0, 0, - 137, 135, 65, 0, 124, 0, 263, 0, 0, 299, - 0, 0, 0, 0, 130, 131, 130, 0, 0, 0, - 0, 0, 0, 328, 67, 304, 305, 299, 0, 326, - 67, 211, 0, 0, 0, 0, 191, 0, 0, 0, - 0, 202, 300, 176, 0, 0, 67, 132, 138, 136, - 64, 240, 242, 116, 133, 0, 0, 0, 116, 116, - 0, 306, 307, 308, 309, 322, 324, 301, 0, 0, - 311, 314, 315, 300, 0, 130, 0, 0, 0, 0, - 0, 199, 0, 0, 0, 193, 194, 190, 65, 134, - 128, 265, 0, 0, 0, 0, 124, 0, 293, 0, - 331, 124, 327, 195, 196, 197, 198, 0, 0, 0, - 203, 239, 0, 126, 0, 286, 0, 0, 107, 109, - 116, 116, 0, 116, 116, 294, 317, 192, 200, 201, - 129, 0, 245, 284, 0, 285, 0, 296, 295, 0, - 0, 0, 127, 0, 0, 0, 116, 116, 0, 0, - 0, 298, 297, 291, 0, 0, 290, 0, 287 + 0, 331, 0, 0, 0, 314, 315, 0, 0, 0, + 0, 332, 0, 0, 0, 312, 0, 130, 0, 226, + 228, 67, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 204, 177, 0, 0, 0, 0, 0, + 0, 137, 135, 65, 0, 124, 0, 263, 0, 0, + 299, 0, 0, 0, 0, 130, 131, 130, 0, 0, + 0, 0, 0, 0, 330, 302, 0, 67, 306, 307, + 299, 0, 328, 67, 211, 0, 0, 0, 0, 191, + 0, 0, 0, 0, 202, 0, 176, 0, 0, 67, + 132, 138, 136, 64, 240, 242, 116, 133, 0, 0, + 0, 116, 116, 0, 308, 309, 310, 311, 324, 326, + 301, 0, 0, 313, 316, 317, 303, 0, 0, 130, + 0, 0, 0, 0, 0, 199, 0, 0, 0, 193, + 194, 190, 65, 134, 128, 265, 0, 0, 0, 0, + 124, 0, 293, 0, 333, 124, 329, 195, 196, 197, + 198, 0, 0, 0, 203, 239, 0, 126, 0, 286, + 0, 0, 107, 109, 116, 116, 0, 116, 116, 294, + 319, 192, 200, 201, 129, 0, 245, 284, 0, 285, + 0, 296, 295, 0, 0, 0, 127, 0, 0, 0, + 116, 116, 0, 0, 0, 298, 297, 291, 0, 0, + 290, 0, 287 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 272, 273, 274, 299, 316, 162, 163, 79, 571, + -1, 272, 273, 274, 299, 316, 162, 163, 79, 574, 113, 12, 80, 14, 15, 41, 42, 43, 48, 54, - 118, 128, 349, 233, 436, 352, 652, 633, 409, 520, - 610, 462, 521, 81, 164, 137, 154, 138, 139, 110, + 118, 128, 349, 233, 436, 352, 656, 637, 409, 521, + 614, 462, 522, 81, 164, 137, 154, 138, 139, 110, 373, 395, 374, 121, 88, 155, 16, 17, 18, 20, 19, 383, 437, 438, 63, 23, 61, 101, 465, 466, 129, 170, 55, 96, 56, 49, 468, 396, 83, 398, - 282, 283, 57, 92, 93, 227, 637, 132, 324, 580, - 481, 228, 229, 230, 231 + 282, 283, 57, 92, 93, 227, 641, 132, 324, 583, + 481, 491, 228, 229, 230, 231 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -578 +#define YYPACT_NINF -611 static const yytype_int16 yypact[] = { - 348, -578, -578, -578, -578, -578, -578, -578, 42, -145, - -8, -70, 59, -15, -2, -578, 154, 1288, -578, 155, - 317, 4, 24, -578, -4, 157, -578, 1678, -578, -578, - -578, -578, -578, -578, -578, -578, -578, -578, -578, -578, - -578, 133, 133, 203, -578, -578, -578, -578, 133, -578, - -578, -578, -578, -578, 133, 183, -578, -5, 191, 194, - 204, -578, -578, -578, -578, -578, 73, -578, -578, -578, - -578, -578, -578, -578, -578, 235, 238, 11, 244, -578, - -578, -578, 87, -578, 212, 212, 261, -578, 100, 321, - 321, -578, -578, 250, -578, -578, -578, -578, -578, -578, - -578, -47, 50, -578, 102, 107, 787, 73, -578, 87, - -81, 141, 50, 129, 100, 100, -578, -578, 1362, -578, - -578, 1722, 303, -578, -578, -578, -578, -578, 1780, -578, - -17, 2004, -578, 302, -578, -578, 87, -578, 173, 189, - 1840, 1840, 181, -61, 1840, -578, 346, 200, -578, 1722, - 1840, 73, 195, 87, 294, -578, 79, 360, 365, 371, - 372, 385, 272, 388, 1425, 343, -578, 30, -578, -578, - -578, -578, -578, 344, 1858, 220, 391, 321, -578, -578, - -578, -578, -578, -578, -578, -578, -578, -578, -578, -578, - -578, -578, -578, -578, -578, 668, 443, 668, 443, 1840, - 1840, 1840, 1840, -578, -578, -578, -578, -578, -578, -578, - -578, -578, -578, -578, -578, 1840, 1840, 1840, 1840, 1840, - 1840, 1840, 1840, 1840, 1840, 1840, 1840, -578, 321, -578, - 53, -578, -578, 178, 1560, -578, -20, -27, -578, 241, - 87, 253, -578, 343, 16, 1362, -578, -578, -578, -578, - -578, -578, -578, -578, -578, -578, -578, 668, 443, 668, - 443, 258, 264, 268, 275, 278, 280, 281, 1601, 1887, - 1046, 395, 282, 284, 287, -578, -578, -578, 288, -578, - 73, 996, -578, 266, 1140, 1140, -578, 1140, 1780, -578, - -578, -578, -578, -578, -578, -578, -578, -578, -578, 1840, - -578, -578, -578, -578, -578, -578, -578, -578, -578, -578, - -578, -578, -578, -578, -578, -578, 1840, 1840, 1840, 68, - 85, -578, 996, -25, 271, 286, 289, 290, 291, 299, - 996, 996, 996, 996, 996, 408, 1780, 1840, 1840, 455, - -578, -578, -578, -578, -578, -578, -578, -578, -578, -578, - -578, -578, 188, -578, -578, -578, -578, 188, -578, 129, - 409, 304, 305, 306, 308, 1722, 1722, 1722, 1722, 1722, - 1722, 1722, -578, -578, 89, 1087, -58, -578, -48, -578, - 1722, 1722, 1722, 313, 1619, -578, -578, -578, -578, -578, - -578, -578, -578, 412, 1722, -578, -578, -578, -578, 1840, - 315, -578, 316, 1140, 996, 996, 996, 996, 27, -578, - 37, -578, -578, 1140, 322, 1840, 1840, 1840, 1840, 1840, - 319, -578, 324, 326, 327, 1840, 1140, 996, 329, -578, - -578, -578, -578, -578, -578, -578, -578, 313, 313, 1840, - 1722, 1722, 1722, 1722, -578, 330, 331, 333, 335, -578, - 336, 1722, -578, 332, 1274, -40, -578, -578, 337, 341, - 463, 21, -578, -578, 87, 345, 349, -578, 480, 22, - -578, 488, 490, 352, 350, 351, 353, 354, 1140, 513, - 1140, 359, 361, 1140, 364, 87, -578, 366, 373, 515, - 359, 1840, 1140, 1140, 87, 368, 375, 1840, -578, -578, - -1, 376, 377, 380, 381, 147, 1722, 1722, 1722, 1722, - 176, 1722, -578, -578, 392, 1722, 1722, 1840, 519, 538, - -578, 313, 274, 1660, -578, 398, -578, 1140, 1140, 1905, - 1140, 1140, 1140, 1140, 375, -578, 375, 1840, 1140, 400, - 1840, 1840, 1840, -578, 996, -578, -578, 1905, 506, -578, - 996, -578, 1722, 1722, 1722, 1722, -578, 402, 405, 406, - 407, -578, -578, -578, 410, 413, 49, -578, -578, -578, - -578, -578, -578, 87, -16, 547, 414, 419, 90, 87, - 206, -578, -578, -578, -578, -578, -578, -578, 411, 1140, - -578, -578, -578, -578, 269, 375, 415, 417, 425, 427, - 1722, -578, 1722, 1722, 276, -578, -578, -578, 274, -578, - 517, -578, 568, 1, 849, 849, -578, 1946, -578, 422, - 359, -578, -578, -578, -578, -578, -578, 430, 431, 432, - -578, -578, 586, 444, 1140, -578, 621, 3, 442, 447, - -578, -578, 18, 90, 87, -578, 188, -578, -578, -578, - -578, 577, -578, -578, 441, -578, 621, 178, 178, 587, - 849, 849, -578, 588, 448, 1140, -578, -578, 1140, 589, - 539, 178, 178, -578, 1140, 594, -578, 1140, -578 + 645, -611, -611, -611, -611, -611, -611, -611, -11, -112, + 3, -74, 83, -41, 26, -611, 111, 692, -611, -17, + 199, -19, 54, -611, 21, 124, -611, 1670, -611, -611, + -611, -611, -611, -611, -611, -611, -611, -611, -611, -611, + -611, 17, 17, 72, -611, -611, -611, -611, 17, -611, + -611, -611, -611, -611, 17, 137, -611, -5, 196, 204, + 215, -611, -611, -611, -611, -611, 65, -611, -611, -611, + -611, -611, -611, -611, -611, 262, 265, 2, 322, -611, + -611, -611, -40, -611, 240, 240, 219, -611, 319, 193, + 193, -611, -611, 257, -611, -611, -611, -611, -611, -611, + -611, 52, 1252, -611, 120, 131, 671, 65, -611, -40, + -101, 132, 1252, 139, 319, 319, -611, -611, 1359, -611, + -611, 1711, 299, -611, -611, -611, -611, -611, 1772, -611, + -16, 2051, -611, 287, -611, -611, -40, -611, 154, 160, + 1831, 1831, 159, -77, 1831, -611, 316, 183, -611, 1711, + 1831, 65, 175, -40, 278, -611, 248, 334, 338, 356, + 357, 358, 244, 359, 1310, 314, -611, 36, -611, -611, + -611, -611, -611, 313, 1872, 34, 360, 193, -611, -611, + -611, -611, -611, -611, -611, -611, -611, -611, -611, -611, + -611, -611, -611, -611, -611, 324, 522, 324, 522, 1831, + 1831, 1831, 1831, -611, -611, -611, -611, -611, -611, -611, + -611, -611, -611, -611, -611, 1831, 1831, 1831, 1831, 1831, + 1831, 1831, 1831, 1831, 1831, 1831, 1831, -611, 193, -611, + 236, -611, -611, 174, 1548, -611, -12, -23, -611, 208, + -40, 218, -611, 314, -22, 1359, -611, -611, -611, -611, + -611, -611, -611, -611, -611, -611, -611, 324, 522, 324, + 522, 220, 221, 222, 224, 227, 229, 230, 1589, 1890, + 931, 366, 241, 251, 252, -611, -611, -611, 253, -611, + 65, 881, -611, 237, 1025, 1025, -611, 1025, 1772, -611, + -611, -611, -611, -611, -611, -611, -611, -611, -611, 1831, + -611, -611, -611, -611, -611, -611, -611, -611, -611, -611, + -611, -611, -611, -611, -611, -611, 1831, 1831, 1831, -6, + 8, -611, 881, -7, 239, 269, 272, 277, 279, 280, + 881, 881, 881, 881, 881, 372, 1772, 1831, 1831, 433, + -611, -611, -611, -611, -611, -611, -611, -611, -611, -611, + -611, -611, -47, -611, -611, -611, -611, -47, -611, 139, + 403, 286, 288, 289, 290, 1711, 1711, 1711, 1711, 1711, + 1711, 1711, -611, -611, 58, 972, -54, -611, 46, -611, + 1711, 1711, 1711, 291, 1611, -611, -611, -611, -611, -611, + -611, -611, -611, 386, 1711, -611, -611, -611, -611, 1831, + 292, -611, 293, 1025, 881, 881, 881, 881, 24, -611, + 25, -611, -611, 1025, 294, 1831, 1831, 1831, 1831, 1831, + 296, 303, 304, 305, 306, 1831, 1025, 881, 309, -611, + -611, -611, -611, -611, -611, -611, -611, 291, 291, 1831, + 1711, 1711, 1711, 1711, -611, 310, 311, 312, 315, 303, + 320, 1711, -611, 307, 1159, 56, -611, -611, 321, 323, + 415, 10, -611, -611, -40, 326, 331, -611, 459, -53, + -611, 474, 477, 339, 337, 340, 341, 342, 1025, 493, + 1025, 343, 344, 1025, 346, -40, -611, 347, 348, 504, + 505, 351, 1831, 1025, 1025, -40, 355, 354, 1831, -611, + -611, 45, 362, 363, 367, 368, -69, 1711, 1711, 1711, + 1711, 121, 1711, -611, -611, 352, 1711, 1711, 1831, 492, + 521, -611, 291, 123, 1652, -611, 369, -611, 1025, 1025, + 1934, 1025, 1025, 1025, 1025, 354, -611, 354, 1831, 1025, + 370, 1831, 1831, 1831, -611, -611, 531, 881, -611, -611, + 1934, 482, -611, 881, -611, 1711, 1711, 1711, 1711, -611, + 378, 381, 382, 387, -611, 303, -611, 393, 398, 53, + -611, -611, -611, -611, -611, -611, -40, -14, 534, 399, + 395, 6, -40, 125, -611, -611, -611, -611, -611, -611, + -611, 396, 1025, -611, -611, -611, -611, 303, 167, 354, + 402, 404, 405, 406, 1711, -611, 1711, 1711, 191, -611, + -611, -611, 123, -611, 510, -611, 550, -4, 734, 734, + -611, 1952, -611, 407, 351, -611, -611, -611, -611, -611, + -611, 411, 412, 417, -611, -611, 568, 423, 1025, -611, + 1455, -3, 420, 421, -611, -611, -20, 6, -40, -611, + -47, -611, -611, -611, -611, 556, -611, -611, 422, -611, + 1455, 174, 174, 563, 734, 734, -611, 566, 425, 1025, + -611, -611, 1025, 569, 512, 174, 174, -611, 1025, 570, + -611, 1025, -611 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -578, 482, 484, 485, -163, -161, -174, -578, 0, 12, - -97, 525, 10, -578, -578, -578, -578, 267, -578, -578, - -578, -138, -578, -457, -578, -239, -578, -578, -311, 45, - -578, -412, -578, -578, -26, 387, -122, -578, 510, 521, - 86, -159, -237, 222, 257, 383, -578, -578, 612, -578, - -578, -578, -578, -578, -578, -578, -578, -578, -578, -578, - 541, -578, -578, -578, -578, -578, -578, -577, -51, 246, - -197, -578, -578, 575, -578, -578, -578, -578, -578, 88, - -413, -578, -578, -578, -578 + -611, 457, 458, 463, -176, -171, -174, -611, 0, -15, + -146, 503, 11, -611, -611, -611, -611, 12, -611, -611, + -611, -143, -611, -441, -611, -238, -611, -611, -310, 22, + -611, -412, -611, -611, -26, 364, -123, -611, 488, 495, + 35, -161, -256, 242, 276, 361, -611, -611, 585, -611, + -611, -611, -611, -611, -611, -611, -611, -611, -611, -611, + 513, -611, -611, -611, -611, -611, -611, -610, -99, 127, + -179, -611, -611, 547, -611, -611, -611, -611, -611, 59, + 164, -440, -611, -611, -611, -611 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -2219,440 +2228,450 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -214 static const yytype_int16 yytable[] = { - 11, 82, 287, 357, 321, 275, 167, 522, 490, 411, - 13, 168, 286, 24, 286, 105, 91, 11, 518, 325, - 326, 327, 328, 329, 94, 498, 499, 13, 111, 335, - 111, 505, 376, 378, 317, 111, 510, 318, 478, 288, - 29, 30, 31, 32, 33, 34, 35, 36, 480, 37, - 2, 25, 109, 4, 111, 518, 659, 64, 65, 654, - 107, 67, 68, 69, 70, 71, 72, 73, 277, 1, - 2, 111, 3, 4, 5, 519, 136, 27, 144, 664, - 109, 479, -55, -55, -55, -55, 136, 145, 26, 135, - 336, 479, 153, 11, 361, 21, 363, 362, 144, 364, - 74, 451, 153, 246, 111, 247, 248, 239, 456, 569, - 22, 451, 133, 276, 236, 237, 608, 134, 240, 451, - 457, 614, 615, 111, 244, 430, 431, 432, 514, 112, - 433, 112, 119, 120, 434, 435, 112, 413, 455, 354, - 111, 428, 111, 28, 353, -145, 358, 359, 281, 604, - 169, 38, 39, 40, 44, 112, 551, 469, 60, 430, - 431, 432, 58, 95, 433, 635, 403, 655, 434, 435, - 337, 338, 112, 319, 320, 281, 322, 278, 106, 62, - 620, 451, 59, 657, 658, 549, 660, 661, 526, 323, + 11, 82, 287, 275, 357, 167, 105, 286, 286, 511, + 411, 13, 168, 376, 378, 111, 91, 11, 663, 277, + 519, 317, 321, 523, 94, 499, 500, 318, 13, 46, + 658, 47, 111, 111, 288, 478, 480, 325, 326, 327, + 328, 329, 21, 111, 519, 284, 24, 335, 111, 111, + 668, 285, 109, 84, 85, 246, 2, 22, 144, 4, + 89, -145, 25, 111, 520, 276, 90, 145, 29, 30, + 31, 32, 33, 34, 35, 36, 136, 37, 479, 479, + 109, 361, 144, 363, 26, 336, 136, 362, 559, 364, + 538, 239, 153, 11, 430, 431, 432, 358, 359, 433, + 111, 27, 153, 434, 435, 451, 451, 86, 111, 87, + 572, 44, 456, 527, 236, 237, 112, 28, 240, 455, + -67, 430, 431, 432, 244, 608, 433, 430, 431, 432, + 434, 435, 433, 112, 112, 612, 434, 435, 469, 58, + 618, 619, 1, 354, 112, 3, 62, 5, 281, 112, + 112, 169, 353, 408, -67, 413, 165, 624, 91, 428, + 639, 659, -145, 95, 112, 403, -145, 410, -67, 106, + 38, 39, 40, 319, 320, 281, 322, 339, 278, 38, + 39, 40, 397, 60, 243, 397, 397, 552, 397, 323, 281, 281, 281, 281, 281, 330, 331, 332, 333, 334, - 281, 46, 470, 47, 91, 112, 607, 165, 136, 671, - 672, 75, 76, 98, 426, 77, 99, 78, 484, 153, - 486, 487, 488, 585, 112, 586, 100, 408, -67, 102, - 397, 284, 339, 397, 397, 243, 397, 285, 86, 103, - 87, 112, 104, 112, 410, -67, -145, -67, 451, 87, - -145, 64, 65, 452, 107, 67, 68, 69, 70, 71, - 72, 73, 153, 1, 2, 140, 3, 4, 5, 1, - 141, 397, 3, 404, 5, 249, 250, 251, 252, 397, - 397, 397, 397, 397, 622, 574, 38, 39, 40, 148, - 405, 406, 407, 1, 74, 275, 3, 146, 5, 340, - 341, 64, 65, 116, 556, 117, 537, 166, 84, 85, - 153, 427, 281, 1, 2, 89, 3, 4, 5, 342, - 343, 90, 344, 345, 232, 346, 347, 348, 339, 430, - 431, 432, 234, 561, 433, 537, 149, 150, 434, 435, - 587, 114, 115, 590, 591, 592, 235, 238, -213, 454, - 241, 245, 397, 397, 397, 397, 397, 242, 464, 50, - 51, 52, 397, 616, 53, 617, -69, 1, 2, -56, - 3, 4, 5, 281, -57, 397, 397, 642, 6, 7, - -60, -59, 646, 122, 123, 124, 125, 126, 127, 281, - 485, 281, 281, 281, -58, 340, 341, 253, 111, 494, - 8, 279, 286, 276, 9, 75, 76, 355, 10, 77, - 356, 78, 108, 500, 365, 342, 343, 379, 344, 345, - 366, 346, 347, 348, 367, 399, 621, 397, 617, 397, - 414, 368, 397, 630, 369, 537, 370, 371, 380, 636, - 381, 397, 397, 382, 384, 415, 425, 439, 416, 417, - 418, 444, 445, 446, 447, 448, 449, 450, 419, 429, - 440, 441, 442, 656, 443, 544, 458, 459, 460, 300, - 301, 550, 461, 467, 471, 472, 397, 397, 489, 397, - 397, 397, 397, 491, 483, 492, 493, 397, 497, 506, - 507, 566, 508, 397, 509, 511, 515, 573, 513, 397, - 516, 517, 525, 579, 523, 527, 524, 528, 529, 530, - 531, 281, 532, 533, 281, 281, 281, 535, 537, 543, - 538, 579, 570, 540, 547, 541, 501, 502, 503, 504, - 400, 401, 542, 402, 548, 552, 553, 512, 397, 554, - 555, 567, 568, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 575, 563, 589, - 479, 600, 601, 397, 397, 602, 603, 605, 412, 611, - 606, 632, 623, 612, 624, 618, 420, 421, 422, 423, - 424, 613, 625, 397, 626, 634, 645, 647, 648, 649, - 650, 644, 557, 558, 559, 560, 651, 562, -18, 662, - 663, 564, 565, -19, 665, 668, 674, 669, 570, 397, - 397, 677, 675, 224, 397, 225, 226, 397, 131, 609, - 631, 351, 147, 397, 385, 386, 397, 143, 360, 45, - 387, 130, 97, 0, 0, 594, 0, 0, 596, 597, - 598, 599, 0, 0, 0, 0, 388, 389, 390, 473, - 474, 475, 476, 477, 0, 0, 0, 0, 0, 482, + 281, 112, 554, 661, 662, 451, 664, 665, 136, 112, + 611, 133, 59, 426, 457, 451, 134, 451, 98, 153, + 470, 102, 452, 397, 515, 588, 99, 589, 339, 675, + 676, 397, 397, 397, 397, 397, 484, 100, 486, 487, + 488, 50, 51, 52, 340, 341, 53, 249, 250, 251, + 252, -55, -55, -55, -55, 122, 123, 124, 125, 126, + 127, 116, 153, 117, 342, 343, 103, 344, 345, 104, + 346, 347, 348, 404, 247, 248, 1, 87, 564, 3, + 546, 5, 620, 140, 621, 64, 65, 577, 146, 626, + 405, 406, 407, 275, 141, 340, 341, 1, 2, 148, + 3, 4, 5, 166, 397, 397, 397, 397, 397, 232, + 153, 427, 281, 234, 397, 342, 343, 235, 344, 345, + 241, 346, 347, 348, 625, 238, 621, 397, 397, 64, + 65, 245, 107, 67, 68, 69, 70, 71, 72, 73, + 242, 1, 2, -56, 3, 4, 5, -57, 634, 454, + 546, 119, 120, 337, 338, 276, 149, 150, 464, 590, + 114, 115, 593, 594, 595, -60, -59, -58, 253, 111, + 279, 286, 74, 281, 355, 356, 365, 366, 367, 397, + 368, 397, 646, 369, 397, 370, 371, 650, 379, 281, + 485, 281, 281, 281, 397, 397, 399, 380, 414, 495, + 444, 445, 446, 447, 448, 449, 450, 381, 382, 384, + 425, 400, 401, 501, 402, 458, 459, 460, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 415, 397, + 397, 416, 397, 397, 397, 397, 417, 429, 418, 419, + 397, 439, 440, 640, 441, 442, 443, 467, 397, 412, + 461, 471, 472, 518, 397, 489, 483, 420, 421, 422, + 423, 424, 490, 492, 493, 494, 547, 660, 498, 507, + 508, 509, 553, 514, 510, 502, 503, 504, 505, 512, + 516, 526, 517, 75, 76, 524, 513, 77, 525, 78, + 108, 528, 569, 397, 529, 530, 531, 536, 576, 532, + 533, 534, 538, 539, 582, 541, 542, 543, 544, 545, + 546, 550, 281, 551, 570, 281, 281, 281, 566, 397, + 397, 555, 556, 573, 582, 571, 557, 558, 578, 592, + 473, 474, 475, 476, 477, 596, 479, 604, 605, 397, + 482, 606, 560, 561, 562, 563, 607, 565, 300, 301, + 609, 567, 568, 496, 497, 610, 615, 617, 616, 627, + 622, 628, 629, 630, 636, 397, 397, 638, 651, 652, + 397, 649, 654, 397, 653, 655, -18, -19, 666, 397, + 669, 667, 397, 672, 673, 679, 678, 681, 224, 225, + 600, 601, 602, 603, 226, 648, 131, 635, 351, 613, + 147, 143, 45, 130, 97, 535, 360, 537, 506, 598, + 540, 0, 573, 0, 0, 0, 0, 0, 0, 0, |