diff options
Diffstat (limited to 'lib/AsmParser/llvmAsmParser.cpp')
-rw-r--r-- | lib/AsmParser/llvmAsmParser.cpp | 1354 |
1 files changed, 692 insertions, 662 deletions
diff --git a/lib/AsmParser/llvmAsmParser.cpp b/lib/AsmParser/llvmAsmParser.cpp index 9eee49d..6f814b4 100644 --- a/lib/AsmParser/llvmAsmParser.cpp +++ b/lib/AsmParser/llvmAsmParser.cpp @@ -67,46 +67,47 @@ #define CALL 310 #define TAIL 311 #define ASM_TOK 312 -#define CC_TOK 313 -#define CCC_TOK 314 -#define FASTCC_TOK 315 -#define COLDCC_TOK 316 -#define RET 317 -#define BR 318 -#define SWITCH 319 -#define INVOKE 320 -#define UNWIND 321 -#define UNREACHABLE 322 -#define ADD 323 -#define SUB 324 -#define MUL 325 -#define DIV 326 -#define REM 327 -#define AND 328 -#define OR 329 -#define XOR 330 -#define SETLE 331 -#define SETGE 332 -#define SETLT 333 -#define SETGT 334 -#define SETEQ 335 -#define SETNE 336 -#define MALLOC 337 -#define ALLOCA 338 -#define FREE 339 -#define LOAD 340 -#define STORE 341 -#define GETELEMENTPTR 342 -#define PHI_TOK 343 -#define CAST 344 -#define SELECT 345 -#define SHL 346 -#define SHR 347 -#define VAARG 348 -#define EXTRACTELEMENT 349 -#define INSERTELEMENT 350 -#define VAARG_old 351 -#define VANEXT_old 352 +#define MODULE 313 +#define CC_TOK 314 +#define CCC_TOK 315 +#define FASTCC_TOK 316 +#define COLDCC_TOK 317 +#define RET 318 +#define BR 319 +#define SWITCH 320 +#define INVOKE 321 +#define UNWIND 322 +#define UNREACHABLE 323 +#define ADD 324 +#define SUB 325 +#define MUL 326 +#define DIV 327 +#define REM 328 +#define AND 329 +#define OR 330 +#define XOR 331 +#define SETLE 332 +#define SETGE 333 +#define SETLT 334 +#define SETGT 335 +#define SETEQ 336 +#define SETNE 337 +#define MALLOC 338 +#define ALLOCA 339 +#define FREE 340 +#define LOAD 341 +#define STORE 342 +#define GETELEMENTPTR 343 +#define PHI_TOK 344 +#define CAST 345 +#define SELECT 346 +#define SHL 347 +#define SHR 348 +#define VAARG 349 +#define EXTRACTELEMENT 350 +#define INSERTELEMENT 351 +#define VAARG_old 352 +#define VANEXT_old 353 #line 14 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" @@ -1022,26 +1023,26 @@ typedef union { -#define YYFINAL 465 +#define YYFINAL 467 #define YYFLAG -32768 -#define YYNTBASE 113 +#define YYNTBASE 114 -#define YYTRANSLATE(x) ((unsigned)(x) <= 352 ? yytranslate[x] : 183) +#define YYTRANSLATE(x) ((unsigned)(x) <= 353 ? yytranslate[x] : 184) 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, 102, - 103, 111, 2, 100, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 107, - 99, 108, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 103, + 104, 112, 2, 101, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 108, + 100, 109, 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, - 104, 101, 106, 2, 2, 2, 2, 2, 112, 2, + 105, 102, 107, 2, 2, 2, 2, 2, 113, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 105, - 2, 2, 109, 2, 110, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 106, + 2, 2, 110, 2, 111, 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, @@ -1064,7 +1065,7 @@ static const char yytranslate[] = { 0, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98 + 97, 98, 99 }; #if YYDEBUG != 0 @@ -1081,95 +1082,96 @@ static const short yyprhs[] = { 0, 204, 208, 212, 217, 222, 226, 229, 232, 235, 238, 241, 244, 247, 250, 253, 256, 263, 269, 278, 285, 292, 299, 306, 313, 317, 319, 321, 323, 325, 328, - 331, 335, 338, 340, 345, 348, 352, 353, 361, 362, - 370, 374, 379, 380, 382, 384, 386, 390, 394, 398, - 402, 406, 408, 409, 411, 413, 415, 416, 419, 423, - 425, 427, 431, 433, 434, 443, 445, 447, 451, 453, - 455, 458, 459, 463, 465, 467, 469, 471, 473, 475, - 477, 479, 483, 485, 487, 489, 491, 493, 496, 499, - 502, 506, 509, 510, 512, 515, 518, 522, 532, 542, - 551, 565, 567, 569, 576, 582, 585, 592, 600, 602, - 606, 608, 609, 612, 614, 620, 626, 632, 635, 640, - 645, 652, 657, 662, 667, 672, 679, 682, 690, 692, - 695, 696, 698, 699, 703, 710, 714, 721, 724, 729, - 736 + 331, 336, 339, 341, 346, 349, 354, 355, 363, 364, + 372, 376, 381, 382, 384, 386, 388, 392, 396, 400, + 404, 408, 410, 411, 413, 415, 417, 418, 421, 425, + 427, 429, 433, 435, 436, 445, 447, 449, 453, 455, + 457, 460, 461, 465, 467, 469, 471, 473, 475, 477, + 479, 481, 485, 487, 489, 491, 493, 495, 498, 501, + 504, 508, 511, 512, 514, 517, 520, 524, 534, 544, + 553, 567, 569, 571, 578, 584, 587, 594, 602, 604, + 608, 610, 611, 614, 616, 622, 628, 634, 637, 642, + 647, 654, 659, 664, 669, 674, 681, 684, 692, 694, + 697, 698, 700, 701, 705, 712, 716, 723, 726, 731, + 738 }; static const short yyrhs[] = { 5, - 0, 6, 0, 3, 0, 4, 0, 69, 0, 70, - 0, 71, 0, 72, 0, 73, 0, 74, 0, 75, - 0, 76, 0, 77, 0, 78, 0, 79, 0, 80, - 0, 81, 0, 82, 0, 92, 0, 93, 0, 16, + 0, 6, 0, 3, 0, 4, 0, 70, 0, 71, + 0, 72, 0, 73, 0, 74, 0, 75, 0, 76, + 0, 77, 0, 78, 0, 79, 0, 80, 0, 81, + 0, 82, 0, 83, 0, 93, 0, 94, 0, 16, 0, 14, 0, 12, 0, 10, 0, 17, 0, 15, - 0, 13, 0, 11, 0, 119, 0, 120, 0, 18, - 0, 19, 0, 153, 99, 0, 0, 41, 0, 42, - 0, 43, 0, 44, 0, 0, 0, 60, 0, 61, - 0, 62, 0, 59, 4, 0, 0, 54, 4, 0, - 0, 100, 54, 4, 0, 34, 24, 0, 0, 128, - 0, 0, 100, 131, 130, 0, 128, 0, 54, 4, - 0, 134, 0, 8, 0, 136, 0, 8, 0, 136, + 0, 13, 0, 11, 0, 120, 0, 121, 0, 18, + 0, 19, 0, 154, 100, 0, 0, 41, 0, 42, + 0, 43, 0, 44, 0, 0, 0, 61, 0, 62, + 0, 63, 0, 60, 4, 0, 0, 54, 4, 0, + 0, 101, 54, 4, 0, 34, 24, 0, 0, 129, + 0, 0, 101, 132, 131, 0, 129, 0, 54, 4, + 0, 135, 0, 8, 0, 137, 0, 8, 0, 137, 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, 45, 0, 135, - 0, 166, 0, 101, 4, 0, 133, 102, 138, 103, - 0, 104, 4, 105, 136, 106, 0, 107, 4, 105, - 136, 108, 0, 109, 137, 110, 0, 109, 110, 0, - 136, 111, 0, 136, 0, 137, 100, 136, 0, 137, - 0, 137, 100, 37, 0, 37, 0, 0, 134, 104, - 141, 106, 0, 134, 104, 106, 0, 134, 112, 24, - 0, 134, 107, 141, 108, 0, 134, 109, 141, 110, - 0, 134, 109, 110, 0, 134, 38, 0, 134, 39, - 0, 134, 166, 0, 134, 140, 0, 134, 26, 0, - 119, 114, 0, 120, 4, 0, 9, 27, 0, 9, - 28, 0, 122, 7, 0, 90, 102, 139, 36, 134, - 103, 0, 88, 102, 139, 180, 103, 0, 91, 102, - 139, 100, 139, 100, 139, 103, 0, 115, 102, 139, - 100, 139, 103, 0, 116, 102, 139, 100, 139, 103, - 0, 117, 102, 139, 100, 139, 103, 0, 118, 102, - 139, 100, 139, 103, 0, 95, 102, 139, 100, 139, - 103, 0, 141, 100, 139, 0, 139, 0, 32, 0, - 33, 0, 144, 0, 144, 162, 0, 144, 163, 0, - 144, 58, 148, 0, 144, 25, 0, 145, 0, 145, - 123, 20, 132, 0, 145, 163, 0, 145, 58, 148, - 0, 0, 145, 123, 124, 142, 139, 146, 130, 0, - 0, 145, 123, 47, 142, 134, 147, 130, 0, 145, - 48, 150, 0, 145, 55, 99, 151, 0, 0, 24, - 0, 53, 0, 52, 0, 50, 99, 149, 0, 51, - 99, 4, 0, 49, 99, 24, 0, 104, 152, 106, - 0, 152, 100, 24, 0, 24, 0, 0, 22, 0, - 24, 0, 153, 0, 0, 134, 154, 0, 156, 100, - 155, 0, 155, 0, 156, 0, 156, 100, 37, 0, - 37, 0, 0, 125, 132, 153, 102, 157, 103, 129, - 126, 0, 29, 0, 109, 0, 124, 158, 159, 0, - 30, 0, 110, 0, 169, 161, 0, 0, 31, 164, - 158, 0, 3, 0, 4, 0, 7, 0, 27, 0, - 28, 0, 38, 0, 39, 0, 26, 0, 107, 141, - 108, 0, 140, 0, 113, 0, 153, 0, 166, 0, - 165, 0, 134, 167, 0, 169, 170, 0, 160, 170, - 0, 171, 123, 172, 0, 171, 174, 0, 0, 23, - 0, 63, 168, 0, 63, 8, 0, 64, 21, 167, - 0, 64, 9, 167, 100, 21, 167, 100, 21, 167, - 0, 65, 121, 167, 100, 21, 167, 104, 173, 106, - 0, 65, 121, 167, 100, 21, 167, 104, 106, 0, - 66, 125, 132, 167, 102, 177, 103, 36, 21, 167, - 67, 21, 167, 0, 67, 0, 68, 0, 173, 121, - 165, 100, 21, 167, 0, 121, 165, 100, 21, 167, - 0, 123, 179, 0, 134, 104, 167, 100, 167, 106, - 0, 175, 100, 104, 167, 100, 167, 106, 0, 168, - 0, 176, 100, 168, 0, 176, 0, 0, 57, 56, - 0, 56, 0, 115, 134, 167, 100, 167, 0, 116, - 134, 167, 100, 167, 0, 117, 134, 167, 100, 167, - 0, 46, 168, 0, 118, 168, 100, 168, 0, 90, - 168, 36, 134, 0, 91, 168, 100, 168, 100, 168, - 0, 94, 168, 100, 134, 0, 97, 168, 100, 134, - 0, 98, 168, 100, 134, 0, 95, 168, 100, 168, - 0, 96, 168, 100, 168, 100, 168, 0, 89, 175, - 0, 178, 125, 132, 167, 102, 177, 103, 0, 182, - 0, 100, 176, 0, 0, 35, 0, 0, 83, 134, - 127, 0, 83, 134, 100, 15, 167, 127, 0, 84, - 134, 127, 0, 84, 134, 100, 15, 167, 127, 0, - 85, 168, 0, 181, 86, 134, 167, 0, 181, 87, - 168, 100, 134, 167, 0, 88, 134, 167, 180, 0 + 0, 19, 0, 20, 0, 21, 0, 45, 0, 136, + 0, 167, 0, 102, 4, 0, 134, 103, 139, 104, + 0, 105, 4, 106, 137, 107, 0, 108, 4, 106, + 137, 109, 0, 110, 138, 111, 0, 110, 111, 0, + 137, 112, 0, 137, 0, 138, 101, 137, 0, 138, + 0, 138, 101, 37, 0, 37, 0, 0, 135, 105, + 142, 107, 0, 135, 105, 107, 0, 135, 113, 24, + 0, 135, 108, 142, 109, 0, 135, 110, 142, 111, + 0, 135, 110, 111, 0, 135, 38, 0, 135, 39, + 0, 135, 167, 0, 135, 141, 0, 135, 26, 0, + 120, 115, 0, 121, 4, 0, 9, 27, 0, 9, + 28, 0, 123, 7, 0, 91, 103, 140, 36, 135, + 104, 0, 89, 103, 140, 181, 104, 0, 92, 103, + 140, 101, 140, 101, 140, 104, 0, 116, 103, 140, + 101, 140, 104, 0, 117, 103, 140, 101, 140, 104, + 0, 118, 103, 140, 101, 140, 104, 0, 119, 103, + 140, 101, 140, 104, 0, 96, 103, 140, 101, 140, + 104, 0, 142, 101, 140, 0, 140, 0, 32, 0, + 33, 0, 145, 0, 145, 163, 0, 145, 164, 0, + 145, 59, 58, 149, 0, 145, 25, 0, 146, 0, + 146, 124, 20, 133, 0, 146, 164, 0, 146, 59, + 58, 149, 0, 0, 146, 124, 125, 143, 140, 147, + 131, 0, 0, 146, 124, 47, 143, 135, 148, 131, + 0, 146, 48, 151, 0, 146, 55, 100, 152, 0, + 0, 24, 0, 53, 0, 52, 0, 50, 100, 150, + 0, 51, 100, 4, 0, 49, 100, 24, 0, 105, + 153, 107, 0, 153, 101, 24, 0, 24, 0, 0, + 22, 0, 24, 0, 154, 0, 0, 135, 155, 0, + 157, 101, 156, 0, 156, 0, 157, 0, 157, 101, + 37, 0, 37, 0, 0, 126, 133, 154, 103, 158, + 104, 130, 127, 0, 29, 0, 110, 0, 125, 159, + 160, 0, 30, 0, 111, 0, 170, 162, 0, 0, + 31, 165, 159, 0, 3, 0, 4, 0, 7, 0, + 27, 0, 28, 0, 38, 0, 39, 0, 26, 0, + 108, 142, 109, 0, 141, 0, 114, 0, 154, 0, + 167, 0, 166, 0, 135, 168, 0, 170, 171, 0, + 161, 171, 0, 172, 124, 173, 0, 172, 175, 0, + 0, 23, 0, 64, 169, 0, 64, 8, 0, 65, + 21, 168, 0, 65, 9, 168, 101, 21, 168, 101, + 21, 168, 0, 66, 122, 168, 101, 21, 168, 105, + 174, 107, 0, 66, 122, 168, 101, 21, 168, 105, + 107, 0, 67, 126, 133, 168, 103, 178, 104, 36, + 21, 168, 68, 21, 168, 0, 68, 0, 69, 0, + 174, 122, 166, 101, 21, 168, 0, 122, 166, 101, + 21, 168, 0, 124, 180, 0, 135, 105, 168, 101, + 168, 107, 0, 176, 101, 105, 168, 101, 168, 107, + 0, 169, 0, 177, 101, 169, 0, 177, 0, 0, + 57, 56, 0, 56, 0, 116, 135, 168, 101, 168, + 0, 117, 135, 168, 101, 168, 0, 118, 135, 168, + 101, 168, 0, 46, 169, 0, 119, 169, 101, 169, + 0, 91, 169, 36, 135, 0, 92, 169, 101, 169, + 101, 169, 0, 95, 169, 101, 135, 0, 98, 169, + 101, 135, 0, 99, 169, 101, 135, 0, 96, 169, + 101, 169, 0, 97, 169, 101, 169, 101, 169, 0, + 90, 176, 0, 179, 126, 133, 168, 103, 178, 104, + 0, 183, 0, 101, 177, 0, 0, 35, 0, 0, + 84, 135, 128, 0, 84, 135, 101, 15, 168, 128, + 0, 85, 135, 128, 0, 85, 135, 101, 15, 168, + 128, 0, 86, 169, 0, 182, 87, 135, 168, 0, + 182, 88, 169, 101, 135, 168, 0, 89, 135, 168, + 181, 0 }; #endif @@ -1185,21 +1187,21 @@ static const short yyrline[] = { 0, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1113, 1113, 1113, 1113, 1113, 1113, 1114, 1117, 1120, 1126, 1133, 1145, 1149, 1160, 1169, 1172, 1180, 1184, 1189, 1190, 1193, 1196, 1206, - 1231, 1244, 1272, 1297, 1317, 1329, 1338, 1342, 1401, 1407, - 1415, 1420, 1425, 1428, 1431, 1438, 1448, 1479, 1486, 1507, - 1517, 1522, 1529, 1539, 1542, 1549, 1549, 1559, 1566, 1570, - 1573, 1576, 1579, 1592, 1612, 1614, 1616, 1619, 1622, 1626, - 1629, 1631, 1633, 1637, 1646, 1647, 1649, 1652, 1660, 1665, - 1667, 1671, 1675, 1683, 1683, 1684, 1684, 1686, 1692, 1697, - 1703, 1706, 1711, 1715, 1719, 1805, 1805, 1807, 1815, 1815, - 1817, 1821, 1821, 1830, 1833, 1836, 1839, 1842, 1845, 1848, - 1851, 1854, 1878, 1885, 1888, 1893, 1893, 1899, 1903, 1906, - 1914, 1923, 1927, 1937, 1948, 1951, 1954, 1957, 1960, 1974, - 1978, 2031, 2034, 2040, 2048, 2058, 2065, 2070, 2077, 2081, - 2087, 2087, 2089, 2092, 2098, 2110, 2121, 2131, 2143, 2150, - 2157, 2164, 2169, 2188, 2210, 2218, 2230, 2244, 2301, 2307, - 2309, 2313, 2316, 2322, 2326, 2330, 2334, 2338, 2345, 2355, - 2368 + 1231, 1244, 1273, 1298, 1318, 1330, 1339, 1343, 1402, 1408, + 1416, 1421, 1426, 1429, 1432, 1439, 1449, 1480, 1487, 1508, + 1518, 1523, 1530, 1540, 1543, 1550, 1550, 1560, 1567, 1571, + 1574, 1577, 1580, 1593, 1613, 1615, 1617, 1620, 1623, 1627, + 1630, 1632, 1634, 1638, 1650, 1651, 1653, 1656, 1664, 1669, + 1671, 1675, 1679, 1687, 1687, 1688, 1688, 1690, 1696, 1701, + 1707, 1710, 1715, 1719, 1723, 1809, 1809, 1811, 1819, 1819, + 1821, 1825, 1825, 1834, 1837, 1840, 1843, 1846, 1849, 1852, + 1855, 1858, 1882, 1889, 1892, 1897, 1897, 1903, 1907, 1910, + 1918, 1927, 1931, 1941, 1952, 1955, 1958, 1961, 1964, 1978, + 1982, 2035, 2038, 2044, 2052, 2062, 2069, 2074, 2081, 2085, + 2091, 2091, 2093, 2096, 2102, 2114, 2125, 2135, 2147, 2154, + 2161, 2168, 2173, 2192, 2214, 2222, 2234, 2248, 2305, 2311, + 2313, 2317, 2320, 2326, 2330, 2334, 2338, 2342, 2349, 2359, + 2372 }; #endif @@ -1213,18 +1215,18 @@ static const char * const yytname[] = { "$","error","$undefined.","ESINT64VAL" "BEGINTOK","ENDTOK","DECLARE","GLOBAL","CONSTANT","SECTION","VOLATILE","TO", "DOTDOTDOT","NULL_TOK","UNDEF","CONST","INTERNAL","LINKONCE","WEAK","APPENDING", "OPAQUE","NOT","EXTERNAL","TARGET","TRIPLE","ENDIAN","POINTERSIZE","LITTLE", -"BIG","ALIGN","DEPLIBS","CALL","TAIL","ASM_TOK","CC_TOK","CCC_TOK","FASTCC_TOK", -"COLDCC_TOK","RET","BR","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","EXTRACTELEMENT","INSERTELEMENT","VAARG_old","VANEXT_old", -"'='","','","'\\\\'","'('","')'","'['","'x'","']'","'<'","'>'","'{'","'}'","'*'", -"'c'","INTVAL","EINT64VAL","ArithmeticOps","LogicalOps","SetCondOps","ShiftOps", -"SIntType","UIntType","IntType","FPType","OptAssign","OptLinkage","OptCallingConv", -"OptAlign","OptCAlign","SectionString","OptSection","GlobalVarAttributes","GlobalVarAttribute", -"TypesV","UpRTypesV","Types","PrimType","UpRTypes","TypeListI","ArgTypeListI", -"ConstVal","ConstExpr","ConstVector","GlobalType","Module","FunctionList","ConstPool", -"@1","@2","AsmBlock","BigOrLittle","TargetDefinition","LibrariesDefinition", +"BIG","ALIGN","DEPLIBS","CALL","TAIL","ASM_TOK","MODULE","CC_TOK","CCC_TOK", +"FASTCC_TOK","COLDCC_TOK","RET","BR","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","EXTRACTELEMENT","INSERTELEMENT","VAARG_old", +"VANEXT_old","'='","','","'\\\\'","'('","')'","'['","'x'","']'","'<'","'>'", +"'{'","'}'","'*'","'c'","INTVAL","EINT64VAL","ArithmeticOps","LogicalOps","SetCondOps", +"ShiftOps","SIntType","UIntType","IntType","FPType","OptAssign","OptLinkage", +"OptCallingConv","OptAlign","OptCAlign","SectionString","OptSection","GlobalVarAttributes", +"GlobalVarAttribute","TypesV","UpRTypesV","Types","PrimType","UpRTypes","TypeListI", +"ArgTypeListI","ConstVal","ConstExpr","ConstVector","GlobalType","Module","FunctionList", +"ConstPool","@1","@2","AsmBlock","BigOrLittle","TargetDefinition","LibrariesDefinition", "LibList","Name","OptName","ArgVal","ArgListH","ArgList","FunctionHeaderH","BEGIN", "FunctionHeader","END","Function","FunctionProto","@3","ConstValueRef","SymbolicValueRef", "ValueRef","ResolvedVal","BasicBlockList","BasicBlock","InstructionList","BBTerminatorInst", @@ -1234,30 +1236,30 @@ static const char * const yytname[] = { "$","error","$undefined.","ESINT64VAL" #endif static const short yyr1[] = { 0, - 113, 113, 114, 114, 115, 115, 115, 115, 115, 116, - 116, 116, 117, 117, 117, 117, 117, 117, 118, 118, - 119, 119, 119, 119, 120, 120, 120, 120, 121, 121, - 122, 122, 123, 123, 124, 124, 124, 124, 124, 125, - 125, 125, 125, 125, 126, 126, 127, 127, 128, 129, - 129, 130, 130, 131, 131, 132, 132, 133, 133, 134, - 135, 135, 135, 135, 135, 135, 135, 135, 135, 135, - 135, 135, 135, 136, 136, 136, 136, 136, 136, 136, - 136, 136, 136, 137, 137, 138, 138, 138, 138, 139, - 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, - 139, 139, 139, 139, 139, 140, 140, 140, 140, 140, - 140, 140, 140, 141, 141, 142, 142, 143, 144, 144, - 144, 144, 144, 145, 145, 145, 146, 145, 147, 145, - 145, 145, 145, 148, 149, 149, 150, 150, 150, 151, - 152, 152, 152, 153, 153, 154, 154, 155, 156, 156, - 157, 157, 157, 157, 158, 159, 159, 160, 161, 161, - 162, 164, 163, 165, 165, 165, 165, 165, 165, 165, - 165, 165, 165, 166, 166, 167, 167, 168, 169, 169, - 170, 171, 171, 171, 172, 172, 172, 172, 172, 172, - 172, 172, 172, 173, 173, 174, 175, 175, 176, 176, - 177, 177, 178, 178, 179, 179, 179, 179, 179, 179, - 179, 179, 179, 179, 179, 179, 179, 179, 179, 180, - 180, 181, 181, 182, 182, 182, 182, 182, 182, 182, - 182 + 114, 114, 115, 115, 116, 116, 116, 116, 116, 117, + 117, 117, 118, 118, 118, 118, 118, 118, 119, 119, + 120, 120, 120, 120, 121, 121, 121, 121, 122, 122, + 123, 123, 124, 124, 125, 125, 125, 125, 125, 126, + 126, 126, 126, 126, 127, 127, 128, 128, 129, 130, + 130, 131, 131, 132, 132, 133, 133, 134, 134, 135, + 136, 136, 136, 136, 136, 136, 136, 136, 136, 136, + 136, 136, 136, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 138, 138, 139, 139, 139, 139, 140, + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, + 140, 140, 140, 140, 140, 141, 141, 141, 141, 141, + 141, 141, 141, 142, 142, 143, 143, 144, 145, 145, + 145, 145, 145, 146, 146, 146, 147, 146, 148, 146, + 146, 146, 146, 149, 150, 150, 151, 151, 151, 152, + 153, 153, 153, 154, 154, 155, 155, 156, 157, 157, + 158, 158, 158, 158, 159, 160, 160, 161, 162, 162, + 163, 165, 164, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 166, 167, 167, 168, 168, 169, 170, 170, + 171, 172, 172, 172, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 174, 174, 175, 176, 176, 177, 177, + 178, 178, 179, 179, 180, 180, 180, 180, 180, 180, + 180, 180, 180, 180, 180, 180, 180, 180, 180, 181, + 181, 182, 182, 183, 183, 183, 183, 183, 183, 183, + 183 }; static const short yyr2[] = { 0, @@ -1273,7 +1275,7 @@ static const short yyr2[] = { 0, 3, 3, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 6, 5, 8, 6, 6, 6, 6, 6, 3, 1, 1, 1, 1, 2, 2, - 3, 2, 1, 4, 2, 3, 0, 7, 0, 7, + 4, 2, 1, 4, 2, 4, 0, 7, 0, 7, 3, 4, 0, 1, 1, 1, 3, 3, 3, 3, 3, 1, 0, 1, 1, 1, 0, 2, 3, 1, 1, 3, 1, 0, 8, 1, 1, 3, 1, 1, @@ -1290,371 +1292,395 @@ static const short yyr2[] = { 0, static const short yydefact[] = { 133, 39, 123, 122, 162, 35, 36, 37, 38, 0, 40, 183, 119, 120, 183, 144, 145, 0, 0, 0, 39, - 0, 125, 40, 134, 121, 0, 41, 42, 43, 0, - 0, 184, 180, 34, 159, 160, 161, 179, 0, 0, - 0, 131, 0, 126, 0, 0, 0, 33, 163, 44, - 1, 2, 57, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 0, 0, 0, - 0, 174, 0, 0, 56, 75, 60, 175, 76, 156, - 157, 158, 223, 182, 0, 0, 0, 143, 132, 124, - 116, 117, 0, 0, 77, 0, 0, 59, 82, 84, - 0, 0, 89, 83, 222, 0, 204, 0, 0, 0, - 0, 40, 192, 193, 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, 0, 0, 181, 40, 196, 0, - 219, 139, 136, 135, 137, 138, 142, 0, 129, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 0, 0, 0, 0, 127, 0, 0, 0, 81, 154, - 88, 86, 0, 0, 208, 203, 186, 185, 0, 0, - 24, 28, 23, 27, 22, 26, 21, 25, 29, 30, - 0, 0, 47, 47, 228, 0, 0, 217, 0, 0, + 0, 125, 40, 0, 0, 41, 42, 43, 0, 0, + 184, 180, 34, 159, 160, 161, 179, 0, 0, 0, + 131, 0, 0, 0, 0, 0, 33, 163, 134, 121, + 44, 1, 2, 57, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, 74, 0, 0, + 0, 0, 174, 0, 0, 56, 75, 60, 175, 76, + 156, 157, 158, 223, 182, 0, 0, 0, 143, 132, + 126, 124, 116, 117, 0, 0, 77, 0, 0, 59, + 82, 84, 0, 0, 89, 83, 222, 0, 204, 0, + 0, 0, 0, 40, 192, 193, 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, 0, 0, 181, 40, + 196, 0, 219, 139, 136, 135, 137, 138, 142, 0, + 129, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 0, 0, 0, 0, 127, 0, 0, 0, + 81, 154, 88, 86, 0, 0, 208, 203, 186, 185, + 0, 0, 24, 28, 23, 27, 22, 26, 21, 25, + 29, 30, 0, 0, 47, 47, 228, 0, 0, 217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 140, 52, 103, 104, 3, 4, 101, - 102, 105, 100, 96, 97, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 99, 98, 52, - 58, 58, 85, 153, 147, 150, 151, 0, 0, 78, - 164, 165, 166, 171, 167, 168, 169, 170, 0, 173, - 177, 176, 178, 0, 187, 0, 0, 0, 224, 0, - 226, 221, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 141, 0, - 130, 0, 0, 0, 0, 91, 115, 0, 0, 95, - 0, 92, 0, 0, 0, 0, 128, 79, 80, 146, - 148, 0, 50, 87, 0, 0, 0, 0, 0, 0, - 0, 0, 231, 0, 0, 210, 0, 212, 215, 0, - 213, 214, 0, 0, 0, 209, 0, 229, 0, 0, - 0, 54, 52, 221, 0, 0, 0, 0, 90, 93, - 94, 0, 0, 0, 0, 152, 149, 51, 45, 172, - 0, 0, 202, 47, 48, 47, 199, 220, 0, 0, - 0, 0, 205, 206, 207, 202, 0, 49, 55, 53, - 0, 0, 0, 0, 114, 0, 0, 0, 0, 0, - 155, 0, 0, 201, 0, 0, 225, 227, 0, 0, - 0, 211, 216, 0, 230, 107, 0, 0, 0, 0, - 0, 0, 0, 46, 0, 0, 0, 200, 197, 0, - 218, 106, 0, 113, 109, 110, 111, 112, 0, 190, - 0, 0, 0, 198, 0, 188, 0, 189, 0, 0, - 108, 0, 0, 0, 0, 0, 0, 195, 0, 0, - 194, 191, 0, 0, 0 + 0, 0, 0, 0, 0, 140, 52, 103, 104, 3, + 4, 101, 102, 105, 100, 96, 97, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, + 98, 52, 58, 58, 85, 153, 147, 150, 151, 0, + 0, 78, 164, 165, 166, 171, 167, 168, 169, 170, + 0, 173, 177, 176, 178, 0, 187, 0, 0, 0, + 224, 0, 226, 221, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 141, 0, 130, 0, 0, 0, 0, 91, 115, 0, + 0, 95, 0, 92, 0, 0, 0, 0, 128, 79, + 80, 146, 148, 0, 50, 87, 0, 0, 0, 0, + 0, 0, 0, 0, 231, 0, 0, 210, 0, 212, + 215, 0, 213, 214, 0, 0, 0, 209, 0, 229, + 0, 0, 0, 54, 52, 221, 0, 0, 0, 0, + 90, 93, 94, 0, 0, 0, 0, 152, 149, 51, + 45, 172, 0, 0, 202, 47, 48, 47, 199, 220, + 0, 0, 0, 0, 205, 206, 207, 202, 0, 49, + 55, 53, 0, 0, 0, 0, 114, 0, 0, 0, + 0, 0, 155, 0, 0, 201, 0, 0, 225, 227, + 0, 0, 0, 211, 216, 0, 230, 107, 0, 0, + 0, 0, 0, 0, 0, 46, 0, 0, 0, 200, + 197, 0, 218, 106, 0, 113, 109, 110, 111, 112, + 0, 190, 0, 0, 0, 198, 0, 188, 0, 189, + 0, 0, 108, 0, 0, 0, 0, 0, 0, 195, + 0, 0, 194, 191, 0, 0, 0 }; -static const short yydefgoto[] = { 72, - 230, 244, 245, 246, 247, 171, 172, 201, 173, 20, - 10, 30, 401, 279, 352, 369, 301, 353, 73, 74, - 184, 76, 77, 101, 183, 307, 270, 308, 93, 463, - 1, 2, 250, 225, 25, 155, 42, 89, 158, 78, - 321, 256, 257, 258, 31, 82, 11, 37, 12, 13, - 23, 271, 79, 273, 377, 14, 33, 34, 147, 442, - 84, 208, 404, 405, 148, 149, 333, 150, 151 +static const short yydefgoto[] = { 73, + 232, 246, 247, 248, 249, 173, 174, 203, 175, 20, + 10, 29, 403, 281, 354, 371, 303, 355, 74, 75, + 186, 77, 78, 103, 185, 309, 272, 310, 95, 465, + 1, 2, 252, 227, 50, 157, 41, 90, 160, 79, + 323, 258, 259, 260, 30, 83, 11, 36, 12, 13, + 23, 273, 80, 275, 379, 14, 32, 33, 149, 444, + 85, 210, 406, 407, 150, 151, 335, 152, 153 }; static const short yypact[] = {-32768, - 164, 551,-32768,-32768,-32768,-32768,-32768,-32768, -12, 47, - 6,-32768,-32768, -13,-32768,-32768, 90, -27, -12, 49, - -23,-32768, 47,-32768,-32768, 84,-32768,-32768,-32768, 935, - -20,-32768,-32768, 96,-32768,-32768,-32768,-32768, 2, 18, - 25,-32768, 1,-32768, 935, 79, 79,-32768,-32768,-32768, --32768,-32768, 60,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768, 167, 173, 180, - 450,-32768, 96, 94,-32768,-32768, -69,-32768,-32768,-32768, --32768,-32768, 1098,-32768, 174, 114, 193, 175,-32768,-32768, --32768,-32768, 973, 1011,-32768, 95, 97,-32768,-32768, -69, - -66, 99, 745,-32768,-32768, 973,-32768, 147, 1049, 50, - 142, 47,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 973, 973, - 973, 973, 973, 973, 973,-32768,-32768, 973, 973, 973, - 973, 973, 973, 973, 973, 973,-32768, 47,-32768, 83, --32768,-32768,-32768,-32768,-32768,-32768,-32768, -19,-32768, 115, - 170, 205, 172, 213, 178, 214, 184, 215, 216, 221, - 190, 217, 222, 56,-32768, 973, 973, 973,-32768, 783, --32768, 131, 129, 563,-32768,-32768, 60,-32768, 563, 563, + 37, 361,-32768,-32768,-32768,-32768,-32768,-32768, -44, 49, + 38,-32768,-32768, 3,-32768,-32768, 70, -2, 42, 50, + 4,-32768, 49, 89, 125,-32768,-32768,-32768, 1054, -21, +-32768,-32768, 64,-32768,-32768,-32768,-32768, 26, 45, 47, +-32768, 69, 89, 1054, 117, 117,-32768,-32768,-32768,-32768, +-32768,-32768,-32768, 73,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 174, 179, + 180, 122,-32768, 64, 82,-32768,-32768, -27,-32768,-32768, +-32768,-32768,-32768, 1215,-32768, 163, -25, 186, 168,-32768, +-32768,-32768,-32768,-32768, 1092, 1130,-32768, 85, 90,-32768, +-32768, -27, -38, 94, 864,-32768,-32768, 1092,-32768, 142, + 1168, 23, 144, 49,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - 563, 935, 133, 134,-32768, 563, 136, 137, 202, 141, - 143, 144, 145, 146, 148, 563, 563, 563, 149, 935, - 973, 973, 218,-32768, 150,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 154, 156, 157, 165, 821, - 1011, 520, 227, 166, 169, 185, 186,-32768,-32768, 150, - -32, -25, -69,-32768, 96,-32768, 176, 187, 859,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1011,-32768, --32768,-32768,-32768, 177,-32768, 189, 563, 3,-32768, 4, --32768, 191, 563, 192, 973, 973, 973, 973, 973, 973, - 973, 194, 195, 197, 973, 563, 563, 198,-32768, 12, --32768, 1011, 1011, 1011, 1011,-32768,-32768, -2, -35,-32768, - -40,-32768, 1011, 1011, 1011, 1011,-32768,-32768,-32768,-32768, --32768, 897, 259,-32768, -33, 278, 279, 199, 563, 298, - 563, 973,-32768, 203, 563,-32768, 211,-32768,-32768, 212, --32768,-32768, 563, 563, 563,-32768, 219,-32768, 973, 289, - 310,-32768, 150, 191, 282, 220, 224, 1011,-32768,-32768, --32768, 225, 226, 230, 231,-32768,-32768,-32768, 261,-32768, - 563, 563, 973, 234,-32768, 234,-32768, 235, 563, 236, - 973, 973,-32768,-32768,-32768, 973, 563,-32768,-32768,-32768, - 237, 973, 1011, 1011,-32768, 1011, 1011, 1011, 1011, 318, --32768, 238, 223, 235, 242, 283,-32768,-32768, 973, 233, - 563,-32768,-32768, 243,-32768,-32768, 245, 249, 247, 248, - 250, 251, 252,-32768, 331, 10, 320,-32768,-32768, 253, --32768,-32768, 1011,-32768,-32768,-32768,-32768,-32768, 563,-32768, - 645, 39, 336,-32768, 255,-32768, 265,-32768, 645, 563, --32768, 349, 271, 305, 563, 352, 353,-32768, 563, 563, --32768,-32768, 376, 378,-32768 + 1092, 1092, 1092, 1092, 1092, 1092, 1092,-32768,-32768, 1092, + 1092, 1092, 1092, 1092, 1092, 1092, 1092, 1092,-32768, 49, +-32768, 75,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -36, +-32768, 124, 162, 195, 165, 196, 167, 197, 169, 198, + 200, 201, 177, 199, 209, 531,-32768, 1092, 1092, 1092, +-32768, 902,-32768, 103, 101, 680,-32768,-32768, 73,-32768, + 680, 680,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768, 680, 1054, 116, 118,-32768, 680, 113, 127, + 189, 130, 133, 134, 135, 136, 137, 680, 680, 680, + 139, 1054, 1092, 1092, 202,-32768, 140,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768, 143, 145, 146, + 147, 940, 1130, 637, 219, 148, 149, 150, 151,-32768, +-32768, 140, -35, -64, -27,-32768, 64,-32768, 154, 153, + 978,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, + 1130,-32768,-32768,-32768,-32768, 158,-32768, 161, 680, -5, +-32768, 15,-32768, 173, 680, 164, 1092, 1092, 1092, 1092, + 1092, 1092, 1092, 178, 182, 183, 1092, 680, 680, 184, +-32768, -18,-32768, 1130, 1130, 1130, 1130,-32768,-32768, -6, + -26,-32768, -37,-32768, 1130, 1130, 1130, 1130,-32768,-32768, +-32768,-32768,-32768, 1016, 213,-32768, -19, 245, 247, 187, + 680, 266, 680, 1092,-32768, 190, 680,-32768, 191,-32768, +-32768, 192,-32768,-32768, 680, 680, 680,-32768, 193,-32768, + 1092, 256, 290,-32768, 140, 173, 261, 206, 207, 1130, +-32768,-32768,-32768, 210, 211, 212, 214,-32768,-32768,-32768, + 244,-32768, 680, 680, 1092, 215,-32768, 215,-32768, 218, + 680, 220, 1092, 1092,-32768,-32768,-32768, 1092, 680,-32768, +-32768,-32768, 216, 1092, 1130, 1130,-32768, 1130, 1130, 1130, + 1130, 295,-32768, 222, 205, 218, 221, 248,-32768,-32768, + 1092, 217, 680,-32768,-32768, 223,-32768,-32768, 224, 225, + 231, 232, 233, 235, 238,-32768, 293, 8, 307,-32768, +-32768, 237,-32768,-32768, 1130,-32768,-32768,-32768,-32768,-32768, + 680,-32768, 763, 41, 324,-32768, 243,-32768, 249,-32768, + 763, 680,-32768, 327, 252, 281, 680, 333, 334,-32768, + 680, 680,-32768,-32768, 359, 360,-32768 }; static const short yypgoto[] = {-32768, --32768, 296, 297, 299, 300, -110, -109, -412,-32768, 350, - 365, -101,-32768, -196, 63,-32768, -243,-32768, -41,-32768, - -30,-32768, -55, 284,-32768, -89, 228, -201, 341,-32768, --32768,-32768,-32768,-32768, 373,-32768,-32768,-32768,-32768, 11, --32768, 72,-32768,-32768, 374,-32768,-32768,-32768,-32768, 394, --32768, -364, 46, 64, -103,-32768, 384,-32768,-32768,-32768, --32768,-32768, 68, 15,-32768,-32768, 51,-32768,-32768 +-32768, 277, 278, 279, 280, -111, -110, -415,-32768, 335, + 353, -103,-32768, -199, 51,-32768, -247,-32768, -40,-32768, + -29,-32768, -55, 269,-32768, -95, 203, -184, 329,-32768, +-32768,-32768,-32768,-32768, 337,-32768,-32768,-32768,-32768, 10, +-32768, 54,-32768,-32768, 354,-32768,-32768,-32768,-32768, 380, +-32768, -344, 53, 138, -102,-32768, 373,-32768,-32768,-32768, +-32768,-32768, 55, 0,-32768,-32768, 35,-32768,-32768 }; -#define YYLAST 1196 - - -static const short yytable[] = { 75, - 199, 200, 185, 90, 175, 188, 317, 281, 80, 32, - 202, 24, 21, 441, 75, 100, 35, 329, 331, 191, - 192, 193, 194, 195, 196, 197, 198, 205, 32, 449, - 209, 210, -58, 178, 211, 212, 213, 214, 215, 309, - 311, 104, 219, 179, 21, 350, 220, 100, 191, 192, - 193, 194, 195, 196, 197, 198, 330, 330, 189, 358, - 51, 52, 159, 174, 358, 351, 358, 325, 45, 361, - 190, 43, 360, 318, 370, 48, 447, 15, 104, 16, - 223, 233, 319, 102, 453, 104, 224, 50, 81, 5, - 6, 7, 8, 234, 235, 46, 36, 358, 203, 204, - 85, 206, 207, 359, 88, 26, 27, 28, 29, 390, - 91, 92, 216, 217, 218, 440, 86, 15, 298, 16, - 251, 252, 253, 87, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 39, 40, - 41, 226, 227, 236, 448, 237, 238, 136, 137, 255, - 239, 191, 192, 193, 194, 195, 196, 197, 198, 240, - 277, -59, 241, -118, 242, 153, 154, 243, 221, 222, - 95, 75, -24, -24, -23, -23, 96, 407, 296, 408, - -22, -22, 337, 97, 339, 340, -21, -21, 3, 75, - 297, 346, 228, 229, 4, 103, 156, 152, 157, 176, - 180, 177, 186, 253, 5, 6, 7, 8, -28, 174, - 174, 174, 354, 355, 356, 357, -27, -26, -25, 249, - 231, 9, -31, 362, 363, 364, 365, -32, 232, 272, - 259, 260, 278, 280, 272, 272, 284, 285, 174, 283, - 286, 299, 287, 288, 289, 290, 272, 291, 295, 300, - 312, 272, 274, 275, 336, 302, 338, 303, 304, 341, - 342, 272, 272, 272, 276, 320, 305, 313, 395, 282, - 314, 174, 174, 174, 174, 322, 326, 412, 413, 292, - 293, 294, 174, 174, 174, 174, 315, 316, 327, 323, - 332, 255, 350, 343, 344, 335, 345, 349, 371, 372, - 373, 375, 379, 418, 419, 428, 420, 421, 422, 423, - 381, 382, 388, 389, 400, 199, 200, 392, 387, 393, - 386, 424, 272, 394, 396, 397, 426, 174, 272, 398, - 399, 199, 200, 406, 409, 411, 330, 425, 429, 416, - 328, 272, 272, 445, 427, 431, 334, 432, 433, 434, - 435, 439, 436, 437, 438, 443, 450, 451, 444, 347, - 348, 417, 174, 174, 452, 174, 174, 174, 174, 455, - 456, 457, 459, 460, 272, 464, 272, 465, 143, 144, - 272, 145, 146, 83, 47, 368, 182, 94, 272, 272, - 272, 44, 374, 367, 376, 22, 49, 38, 380, 378, - 414, 248, 174, 0, 391, 0, 383, 384, 385, 0, - 0, 0, 0, 0, 0, 0, 272, 272, 0, 0, - 0, 0, 0, 0, 272, 0, 0, 0, 0, 0, - 0, 0, 272, 0, 402, 403, 0, 0, 0, 0, - 0, 0, 410, 0, 0, 0, 0, 0, 0, 0, - 415, 0, 0, 0, 51, 52, 272, 98, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 15, 0, 16, 430, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 272, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 67, 272, 0, 0, 0, 0, - 272, 0, 446, 0, 272, 272, 0, 0, 0, 0, - 0, 0, 0, 454, 0, 0, 0, 0, 458, 0, - 0, 0, 461, 462, 51, 52, 0, 98, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 65, - 66, 15, 0, 16, 0, 0, 0, 0, 0, 0, - 68, 0, 0, 69, 0, 0, 70, 0, 71, 99, - 0, 0, 0, 0, 67, 261, 262, 51, 52, 263, - -34, 0, 15, 0, 16, 0, 0, 0, 0, 0, - 0, 4, -34, -34, 15, 0, 16, 0, 264, 265, - 266, -34, -34, -34, -34, 0, 0, -34, 17, 0, - 267, 268, 0, 0, 0, 18, 0, 0, 19, 0, +#define YYLAST 1314 + + +static const short yytable[] = { 76, + 177, 201, 202, 92, 319, 187, 283, 81, 190, 331, + 204, 21, 443, 24, 76, 352, 102, 193, 194, 195, + 196, 197, 198, 199, 200, 31, 155, 156, 451, 333, + 207, 191, 34, 211, 212, 353, -118, 213, 214, 215, + 216, 217, 21, 192, 321, 221, 222, 106, 332, 102, + 193, 194, 195, 196, 197, 198, 199, 200, 311, 313, + 31, 3, 180, 360, 225, 161, 176, 4, 332, 44, + 226, 320, 181, 363, 360, -58, 106, 5, 6, 7, + 8, 360, 362, 104, 106, 15, 327, 16, 82, 372, + 5, 6, 7, 8, 360, 9, 45, 42, 449, 43, + 361, 205, 206, 47, 208, 209, 455, 392, 25, 26, + 27, 28, 49, 35, 442, 218, 219, 220, 38, 39, + 40, 300, 253, 254, 255, 86, 52, 53, 51, 100, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 15, 87, 16, 88, 450, 93, 94, + 228, 229, 257, 193, 194, 195, 196, 197, 198, 199, + 200, 223, 224, 279, -24, -24, 68, -23, -23, -22, + -22, -21, -21, 89, 76, -59, 409, 97, 410, 230, + 231, 298, 98, 99, 105, 339, 154, 341, 342, 158, + 178, 159, 76, 299, 348, 179, 182, 188, -28, -27, + -26, -25, 233, 261, 262, 255, -31, -32, 356, 357, + 358, 359, 176, 176, 176, 234, 280, 285, 282, 364, + 365, 366, 367, 69, 287, 301, 70, 286, 251, 71, + 288, 72, 101, 289, 290, 291, 292, 293, 274, 297, + 302, 176, 314, 274, 274, 304, 352, 305, 306, 307, + 315, 316, 317, 318, 324, 274, 325, 338, 328, 340, + 274, 329, 343, 344, 397, 373, 322, 374, 337, 377, + 274, 274, 274, 334, 176, 176, 176, 176, 345, 390, + 414, 415, 346, 347, 351, 176, 176, 176, 176, 375, + 381, 383, 384, 391, 257, 388, 394, 402, 426, 420, + 421, 332, 422, 423, 424, 425, 395, 396, 430, 428, + 398, 399, 400, 441, 401, 408, 201, 202, 411, 418, + 413, 389, 427, 431, 429, 435, 433, 434, 276, 277, + 176, 274, 201, 202, 436, 437, 438, 274, 439, 447, + 278, 440, 445, 446, 452, 284, 453, 457, 459, 454, + 274, 274, 458, 461, 462, 294, 295, 296, 466, 467, + 145, 146, 147, 148, 419, 176, 176, 84, 176, 176, + 176, 176, 46, 184, 96, 370, 48, 369, 250, 91, + -34, 22, 15, 274, 16, 274, 37, 416, 380, 274, + 393, 4, -34, -34, 0, 0, 0, 274, 274, 274, + 0, -34, -34, -34, -34, 176, 0, -34, 17, 0, + 0, 0, 0, 0, 0, 18, 330, 0, 0, 19, + 0, 0, 336, 0, 0, 274, 274, 0, 0, 0, + 0, 0, 0, 274, 0, 349, 350, 0, 0, 0, + 0, 274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 68, 0, 0, 69, 0, 0, 70, 0, 71, 310, - 0, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 0, 0, 261, 262, 0, - 236, 263, 237, 238, 136, 137, 0, 239, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 269, - 264, 265, 266, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 267, 268, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 274, 0, 0, 376, 0, + 378, 0, 0, 0, 382, 0, 0, 0, 0, 0, + 0, 0, 385, 386, 387, 0, 0, 0, 0, 0, + 0, 0, 0, 274, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 274, 0, 0, 0, 0, 274, + 404, 405, 0, 274, 274, 0, 0, 0, 412, 0, + 0, 0, 0, 0, 0, 0, 417, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 432, 0, 15, 0, 16, 0, 235, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 236, 237, + 0, 0, 0, 0, 0, 0, 0, 0, 448, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 456, + 0, 0, 0, 0, 460, 0, 0, 0, 463, 464, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 0, 0, 0, 0, 0, 238, + 0, 239, 240, 138, 139, 0, 241, 0, 0, 0, + 0, 0, 0, 0, 0, 242, 0, 0, 243, 0, + 244, 52, 53, 245, 100, 162, 163, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 66, 67, 15, 0, + 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 0, 0, 0, - 0, 0, 236, 0, 237, 238, 136, 137, 0, 239, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, - 52, 269, 98, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 15, 0, 16, 0, + 0, 68, 263, 264, 52, 53, 265, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 181, 0, 0, 0, 0, 0, 51, 52, 67, - 98, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 15, 0, 16, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 254, - 0, 0, 0, 0, 0, 51, 52, 67, 98, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 65, 66, 15, 0, 16, 68, 0, 0, 69, 0, - 0, 70, 0, 71, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 51, 52, 67, 98, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 15, 0, 16, 68, 0, 0, 69, 0, 0, 70, - 0, 71, 0, 0, 0, 324, 0, 0, 0, 0, - 0, 51, 52, 67, 98, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 15, 0, - 16, 68, 0, 0, 69, 0, 306, 70, 0, 71, - 0, 0, 0, 366, 0, 0, 0, 0, 0, 51, - 52, 67, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 15, 0, 16, 68, - 0, 0, 69, 0, 0, 70, 0, 71, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 51, 52, 67, - 98, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 15, 0, 16, 68, 0, 0, - 69, 0, 0, 70, 0, 71, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 51, 52, 67, 98, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 65, 66, 15, 0, 16, 68, 0, 0, 69, 0, - 0, 70, 0, 71, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 51, 52, 67, 187, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 15, 0, 16, 68, 0, 0, 69, 0, 0, 70, - 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 67, 0, 0, 0, 0, 0, 0, + 0, 15, 0, 16, 0, 266, 267, 268, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 269, 270, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, + 0, 70, 0, 0, 71, 0, 72, 312, 0, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 0, 0, 263, 264, 0, 238, 265, + 239, 240, 138, 139, 0, 241, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 271, 266, 267, + 268, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 269, 270, 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, 0, 0, 0, + 0, 0, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 0, 0, 0, 0, + 0, 238, 0, 239, 240, 138, 139, 0, 241, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 52, 53, + 271, 100, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 15, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 68, 0, 0, 69, 0, 0, 70, 0, 71, + 183, 0, 0, 0, 0, 0, 52, 53, 68, 100, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 15, 0, 16, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, + 0, 0, 0, 0, 52, 53, 68, 100, 162, 163, + 164, 165, 166, 167, 168, 169, 170, 171, 172, 66, + 67, 15, 0, 16, 0, 69, 0, 0, 70, 0, + 0, 71, 0, 72, 0, 0, 0, 0, 0, 0, + 0, 0, 52, 53, 68, 100, 55, 56, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 15, + 0, 16, 0, 69, 0, 0, 70, 0, 0, 71, + 0, 72, 0, 0, 326, 0, 0, 0, 0, 0, + 52, 53, 68, 100, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 15, 0, 16, + 0, 69, 0, 0, 70, 0, 308, 71, 0, 72, + 0, 0, 368, 0, 0, 0, 0, 0, 52, 53, + 68, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 15, 0, 16, 0, 69, + 0, 0, 70, 0, 0, 71, 0, 72, 0, 0, + 0, 0, 0, 0, 0, 0, 52, 53, 68, 100, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 15, 0, 16, 0, 69, 0, 0, + 70, 0, 0, 71, 0, 72, 0, 0, 0, 0, + 0, 0, 0, 0, 52, 53, 68, 100, 162, 163, + 164, 165, 166, 167, 168, 169, 170, 171, 172, 66, + 67, 15, 0, 16, 0, 69, 0, 0, 70, 0, + 0, 71, 0, 72, 0, 0, 0, 0, 0, 0, + 0, 0, 52, 53, 68, 189, 55, 56, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 15, + 0, 16, 0, 69, 0, 0, 70, 0, 0, 71, + 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 106, 0, 0, 0, 0, 0, 68, - 0, 0, 69, 107, 108, 70, 0, 71, 0, 0, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 0, 0, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142 + 0, 69, 0, 0, 70, 0, 0, 71, 0, 72, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 108, 0, 0, 0, 0, 0, 0, 0, 0, 69, + 109, 110, 70, 0, 0, 71, 0, 72, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, 0, 0, 134, 135, 136, 137, 138, 139, 140, + 141, 142, 143, 144 }; -static const short yycheck[] = { 30, - 111, 111, 106, 45, 94, 109, 250, 204, 29, 23, - 112, 24, 2, 426, 45, 71, 30, 15, 15, 10, - 11, 12, 13, 14, 15, 16, 17, 131, 23, 442, - 134, 135, 102, 100, 138, 139, 140, 141, 142, 241, - 242, 111, 146, 110, 34, 34, 148, 103, 10, 11, - 12, 13, 14, 15, 16, 17, 54, 54, 9, 100, - 5, 6, 93, 94, 100, 54, 100, 269, 20, 110, - 21, 99, 108, 106, 108, 99, 441, 22, 111, 24, - 100, 26, 108, 73, 449, 111, 106, 4, 109, 41, - 42, 43, 44, 38, 39, 47, 110, 100, 129, 130, - 99, 132, 133, 106, 104, 59, 60, 61, 62, 353, - 32, 33, 143, 144, 145, 106, 99, 22, 222, 24, - 176, 177, 178, 99, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 49, 50, - 51, 27, 28, 88, 106, 90, 91, 92, 93, 180, - 95, 10, 11, 12, 13, 14, 15, 16, 17, 104, - 202, 102, 107, 0, 109, 52, 53, 112, 86, 87, - 4, 202, 3, 4, 3, 4, 4, 374, 220, 376, - 3, 4, 286, 4, 288, 289, 3, 4, 25, 220, - 221, 295, 3, 4, 31, 102, 4, 24, 24, 105, - 102, 105, 56, 259, 41, 42, 43, 44, 4, 240, - 241, 242, 302, 303, 304, 305, 4, 4, 4, 174, - 4, 58, 7, 313, 314, 315, 316, 7, 7, 184, - 100, 103, 100, 100, 189, 190, 100, 36, 269, 104, - 100, 24, 100, 100, 100, 100, 201, 100, 100, 100, - 24, 206, 189, 190, 285, 102, 287, 102, 102, 290, - 291, 216, 217, 218, 201, 255, 102, 102, 358, 206, - 102, 302, 303, 304, 305, 100, 100, 381, 382, 216, - 217, 218, 313, 314, 315, 316, 102, 102, 100, 103, - 100, 322, 34, 100, 100, 104, 100, 100, 21, 21, - 102, 4, 100, 393, 394, 409, 396, 397, 398, 399, - 100, 100, 24, 4, 54, 426, 426, 36, 349, 100, - 102, 4, 277, 100, 100, 100, 104, 358, 283, 100, - 100, 442, 442, 100, 100, 100, 54, 100, 106, 103, - 277, 296, 297, 433, 103, 103, 283, 103, 100, 103, - 103, 21, 103, 103, 103, 36, 21, 103, 106, 296, - 297, 392, 393, 394, 100, 396, 397, 398, 399, 21, - 100, 67, 21, 21, 329, 0, 331, 0, 83, 83, - 335, 83, 83, 34, 20, 323, 103, 47, 343, 344, - 345, 19, 329, 322, 331, 2, 23, 14, 335, 332, - 386, 174, 433, -1, 354, -1, 343, 344, 345, -1, - -1, -1, -1, -1, -1, -1, 371, 372, -1, -1, - -1, -1, -1, -1, 379, -1, -1, -1, -1, -1, - -1, -1, 387, -1, 371, 372, -1, -1, -1, -1, - -1, -1, 379, -1, -1, -1, -1, -1, -1, -1, - 387, -1, -1, -1, 5, 6, 411, 8, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, -1, 24, 411, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 439, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 45, 450, -1, -1, -1, -1, - 455, -1, 439, -1, 459, 460, -1, -1, -1, -1, - -1, -1, -1, 450, -1, -1, -1, -1, 455, -1, - -1, -1, 459, 460, 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, - 101, -1, -1, 104, -1, -1, 107, -1, 109, 110, - -1, -1, -1, -1, 45, 3, 4, 5, 6, 7, - 20, -1, 22, -1, 24, -1, -1, -1, -1, -1, - -1, 31, 32, 33, 22, -1, 24, -1, 26, 27, - 28, 41, 42, 43, 44, -1, -1, 47, 48, -1, - 38, 39, -1, -1, -1, 55, -1, -1, 58, -1, +static const short yycheck[] = { 29, + 96, 113, 113, 44, 252, 108, 206, 29, 111, 15, + 114, 2, 428, 58, 44, 34, 72, 10, 11, 12, + 13, 14, 15, 16, 17, 23, 52, 53, 444, 15, + 133, 9, 30, 136, 137, 54, 0, 140, 141, 142, + 143, 144, 33, 21, 109, 148, 150, 112, 54, 105, + 10, 11, 12, 13, 14, 15, 16, 17, 243, 244, + 23, 25, 101, 101, 101, 95, 96, 31, 54, 20, + 107, 107, 111, 111, 101, 103, 112, 41, 42, 43, + 44, 101, 109, 74, 112, 22, 271, 24, 110, 109, + 41, 42, 43, 44, 101, 59, 47, 100, 443, 58, + 107, 131, 132, 100, 134, 135, 451, 355, 60, 61, + 62, 63, 24, 111, 107, 145, 146, 147, 49, 50, + 51, 224, 178, 179, 180, 100, 5, 6, 4, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 100, 24, 100, 107, 32, 33, + 27, 28, 182, 10, 11, 12, 13, 14, 15, 16, + 17, 87, 88, 204, 3, 4, 45, 3, 4, 3, + 4, 3, 4, 105, 204, 103, 376, 4, 378, 3, + 4, 222, 4, 4, 103, 288, 24, 290, 291, 4, + 106, 24, 222, 223, 297, 106, 103, 56, 4, 4, + 4, 4, 4, 101, 104, 261, 7, 7, 304, 305, + 306, 307, 242, 243, 244, 7, 101, 105, 101, 315, + 316, 317, 318, 102, 36, 24, 105, 101, 176, 108, + 101, 110, 111, 101, 101, 101, 101, 101, 186, 101, + 101, 271, 24, 191, 192, 103, 34, 103, 103, 103, + 103, 103, 103, 103, 101, 203, 104, 287, 101, 289, + 208, 101, 292, 293, 360, 21, 257, 21, 105, 4, + 218, 219, 220, 101, 304, 305, 306, 307, 101, 24, + 383, 384, 101, 101, 101, 315, 316, 317, 318, 103, + 101, 101, 101, 4, 324, 103, 36, 54, 4, 395, + 396, 54, 398, 399, 400, 401, 101, 101, 411, 105, + 101, 101, 101, 21, 101, 101, 428, 428, 101, 104, + 101, 351, 101, 107, 104, 101, 104, 104, 191, 192, + 360, 279, 444, 444, 104, 104, 104, 285, 104, 435, + 203, 104, 36, 107, 21, 208, 104, 21, 68, 101, + 298, 299, 101, 21, 21, 218, 219, 220, 0, 0, + 84, 84, 84, 84, 394, 395, 396, 33, 398, 399, + 400, 401, 20, 105, 46, 325, 23, 324, 176, 43, + 20, 2, 22, 331, 24, 333, 14, 388, 334, 337, + 356, 31, 32, 33, -1, -1, -1, 345, 346, 347, + -1, 41, 42, 43, 44, 435, -1, 47, 48, -1, + -1, -1, -1, -1, -1, 55, 279, -1, -1, 59, + -1, -1, 285, -1, -1, 373, 374, -1, -1, -1, + -1, -1, -1, 381, -1, 298, 299, -1, -1, -1, + -1, 389, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 101, -1, -1, 104, -1, -1, 107, -1, 109, 110, - -1, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, -1, -1, 3, 4, -1, - 88, 7, 90, 91, 92, 93, -1, 95, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 107, - 26, 27, 28, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 38, 39, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 413, -1, -1, 331, -1, + 333, -1, -1, -1, 337, -1, -1, -1, -1, -1, + -1, -1, 345, 346, 347, -1, -1, -1, -1, -1, + -1, -1, -1, 441, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 452, -1, -1, -1, -1, 457, + 373, 374, -1, 461, 462, -1, -1, -1, 381, -1, + -1, -1, -1, -1, -1, -1, 389, -1, -1, -1, + -1, -1, -1, -1, -1, 5, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 413, -1, 22, -1, 24, -1, 26, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 38, 39, + -1, -1, -1, -1, -1, -1, -1, -1, 441, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 452, + -1, -1, -1, -1, 457, -1, -1, -1, 461, 462, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, -1, -1, -1, -1, -1, 89, + -1, 91, 92, 93, 94, -1, 96, -1, -1, -1, + -1, -1, -1, -1, -1, 105, -1, -1, 108, -1, + 110, 5, 6, 113, 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, - -1, -1, -1, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, -1, -1, -1, - -1, -1, 88, -1, 90, 91, 92, 93, -1, 95, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, - 6, 107, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, -1, 24, -1, + -1, 45, 3, 4, 5, 6, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 37, -1, -1, -1, -1, -1, 5, 6, 45, - 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, 37, - -1, -1, -1, -1, -1, 5, 6, 45, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, -1, 24, 101, -1, -1, 104, -1, - -1, 107, -1, 109, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 5, 6, 45, 8, 9, 10, 11, - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, -1, 24, 101, -1, -1, 104, -1, -1, 107, - -1, 109, -1, -1, -1, 37, -1, -1, -1, -1, - -1, 5, 6, 45, 8, 9, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, -1, - 24, 101, -1, -1, 104, -1, 106, 107, -1, 109, - -1, -1, -1, 37, -1, -1, -1, -1, -1, 5, - 6, 45, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, -1, 24, 101, - -1, -1, 104, -1, -1, 107, -1, 109, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5, 6, 45, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, -1, 24, 101, -1, -1, - 104, -1, -1, 107, -1, 109, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5, 6, 45, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, -1, 24, 101, -1, -1, 104, -1, - -1, 107, -1, 109, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 5, 6, 45, 8, 9, 10, 11, - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, -1, 24, 101, -1, -1, 104, -1, -1, 107, - -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 45, -1, -1, -1, -1, -1, -1, + -1, 22, -1, 24, -1, 26, 27, 28, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 38, 39, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 102, -1, + -1, 105, -1, -1, 108, -1, 110, 111, -1, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, -1, -1, 3, 4, -1, 89, 7, + 91, 92, 93, 94, -1, 96, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 108, 26, 27, + 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 38, 39, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 101, -1, -1, 104, -1, -1, 107, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 35, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 46, -1, -1, -1, -1, -1, 101, - -1, -1, 104, 56, 57, 107, -1, 109, -1, -1, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, -1, -1, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98 + -1, -1, 70, 71, 72, 73, 74, 75, 76, 77, + 78, 79, 80, 81, 82, 83, -1, -1, -1, -1, + -1, 89, -1, 91, 92, 93, 94, -1, 96, -1, + -1, -1, -1, -1, -1, -1, -1, -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, + 37, -1, -1, -1, -1, -1, 5, 6, 45, 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, 37, -1, + -1, -1, -1, -1, 5, 6, 45, 8, 9, 10, + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, -1, 24, -1, 102, -1, -1, 105, -1, + -1, 108, -1, 110, -1, -1, -1, -1, -1, -1, + -1, -1, 5, 6, 45, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + -1, 24, -1, 102, -1, -1, 105, -1, -1, 108, + -1, 110, -1, -1, 37, -1, -1, -1, -1, -1, + 5, 6, 45, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, -1, 24, + -1, 102, -1, -1, 105, -1, 107, 108, -1, 110, + -1, -1, 37, -1, -1, -1, -1, -1, 5, 6, + 45, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, -1, 24, -1, 102, + -1, -1, 105, -1, -1, 108, -1, 110, -1, -1, + -1, -1, -1, -1, -1, -1, 5, 6, 45, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 22, -1, 24, -1, 102, -1, -1, + 105, -1, -1, 108, -1, 110, -1, -1, -1, -1, + -1, -1, -1, -1, 5, 6, 45, 8, 9, 10, + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, -1, 24, -1, 102, -1, -1, 105, -1, + -1, 108, -1, 110, -1, -1, -1, -1, -1, -1, + -1, -1, 5, 6, 45, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + -1, 24, -1, 102, -1, -1, 105, -1, -1, 108, + -1, 110, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 45, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 102, -1, -1, 105, -1, -1, 108, -1, 110, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 46, -1, -1, -1, -1, -1, -1, -1, -1, 102, + 56, 57, 105, -1, -1, 108, -1, 110, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, -1, -1, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/share/bison.simple" @@ -2532,11 +2558,12 @@ case 92: " when array has size " + itostr(NumElements) + "!"); std::vector<Constant*> Vals; if (ETy == Type::SByteTy) { - for (char *C = yyvsp[0].StrVal; C != EndStr; ++C) + for (signed char *C = (signed char *)yyvsp[0].StrVal; C != (signed char *)EndStr; ++C) Vals.push_back(ConstantSInt::get(ETy, *C)); } else if (ETy == Type::UByteTy) { - for (char *C = yyvsp[0].StrVal; C != EndStr; ++C) - Vals.push_back(ConstantUInt::get(ETy, (unsigned char)*C)); + for (unsigned char *C = (unsigned char *)yyvsp[0].StrVal; + C != (unsigned char*)EndStr; ++C) + Vals.push_back(ConstantUInt::get(ETy, *C)); } else { free(yyvsp[0].StrVal); ThrowException("Cannot build string arrays of non byte sized elements!"); @@ -2547,7 +2574,7 @@ case 92: ; break;} case 93: -#line 1272 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1273 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr const PackedType *PTy = dyn_cast<PackedType>(yyvsp[-3].TypeVal->get()); if (PTy == 0) @@ -2575,7 +2602,7 @@ case 93: ; break;} case 94: -#line 1297 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1298 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast<StructType>(yyvsp[-3].TypeVal->get()); if (STy == 0) @@ -2598,7 +2625,7 @@ case 94: ; break;} case 95: -#line 1317 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1318 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast<StructType>(yyvsp[-2].TypeVal->get()); if (STy == 0) @@ -2613,7 +2640,7 @@ case 95: ; break;} case 96: -#line 1329 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1330 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PTy = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get()); if (PTy == 0) @@ -2625,14 +2652,14 @@ case 96: ; break;} case 97: -#line 1338 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1339 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ConstVal = UndefValue::get(yyvsp[-1].TypeVal->get()); delete yyvsp[-1].TypeVal; ; break;} case 98: -#line 1342 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1343 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *Ty = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get()); if (Ty == 0) @@ -2694,7 +2721,7 @@ case 98: ; break;} case 99: -#line 1401 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1402 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-1].TypeVal->get() != yyvsp[0].ConstVal->getType()) ThrowException("Mismatched types for constant expression!"); @@ -2703,7 +2730,7 @@ case 99: ; break;} case 100: -#line 1407 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1408 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const Type *Ty = yyvsp[-1].TypeVal->get(); if (isa<FunctionType>(Ty) || Ty == Type::LabelTy || isa<OpaqueType>(Ty)) @@ -2713,7 +2740,7 @@ case 100: ; break;} case 101: -#line 1415 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1416 "/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!"); @@ -2721,7 +2748,7 @@ case 101: ; break;} case 102: -#line 1420 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1421 "/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!"); @@ -2729,19 +2756,19 @@ case 102: ; break;} case 103: -#line 1425 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1426 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants yyval.ConstVal = ConstantBool::True; ; break;} case 104: -#line 1428 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1429 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants yyval.ConstVal = ConstantBool::False; ; break;} case 105: -#line 1431 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1432 "/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!!"); @@ -2749,7 +2776,7 @@ case 105: ; break;} case 106: -#line 1438 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1439 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!yyvsp[-3].ConstVal->getType()->isFirstClassType()) ThrowException("cast constant expression from a non-primitive type: '" + @@ -2762,7 +2789,7 @@ case 106: ; break;} case 107: -#line 1448 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1449 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[-2].ConstVal->getType())) ThrowException("GetElementPtr requires a pointer operand!"); @@ -2796,7 +2823,7 @@ case 107: ; break;} case 108: -#line 1479 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1480 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-5].ConstVal->getType() != Type::BoolTy) ThrowException("Select condition must be of boolean type!"); @@ -2806,7 +2833,7 @@ case 108: ; break;} case 109: -#line 1486 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1487 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) ThrowException("Binary operator types must match!"); @@ -2830,7 +2857,7 @@ case 109: ; break;} case 110: -#line 1507 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1508 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) ThrowException("Logical operator types must match!"); @@ -2843,7 +2870,7 @@ case 110: ; break;} case 111: -#line 1517 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1518 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) ThrowException("setcc operand types must match!"); @@ -2851,7 +2878,7 @@ case 111: ; break;} case 112: -#line 1522 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1523 "/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!"); @@ -2861,7 +2888,7 @@ case 112: ; break;} case 113: -#line 1529 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1530 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PackedType>(yyvsp[-3].ConstVal->getType())) ThrowException("First operand of extractelement must be " @@ -2872,60 +2899,60 @@ case 113: ; break;} case 114: -#line 1539 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1540 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ConstVector = yyvsp[-2].ConstVector)->push_back(yyvsp[0].ConstVal); ; break;} case 115: -#line 1542 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1543 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ConstVector = new std::vector<Constant*>(); yyval.ConstVector->push_back(yyvsp[0].ConstVal); ; break;} case 116: -#line 1549 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1550 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} case 117: -#line 1549 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1550 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} case 118: -#line 1559 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1560 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = ParserResult = yyvsp[0].ModuleVal; CurModule.ModuleDone(); ; break;} case 119: -#line 1566 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1567 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-1].ModuleVal; CurFun.FunctionDone(); ; break;} case 120: -#line 1570 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1571 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-1].ModuleVal; ; break;} case 121: -#line 1573 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1574 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { - yyval.ModuleVal = yyvsp[-2].ModuleVal; + yyval.ModuleVal = yyvsp[-3].ModuleVal; ; break;} case 122: -#line 1576 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1577 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-1].ModuleVal; ; break;} case 123: -#line 1579 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1580 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = CurModule.CurrentModule; // Emit an error if there are any unresolved types left. @@ -2939,7 +2966,7 @@ case 123: ; break;} case 124: -#line 1592 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1593 "/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: @@ -2962,30 +2989,30 @@ case 124: ; break;} case 125: -#line 1612 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1613 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Function prototypes can be in const pool ; break;} case 126: -#line 1614 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" -{ // Asm blocks can be in the const pool +#line 1615 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +{ // Asm blocks can be in the const pool ; break;} case 127: -#line 1616 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1617 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].ConstVal == 0) ThrowException("Global value initializer is not a constant!"); CurGV = ParseGlobalVariable(yyvsp[-3].StrVal, yyvsp[-2].Linkage, yyvsp[-1].BoolVal, yyvsp[0].ConstVal->getType(), yyvsp[0].ConstVal); ; break;} case 128: -#line 1619 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1620 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; ; break;} case 129: -#line 1622 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1623 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = ParseGlobalVariable(yyvsp[-3].StrVal, GlobalValue::ExternalLinkage, yyvsp[-1].BoolVal, *yyvsp[0].TypeVal, 0); @@ -2993,53 +3020,56 @@ case 129: ; break;} case 130: -#line 1626 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1627 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; ; break;} case 131: -#line 1629 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1630 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} case 132: -#line 1631 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1632 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} case 133: -#line 1633 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1634 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} case 134: -#line 1637 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1638 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { - const std::string &AsmSoFar = CurModule.CurrentModule->getInlineAsm(); + const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm(); + char *EndStr = UnEscapeLexed(yyvsp[0].StrVal, true); + std::string NewAsm(yyvsp[0].StrVal, EndStr); + free(yyvsp[0].StrVal); + if (AsmSoFar.empty()) - CurModule.CurrentModule->setInlineAsm(yyvsp[0].StrVal); + CurModule.CurrentModule->setModuleInlineAsm(NewAsm); else - CurModule.CurrentModule->setInlineAsm(AsmSoFar+"\n"+yyvsp[0].StrVal); - free(yyvsp[0].StrVal); + CurModule.CurrentModule->setModuleInlineAsm(AsmSoFar+"\n"+NewAsm); ; break;} case 135: -#line 1646 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1650 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Endianness = Module::BigEndian; ; break;} case 136: -#line 1647 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1651 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Endianness = Module::LittleEndian; ; break;} case 137: -#line 1649 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1653 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setEndianness(yyvsp[0].Endianness); ; break;} case 138: -#line 1652 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1656 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].UInt64Val == 32) CurModule.CurrentModule->setPointerSize(Module::Pointer32); @@ -3050,37 +3080,37 @@ case 138: ; break;} case 139: -#line 1660 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1664 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setTargetTriple(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} case 141: -#line 1667 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1671 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} case 142: -#line 1671 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1675 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} case 143: -#line 1675 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1679 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} case 147: -#line 1684 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1688 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = 0; ; break;} case 148: -#line 1686 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1690 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (*yyvsp[-1].TypeVal == Type::VoidTy) ThrowException("void typed arguments are invalid!"); @@ -3088,7 +3118,7 @@ case 148: ; break;} case 149: -#line 1692 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1696 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[-2].ArgList; yyvsp[-2].ArgList->push_back(*yyvsp[0].ArgVal); @@ -3096,7 +3126,7 @@ case 149: ; break;} case 150: -#line 1697 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1701 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = new std::vector<std::pair<PATypeHolder*,char*> >(); yyval.ArgList->push_back(*yyvsp[0].ArgVal); @@ -3104,13 +3134,13 @@ case 150: ; break;} case 151: -#line 1703 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1707 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[0].ArgList; ; break;} case 152: -#line 1706 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1710 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[-2].ArgList; yyval.ArgList->push_back(std::pair<PATypeHolder*, @@ -3118,20 +3148,20 @@ case 152: ; break;} case 153: -#line 1711 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1715 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = new std::vector<std::pair<PATypeHolder*,char*> >(); yyval.ArgList->push_back(std::make_pair(new PATypeHolder(Type::VoidTy), (char*)0)); ; break;} case 154: -#line 1715 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1719 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = 0; ; break;} case 155: -#line 1720 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1724 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { UnEscapeLexed(yyvsp[-5].StrVal); std::string FunctionName(yyvsp[-5].StrVal); @@ -3218,7 +3248,7 @@ case 155: ; break;} case 158: -#line 1807 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1811 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = CurFun.CurrentFunction; @@ -3228,72 +3258,72 @@ case 158: ; break;} case 161: -#line 1817 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1821 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = yyvsp[-1].FunctionVal; ; break;} case 162: -#line 1821 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1825 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.isDeclare = true; ; break;} case 163: -#line 1821 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1825 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = CurFun.CurrentFunction; CurFun.FunctionDone(); ; break;} case 164: -#line 1830 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1834 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // A reference to a direct constant yyval.ValIDVal = ValID::create(yyvsp[0].SInt64Val); ; break;} case 165: -#line 1833 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1837 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(yyvsp[0].UInt64Val); ; break;} case 166: -#line 1836 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1840 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Perhaps it's an FP constant? yyval.ValIDVal = ValID::create(yyvsp[0].FPVal); ; break;} case 167: -#line 1839 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1843 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(ConstantBool::True); ; break;} case 168: -#line 1842 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1846 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(ConstantBool::False); ; break;} case 169: -#line 1845 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1849 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createNull(); ; break;} case 170: -#line 1848 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1852 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createUndef(); ; break;} case 171: -#line 1851 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1855 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // A vector zero constant. yyval.ValIDVal = ValID::createZeroInit(); ; break;} case 172: -#line 1854 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1858 "/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(); @@ -3320,43 +3350,43 @@ case 172: ; break;} case 173: -#line 1878 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1882 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(yyvsp[0].ConstVal); ; break;} case 174: -#line 1885 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1889 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it an integer reference...? yyval.ValIDVal = ValID::create(yyvsp[0].SIntVal); ; break;} case 175: -#line 1888 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1892 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it a named reference...? yyval.ValIDVal = ValID::create(yyvsp[0].StrVal); ; break;} case 178: -#line 1899 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1903 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueVal = getVal(*yyvsp[-1].TypeVal, yyvsp[0].ValIDVal); delete yyvsp[-1].TypeVal; ; break;} case 179: -#line 1903 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1907 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = yyvsp[-1].FunctionVal; ; break;} case 180: -#line 1906 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1910 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Do not allow functions with 0 basic blocks yyval.FunctionVal = yyvsp[-1].FunctionVal; ; break;} case 181: -#line 1914 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1918 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { setValueName(yyvsp[0].TermInstVal, yyvsp[-1].StrVal); InsertValue(yyvsp[0].TermInstVal); @@ -3367,14 +3397,14 @@ case 181: ; break;} case 182: -#line 1923 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1927 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyvsp[-1].BasicBlockVal->getInstList().push_back(yyvsp[0].InstVal); yyval.BasicBlockVal = yyvsp[-1].BasicBlockVal; ; break;} case 183: -#line 1927 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1931 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BasicBlockVal = CurBB = getBBVal(ValID::create((int)CurFun.NextBBNum++), true); @@ -3387,7 +3417,7 @@ case 183: ; break;} case 184: -#line 1937 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1941 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BasicBlockVal = CurBB = getBBVal(ValID::create(yyvsp[0].StrVal), true); @@ -3400,31 +3430,31 @@ case 184: ; break;} case 185: -#line 1948 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1952 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with a result... yyval.TermInstVal = new ReturnInst(yyvsp[0].ValueVal); ; break;} case 186: -#line 1951 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1955 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with no result... yyval.TermInstVal = new ReturnInst(); ; break;} case 187: -#line 1954 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1958 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Unconditional Branch... yyval.TermInstVal = new BranchInst(getBBVal(yyvsp[0].ValIDVal)); ; break;} case 188: -#line 1957 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1961 "/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 189: -#line 1960 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1964 "/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; @@ -3441,14 +3471,14 @@ case 189: ; break;} case 190: -#line 1974 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1978 "/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 191: -#line 1979 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1983 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PFTy; const FunctionType *Ty; @@ -3503,19 +3533,19 @@ case 191: ; break;} case 192: -#line 2031 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2035 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new UnwindInst(); ; break;} case 193: -#line 2034 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2038 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new UnreachableInst(); ; break;} case 194: -#line 2040 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2044 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.JumpTable = yyvsp[-5].JumpTable; Constant *V = cast<Constant>(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal)); @@ -3526,7 +3556,7 @@ case 194: ; break;} case 195: -#line 2048 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2052 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.JumpTable = new std::vector<std::pair<Constant*, BasicBlock*> >(); Constant *V = cast<Constant>(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal)); @@ -3538,7 +3568,7 @@ case 195: ; break;} case 196: -#line 2058 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2062 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is this definition named?? if so, assign the name... setValueName(yyvsp[0].InstVal, yyvsp[-1].StrVal); @@ -3547,7 +3577,7 @@ case 196: ; break;} case 197: -#line 2065 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2069 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Used for PHI nodes yyval.PHIList = new std::list<std::pair<Value*, BasicBlock*> >(); yyval.PHIList->push_back(std::make_pair(getVal(*yyvsp[-5].TypeVal, yyvsp[-3].ValIDVal), getBBVal(yyvsp[-1].ValIDVal))); @@ -3555,7 +3585,7 @@ case 197: ; break;} case 198: -#line 2070 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2074 "/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), @@ -3563,37 +3593,37 @@ case 198: ; break;} case 199: -#line 2077 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2081 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Used for call statements, and memory insts... yyval.ValueList = new std::vector<Value*>(); yyval.ValueList->push_back(yyvsp[0].ValueVal); ; break;} case 200: -#line 2081 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2085 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = yyvsp[-2].ValueList; yyvsp[-2].ValueList->push_back(yyvsp[0].ValueVal); ; break;} case 202: -#line 2087 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2091 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = 0; ; break;} case 203: -#line 2089 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2093 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} case 204: -#line 2092 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2096 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} case 205: -#line 2098 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2102 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!(*yyvsp[-3].TypeVal)->isInteger() && !(*yyvsp[-3].TypeVal)->isFloatingPoint() && !isa<PackedType>((*yyvsp[-3].TypeVal).get())) @@ -3608,7 +3638,7 @@ case 205: ; break;} case 206: -#line 2110 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2114 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!(*yyvsp[-3].TypeVal)->isIntegral()) { if (!isa<PackedType>(yyvsp[-3].TypeVal->get()) || @@ -3622,7 +3652,7 @@ case 206: ; break;} case 207: -#line 2121 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2125 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if(isa<PackedType>((*yyvsp[-3].TypeVal).get())) { ThrowException( @@ -3635,7 +3665,7 @@ case 207: ; break;} case 208: -#line 2131 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2135 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { std::cerr << "WARNING: Use of eliminated 'not' instruction:" << " Replacing with 'xor'.\n"; @@ -3650,7 +3680,7 @@ case 208: ; break;} case 209: -#line 2143 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2147 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].ValueVal->getType() != Type::UByteTy) ThrowException("Shift amount must be ubyte!"); @@ -3660,7 +3690,7 @@ case 209: ; break;} case 210: -#line 2150 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2154 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!yyvsp[0].TypeVal->get()->isFirstClassType()) ThrowException("cast instruction to a non-primitive type: '" + @@ -3670,7 +3700,7 @@ case 210: ; break;} case 211: -#line 2157 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2161 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-4].ValueVal->getType() != Type::BoolTy) ThrowException("select condition must be boolean!"); @@ -3680,7 +3710,7 @@ case 211: ; break;} case 212: -#line 2164 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2168 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { NewVarArgs = true; yyval.InstVal = new VAArgInst(yyvsp[-2].ValueVal, *yyvsp[0].TypeVal); @@ -3688,7 +3718,7 @@ case 212: ; break;} case 213: -#line 2169 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2173 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ObsoleteVarArgs = true; const Type* ArgTy = yyvsp[-2].ValueVal->getType(); @@ -3710,7 +3740,7 @@ case 213: ; break;} case 214: -#line 2188 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2192 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ObsoleteVarArgs = true; const Type* ArgTy = yyvsp[-2].ValueVal->getType(); @@ -3735,7 +3765,7 @@ case 214: ; break;} case 215: -#line 2210 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2214 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PackedType>(yyvsp[-2].ValueVal->getType())) ThrowException("First operand of extractelement must be " @@ -3746,7 +3776,7 @@ case 215: ; break;} case 216: -#line 2218 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2222 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PackedType>(yyvsp[-4].ValueVal->getType())) ThrowException("First operand of insertelement must be " @@ -3761,7 +3791,7 @@ case 216: ; break;} case 217: -#line 2230 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2234 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const Type *Ty = yyvsp[0].PHIList->front().first->getType(); if (!Ty->isFirstClassType()) @@ -3778,7 +3808,7 @@ case 217: ; break;} case 218: -#line 2244 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2248 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PFTy; const FunctionType *Ty; @@ -3838,65 +3868,65 @@ case 218: ; break;} case 219: -#line 2301 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2305 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = yyvsp[0].InstVal; ; break;} case 220: -#line 2307 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2311 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = yyvsp[0].ValueList; ; break;} case 221: -#line 2309 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2313 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = new std::vector<Value*>(); ; break;} case 222: -#line 2313 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2317 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} case 223: -#line 2316 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2320 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} case 224: -#line 2322 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2326 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = new MallocInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal); delete yyvsp[-1].TypeVal; ; break;} case 225: -#line 2326 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2330 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = new MallocInst(*yyvsp[-4].TypeVal, getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal), yyvsp[0].UIntVal); delete yyvsp[-4].TypeVal; ; break;} case 226: -#line 2330 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2334 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = new AllocaInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal); delete yyvsp[-1].TypeVal; ; break;} case 227: -#line 2334 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2338 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = new AllocaInst(*yyvsp[-4].TypeVal, getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal), yyvsp[0].UIntVal); delete yyvsp[-4].TypeVal; ; break;} case 228: -#line 2338 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2342 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[0].ValueVal->getType())) ThrowException("Trying to free nonpointer type " + @@ -3905,7 +3935,7 @@ case 228: ; break;} case 229: -#line 2345 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2349 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[-1].TypeVal->get())) ThrowException("Can't load from nonpointer type: " + @@ -3918,7 +3948,7 @@ case 229: ; break;} case 230: -#line 2355 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2359 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PT = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get()); if (!PT) @@ -3934,7 +3964,7 @@ case 230: ; break;} case 231: -#line 2368 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2372 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[-2].TypeVal->get())) ThrowException("getelementptr insn requires pointer operand!"); @@ -4179,7 +4209,7 @@ yyerrhandle: } return 1; } -#line 2391 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2395 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" int yyerror(const char *ErrorMsg) { std::string where |