From 7d09ab6b88dcb5c4fbed8d70e012e1caf897717d Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 6 Nov 2005 06:34:34 +0000 Subject: [PATCH] regenerate git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24208 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/AsmParser/llvmAsmParser.cpp | 1595 +++++++++++++++---------------- 1 file changed, 775 insertions(+), 820 deletions(-) diff --git a/lib/AsmParser/llvmAsmParser.cpp b/lib/AsmParser/llvmAsmParser.cpp index 54ab7ee31c8..53e1447c202 100644 --- a/lib/AsmParser/llvmAsmParser.cpp +++ b/lib/AsmParser/llvmAsmParser.cpp @@ -1006,26 +1006,26 @@ typedef union { -#define YYFINAL 429 +#define YYFINAL 426 #define YYFLAG -32768 #define YYNTBASE 109 -#define YYTRANSLATE(x) ((unsigned)(x) <= 348 ? yytranslate[x] : 170) +#define YYTRANSLATE(x) ((unsigned)(x) <= 348 ? yytranslate[x] : 171) static const char yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 97, - 98, 106, 2, 107, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 102, - 95, 103, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 98, + 99, 107, 2, 96, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 103, + 95, 104, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 99, 96, 101, 2, 2, 2, 2, 2, 108, 2, + 100, 97, 102, 2, 2, 2, 2, 2, 108, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 100, - 2, 2, 104, 2, 105, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 101, + 2, 2, 105, 2, 106, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -1056,24 +1056,24 @@ static const short yyprhs[] = { 0, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 67, 68, 70, 72, 74, 76, 77, - 78, 80, 82, 84, 87, 89, 91, 93, 95, 97, - 99, 101, 103, 105, 107, 109, 111, 113, 115, 117, - 119, 121, 123, 125, 127, 129, 132, 137, 143, 149, - 153, 156, 159, 161, 165, 167, 171, 173, 174, 179, - 183, 187, 192, 197, 201, 204, 207, 210, 213, 216, - 219, 222, 225, 228, 231, 238, 244, 253, 260, 267, - 274, 281, 285, 287, 289, 291, 293, 296, 299, 302, - 304, 309, 312, 318, 324, 328, 333, 334, 336, 338, - 342, 346, 350, 354, 358, 360, 361, 363, 365, 367, - 368, 371, 375, 377, 379, 383, 385, 386, 393, 395, - 397, 401, 403, 405, 408, 409, 413, 415, 417, 419, - 421, 423, 425, 427, 431, 433, 435, 437, 439, 441, - 444, 447, 450, 454, 457, 458, 460, 463, 466, 470, - 480, 490, 499, 513, 515, 517, 524, 530, 533, 540, - 548, 550, 554, 556, 557, 560, 562, 568, 574, 580, - 583, 588, 593, 600, 605, 610, 615, 618, 626, 628, - 631, 632, 634, 635, 638, 644, 650, 659, 662, 668, - 674, 683, 686, 691, 698 + 78, 80, 82, 84, 87, 88, 92, 94, 96, 98, + 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, + 120, 122, 124, 126, 128, 130, 132, 134, 137, 142, + 148, 154, 158, 161, 164, 166, 170, 172, 176, 178, + 179, 184, 188, 192, 197, 202, 206, 209, 212, 215, + 218, 221, 224, 227, 230, 233, 236, 243, 249, 258, + 265, 272, 279, 286, 290, 292, 294, 296, 298, 301, + 304, 307, 309, 314, 317, 323, 329, 333, 338, 339, + 341, 343, 347, 351, 355, 359, 363, 365, 366, 368, + 370, 372, 373, 376, 380, 382, 384, 388, 390, 391, + 398, 400, 402, 406, 408, 410, 413, 414, 418, 420, + 422, 424, 426, 428, 430, 432, 436, 438, 440, 442, + 444, 446, 449, 452, 455, 459, 462, 463, 465, 468, + 471, 475, 485, 495, 504, 518, 520, 522, 529, 535, + 538, 545, 553, 555, 559, 561, 562, 565, 567, 573, + 579, 585, 588, 593, 598, 605, 610, 615, 620, 623, + 631, 633, 636, 637, 639, 640, 644, 651, 655, 662, + 665, 670, 677 }; static const short yyrhs[] = { 5, @@ -1083,71 +1083,69 @@ static const short yyrhs[] = { 5, 0, 79, 0, 80, 0, 90, 0, 91, 0, 16, 0, 14, 0, 12, 0, 10, 0, 17, 0, 15, 0, 13, 0, 11, 0, 115, 0, 116, 0, 18, - 0, 19, 0, 140, 95, 0, 0, 40, 0, 41, + 0, 19, 0, 141, 95, 0, 0, 40, 0, 41, 0, 42, 0, 43, 0, 0, 0, 58, 0, 59, - 0, 60, 0, 57, 4, 0, 124, 0, 8, 0, - 126, 0, 8, 0, 126, 0, 9, 0, 10, 0, - 11, 0, 12, 0, 13, 0, 14, 0, 15, 0, - 16, 0, 17, 0, 18, 0, 19, 0, 20, 0, - 21, 0, 44, 0, 125, 0, 153, 0, 96, 4, - 0, 123, 97, 128, 98, 0, 99, 4, 100, 126, - 101, 0, 102, 4, 100, 126, 103, 0, 104, 127, - 105, 0, 104, 105, 0, 126, 106, 0, 126, 0, - 127, 107, 126, 0, 127, 0, 127, 107, 36, 0, - 36, 0, 0, 124, 99, 131, 101, 0, 124, 99, - 101, 0, 124, 108, 24, 0, 124, 102, 131, 103, - 0, 124, 104, 131, 105, 0, 124, 104, 105, 0, - 124, 37, 0, 124, 38, 0, 124, 153, 0, 124, - 130, 0, 124, 26, 0, 115, 110, 0, 116, 4, - 0, 9, 27, 0, 9, 28, 0, 118, 7, 0, - 88, 97, 129, 35, 124, 98, 0, 86, 97, 129, - 167, 98, 0, 89, 97, 129, 107, 129, 107, 129, - 98, 0, 111, 97, 129, 107, 129, 98, 0, 112, - 97, 129, 107, 129, 98, 0, 113, 97, 129, 107, - 129, 98, 0, 114, 97, 129, 107, 129, 98, 0, - 131, 107, 129, 0, 129, 0, 32, 0, 33, 0, - 134, 0, 134, 149, 0, 134, 150, 0, 134, 25, - 0, 135, 0, 135, 119, 20, 122, 0, 135, 150, - 0, 135, 119, 120, 132, 129, 0, 135, 119, 46, - 132, 124, 0, 135, 47, 137, 0, 135, 54, 95, - 138, 0, 0, 52, 0, 51, 0, 49, 95, 136, - 0, 50, 95, 4, 0, 48, 95, 24, 0, 99, - 139, 101, 0, 139, 107, 24, 0, 24, 0, 0, - 22, 0, 24, 0, 140, 0, 0, 124, 141, 0, - 143, 107, 142, 0, 142, 0, 143, 0, 143, 107, - 36, 0, 36, 0, 0, 121, 122, 140, 97, 144, - 98, 0, 29, 0, 104, 0, 120, 145, 146, 0, - 30, 0, 105, 0, 156, 148, 0, 0, 31, 151, - 145, 0, 3, 0, 4, 0, 7, 0, 27, 0, - 28, 0, 37, 0, 38, 0, 102, 131, 103, 0, - 130, 0, 109, 0, 140, 0, 153, 0, 152, 0, - 124, 154, 0, 156, 157, 0, 147, 157, 0, 158, - 119, 159, 0, 158, 161, 0, 0, 23, 0, 61, - 155, 0, 61, 8, 0, 62, 21, 154, 0, 62, - 9, 154, 107, 21, 154, 107, 21, 154, 0, 63, - 117, 154, 107, 21, 154, 99, 160, 101, 0, 63, - 117, 154, 107, 21, 154, 99, 101, 0, 64, 121, - 122, 154, 97, 164, 98, 35, 21, 154, 65, 21, - 154, 0, 65, 0, 66, 0, 160, 117, 152, 107, - 21, 154, 0, 117, 152, 107, 21, 154, 0, 119, - 166, 0, 124, 99, 154, 107, 154, 101, 0, 162, - 107, 99, 154, 107, 154, 101, 0, 155, 0, 163, - 107, 155, 0, 163, 0, 0, 56, 55, 0, 55, - 0, 111, 124, 154, 107, 154, 0, 112, 124, 154, - 107, 154, 0, 113, 124, 154, 107, 154, 0, 45, - 155, 0, 114, 155, 107, 155, 0, 88, 155, 35, - 124, 0, 89, 155, 107, 155, 107, 155, 0, 92, - 155, 107, 124, 0, 93, 155, 107, 124, 0, 94, - 155, 107, 124, 0, 87, 162, 0, 165, 121, 122, - 154, 97, 164, 98, 0, 169, 0, 107, 163, 0, - 0, 34, 0, 0, 81, 124, 0, 81, 124, 107, - 53, 4, 0, 81, 124, 107, 15, 154, 0, 81, - 124, 107, 15, 154, 107, 53, 4, 0, 82, 124, - 0, 82, 124, 107, 53, 4, 0, 82, 124, 107, - 15, 154, 0, 82, 124, 107, 15, 154, 107, 53, - 4, 0, 83, 155, 0, 168, 84, 124, 154, 0, - 168, 85, 155, 107, 124, 154, 0, 86, 124, 154, - 167, 0 + 0, 60, 0, 57, 4, 0, 0, 96, 53, 4, + 0, 125, 0, 8, 0, 127, 0, 8, 0, 127, + 0, 9, 0, 10, 0, 11, 0, 12, 0, 13, + 0, 14, 0, 15, 0, 16, 0, 17, 0, 18, + 0, 19, 0, 20, 0, 21, 0, 44, 0, 126, + 0, 154, 0, 97, 4, 0, 124, 98, 129, 99, + 0, 100, 4, 101, 127, 102, 0, 103, 4, 101, + 127, 104, 0, 105, 128, 106, 0, 105, 106, 0, + 127, 107, 0, 127, 0, 128, 96, 127, 0, 128, + 0, 128, 96, 36, 0, 36, 0, 0, 125, 100, + 132, 102, 0, 125, 100, 102, 0, 125, 108, 24, + 0, 125, 103, 132, 104, 0, 125, 105, 132, 106, + 0, 125, 105, 106, 0, 125, 37, 0, 125, 38, + 0, 125, 154, 0, 125, 131, 0, 125, 26, 0, + 115, 110, 0, 116, 4, 0, 9, 27, 0, 9, + 28, 0, 118, 7, 0, 88, 98, 130, 35, 125, + 99, 0, 86, 98, 130, 168, 99, 0, 89, 98, + 130, 96, 130, 96, 130, 99, 0, 111, 98, 130, + 96, 130, 99, 0, 112, 98, 130, 96, 130, 99, + 0, 113, 98, 130, 96, 130, 99, 0, 114, 98, + 130, 96, 130, 99, 0, 132, 96, 130, 0, 130, + 0, 32, 0, 33, 0, 135, 0, 135, 150, 0, + 135, 151, 0, 135, 25, 0, 136, 0, 136, 119, + 20, 123, 0, 136, 151, 0, 136, 119, 120, 133, + 130, 0, 136, 119, 46, 133, 125, 0, 136, 47, + 138, 0, 136, 54, 95, 139, 0, 0, 52, 0, + 51, 0, 49, 95, 137, 0, 50, 95, 4, 0, + 48, 95, 24, 0, 100, 140, 102, 0, 140, 96, + 24, 0, 24, 0, 0, 22, 0, 24, 0, 141, + 0, 0, 125, 142, 0, 144, 96, 143, 0, 143, + 0, 144, 0, 144, 96, 36, 0, 36, 0, 0, + 121, 123, 141, 98, 145, 99, 0, 29, 0, 105, + 0, 120, 146, 147, 0, 30, 0, 106, 0, 157, + 149, 0, 0, 31, 152, 146, 0, 3, 0, 4, + 0, 7, 0, 27, 0, 28, 0, 37, 0, 38, + 0, 103, 132, 104, 0, 131, 0, 109, 0, 141, + 0, 154, 0, 153, 0, 125, 155, 0, 157, 158, + 0, 148, 158, 0, 159, 119, 160, 0, 159, 162, + 0, 0, 23, 0, 61, 156, 0, 61, 8, 0, + 62, 21, 155, 0, 62, 9, 155, 96, 21, 155, + 96, 21, 155, 0, 63, 117, 155, 96, 21, 155, + 100, 161, 102, 0, 63, 117, 155, 96, 21, 155, + 100, 102, 0, 64, 121, 123, 155, 98, 165, 99, + 35, 21, 155, 65, 21, 155, 0, 65, 0, 66, + 0, 161, 117, 153, 96, 21, 155, 0, 117, 153, + 96, 21, 155, 0, 119, 167, 0, 125, 100, 155, + 96, 155, 102, 0, 163, 96, 100, 155, 96, 155, + 102, 0, 156, 0, 164, 96, 156, 0, 164, 0, + 0, 56, 55, 0, 55, 0, 111, 125, 155, 96, + 155, 0, 112, 125, 155, 96, 155, 0, 113, 125, + 155, 96, 155, 0, 45, 156, 0, 114, 156, 96, + 156, 0, 88, 156, 35, 125, 0, 89, 156, 96, + 156, 96, 156, 0, 92, 156, 96, 125, 0, 93, + 156, 96, 125, 0, 94, 156, 96, 125, 0, 87, + 163, 0, 166, 121, 123, 155, 98, 165, 99, 0, + 170, 0, 96, 164, 0, 0, 34, 0, 0, 81, + 125, 122, 0, 81, 125, 96, 15, 155, 122, 0, + 82, 125, 122, 0, 82, 125, 96, 15, 155, 122, + 0, 83, 156, 0, 169, 84, 125, 155, 0, 169, + 85, 156, 96, 125, 155, 0, 86, 125, 155, 168, + 0 }; #endif @@ -1158,24 +1156,24 @@ static const short yyrline[] = { 0, 1002, 1002, 1003, 1003, 1003, 1003, 1003, 1003, 1005, 1005, 1009, 1009, 1009, 1009, 1010, 1010, 1010, 1010, 1011, 1011, 1012, 1012, 1015, 1018, 1022, 1022, 1023, 1024, 1025, 1028, - 1028, 1029, 1030, 1031, 1045, 1045, 1046, 1046, 1048, 1057, - 1057, 1057, 1057, 1057, 1057, 1057, 1058, 1058, 1058, 1058, - 1058, 1058, 1059, 1062, 1065, 1071, 1078, 1090, 1094, 1105, - 1114, 1117, 1125, 1129, 1134, 1135, 1138, 1141, 1151, 1176, - 1189, 1217, 1242, 1262, 1274, 1283, 1287, 1346, 1352, 1360, - 1365, 1370, 1373, 1376, 1383, 1393, 1424, 1431, 1452, 1459, - 1464, 1474, 1477, 1484, 1484, 1494, 1501, 1505, 1508, 1511, - 1524, 1544, 1546, 1550, 1554, 1556, 1558, 1563, 1564, 1566, - 1569, 1577, 1582, 1584, 1588, 1592, 1600, 1600, 1601, 1601, - 1603, 1609, 1614, 1620, 1623, 1628, 1632, 1636, 1716, 1716, - 1718, 1726, 1726, 1728, 1732, 1732, 1741, 1744, 1747, 1750, - 1753, 1756, 1759, 1762, 1786, 1793, 1796, 1801, 1801, 1807, - 1811, 1814, 1822, 1831, 1835, 1845, 1856, 1859, 1862, 1865, - 1868, 1882, 1886, 1939, 1942, 1948, 1956, 1966, 1973, 1978, - 1985, 1989, 1995, 1995, 1997, 2000, 2006, 2018, 2026, 2036, - 2048, 2055, 2062, 2069, 2074, 2093, 2115, 2129, 2186, 2192, - 2194, 2198, 2201, 2207, 2211, 2218, 2222, 2229, 2233, 2240, - 2244, 2251, 2258, 2268, 2281 + 1028, 1029, 1030, 1031, 1040, 1040, 1050, 1050, 1051, 1051, + 1053, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1063, 1063, + 1063, 1063, 1063, 1063, 1064, 1067, 1070, 1076, 1083, 1095, + 1099, 1110, 1119, 1122, 1130, 1134, 1139, 1140, 1143, 1146, + 1156, 1181, 1194, 1222, 1247, 1267, 1279, 1288, 1292, 1351, + 1357, 1365, 1370, 1375, 1378, 1381, 1388, 1398, 1429, 1436, + 1457, 1464, 1469, 1479, 1482, 1489, 1489, 1499, 1506, 1510, + 1513, 1516, 1529, 1549, 1551, 1555, 1559, 1561, 1563, 1568, + 1569, 1571, 1574, 1582, 1587, 1589, 1593, 1597, 1605, 1605, + 1606, 1606, 1608, 1614, 1619, 1625, 1628, 1633, 1637, 1641, + 1721, 1721, 1723, 1731, 1731, 1733, 1737, 1737, 1746, 1749, + 1752, 1755, 1758, 1761, 1764, 1767, 1791, 1798, 1801, 1806, + 1806, 1812, 1816, 1819, 1827, 1836, 1840, 1850, 1861, 1864, + 1867, 1870, 1873, 1887, 1891, 1944, 1947, 1953, 1961, 1971, + 1978, 1983, 1990, 1994, 2000, 2000, 2002, 2005, 2011, 2023, + 2031, 2041, 2053, 2060, 2067, 2074, 2079, 2098, 2120, 2134, + 2191, 2197, 2199, 2203, 2206, 2212, 2219, 2226, 2233, 2240, + 2247, 2257, 2270 }; #endif @@ -1193,17 +1191,18 @@ static const char * const yytname[] = { "$","error","$undefined.","ESINT64VAL" "SWITCH","INVOKE","UNWIND","UNREACHABLE","ADD","SUB","MUL","DIV","REM","AND", "OR","XOR","SETLE","SETGE","SETLT","SETGT","SETEQ","SETNE","MALLOC","ALLOCA", "FREE","LOAD","STORE","GETELEMENTPTR","PHI_TOK","CAST","SELECT","SHL","SHR", -"VAARG","VAARG_old","VANEXT_old","'='","'\\\\'","'('","')'","'['","'x'","']'", -"'<'","'>'","'{'","'}'","'*'","','","'c'","INTVAL","EINT64VAL","ArithmeticOps", +"VAARG","VAARG_old","VANEXT_old","'='","','","'\\\\'","'('","')'","'['","'x'", +"']'","'<'","'>'","'{'","'}'","'*'","'c'","INTVAL","EINT64VAL","ArithmeticOps", "LogicalOps","SetCondOps","ShiftOps","SIntType","UIntType","IntType","FPType", -"OptAssign","OptLinkage","OptCallingConv","TypesV","UpRTypesV","Types","PrimType", -"UpRTypes","TypeListI","ArgTypeListI","ConstVal","ConstExpr","ConstVector","GlobalType", -"Module","FunctionList","ConstPool","BigOrLittle","TargetDefinition","LibrariesDefinition", -"LibList","Name","OptName","ArgVal","ArgListH","ArgList","FunctionHeaderH","BEGIN", -"FunctionHeader","END","Function","FunctionProto","@1","ConstValueRef","SymbolicValueRef", -"ValueRef","ResolvedVal","BasicBlockList","BasicBlock","InstructionList","BBTerminatorInst", -"JumpTable","Inst","PHIList","ValueRefList","ValueRefListE","OptTailCall","InstVal", -"IndexList","OptVolatile","MemoryInst", NULL +"OptAssign","OptLinkage","OptCallingConv","OptCAlign","TypesV","UpRTypesV","Types", +"PrimType","UpRTypes","TypeListI","ArgTypeListI","ConstVal","ConstExpr","ConstVector", +"GlobalType","Module","FunctionList","ConstPool","BigOrLittle","TargetDefinition", +"LibrariesDefinition","LibList","Name","OptName","ArgVal","ArgListH","ArgList", +"FunctionHeaderH","BEGIN","FunctionHeader","END","Function","FunctionProto", +"@1","ConstValueRef","SymbolicValueRef","ValueRef","ResolvedVal","BasicBlockList", +"BasicBlock","InstructionList","BBTerminatorInst","JumpTable","Inst","PHIList", +"ValueRefList","ValueRefListE","OptTailCall","InstVal","IndexList","OptVolatile", +"MemoryInst", NULL }; #endif @@ -1212,24 +1211,24 @@ static const short yyr1[] = { 0, 112, 112, 113, 113, 113, 113, 113, 113, 114, 114, 115, 115, 115, 115, 116, 116, 116, 116, 117, 117, 118, 118, 119, 119, 120, 120, 120, 120, 120, 121, - 121, 121, 121, 121, 122, 122, 123, 123, 124, 125, - 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, - 125, 125, 126, 126, 126, 126, 126, 126, 126, 126, - 126, 126, 127, 127, 128, 128, 128, 128, 129, 129, - 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, - 129, 129, 129, 129, 130, 130, 130, 130, 130, 130, - 130, 131, 131, 132, 132, 133, 134, 134, 134, 134, - 135, 135, 135, 135, 135, 135, 135, 136, 136, 137, - 137, 137, 138, 139, 139, 139, 140, 140, 141, 141, - 142, 143, 143, 144, 144, 144, 144, 145, 146, 146, - 147, 148, 148, 149, 151, 150, 152, 152, 152, 152, - 152, 152, 152, 152, 152, 153, 153, 154, 154, 155, - 156, 156, 157, 158, 158, 158, 159, 159, 159, 159, - 159, 159, 159, 159, 159, 160, 160, 161, 162, 162, - 163, 163, 164, 164, 165, 165, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 166, 166, 167, - 167, 168, 168, 169, 169, 169, 169, 169, 169, 169, - 169, 169, 169, 169, 169 + 121, 121, 121, 121, 122, 122, 123, 123, 124, 124, + 125, 126, 126, 126, 126, 126, 126, 126, 126, 126, + 126, 126, 126, 126, 127, 127, 127, 127, 127, 127, + 127, 127, 127, 127, 128, 128, 129, 129, 129, 129, + 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, + 130, 130, 130, 130, 130, 130, 131, 131, 131, 131, + 131, 131, 131, 132, 132, 133, 133, 134, 135, 135, + 135, 135, 136, 136, 136, 136, 136, 136, 136, 137, + 137, 138, 138, 138, 139, 140, 140, 140, 141, 141, + 142, 142, 143, 144, 144, 145, 145, 145, 145, 146, + 147, 147, 148, 149, 149, 150, 152, 151, 153, 153, + 153, 153, 153, 153, 153, 153, 153, 154, 154, 155, + 155, 156, 157, 157, 158, 159, 159, 159, 160, 160, + 160, 160, 160, 160, 160, 160, 160, 161, 161, 162, + 163, 163, 164, 164, 165, 165, 166, 166, 167, 167, + 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, + 167, 168, 168, 169, 169, 170, 170, 170, 170, 170, + 170, 170, 170 }; static const short yyr2[] = { 0, @@ -1237,412 +1236,388 @@ static const short yyr2[] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 0, 1, 1, 1, 1, 0, 0, - 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 2, 0, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 2, 4, 5, 5, 3, - 2, 2, 1, 3, 1, 3, 1, 0, 4, 3, - 3, 4, 4, 3, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 6, 5, 8, 6, 6, 6, - 6, 3, 1, 1, 1, 1, 2, 2, 2, 1, - 4, 2, 5, 5, 3, 4, 0, 1, 1, 3, - 3, 3, 3, 3, 1, 0, 1, 1, 1, 0, - 2, 3, 1, 1, 3, 1, 0, 6, 1, 1, - 3, 1, 1, 2, 0, 3, 1, 1, 1, 1, - 1, 1, 1, 3, 1, 1, 1, 1, 1, 2, - 2, 2, 3, 2, 0, 1, 2, 2, 3, 9, - 9, 8, 13, 1, 1, 6, 5, 2, 6, 7, - 1, 3, 1, 0, 2, 1, 5, 5, 5, 2, - 4, 4, 6, 4, 4, 4, 2, 7, 1, 2, - 0, 1, 0, 2, 5, 5, 8, 2, 5, 5, - 8, 2, 4, 6, 4 + 1, 1, 1, 1, 1, 1, 1, 2, 4, 5, + 5, 3, 2, 2, 1, 3, 1, 3, 1, 0, + 4, 3, 3, 4, 4, 3, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 6, 5, 8, 6, + 6, 6, 6, 3, 1, 1, 1, 1, 2, 2, + 2, 1, 4, 2, 5, 5, 3, 4, 0, 1, + 1, 3, 3, 3, 3, 3, 1, 0, 1, 1, + 1, 0, 2, 3, 1, 1, 3, 1, 0, 6, + 1, 1, 3, 1, 1, 2, 0, 3, 1, 1, + 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, + 1, 2, 2, 2, 3, 2, 0, 1, 2, 2, + 3, 9, 9, 8, 13, 1, 1, 6, 5, 2, + 6, 7, 1, 3, 1, 0, 2, 1, 5, 5, + 5, 2, 4, 4, 6, 4, 4, 4, 2, 7, + 1, 2, 0, 1, 0, 3, 6, 3, 6, 2, + 4, 6, 4 }; -static const short yydefact[] = { 117, - 39, 110, 109, 145, 35, 36, 37, 38, 40, 165, - 107, 108, 165, 127, 128, 0, 0, 39, 0, 112, - 40, 0, 41, 42, 43, 0, 0, 166, 162, 34, - 142, 143, 144, 161, 0, 0, 0, 115, 0, 0, - 0, 0, 33, 146, 44, 1, 2, 46, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 0, 0, 0, 0, 156, 0, 0, 45, - 64, 49, 157, 65, 139, 140, 141, 203, 164, 0, - 0, 0, 126, 116, 111, 104, 105, 0, 0, 66, - 0, 0, 48, 71, 73, 0, 0, 78, 72, 202, - 0, 186, 0, 0, 0, 0, 40, 174, 175, 5, +static const short yydefact[] = { 119, + 39, 112, 111, 147, 35, 36, 37, 38, 40, 167, + 109, 110, 167, 129, 130, 0, 0, 39, 0, 114, + 40, 0, 41, 42, 43, 0, 0, 168, 164, 34, + 144, 145, 146, 163, 0, 0, 0, 117, 0, 0, + 0, 0, 33, 148, 44, 1, 2, 48, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 0, 0, 0, 0, 158, 0, 0, 47, + 66, 51, 159, 67, 141, 142, 143, 205, 166, 0, + 0, 0, 128, 118, 113, 106, 107, 0, 0, 68, + 0, 0, 50, 73, 75, 0, 0, 80, 74, 204, + 0, 188, 0, 0, 0, 0, 40, 176, 177, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 0, 0, 0, 0, 0, 0, 0, - 19, 20, 0, 0, 0, 0, 0, 0, 0, 163, - 40, 178, 0, 199, 122, 119, 118, 120, 121, 125, - 0, 114, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 0, 0, 0, 0, 113, 0, 0, - 70, 0, 137, 77, 75, 0, 0, 190, 185, 168, - 167, 0, 0, 24, 28, 23, 27, 22, 26, 21, - 25, 29, 30, 0, 0, 204, 208, 212, 0, 0, - 197, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 123, 0, 92, 93, 3, 4, 90, - 91, 94, 89, 85, 86, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 88, 87, 47, 47, - 74, 136, 130, 133, 134, 0, 0, 67, 147, 148, - 149, 150, 151, 152, 153, 0, 155, 159, 158, 160, - 0, 169, 0, 0, 0, 0, 201, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 124, 0, 0, 0, 80, 103, 0, 0, 84, - 0, 81, 0, 0, 0, 0, 68, 69, 129, 131, - 0, 138, 76, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 215, 0, 0, 192, 0, 194, 195, 196, - 0, 0, 0, 191, 0, 213, 0, 201, 0, 0, - 79, 0, 82, 83, 0, 0, 0, 0, 135, 132, - 154, 0, 0, 184, 206, 205, 210, 209, 181, 200, - 0, 0, 0, 187, 188, 189, 184, 0, 0, 0, - 0, 102, 0, 0, 0, 0, 0, 0, 183, 0, - 0, 0, 0, 0, 0, 193, 0, 214, 96, 0, + 19, 20, 0, 0, 0, 0, 0, 0, 0, 165, + 40, 180, 0, 201, 124, 121, 120, 122, 123, 127, + 0, 116, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 0, 0, 0, 0, 115, 0, 0, + 0, 72, 139, 79, 77, 0, 0, 192, 187, 170, + 169, 0, 0, 24, 28, 23, 27, 22, 26, 21, + 25, 29, 30, 0, 0, 45, 45, 210, 0, 0, + 199, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 125, 94, 95, 3, 4, 92, + 93, 96, 91, 87, 88, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 90, 89, 49, 49, + 76, 138, 132, 135, 136, 0, 0, 69, 149, 150, + 151, 152, 153, 154, 155, 0, 157, 161, 160, 162, + 0, 171, 0, 0, 0, 206, 0, 208, 203, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 182, 179, 0, 198, 95, 0, 98, 99, 100, 101, - 0, 172, 0, 0, 0, 207, 211, 180, 0, 170, - 0, 171, 0, 0, 97, 0, 0, 0, 0, 0, - 0, 177, 0, 0, 176, 173, 0, 0, 0 + 0, 0, 0, 126, 0, 0, 0, 82, 105, 0, + 0, 86, 0, 83, 0, 0, 0, 0, 70, 71, + 131, 133, 0, 140, 78, 0, 0, 0, 0, 0, + 0, 0, 0, 213, 0, 0, 194, 0, 196, 197, + 198, 0, 0, 0, 193, 0, 211, 0, 203, 0, + 0, 0, 81, 84, 85, 0, 0, 0, 0, 137, + 134, 156, 0, 0, 186, 45, 46, 45, 183, 202, + 0, 0, 0, 189, 190, 191, 186, 0, 0, 0, + 0, 104, 0, 0, 0, 0, 0, 0, 185, 0, + 0, 207, 209, 0, 0, 0, 195, 0, 212, 98, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 184, + 181, 0, 200, 97, 0, 100, 101, 102, 103, 0, + 174, 0, 0, 0, 182, 0, 172, 0, 173, 0, + 0, 99, 0, 0, 0, 0, 0, 0, 179, 0, + 0, 178, 175, 0, 0, 0 }; static const short yydefgoto[] = { 67, 220, 233, 234, 235, 236, 164, 165, 194, 166, 18, - 9, 26, 68, 69, 167, 71, 72, 96, 176, 287, - 257, 288, 88, 427, 1, 2, 148, 38, 84, 151, - 73, 300, 244, 245, 246, 27, 77, 10, 33, 11, - 12, 21, 258, 74, 260, 349, 13, 29, 30, 140, - 404, 79, 201, 369, 370, 141, 142, 313, 143, 144 + 9, 26, 266, 68, 69, 167, 71, 72, 96, 176, + 289, 257, 290, 88, 424, 1, 2, 148, 38, 84, + 151, 73, 302, 244, 245, 246, 27, 77, 10, 33, + 11, 12, 21, 258, 74, 260, 349, 13, 29, 30, + 140, 403, 79, 201, 369, 370, 141, 142, 314, 143, + 144 }; static const short yypact[] = {-32768, - 40, 341,-32768,-32768,-32768,-32768,-32768,-32768, 62, 12, --32768,-32768, -20,-32768,-32768, 110, -67, 48, -50,-32768, - 62, 65,-32768,-32768,-32768, 1073, -18,-32768,-32768, 71, --32768,-32768,-32768,-32768, -19, -8, 2,-32768, -15, 1073, - 31, 31,-32768,-32768,-32768,-32768,-32768, 8,-32768,-32768, + 15, 304,-32768,-32768,-32768,-32768,-32768,-32768, 104, -16, +-32768,-32768, -13,-32768,-32768, -27, -69, 23, -57,-32768, + 104, 88,-32768,-32768,-32768, 954, -18,-32768,-32768, 50, +-32768,-32768,-32768,-32768, -34, -22, 10,-32768, -5, 954, + 58, 58,-32768,-32768,-32768,-32768,-32768, 17,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768, 123, 152, 163, 120,-32768, 71, 17,-32768, --32768, -36,-32768,-32768,-32768,-32768,-32768, 1228,-32768, 148, - 72, 170, 164,-32768,-32768,-32768,-32768, 1136, 1173,-32768, - 89, 90,-32768,-32768, -36, 58, 94, 835,-32768,-32768, - 1136,-32768, 137, 1236, 27, 138, 62,-32768,-32768,-32768, +-32768,-32768, 126, 142, 148, 531,-32768, 50, 61,-32768, +-32768, -30,-32768,-32768,-32768,-32768,-32768, 1111,-32768, 150, + 66, 166, 153,-32768,-32768,-32768,-32768, 991, 1028,-32768, + 74, 77,-32768,-32768, -30, -36, 81, 769,-32768,-32768, + 991,-32768, 125, 1065, 3, 123, 104,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768, 1136, 1136, 1136, 1136, 1136, 1136, 1136, --32768,-32768, 1136, 1136, 1136, 1136, 1136, 1136, 1136,-32768, - 62,-32768, 77,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -35,-32768, 118, 167, 190, 173, 191, 175, 192, 177, - 193, 196, 197, 180, 194, 198, 519,-32768, 1136, 1136, --32768, 1136, 872,-32768, 92, 108, 662,-32768,-32768, 8, --32768, 662, 662,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768, 662, 1073, 100, 101,-32768, 662, 115, - 102, 182, 111, 113, 114, 119, 662, 662, 662, 121, - 1073, 1136, 1136,-32768, 203,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 132, 133, 134, 935, 1173, - 620, 208, 139, 140, 143, 144,-32768,-32768, -74, -29, - -36,-32768, 71,-32768, 127, 117, 972,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 1173,-32768,-32768,-32768,-32768, - 128,-32768, 136, 662, -6, -2, 146, 662, 155, 1136, - 1136, 1136, 1136, 1136, 149, 151, 153, 1136, 662, 662, - 154,-32768, 1173, 1173, 1173,-32768,-32768, -28, -57,-32768, - 61,-32768, 1173, 1173, 1173, 1173,-32768,-32768,-32768,-32768, - 1036,-32768,-32768, -11, 230, 238, 165, 662, 262, 662, - 263, 1136,-32768, 162, 662,-32768, 166,-32768,-32768,-32768, - 662, 662, 662,-32768, 171,-32768, 1136, 146, 235, 169, --32768, 1173,-32768,-32768, 172, 183, 184, 185,-32768,-32768, --32768, 662, 662, 1136, 186,-32768, 187,-32768,-32768, 188, - 662, 189, 1136,-32768,-32768,-32768, 1136, 662, 174, 1136, - 1173,-32768, 1173, 1173, 1173, 1173, 199, 200, 188, 176, - 218, 231, 1136, 202, 662,-32768, 206,-32768,-32768, 209, - 201, 211, 212, 213, 214, 266, 5, 254, 293, 294, --32768,-32768, 215,-32768,-32768, 1173,-32768,-32768,-32768,-32768, - 662,-32768, 740, 42, 279,-32768,-32768,-32768, 216,-32768, - 210,-32768, 740, 662,-32768, 298, 219, 250, 662, 300, - 301,-32768, 662, 662,-32768,-32768, 323, 325,-32768 +-32768,-32768,-32768, 991, 991, 991, 991, 991, 991, 991, +-32768,-32768, 991, 991, 991, 991, 991, 991, 991,-32768, + 104,-32768, 57,-32768,-32768,-32768,-32768,-32768,-32768,-32768, + -8,-32768, 117, 146, 177, 151, 178, 162, 179, 164, + 180, 182, 183, 169, 187, 185, 407,-32768, 991, 991, + 991,-32768, 806,-32768, 97, 95, 595,-32768,-32768, 17, +-32768, 595, 595,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768, 595, 954, 100, 101,-32768, 595, 98, + 103, 165, 106, 107, 111, 112, 595, 595, 595, 113, + 954, 991, 991, 186,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768, 120, 122, 124, 843, 1028, + 552, 188, 127, 128, 129, 130,-32768,-32768, -31, -65, + -30,-32768, 50,-32768, 115, 133, 880,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768, 1028,-32768,-32768,-32768,-32768, + 137,-32768, 138, 595, -6,-32768, -2,-32768, 139, 595, + 121, 991, 991, 991, 991, 991, 140, 141, 143, 991, + 595, 595, 144,-32768, 1028, 1028, 1028,-32768,-32768, 18, + -7,-32768, 0,-32768, 1028, 1028, 1028, 1028,-32768,-32768, +-32768,-32768, 917,-32768,-32768, 25, 202, 203, 131, 595, + 234, 595, 991,-32768, 145, 595,-32768, 147,-32768,-32768, +-32768, 595, 595, 595,-32768, 154,-32768, 991, 139, 209, + 149, 1028,-32768,-32768,-32768, 157, 159, 160, 161,-32768, +-32768,-32768, 595, 595, 991, 167,-32768, 167,-32768, 168, + 595, 170, 991,-32768,-32768,-32768, 991, 595, 163, 991, + 1028,-32768, 1028, 1028, 1028, 1028, 171, 158, 168, 175, + 207,-32768,-32768, 991, 173, 595,-32768, 191,-32768,-32768, + 192, 174, 195, 196, 199, 200, 248, 20, 241,-32768, +-32768, 176,-32768,-32768, 1028,-32768,-32768,-32768,-32768, 595, +-32768, 673, 69, 258,-32768, 205,-32768, 210,-32768, 673, + 595,-32768, 260, 213, 240, 595, 289, 290,-32768, 595, + 595,-32768,-32768, 312, 315,-32768 }; static const short yypgoto[] = {-32768, --32768, 251, 252, 255, 259, -102, -99, -362,-32768, 302, - 310, -81, -38,-32768, -26,-32768, -54, 240,-32768, -83, - 178, -207, 297,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -1,-32768, 39,-32768,-32768, 320,-32768,-32768,-32768,-32768, - 340,-32768, -372, 56, 161, -96,-32768, 333,-32768,-32768, --32768,-32768,-32768, 36, -7,-32768,-32768, 21,-32768,-32768 +-32768, 238, 239, 242, 251, -102, -100, -385,-32768, 288, + 314, -82, -195, -35,-32768, -26,-32768, -46, 232,-32768, + -81, 172, -203, 291,-32768,-32768,-32768,-32768,-32768,-32768, +-32768, -1,-32768, 35,-32768,-32768, 319,-32768,-32768,-32768, +-32768, 339,-32768, -283, -51, 114, -85,-32768, 329,-32768, +-32768,-32768,-32768,-32768, 30, -4,-32768,-32768, 26,-32768, +-32768 }; -#define YYLAST 1340 +#define YYLAST 1205 static const short yytable[] = { 70, - 19, 85, 28, 192, 178, 168, 193, 181, 308, 31, - 75, 95, 310, 70, 184, 185, 186, 187, 188, 189, - 190, 191, 289, 291, 403, 195, 297, 39, 19, 198, - 411, 99, 202, 203, 28, 182, 204, 205, 206, -106, - 417, 413, 210, 95, 43, 333, 309, 183, 304, 332, - 311, 184, 185, 186, 187, 188, 189, 190, 191, 211, - -47, 152, 86, 87, 3, 214, 97, 40, 45, 99, - 4, 215, 331, 298, 177, 80, 99, 177, 332, 5, - 6, 7, 8, 83, 32, 76, 81, 5, 6, 7, - 8, 341, 14, 41, 15, 332, 82, 196, 197, 177, - 199, 200, 177, 177, -48, 402, 177, 177, 177, 207, - 208, 209, 177, 98, 239, 240, 281, 241, 22, 23, - 24, 25, 146, 147, 46, 47, 90, 93, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 14, 412, 15, 216, 217, 243, 184, 185, 186, - 187, 188, 189, 190, 191, 91, 264, 35, 36, 37, - 212, 213, 171, 62, 172, 334, 92, 332, 70, -24, - -24, 145, 279, 149, 317, -23, -23, -22, -22, -21, - -21, 324, 218, 219, 70, 280, 177, 150, 169, 170, - 173, 179, 241, -28, -27, -26, -25, 221, 247, 328, - 329, 330, -31, -32, 222, 248, 265, 266, 269, 335, - 336, 337, 338, 268, 302, 63, 270, 271, 64, 272, - 273, 65, 238, 66, 94, 274, 282, 278, 283, 284, - 285, 292, 259, 301, 305, 293, 294, 259, 259, 295, - 296, 299, 306, 316, 177, 318, 319, 320, 362, 259, - 342, 177, 312, 315, 259, 321, 376, 322, 343, 323, - 327, 344, 259, 259, 259, 346, 348, 357, 351, 360, - 389, 379, 353, 388, 243, 361, 391, 381, 363, 382, - 383, 384, 385, 390, 192, 177, 401, 193, 405, 364, - 365, 366, 371, 372, 373, 375, 406, 407, 387, 414, - 358, 192, 392, 394, 193, 386, 395, 396, 397, 398, - 399, 400, 409, 415, 421, 408, 416, 177, 419, 259, - 423, 424, 428, 259, 429, 420, 177, 42, 136, 137, - 177, 78, 138, 380, 259, 259, 139, 175, 89, 340, - 44, 20, 261, 262, 237, 34, 177, 350, 359, 377, - 0, 0, 0, 0, 263, 0, 0, 0, 0, 267, - -34, 0, 14, 259, 15, 259, 0, 275, 276, 277, - 259, 4, -34, -34, 0, 0, 259, 259, 259, 0, - -34, -34, -34, -34, 0, 0, -34, 16, 0, 0, - 0, 0, 0, 0, 17, 0, 0, 259, 259, 0, - 0, 0, 0, 0, 0, 0, 259, 0, 0, 0, - 0, 0, 0, 259, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 307, 0, 0, 0, 314, 0, - 259, 0, 0, 0, 0, 0, 0, 0, 0, 325, - 326, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 259, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 345, 259, - 347, 0, 0, 0, 259, 352, 0, 0, 259, 259, - 0, 354, 355, 356, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 367, 368, 0, 0, 0, 0, 0, 0, - 0, 374, 0, 0, 0, 0, 0, 0, 378, 0, - 0, 0, 0, 46, 47, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 393, 0, 0, 0, 0, - 14, 0, 15, 0, 223, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 224, 225, 0, 0, 0, - 0, 410, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 418, 0, 0, 0, 0, 422, - 0, 0, 0, 425, 426, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 0, - 0, 0, 0, 0, 226, 0, 227, 228, 131, 132, - 0, 0, 0, 0, 0, 0, 0, 229, 0, 0, - 230, 0, 231, 0, 46, 47, 232, 93, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 60, - 61, 14, 0, 15, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 62, 249, 250, 46, 47, 251, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 14, 0, 15, 0, 0, 252, 253, - 0, 0, 0, 0, 0, 0, 0, 0, 254, 255, + 19, 268, 402, 192, 85, 193, 28, 168, 310, 28, + 75, 182, 312, 70, -108, 178, 31, 410, 181, 95, + 35, 36, 37, 183, 195, 39, 291, 293, 19, 184, + 185, 186, 187, 188, 189, 190, 191, 43, 300, 3, + 198, 99, 40, 202, 203, 4, 311, 204, 205, 206, + 311, 95, 306, 210, 5, 6, 7, 8, 211, 171, + 80, 152, 5, 6, 7, 8, 97, -49, 41, 172, + 299, 14, 81, 15, 177, 99, 99, 177, 184, 185, + 186, 187, 188, 189, 190, 191, 76, 214, 332, 86, + 87, 45, 32, 215, 83, 332, 334, 196, 197, 177, + 199, 200, 177, 177, 82, 335, 177, 177, 177, 207, + 208, 209, 177, 332, -50, 238, 146, 147, 408, 333, + 332, 401, 239, 240, 241, 259, 414, 283, 342, 90, + 259, 259, 184, 185, 186, 187, 188, 189, 190, 191, + 212, 213, 259, 216, 217, 91, 243, 259, -24, -24, + 372, 92, 373, -23, -23, 259, 259, 259, 98, 264, + 22, 23, 24, 25, -22, -22, -21, -21, 70, 149, + 409, 218, 219, 145, 169, 281, 150, 170, 173, 179, + -28, -27, -26, -25, 70, 282, 177, 318, -31, -32, + 221, 222, 247, 248, 325, 265, 267, 270, 271, 272, + 241, 273, 274, 329, 330, 331, 275, 276, 280, 284, + 303, 294, 259, 336, 337, 338, 339, 285, 259, 286, + 316, 287, 343, 344, 295, 296, 297, 298, 345, 259, + 259, 304, 307, 308, 313, 322, 323, 347, 324, 328, + 351, 301, 353, 360, 361, 317, 177, 319, 320, 321, + 362, 357, 363, 177, 364, 365, 366, 388, 259, 311, + 259, 380, 371, 374, 259, 376, 387, 377, 400, 395, + 259, 259, 259, 389, 391, 404, 243, 405, 411, 382, + 416, 383, 384, 385, 386, 192, 177, 193, 390, 393, + 394, 259, 259, 396, 397, 261, 262, 398, 399, 259, + 192, 358, 193, 412, 418, 413, 259, 263, 417, 420, + 421, 425, 269, 406, 426, 136, 137, 78, 177, 138, + 277, 278, 279, -34, 259, 14, 177, 15, 139, 175, + 177, 42, 89, 381, 4, -34, -34, 341, 237, 44, + 20, 34, 350, -34, -34, -34, -34, 177, 259, -34, + 16, 0, 378, 0, 359, 0, 0, 17, 0, 259, + 0, 0, 0, 0, 259, 0, 0, 0, 259, 259, + 0, 0, 0, 0, 0, 0, 0, 309, 0, 0, + 0, 0, 0, 315, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 326, 327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 63, 0, 0, 64, 0, - 0, 65, 0, 66, 290, 0, 0, 0, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 249, 250, 0, 0, 251, 226, 0, 227, - 228, 131, 132, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 256, 0, 0, 252, 253, 0, 0, - 0, 0, 0, 0, 0, 0, 254, 255, 0, 0, + 0, 46, 47, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 346, 0, 348, 0, 0, 14, 352, + 15, 0, 223, 0, 0, 354, 355, 356, 0, 0, + 0, 0, 0, 224, 225, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 367, 368, 0, 0, + 0, 0, 0, 0, 375, 0, 0, 0, 0, 0, + 0, 379, 0, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 0, 0, 392, + 0, 0, 226, 0, 227, 228, 131, 132, 0, 0, + 0, 0, 0, 0, 0, 0, 229, 0, 0, 230, + 0, 231, 0, 407, 232, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 415, 0, 0, 0, 0, 419, + 0, 0, 0, 422, 423, 46, 47, 0, 93, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 14, 0, 15, 0, 46, 47, 0, 93, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 60, 61, 14, 62, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 62, 0, 249, 250, 46, + 47, 251, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 14, 0, 15, 0, + 0, 252, 253, 0, 0, 0, 0, 63, 0, 0, + 64, 254, 255, 65, 0, 66, 94, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 63, 0, + 0, 64, 0, 0, 65, 0, 66, 292, 0, 0, + 0, 110, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 249, 250, 0, 0, 251, + 226, 0, 227, 228, 131, 132, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 256, 0, 252, + 253, 0, 0, 0, 0, 0, 0, 0, 0, 254, + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 0, 0, 0, 0, 0, 226, 0, 227, 228, 131, - 132, 0, 0, 0, 0, 0, 0, 0, 0, 46, - 47, 256, 93, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 14, 0, 15, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 174, 0, 0, 0, 0, 0, 46, 47, 62, 93, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 14, 0, 15, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 242, 0, 0, - 0, 0, 0, 0, 0, 62, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 63, 0, 0, 64, 0, 0, 65, 0, 66, 46, - 47, 0, 93, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 60, 61, 14, 0, 15, 0, - 0, 0, 0, 0, 0, 0, 0, 63, 0, 0, - 64, 0, 0, 65, 0, 66, 46, 47, 62, 93, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 14, 0, 15, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 303, 0, 0, - 0, 0, 0, 0, 0, 62, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 63, 0, 0, 64, 0, 286, 65, 0, 66, 0, - 46, 47, 0, 93, 49, 50, 51, 52, 53, 54, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 0, 0, 0, 0, 0, 226, 0, + 227, 228, 131, 132, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 46, 47, 256, 93, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 14, 0, 15, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 174, 0, 0, 0, 0, 0, + 46, 47, 62, 93, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 14, 0, 15, - 0, 0, 0, 0, 0, 0, 0, 63, 0, 0, - 64, 339, 0, 65, 0, 66, 0, 46, 47, 62, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 14, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 63, 0, 0, 64, 0, 0, 65, 0, 66, - 46, 47, 0, 93, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 14, 0, 15, - 0, 0, 0, 0, 0, 0, 0, 0, 63, 0, - 0, 64, 0, 0, 65, 0, 66, 46, 47, 62, + 0, 242, 0, 0, 0, 0, 0, 46, 47, 62, 93, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 60, 61, 14, 0, 15, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, + 162, 163, 60, 61, 14, 63, 15, 0, 64, 0, + 0, 65, 0, 66, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 46, 47, 62, 93, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 14, 63, 15, 0, 64, 0, 0, 65, 0, + 66, 0, 0, 0, 0, 305, 0, 0, 0, 0, + 0, 46, 47, 62, 93, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 14, 63, + 15, 0, 64, 0, 288, 65, 0, 66, 0, 0, + 0, 0, 340, 0, 0, 0, 0, 0, 46, 47, + 62, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 14, 63, 15, 0, 64, + 0, 0, 65, 0, 66, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 46, 47, 62, 93, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 14, 63, 15, 0, 64, 0, 0, 65, + 0, 66, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 46, 47, 62, 93, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 60, 61, 14, + 63, 15, 0, 64, 0, 0, 65, 0, 66, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, + 47, 62, 180, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 14, 63, 15, 0, + 64, 0, 0, 65, 0, 66, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 63, 0, 0, 64, 0, 0, 65, 0, 66, - 46, 47, 0, 180, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 14, 0, 15, - 0, 100, 0, 0, 0, 0, 0, 0, 63, 0, - 0, 64, 101, 0, 65, 0, 66, 0, 0, 62, - 0, 0, 102, 103, 0, 0, 0, 0, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 0, 0, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 63, 0, 0, 64, 0, 0, 65, 0, 66 + 0, 0, 0, 0, 63, 0, 0, 64, 0, 0, + 65, 0, 66, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 101, 0, 0, 0, 0, + 0, 63, 0, 0, 64, 102, 103, 65, 0, 66, + 0, 104, 105, 106, 107, 108, 109, 110, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 0, 0, 127, 128, 129, 130, + 131, 132, 133, 134, 135 }; static const short yycheck[] = { 26, - 2, 40, 23, 106, 101, 89, 106, 104, 15, 30, - 29, 66, 15, 40, 10, 11, 12, 13, 14, 15, - 16, 17, 230, 231, 387, 107, 101, 95, 30, 126, - 403, 106, 129, 130, 23, 9, 133, 134, 135, 0, - 413, 404, 139, 98, 95, 103, 53, 21, 256, 107, - 53, 10, 11, 12, 13, 14, 15, 16, 17, 141, - 97, 88, 32, 33, 25, 101, 68, 20, 4, 106, - 31, 107, 101, 103, 101, 95, 106, 104, 107, 40, - 41, 42, 43, 99, 105, 104, 95, 40, 41, 42, - 43, 103, 22, 46, 24, 107, 95, 124, 125, 126, - 127, 128, 129, 130, 97, 101, 133, 134, 135, 136, - 137, 138, 139, 97, 169, 170, 213, 172, 57, 58, - 59, 60, 51, 52, 5, 6, 4, 8, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 101, 24, 27, 28, 173, 10, 11, 12, - 13, 14, 15, 16, 17, 4, 195, 48, 49, 50, - 84, 85, 105, 44, 107, 105, 4, 107, 195, 3, - 4, 24, 211, 4, 271, 3, 4, 3, 4, 3, - 4, 278, 3, 4, 211, 212, 213, 24, 100, 100, - 97, 55, 247, 4, 4, 4, 4, 4, 107, 283, - 284, 285, 7, 7, 7, 98, 107, 107, 107, 293, - 294, 295, 296, 99, 98, 96, 35, 107, 99, 107, - 107, 102, 167, 104, 105, 107, 24, 107, 97, 97, - 97, 24, 177, 107, 107, 97, 97, 182, 183, 97, - 97, 243, 107, 270, 271, 272, 273, 274, 332, 194, - 21, 278, 107, 99, 199, 107, 353, 107, 21, 107, - 107, 97, 207, 208, 209, 4, 4, 97, 107, 35, - 53, 98, 107, 98, 301, 107, 373, 361, 107, 363, - 364, 365, 366, 53, 387, 312, 21, 387, 35, 107, - 107, 107, 107, 107, 107, 107, 4, 4, 99, 21, - 327, 404, 101, 98, 404, 107, 98, 107, 98, 98, - 98, 98, 396, 98, 65, 101, 107, 344, 21, 264, - 21, 21, 0, 268, 0, 107, 353, 18, 78, 78, - 357, 30, 78, 360, 279, 280, 78, 98, 42, 301, - 21, 2, 182, 183, 167, 13, 373, 312, 328, 357, - -1, -1, -1, -1, 194, -1, -1, -1, -1, 199, - 20, -1, 22, 308, 24, 310, -1, 207, 208, 209, - 315, 31, 32, 33, -1, -1, 321, 322, 323, -1, - 40, 41, 42, 43, -1, -1, 46, 47, -1, -1, - -1, -1, -1, -1, 54, -1, -1, 342, 343, -1, - -1, -1, -1, -1, -1, -1, 351, -1, -1, -1, - -1, -1, -1, 358, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 264, -1, -1, -1, 268, -1, - 375, -1, -1, -1, -1, -1, -1, -1, -1, 279, - 280, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 401, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 308, 414, - 310, -1, -1, -1, 419, 315, -1, -1, 423, 424, - -1, 321, 322, 323, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 342, 343, -1, -1, -1, -1, -1, -1, - -1, 351, -1, -1, -1, -1, -1, -1, 358, -1, - -1, -1, -1, 5, 6, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 375, -1, -1, -1, -1, - 22, -1, 24, -1, 26, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 37, 38, -1, -1, -1, - -1, 401, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 414, -1, -1, -1, -1, 419, - -1, -1, -1, 423, 424, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, -1, - -1, -1, -1, -1, 86, -1, 88, 89, 90, 91, - -1, -1, -1, -1, -1, -1, -1, 99, -1, -1, - 102, -1, 104, -1, 5, 6, 108, 8, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, -1, 24, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 44, 3, 4, 5, 6, 7, -1, + 2, 197, 388, 106, 40, 106, 23, 89, 15, 23, + 29, 9, 15, 40, 0, 101, 30, 403, 104, 66, + 48, 49, 50, 21, 107, 95, 230, 231, 30, 10, + 11, 12, 13, 14, 15, 16, 17, 95, 104, 25, + 126, 107, 20, 129, 130, 31, 53, 133, 134, 135, + 53, 98, 256, 139, 40, 41, 42, 43, 141, 96, + 95, 88, 40, 41, 42, 43, 68, 98, 46, 106, + 102, 22, 95, 24, 101, 107, 107, 104, 10, 11, + 12, 13, 14, 15, 16, 17, 105, 96, 96, 32, + 33, 4, 106, 102, 100, 96, 104, 124, 125, 126, + 127, 128, 129, 130, 95, 106, 133, 134, 135, 136, + 137, 138, 139, 96, 98, 167, 51, 52, 402, 102, + 96, 102, 169, 170, 171, 177, 410, 213, 104, 4, + 182, 183, 10, 11, 12, 13, 14, 15, 16, 17, + 84, 85, 194, 27, 28, 4, 173, 199, 3, 4, + 346, 4, 348, 3, 4, 207, 208, 209, 98, 195, + 57, 58, 59, 60, 3, 4, 3, 4, 195, 4, + 102, 3, 4, 24, 101, 211, 24, 101, 98, 55, + 4, 4, 4, 4, 211, 212, 213, 273, 7, 7, + 4, 7, 96, 99, 280, 96, 96, 100, 96, 35, + 247, 96, 96, 285, 286, 287, 96, 96, 96, 24, + 96, 24, 264, 295, 296, 297, 298, 98, 270, 98, + 100, 98, 21, 21, 98, 98, 98, 98, 98, 281, + 282, 99, 96, 96, 96, 96, 96, 4, 96, 96, + 96, 243, 96, 35, 96, 272, 273, 274, 275, 276, + 332, 98, 96, 280, 96, 96, 96, 100, 310, 53, + 312, 99, 96, 96, 316, 96, 96, 353, 21, 96, + 322, 323, 324, 99, 102, 35, 303, 102, 21, 361, + 21, 363, 364, 365, 366, 388, 313, 388, 374, 99, + 99, 343, 344, 99, 99, 182, 183, 99, 99, 351, + 403, 328, 403, 99, 65, 96, 358, 194, 96, 21, + 21, 0, 199, 395, 0, 78, 78, 30, 345, 78, + 207, 208, 209, 20, 376, 22, 353, 24, 78, 98, + 357, 18, 42, 360, 31, 32, 33, 303, 167, 21, + 2, 13, 313, 40, 41, 42, 43, 374, 400, 46, + 47, -1, 357, -1, 329, -1, -1, 54, -1, 411, + -1, -1, -1, -1, 416, -1, -1, -1, 420, 421, + -1, -1, -1, -1, -1, -1, -1, 264, -1, -1, + -1, -1, -1, 270, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 281, 282, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, -1, 24, -1, -1, 27, 28, - -1, -1, -1, -1, -1, -1, -1, -1, 37, 38, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 96, -1, -1, 99, -1, - -1, 102, -1, 104, 105, -1, -1, -1, 67, 68, - 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 3, 4, -1, -1, 7, 86, -1, 88, - 89, 90, 91, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 102, -1, -1, 27, 28, -1, -1, - -1, -1, -1, -1, -1, -1, 37, 38, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 67, 68, 69, 70, - 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - -1, -1, -1, -1, -1, 86, -1, 88, 89, 90, - 91, -1, -1, -1, -1, -1, -1, -1, -1, 5, - 6, 102, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, -1, 24, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 36, -1, -1, -1, -1, -1, 5, 6, 44, 8, + -1, 5, 6, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 310, -1, 312, -1, -1, 22, 316, + 24, -1, 26, -1, -1, 322, 323, 324, -1, -1, + -1, -1, -1, 37, 38, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 343, 344, -1, -1, + -1, -1, -1, -1, 351, -1, -1, -1, -1, -1, + -1, 358, -1, 67, 68, 69, 70, 71, 72, 73, + 74, 75, 76, 77, 78, 79, 80, -1, -1, 376, + -1, -1, 86, -1, 88, 89, 90, 91, -1, -1, + -1, -1, -1, -1, -1, -1, 100, -1, -1, 103, + -1, 105, -1, 400, 108, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 411, -1, -1, -1, -1, 416, + -1, -1, -1, 420, 421, 5, 6, -1, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, -1, 24, -1, 5, 6, -1, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, -1, 24, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 36, -1, -1, - -1, -1, -1, -1, -1, 44, -1, -1, -1, -1, + 19, 20, 21, 22, 44, 24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 96, -1, -1, 99, -1, -1, 102, -1, 104, 5, - 6, -1, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, -1, 24, -1, - -1, -1, -1, -1, -1, -1, -1, 96, -1, -1, - 99, -1, -1, 102, -1, 104, 5, 6, 44, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, -1, 24, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 36, -1, -1, - -1, -1, -1, -1, -1, 44, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 44, -1, 3, 4, 5, + 6, 7, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 22, -1, 24, -1, + -1, 27, 28, -1, -1, -1, -1, 97, -1, -1, + 100, 37, 38, 103, -1, 105, 106, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 97, -1, + -1, 100, -1, -1, 103, -1, 105, 106, -1, -1, + -1, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 3, 4, -1, -1, 7, + 86, -1, 88, 89, 90, 91, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 103, -1, 27, + 28, -1, -1, -1, -1, -1, -1, -1, -1, 37, + 38, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 96, -1, -1, 99, -1, 101, 102, -1, 104, -1, - 5, 6, -1, 8, 9, 10, 11, 12, 13, 14, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, + 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, + 78, 79, 80, -1, -1, -1, -1, -1, 86, -1, + 88, 89, 90, 91, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 5, 6, 103, 8, 9, 10, 11, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, -1, 24, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, + 5, 6, 44, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, -1, 24, - -1, -1, -1, -1, -1, -1, -1, 96, -1, -1, - 99, 36, -1, 102, -1, 104, -1, 5, 6, 44, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, -1, 24, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 44, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 96, -1, -1, 99, -1, -1, 102, -1, 104, - 5, 6, -1, 8, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, -1, 24, - -1, -1, -1, -1, -1, -1, -1, -1, 96, -1, - -1, 99, -1, -1, 102, -1, 104, 5, 6, 44, + -1, 36, -1, -1, -1, -1, -1, 5, 6, 44, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, -1, 24, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 44, -1, -1, -1, + 18, 19, 20, 21, 22, 97, 24, -1, 100, -1, + -1, 103, -1, 105, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 5, 6, 44, 8, 9, 10, + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 97, 24, -1, 100, -1, -1, 103, -1, + 105, -1, -1, -1, -1, 36, -1, -1, -1, -1, + -1, 5, 6, 44, 8, 9, 10, 11, 12, 13, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 97, + 24, -1, 100, -1, 102, 103, -1, 105, -1, -1, + -1, -1, 36, -1, -1, -1, -1, -1, 5, 6, + 44, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 97, 24, -1, 100, + -1, -1, 103, -1, 105, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 5, 6, 44, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 97, 24, -1, 100, -1, -1, 103, + -1, 105, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5, 6, 44, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 97, 24, -1, 100, -1, -1, 103, -1, 105, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, + 6, 44, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 97, 24, -1, + 100, -1, -1, 103, -1, 105, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 44, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 96, -1, -1, 99, -1, -1, 102, -1, 104, - 5, 6, -1, 8, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, -1, 24, - -1, 34, -1, -1, -1, -1, -1, -1, 96, -1, - -1, 99, 45, -1, 102, -1, 104, -1, -1, 44, - -1, -1, 55, 56, -1, -1, -1, -1, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, -1, -1, 86, 87, 88, 89, 90, 91, 92, - 93, 94, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 96, -1, -1, 99, -1, -1, 102, -1, 104 + -1, -1, -1, -1, 97, -1, -1, 100, -1, -1, + 103, -1, 105, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 34, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 45, -1, -1, -1, -1, + -1, 97, -1, -1, 100, 55, 56, 103, -1, 105, + -1, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, -1, -1, 86, 87, 88, 89, + 90, 91, 92, 93, 94 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/share/bison.simple" @@ -2259,42 +2234,50 @@ case 44: yyval.UIntVal = yyvsp[0].UInt64Val; ; break;} +case 45: +#line 1040 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +{ yyval.UIntVal = 0; ; + break;} case 46: -#line 1045 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" -{ yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ; +#line 1041 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +{ yyval.UIntVal = yyvsp[0].UInt64Val; ; break;} case 48: -#line 1046 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1050 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +{ yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ; + break;} +case 50: +#line 1051 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ; break;} -case 49: -#line 1048 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 51: +#line 1053 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) ThrowException("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription()); yyval.TypeVal = yyvsp[0].TypeVal; ; break;} -case 63: -#line 1059 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 65: +#line 1064 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(OpaqueType::get()); ; break;} -case 64: -#line 1062 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 66: +#line 1067 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ; break;} -case 65: -#line 1065 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 67: +#line 1070 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Named types are also simple types... yyval.TypeVal = new PATypeHolder(getTypeVal(yyvsp[0].ValIDVal)); ; break;} -case 66: -#line 1071 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 68: +#line 1076 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Type UpReference if (yyvsp[0].UInt64Val > (uint64_t)~0U) ThrowException("Value out of range!"); OpaqueType *OT = OpaqueType::get(); // Use temporary placeholder @@ -2303,8 +2286,8 @@ case 66: UR_OUT("New Upreference!\n"); ; break;} -case 67: -#line 1078 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 69: +#line 1083 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Function derived type? std::vector Params; for (std::list::iterator I = yyvsp[-1].TypeList->begin(), @@ -2318,15 +2301,15 @@ case 67: delete yyvsp[-3].TypeVal; // Delete the return type handle ; break;} -case 68: -#line 1090 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 70: +#line 1095 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Sized array type? yyval.TypeVal = new PATypeHolder(HandleUpRefs(ArrayType::get(*yyvsp[-1].TypeVal, (unsigned)yyvsp[-3].UInt64Val))); delete yyvsp[-1].TypeVal; ; break;} -case 69: -#line 1094 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 71: +#line 1099 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Packed array type? const llvm::Type* ElemTy = yyvsp[-1].TypeVal->get(); if ((unsigned)yyvsp[-3].UInt64Val != yyvsp[-3].UInt64Val) { @@ -2339,8 +2322,8 @@ case 69: delete yyvsp[-1].TypeVal; ; break;} -case 70: -#line 1105 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 72: +#line 1110 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Structure type? std::vector Elements; for (std::list::iterator I = yyvsp[-1].TypeList->begin(), @@ -2351,52 +2334,52 @@ case 70: delete yyvsp[-1].TypeList; ; break;} -case 71: -#line 1114 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 73: +#line 1119 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Empty structure type? yyval.TypeVal = new PATypeHolder(StructType::get(std::vector())); ; break;} -case 72: -#line 1117 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 74: +#line 1122 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Pointer type? yyval.TypeVal = new PATypeHolder(HandleUpRefs(PointerType::get(*yyvsp[-1].TypeVal))); delete yyvsp[-1].TypeVal; ; break;} -case 73: -#line 1125 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 75: +#line 1130 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeList = new std::list(); yyval.TypeList->push_back(*yyvsp[0].TypeVal); delete yyvsp[0].TypeVal; ; break;} -case 74: -#line 1129 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 76: +#line 1134 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeList=yyvsp[-2].TypeList)->push_back(*yyvsp[0].TypeVal); delete yyvsp[0].TypeVal; ; break;} -case 76: -#line 1135 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 78: +#line 1140 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeList=yyvsp[-2].TypeList)->push_back(Type::VoidTy); ; break;} -case 77: -#line 1138 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 79: +#line 1143 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeList = new std::list())->push_back(Type::VoidTy); ; break;} -case 78: -#line 1141 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 80: +#line 1146 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeList = new std::list(); ; break;} -case 79: -#line 1151 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 81: +#line 1156 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr const ArrayType *ATy = dyn_cast(yyvsp[-3].TypeVal->get()); if (ATy == 0) @@ -2423,8 +2406,8 @@ case 79: delete yyvsp[-3].TypeVal; delete yyvsp[-1].ConstVector; ; break;} -case 80: -#line 1176 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 82: +#line 1181 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const ArrayType *ATy = dyn_cast(yyvsp[-2].TypeVal->get()); if (ATy == 0) @@ -2439,8 +2422,8 @@ case 80: delete yyvsp[-2].TypeVal; ; break;} -case 81: -#line 1189 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 83: +#line 1194 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const ArrayType *ATy = dyn_cast(yyvsp[-2].TypeVal->get()); if (ATy == 0) @@ -2470,8 +2453,8 @@ case 81: delete yyvsp[-2].TypeVal; ; break;} -case 82: -#line 1217 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 84: +#line 1222 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr const PackedType *PTy = dyn_cast(yyvsp[-3].TypeVal->get()); if (PTy == 0) @@ -2498,8 +2481,8 @@ case 82: delete yyvsp[-3].TypeVal; delete yyvsp[-1].ConstVector; ; break;} -case 83: -#line 1242 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 85: +#line 1247 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast(yyvsp[-3].TypeVal->get()); if (STy == 0) @@ -2521,8 +2504,8 @@ case 83: delete yyvsp[-3].TypeVal; delete yyvsp[-1].ConstVector; ; break;} -case 84: -#line 1262 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 86: +#line 1267 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast(yyvsp[-2].TypeVal->get()); if (STy == 0) @@ -2536,8 +2519,8 @@ case 84: delete yyvsp[-2].TypeVal; ; break;} -case 85: -#line 1274 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 87: +#line 1279 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PTy = dyn_cast(yyvsp[-1].TypeVal->get()); if (PTy == 0) @@ -2548,15 +2531,15 @@ case 85: delete yyvsp[-1].TypeVal; ; break;} -case 86: -#line 1283 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 88: +#line 1288 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ConstVal = UndefValue::get(yyvsp[-1].TypeVal->get()); delete yyvsp[-1].TypeVal; ; break;} -case 87: -#line 1287 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 89: +#line 1292 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *Ty = dyn_cast(yyvsp[-1].TypeVal->get()); if (Ty == 0) @@ -2617,8 +2600,8 @@ case 87: delete yyvsp[-1].TypeVal; // Free the type handle ; break;} -case 88: -#line 1346 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 90: +#line 1351 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-1].TypeVal->get() != yyvsp[0].ConstVal->getType()) ThrowException("Mismatched types for constant expression!"); @@ -2626,8 +2609,8 @@ case 88: delete yyvsp[-1].TypeVal; ; break;} -case 89: -#line 1352 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 91: +#line 1357 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const Type *Ty = yyvsp[-1].TypeVal->get(); if (isa(Ty) || Ty == Type::LabelTy || isa(Ty)) @@ -2636,44 +2619,44 @@ case 89: delete yyvsp[-1].TypeVal; ; break;} -case 90: -#line 1360 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 92: +#line 1365 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // integral constants if (!ConstantSInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].SInt64Val)) ThrowException("Constant value doesn't fit in type!"); yyval.ConstVal = ConstantSInt::get(yyvsp[-1].PrimType, yyvsp[0].SInt64Val); ; break;} -case 91: -#line 1365 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 93: +#line 1370 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // integral constants if (!ConstantUInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].UInt64Val)) ThrowException("Constant value doesn't fit in type!"); yyval.ConstVal = ConstantUInt::get(yyvsp[-1].PrimType, yyvsp[0].UInt64Val); ; break;} -case 92: -#line 1370 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 94: +#line 1375 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants yyval.ConstVal = ConstantBool::True; ; break;} -case 93: -#line 1373 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 95: +#line 1378 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants yyval.ConstVal = ConstantBool::False; ; break;} -case 94: -#line 1376 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 96: +#line 1381 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Float & Double constants if (!ConstantFP::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].FPVal)) ThrowException("Floating point constant invalid for type!!"); yyval.ConstVal = ConstantFP::get(yyvsp[-1].PrimType, yyvsp[0].FPVal); ; break;} -case 95: -#line 1383 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 97: +#line 1388 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!yyvsp[-3].ConstVal->getType()->isFirstClassType()) ThrowException("cast constant expression from a non-primitive type: '" + @@ -2685,8 +2668,8 @@ case 95: delete yyvsp[-1].TypeVal; ; break;} -case 96: -#line 1393 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 98: +#line 1398 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa(yyvsp[-2].ConstVal->getType())) ThrowException("GetElementPtr requires a pointer operand!"); @@ -2719,8 +2702,8 @@ case 96: yyval.ConstVal = ConstantExpr::getGetElementPtr(yyvsp[-2].ConstVal, IdxVec); ; break;} -case 97: -#line 1424 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 99: +#line 1429 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-5].ConstVal->getType() != Type::BoolTy) ThrowException("Select condition must be of boolean type!"); @@ -2729,8 +2712,8 @@ case 97: yyval.ConstVal = ConstantExpr::getSelect(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal); ; break;} -case 98: -#line 1431 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 100: +#line 1436 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) ThrowException("Binary operator types must match!"); @@ -2753,8 +2736,8 @@ case 98: } ; break;} -case 99: -#line 1452 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 101: +#line 1457 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) ThrowException("Logical operator types must match!"); @@ -2763,16 +2746,16 @@ case 99: yyval.ConstVal = ConstantExpr::get(yyvsp[-5].BinaryOpVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal); ; break;} -case 100: -#line 1459 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 102: +#line 1464 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) ThrowException("setcc operand types must match!"); yyval.ConstVal = ConstantExpr::get(yyvsp[-5].BinaryOpVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal); ; break;} -case 101: -#line 1464 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 103: +#line 1469 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-1].ConstVal->getType() != Type::UByteTy) ThrowException("Shift count for shift constant must be unsigned byte!"); @@ -2781,55 +2764,55 @@ case 101: yyval.ConstVal = ConstantExpr::get(yyvsp[-5].OtherOpVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal); ; break;} -case 102: -#line 1474 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 104: +#line 1479 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ConstVector = yyvsp[-2].ConstVector)->push_back(yyvsp[0].ConstVal); ; break;} -case 103: -#line 1477 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 105: +#line 1482 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ConstVector = new std::vector(); yyval.ConstVector->push_back(yyvsp[0].ConstVal); ; break;} -case 104: -#line 1484 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 106: +#line 1489 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} -case 105: -#line 1484 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 107: +#line 1489 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} -case 106: -#line 1494 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 108: +#line 1499 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = ParserResult = yyvsp[0].ModuleVal; CurModule.ModuleDone(); ; break;} -case 107: -#line 1501 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 109: +#line 1506 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-1].ModuleVal; CurFun.FunctionDone(); ; break;} -case 108: -#line 1505 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 110: +#line 1510 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-1].ModuleVal; ; break;} -case 109: -#line 1508 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 111: +#line 1513 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-1].ModuleVal; ; break;} -case 110: -#line 1511 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 112: +#line 1516 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = CurModule.CurrentModule; // Emit an error if there are any unresolved types left. @@ -2842,8 +2825,8 @@ case 110: } ; break;} -case 111: -#line 1524 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 113: +#line 1529 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Eagerly resolve types. This is not an optimization, this is a // requirement that is due to the fact that we could have this: @@ -2865,56 +2848,56 @@ case 111: delete yyvsp[0].TypeVal; ; break;} -case 112: -#line 1544 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 114: +#line 1549 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Function prototypes can be in const pool ; break;} -case 113: -#line 1546 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 115: +#line 1551 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].ConstVal == 0) ThrowException("Global value initializer is not a constant!"); ParseGlobalVariable(yyvsp[-3].StrVal, yyvsp[-2].Linkage, yyvsp[-1].BoolVal, yyvsp[0].ConstVal->getType(), yyvsp[0].ConstVal); ; break;} -case 114: -#line 1550 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 116: +#line 1555 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ParseGlobalVariable(yyvsp[-3].StrVal, GlobalValue::ExternalLinkage, yyvsp[-1].BoolVal, *yyvsp[0].TypeVal, 0); delete yyvsp[0].TypeVal; ; break;} -case 115: -#line 1554 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 117: +#line 1559 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} -case 116: -#line 1556 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 118: +#line 1561 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} -case 117: -#line 1558 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 119: +#line 1563 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} -case 118: -#line 1563 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 120: +#line 1568 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Endianness = Module::BigEndian; ; break;} -case 119: -#line 1564 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 121: +#line 1569 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Endianness = Module::LittleEndian; ; break;} -case 120: -#line 1566 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 122: +#line 1571 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setEndianness(yyvsp[0].Endianness); ; break;} -case 121: -#line 1569 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 123: +#line 1574 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].UInt64Val == 32) CurModule.CurrentModule->setPointerSize(Module::Pointer32); @@ -2924,89 +2907,89 @@ case 121: ThrowException("Invalid pointer size: '" + utostr(yyvsp[0].UInt64Val) + "'!"); ; break;} -case 122: -#line 1577 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 124: +#line 1582 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setTargetTriple(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} -case 124: -#line 1584 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 126: +#line 1589 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} -case 125: -#line 1588 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 127: +#line 1593 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} -case 126: -#line 1592 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 128: +#line 1597 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} -case 130: -#line 1601 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 132: +#line 1606 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = 0; ; break;} -case 131: -#line 1603 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 133: +#line 1608 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (*yyvsp[-1].TypeVal == Type::VoidTy) ThrowException("void typed arguments are invalid!"); yyval.ArgVal = new std::pair(yyvsp[-1].TypeVal, yyvsp[0].StrVal); ; break;} -case 132: -#line 1609 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 134: +#line 1614 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[-2].ArgList; yyvsp[-2].ArgList->push_back(*yyvsp[0].ArgVal); delete yyvsp[0].ArgVal; ; break;} -case 133: -#line 1614 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 135: +#line 1619 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = new std::vector >(); yyval.ArgList->push_back(*yyvsp[0].ArgVal); delete yyvsp[0].ArgVal; ; break;} -case 134: -#line 1620 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 136: +#line 1625 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[0].ArgList; ; break;} -case 135: -#line 1623 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 137: +#line 1628 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[-2].ArgList; yyval.ArgList->push_back(std::pair(new PATypeHolder(Type::VoidTy), 0)); ; break;} -case 136: -#line 1628 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 138: +#line 1633 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = new std::vector >(); yyval.ArgList->push_back(std::make_pair(new PATypeHolder(Type::VoidTy), (char*)0)); ; break;} -case 137: -#line 1632 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 139: +#line 1637 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = 0; ; break;} -case 138: -#line 1636 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 140: +#line 1641 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { UnEscapeLexed(yyvsp[-3].StrVal); std::string FunctionName(yyvsp[-3].StrVal); @@ -3087,8 +3070,8 @@ case 138: } ; break;} -case 141: -#line 1718 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 143: +#line 1723 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = CurFun.CurrentFunction; @@ -3097,67 +3080,67 @@ case 141: yyval.FunctionVal->setLinkage(yyvsp[-2].Linkage); ; break;} -case 144: -#line 1728 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 146: +#line 1733 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = yyvsp[-1].FunctionVal; ; break;} -case 145: -#line 1732 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 147: +#line 1737 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.isDeclare = true; ; break;} -case 146: -#line 1732 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 148: +#line 1737 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = CurFun.CurrentFunction; CurFun.FunctionDone(); ; break;} -case 147: -#line 1741 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 149: +#line 1746 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // A reference to a direct constant yyval.ValIDVal = ValID::create(yyvsp[0].SInt64Val); ; break;} -case 148: -#line 1744 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 150: +#line 1749 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(yyvsp[0].UInt64Val); ; break;} -case 149: -#line 1747 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 151: +#line 1752 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Perhaps it's an FP constant? yyval.ValIDVal = ValID::create(yyvsp[0].FPVal); ; break;} -case 150: -#line 1750 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 152: +#line 1755 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(ConstantBool::True); ; break;} -case 151: -#line 1753 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 153: +#line 1758 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(ConstantBool::False); ; break;} -case 152: -#line 1756 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 154: +#line 1761 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createNull(); ; break;} -case 153: -#line 1759 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 155: +#line 1764 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createUndef(); ; break;} -case 154: -#line 1762 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 156: +#line 1767 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized packed vector const Type *ETy = (*yyvsp[-1].ConstVector)[0]->getType(); int NumElements = yyvsp[-1].ConstVector->size(); @@ -3183,44 +3166,44 @@ case 154: delete PTy; delete yyvsp[-1].ConstVector; ; break;} -case 155: -#line 1786 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 157: +#line 1791 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(yyvsp[0].ConstVal); ; break;} -case 156: -#line 1793 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 158: +#line 1798 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it an integer reference...? yyval.ValIDVal = ValID::create(yyvsp[0].SIntVal); ; break;} -case 157: -#line 1796 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 159: +#line 1801 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it a named reference...? yyval.ValIDVal = ValID::create(yyvsp[0].StrVal); ; break;} -case 160: -#line 1807 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 162: +#line 1812 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueVal = getVal(*yyvsp[-1].TypeVal, yyvsp[0].ValIDVal); delete yyvsp[-1].TypeVal; ; break;} -case 161: -#line 1811 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 163: +#line 1816 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = yyvsp[-1].FunctionVal; ; break;} -case 162: -#line 1814 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 164: +#line 1819 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Do not allow functions with 0 basic blocks yyval.FunctionVal = yyvsp[-1].FunctionVal; ; break;} -case 163: -#line 1822 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 165: +#line 1827 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { setValueName(yyvsp[0].TermInstVal, yyvsp[-1].StrVal); InsertValue(yyvsp[0].TermInstVal); @@ -3230,15 +3213,15 @@ case 163: yyval.BasicBlockVal = yyvsp[-2].BasicBlockVal; ; break;} -case 164: -#line 1831 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 166: +#line 1836 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyvsp[-1].BasicBlockVal->getInstList().push_back(yyvsp[0].InstVal); yyval.BasicBlockVal = yyvsp[-1].BasicBlockVal; ; break;} -case 165: -#line 1835 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 167: +#line 1840 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BasicBlockVal = CurBB = getBBVal(ValID::create((int)CurFun.NextBBNum++), true); @@ -3250,8 +3233,8 @@ case 165: BBL.splice(BBL.end(), BBL, yyval.BasicBlockVal); ; break;} -case 166: -#line 1845 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 168: +#line 1850 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BasicBlockVal = CurBB = getBBVal(ValID::create(yyvsp[0].StrVal), true); @@ -3263,32 +3246,32 @@ case 166: BBL.splice(BBL.end(), BBL, yyval.BasicBlockVal); ; break;} -case 167: -#line 1856 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 169: +#line 1861 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with a result... yyval.TermInstVal = new ReturnInst(yyvsp[0].ValueVal); ; break;} -case 168: -#line 1859 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 170: +#line 1864 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with no result... yyval.TermInstVal = new ReturnInst(); ; break;} -case 169: -#line 1862 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 171: +#line 1867 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Unconditional Branch... yyval.TermInstVal = new BranchInst(getBBVal(yyvsp[0].ValIDVal)); ; break;} -case 170: -#line 1865 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 172: +#line 1870 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new BranchInst(getBBVal(yyvsp[-3].ValIDVal), getBBVal(yyvsp[0].ValIDVal), getVal(Type::BoolTy, yyvsp[-6].ValIDVal)); ; break;} -case 171: -#line 1868 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 173: +#line 1873 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { SwitchInst *S = new SwitchInst(getVal(yyvsp[-7].PrimType, yyvsp[-6].ValIDVal), getBBVal(yyvsp[-3].ValIDVal), yyvsp[-1].JumpTable->size()); yyval.TermInstVal = S; @@ -3304,15 +3287,15 @@ case 171: delete yyvsp[-1].JumpTable; ; break;} -case 172: -#line 1882 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 174: +#line 1887 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { SwitchInst *S = new SwitchInst(getVal(yyvsp[-6].PrimType, yyvsp[-5].ValIDVal), getBBVal(yyvsp[-2].ValIDVal), 0); yyval.TermInstVal = S; ; break;} -case 173: -#line 1887 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 175: +#line 1892 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PFTy; const FunctionType *Ty; @@ -3366,20 +3349,20 @@ case 173: delete yyvsp[-7].ValueList; ; break;} -case 174: -#line 1939 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 176: +#line 1944 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new UnwindInst(); ; break;} -case 175: -#line 1942 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 177: +#line 1947 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new UnreachableInst(); ; break;} -case 176: -#line 1948 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 178: +#line 1953 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.JumpTable = yyvsp[-5].JumpTable; Constant *V = cast(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal)); @@ -3389,8 +3372,8 @@ case 176: yyval.JumpTable->push_back(std::make_pair(V, getBBVal(yyvsp[0].ValIDVal))); ; break;} -case 177: -#line 1956 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 179: +#line 1961 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.JumpTable = new std::vector >(); Constant *V = cast(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal)); @@ -3401,8 +3384,8 @@ case 177: yyval.JumpTable->push_back(std::make_pair(V, getBBVal(yyvsp[0].ValIDVal))); ; break;} -case 178: -#line 1966 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 180: +#line 1971 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is this definition named?? if so, assign the name... setValueName(yyvsp[0].InstVal, yyvsp[-1].StrVal); @@ -3410,54 +3393,54 @@ case 178: yyval.InstVal = yyvsp[0].InstVal; ; break;} -case 179: -#line 1973 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 181: +#line 1978 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Used for PHI nodes yyval.PHIList = new std::list >(); yyval.PHIList->push_back(std::make_pair(getVal(*yyvsp[-5].TypeVal, yyvsp[-3].ValIDVal), getBBVal(yyvsp[-1].ValIDVal))); delete yyvsp[-5].TypeVal; ; break;} -case 180: -#line 1978 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 182: +#line 1983 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.PHIList = yyvsp[-6].PHIList; yyvsp[-6].PHIList->push_back(std::make_pair(getVal(yyvsp[-6].PHIList->front().first->getType(), yyvsp[-3].ValIDVal), getBBVal(yyvsp[-1].ValIDVal))); ; break;} -case 181: -#line 1985 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 183: +#line 1990 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Used for call statements, and memory insts... yyval.ValueList = new std::vector(); yyval.ValueList->push_back(yyvsp[0].ValueVal); ; break;} -case 182: -#line 1989 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 184: +#line 1994 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = yyvsp[-2].ValueList; yyvsp[-2].ValueList->push_back(yyvsp[0].ValueVal); ; break;} -case 184: -#line 1995 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 186: +#line 2000 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = 0; ; break;} -case 185: -#line 1997 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 187: +#line 2002 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} -case 186: -#line 2000 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 188: +#line 2005 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} -case 187: -#line 2006 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 189: +#line 2011 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!(*yyvsp[-3].TypeVal)->isInteger() && !(*yyvsp[-3].TypeVal)->isFloatingPoint() && !isa((*yyvsp[-3].TypeVal).get())) @@ -3471,8 +3454,8 @@ case 187: delete yyvsp[-3].TypeVal; ; break;} -case 188: -#line 2018 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 190: +#line 2023 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!(*yyvsp[-3].TypeVal)->isIntegral()) ThrowException("Logical operator requires integral operands!"); @@ -3482,8 +3465,8 @@ case 188: delete yyvsp[-3].TypeVal; ; break;} -case 189: -#line 2026 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 191: +#line 2031 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if(isa((*yyvsp[-3].TypeVal).get())) { ThrowException( @@ -3495,8 +3478,8 @@ case 189: delete yyvsp[-3].TypeVal; ; break;} -case 190: -#line 2036 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 192: +#line 2041 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { std::cerr << "WARNING: Use of eliminated 'not' instruction:" << " Replacing with 'xor'.\n"; @@ -3510,8 +3493,8 @@ case 190: ThrowException("Could not create a xor instruction!"); ; break;} -case 191: -#line 2048 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 193: +#line 2053 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].ValueVal->getType() != Type::UByteTy) ThrowException("Shift amount must be ubyte!"); @@ -3520,8 +3503,8 @@ case 191: yyval.InstVal = new ShiftInst(yyvsp[-3].OtherOpVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal); ; break;} -case 192: -#line 2055 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 194: +#line 2060 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!yyvsp[0].TypeVal->get()->isFirstClassType()) ThrowException("cast instruction to a non-primitive type: '" + @@ -3530,8 +3513,8 @@ case 192: delete yyvsp[0].TypeVal; ; break;} -case 193: -#line 2062 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 195: +#line 2067 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-4].ValueVal->getType() != Type::BoolTy) ThrowException("select condition must be boolean!"); @@ -3540,16 +3523,16 @@ case 193: yyval.InstVal = new SelectInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal); ; break;} -case 194: -#line 2069 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 196: +#line 2074 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { NewVarArgs = true; yyval.InstVal = new VAArgInst(yyvsp[-2].ValueVal, *yyvsp[0].TypeVal); delete yyvsp[0].TypeVal; ; break;} -case 195: -#line 2074 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 197: +#line 2079 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ObsoleteVarArgs = true; const Type* ArgTy = yyvsp[-2].ValueVal->getType(); @@ -3570,8 +3553,8 @@ case 195: delete yyvsp[0].TypeVal; ; break;} -case 196: -#line 2093 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 198: +#line 2098 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ObsoleteVarArgs = true; const Type* ArgTy = yyvsp[-2].ValueVal->getType(); @@ -3595,8 +3578,8 @@ case 196: delete yyvsp[0].TypeVal; ; break;} -case 197: -#line 2115 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 199: +#line 2120 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const Type *Ty = yyvsp[0].PHIList->front().first->getType(); if (!Ty->isFirstClassType()) @@ -3612,8 +3595,8 @@ case 197: delete yyvsp[0].PHIList; // Free the list... ; break;} -case 198: -#line 2129 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 200: +#line 2134 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PFTy; const FunctionType *Ty; @@ -3672,106 +3655,78 @@ case 198: delete yyvsp[-1].ValueList; ; break;} -case 199: -#line 2186 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 201: +#line 2191 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = yyvsp[0].InstVal; ; break;} -case 200: -#line 2192 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 202: +#line 2197 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = yyvsp[0].ValueList; ; break;} -case 201: -#line 2194 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 203: +#line 2199 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = new std::vector(); ; break;} -case 202: -#line 2198 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" -{ - yyval.BoolVal = true; - ; - break;} -case 203: -#line 2201 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" -{ - yyval.BoolVal = false; - ; - break;} case 204: -#line 2207 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2203 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { - yyval.InstVal = new MallocInst(*yyvsp[0].TypeVal); - delete yyvsp[0].TypeVal; + yyval.BoolVal = true; ; break;} case 205: -#line 2211 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2206 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { - if (yyvsp[0].UInt64Val & (yyvsp[0].UInt64Val-1)) - ThrowException("Alignment amount '" + utostr(yyvsp[0].UInt64Val) + - "' is not a power of 2!"); - yyval.InstVal = new MallocInst(*yyvsp[-3].TypeVal, 0, yyvsp[0].UInt64Val); - delete yyvsp[-3].TypeVal; + yyval.BoolVal = false; ; break;} case 206: -#line 2218 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2212 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { - yyval.InstVal = new MallocInst(*yyvsp[-3].TypeVal, getVal(yyvsp[-1].PrimType, yyvsp[0].ValIDVal)); - delete yyvsp[-3].TypeVal; + if (yyvsp[0].UIntVal & (yyvsp[0].UIntVal-1)) + ThrowException("Alignment amount '" + utostr(yyvsp[0].UIntVal) + + "' is not a power of 2!"); + yyval.InstVal = new MallocInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal); + delete yyvsp[-1].TypeVal; ; break;} case 207: -#line 2222 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2219 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { - if (yyvsp[0].UInt64Val & (yyvsp[0].UInt64Val-1)) - ThrowException("Alignment amount '" + utostr(yyvsp[0].UInt64Val) + + if (yyvsp[0].UIntVal & (yyvsp[0].UIntVal-1)) + ThrowException("Alignment amount '" + utostr(yyvsp[0].UIntVal) + "' is not a power of 2!"); - yyval.InstVal = new MallocInst(*yyvsp[-6].TypeVal, getVal(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal), yyvsp[0].UInt64Val); - delete yyvsp[-6].TypeVal; + yyval.InstVal = new MallocInst(*yyvsp[-4].TypeVal, getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal), yyvsp[0].UIntVal); + delete yyvsp[-4].TypeVal; ; break;} case 208: -#line 2229 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2226 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { - yyval.InstVal = new AllocaInst(*yyvsp[0].TypeVal); - delete yyvsp[0].TypeVal; + if (yyvsp[0].UIntVal & (yyvsp[0].UIntVal-1)) + ThrowException("Alignment amount '" + utostr(yyvsp[0].UIntVal) + + "' is not a power of 2!"); + yyval.InstVal = new AllocaInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal); + delete yyvsp[-1].TypeVal; ; break;} case 209: #line 2233 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { - if (yyvsp[0].UInt64Val & (yyvsp[0].UInt64Val-1)) - ThrowException("Alignment amount '" + utostr(yyvsp[0].UInt64Val) + + if (yyvsp[0].UIntVal & (yyvsp[0].UIntVal-1)) + ThrowException("Alignment amount '" + utostr(yyvsp[0].UIntVal) + "' is not a power of 2!"); - yyval.InstVal = new AllocaInst(*yyvsp[-3].TypeVal, 0, yyvsp[0].UInt64Val); - delete yyvsp[-3].TypeVal; + yyval.InstVal = new AllocaInst(*yyvsp[-4].TypeVal, getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal), yyvsp[0].UIntVal); + delete yyvsp[-4].TypeVal; ; break;} case 210: #line 2240 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" -{ - yyval.InstVal = new AllocaInst(*yyvsp[-3].TypeVal, getVal(yyvsp[-1].PrimType, yyvsp[0].ValIDVal)); - delete yyvsp[-3].TypeVal; - ; - break;} -case 211: -#line 2244 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" -{ - if (yyvsp[0].UInt64Val & (yyvsp[0].UInt64Val-1)) - ThrowException("Alignment amount '" + utostr(yyvsp[0].UInt64Val) + - "' is not a power of 2!"); - yyval.InstVal = new AllocaInst(*yyvsp[-6].TypeVal, getVal(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal), yyvsp[0].UInt64Val); - delete yyvsp[-6].TypeVal; - ; - break;} -case 212: -#line 2251 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa(yyvsp[0].ValueVal->getType())) ThrowException("Trying to free nonpointer type " + @@ -3779,8 +3734,8 @@ case 212: yyval.InstVal = new FreeInst(yyvsp[0].ValueVal); ; break;} -case 213: -#line 2258 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 211: +#line 2247 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa(yyvsp[-1].TypeVal->get())) ThrowException("Can't load from nonpointer type: " + @@ -3792,8 +3747,8 @@ case 213: delete yyvsp[-1].TypeVal; ; break;} -case 214: -#line 2268 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 212: +#line 2257 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PT = dyn_cast(yyvsp[-1].TypeVal->get()); if (!PT) @@ -3808,8 +3763,8 @@ case 214: delete yyvsp[-1].TypeVal; ; break;} -case 215: -#line 2281 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 213: +#line 2270 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa(yyvsp[-2].TypeVal->get())) ThrowException("getelementptr insn requires pointer operand!"); @@ -4054,7 +4009,7 @@ yyerrhandle: } return 1; } -#line 2304 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2293 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" int yyerror(const char *ErrorMsg) { std::string where -- 2.34.1