From 0b2fca760d30c2a2bfbbbf1bd5768e62ab7dbd60 Mon Sep 17 00:00:00 2001 From: Reid Spencer Date: Sat, 2 Dec 2006 22:14:11 +0000 Subject: [PATCH] Regenerate. llvm-svn: 32140 --- tools/llvm-upgrade/UpgradeLexer.cpp | 1207 ++++++------ tools/llvm-upgrade/UpgradeLexer.cpp.cvs | 1207 ++++++------ tools/llvm-upgrade/UpgradeLexer.l.cvs | 22 + tools/llvm-upgrade/UpgradeParser.cpp | 2147 ++++++++++++---------- tools/llvm-upgrade/UpgradeParser.cpp.cvs | 2147 ++++++++++++---------- tools/llvm-upgrade/UpgradeParser.h | 164 +- tools/llvm-upgrade/UpgradeParser.h.cvs | 164 +- tools/llvm-upgrade/UpgradeParser.y.cvs | 53 +- 8 files changed, 3938 insertions(+), 3173 deletions(-) diff --git a/tools/llvm-upgrade/UpgradeLexer.cpp b/tools/llvm-upgrade/UpgradeLexer.cpp index 04174a60fbf..f7cebbe2437 100644 --- a/tools/llvm-upgrade/UpgradeLexer.cpp +++ b/tools/llvm-upgrade/UpgradeLexer.cpp @@ -317,36 +317,38 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 131 -#define YY_END_OF_BUFFER 132 -static yyconst short int yy_acclist[209] = +#define YY_NUM_RULES 153 +#define YY_END_OF_BUFFER 154 +static yyconst short int yy_acclist[231] = { 0, - 132, 130, 131, 129, 130, 131, 129, 131, 130, 131, - 130, 131, 130, 131, 130, 131, 130, 131, 130, 131, - 122, 130, 131, 122, 130, 131, 1, 130, 131, 130, - 131, 130, 131, 130, 131, 130, 131, 130, 131, 130, - 131, 130, 131, 130, 131, 130, 131, 130, 131, 130, - 131, 130, 131, 130, 131, 130, 131, 130, 131, 130, - 131, 130, 131, 130, 131, 130, 131, 130, 131, 130, - 131, 121, 119, 118, 118, 125, 123, 127, 122, 1, - 103, 39, 73, 23, 121, 118, 118, 126, 127, 20, - 127, 128, 61, 72, 37, 32, 40, 64, 3, 52, + 154, 152, 153, 151, 152, 153, 151, 153, 152, 153, + 152, 153, 152, 153, 152, 153, 152, 153, 152, 153, + 144, 152, 153, 144, 152, 153, 1, 152, 153, 152, + 153, 152, 153, 152, 153, 152, 153, 152, 153, 152, + 153, 152, 153, 152, 153, 152, 153, 152, 153, 152, + 153, 152, 153, 152, 153, 152, 153, 152, 153, 152, + 153, 152, 153, 152, 153, 152, 153, 152, 153, 152, + 153, 143, 141, 140, 140, 147, 145, 149, 144, 1, + 125, 39, 83, 84, 73, 23, 143, 140, 140, 148, + 149, 20, 149, 150, 61, 72, 37, 32, 40, 64, - 63, 81, 68, 102, 97, 98, 62, 74, 120, 127, - 127, 99, 47, 82, 83, 67, 111, 71, 112, 54, - 100, 22, 124, 66, 86, 70, 24, 4, 60, 65, - 53, 69, 46, 11, 85, 127, 34, 2, 5, 56, - 88, 58, 48, 76, 80, 78, 79, 77, 75, 50, - 113, 84, 49, 55, 21, 110, 43, 57, 28, 107, - 42, 90, 89, 7, 105, 31, 109, 36, 59, 96, - 92, 104, 25, 26, 91, 106, 51, 101, 95, 41, - 6, 27, 87, 35, 8, 16, 9, 94, 10, 93, - 33, 12, 14, 13, 30, 38, 15, 29, 108, 114, + 3, 52, 63, 89, 94, 92, 93, 91, 90, 95, + 103, 68, 124, 88, 86, 119, 120, 87, 85, 62, + 97, 102, 100, 101, 99, 98, 96, 74, 142, 149, + 149, 121, 47, 104, 105, 82, 67, 133, 71, 81, + 134, 54, 122, 22, 146, 66, 108, 70, 24, 4, + 60, 65, 53, 69, 46, 11, 107, 149, 34, 2, + 5, 56, 110, 58, 48, 76, 80, 78, 79, 77, + 75, 50, 135, 106, 49, 55, 21, 132, 43, 57, + 28, 129, 42, 112, 111, 7, 127, 31, 131, 36, + 59, 118, 114, 126, 25, 26, 113, 128, 51, 123, - 116, 117, 17, 44, 115, 18, 45, 19 + 117, 41, 6, 27, 109, 35, 8, 16, 9, 116, + 10, 115, 33, 12, 14, 13, 30, 38, 15, 29, + 130, 136, 138, 139, 17, 44, 137, 18, 45, 19 } ; -static yyconst short int yy_accept[568] = +static yyconst short int yy_accept[602] = { 0, 1, 1, 1, 2, 4, 7, 9, 11, 13, 15, 17, 19, 21, 24, 27, 30, 32, 34, 36, 38, @@ -355,61 +357,66 @@ static yyconst short int yy_accept[568] = 74, 75, 76, 77, 77, 78, 78, 79, 80, 80, 81, 81, 81, 81, 81, 81, 81, 81, 81, 82, 82, 83, 83, 83, 83, 83, 83, 83, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 83, 83, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 85, 85, 85, 85, 85, 85, 85, 86, 86, 86, - 84, 84, 84, 84, 84, 85, 85, 85, 85, 85, - 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, - 85, 86, 87, 89, 90, 91, 92, 92, 93, 94, - 94, 94, 95, 95, 95, 96, 96, 97, 97, 97, - 97, 97, 98, 98, 98, 98, 98, 98, 98, 99, - 99, 99, 100, 100, 100, 100, 100, 100, 100, 100, - 100, 100, 100, 100, 100, 100, 101, 101, 101, 101, - 101, 101, 101, 101, 101, 101, 102, 102, 102, 103, - 103, 103, 104, 105, 105, 105, 105, 105, 105, 105, - 105, 106, 106, 107, 107, 107, 107, 107, 107, 108, + 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, + 86, 86, 86, 86, 86, 87, 87, 87, 87, 87, + 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, + 87, 87, 87, 88, 89, 91, 92, 93, 94, 94, + 95, 96, 96, 96, 97, 97, 97, 98, 98, 99, + 99, 99, 99, 99, 100, 100, 100, 100, 100, 100, + 100, 101, 101, 101, 102, 102, 102, 102, 102, 102, + 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, + 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, + 104, 104, 105, 106, 107, 108, 109, 110, 110, 111, - 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, - 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, - 108, 108, 109, 109, 109, 110, 111, 111, 111, 111, - 112, 112, 112, 112, 113, 113, 113, 114, 115, 116, - 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, - 116, 116, 116, 116, 116, 117, 117, 117, 117, 117, - 118, 119, 119, 119, 119, 119, 119, 119, 119, 119, - 119, 119, 120, 121, 122, 122, 122, 123, 123, 123, - 123, 124, 124, 125, 125, 125, 125, 125, 125, 125, - 126, 126, 126, 126, 126, 127, 127, 127, 128, 128, + 112, 112, 112, 113, 114, 114, 114, 114, 114, 114, + 114, 114, 115, 116, 117, 117, 118, 118, 118, 118, + 119, 120, 120, 120, 121, 121, 121, 121, 121, 121, + 121, 121, 121, 122, 123, 124, 124, 124, 125, 125, + 126, 126, 127, 127, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 129, 129, 129, 130, 131, 131, + 131, 131, 132, 132, 132, 132, 133, 133, 133, 134, + 135, 136, 136, 136, 136, 136, 136, 136, 136, 136, + 136, 136, 136, 136, 136, 136, 136, 137, 138, 138, + 138, 138, 138, 139, 140, 140, 140, 141, 141, 141, - 128, 129, 129, 130, 130, 131, 132, 132, 132, 132, - 132, 132, 132, 133, 133, 133, 134, 134, 135, 135, - 135, 136, 137, 138, 138, 138, 139, 139, 139, 139, - 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, - 139, 140, 140, 141, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 143, 143, 143, 143, 143, - 143, 143, 143, 144, 144, 144, 145, 146, 147, 148, - 149, 150, 151, 151, 151, 151, 152, 152, 152, 152, - 153, 154, 154, 155, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 157, 157, 157, 158, 158, 158, + 141, 141, 141, 141, 141, 141, 142, 143, 144, 144, + 144, 145, 145, 145, 145, 146, 146, 147, 147, 147, + 147, 147, 147, 147, 148, 148, 148, 148, 148, 149, + 149, 149, 150, 150, 150, 151, 151, 152, 152, 153, + 154, 154, 154, 154, 154, 154, 154, 155, 155, 155, + 156, 156, 157, 157, 157, 158, 159, 160, 160, 160, + 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, + 161, 161, 161, 161, 161, 162, 162, 163, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, 164, 165, + 165, 165, 165, 165, 165, 165, 165, 166, 166, 166, - 158, 158, 158, 158, 158, 159, 160, 161, 161, 161, - 162, 163, 164, 164, 164, 165, 165, 165, 165, 165, - 166, 166, 167, 168, 169, 170, 170, 170, 170, 171, - 171, 171, 172, 173, 174, 175, 176, 176, 176, 177, - 178, 179, 179, 179, 179, 179, 179, 180, 180, 181, - 181, 182, 183, 183, 183, 183, 183, 183, 184, 184, - 184, 184, 184, 184, 184, 184, 184, 185, 185, 185, - 185, 185, 185, 185, 185, 185, 185, 186, 186, 186, - 186, 186, 187, 187, 187, 187, 187, 188, 189, 190, - 190, 191, 191, 191, 191, 191, 192, 192, 192, 192, + 167, 168, 169, 170, 171, 172, 173, 173, 173, 173, + 174, 174, 174, 174, 175, 176, 176, 177, 178, 178, + 178, 178, 178, 178, 178, 178, 178, 178, 179, 179, + 179, 180, 180, 180, 180, 180, 180, 180, 180, 181, + 182, 183, 183, 183, 184, 185, 186, 186, 186, 187, + 187, 187, 187, 187, 188, 188, 189, 190, 191, 192, + 192, 192, 192, 193, 193, 193, 194, 195, 196, 197, + 198, 198, 198, 199, 200, 201, 201, 201, 201, 201, + 201, 202, 202, 203, 203, 204, 205, 205, 205, 205, + 205, 205, 206, 206, 206, 206, 206, 206, 206, 206, - 193, 193, 194, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 196, 196, 196, - 196, 196, 196, 196, 196, 197, 197, 197, 197, 197, - 197, 198, 198, 198, 198, 198, 199, 199, 199, 200, - 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, - 200, 200, 200, 201, 201, 202, 203, 204, 204, 205, - 205, 206, 207, 208, 208, 209, 209 + 206, 207, 207, 207, 207, 207, 207, 207, 207, 207, + 207, 208, 208, 208, 208, 208, 209, 209, 209, 209, + 209, 210, 211, 212, 212, 213, 213, 213, 213, 213, + 214, 214, 214, 214, 215, 215, 216, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 218, 218, 218, 218, 218, 218, 218, 218, 219, + 219, 219, 219, 219, 219, 220, 220, 220, 220, 220, + 221, 221, 221, 222, 222, 222, 222, 222, 222, 222, + 222, 222, 222, 222, 222, 222, 222, 223, 223, 224, + 225, 226, 226, 227, 227, 228, 229, 230, 230, 231, + + 231 } ; static yyconst int yy_ec[256] = @@ -453,141 +460,149 @@ static yyconst int yy_meta[44] = 3, 3, 3 } ; -static yyconst short int yy_base[572] = +static yyconst short int yy_base[606] = { 0, - 0, 0, 1222, 1223, 1223, 1223, 1217, 1206, 36, 40, + 0, 0, 1290, 1291, 1291, 1291, 1285, 1274, 36, 40, 44, 50, 56, 62, 0, 63, 66, 81, 89, 47, - 100, 97, 76, 96, 111, 46, 48, 110, 68, 140, - 126, 171, 120, 123, 73, 130, 1215, 1223, 1204, 1223, - 0, 159, 176, 199, 204, 95, 209, 224, 229, 0, - 134, 165, 137, 124, 169, 151, 159, 31, 1203, 168, - 210, 230, 233, 127, 241, 189, 176, 117, 242, 244, - 240, 243, 246, 249, 252, 253, 257, 259, 263, 265, - 266, 274, 268, 269, 273, 277, 282, 211, 1202, 287, - 290, 293, 294, 160, 270, 295, 304, 305, 299, 306, + 108, 91, 105, 96, 119, 68, 144, 128, 111, 170, + 136, 201, 130, 117, 132, 125, 1283, 1291, 1272, 1291, + 0, 175, 190, 207, 229, 70, 234, 249, 254, 0, + 139, 145, 167, 76, 168, 138, 255, 31, 1271, 177, + 90, 198, 48, 110, 258, 195, 221, 211, 200, 1270, + 267, 269, 270, 156, 271, 272, 273, 217, 275, 276, + 219, 279, 288, 280, 300, 287, 268, 298, 296, 1269, + 307, 73, 309, 310, 312, 308, 315, 314, 316, 320, - 312, 296, 321, 324, 1201, 325, 309, 313, 333, 335, - 318, 340, 342, 332, 339, 347, 350, 215, 354, 356, - 1200, 0, 371, 375, 1199, 389, 406, 0, 1198, 365, - 363, 1197, 382, 359, 1196, 394, 1195, 357, 301, 393, - 390, 1194, 401, 395, 410, 411, 397, 414, 1193, 415, - 420, 418, 421, 423, 425, 422, 427, 433, 434, 435, - 439, 437, 436, 443, 440, 441, 451, 454, 457, 459, - 460, 462, 465, 466, 467, 1192, 470, 472, 1191, 379, - 474, 1190, 1189, 502, 479, 478, 483, 475, 513, 493, - 1188, 494, 1187, 477, 480, 496, 517, 518, 1186, 519, + 324, 325, 162, 326, 328, 336, 342, 330, 349, 337, + 344, 348, 356, 361, 1268, 364, 331, 365, 367, 370, + 375, 368, 378, 402, 383, 394, 395, 403, 371, 241, + 379, 386, 1267, 0, 428, 433, 1266, 447, 464, 0, + 1265, 397, 404, 1264, 405, 412, 1263, 421, 1262, 441, + 437, 438, 417, 1261, 373, 449, 459, 465, 439, 451, + 1260, 467, 469, 472, 473, 474, 455, 478, 479, 481, + 484, 486, 487, 488, 490, 494, 491, 492, 493, 503, + 496, 509, 511, 515, 516, 517, 519, 520, 521, 1259, + 522, 1258, 1257, 1256, 1255, 1254, 1253, 389, 1252, 1251, - 520, 521, 476, 527, 525, 523, 526, 529, 531, 537, - 538, 540, 541, 543, 545, 548, 553, 555, 559, 560, - 565, 1185, 562, 567, 1223, 574, 588, 595, 599, 604, - 588, 568, 589, 1184, 607, 608, 1183, 1182, 1181, 609, - 610, 611, 612, 614, 615, 617, 620, 622, 618, 621, - 625, 626, 629, 632, 1180, 630, 635, 641, 642, 1179, - 1178, 645, 643, 647, 649, 650, 651, 654, 652, 655, - 657, 1177, 1176, 1175, 659, 661, 1174, 662, 664, 674, - 0, 675, 1173, 678, 681, 679, 680, 685, 693, 1172, - 682, 690, 695, 696, 1171, 698, 709, 1170, 701, 697, + 527, 523, 1250, 1249, 551, 529, 530, 539, 532, 563, + 542, 1248, 1247, 1246, 543, 1245, 142, 566, 533, 1244, + 1243, 419, 567, 1242, 568, 569, 570, 571, 576, 573, + 577, 579, 1241, 1240, 1239, 583, 587, 1238, 586, 1237, + 589, 1236, 592, 1235, 599, 594, 595, 596, 531, 602, + 612, 601, 616, 1234, 613, 618, 1291, 625, 639, 646, + 650, 655, 639, 619, 640, 1233, 658, 625, 1232, 1231, + 1230, 659, 660, 661, 662, 663, 665, 664, 669, 667, + 671, 670, 672, 674, 681, 673, 1229, 1228, 686, 687, + 692, 688, 1227, 1226, 696, 694, 1225, 695, 697, 698, - 1169, 711, 1168, 713, 1167, 1166, 714, 715, 717, 719, - 720, 721, 1165, 723, 728, 1164, 729, 1163, 731, 730, - 1162, 737, 1161, 737, 739, 1160, 740, 748, 745, 751, - 754, 746, 757, 756, 760, 761, 764, 765, 766, 769, - 1159, 771, 1158, 1157, 772, 773, 774, 768, 780, 782, - 784, 787, 789, 790, 1156, 792, 793, 794, 796, 797, - 803, 800, 1155, 810, 811, 1154, 1153, 1152, 1151, 1150, - 1149, 1148, 814, 815, 816, 1147, 818, 817, 822, 1146, - 1145, 819, 1144, 1143, 820, 826, 824, 821, 836, 837, - 841, 839, 842, 1142, 845, 848, 1141, 849, 853, 823, + 702, 701, 706, 705, 707, 1224, 1223, 1222, 708, 713, + 1221, 700, 717, 725, 0, 727, 1220, 729, 730, 731, + 732, 735, 738, 1219, 733, 739, 745, 750, 1218, 748, + 746, 1217, 752, 759, 1216, 762, 1215, 763, 1214, 1213, + 765, 766, 768, 767, 771, 764, 1212, 770, 773, 1211, + 779, 1210, 782, 783, 1209, 788, 1208, 788, 789, 1207, + 790, 798, 795, 799, 803, 801, 807, 809, 810, 811, + 814, 815, 816, 817, 1206, 818, 1205, 1204, 819, 821, + 823, 826, 827, 830, 836, 837, 839, 841, 1203, 843, + 844, 845, 847, 848, 855, 849, 1202, 851, 861, 1201, - 852, 854, 855, 856, 1140, 1139, 1138, 863, 857, 1137, - 1136, 1135, 865, 869, 1134, 870, 875, 877, 864, 1133, - 881, 1132, 1131, 1130, 1129, 878, 883, 886, 1128, 889, - 891, 1127, 1126, 1125, 1124, 1123, 892, 890, 1122, 1121, - 1120, 893, 894, 896, 897, 895, 1119, 906, 1118, 907, - 1117, 1116, 909, 911, 913, 918, 914, 1115, 915, 917, - 920, 921, 919, 922, 926, 927, 1114, 928, 937, 938, - 942, 945, 941, 944, 949, 952, 1113, 955, 957, 958, - 956, 1112, 959, 960, 961, 962, 1111, 1110, 1107, 969, - 1097, 966, 976, 970, 967, 1096, 986, 987, 978, 1095, + 1200, 1199, 1198, 1197, 1196, 1195, 863, 865, 866, 1194, + 867, 868, 871, 1193, 1192, 870, 1191, 1190, 872, 874, + 882, 873, 876, 886, 883, 877, 892, 1189, 893, 894, + 1188, 897, 898, 901, 902, 903, 904, 908, 1187, 1186, + 1185, 915, 907, 1184, 1183, 1182, 916, 912, 1181, 918, + 924, 931, 921, 1180, 932, 1179, 1178, 1177, 1176, 913, + 935, 937, 1175, 938, 940, 1174, 1173, 1172, 1171, 1170, + 942, 941, 1169, 1168, 1167, 943, 945, 948, 946, 949, + 1166, 951, 1165, 957, 1164, 1163, 960, 961, 46, 962, + 963, 1162, 964, 968, 965, 969, 970, 978, 971, 976, - 988, 1094, 1092, 989, 990, 995, 996, 997, 998, 1000, - 1002, 1003, 1004, 1005, 1006, 1009, 1091, 1008, 1012, 1015, - 1017, 1020, 1023, 1024, 1089, 1026, 1030, 1031, 1033, 1035, - 1088, 1036, 1037, 1038, 1041, 1084, 1043, 1044, 1082, 1042, - 1049, 1052, 1054, 1059, 1063, 1062, 1066, 1064, 1067, 1068, - 1069, 1070, 1079, 1073, 968, 827, 683, 1076, 579, 1077, - 578, 576, 490, 1078, 488, 1223, 1113, 1115, 124, 1119, - 76 + 1161, 979, 983, 989, 990, 988, 986, 996, 998, 1000, + 1160, 1001, 1005, 1006, 1007, 1159, 1002, 1010, 1008, 1013, + 1158, 1155, 1146, 1019, 1144, 1014, 1026, 1015, 1012, 1143, + 1034, 1035, 1024, 1142, 1020, 1141, 1139, 1039, 1036, 1038, + 1042, 1046, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, + 1138, 1057, 1059, 1063, 1065, 1070, 1072, 1066, 1137, 1068, + 1074, 1076, 1078, 1080, 1136, 1085, 1084, 1086, 1087, 1133, + 1090, 1092, 1132, 1096, 1098, 1100, 1102, 1103, 1109, 1106, + 1110, 1112, 1114, 1115, 1116, 1117, 1128, 1118, 910, 734, + 703, 1123, 629, 1125, 627, 597, 534, 1126, 334, 1291, + + 1161, 1163, 296, 1167, 253 } ; -static yyconst short int yy_def[572] = +static yyconst short int yy_def[606] = { 0, - 566, 1, 566, 566, 566, 566, 567, 568, 569, 566, - 568, 568, 568, 568, 570, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 567, 566, 568, 566, - 571, 571, 566, 566, 568, 568, 568, 568, 568, 570, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 600, 1, 600, 600, 600, 600, 601, 602, 603, 600, + 602, 602, 602, 602, 604, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 601, 600, 602, 600, + 605, 605, 600, 600, 602, 602, 602, 602, 602, 604, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 566, 571, 571, 566, 568, 568, 568, 49, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 49, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 600, 605, 605, 600, 602, 602, 602, 49, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 566, 566, 566, 566, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 184, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 602, 602, 602, 602, 49, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 600, 600, 600, 600, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 566, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 205, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 600, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 0, 566, 566, 566, 566, - 566 + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 0, + + 600, 600, 600, 600, 600 } ; -static yyconst short int yy_nxt[1267] = +static yyconst short int yy_nxt[1335] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 14, 14, 4, 15, 8, 8, 8, 16, 17, @@ -595,124 +610,132 @@ static yyconst short int yy_nxt[1267] = 26, 27, 28, 8, 29, 30, 31, 32, 33, 34, 35, 8, 36, 42, 40, 43, 43, 43, 43, 44, 44, 44, 44, 45, 45, 45, 45, 40, 46, 40, - 40, 40, 139, 40, 47, 48, 48, 48, 48, 40, - 47, 48, 48, 48, 48, 40, 40, 69, 122, 40, - 88, 40, 89, 87, 51, 118, 40, 70, 56, 40, - 93, 52, 57, 53, 40, 54, 49, 58, 55, 60, + 40, 40, 151, 40, 47, 48, 48, 48, 48, 40, + 47, 48, 48, 48, 48, 40, 40, 69, 137, 40, + 70, 40, 157, 40, 51, 515, 40, 71, 56, 40, + 90, 52, 57, 53, 40, 54, 49, 58, 55, 60, - 59, 61, 40, 125, 119, 78, 79, 64, 40, 40, - 40, 65, 62, 40, 80, 66, 63, 67, 71, 76, - 68, 72, 81, 40, 40, 77, 41, 82, 73, 84, - 40, 83, 74, 40, 75, 90, 40, 40, 115, 40, - 40, 91, 85, 40, 104, 117, 92, 40, 86, 94, - 40, 116, 120, 40, 151, 129, 133, 105, 132, 95, - 106, 96, 97, 146, 40, 98, 99, 107, 123, 123, - 123, 123, 40, 40, 100, 136, 101, 102, 40, 103, - 94, 40, 40, 137, 40, 43, 43, 43, 43, 40, - 108, 130, 109, 131, 134, 138, 140, 110, 135, 111, + 59, 61, 40, 40, 40, 91, 192, 64, 145, 40, + 154, 65, 62, 78, 83, 66, 63, 67, 40, 79, + 68, 40, 84, 40, 40, 80, 72, 85, 73, 74, + 40, 86, 40, 101, 81, 82, 75, 87, 40, 129, + 76, 40, 77, 40, 130, 40, 158, 132, 127, 40, + 88, 40, 40, 98, 114, 40, 89, 40, 40, 99, + 141, 128, 148, 131, 100, 326, 92, 115, 93, 40, + 116, 142, 94, 143, 95, 40, 96, 117, 97, 102, + 40, 40, 170, 40, 135, 135, 135, 135, 144, 103, + 40, 104, 105, 146, 106, 107, 108, 147, 109, 43, - 184, 112, 40, 141, 150, 113, 114, 124, 44, 44, - 44, 44, 47, 45, 45, 45, 45, 40, 126, 126, - 126, 126, 40, 40, 40, 127, 221, 149, 40, 178, - 142, 127, 47, 48, 48, 48, 48, 40, 128, 128, - 128, 128, 40, 40, 128, 128, 40, 128, 128, 128, - 128, 128, 128, 40, 40, 40, 40, 40, 143, 40, - 144, 147, 40, 152, 153, 40, 40, 145, 155, 157, - 40, 159, 40, 148, 161, 156, 40, 158, 40, 40, - 154, 40, 40, 40, 168, 160, 40, 40, 163, 162, - 40, 164, 171, 173, 175, 40, 169, 174, 165, 166, + 43, 43, 43, 206, 110, 152, 111, 112, 40, 113, + 102, 40, 153, 40, 40, 136, 44, 44, 44, 44, + 118, 164, 119, 120, 40, 121, 155, 122, 156, 123, + 40, 124, 40, 161, 40, 125, 126, 47, 45, 45, + 45, 45, 40, 138, 138, 138, 138, 40, 163, 162, + 139, 178, 253, 175, 40, 134, 139, 47, 48, 48, + 48, 48, 40, 140, 140, 140, 140, 40, 40, 140, + 140, 40, 140, 140, 140, 140, 140, 140, 159, 149, + 40, 40, 40, 40, 40, 40, 40, 165, 40, 40, + 160, 150, 40, 40, 172, 174, 188, 167, 41, 169, - 40, 167, 170, 40, 172, 176, 40, 40, 40, 40, - 177, 185, 40, 179, 40, 199, 180, 40, 40, 40, - 195, 186, 40, 182, 187, 40, 40, 181, 197, 237, - 183, 40, 188, 191, 40, 196, 192, 40, 40, 193, - 189, 205, 194, 198, 190, 40, 40, 200, 40, 210, - 201, 203, 40, 40, 206, 40, 217, 216, 202, 207, - 40, 211, 204, 40, 215, 208, 212, 40, 220, 40, - 40, 209, 40, 218, 213, 219, 40, 236, 40, 214, - 123, 123, 123, 123, 226, 226, 226, 226, 222, 231, - 223, 227, 40, 234, 232, 40, 224, 227, 126, 126, + 40, 40, 171, 166, 168, 177, 176, 182, 173, 40, + 183, 40, 187, 40, 179, 180, 184, 181, 185, 189, + 40, 40, 40, 40, 190, 40, 198, 40, 40, 40, + 186, 193, 195, 40, 197, 191, 199, 40, 40, 40, + 200, 40, 201, 40, 40, 194, 196, 40, 208, 40, + 40, 218, 207, 203, 202, 40, 209, 40, 212, 222, + 204, 40, 40, 230, 210, 205, 219, 224, 211, 40, + 214, 220, 213, 215, 40, 223, 216, 40, 40, 217, + 40, 40, 225, 40, 40, 221, 40, 226, 40, 252, + 228, 40, 40, 232, 272, 227, 40, 234, 236, 40, - 126, 126, 40, 40, 233, 127, 40, 40, 40, 279, - 40, 127, 228, 229, 40, 230, 230, 230, 230, 40, - 235, 238, 240, 40, 40, 244, 239, 40, 40, 243, - 241, 40, 242, 40, 40, 40, 40, 246, 40, 248, - 40, 247, 245, 250, 249, 251, 40, 40, 40, 40, - 40, 256, 40, 40, 40, 263, 40, 252, 254, 262, - 253, 260, 265, 266, 40, 255, 258, 40, 261, 259, - 40, 264, 40, 40, 257, 40, 269, 267, 40, 40, - 40, 272, 268, 40, 270, 40, 273, 40, 40, 40, - 40, 40, 40, 40, 275, 271, 40, 285, 277, 274, + 238, 229, 40, 233, 237, 247, 231, 40, 40, 239, + 40, 235, 249, 254, 240, 40, 40, 40, 40, 248, + 255, 263, 312, 241, 242, 40, 256, 265, 243, 250, + 40, 251, 40, 244, 40, 264, 245, 135, 135, 135, + 135, 246, 258, 258, 258, 258, 266, 267, 329, 259, + 40, 40, 40, 271, 40, 259, 138, 138, 138, 138, + 40, 268, 40, 139, 40, 269, 270, 276, 40, 139, + 260, 261, 40, 262, 262, 262, 262, 40, 40, 277, + 40, 274, 40, 275, 273, 40, 40, 40, 280, 278, + 285, 40, 40, 279, 40, 282, 283, 40, 281, 40, - 292, 40, 293, 40, 276, 278, 40, 40, 300, 40, - 280, 281, 281, 281, 281, 282, 283, 281, 281, 284, - 281, 281, 281, 281, 281, 281, 40, 294, 291, 290, - 40, 40, 40, 40, 40, 286, 40, 287, 40, 40, - 40, 288, 40, 289, 40, 299, 295, 303, 298, 301, - 40, 40, 296, 40, 40, 297, 40, 302, 40, 304, - 309, 40, 307, 311, 305, 306, 40, 308, 40, 312, - 310, 315, 40, 40, 313, 40, 316, 317, 40, 314, - 40, 40, 319, 226, 226, 226, 226, 318, 324, 40, - 227, 40, 40, 320, 228, 228, 227, 322, 322, 322, + 40, 40, 289, 40, 40, 40, 40, 40, 284, 40, + 293, 287, 295, 296, 286, 299, 40, 294, 291, 288, + 298, 292, 40, 297, 40, 300, 290, 302, 40, 40, + 40, 303, 40, 40, 40, 40, 40, 306, 304, 301, + 40, 307, 40, 40, 40, 40, 40, 40, 309, 349, + 311, 305, 40, 308, 319, 40, 40, 313, 310, 314, + 315, 315, 315, 315, 328, 316, 315, 315, 317, 315, + 315, 315, 315, 315, 315, 318, 40, 325, 324, 40, + 40, 40, 40, 40, 40, 320, 40, 321, 327, 40, + 40, 322, 40, 323, 333, 337, 40, 332, 335, 40, - 322, 40, 40, 321, 322, 322, 322, 322, 230, 230, - 230, 230, 40, 230, 230, 230, 230, 40, 323, 325, - 40, 40, 40, 40, 40, 40, 327, 40, 40, 328, - 40, 40, 332, 40, 40, 40, 337, 326, 40, 40, - 331, 333, 40, 40, 340, 40, 329, 330, 40, 335, - 336, 341, 342, 338, 40, 40, 40, 334, 40, 339, - 40, 349, 40, 40, 40, 40, 343, 40, 40, 350, - 40, 344, 40, 348, 40, 40, 345, 40, 346, 347, - 355, 354, 353, 351, 352, 357, 356, 40, 40, 359, - 358, 40, 40, 40, 40, 40, 40, 363, 40, 360, + 40, 330, 40, 334, 331, 40, 336, 40, 40, 40, + 40, 343, 40, 338, 40, 40, 342, 339, 341, 340, + 346, 345, 344, 350, 347, 40, 40, 348, 352, 40, + 351, 40, 40, 353, 258, 258, 258, 258, 40, 358, + 40, 259, 40, 361, 354, 260, 260, 259, 356, 356, + 356, 356, 40, 40, 355, 356, 356, 356, 356, 262, + 262, 262, 262, 40, 262, 262, 262, 262, 40, 357, + 359, 40, 40, 40, 40, 40, 40, 40, 40, 362, + 40, 366, 40, 40, 40, 40, 40, 40, 360, 371, + 365, 367, 374, 376, 40, 370, 363, 364, 369, 40, - 361, 365, 367, 40, 364, 362, 40, 369, 40, 40, - 40, 40, 366, 373, 40, 371, 368, 374, 372, 375, - 376, 370, 40, 378, 40, 379, 40, 40, 40, 377, - 40, 380, 40, 40, 40, 381, 40, 382, 386, 383, - 384, 40, 40, 40, 40, 385, 322, 322, 322, 322, - 40, 387, 40, 40, 391, 394, 393, 388, 40, 40, - 395, 40, 389, 398, 40, 390, 392, 40, 397, 40, - 40, 399, 400, 40, 40, 396, 402, 40, 40, 40, - 401, 40, 40, 405, 40, 40, 40, 40, 403, 409, - 414, 410, 404, 40, 406, 40, 408, 40, 411, 412, + 40, 40, 372, 375, 368, 40, 373, 40, 40, 40, + 40, 40, 383, 40, 40, 40, 40, 384, 40, 40, + 40, 40, 377, 378, 382, 381, 40, 379, 388, 380, + 40, 385, 386, 387, 389, 391, 390, 394, 40, 392, + 40, 393, 40, 40, 40, 40, 40, 40, 40, 397, + 399, 40, 40, 395, 401, 398, 396, 403, 40, 40, + 405, 40, 407, 40, 400, 40, 411, 408, 402, 406, + 410, 404, 40, 409, 412, 40, 40, 40, 40, 40, + 40, 40, 414, 40, 40, 415, 40, 413, 416, 420, + 417, 418, 40, 419, 421, 40, 40, 356, 356, 356, - 40, 407, 40, 40, 413, 40, 40, 40, 415, 40, - 40, 416, 420, 40, 423, 422, 40, 418, 424, 425, - 417, 419, 421, 40, 40, 426, 427, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 431, 40, - 40, 428, 430, 433, 435, 439, 438, 429, 432, 40, - 40, 436, 40, 434, 40, 40, 437, 440, 40, 443, - 441, 40, 40, 442, 450, 40, 40, 40, 40, 40, - 40, 446, 445, 449, 451, 444, 40, 40, 40, 448, - 455, 456, 40, 40, 447, 458, 453, 454, 40, 452, - 40, 40, 460, 457, 40, 462, 40, 461, 459, 40, + 356, 40, 40, 40, 422, 425, 428, 423, 40, 427, + 429, 40, 40, 432, 40, 424, 40, 426, 431, 433, + 40, 434, 40, 40, 40, 430, 436, 40, 40, 40, + 40, 40, 40, 439, 40, 435, 40, 443, 444, 40, + 40, 437, 438, 40, 440, 445, 442, 446, 448, 40, + 40, 441, 40, 447, 40, 449, 40, 40, 40, 450, + 40, 40, 40, 454, 40, 457, 456, 452, 40, 458, + 459, 453, 451, 455, 40, 461, 40, 460, 40, 40, + 40, 40, 462, 40, 40, 40, 40, 40, 465, 40, + 40, 464, 467, 469, 472, 40, 40, 463, 466, 40, - 463, 464, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 468, 465, 466, 469, 471, 467, 474, 470, 40, - 40, 472, 40, 475, 40, 476, 40, 40, 40, 473, - 40, 40, 40, 40, 40, 40, 483, 484, 478, 40, - 40, 40, 477, 479, 489, 480, 482, 485, 486, 487, - 40, 40, 481, 488, 40, 40, 494, 40, 40, 493, - 495, 490, 40, 491, 498, 40, 492, 496, 40, 40, - 40, 40, 40, 40, 40, 40, 500, 497, 504, 40, - 40, 40, 40, 40, 508, 499, 513, 505, 510, 40, - 506, 40, 501, 502, 503, 509, 511, 507, 512, 40, + 475, 477, 470, 473, 468, 40, 40, 40, 471, 474, + 40, 40, 476, 478, 40, 40, 40, 40, 483, 480, + 40, 40, 479, 40, 485, 40, 40, 482, 40, 40, + 481, 40, 489, 490, 40, 487, 492, 40, 486, 488, + 494, 493, 484, 491, 40, 40, 495, 499, 40, 496, + 40, 40, 498, 40, 40, 40, 40, 497, 40, 40, + 502, 40, 40, 503, 40, 500, 505, 501, 504, 508, + 40, 506, 509, 40, 40, 40, 40, 40, 40, 510, + 507, 40, 40, 40, 40, 517, 518, 511, 512, 40, + 516, 40, 40, 520, 513, 514, 40, 521, 519, 40, - 40, 40, 40, 40, 516, 515, 514, 518, 40, 40, - 40, 40, 519, 40, 521, 40, 40, 40, 40, 40, - 524, 40, 40, 528, 517, 40, 522, 530, 40, 526, - 40, 520, 527, 40, 529, 531, 40, 40, 525, 40, - 523, 532, 535, 40, 40, 536, 40, 533, 40, 40, - 40, 40, 539, 534, 40, 40, 40, 40, 543, 540, - 537, 541, 40, 542, 545, 40, 548, 40, 538, 550, - 549, 546, 40, 544, 547, 40, 40, 40, 551, 40, - 40, 40, 40, 40, 552, 557, 40, 558, 559, 40, - 40, 40, 40, 553, 554, 40, 563, 40, 555, 564, + 523, 40, 40, 40, 522, 527, 524, 528, 529, 40, + 530, 40, 525, 40, 40, 40, 532, 526, 40, 40, + 40, 40, 531, 40, 534, 40, 40, 40, 40, 538, + 539, 547, 40, 40, 533, 542, 544, 40, 535, 40, + 540, 536, 537, 546, 541, 543, 545, 40, 40, 40, + 550, 40, 40, 549, 548, 40, 551, 552, 553, 40, + 555, 40, 40, 40, 40, 40, 40, 40, 40, 558, + 40, 562, 40, 564, 554, 556, 40, 560, 40, 40, + 561, 40, 563, 40, 565, 40, 559, 40, 566, 40, + 557, 40, 569, 40, 570, 567, 573, 40, 40, 40, + + 40, 568, 571, 40, 574, 40, 575, 577, 576, 40, + 572, 40, 579, 40, 582, 40, 40, 580, 584, 40, + 578, 581, 40, 40, 583, 40, 585, 40, 40, 40, + 40, 40, 586, 591, 592, 593, 40, 587, 40, 40, + 588, 40, 589, 597, 590, 40, 40, 598, 596, 40, + 40, 40, 40, 595, 40, 40, 40, 40, 594, 40, + 599, 37, 37, 37, 37, 39, 39, 50, 40, 50, + 50, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 556, 40, 40, 562, 40, 40, 561, 40, 40, 40, - 40, 560, 565, 37, 37, 37, 37, 39, 39, 50, - 40, 50, 50, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, @@ -720,157 +743,165 @@ static yyconst short int yy_nxt[1267] = 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 225, 40, 40, 40, 40, 121, 40, - 38, 566, 3, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566 + 257, 40, 40, 40, 40, 40, 133, 40, 38, 600, + 3, 600, 600, 600, 600, 600, 600, 600, 600, 600, + + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600 } ; -static yyconst short int yy_chk[1267] = +static yyconst short int yy_chk[1335] = { 0, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, 58, 9, 9, 9, 9, 10, - 10, 10, 10, 11, 11, 11, 11, 11, 12, 26, - 20, 27, 58, 12, 13, 13, 13, 13, 13, 13, - 14, 14, 14, 14, 14, 14, 16, 20, 571, 17, - 27, 29, 27, 26, 16, 35, 35, 20, 17, 23, - 29, 16, 17, 16, 18, 16, 13, 17, 16, 18, + 10, 10, 10, 11, 11, 11, 11, 11, 12, 489, + 20, 63, 58, 12, 13, 13, 13, 13, 13, 13, + 14, 14, 14, 14, 14, 14, 16, 20, 46, 17, + 20, 26, 63, 46, 16, 489, 92, 20, 17, 54, + 26, 16, 17, 16, 18, 16, 13, 17, 16, 18, - 17, 18, 19, 46, 35, 23, 23, 19, 46, 24, - 22, 19, 18, 21, 24, 19, 18, 19, 21, 22, - 19, 21, 24, 28, 25, 22, 569, 24, 21, 25, - 68, 24, 21, 33, 21, 28, 34, 54, 33, 31, - 64, 28, 25, 36, 31, 34, 28, 51, 25, 30, - 53, 33, 36, 30, 68, 51, 54, 31, 53, 30, - 31, 30, 30, 64, 56, 30, 30, 31, 42, 42, - 42, 42, 57, 94, 30, 56, 30, 30, 52, 30, - 32, 60, 55, 57, 32, 43, 43, 43, 43, 67, - 32, 52, 32, 52, 55, 57, 60, 32, 55, 32, + 17, 18, 19, 61, 22, 26, 92, 19, 54, 24, + 61, 19, 18, 22, 24, 19, 18, 19, 23, 22, + 19, 21, 24, 64, 29, 23, 21, 24, 21, 21, + 34, 24, 25, 29, 23, 23, 21, 25, 36, 34, + 21, 28, 21, 33, 35, 35, 64, 36, 33, 31, + 25, 56, 51, 28, 31, 217, 25, 27, 52, 28, + 51, 33, 56, 35, 28, 217, 27, 31, 27, 74, + 31, 52, 27, 52, 27, 103, 27, 31, 27, 30, + 53, 55, 74, 30, 42, 42, 42, 42, 53, 30, + 60, 30, 30, 55, 30, 30, 30, 55, 30, 43, - 94, 32, 66, 60, 67, 32, 32, 44, 44, 44, - 44, 44, 45, 45, 45, 45, 45, 45, 47, 47, - 47, 47, 47, 61, 88, 47, 118, 66, 118, 88, - 61, 47, 48, 48, 48, 48, 48, 48, 49, 49, - 49, 49, 49, 62, 49, 49, 63, 49, 49, 49, - 49, 49, 49, 71, 65, 69, 72, 70, 62, 73, - 62, 65, 74, 69, 70, 75, 76, 63, 71, 72, - 77, 74, 78, 65, 75, 71, 79, 73, 80, 81, - 70, 83, 84, 95, 80, 74, 85, 82, 77, 76, - 86, 78, 82, 83, 85, 87, 81, 84, 79, 79, + 43, 43, 43, 103, 30, 60, 30, 30, 66, 30, + 32, 62, 60, 69, 32, 44, 44, 44, 44, 44, + 32, 69, 32, 32, 68, 32, 62, 32, 62, 32, + 78, 32, 81, 66, 67, 32, 32, 45, 45, 45, + 45, 45, 45, 47, 47, 47, 47, 47, 68, 67, + 47, 81, 130, 78, 130, 605, 47, 48, 48, 48, + 48, 48, 48, 49, 49, 49, 49, 49, 57, 49, + 49, 65, 49, 49, 49, 49, 49, 49, 65, 57, + 71, 87, 72, 73, 75, 76, 77, 71, 79, 80, + 65, 57, 82, 84, 76, 77, 87, 72, 603, 73, - 90, 79, 81, 91, 82, 86, 92, 93, 96, 102, - 87, 95, 99, 90, 139, 102, 91, 97, 98, 100, - 99, 96, 107, 93, 97, 101, 108, 92, 100, 139, - 93, 111, 97, 98, 103, 99, 98, 104, 106, 98, - 97, 107, 98, 101, 97, 114, 109, 103, 110, 111, - 104, 106, 115, 112, 108, 113, 115, 114, 104, 109, - 116, 112, 106, 117, 113, 110, 112, 119, 117, 120, - 138, 110, 134, 116, 112, 116, 131, 138, 130, 112, - 123, 123, 123, 123, 124, 124, 124, 124, 119, 130, - 120, 124, 180, 134, 131, 133, 120, 124, 126, 126, + 86, 83, 75, 71, 72, 80, 79, 83, 76, 89, + 84, 88, 86, 85, 82, 82, 84, 82, 85, 88, + 91, 96, 93, 94, 89, 95, 96, 98, 97, 99, + 85, 93, 94, 100, 95, 91, 97, 101, 102, 104, + 98, 105, 99, 108, 117, 93, 94, 599, 105, 106, + 110, 108, 104, 101, 100, 107, 105, 111, 106, 110, + 101, 112, 109, 117, 105, 102, 108, 112, 105, 113, + 107, 109, 106, 107, 114, 111, 107, 116, 118, 107, + 119, 122, 113, 120, 129, 109, 155, 114, 121, 129, + 116, 123, 131, 119, 155, 114, 125, 121, 122, 132, - 126, 126, 126, 141, 133, 126, 140, 136, 144, 180, - 147, 126, 127, 127, 143, 127, 127, 127, 127, 127, - 136, 140, 143, 145, 146, 147, 141, 148, 150, 146, - 144, 152, 145, 151, 153, 156, 154, 150, 155, 151, - 157, 150, 148, 153, 152, 154, 158, 159, 160, 163, - 162, 158, 161, 165, 166, 163, 164, 154, 156, 162, - 155, 161, 165, 166, 167, 157, 160, 168, 161, 160, - 169, 164, 170, 171, 159, 172, 168, 166, 173, 174, - 175, 171, 167, 177, 169, 178, 172, 181, 188, 203, - 194, 186, 185, 195, 174, 170, 187, 188, 177, 173, + 123, 116, 198, 120, 122, 125, 118, 126, 127, 123, + 142, 121, 127, 131, 123, 124, 128, 143, 145, 126, + 132, 142, 198, 124, 124, 146, 132, 145, 124, 128, + 153, 128, 222, 124, 148, 143, 124, 135, 135, 135, + 135, 124, 136, 136, 136, 136, 146, 148, 222, 136, + 151, 152, 159, 153, 150, 136, 138, 138, 138, 138, + 138, 150, 156, 138, 160, 151, 152, 159, 167, 138, + 139, 139, 157, 139, 139, 139, 139, 139, 158, 160, + 162, 157, 163, 158, 156, 164, 165, 166, 163, 162, + 167, 168, 169, 162, 170, 165, 166, 171, 164, 172, - 194, 565, 195, 563, 175, 178, 190, 192, 203, 196, - 181, 184, 184, 184, 184, 185, 186, 184, 184, 187, - 184, 184, 184, 184, 184, 184, 189, 196, 192, 190, - 197, 198, 200, 201, 202, 189, 206, 189, 205, 207, - 204, 189, 208, 189, 209, 202, 197, 205, 201, 204, - 210, 211, 198, 212, 213, 200, 214, 204, 215, 206, - 211, 216, 209, 213, 207, 208, 217, 210, 218, 214, - 212, 217, 219, 220, 215, 223, 218, 219, 221, 216, - 224, 232, 221, 226, 226, 226, 226, 220, 232, 562, - 226, 561, 559, 223, 227, 227, 226, 227, 227, 227, + 173, 174, 171, 175, 177, 178, 179, 176, 166, 181, + 174, 169, 175, 176, 168, 179, 180, 174, 173, 170, + 178, 173, 182, 177, 183, 180, 172, 181, 184, 185, + 186, 182, 187, 188, 189, 191, 202, 185, 183, 180, + 201, 186, 206, 207, 249, 209, 219, 597, 188, 249, + 191, 184, 208, 187, 209, 211, 215, 201, 189, 202, + 205, 205, 205, 205, 219, 206, 205, 205, 207, 205, + 205, 205, 205, 205, 205, 208, 210, 215, 211, 218, + 223, 225, 226, 227, 228, 210, 230, 210, 218, 229, + 231, 210, 232, 210, 227, 230, 236, 226, 229, 239, - 227, 231, 233, 224, 228, 228, 228, 228, 229, 229, - 229, 229, 229, 230, 230, 230, 230, 230, 231, 233, - 235, 236, 240, 241, 242, 243, 236, 244, 245, 240, - 246, 249, 244, 247, 250, 248, 249, 235, 251, 252, - 243, 245, 253, 256, 252, 254, 241, 242, 257, 247, - 248, 253, 254, 250, 258, 259, 263, 246, 262, 251, - 264, 263, 265, 266, 267, 269, 256, 268, 270, 264, - 271, 257, 275, 262, 276, 278, 258, 279, 258, 259, - 269, 268, 267, 265, 266, 271, 270, 280, 282, 276, - 275, 284, 286, 287, 285, 291, 557, 282, 288, 278, + 237, 223, 241, 228, 225, 243, 229, 246, 247, 248, + 596, 241, 245, 231, 252, 250, 239, 232, 237, 236, + 246, 245, 243, 250, 247, 251, 255, 248, 252, 253, + 251, 256, 264, 253, 258, 258, 258, 258, 268, 264, + 595, 258, 593, 268, 255, 259, 259, 258, 259, 259, + 259, 259, 263, 265, 256, 260, 260, 260, 260, 261, + 261, 261, 261, 261, 262, 262, 262, 262, 262, 263, + 265, 267, 272, 273, 274, 275, 276, 278, 277, 272, + 280, 276, 279, 282, 281, 283, 286, 284, 267, 281, + 275, 277, 284, 286, 285, 280, 273, 274, 279, 289, - 279, 285, 287, 292, 284, 280, 289, 288, 293, 294, - 300, 296, 286, 292, 299, 289, 287, 293, 291, 294, - 296, 288, 297, 299, 302, 300, 304, 307, 308, 297, - 309, 302, 310, 311, 312, 304, 314, 307, 311, 308, - 309, 315, 317, 320, 319, 310, 322, 322, 322, 322, - 324, 312, 325, 327, 319, 324, 320, 314, 329, 332, - 325, 328, 315, 329, 330, 317, 319, 331, 328, 334, - 333, 330, 331, 335, 336, 327, 333, 337, 338, 339, - 332, 348, 340, 336, 342, 345, 346, 347, 334, 340, - 348, 342, 335, 349, 337, 350, 339, 351, 345, 346, + 290, 292, 282, 285, 278, 291, 283, 296, 298, 295, + 299, 300, 296, 312, 302, 301, 591, 298, 304, 303, + 305, 309, 289, 290, 295, 292, 310, 291, 302, 291, + 313, 299, 300, 301, 303, 305, 304, 312, 314, 309, + 316, 310, 318, 319, 320, 321, 325, 590, 322, 316, + 319, 323, 326, 313, 321, 318, 314, 322, 327, 331, + 323, 330, 326, 328, 320, 333, 331, 327, 321, 325, + 330, 322, 334, 328, 333, 336, 338, 346, 341, 342, + 344, 343, 336, 348, 345, 338, 349, 334, 341, 345, + 342, 343, 351, 344, 346, 353, 354, 356, 356, 356, - 352, 338, 353, 354, 347, 356, 357, 358, 349, 359, - 360, 350, 354, 362, 358, 357, 361, 352, 359, 360, - 351, 353, 356, 364, 365, 361, 362, 373, 374, 375, - 378, 377, 382, 385, 388, 379, 400, 387, 374, 386, - 556, 364, 373, 377, 379, 387, 386, 365, 375, 389, - 390, 382, 392, 378, 391, 393, 385, 388, 395, 391, - 389, 396, 398, 390, 400, 401, 399, 402, 403, 404, - 409, 395, 393, 399, 401, 392, 408, 419, 413, 398, - 408, 408, 414, 416, 396, 413, 403, 404, 417, 402, - 418, 426, 416, 409, 421, 418, 427, 417, 414, 428, + 356, 358, 359, 361, 348, 353, 358, 349, 363, 354, + 359, 362, 364, 363, 366, 351, 365, 353, 362, 364, + 367, 365, 368, 369, 370, 361, 367, 371, 372, 373, + 374, 376, 379, 370, 380, 366, 381, 374, 376, 382, + 383, 368, 369, 384, 371, 379, 373, 380, 382, 385, + 386, 372, 387, 381, 388, 383, 390, 391, 392, 384, + 393, 394, 396, 388, 398, 392, 391, 386, 395, 393, + 394, 387, 385, 390, 399, 396, 407, 395, 408, 409, + 411, 412, 398, 416, 413, 419, 422, 420, 408, 423, + 426, 407, 411, 413, 420, 421, 425, 399, 409, 424, - 419, 421, 430, 438, 431, 437, 442, 443, 446, 444, - 445, 430, 426, 427, 431, 438, 428, 444, 437, 448, - 450, 442, 453, 445, 454, 446, 455, 457, 459, 443, - 460, 456, 463, 461, 462, 464, 457, 459, 450, 465, - 466, 468, 448, 453, 464, 454, 456, 460, 461, 462, - 469, 470, 455, 463, 473, 471, 470, 474, 472, 469, - 471, 465, 475, 466, 474, 476, 468, 472, 478, 481, - 479, 480, 483, 484, 485, 486, 476, 473, 481, 492, - 495, 555, 490, 494, 486, 475, 495, 483, 492, 493, - 484, 499, 478, 479, 480, 490, 493, 485, 494, 497, + 423, 425, 416, 421, 412, 427, 429, 430, 419, 422, + 432, 433, 424, 426, 434, 435, 436, 437, 433, 429, + 443, 438, 427, 589, 435, 448, 460, 432, 442, 447, + 430, 450, 442, 442, 453, 437, 447, 451, 436, 438, + 450, 448, 434, 443, 452, 455, 451, 460, 461, 452, + 462, 464, 455, 465, 472, 471, 476, 453, 477, 479, + 464, 478, 480, 465, 482, 461, 472, 462, 471, 478, + 484, 476, 479, 487, 488, 490, 491, 493, 495, 480, + 477, 494, 496, 497, 499, 491, 493, 482, 484, 500, + 490, 498, 502, 495, 487, 488, 503, 496, 494, 507, - 498, 501, 504, 505, 499, 498, 497, 504, 506, 507, - 508, 509, 505, 510, 507, 511, 512, 513, 514, 515, - 510, 518, 516, 514, 501, 519, 508, 516, 520, 512, - 521, 506, 513, 522, 515, 518, 523, 524, 511, 526, - 509, 519, 522, 527, 528, 523, 529, 520, 530, 532, - 533, 534, 527, 521, 535, 540, 537, 538, 532, 528, - 524, 529, 541, 530, 534, 542, 538, 543, 526, 541, - 540, 535, 544, 533, 537, 546, 545, 548, 542, 547, - 549, 550, 551, 552, 543, 548, 554, 549, 550, 558, - 560, 564, 553, 544, 545, 539, 558, 536, 546, 560, + 498, 506, 504, 505, 497, 503, 499, 504, 505, 508, + 506, 509, 500, 510, 512, 517, 508, 502, 513, 514, + 515, 519, 507, 518, 510, 529, 520, 526, 528, 515, + 517, 529, 524, 535, 509, 520, 526, 533, 512, 527, + 518, 513, 514, 528, 519, 524, 527, 531, 532, 539, + 533, 540, 538, 532, 531, 541, 535, 538, 539, 542, + 541, 543, 544, 545, 546, 547, 548, 549, 550, 544, + 552, 548, 553, 550, 540, 542, 554, 546, 555, 558, + 547, 560, 549, 556, 552, 557, 545, 561, 553, 562, + 543, 563, 556, 564, 557, 554, 561, 567, 566, 568, - 547, 531, 525, 554, 517, 503, 552, 502, 500, 496, - 491, 551, 564, 567, 567, 567, 567, 568, 568, 570, - 489, 570, 570, 488, 487, 482, 477, 467, 458, 452, - 451, 449, 447, 441, 440, 439, 436, 435, 434, 433, - 432, 429, 425, 424, 423, 422, 420, 415, 412, 411, - 410, 407, 406, 405, 397, 394, 384, 383, 381, 380, - 376, 372, 371, 370, 369, 368, 367, 366, 363, 355, - 344, 343, 341, 326, 323, 321, 318, 316, 313, 306, - 305, 303, 301, 298, 295, 290, 283, 277, 274, 273, - 272, 261, 260, 255, 239, 238, 237, 234, 222, 199, + 569, 555, 558, 571, 562, 572, 563, 566, 564, 574, + 560, 575, 568, 576, 572, 577, 578, 569, 575, 580, + 567, 571, 579, 581, 574, 582, 576, 583, 584, 585, + 586, 588, 577, 582, 583, 584, 592, 578, 594, 598, + 579, 587, 580, 592, 581, 573, 570, 594, 588, 565, + 559, 551, 537, 586, 536, 534, 530, 525, 585, 523, + 598, 601, 601, 601, 601, 602, 602, 604, 522, 604, + 604, 521, 516, 511, 501, 492, 486, 485, 483, 481, + 475, 474, 473, 470, 469, 468, 467, 466, 463, 459, + 458, 457, 456, 454, 449, 446, 445, 444, 441, 440, - 193, 191, 183, 182, 179, 176, 149, 142, 137, 135, - 132, 129, 125, 121, 105, 89, 59, 39, 37, 8, - 7, 3, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566 + 439, 431, 428, 418, 417, 415, 414, 410, 406, 405, + 404, 403, 402, 401, 400, 397, 389, 378, 377, 375, + 360, 357, 355, 352, 350, 347, 340, 339, 337, 335, + 332, 329, 324, 317, 311, 308, 307, 306, 297, 294, + 293, 288, 287, 271, 270, 269, 266, 254, 244, 242, + 240, 238, 235, 234, 233, 224, 221, 220, 216, 214, + 213, 212, 204, 203, 200, 199, 197, 196, 195, 194, + 193, 192, 190, 161, 154, 149, 147, 144, 141, 137, + 133, 115, 90, 70, 59, 39, 37, 8, 7, 3, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600 } ; static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr; @@ -948,7 +979,7 @@ char *yytext; /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing * it to deal with 64 bit numbers. */ -#line 952 "UpgradeLexer.cpp" +#line 983 "UpgradeLexer.cpp" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1102,7 +1133,7 @@ YY_DECL #line 99 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -#line 1106 "UpgradeLexer.cpp" +#line 1137 "UpgradeLexer.cpp" if ( yy_init ) { @@ -1150,14 +1181,14 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 567 ) + if ( yy_current_state >= 601 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; *yy_state_ptr++ = yy_current_state; ++yy_cp; } - while ( yy_current_state != 566 ); + while ( yy_current_state != 600 ); yy_find_action: yy_current_state = *--yy_state_ptr; @@ -1595,246 +1626,356 @@ YY_RULE_SETUP YY_BREAK case 81: YY_RULE_SETUP -#line 186 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( PHI_TOK); } +#line 185 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ICMP); } YY_BREAK case 82: YY_RULE_SETUP -#line 187 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( CALL); } +#line 186 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(FCMP); } YY_BREAK case 83: YY_RULE_SETUP -#line 188 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( CAST); } +#line 187 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(EQ); } YY_BREAK case 84: YY_RULE_SETUP -#line 189 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( TRUNC); } +#line 188 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(NE); } YY_BREAK case 85: YY_RULE_SETUP -#line 190 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( ZEXT); } +#line 189 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(SLT); } YY_BREAK case 86: YY_RULE_SETUP -#line 191 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SEXT); } +#line 190 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(SGT); } YY_BREAK case 87: YY_RULE_SETUP -#line 192 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPTRUNC); } +#line 191 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(SLE); } YY_BREAK case 88: YY_RULE_SETUP -#line 193 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPEXT); } +#line 192 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(SGE); } YY_BREAK case 89: YY_RULE_SETUP -#line 194 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPTOUI); } +#line 193 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OEQ); } YY_BREAK case 90: YY_RULE_SETUP -#line 195 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPTOSI); } +#line 194 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ONE); } YY_BREAK case 91: YY_RULE_SETUP -#line 196 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( UITOFP); } +#line 195 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OLT); } YY_BREAK case 92: YY_RULE_SETUP -#line 197 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SITOFP); } +#line 196 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OGT); } YY_BREAK case 93: YY_RULE_SETUP -#line 198 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( PTRTOINT); } +#line 197 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OLE); } YY_BREAK case 94: YY_RULE_SETUP -#line 199 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( INTTOPTR); } +#line 198 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OGE); } YY_BREAK case 95: YY_RULE_SETUP -#line 200 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( BITCAST); } +#line 199 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ORD); } YY_BREAK case 96: YY_RULE_SETUP -#line 201 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SELECT); } +#line 200 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UNO); } YY_BREAK case 97: YY_RULE_SETUP -#line 202 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SHL); } +#line 201 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UEQ); } YY_BREAK case 98: YY_RULE_SETUP -#line 203 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SHR); } +#line 202 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UNE); } YY_BREAK case 99: YY_RULE_SETUP -#line 204 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( ASHR); } +#line 203 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ULT); } YY_BREAK case 100: YY_RULE_SETUP -#line 205 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( LSHR); } +#line 204 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UGT); } YY_BREAK case 101: YY_RULE_SETUP -#line 206 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( VAARG); } +#line 205 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ULE); } YY_BREAK case 102: YY_RULE_SETUP -#line 207 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( RET); } +#line 206 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UGE); } YY_BREAK case 103: YY_RULE_SETUP #line 208 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( BR); } +{ RET_TOK( PHI_TOK); } YY_BREAK case 104: YY_RULE_SETUP #line 209 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SWITCH); } +{ RET_TOK( CALL); } YY_BREAK case 105: YY_RULE_SETUP #line 210 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( INVOKE); } +{ RET_TOK( CAST); } YY_BREAK case 106: YY_RULE_SETUP #line 211 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( UNWIND); } +{ RET_TOK( TRUNC); } YY_BREAK case 107: YY_RULE_SETUP #line 212 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( EXCEPT); } // alias for unwind +{ RET_TOK( ZEXT); } YY_BREAK case 108: YY_RULE_SETUP #line 213 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( UNREACHABLE); } +{ RET_TOK( SEXT); } YY_BREAK case 109: YY_RULE_SETUP -#line 215 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( MALLOC); } +#line 214 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPTRUNC); } YY_BREAK case 110: YY_RULE_SETUP -#line 216 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( ALLOCA); } +#line 215 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPEXT); } YY_BREAK case 111: YY_RULE_SETUP -#line 217 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FREE); } +#line 216 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPTOUI); } YY_BREAK case 112: YY_RULE_SETUP -#line 218 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( LOAD); } +#line 217 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPTOSI); } YY_BREAK case 113: YY_RULE_SETUP -#line 219 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( STORE); } +#line 218 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( UITOFP); } YY_BREAK case 114: YY_RULE_SETUP -#line 220 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( GETELEMENTPTR); } +#line 219 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SITOFP); } YY_BREAK case 115: YY_RULE_SETUP -#line 222 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( EXTRACTELEMENT); } +#line 220 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( PTRTOINT); } YY_BREAK case 116: YY_RULE_SETUP -#line 223 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( INSERTELEMENT); } +#line 221 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( INTTOPTR); } YY_BREAK case 117: YY_RULE_SETUP -#line 224 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SHUFFLEVECTOR); } +#line 222 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( BITCAST); } YY_BREAK case 118: YY_RULE_SETUP -#line 227 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( VAR_ID); } +#line 223 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SELECT); } YY_BREAK case 119: YY_RULE_SETUP -#line 228 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( LABELSTR); } +#line 224 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SHL); } YY_BREAK case 120: YY_RULE_SETUP -#line 229 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( LABELSTR); } +#line 225 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SHR); } YY_BREAK case 121: YY_RULE_SETUP -#line 230 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( STRINGCONSTANT ); } +#line 226 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( ASHR); } YY_BREAK case 122: YY_RULE_SETUP -#line 231 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( EUINT64VAL ); } +#line 227 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( LSHR); } YY_BREAK case 123: YY_RULE_SETUP -#line 232 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( ESINT64VAL ); } +#line 228 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( VAARG); } YY_BREAK case 124: YY_RULE_SETUP -#line 233 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( yytext[0] == 's' ? ESINT64VAL : EUINT64VAL ); } +#line 229 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( RET); } YY_BREAK case 125: YY_RULE_SETUP -#line 234 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( UINTVAL); } +#line 230 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( BR); } YY_BREAK case 126: YY_RULE_SETUP -#line 235 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SINTVAL); } +#line 231 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SWITCH); } YY_BREAK case 127: YY_RULE_SETUP -#line 236 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPVAL); } +#line 232 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( INVOKE); } YY_BREAK case 128: YY_RULE_SETUP +#line 233 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( UNWIND); } + YY_BREAK +case 129: +YY_RULE_SETUP +#line 234 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( EXCEPT); } // alias for unwind + YY_BREAK +case 130: +YY_RULE_SETUP +#line 235 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( UNREACHABLE); } + YY_BREAK +case 131: +YY_RULE_SETUP #line 237 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( MALLOC); } + YY_BREAK +case 132: +YY_RULE_SETUP +#line 238 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( ALLOCA); } + YY_BREAK +case 133: +YY_RULE_SETUP +#line 239 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FREE); } + YY_BREAK +case 134: +YY_RULE_SETUP +#line 240 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( LOAD); } + YY_BREAK +case 135: +YY_RULE_SETUP +#line 241 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( STORE); } + YY_BREAK +case 136: +YY_RULE_SETUP +#line 242 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( GETELEMENTPTR); } + YY_BREAK +case 137: +YY_RULE_SETUP +#line 244 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( EXTRACTELEMENT); } + YY_BREAK +case 138: +YY_RULE_SETUP +#line 245 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( INSERTELEMENT); } + YY_BREAK +case 139: +YY_RULE_SETUP +#line 246 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SHUFFLEVECTOR); } + YY_BREAK +case 140: +YY_RULE_SETUP +#line 249 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( VAR_ID); } + YY_BREAK +case 141: +YY_RULE_SETUP +#line 250 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( LABELSTR); } + YY_BREAK +case 142: +YY_RULE_SETUP +#line 251 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( LABELSTR); } + YY_BREAK +case 143: +YY_RULE_SETUP +#line 252 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( STRINGCONSTANT ); } + YY_BREAK +case 144: +YY_RULE_SETUP +#line 253 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( EUINT64VAL ); } + YY_BREAK +case 145: +YY_RULE_SETUP +#line 254 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( ESINT64VAL ); } + YY_BREAK +case 146: +YY_RULE_SETUP +#line 255 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( yytext[0] == 's' ? ESINT64VAL : EUINT64VAL ); } + YY_BREAK +case 147: +YY_RULE_SETUP +#line 256 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( UINTVAL); } + YY_BREAK +case 148: +YY_RULE_SETUP +#line 257 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SINTVAL); } + YY_BREAK +case 149: +YY_RULE_SETUP +#line 258 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPVAL); } + YY_BREAK +case 150: +YY_RULE_SETUP +#line 259 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" { RET_TOK( FPVAL); } YY_BREAK case YY_STATE_EOF(INITIAL): -#line 238 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 260 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" { /* Make sure to free the internal buffers for flex when we are * done reading our input! @@ -1843,22 +1984,22 @@ case YY_STATE_EOF(INITIAL): return EOF; } YY_BREAK -case 129: +case 151: YY_RULE_SETUP -#line 246 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 268 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" { /* Ignore whitespace */ } YY_BREAK -case 130: +case 152: YY_RULE_SETUP -#line 247 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 269 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" { return yytext[0]; } YY_BREAK -case 131: +case 153: YY_RULE_SETUP -#line 249 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 271 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 1862 "UpgradeLexer.cpp" +#line 2003 "UpgradeLexer.cpp" case YY_END_OF_BUFFER: { @@ -2145,7 +2286,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 567 ) + if ( yy_current_state >= 601 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2175,11 +2316,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 567 ) + if ( yy_current_state >= 601 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 566); + yy_is_jam = (yy_current_state == 600); if ( ! yy_is_jam ) *yy_state_ptr++ = yy_current_state; @@ -2736,5 +2877,5 @@ int main() return 0; } #endif -#line 249 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 271 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" diff --git a/tools/llvm-upgrade/UpgradeLexer.cpp.cvs b/tools/llvm-upgrade/UpgradeLexer.cpp.cvs index 04174a60fbf..f7cebbe2437 100644 --- a/tools/llvm-upgrade/UpgradeLexer.cpp.cvs +++ b/tools/llvm-upgrade/UpgradeLexer.cpp.cvs @@ -317,36 +317,38 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 131 -#define YY_END_OF_BUFFER 132 -static yyconst short int yy_acclist[209] = +#define YY_NUM_RULES 153 +#define YY_END_OF_BUFFER 154 +static yyconst short int yy_acclist[231] = { 0, - 132, 130, 131, 129, 130, 131, 129, 131, 130, 131, - 130, 131, 130, 131, 130, 131, 130, 131, 130, 131, - 122, 130, 131, 122, 130, 131, 1, 130, 131, 130, - 131, 130, 131, 130, 131, 130, 131, 130, 131, 130, - 131, 130, 131, 130, 131, 130, 131, 130, 131, 130, - 131, 130, 131, 130, 131, 130, 131, 130, 131, 130, - 131, 130, 131, 130, 131, 130, 131, 130, 131, 130, - 131, 121, 119, 118, 118, 125, 123, 127, 122, 1, - 103, 39, 73, 23, 121, 118, 118, 126, 127, 20, - 127, 128, 61, 72, 37, 32, 40, 64, 3, 52, + 154, 152, 153, 151, 152, 153, 151, 153, 152, 153, + 152, 153, 152, 153, 152, 153, 152, 153, 152, 153, + 144, 152, 153, 144, 152, 153, 1, 152, 153, 152, + 153, 152, 153, 152, 153, 152, 153, 152, 153, 152, + 153, 152, 153, 152, 153, 152, 153, 152, 153, 152, + 153, 152, 153, 152, 153, 152, 153, 152, 153, 152, + 153, 152, 153, 152, 153, 152, 153, 152, 153, 152, + 153, 143, 141, 140, 140, 147, 145, 149, 144, 1, + 125, 39, 83, 84, 73, 23, 143, 140, 140, 148, + 149, 20, 149, 150, 61, 72, 37, 32, 40, 64, - 63, 81, 68, 102, 97, 98, 62, 74, 120, 127, - 127, 99, 47, 82, 83, 67, 111, 71, 112, 54, - 100, 22, 124, 66, 86, 70, 24, 4, 60, 65, - 53, 69, 46, 11, 85, 127, 34, 2, 5, 56, - 88, 58, 48, 76, 80, 78, 79, 77, 75, 50, - 113, 84, 49, 55, 21, 110, 43, 57, 28, 107, - 42, 90, 89, 7, 105, 31, 109, 36, 59, 96, - 92, 104, 25, 26, 91, 106, 51, 101, 95, 41, - 6, 27, 87, 35, 8, 16, 9, 94, 10, 93, - 33, 12, 14, 13, 30, 38, 15, 29, 108, 114, + 3, 52, 63, 89, 94, 92, 93, 91, 90, 95, + 103, 68, 124, 88, 86, 119, 120, 87, 85, 62, + 97, 102, 100, 101, 99, 98, 96, 74, 142, 149, + 149, 121, 47, 104, 105, 82, 67, 133, 71, 81, + 134, 54, 122, 22, 146, 66, 108, 70, 24, 4, + 60, 65, 53, 69, 46, 11, 107, 149, 34, 2, + 5, 56, 110, 58, 48, 76, 80, 78, 79, 77, + 75, 50, 135, 106, 49, 55, 21, 132, 43, 57, + 28, 129, 42, 112, 111, 7, 127, 31, 131, 36, + 59, 118, 114, 126, 25, 26, 113, 128, 51, 123, - 116, 117, 17, 44, 115, 18, 45, 19 + 117, 41, 6, 27, 109, 35, 8, 16, 9, 116, + 10, 115, 33, 12, 14, 13, 30, 38, 15, 29, + 130, 136, 138, 139, 17, 44, 137, 18, 45, 19 } ; -static yyconst short int yy_accept[568] = +static yyconst short int yy_accept[602] = { 0, 1, 1, 1, 2, 4, 7, 9, 11, 13, 15, 17, 19, 21, 24, 27, 30, 32, 34, 36, 38, @@ -355,61 +357,66 @@ static yyconst short int yy_accept[568] = 74, 75, 76, 77, 77, 78, 78, 79, 80, 80, 81, 81, 81, 81, 81, 81, 81, 81, 81, 82, 82, 83, 83, 83, 83, 83, 83, 83, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 83, 83, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 85, 85, 85, 85, 85, 85, 85, 86, 86, 86, - 84, 84, 84, 84, 84, 85, 85, 85, 85, 85, - 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, - 85, 86, 87, 89, 90, 91, 92, 92, 93, 94, - 94, 94, 95, 95, 95, 96, 96, 97, 97, 97, - 97, 97, 98, 98, 98, 98, 98, 98, 98, 99, - 99, 99, 100, 100, 100, 100, 100, 100, 100, 100, - 100, 100, 100, 100, 100, 100, 101, 101, 101, 101, - 101, 101, 101, 101, 101, 101, 102, 102, 102, 103, - 103, 103, 104, 105, 105, 105, 105, 105, 105, 105, - 105, 106, 106, 107, 107, 107, 107, 107, 107, 108, + 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, + 86, 86, 86, 86, 86, 87, 87, 87, 87, 87, + 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, + 87, 87, 87, 88, 89, 91, 92, 93, 94, 94, + 95, 96, 96, 96, 97, 97, 97, 98, 98, 99, + 99, 99, 99, 99, 100, 100, 100, 100, 100, 100, + 100, 101, 101, 101, 102, 102, 102, 102, 102, 102, + 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, + 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, + 104, 104, 105, 106, 107, 108, 109, 110, 110, 111, - 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, - 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, - 108, 108, 109, 109, 109, 110, 111, 111, 111, 111, - 112, 112, 112, 112, 113, 113, 113, 114, 115, 116, - 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, - 116, 116, 116, 116, 116, 117, 117, 117, 117, 117, - 118, 119, 119, 119, 119, 119, 119, 119, 119, 119, - 119, 119, 120, 121, 122, 122, 122, 123, 123, 123, - 123, 124, 124, 125, 125, 125, 125, 125, 125, 125, - 126, 126, 126, 126, 126, 127, 127, 127, 128, 128, + 112, 112, 112, 113, 114, 114, 114, 114, 114, 114, + 114, 114, 115, 116, 117, 117, 118, 118, 118, 118, + 119, 120, 120, 120, 121, 121, 121, 121, 121, 121, + 121, 121, 121, 122, 123, 124, 124, 124, 125, 125, + 126, 126, 127, 127, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 129, 129, 129, 130, 131, 131, + 131, 131, 132, 132, 132, 132, 133, 133, 133, 134, + 135, 136, 136, 136, 136, 136, 136, 136, 136, 136, + 136, 136, 136, 136, 136, 136, 136, 137, 138, 138, + 138, 138, 138, 139, 140, 140, 140, 141, 141, 141, - 128, 129, 129, 130, 130, 131, 132, 132, 132, 132, - 132, 132, 132, 133, 133, 133, 134, 134, 135, 135, - 135, 136, 137, 138, 138, 138, 139, 139, 139, 139, - 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, - 139, 140, 140, 141, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 143, 143, 143, 143, 143, - 143, 143, 143, 144, 144, 144, 145, 146, 147, 148, - 149, 150, 151, 151, 151, 151, 152, 152, 152, 152, - 153, 154, 154, 155, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 157, 157, 157, 158, 158, 158, + 141, 141, 141, 141, 141, 141, 142, 143, 144, 144, + 144, 145, 145, 145, 145, 146, 146, 147, 147, 147, + 147, 147, 147, 147, 148, 148, 148, 148, 148, 149, + 149, 149, 150, 150, 150, 151, 151, 152, 152, 153, + 154, 154, 154, 154, 154, 154, 154, 155, 155, 155, + 156, 156, 157, 157, 157, 158, 159, 160, 160, 160, + 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, + 161, 161, 161, 161, 161, 162, 162, 163, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, 164, 165, + 165, 165, 165, 165, 165, 165, 165, 166, 166, 166, - 158, 158, 158, 158, 158, 159, 160, 161, 161, 161, - 162, 163, 164, 164, 164, 165, 165, 165, 165, 165, - 166, 166, 167, 168, 169, 170, 170, 170, 170, 171, - 171, 171, 172, 173, 174, 175, 176, 176, 176, 177, - 178, 179, 179, 179, 179, 179, 179, 180, 180, 181, - 181, 182, 183, 183, 183, 183, 183, 183, 184, 184, - 184, 184, 184, 184, 184, 184, 184, 185, 185, 185, - 185, 185, 185, 185, 185, 185, 185, 186, 186, 186, - 186, 186, 187, 187, 187, 187, 187, 188, 189, 190, - 190, 191, 191, 191, 191, 191, 192, 192, 192, 192, + 167, 168, 169, 170, 171, 172, 173, 173, 173, 173, + 174, 174, 174, 174, 175, 176, 176, 177, 178, 178, + 178, 178, 178, 178, 178, 178, 178, 178, 179, 179, + 179, 180, 180, 180, 180, 180, 180, 180, 180, 181, + 182, 183, 183, 183, 184, 185, 186, 186, 186, 187, + 187, 187, 187, 187, 188, 188, 189, 190, 191, 192, + 192, 192, 192, 193, 193, 193, 194, 195, 196, 197, + 198, 198, 198, 199, 200, 201, 201, 201, 201, 201, + 201, 202, 202, 203, 203, 204, 205, 205, 205, 205, + 205, 205, 206, 206, 206, 206, 206, 206, 206, 206, - 193, 193, 194, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 196, 196, 196, - 196, 196, 196, 196, 196, 197, 197, 197, 197, 197, - 197, 198, 198, 198, 198, 198, 199, 199, 199, 200, - 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, - 200, 200, 200, 201, 201, 202, 203, 204, 204, 205, - 205, 206, 207, 208, 208, 209, 209 + 206, 207, 207, 207, 207, 207, 207, 207, 207, 207, + 207, 208, 208, 208, 208, 208, 209, 209, 209, 209, + 209, 210, 211, 212, 212, 213, 213, 213, 213, 213, + 214, 214, 214, 214, 215, 215, 216, 217, 217, 217, + 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, + 217, 218, 218, 218, 218, 218, 218, 218, 218, 219, + 219, 219, 219, 219, 219, 220, 220, 220, 220, 220, + 221, 221, 221, 222, 222, 222, 222, 222, 222, 222, + 222, 222, 222, 222, 222, 222, 222, 223, 223, 224, + 225, 226, 226, 227, 227, 228, 229, 230, 230, 231, + + 231 } ; static yyconst int yy_ec[256] = @@ -453,141 +460,149 @@ static yyconst int yy_meta[44] = 3, 3, 3 } ; -static yyconst short int yy_base[572] = +static yyconst short int yy_base[606] = { 0, - 0, 0, 1222, 1223, 1223, 1223, 1217, 1206, 36, 40, + 0, 0, 1290, 1291, 1291, 1291, 1285, 1274, 36, 40, 44, 50, 56, 62, 0, 63, 66, 81, 89, 47, - 100, 97, 76, 96, 111, 46, 48, 110, 68, 140, - 126, 171, 120, 123, 73, 130, 1215, 1223, 1204, 1223, - 0, 159, 176, 199, 204, 95, 209, 224, 229, 0, - 134, 165, 137, 124, 169, 151, 159, 31, 1203, 168, - 210, 230, 233, 127, 241, 189, 176, 117, 242, 244, - 240, 243, 246, 249, 252, 253, 257, 259, 263, 265, - 266, 274, 268, 269, 273, 277, 282, 211, 1202, 287, - 290, 293, 294, 160, 270, 295, 304, 305, 299, 306, + 108, 91, 105, 96, 119, 68, 144, 128, 111, 170, + 136, 201, 130, 117, 132, 125, 1283, 1291, 1272, 1291, + 0, 175, 190, 207, 229, 70, 234, 249, 254, 0, + 139, 145, 167, 76, 168, 138, 255, 31, 1271, 177, + 90, 198, 48, 110, 258, 195, 221, 211, 200, 1270, + 267, 269, 270, 156, 271, 272, 273, 217, 275, 276, + 219, 279, 288, 280, 300, 287, 268, 298, 296, 1269, + 307, 73, 309, 310, 312, 308, 315, 314, 316, 320, - 312, 296, 321, 324, 1201, 325, 309, 313, 333, 335, - 318, 340, 342, 332, 339, 347, 350, 215, 354, 356, - 1200, 0, 371, 375, 1199, 389, 406, 0, 1198, 365, - 363, 1197, 382, 359, 1196, 394, 1195, 357, 301, 393, - 390, 1194, 401, 395, 410, 411, 397, 414, 1193, 415, - 420, 418, 421, 423, 425, 422, 427, 433, 434, 435, - 439, 437, 436, 443, 440, 441, 451, 454, 457, 459, - 460, 462, 465, 466, 467, 1192, 470, 472, 1191, 379, - 474, 1190, 1189, 502, 479, 478, 483, 475, 513, 493, - 1188, 494, 1187, 477, 480, 496, 517, 518, 1186, 519, + 324, 325, 162, 326, 328, 336, 342, 330, 349, 337, + 344, 348, 356, 361, 1268, 364, 331, 365, 367, 370, + 375, 368, 378, 402, 383, 394, 395, 403, 371, 241, + 379, 386, 1267, 0, 428, 433, 1266, 447, 464, 0, + 1265, 397, 404, 1264, 405, 412, 1263, 421, 1262, 441, + 437, 438, 417, 1261, 373, 449, 459, 465, 439, 451, + 1260, 467, 469, 472, 473, 474, 455, 478, 479, 481, + 484, 486, 487, 488, 490, 494, 491, 492, 493, 503, + 496, 509, 511, 515, 516, 517, 519, 520, 521, 1259, + 522, 1258, 1257, 1256, 1255, 1254, 1253, 389, 1252, 1251, - 520, 521, 476, 527, 525, 523, 526, 529, 531, 537, - 538, 540, 541, 543, 545, 548, 553, 555, 559, 560, - 565, 1185, 562, 567, 1223, 574, 588, 595, 599, 604, - 588, 568, 589, 1184, 607, 608, 1183, 1182, 1181, 609, - 610, 611, 612, 614, 615, 617, 620, 622, 618, 621, - 625, 626, 629, 632, 1180, 630, 635, 641, 642, 1179, - 1178, 645, 643, 647, 649, 650, 651, 654, 652, 655, - 657, 1177, 1176, 1175, 659, 661, 1174, 662, 664, 674, - 0, 675, 1173, 678, 681, 679, 680, 685, 693, 1172, - 682, 690, 695, 696, 1171, 698, 709, 1170, 701, 697, + 527, 523, 1250, 1249, 551, 529, 530, 539, 532, 563, + 542, 1248, 1247, 1246, 543, 1245, 142, 566, 533, 1244, + 1243, 419, 567, 1242, 568, 569, 570, 571, 576, 573, + 577, 579, 1241, 1240, 1239, 583, 587, 1238, 586, 1237, + 589, 1236, 592, 1235, 599, 594, 595, 596, 531, 602, + 612, 601, 616, 1234, 613, 618, 1291, 625, 639, 646, + 650, 655, 639, 619, 640, 1233, 658, 625, 1232, 1231, + 1230, 659, 660, 661, 662, 663, 665, 664, 669, 667, + 671, 670, 672, 674, 681, 673, 1229, 1228, 686, 687, + 692, 688, 1227, 1226, 696, 694, 1225, 695, 697, 698, - 1169, 711, 1168, 713, 1167, 1166, 714, 715, 717, 719, - 720, 721, 1165, 723, 728, 1164, 729, 1163, 731, 730, - 1162, 737, 1161, 737, 739, 1160, 740, 748, 745, 751, - 754, 746, 757, 756, 760, 761, 764, 765, 766, 769, - 1159, 771, 1158, 1157, 772, 773, 774, 768, 780, 782, - 784, 787, 789, 790, 1156, 792, 793, 794, 796, 797, - 803, 800, 1155, 810, 811, 1154, 1153, 1152, 1151, 1150, - 1149, 1148, 814, 815, 816, 1147, 818, 817, 822, 1146, - 1145, 819, 1144, 1143, 820, 826, 824, 821, 836, 837, - 841, 839, 842, 1142, 845, 848, 1141, 849, 853, 823, + 702, 701, 706, 705, 707, 1224, 1223, 1222, 708, 713, + 1221, 700, 717, 725, 0, 727, 1220, 729, 730, 731, + 732, 735, 738, 1219, 733, 739, 745, 750, 1218, 748, + 746, 1217, 752, 759, 1216, 762, 1215, 763, 1214, 1213, + 765, 766, 768, 767, 771, 764, 1212, 770, 773, 1211, + 779, 1210, 782, 783, 1209, 788, 1208, 788, 789, 1207, + 790, 798, 795, 799, 803, 801, 807, 809, 810, 811, + 814, 815, 816, 817, 1206, 818, 1205, 1204, 819, 821, + 823, 826, 827, 830, 836, 837, 839, 841, 1203, 843, + 844, 845, 847, 848, 855, 849, 1202, 851, 861, 1201, - 852, 854, 855, 856, 1140, 1139, 1138, 863, 857, 1137, - 1136, 1135, 865, 869, 1134, 870, 875, 877, 864, 1133, - 881, 1132, 1131, 1130, 1129, 878, 883, 886, 1128, 889, - 891, 1127, 1126, 1125, 1124, 1123, 892, 890, 1122, 1121, - 1120, 893, 894, 896, 897, 895, 1119, 906, 1118, 907, - 1117, 1116, 909, 911, 913, 918, 914, 1115, 915, 917, - 920, 921, 919, 922, 926, 927, 1114, 928, 937, 938, - 942, 945, 941, 944, 949, 952, 1113, 955, 957, 958, - 956, 1112, 959, 960, 961, 962, 1111, 1110, 1107, 969, - 1097, 966, 976, 970, 967, 1096, 986, 987, 978, 1095, + 1200, 1199, 1198, 1197, 1196, 1195, 863, 865, 866, 1194, + 867, 868, 871, 1193, 1192, 870, 1191, 1190, 872, 874, + 882, 873, 876, 886, 883, 877, 892, 1189, 893, 894, + 1188, 897, 898, 901, 902, 903, 904, 908, 1187, 1186, + 1185, 915, 907, 1184, 1183, 1182, 916, 912, 1181, 918, + 924, 931, 921, 1180, 932, 1179, 1178, 1177, 1176, 913, + 935, 937, 1175, 938, 940, 1174, 1173, 1172, 1171, 1170, + 942, 941, 1169, 1168, 1167, 943, 945, 948, 946, 949, + 1166, 951, 1165, 957, 1164, 1163, 960, 961, 46, 962, + 963, 1162, 964, 968, 965, 969, 970, 978, 971, 976, - 988, 1094, 1092, 989, 990, 995, 996, 997, 998, 1000, - 1002, 1003, 1004, 1005, 1006, 1009, 1091, 1008, 1012, 1015, - 1017, 1020, 1023, 1024, 1089, 1026, 1030, 1031, 1033, 1035, - 1088, 1036, 1037, 1038, 1041, 1084, 1043, 1044, 1082, 1042, - 1049, 1052, 1054, 1059, 1063, 1062, 1066, 1064, 1067, 1068, - 1069, 1070, 1079, 1073, 968, 827, 683, 1076, 579, 1077, - 578, 576, 490, 1078, 488, 1223, 1113, 1115, 124, 1119, - 76 + 1161, 979, 983, 989, 990, 988, 986, 996, 998, 1000, + 1160, 1001, 1005, 1006, 1007, 1159, 1002, 1010, 1008, 1013, + 1158, 1155, 1146, 1019, 1144, 1014, 1026, 1015, 1012, 1143, + 1034, 1035, 1024, 1142, 1020, 1141, 1139, 1039, 1036, 1038, + 1042, 1046, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, + 1138, 1057, 1059, 1063, 1065, 1070, 1072, 1066, 1137, 1068, + 1074, 1076, 1078, 1080, 1136, 1085, 1084, 1086, 1087, 1133, + 1090, 1092, 1132, 1096, 1098, 1100, 1102, 1103, 1109, 1106, + 1110, 1112, 1114, 1115, 1116, 1117, 1128, 1118, 910, 734, + 703, 1123, 629, 1125, 627, 597, 534, 1126, 334, 1291, + + 1161, 1163, 296, 1167, 253 } ; -static yyconst short int yy_def[572] = +static yyconst short int yy_def[606] = { 0, - 566, 1, 566, 566, 566, 566, 567, 568, 569, 566, - 568, 568, 568, 568, 570, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 567, 566, 568, 566, - 571, 571, 566, 566, 568, 568, 568, 568, 568, 570, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 600, 1, 600, 600, 600, 600, 601, 602, 603, 600, + 602, 602, 602, 602, 604, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 601, 600, 602, 600, + 605, 605, 600, 600, 602, 602, 602, 602, 602, 604, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 566, 571, 571, 566, 568, 568, 568, 49, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 49, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 600, 605, 605, 600, 602, 602, 602, 49, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 566, 566, 566, 566, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 184, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 602, 602, 602, 602, 49, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 600, 600, 600, 600, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 566, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 205, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 600, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 0, 566, 566, 566, 566, - 566 + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 602, 602, 602, 602, 602, 602, 602, 0, + + 600, 600, 600, 600, 600 } ; -static yyconst short int yy_nxt[1267] = +static yyconst short int yy_nxt[1335] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 14, 14, 4, 15, 8, 8, 8, 16, 17, @@ -595,124 +610,132 @@ static yyconst short int yy_nxt[1267] = 26, 27, 28, 8, 29, 30, 31, 32, 33, 34, 35, 8, 36, 42, 40, 43, 43, 43, 43, 44, 44, 44, 44, 45, 45, 45, 45, 40, 46, 40, - 40, 40, 139, 40, 47, 48, 48, 48, 48, 40, - 47, 48, 48, 48, 48, 40, 40, 69, 122, 40, - 88, 40, 89, 87, 51, 118, 40, 70, 56, 40, - 93, 52, 57, 53, 40, 54, 49, 58, 55, 60, + 40, 40, 151, 40, 47, 48, 48, 48, 48, 40, + 47, 48, 48, 48, 48, 40, 40, 69, 137, 40, + 70, 40, 157, 40, 51, 515, 40, 71, 56, 40, + 90, 52, 57, 53, 40, 54, 49, 58, 55, 60, - 59, 61, 40, 125, 119, 78, 79, 64, 40, 40, - 40, 65, 62, 40, 80, 66, 63, 67, 71, 76, - 68, 72, 81, 40, 40, 77, 41, 82, 73, 84, - 40, 83, 74, 40, 75, 90, 40, 40, 115, 40, - 40, 91, 85, 40, 104, 117, 92, 40, 86, 94, - 40, 116, 120, 40, 151, 129, 133, 105, 132, 95, - 106, 96, 97, 146, 40, 98, 99, 107, 123, 123, - 123, 123, 40, 40, 100, 136, 101, 102, 40, 103, - 94, 40, 40, 137, 40, 43, 43, 43, 43, 40, - 108, 130, 109, 131, 134, 138, 140, 110, 135, 111, + 59, 61, 40, 40, 40, 91, 192, 64, 145, 40, + 154, 65, 62, 78, 83, 66, 63, 67, 40, 79, + 68, 40, 84, 40, 40, 80, 72, 85, 73, 74, + 40, 86, 40, 101, 81, 82, 75, 87, 40, 129, + 76, 40, 77, 40, 130, 40, 158, 132, 127, 40, + 88, 40, 40, 98, 114, 40, 89, 40, 40, 99, + 141, 128, 148, 131, 100, 326, 92, 115, 93, 40, + 116, 142, 94, 143, 95, 40, 96, 117, 97, 102, + 40, 40, 170, 40, 135, 135, 135, 135, 144, 103, + 40, 104, 105, 146, 106, 107, 108, 147, 109, 43, - 184, 112, 40, 141, 150, 113, 114, 124, 44, 44, - 44, 44, 47, 45, 45, 45, 45, 40, 126, 126, - 126, 126, 40, 40, 40, 127, 221, 149, 40, 178, - 142, 127, 47, 48, 48, 48, 48, 40, 128, 128, - 128, 128, 40, 40, 128, 128, 40, 128, 128, 128, - 128, 128, 128, 40, 40, 40, 40, 40, 143, 40, - 144, 147, 40, 152, 153, 40, 40, 145, 155, 157, - 40, 159, 40, 148, 161, 156, 40, 158, 40, 40, - 154, 40, 40, 40, 168, 160, 40, 40, 163, 162, - 40, 164, 171, 173, 175, 40, 169, 174, 165, 166, + 43, 43, 43, 206, 110, 152, 111, 112, 40, 113, + 102, 40, 153, 40, 40, 136, 44, 44, 44, 44, + 118, 164, 119, 120, 40, 121, 155, 122, 156, 123, + 40, 124, 40, 161, 40, 125, 126, 47, 45, 45, + 45, 45, 40, 138, 138, 138, 138, 40, 163, 162, + 139, 178, 253, 175, 40, 134, 139, 47, 48, 48, + 48, 48, 40, 140, 140, 140, 140, 40, 40, 140, + 140, 40, 140, 140, 140, 140, 140, 140, 159, 149, + 40, 40, 40, 40, 40, 40, 40, 165, 40, 40, + 160, 150, 40, 40, 172, 174, 188, 167, 41, 169, - 40, 167, 170, 40, 172, 176, 40, 40, 40, 40, - 177, 185, 40, 179, 40, 199, 180, 40, 40, 40, - 195, 186, 40, 182, 187, 40, 40, 181, 197, 237, - 183, 40, 188, 191, 40, 196, 192, 40, 40, 193, - 189, 205, 194, 198, 190, 40, 40, 200, 40, 210, - 201, 203, 40, 40, 206, 40, 217, 216, 202, 207, - 40, 211, 204, 40, 215, 208, 212, 40, 220, 40, - 40, 209, 40, 218, 213, 219, 40, 236, 40, 214, - 123, 123, 123, 123, 226, 226, 226, 226, 222, 231, - 223, 227, 40, 234, 232, 40, 224, 227, 126, 126, + 40, 40, 171, 166, 168, 177, 176, 182, 173, 40, + 183, 40, 187, 40, 179, 180, 184, 181, 185, 189, + 40, 40, 40, 40, 190, 40, 198, 40, 40, 40, + 186, 193, 195, 40, 197, 191, 199, 40, 40, 40, + 200, 40, 201, 40, 40, 194, 196, 40, 208, 40, + 40, 218, 207, 203, 202, 40, 209, 40, 212, 222, + 204, 40, 40, 230, 210, 205, 219, 224, 211, 40, + 214, 220, 213, 215, 40, 223, 216, 40, 40, 217, + 40, 40, 225, 40, 40, 221, 40, 226, 40, 252, + 228, 40, 40, 232, 272, 227, 40, 234, 236, 40, - 126, 126, 40, 40, 233, 127, 40, 40, 40, 279, - 40, 127, 228, 229, 40, 230, 230, 230, 230, 40, - 235, 238, 240, 40, 40, 244, 239, 40, 40, 243, - 241, 40, 242, 40, 40, 40, 40, 246, 40, 248, - 40, 247, 245, 250, 249, 251, 40, 40, 40, 40, - 40, 256, 40, 40, 40, 263, 40, 252, 254, 262, - 253, 260, 265, 266, 40, 255, 258, 40, 261, 259, - 40, 264, 40, 40, 257, 40, 269, 267, 40, 40, - 40, 272, 268, 40, 270, 40, 273, 40, 40, 40, - 40, 40, 40, 40, 275, 271, 40, 285, 277, 274, + 238, 229, 40, 233, 237, 247, 231, 40, 40, 239, + 40, 235, 249, 254, 240, 40, 40, 40, 40, 248, + 255, 263, 312, 241, 242, 40, 256, 265, 243, 250, + 40, 251, 40, 244, 40, 264, 245, 135, 135, 135, + 135, 246, 258, 258, 258, 258, 266, 267, 329, 259, + 40, 40, 40, 271, 40, 259, 138, 138, 138, 138, + 40, 268, 40, 139, 40, 269, 270, 276, 40, 139, + 260, 261, 40, 262, 262, 262, 262, 40, 40, 277, + 40, 274, 40, 275, 273, 40, 40, 40, 280, 278, + 285, 40, 40, 279, 40, 282, 283, 40, 281, 40, - 292, 40, 293, 40, 276, 278, 40, 40, 300, 40, - 280, 281, 281, 281, 281, 282, 283, 281, 281, 284, - 281, 281, 281, 281, 281, 281, 40, 294, 291, 290, - 40, 40, 40, 40, 40, 286, 40, 287, 40, 40, - 40, 288, 40, 289, 40, 299, 295, 303, 298, 301, - 40, 40, 296, 40, 40, 297, 40, 302, 40, 304, - 309, 40, 307, 311, 305, 306, 40, 308, 40, 312, - 310, 315, 40, 40, 313, 40, 316, 317, 40, 314, - 40, 40, 319, 226, 226, 226, 226, 318, 324, 40, - 227, 40, 40, 320, 228, 228, 227, 322, 322, 322, + 40, 40, 289, 40, 40, 40, 40, 40, 284, 40, + 293, 287, 295, 296, 286, 299, 40, 294, 291, 288, + 298, 292, 40, 297, 40, 300, 290, 302, 40, 40, + 40, 303, 40, 40, 40, 40, 40, 306, 304, 301, + 40, 307, 40, 40, 40, 40, 40, 40, 309, 349, + 311, 305, 40, 308, 319, 40, 40, 313, 310, 314, + 315, 315, 315, 315, 328, 316, 315, 315, 317, 315, + 315, 315, 315, 315, 315, 318, 40, 325, 324, 40, + 40, 40, 40, 40, 40, 320, 40, 321, 327, 40, + 40, 322, 40, 323, 333, 337, 40, 332, 335, 40, - 322, 40, 40, 321, 322, 322, 322, 322, 230, 230, - 230, 230, 40, 230, 230, 230, 230, 40, 323, 325, - 40, 40, 40, 40, 40, 40, 327, 40, 40, 328, - 40, 40, 332, 40, 40, 40, 337, 326, 40, 40, - 331, 333, 40, 40, 340, 40, 329, 330, 40, 335, - 336, 341, 342, 338, 40, 40, 40, 334, 40, 339, - 40, 349, 40, 40, 40, 40, 343, 40, 40, 350, - 40, 344, 40, 348, 40, 40, 345, 40, 346, 347, - 355, 354, 353, 351, 352, 357, 356, 40, 40, 359, - 358, 40, 40, 40, 40, 40, 40, 363, 40, 360, + 40, 330, 40, 334, 331, 40, 336, 40, 40, 40, + 40, 343, 40, 338, 40, 40, 342, 339, 341, 340, + 346, 345, 344, 350, 347, 40, 40, 348, 352, 40, + 351, 40, 40, 353, 258, 258, 258, 258, 40, 358, + 40, 259, 40, 361, 354, 260, 260, 259, 356, 356, + 356, 356, 40, 40, 355, 356, 356, 356, 356, 262, + 262, 262, 262, 40, 262, 262, 262, 262, 40, 357, + 359, 40, 40, 40, 40, 40, 40, 40, 40, 362, + 40, 366, 40, 40, 40, 40, 40, 40, 360, 371, + 365, 367, 374, 376, 40, 370, 363, 364, 369, 40, - 361, 365, 367, 40, 364, 362, 40, 369, 40, 40, - 40, 40, 366, 373, 40, 371, 368, 374, 372, 375, - 376, 370, 40, 378, 40, 379, 40, 40, 40, 377, - 40, 380, 40, 40, 40, 381, 40, 382, 386, 383, - 384, 40, 40, 40, 40, 385, 322, 322, 322, 322, - 40, 387, 40, 40, 391, 394, 393, 388, 40, 40, - 395, 40, 389, 398, 40, 390, 392, 40, 397, 40, - 40, 399, 400, 40, 40, 396, 402, 40, 40, 40, - 401, 40, 40, 405, 40, 40, 40, 40, 403, 409, - 414, 410, 404, 40, 406, 40, 408, 40, 411, 412, + 40, 40, 372, 375, 368, 40, 373, 40, 40, 40, + 40, 40, 383, 40, 40, 40, 40, 384, 40, 40, + 40, 40, 377, 378, 382, 381, 40, 379, 388, 380, + 40, 385, 386, 387, 389, 391, 390, 394, 40, 392, + 40, 393, 40, 40, 40, 40, 40, 40, 40, 397, + 399, 40, 40, 395, 401, 398, 396, 403, 40, 40, + 405, 40, 407, 40, 400, 40, 411, 408, 402, 406, + 410, 404, 40, 409, 412, 40, 40, 40, 40, 40, + 40, 40, 414, 40, 40, 415, 40, 413, 416, 420, + 417, 418, 40, 419, 421, 40, 40, 356, 356, 356, - 40, 407, 40, 40, 413, 40, 40, 40, 415, 40, - 40, 416, 420, 40, 423, 422, 40, 418, 424, 425, - 417, 419, 421, 40, 40, 426, 427, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 431, 40, - 40, 428, 430, 433, 435, 439, 438, 429, 432, 40, - 40, 436, 40, 434, 40, 40, 437, 440, 40, 443, - 441, 40, 40, 442, 450, 40, 40, 40, 40, 40, - 40, 446, 445, 449, 451, 444, 40, 40, 40, 448, - 455, 456, 40, 40, 447, 458, 453, 454, 40, 452, - 40, 40, 460, 457, 40, 462, 40, 461, 459, 40, + 356, 40, 40, 40, 422, 425, 428, 423, 40, 427, + 429, 40, 40, 432, 40, 424, 40, 426, 431, 433, + 40, 434, 40, 40, 40, 430, 436, 40, 40, 40, + 40, 40, 40, 439, 40, 435, 40, 443, 444, 40, + 40, 437, 438, 40, 440, 445, 442, 446, 448, 40, + 40, 441, 40, 447, 40, 449, 40, 40, 40, 450, + 40, 40, 40, 454, 40, 457, 456, 452, 40, 458, + 459, 453, 451, 455, 40, 461, 40, 460, 40, 40, + 40, 40, 462, 40, 40, 40, 40, 40, 465, 40, + 40, 464, 467, 469, 472, 40, 40, 463, 466, 40, - 463, 464, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 468, 465, 466, 469, 471, 467, 474, 470, 40, - 40, 472, 40, 475, 40, 476, 40, 40, 40, 473, - 40, 40, 40, 40, 40, 40, 483, 484, 478, 40, - 40, 40, 477, 479, 489, 480, 482, 485, 486, 487, - 40, 40, 481, 488, 40, 40, 494, 40, 40, 493, - 495, 490, 40, 491, 498, 40, 492, 496, 40, 40, - 40, 40, 40, 40, 40, 40, 500, 497, 504, 40, - 40, 40, 40, 40, 508, 499, 513, 505, 510, 40, - 506, 40, 501, 502, 503, 509, 511, 507, 512, 40, + 475, 477, 470, 473, 468, 40, 40, 40, 471, 474, + 40, 40, 476, 478, 40, 40, 40, 40, 483, 480, + 40, 40, 479, 40, 485, 40, 40, 482, 40, 40, + 481, 40, 489, 490, 40, 487, 492, 40, 486, 488, + 494, 493, 484, 491, 40, 40, 495, 499, 40, 496, + 40, 40, 498, 40, 40, 40, 40, 497, 40, 40, + 502, 40, 40, 503, 40, 500, 505, 501, 504, 508, + 40, 506, 509, 40, 40, 40, 40, 40, 40, 510, + 507, 40, 40, 40, 40, 517, 518, 511, 512, 40, + 516, 40, 40, 520, 513, 514, 40, 521, 519, 40, - 40, 40, 40, 40, 516, 515, 514, 518, 40, 40, - 40, 40, 519, 40, 521, 40, 40, 40, 40, 40, - 524, 40, 40, 528, 517, 40, 522, 530, 40, 526, - 40, 520, 527, 40, 529, 531, 40, 40, 525, 40, - 523, 532, 535, 40, 40, 536, 40, 533, 40, 40, - 40, 40, 539, 534, 40, 40, 40, 40, 543, 540, - 537, 541, 40, 542, 545, 40, 548, 40, 538, 550, - 549, 546, 40, 544, 547, 40, 40, 40, 551, 40, - 40, 40, 40, 40, 552, 557, 40, 558, 559, 40, - 40, 40, 40, 553, 554, 40, 563, 40, 555, 564, + 523, 40, 40, 40, 522, 527, 524, 528, 529, 40, + 530, 40, 525, 40, 40, 40, 532, 526, 40, 40, + 40, 40, 531, 40, 534, 40, 40, 40, 40, 538, + 539, 547, 40, 40, 533, 542, 544, 40, 535, 40, + 540, 536, 537, 546, 541, 543, 545, 40, 40, 40, + 550, 40, 40, 549, 548, 40, 551, 552, 553, 40, + 555, 40, 40, 40, 40, 40, 40, 40, 40, 558, + 40, 562, 40, 564, 554, 556, 40, 560, 40, 40, + 561, 40, 563, 40, 565, 40, 559, 40, 566, 40, + 557, 40, 569, 40, 570, 567, 573, 40, 40, 40, + + 40, 568, 571, 40, 574, 40, 575, 577, 576, 40, + 572, 40, 579, 40, 582, 40, 40, 580, 584, 40, + 578, 581, 40, 40, 583, 40, 585, 40, 40, 40, + 40, 40, 586, 591, 592, 593, 40, 587, 40, 40, + 588, 40, 589, 597, 590, 40, 40, 598, 596, 40, + 40, 40, 40, 595, 40, 40, 40, 40, 594, 40, + 599, 37, 37, 37, 37, 39, 39, 50, 40, 50, + 50, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 556, 40, 40, 562, 40, 40, 561, 40, 40, 40, - 40, 560, 565, 37, 37, 37, 37, 39, 39, 50, - 40, 50, 50, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, @@ -720,157 +743,165 @@ static yyconst short int yy_nxt[1267] = 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 225, 40, 40, 40, 40, 121, 40, - 38, 566, 3, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566 + 257, 40, 40, 40, 40, 40, 133, 40, 38, 600, + 3, 600, 600, 600, 600, 600, 600, 600, 600, 600, + + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600 } ; -static yyconst short int yy_chk[1267] = +static yyconst short int yy_chk[1335] = { 0, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, 58, 9, 9, 9, 9, 10, - 10, 10, 10, 11, 11, 11, 11, 11, 12, 26, - 20, 27, 58, 12, 13, 13, 13, 13, 13, 13, - 14, 14, 14, 14, 14, 14, 16, 20, 571, 17, - 27, 29, 27, 26, 16, 35, 35, 20, 17, 23, - 29, 16, 17, 16, 18, 16, 13, 17, 16, 18, + 10, 10, 10, 11, 11, 11, 11, 11, 12, 489, + 20, 63, 58, 12, 13, 13, 13, 13, 13, 13, + 14, 14, 14, 14, 14, 14, 16, 20, 46, 17, + 20, 26, 63, 46, 16, 489, 92, 20, 17, 54, + 26, 16, 17, 16, 18, 16, 13, 17, 16, 18, - 17, 18, 19, 46, 35, 23, 23, 19, 46, 24, - 22, 19, 18, 21, 24, 19, 18, 19, 21, 22, - 19, 21, 24, 28, 25, 22, 569, 24, 21, 25, - 68, 24, 21, 33, 21, 28, 34, 54, 33, 31, - 64, 28, 25, 36, 31, 34, 28, 51, 25, 30, - 53, 33, 36, 30, 68, 51, 54, 31, 53, 30, - 31, 30, 30, 64, 56, 30, 30, 31, 42, 42, - 42, 42, 57, 94, 30, 56, 30, 30, 52, 30, - 32, 60, 55, 57, 32, 43, 43, 43, 43, 67, - 32, 52, 32, 52, 55, 57, 60, 32, 55, 32, + 17, 18, 19, 61, 22, 26, 92, 19, 54, 24, + 61, 19, 18, 22, 24, 19, 18, 19, 23, 22, + 19, 21, 24, 64, 29, 23, 21, 24, 21, 21, + 34, 24, 25, 29, 23, 23, 21, 25, 36, 34, + 21, 28, 21, 33, 35, 35, 64, 36, 33, 31, + 25, 56, 51, 28, 31, 217, 25, 27, 52, 28, + 51, 33, 56, 35, 28, 217, 27, 31, 27, 74, + 31, 52, 27, 52, 27, 103, 27, 31, 27, 30, + 53, 55, 74, 30, 42, 42, 42, 42, 53, 30, + 60, 30, 30, 55, 30, 30, 30, 55, 30, 43, - 94, 32, 66, 60, 67, 32, 32, 44, 44, 44, - 44, 44, 45, 45, 45, 45, 45, 45, 47, 47, - 47, 47, 47, 61, 88, 47, 118, 66, 118, 88, - 61, 47, 48, 48, 48, 48, 48, 48, 49, 49, - 49, 49, 49, 62, 49, 49, 63, 49, 49, 49, - 49, 49, 49, 71, 65, 69, 72, 70, 62, 73, - 62, 65, 74, 69, 70, 75, 76, 63, 71, 72, - 77, 74, 78, 65, 75, 71, 79, 73, 80, 81, - 70, 83, 84, 95, 80, 74, 85, 82, 77, 76, - 86, 78, 82, 83, 85, 87, 81, 84, 79, 79, + 43, 43, 43, 103, 30, 60, 30, 30, 66, 30, + 32, 62, 60, 69, 32, 44, 44, 44, 44, 44, + 32, 69, 32, 32, 68, 32, 62, 32, 62, 32, + 78, 32, 81, 66, 67, 32, 32, 45, 45, 45, + 45, 45, 45, 47, 47, 47, 47, 47, 68, 67, + 47, 81, 130, 78, 130, 605, 47, 48, 48, 48, + 48, 48, 48, 49, 49, 49, 49, 49, 57, 49, + 49, 65, 49, 49, 49, 49, 49, 49, 65, 57, + 71, 87, 72, 73, 75, 76, 77, 71, 79, 80, + 65, 57, 82, 84, 76, 77, 87, 72, 603, 73, - 90, 79, 81, 91, 82, 86, 92, 93, 96, 102, - 87, 95, 99, 90, 139, 102, 91, 97, 98, 100, - 99, 96, 107, 93, 97, 101, 108, 92, 100, 139, - 93, 111, 97, 98, 103, 99, 98, 104, 106, 98, - 97, 107, 98, 101, 97, 114, 109, 103, 110, 111, - 104, 106, 115, 112, 108, 113, 115, 114, 104, 109, - 116, 112, 106, 117, 113, 110, 112, 119, 117, 120, - 138, 110, 134, 116, 112, 116, 131, 138, 130, 112, - 123, 123, 123, 123, 124, 124, 124, 124, 119, 130, - 120, 124, 180, 134, 131, 133, 120, 124, 126, 126, + 86, 83, 75, 71, 72, 80, 79, 83, 76, 89, + 84, 88, 86, 85, 82, 82, 84, 82, 85, 88, + 91, 96, 93, 94, 89, 95, 96, 98, 97, 99, + 85, 93, 94, 100, 95, 91, 97, 101, 102, 104, + 98, 105, 99, 108, 117, 93, 94, 599, 105, 106, + 110, 108, 104, 101, 100, 107, 105, 111, 106, 110, + 101, 112, 109, 117, 105, 102, 108, 112, 105, 113, + 107, 109, 106, 107, 114, 111, 107, 116, 118, 107, + 119, 122, 113, 120, 129, 109, 155, 114, 121, 129, + 116, 123, 131, 119, 155, 114, 125, 121, 122, 132, - 126, 126, 126, 141, 133, 126, 140, 136, 144, 180, - 147, 126, 127, 127, 143, 127, 127, 127, 127, 127, - 136, 140, 143, 145, 146, 147, 141, 148, 150, 146, - 144, 152, 145, 151, 153, 156, 154, 150, 155, 151, - 157, 150, 148, 153, 152, 154, 158, 159, 160, 163, - 162, 158, 161, 165, 166, 163, 164, 154, 156, 162, - 155, 161, 165, 166, 167, 157, 160, 168, 161, 160, - 169, 164, 170, 171, 159, 172, 168, 166, 173, 174, - 175, 171, 167, 177, 169, 178, 172, 181, 188, 203, - 194, 186, 185, 195, 174, 170, 187, 188, 177, 173, + 123, 116, 198, 120, 122, 125, 118, 126, 127, 123, + 142, 121, 127, 131, 123, 124, 128, 143, 145, 126, + 132, 142, 198, 124, 124, 146, 132, 145, 124, 128, + 153, 128, 222, 124, 148, 143, 124, 135, 135, 135, + 135, 124, 136, 136, 136, 136, 146, 148, 222, 136, + 151, 152, 159, 153, 150, 136, 138, 138, 138, 138, + 138, 150, 156, 138, 160, 151, 152, 159, 167, 138, + 139, 139, 157, 139, 139, 139, 139, 139, 158, 160, + 162, 157, 163, 158, 156, 164, 165, 166, 163, 162, + 167, 168, 169, 162, 170, 165, 166, 171, 164, 172, - 194, 565, 195, 563, 175, 178, 190, 192, 203, 196, - 181, 184, 184, 184, 184, 185, 186, 184, 184, 187, - 184, 184, 184, 184, 184, 184, 189, 196, 192, 190, - 197, 198, 200, 201, 202, 189, 206, 189, 205, 207, - 204, 189, 208, 189, 209, 202, 197, 205, 201, 204, - 210, 211, 198, 212, 213, 200, 214, 204, 215, 206, - 211, 216, 209, 213, 207, 208, 217, 210, 218, 214, - 212, 217, 219, 220, 215, 223, 218, 219, 221, 216, - 224, 232, 221, 226, 226, 226, 226, 220, 232, 562, - 226, 561, 559, 223, 227, 227, 226, 227, 227, 227, + 173, 174, 171, 175, 177, 178, 179, 176, 166, 181, + 174, 169, 175, 176, 168, 179, 180, 174, 173, 170, + 178, 173, 182, 177, 183, 180, 172, 181, 184, 185, + 186, 182, 187, 188, 189, 191, 202, 185, 183, 180, + 201, 186, 206, 207, 249, 209, 219, 597, 188, 249, + 191, 184, 208, 187, 209, 211, 215, 201, 189, 202, + 205, 205, 205, 205, 219, 206, 205, 205, 207, 205, + 205, 205, 205, 205, 205, 208, 210, 215, 211, 218, + 223, 225, 226, 227, 228, 210, 230, 210, 218, 229, + 231, 210, 232, 210, 227, 230, 236, 226, 229, 239, - 227, 231, 233, 224, 228, 228, 228, 228, 229, 229, - 229, 229, 229, 230, 230, 230, 230, 230, 231, 233, - 235, 236, 240, 241, 242, 243, 236, 244, 245, 240, - 246, 249, 244, 247, 250, 248, 249, 235, 251, 252, - 243, 245, 253, 256, 252, 254, 241, 242, 257, 247, - 248, 253, 254, 250, 258, 259, 263, 246, 262, 251, - 264, 263, 265, 266, 267, 269, 256, 268, 270, 264, - 271, 257, 275, 262, 276, 278, 258, 279, 258, 259, - 269, 268, 267, 265, 266, 271, 270, 280, 282, 276, - 275, 284, 286, 287, 285, 291, 557, 282, 288, 278, + 237, 223, 241, 228, 225, 243, 229, 246, 247, 248, + 596, 241, 245, 231, 252, 250, 239, 232, 237, 236, + 246, 245, 243, 250, 247, 251, 255, 248, 252, 253, + 251, 256, 264, 253, 258, 258, 258, 258, 268, 264, + 595, 258, 593, 268, 255, 259, 259, 258, 259, 259, + 259, 259, 263, 265, 256, 260, 260, 260, 260, 261, + 261, 261, 261, 261, 262, 262, 262, 262, 262, 263, + 265, 267, 272, 273, 274, 275, 276, 278, 277, 272, + 280, 276, 279, 282, 281, 283, 286, 284, 267, 281, + 275, 277, 284, 286, 285, 280, 273, 274, 279, 289, - 279, 285, 287, 292, 284, 280, 289, 288, 293, 294, - 300, 296, 286, 292, 299, 289, 287, 293, 291, 294, - 296, 288, 297, 299, 302, 300, 304, 307, 308, 297, - 309, 302, 310, 311, 312, 304, 314, 307, 311, 308, - 309, 315, 317, 320, 319, 310, 322, 322, 322, 322, - 324, 312, 325, 327, 319, 324, 320, 314, 329, 332, - 325, 328, 315, 329, 330, 317, 319, 331, 328, 334, - 333, 330, 331, 335, 336, 327, 333, 337, 338, 339, - 332, 348, 340, 336, 342, 345, 346, 347, 334, 340, - 348, 342, 335, 349, 337, 350, 339, 351, 345, 346, + 290, 292, 282, 285, 278, 291, 283, 296, 298, 295, + 299, 300, 296, 312, 302, 301, 591, 298, 304, 303, + 305, 309, 289, 290, 295, 292, 310, 291, 302, 291, + 313, 299, 300, 301, 303, 305, 304, 312, 314, 309, + 316, 310, 318, 319, 320, 321, 325, 590, 322, 316, + 319, 323, 326, 313, 321, 318, 314, 322, 327, 331, + 323, 330, 326, 328, 320, 333, 331, 327, 321, 325, + 330, 322, 334, 328, 333, 336, 338, 346, 341, 342, + 344, 343, 336, 348, 345, 338, 349, 334, 341, 345, + 342, 343, 351, 344, 346, 353, 354, 356, 356, 356, - 352, 338, 353, 354, 347, 356, 357, 358, 349, 359, - 360, 350, 354, 362, 358, 357, 361, 352, 359, 360, - 351, 353, 356, 364, 365, 361, 362, 373, 374, 375, - 378, 377, 382, 385, 388, 379, 400, 387, 374, 386, - 556, 364, 373, 377, 379, 387, 386, 365, 375, 389, - 390, 382, 392, 378, 391, 393, 385, 388, 395, 391, - 389, 396, 398, 390, 400, 401, 399, 402, 403, 404, - 409, 395, 393, 399, 401, 392, 408, 419, 413, 398, - 408, 408, 414, 416, 396, 413, 403, 404, 417, 402, - 418, 426, 416, 409, 421, 418, 427, 417, 414, 428, + 356, 358, 359, 361, 348, 353, 358, 349, 363, 354, + 359, 362, 364, 363, 366, 351, 365, 353, 362, 364, + 367, 365, 368, 369, 370, 361, 367, 371, 372, 373, + 374, 376, 379, 370, 380, 366, 381, 374, 376, 382, + 383, 368, 369, 384, 371, 379, 373, 380, 382, 385, + 386, 372, 387, 381, 388, 383, 390, 391, 392, 384, + 393, 394, 396, 388, 398, 392, 391, 386, 395, 393, + 394, 387, 385, 390, 399, 396, 407, 395, 408, 409, + 411, 412, 398, 416, 413, 419, 422, 420, 408, 423, + 426, 407, 411, 413, 420, 421, 425, 399, 409, 424, - 419, 421, 430, 438, 431, 437, 442, 443, 446, 444, - 445, 430, 426, 427, 431, 438, 428, 444, 437, 448, - 450, 442, 453, 445, 454, 446, 455, 457, 459, 443, - 460, 456, 463, 461, 462, 464, 457, 459, 450, 465, - 466, 468, 448, 453, 464, 454, 456, 460, 461, 462, - 469, 470, 455, 463, 473, 471, 470, 474, 472, 469, - 471, 465, 475, 466, 474, 476, 468, 472, 478, 481, - 479, 480, 483, 484, 485, 486, 476, 473, 481, 492, - 495, 555, 490, 494, 486, 475, 495, 483, 492, 493, - 484, 499, 478, 479, 480, 490, 493, 485, 494, 497, + 423, 425, 416, 421, 412, 427, 429, 430, 419, 422, + 432, 433, 424, 426, 434, 435, 436, 437, 433, 429, + 443, 438, 427, 589, 435, 448, 460, 432, 442, 447, + 430, 450, 442, 442, 453, 437, 447, 451, 436, 438, + 450, 448, 434, 443, 452, 455, 451, 460, 461, 452, + 462, 464, 455, 465, 472, 471, 476, 453, 477, 479, + 464, 478, 480, 465, 482, 461, 472, 462, 471, 478, + 484, 476, 479, 487, 488, 490, 491, 493, 495, 480, + 477, 494, 496, 497, 499, 491, 493, 482, 484, 500, + 490, 498, 502, 495, 487, 488, 503, 496, 494, 507, - 498, 501, 504, 505, 499, 498, 497, 504, 506, 507, - 508, 509, 505, 510, 507, 511, 512, 513, 514, 515, - 510, 518, 516, 514, 501, 519, 508, 516, 520, 512, - 521, 506, 513, 522, 515, 518, 523, 524, 511, 526, - 509, 519, 522, 527, 528, 523, 529, 520, 530, 532, - 533, 534, 527, 521, 535, 540, 537, 538, 532, 528, - 524, 529, 541, 530, 534, 542, 538, 543, 526, 541, - 540, 535, 544, 533, 537, 546, 545, 548, 542, 547, - 549, 550, 551, 552, 543, 548, 554, 549, 550, 558, - 560, 564, 553, 544, 545, 539, 558, 536, 546, 560, + 498, 506, 504, 505, 497, 503, 499, 504, 505, 508, + 506, 509, 500, 510, 512, 517, 508, 502, 513, 514, + 515, 519, 507, 518, 510, 529, 520, 526, 528, 515, + 517, 529, 524, 535, 509, 520, 526, 533, 512, 527, + 518, 513, 514, 528, 519, 524, 527, 531, 532, 539, + 533, 540, 538, 532, 531, 541, 535, 538, 539, 542, + 541, 543, 544, 545, 546, 547, 548, 549, 550, 544, + 552, 548, 553, 550, 540, 542, 554, 546, 555, 558, + 547, 560, 549, 556, 552, 557, 545, 561, 553, 562, + 543, 563, 556, 564, 557, 554, 561, 567, 566, 568, - 547, 531, 525, 554, 517, 503, 552, 502, 500, 496, - 491, 551, 564, 567, 567, 567, 567, 568, 568, 570, - 489, 570, 570, 488, 487, 482, 477, 467, 458, 452, - 451, 449, 447, 441, 440, 439, 436, 435, 434, 433, - 432, 429, 425, 424, 423, 422, 420, 415, 412, 411, - 410, 407, 406, 405, 397, 394, 384, 383, 381, 380, - 376, 372, 371, 370, 369, 368, 367, 366, 363, 355, - 344, 343, 341, 326, 323, 321, 318, 316, 313, 306, - 305, 303, 301, 298, 295, 290, 283, 277, 274, 273, - 272, 261, 260, 255, 239, 238, 237, 234, 222, 199, + 569, 555, 558, 571, 562, 572, 563, 566, 564, 574, + 560, 575, 568, 576, 572, 577, 578, 569, 575, 580, + 567, 571, 579, 581, 574, 582, 576, 583, 584, 585, + 586, 588, 577, 582, 583, 584, 592, 578, 594, 598, + 579, 587, 580, 592, 581, 573, 570, 594, 588, 565, + 559, 551, 537, 586, 536, 534, 530, 525, 585, 523, + 598, 601, 601, 601, 601, 602, 602, 604, 522, 604, + 604, 521, 516, 511, 501, 492, 486, 485, 483, 481, + 475, 474, 473, 470, 469, 468, 467, 466, 463, 459, + 458, 457, 456, 454, 449, 446, 445, 444, 441, 440, - 193, 191, 183, 182, 179, 176, 149, 142, 137, 135, - 132, 129, 125, 121, 105, 89, 59, 39, 37, 8, - 7, 3, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, - 566, 566, 566, 566, 566, 566 + 439, 431, 428, 418, 417, 415, 414, 410, 406, 405, + 404, 403, 402, 401, 400, 397, 389, 378, 377, 375, + 360, 357, 355, 352, 350, 347, 340, 339, 337, 335, + 332, 329, 324, 317, 311, 308, 307, 306, 297, 294, + 293, 288, 287, 271, 270, 269, 266, 254, 244, 242, + 240, 238, 235, 234, 233, 224, 221, 220, 216, 214, + 213, 212, 204, 203, 200, 199, 197, 196, 195, 194, + 193, 192, 190, 161, 154, 149, 147, 144, 141, 137, + 133, 115, 90, 70, 59, 39, 37, 8, 7, 3, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600, 600, 600, 600, 600, 600, 600, + 600, 600, 600, 600 } ; static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr; @@ -948,7 +979,7 @@ char *yytext; /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing * it to deal with 64 bit numbers. */ -#line 952 "UpgradeLexer.cpp" +#line 983 "UpgradeLexer.cpp" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1102,7 +1133,7 @@ YY_DECL #line 99 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -#line 1106 "UpgradeLexer.cpp" +#line 1137 "UpgradeLexer.cpp" if ( yy_init ) { @@ -1150,14 +1181,14 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 567 ) + if ( yy_current_state >= 601 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; *yy_state_ptr++ = yy_current_state; ++yy_cp; } - while ( yy_current_state != 566 ); + while ( yy_current_state != 600 ); yy_find_action: yy_current_state = *--yy_state_ptr; @@ -1595,246 +1626,356 @@ YY_RULE_SETUP YY_BREAK case 81: YY_RULE_SETUP -#line 186 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( PHI_TOK); } +#line 185 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ICMP); } YY_BREAK case 82: YY_RULE_SETUP -#line 187 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( CALL); } +#line 186 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(FCMP); } YY_BREAK case 83: YY_RULE_SETUP -#line 188 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( CAST); } +#line 187 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(EQ); } YY_BREAK case 84: YY_RULE_SETUP -#line 189 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( TRUNC); } +#line 188 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(NE); } YY_BREAK case 85: YY_RULE_SETUP -#line 190 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( ZEXT); } +#line 189 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(SLT); } YY_BREAK case 86: YY_RULE_SETUP -#line 191 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SEXT); } +#line 190 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(SGT); } YY_BREAK case 87: YY_RULE_SETUP -#line 192 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPTRUNC); } +#line 191 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(SLE); } YY_BREAK case 88: YY_RULE_SETUP -#line 193 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPEXT); } +#line 192 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(SGE); } YY_BREAK case 89: YY_RULE_SETUP -#line 194 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPTOUI); } +#line 193 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OEQ); } YY_BREAK case 90: YY_RULE_SETUP -#line 195 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPTOSI); } +#line 194 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ONE); } YY_BREAK case 91: YY_RULE_SETUP -#line 196 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( UITOFP); } +#line 195 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OLT); } YY_BREAK case 92: YY_RULE_SETUP -#line 197 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SITOFP); } +#line 196 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OGT); } YY_BREAK case 93: YY_RULE_SETUP -#line 198 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( PTRTOINT); } +#line 197 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OLE); } YY_BREAK case 94: YY_RULE_SETUP -#line 199 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( INTTOPTR); } +#line 198 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(OGE); } YY_BREAK case 95: YY_RULE_SETUP -#line 200 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( BITCAST); } +#line 199 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ORD); } YY_BREAK case 96: YY_RULE_SETUP -#line 201 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SELECT); } +#line 200 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UNO); } YY_BREAK case 97: YY_RULE_SETUP -#line 202 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SHL); } +#line 201 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UEQ); } YY_BREAK case 98: YY_RULE_SETUP -#line 203 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SHR); } +#line 202 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UNE); } YY_BREAK case 99: YY_RULE_SETUP -#line 204 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( ASHR); } +#line 203 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ULT); } YY_BREAK case 100: YY_RULE_SETUP -#line 205 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( LSHR); } +#line 204 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UGT); } YY_BREAK case 101: YY_RULE_SETUP -#line 206 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( VAARG); } +#line 205 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(ULE); } YY_BREAK case 102: YY_RULE_SETUP -#line 207 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( RET); } +#line 206 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK(UGE); } YY_BREAK case 103: YY_RULE_SETUP #line 208 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( BR); } +{ RET_TOK( PHI_TOK); } YY_BREAK case 104: YY_RULE_SETUP #line 209 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SWITCH); } +{ RET_TOK( CALL); } YY_BREAK case 105: YY_RULE_SETUP #line 210 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( INVOKE); } +{ RET_TOK( CAST); } YY_BREAK case 106: YY_RULE_SETUP #line 211 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( UNWIND); } +{ RET_TOK( TRUNC); } YY_BREAK case 107: YY_RULE_SETUP #line 212 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( EXCEPT); } // alias for unwind +{ RET_TOK( ZEXT); } YY_BREAK case 108: YY_RULE_SETUP #line 213 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( UNREACHABLE); } +{ RET_TOK( SEXT); } YY_BREAK case 109: YY_RULE_SETUP -#line 215 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( MALLOC); } +#line 214 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPTRUNC); } YY_BREAK case 110: YY_RULE_SETUP -#line 216 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( ALLOCA); } +#line 215 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPEXT); } YY_BREAK case 111: YY_RULE_SETUP -#line 217 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FREE); } +#line 216 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPTOUI); } YY_BREAK case 112: YY_RULE_SETUP -#line 218 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( LOAD); } +#line 217 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPTOSI); } YY_BREAK case 113: YY_RULE_SETUP -#line 219 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( STORE); } +#line 218 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( UITOFP); } YY_BREAK case 114: YY_RULE_SETUP -#line 220 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( GETELEMENTPTR); } +#line 219 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SITOFP); } YY_BREAK case 115: YY_RULE_SETUP -#line 222 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( EXTRACTELEMENT); } +#line 220 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( PTRTOINT); } YY_BREAK case 116: YY_RULE_SETUP -#line 223 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( INSERTELEMENT); } +#line 221 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( INTTOPTR); } YY_BREAK case 117: YY_RULE_SETUP -#line 224 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SHUFFLEVECTOR); } +#line 222 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( BITCAST); } YY_BREAK case 118: YY_RULE_SETUP -#line 227 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( VAR_ID); } +#line 223 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SELECT); } YY_BREAK case 119: YY_RULE_SETUP -#line 228 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( LABELSTR); } +#line 224 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SHL); } YY_BREAK case 120: YY_RULE_SETUP -#line 229 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( LABELSTR); } +#line 225 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SHR); } YY_BREAK case 121: YY_RULE_SETUP -#line 230 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( STRINGCONSTANT ); } +#line 226 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( ASHR); } YY_BREAK case 122: YY_RULE_SETUP -#line 231 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( EUINT64VAL ); } +#line 227 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( LSHR); } YY_BREAK case 123: YY_RULE_SETUP -#line 232 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( ESINT64VAL ); } +#line 228 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( VAARG); } YY_BREAK case 124: YY_RULE_SETUP -#line 233 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( yytext[0] == 's' ? ESINT64VAL : EUINT64VAL ); } +#line 229 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( RET); } YY_BREAK case 125: YY_RULE_SETUP -#line 234 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( UINTVAL); } +#line 230 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( BR); } YY_BREAK case 126: YY_RULE_SETUP -#line 235 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( SINTVAL); } +#line 231 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SWITCH); } YY_BREAK case 127: YY_RULE_SETUP -#line 236 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" -{ RET_TOK( FPVAL); } +#line 232 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( INVOKE); } YY_BREAK case 128: YY_RULE_SETUP +#line 233 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( UNWIND); } + YY_BREAK +case 129: +YY_RULE_SETUP +#line 234 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( EXCEPT); } // alias for unwind + YY_BREAK +case 130: +YY_RULE_SETUP +#line 235 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( UNREACHABLE); } + YY_BREAK +case 131: +YY_RULE_SETUP #line 237 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( MALLOC); } + YY_BREAK +case 132: +YY_RULE_SETUP +#line 238 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( ALLOCA); } + YY_BREAK +case 133: +YY_RULE_SETUP +#line 239 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FREE); } + YY_BREAK +case 134: +YY_RULE_SETUP +#line 240 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( LOAD); } + YY_BREAK +case 135: +YY_RULE_SETUP +#line 241 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( STORE); } + YY_BREAK +case 136: +YY_RULE_SETUP +#line 242 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( GETELEMENTPTR); } + YY_BREAK +case 137: +YY_RULE_SETUP +#line 244 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( EXTRACTELEMENT); } + YY_BREAK +case 138: +YY_RULE_SETUP +#line 245 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( INSERTELEMENT); } + YY_BREAK +case 139: +YY_RULE_SETUP +#line 246 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SHUFFLEVECTOR); } + YY_BREAK +case 140: +YY_RULE_SETUP +#line 249 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( VAR_ID); } + YY_BREAK +case 141: +YY_RULE_SETUP +#line 250 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( LABELSTR); } + YY_BREAK +case 142: +YY_RULE_SETUP +#line 251 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( LABELSTR); } + YY_BREAK +case 143: +YY_RULE_SETUP +#line 252 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( STRINGCONSTANT ); } + YY_BREAK +case 144: +YY_RULE_SETUP +#line 253 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( EUINT64VAL ); } + YY_BREAK +case 145: +YY_RULE_SETUP +#line 254 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( ESINT64VAL ); } + YY_BREAK +case 146: +YY_RULE_SETUP +#line 255 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( yytext[0] == 's' ? ESINT64VAL : EUINT64VAL ); } + YY_BREAK +case 147: +YY_RULE_SETUP +#line 256 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( UINTVAL); } + YY_BREAK +case 148: +YY_RULE_SETUP +#line 257 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( SINTVAL); } + YY_BREAK +case 149: +YY_RULE_SETUP +#line 258 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +{ RET_TOK( FPVAL); } + YY_BREAK +case 150: +YY_RULE_SETUP +#line 259 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" { RET_TOK( FPVAL); } YY_BREAK case YY_STATE_EOF(INITIAL): -#line 238 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 260 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" { /* Make sure to free the internal buffers for flex when we are * done reading our input! @@ -1843,22 +1984,22 @@ case YY_STATE_EOF(INITIAL): return EOF; } YY_BREAK -case 129: +case 151: YY_RULE_SETUP -#line 246 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 268 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" { /* Ignore whitespace */ } YY_BREAK -case 130: +case 152: YY_RULE_SETUP -#line 247 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 269 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" { return yytext[0]; } YY_BREAK -case 131: +case 153: YY_RULE_SETUP -#line 249 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 271 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 1862 "UpgradeLexer.cpp" +#line 2003 "UpgradeLexer.cpp" case YY_END_OF_BUFFER: { @@ -2145,7 +2286,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 567 ) + if ( yy_current_state >= 601 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2175,11 +2316,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 567 ) + if ( yy_current_state >= 601 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 566); + yy_is_jam = (yy_current_state == 600); if ( ! yy_is_jam ) *yy_state_ptr++ = yy_current_state; @@ -2736,5 +2877,5 @@ int main() return 0; } #endif -#line 249 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" +#line 271 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l" diff --git a/tools/llvm-upgrade/UpgradeLexer.l.cvs b/tools/llvm-upgrade/UpgradeLexer.l.cvs index 4b5fde7d09f..2cf7c51dac6 100644 --- a/tools/llvm-upgrade/UpgradeLexer.l.cvs +++ b/tools/llvm-upgrade/UpgradeLexer.l.cvs @@ -182,6 +182,28 @@ setlt { RET_TOK( SETLT); } setgt { RET_TOK( SETGT); } setle { RET_TOK( SETLE); } setge { RET_TOK( SETGE); } +icmp { RET_TOK(ICMP); } +fcmp { RET_TOK(FCMP); } +eq { RET_TOK(EQ); } +ne { RET_TOK(NE); } +slt { RET_TOK(SLT); } +sgt { RET_TOK(SGT); } +sle { RET_TOK(SLE); } +sge { RET_TOK(SGE); } +oeq { RET_TOK(OEQ); } +one { RET_TOK(ONE); } +olt { RET_TOK(OLT); } +ogt { RET_TOK(OGT); } +ole { RET_TOK(OLE); } +oge { RET_TOK(OGE); } +ord { RET_TOK(ORD); } +uno { RET_TOK(UNO); } +ueq { RET_TOK(UEQ); } +une { RET_TOK(UNE); } +ult { RET_TOK(ULT); } +ugt { RET_TOK(UGT); } +ule { RET_TOK(ULE); } +uge { RET_TOK(UGE); } phi { RET_TOK( PHI_TOK); } call { RET_TOK( CALL); } diff --git a/tools/llvm-upgrade/UpgradeParser.cpp b/tools/llvm-upgrade/UpgradeParser.cpp index 843dd33c4ef..addd743b667 100644 --- a/tools/llvm-upgrade/UpgradeParser.cpp +++ b/tools/llvm-upgrade/UpgradeParser.cpp @@ -161,35 +161,57 @@ SETGT = 352, SETEQ = 353, SETNE = 354, - MALLOC = 355, - ALLOCA = 356, - FREE = 357, - LOAD = 358, - STORE = 359, - GETELEMENTPTR = 360, - PHI_TOK = 361, - SELECT = 362, - SHL = 363, - SHR = 364, - ASHR = 365, - LSHR = 366, - VAARG = 367, - EXTRACTELEMENT = 368, - INSERTELEMENT = 369, - SHUFFLEVECTOR = 370, - CAST = 371, - TRUNC = 372, - ZEXT = 373, - SEXT = 374, - FPTRUNC = 375, - FPEXT = 376, - FPTOUI = 377, - FPTOSI = 378, - UITOFP = 379, - SITOFP = 380, - PTRTOINT = 381, - INTTOPTR = 382, - BITCAST = 383 + ICMP = 355, + FCMP = 356, + EQ = 357, + NE = 358, + SLT = 359, + SGT = 360, + SLE = 361, + SGE = 362, + OEQ = 363, + ONE = 364, + OLT = 365, + OGT = 366, + OLE = 367, + OGE = 368, + ORD = 369, + UNO = 370, + UEQ = 371, + UNE = 372, + ULT = 373, + UGT = 374, + ULE = 375, + UGE = 376, + MALLOC = 377, + ALLOCA = 378, + FREE = 379, + LOAD = 380, + STORE = 381, + GETELEMENTPTR = 382, + PHI_TOK = 383, + SELECT = 384, + SHL = 385, + SHR = 386, + ASHR = 387, + LSHR = 388, + VAARG = 389, + EXTRACTELEMENT = 390, + INSERTELEMENT = 391, + SHUFFLEVECTOR = 392, + CAST = 393, + TRUNC = 394, + ZEXT = 395, + SEXT = 396, + FPTRUNC = 397, + FPEXT = 398, + FPTOUI = 399, + FPTOSI = 400, + UITOFP = 401, + SITOFP = 402, + PTRTOINT = 403, + INTTOPTR = 404, + BITCAST = 405 }; #endif /* Tokens. */ @@ -290,35 +312,57 @@ #define SETGT 352 #define SETEQ 353 #define SETNE 354 -#define MALLOC 355 -#define ALLOCA 356 -#define FREE 357 -#define LOAD 358 -#define STORE 359 -#define GETELEMENTPTR 360 -#define PHI_TOK 361 -#define SELECT 362 -#define SHL 363 -#define SHR 364 -#define ASHR 365 -#define LSHR 366 -#define VAARG 367 -#define EXTRACTELEMENT 368 -#define INSERTELEMENT 369 -#define SHUFFLEVECTOR 370 -#define CAST 371 -#define TRUNC 372 -#define ZEXT 373 -#define SEXT 374 -#define FPTRUNC 375 -#define FPEXT 376 -#define FPTOUI 377 -#define FPTOSI 378 -#define UITOFP 379 -#define SITOFP 380 -#define PTRTOINT 381 -#define INTTOPTR 382 -#define BITCAST 383 +#define ICMP 355 +#define FCMP 356 +#define EQ 357 +#define NE 358 +#define SLT 359 +#define SGT 360 +#define SLE 361 +#define SGE 362 +#define OEQ 363 +#define ONE 364 +#define OLT 365 +#define OGT 366 +#define OLE 367 +#define OGE 368 +#define ORD 369 +#define UNO 370 +#define UEQ 371 +#define UNE 372 +#define ULT 373 +#define UGT 374 +#define ULE 375 +#define UGE 376 +#define MALLOC 377 +#define ALLOCA 378 +#define FREE 379 +#define LOAD 380 +#define STORE 381 +#define GETELEMENTPTR 382 +#define PHI_TOK 383 +#define SELECT 384 +#define SHL 385 +#define SHR 386 +#define ASHR 387 +#define LSHR 388 +#define VAARG 389 +#define EXTRACTELEMENT 390 +#define INSERTELEMENT 391 +#define SHUFFLEVECTOR 392 +#define CAST 393 +#define TRUNC 394 +#define ZEXT 395 +#define SEXT 396 +#define FPTRUNC 397 +#define FPEXT 398 +#define FPTOUI 399 +#define FPTOSI 400 +#define UITOFP 401 +#define SITOFP 402 +#define PTRTOINT 403 +#define INTTOPTR 404 +#define BITCAST 405 @@ -336,6 +380,7 @@ #define YYERROR_VERBOSE 1 #define YYINCLUDED_STDLIB_H #define YYDEBUG 1 +#define UPGRADE_SETCOND_OPS 1 int yylex(); // declaration" of xxx warnings. int yyparse(); @@ -547,6 +592,34 @@ const char* getDivRemOpcode(const std::string& opcode, const TypeInfo& TI) { return op; } +std::string +getCompareOp(const std::string& setcc, const TypeInfo& TI) { + assert(setcc.length() == 5); + char cc1 = setcc[3]; + char cc2 = setcc[4]; + assert(cc1 == 'e' || cc1 == 'n' || cc1 == 'l' || cc1 == 'g'); + assert(cc2 == 'q' || cc2 == 'e' || cc2 == 'e' || cc2 == 't'); + std::string result("xcmp xxx"); + result[6] = cc1; + result[7] = cc2; + if (TI.isFloatingPoint()) { + result[0] = 'f'; + result[5] = 'o'; // FIXME: Always map to ordered comparison ? + } else if (TI.isIntegral() || TI.isPointer()) { + result[0] = 'i'; + if ((cc1 == 'e' && cc2 == 'q') || (cc1 == 'n' && cc2 == 'e')) + result.erase(5,1); + else if (TI.isSigned()) + result[5] = 's'; + else if (TI.isUnsigned() || TI.isPointer()) + result[5] = 'u'; + else + yyerror("Invalid integral type for setcc"); + } + return result; +} + + /* Enabling traces. */ #ifndef YYDEBUG @@ -567,7 +640,7 @@ const char* getDivRemOpcode(const std::string& opcode, const TypeInfo& TI) { #endif #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) -#line 239 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" +#line 268 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" typedef union YYSTYPE { std::string* String; TypeInfo Type; @@ -576,7 +649,7 @@ typedef union YYSTYPE { ValueList* ValList; } YYSTYPE; /* Line 196 of yacc.c. */ -#line 580 "UpgradeParser.tab.c" +#line 653 "UpgradeParser.tab.c" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 @@ -588,7 +661,7 @@ typedef union YYSTYPE { /* Line 219 of yacc.c. */ -#line 592 "UpgradeParser.tab.c" +#line 665 "UpgradeParser.tab.c" #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) # define YYSIZE_T __SIZE_TYPE__ @@ -739,20 +812,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 4 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1324 +#define YYLAST 1464 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 143 +#define YYNTOKENS 165 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 73 +#define YYNNTS 75 /* YYNRULES -- Number of rules. */ -#define YYNRULES 269 +#define YYNRULES 293 /* YYNRULES -- Number of states. */ -#define YYNSTATES 528 +#define YYNSTATES 564 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 383 +#define YYMAXUTOK 405 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -764,15 +837,15 @@ static const unsigned char yytranslate[] = 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, - 132, 133, 141, 2, 130, 2, 2, 2, 2, 2, + 154, 155, 163, 2, 152, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 137, 129, 138, 2, 2, 2, 2, 2, 2, 2, + 159, 151, 160, 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, 134, 131, 136, 2, 2, 2, 2, 2, 142, + 2, 156, 153, 158, 2, 2, 2, 2, 2, 164, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 135, 2, 2, 139, 2, 140, 2, 2, 2, 2, + 157, 2, 2, 161, 2, 162, 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, @@ -798,7 +871,9 @@ static const unsigned char yytranslate[] = 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128 + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150 }; #if YYDEBUG @@ -811,150 +886,162 @@ static const unsigned short int yyprhs[] = 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, - 99, 101, 103, 105, 107, 109, 112, 113, 115, 117, - 119, 121, 123, 125, 127, 128, 130, 132, 134, 136, - 138, 140, 143, 144, 145, 148, 149, 153, 156, 157, - 159, 160, 164, 166, 169, 171, 173, 175, 177, 179, - 181, 183, 185, 187, 189, 191, 193, 195, 197, 199, - 201, 203, 205, 207, 209, 212, 217, 223, 229, 233, - 236, 239, 241, 245, 247, 251, 253, 254, 259, 263, - 267, 272, 277, 281, 284, 287, 290, 293, 296, 299, - 302, 305, 308, 311, 318, 324, 333, 340, 347, 354, - 361, 368, 377, 386, 390, 392, 394, 396, 398, 401, - 404, 409, 412, 414, 416, 418, 423, 426, 431, 438, - 445, 452, 459, 463, 468, 469, 471, 473, 475, 479, - 483, 487, 491, 495, 499, 501, 502, 504, 506, 508, - 509, 512, 516, 518, 520, 524, 526, 527, 536, 538, - 540, 544, 546, 548, 552, 553, 555, 557, 561, 562, - 564, 566, 568, 570, 572, 574, 576, 578, 580, 584, - 586, 592, 594, 596, 598, 600, 603, 606, 608, 611, - 614, 615, 617, 619, 621, 624, 627, 631, 641, 651, - 660, 675, 677, 679, 686, 692, 695, 702, 710, 712, - 716, 718, 719, 722, 724, 730, 736, 742, 745, 750, - 755, 762, 767, 772, 779, 786, 789, 797, 799, 802, - 803, 805, 806, 810, 817, 821, 828, 831, 836, 843 + 99, 101, 103, 105, 107, 109, 111, 113, 115, 117, + 119, 121, 123, 125, 127, 129, 131, 133, 135, 137, + 139, 141, 143, 145, 147, 149, 151, 153, 156, 157, + 159, 161, 163, 165, 167, 169, 171, 172, 174, 176, + 178, 180, 182, 184, 187, 188, 189, 192, 193, 197, + 200, 201, 203, 204, 208, 210, 213, 215, 217, 219, + 221, 223, 225, 227, 229, 231, 233, 235, 237, 239, + 241, 243, 245, 247, 249, 251, 253, 256, 261, 267, + 273, 277, 280, 283, 285, 289, 291, 295, 297, 298, + 303, 307, 311, 316, 321, 325, 328, 331, 334, 337, + 340, 343, 346, 349, 352, 355, 362, 368, 377, 384, + 391, 398, 406, 413, 420, 429, 438, 442, 444, 446, + 448, 450, 453, 456, 461, 464, 466, 468, 470, 475, + 478, 483, 490, 497, 504, 511, 515, 520, 521, 523, + 525, 527, 531, 535, 539, 543, 547, 551, 553, 554, + 556, 558, 560, 561, 564, 568, 570, 572, 576, 578, + 579, 588, 590, 592, 596, 598, 600, 604, 605, 607, + 609, 613, 614, 616, 618, 620, 622, 624, 626, 628, + 630, 632, 636, 638, 644, 646, 648, 650, 652, 655, + 658, 660, 663, 666, 667, 669, 671, 673, 676, 679, + 683, 693, 703, 712, 727, 729, 731, 738, 744, 747, + 754, 762, 764, 768, 770, 771, 774, 776, 782, 788, + 794, 802, 805, 810, 815, 822, 827, 832, 839, 846, + 849, 857, 859, 862, 863, 865, 866, 870, 877, 881, + 888, 891, 896, 903 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const short int yyrhs[] = { - 175, 0, -1, 19, -1, 20, -1, 17, -1, 18, + 199, 0, -1, 19, -1, 20, -1, 17, -1, 18, -1, 80, -1, 81, -1, 82, -1, 83, -1, 84, -1, 85, -1, 86, -1, 87, -1, 88, -1, 89, -1, 90, -1, 91, -1, 92, -1, 93, -1, 94, -1, 95, -1, 96, -1, 97, -1, 98, -1, 99, - -1, 108, -1, 109, -1, 110, -1, 111, -1, 117, - -1, 118, -1, 119, -1, 120, -1, 121, -1, 122, - -1, 123, -1, 124, -1, 125, -1, 126, -1, 127, - -1, 128, -1, 116, -1, 11, -1, 9, -1, 7, - -1, 5, -1, 12, -1, 10, -1, 8, -1, 6, - -1, 151, -1, 152, -1, 13, -1, 14, -1, 184, - 129, -1, -1, 42, -1, 43, -1, 44, -1, 48, - -1, 45, -1, 46, -1, 47, -1, -1, 66, -1, - 67, -1, 68, -1, 69, -1, 70, -1, 71, -1, - 65, 18, -1, -1, -1, 57, 18, -1, -1, 130, - 57, 18, -1, 37, 30, -1, -1, 160, -1, -1, - 130, 163, 162, -1, 160, -1, 57, 18, -1, 166, - -1, 3, -1, 168, -1, 3, -1, 168, -1, 4, - -1, 5, -1, 6, -1, 7, -1, 8, -1, 9, - -1, 10, -1, 11, -1, 12, -1, 13, -1, 14, - -1, 15, -1, 16, -1, 198, -1, 167, -1, 131, - 18, -1, 165, 132, 170, 133, -1, 134, 18, 135, - 168, 136, -1, 137, 18, 135, 168, 138, -1, 139, - 169, 140, -1, 139, 140, -1, 168, 141, -1, 168, - -1, 169, 130, 168, -1, 169, -1, 169, 130, 40, - -1, 40, -1, -1, 166, 134, 173, 136, -1, 166, - 134, 136, -1, 166, 142, 30, -1, 166, 137, 173, - 138, -1, 166, 139, 173, 140, -1, 166, 139, 140, - -1, 166, 22, -1, 166, 23, -1, 166, 198, -1, - 166, 172, -1, 166, 24, -1, 151, 145, -1, 152, - 18, -1, 4, 25, -1, 4, 26, -1, 154, 21, - -1, 150, 132, 171, 39, 166, 133, -1, 105, 132, - 171, 213, 133, -1, 107, 132, 171, 130, 171, 130, - 171, 133, -1, 146, 132, 171, 130, 171, 133, -1, - 147, 132, 171, 130, 171, 133, -1, 148, 132, 171, - 130, 171, 133, -1, 149, 132, 171, 130, 171, 133, - -1, 113, 132, 171, 130, 171, 133, -1, 114, 132, - 171, 130, 171, 130, 171, 133, -1, 115, 132, 171, - 130, 171, 130, 171, 133, -1, 173, 130, 171, -1, - 171, -1, 35, -1, 36, -1, 176, -1, 176, 193, - -1, 176, 195, -1, 176, 63, 62, 179, -1, 176, - 31, -1, 178, -1, 50, -1, 58, -1, 178, 155, - 27, 164, -1, 178, 195, -1, 178, 63, 62, 179, - -1, 178, 155, 156, 174, 171, 162, -1, 178, 155, - 177, 174, 166, 162, -1, 178, 155, 45, 174, 166, - 162, -1, 178, 155, 47, 174, 166, 162, -1, 178, - 51, 181, -1, 178, 59, 129, 182, -1, -1, 30, - -1, 56, -1, 55, -1, 53, 129, 180, -1, 54, - 129, 18, -1, 52, 129, 30, -1, 72, 129, 30, - -1, 134, 183, 136, -1, 183, 130, 30, -1, 30, - -1, -1, 28, -1, 30, -1, 184, -1, -1, 166, - 185, -1, 187, 130, 186, -1, 186, -1, 187, -1, - 187, 130, 40, -1, 40, -1, -1, 157, 164, 184, - 132, 188, 133, 161, 158, -1, 32, -1, 139, -1, - 156, 189, 190, -1, 33, -1, 140, -1, 191, 201, - 192, -1, -1, 45, -1, 47, -1, 34, 194, 189, - -1, -1, 64, -1, 17, -1, 18, -1, 21, -1, - 25, -1, 26, -1, 22, -1, 23, -1, 24, -1, - 137, 173, 138, -1, 172, -1, 62, 196, 30, 130, - 30, -1, 144, -1, 184, -1, 198, -1, 197, -1, - 166, 199, -1, 201, 202, -1, 202, -1, 203, 205, - -1, 203, 207, -1, -1, 29, -1, 78, -1, 77, - -1, 73, 200, -1, 73, 3, -1, 74, 15, 199, - -1, 74, 4, 199, 130, 15, 199, 130, 15, 199, - -1, 75, 153, 199, 130, 15, 199, 134, 206, 136, - -1, 75, 153, 199, 130, 15, 199, 134, 136, -1, - 155, 76, 157, 164, 199, 132, 210, 133, 39, 15, - 199, 204, 15, 199, -1, 204, -1, 79, -1, 206, - 153, 197, 130, 15, 199, -1, 153, 197, 130, 15, - 199, -1, 155, 212, -1, 166, 134, 199, 130, 199, - 136, -1, 208, 130, 134, 199, 130, 199, 136, -1, - 200, -1, 209, 130, 200, -1, 209, -1, -1, 61, - 60, -1, 60, -1, 146, 166, 199, 130, 199, -1, - 147, 166, 199, 130, 199, -1, 148, 166, 199, 130, - 199, -1, 49, 200, -1, 149, 200, 130, 200, -1, - 150, 200, 39, 166, -1, 107, 200, 130, 200, 130, - 200, -1, 112, 200, 130, 166, -1, 113, 200, 130, - 200, -1, 114, 200, 130, 200, 130, 200, -1, 115, - 200, 130, 200, 130, 200, -1, 106, 208, -1, 211, - 157, 164, 199, 132, 210, 133, -1, 215, -1, 130, - 209, -1, -1, 38, -1, -1, 100, 166, 159, -1, - 100, 166, 130, 10, 199, 159, -1, 101, 166, 159, - -1, 101, 166, 130, 10, 199, 159, -1, 102, 200, - -1, 214, 103, 166, 199, -1, 214, 104, 200, 130, - 166, 199, -1, 105, 166, 199, 213, -1 + -1, 100, -1, 101, -1, 102, -1, 103, -1, 104, + -1, 105, -1, 106, -1, 107, -1, 118, -1, 119, + -1, 120, -1, 121, -1, 108, -1, 109, -1, 110, + -1, 111, -1, 112, -1, 113, -1, 114, -1, 115, + -1, 116, -1, 117, -1, 130, -1, 131, -1, 132, + -1, 133, -1, 139, -1, 140, -1, 141, -1, 142, + -1, 143, -1, 144, -1, 145, -1, 146, -1, 147, + -1, 148, -1, 149, -1, 150, -1, 138, -1, 11, + -1, 9, -1, 7, -1, 5, -1, 12, -1, 10, + -1, 8, -1, 6, -1, 175, -1, 176, -1, 13, + -1, 14, -1, 208, 151, -1, -1, 42, -1, 43, + -1, 44, -1, 48, -1, 45, -1, 46, -1, 47, + -1, -1, 66, -1, 67, -1, 68, -1, 69, -1, + 70, -1, 71, -1, 65, 18, -1, -1, -1, 57, + 18, -1, -1, 152, 57, 18, -1, 37, 30, -1, + -1, 184, -1, -1, 152, 187, 186, -1, 184, -1, + 57, 18, -1, 190, -1, 3, -1, 192, -1, 3, + -1, 192, -1, 4, -1, 5, -1, 6, -1, 7, + -1, 8, -1, 9, -1, 10, -1, 11, -1, 12, + -1, 13, -1, 14, -1, 15, -1, 16, -1, 222, + -1, 191, -1, 153, 18, -1, 189, 154, 194, 155, + -1, 156, 18, 157, 192, 158, -1, 159, 18, 157, + 192, 160, -1, 161, 193, 162, -1, 161, 162, -1, + 192, 163, -1, 192, -1, 193, 152, 192, -1, 193, + -1, 193, 152, 40, -1, 40, -1, -1, 190, 156, + 197, 158, -1, 190, 156, 158, -1, 190, 164, 30, + -1, 190, 159, 197, 160, -1, 190, 161, 197, 162, + -1, 190, 161, 162, -1, 190, 22, -1, 190, 23, + -1, 190, 222, -1, 190, 196, -1, 190, 24, -1, + 175, 167, -1, 176, 18, -1, 4, 25, -1, 4, + 26, -1, 178, 21, -1, 174, 154, 195, 39, 190, + 155, -1, 127, 154, 195, 237, 155, -1, 129, 154, + 195, 152, 195, 152, 195, 155, -1, 168, 154, 195, + 152, 195, 155, -1, 169, 154, 195, 152, 195, 155, + -1, 170, 154, 195, 152, 195, 155, -1, 171, 172, + 154, 195, 152, 195, 155, -1, 173, 154, 195, 152, + 195, 155, -1, 135, 154, 195, 152, 195, 155, -1, + 136, 154, 195, 152, 195, 152, 195, 155, -1, 137, + 154, 195, 152, 195, 152, 195, 155, -1, 197, 152, + 195, -1, 195, -1, 35, -1, 36, -1, 200, -1, + 200, 217, -1, 200, 219, -1, 200, 63, 62, 203, + -1, 200, 31, -1, 202, -1, 50, -1, 58, -1, + 202, 179, 27, 188, -1, 202, 219, -1, 202, 63, + 62, 203, -1, 202, 179, 180, 198, 195, 186, -1, + 202, 179, 201, 198, 190, 186, -1, 202, 179, 45, + 198, 190, 186, -1, 202, 179, 47, 198, 190, 186, + -1, 202, 51, 205, -1, 202, 59, 151, 206, -1, + -1, 30, -1, 56, -1, 55, -1, 53, 151, 204, + -1, 54, 151, 18, -1, 52, 151, 30, -1, 72, + 151, 30, -1, 156, 207, 158, -1, 207, 152, 30, + -1, 30, -1, -1, 28, -1, 30, -1, 208, -1, + -1, 190, 209, -1, 211, 152, 210, -1, 210, -1, + 211, -1, 211, 152, 40, -1, 40, -1, -1, 181, + 188, 208, 154, 212, 155, 185, 182, -1, 32, -1, + 161, -1, 180, 213, 214, -1, 33, -1, 162, -1, + 215, 225, 216, -1, -1, 45, -1, 47, -1, 34, + 218, 213, -1, -1, 64, -1, 17, -1, 18, -1, + 21, -1, 25, -1, 26, -1, 22, -1, 23, -1, + 24, -1, 159, 197, 160, -1, 196, -1, 62, 220, + 30, 152, 30, -1, 166, -1, 208, -1, 222, -1, + 221, -1, 190, 223, -1, 225, 226, -1, 226, -1, + 227, 229, -1, 227, 231, -1, -1, 29, -1, 78, + -1, 77, -1, 73, 224, -1, 73, 3, -1, 74, + 15, 223, -1, 74, 4, 223, 152, 15, 223, 152, + 15, 223, -1, 75, 177, 223, 152, 15, 223, 156, + 230, 158, -1, 75, 177, 223, 152, 15, 223, 156, + 158, -1, 179, 76, 181, 188, 223, 154, 234, 155, + 39, 15, 223, 228, 15, 223, -1, 228, -1, 79, + -1, 230, 177, 221, 152, 15, 223, -1, 177, 221, + 152, 15, 223, -1, 179, 236, -1, 190, 156, 223, + 152, 223, 158, -1, 232, 152, 156, 223, 152, 223, + 158, -1, 224, -1, 233, 152, 224, -1, 233, -1, + -1, 61, 60, -1, 60, -1, 168, 190, 223, 152, + 223, -1, 169, 190, 223, 152, 223, -1, 170, 190, + 223, 152, 223, -1, 171, 172, 190, 223, 152, 223, + 155, -1, 49, 224, -1, 173, 224, 152, 224, -1, + 174, 224, 39, 190, -1, 129, 224, 152, 224, 152, + 224, -1, 134, 224, 152, 190, -1, 135, 224, 152, + 224, -1, 136, 224, 152, 224, 152, 224, -1, 137, + 224, 152, 224, 152, 224, -1, 128, 232, -1, 235, + 181, 188, 223, 154, 234, 155, -1, 239, -1, 152, + 233, -1, -1, 38, -1, -1, 122, 190, 183, -1, + 122, 190, 152, 10, 223, 183, -1, 123, 190, 183, + -1, 123, 190, 152, 10, 223, 183, -1, 124, 224, + -1, 238, 125, 190, 223, -1, 238, 126, 224, 152, + 190, 223, -1, 127, 190, 223, 237, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const unsigned short int yyrline[] = { - 0, 299, 299, 299, 300, 300, 304, 304, 304, 304, - 304, 304, 304, 305, 305, 305, 305, 306, 306, 306, - 307, 307, 307, 307, 307, 307, 308, 308, 308, 308, - 309, 309, 309, 309, 309, 309, 309, 310, 310, 310, - 310, 310, 310, 315, 315, 315, 315, 316, 316, 316, - 316, 317, 317, 318, 318, 321, 324, 329, 329, 329, - 329, 329, 329, 330, 331, 334, 334, 334, 334, 334, - 335, 336, 341, 346, 347, 350, 351, 359, 365, 366, - 369, 370, 379, 380, 393, 393, 394, 394, 395, 399, - 399, 399, 399, 399, 399, 399, 400, 400, 400, 400, - 400, 402, 406, 410, 413, 418, 424, 432, 440, 446, - 450, 461, 464, 472, 473, 478, 481, 491, 497, 502, - 508, 514, 520, 525, 531, 537, 543, 549, 555, 561, - 567, 573, 579, 587, 601, 613, 618, 624, 629, 634, - 642, 647, 652, 662, 667, 672, 672, 682, 687, 690, - 695, 699, 703, 705, 705, 708, 720, 725, 730, 737, - 744, 751, 758, 763, 768, 773, 775, 775, 778, 783, - 790, 795, 802, 809, 814, 815, 823, 823, 824, 824, - 826, 833, 837, 841, 844, 849, 852, 854, 874, 875, - 877, 886, 887, 889, 897, 898, 899, 903, 916, 917, - 920, 920, 920, 920, 920, 920, 920, 921, 922, 927, - 928, 937, 937, 941, 947, 958, 964, 967, 975, 979, - 984, 987, 993, 993, 995, 1000, 1005, 1010, 1018, 1025, - 1031, 1051, 1056, 1062, 1067, 1075, 1084, 1091, 1099, 1103, - 1110, 1111, 1115, 1120, 1123, 1129, 1134, 1139, 1144, 1152, - 1166, 1171, 1176, 1181, 1186, 1191, 1196, 1213, 1218, 1219, - 1223, 1224, 1227, 1234, 1241, 1248, 1255, 1260, 1267, 1274 + 0, 331, 331, 331, 332, 332, 336, 336, 336, 336, + 336, 336, 336, 337, 337, 337, 337, 338, 338, 338, + 339, 339, 339, 339, 339, 339, 340, 340, 341, 341, + 341, 341, 341, 341, 341, 341, 341, 341, 342, 342, + 342, 342, 342, 342, 342, 342, 342, 342, 343, 343, + 343, 343, 344, 344, 344, 344, 344, 344, 344, 345, + 345, 345, 345, 345, 345, 350, 350, 350, 350, 351, + 351, 351, 351, 352, 352, 353, 353, 356, 359, 364, + 364, 364, 364, 364, 364, 365, 366, 369, 369, 369, + 369, 369, 370, 371, 376, 381, 382, 385, 386, 394, + 400, 401, 404, 405, 414, 415, 428, 428, 429, 429, + 430, 434, 434, 434, 434, 434, 434, 434, 435, 435, + 435, 435, 435, 437, 441, 445, 448, 453, 459, 467, + 475, 481, 485, 496, 499, 507, 508, 513, 516, 526, + 532, 537, 543, 549, 555, 560, 566, 572, 578, 584, + 590, 596, 602, 608, 614, 622, 636, 648, 653, 659, + 664, 672, 677, 685, 690, 695, 705, 710, 715, 715, + 725, 730, 733, 738, 742, 746, 748, 748, 751, 763, + 768, 773, 780, 787, 794, 801, 806, 811, 816, 818, + 818, 821, 826, 833, 838, 845, 852, 857, 858, 866, + 866, 867, 867, 869, 876, 880, 884, 887, 892, 895, + 897, 917, 918, 920, 929, 930, 932, 940, 941, 942, + 946, 959, 960, 963, 963, 963, 963, 963, 963, 963, + 964, 965, 970, 971, 980, 980, 984, 990, 1001, 1007, + 1010, 1018, 1022, 1027, 1030, 1036, 1036, 1038, 1043, 1048, + 1053, 1061, 1068, 1074, 1094, 1099, 1105, 1110, 1118, 1127, + 1134, 1142, 1146, 1153, 1154, 1158, 1163, 1166, 1172, 1177, + 1185, 1190, 1195, 1203, 1217, 1222, 1227, 1232, 1237, 1242, + 1247, 1264, 1269, 1270, 1274, 1275, 1278, 1285, 1292, 1299, + 1306, 1311, 1318, 1325 }; #endif @@ -978,28 +1065,30 @@ static const char *const yytname[] = "RET", "BR", "SWITCH", "INVOKE", "EXCEPT", "UNWIND", "UNREACHABLE", "ADD", "SUB", "MUL", "DIV", "UDIV", "SDIV", "FDIV", "REM", "UREM", "SREM", "FREM", "AND", "OR", "XOR", "SETLE", "SETGE", "SETLT", "SETGT", - "SETEQ", "SETNE", "MALLOC", "ALLOCA", "FREE", "LOAD", "STORE", + "SETEQ", "SETNE", "ICMP", "FCMP", "EQ", "NE", "SLT", "SGT", "SLE", "SGE", + "OEQ", "ONE", "OLT", "OGT", "OLE", "OGE", "ORD", "UNO", "UEQ", "UNE", + "ULT", "UGT", "ULE", "UGE", "MALLOC", "ALLOCA", "FREE", "LOAD", "STORE", "GETELEMENTPTR", "PHI_TOK", "SELECT", "SHL", "SHR", "ASHR", "LSHR", "VAARG", "EXTRACTELEMENT", "INSERTELEMENT", "SHUFFLEVECTOR", "CAST", "TRUNC", "ZEXT", "SEXT", "FPTRUNC", "FPEXT", "FPTOUI", "FPTOSI", "UITOFP", "SITOFP", "PTRTOINT", "INTTOPTR", "BITCAST", "'='", "','", "'\\\\'", "'('", "')'", "'['", "'x'", "']'", "'<'", "'>'", "'{'", "'}'", "'*'", "'c'", "$accept", "IntVal", "EInt64Val", "ArithmeticOps", - "LogicalOps", "SetCondOps", "ShiftOps", "CastOps", "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", "DefinitionList", - "External", "ConstPool", "AsmBlock", "BigOrLittle", "TargetDefinition", - "LibrariesDefinition", "LibList", "Name", "OptName", "ArgVal", - "ArgListH", "ArgList", "FunctionHeaderH", "BEGIN", "FunctionHeader", - "END", "Function", "FnDeclareLinkage", "FunctionProto", "OptSideEffect", - "ConstValueRef", "SymbolicValueRef", "ValueRef", "ResolvedVal", - "BasicBlockList", "BasicBlock", "InstructionList", "Unwind", - "BBTerminatorInst", "JumpTable", "Inst", "PHIList", "ValueRefList", - "ValueRefListE", "OptTailCall", "InstVal", "IndexList", "OptVolatile", - "MemoryInst", 0 + "LogicalOps", "SetCondOps", "CompareOps", "Predicates", "ShiftOps", + "CastOps", "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", "DefinitionList", "External", "ConstPool", "AsmBlock", + "BigOrLittle", "TargetDefinition", "LibrariesDefinition", "LibList", + "Name", "OptName", "ArgVal", "ArgListH", "ArgList", "FunctionHeaderH", + "BEGIN", "FunctionHeader", "END", "Function", "FnDeclareLinkage", + "FunctionProto", "OptSideEffect", "ConstValueRef", "SymbolicValueRef", + "ValueRef", "ResolvedVal", "BasicBlockList", "BasicBlock", + "InstructionList", "Unwind", "BBTerminatorInst", "JumpTable", "Inst", + "PHIList", "ValueRefList", "ValueRefListE", "OptTailCall", "InstVal", + "IndexList", "OptVolatile", "MemoryInst", 0 }; #endif @@ -1020,42 +1109,47 @@ static const unsigned short int yytoknum[] = 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, - 375, 376, 377, 378, 379, 380, 381, 382, 383, 61, - 44, 92, 40, 41, 91, 120, 93, 60, 62, 123, - 125, 42, 99 + 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, + 405, 61, 44, 92, 40, 41, 91, 120, 93, 60, + 62, 123, 125, 42, 99 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const unsigned char yyr1[] = { - 0, 143, 144, 144, 145, 145, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 146, 147, 147, 147, - 148, 148, 148, 148, 148, 148, 149, 149, 149, 149, - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, - 150, 150, 150, 151, 151, 151, 151, 152, 152, 152, - 152, 153, 153, 154, 154, 155, 155, 156, 156, 156, - 156, 156, 156, 156, 156, 157, 157, 157, 157, 157, - 157, 157, 157, 158, 158, 159, 159, 160, 161, 161, - 162, 162, 163, 163, 164, 164, 165, 165, 166, 167, - 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, - 167, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 169, 169, 170, 170, 170, 170, 171, 171, 171, - 171, 171, 171, 171, 171, 171, 171, 171, 171, 171, - 171, 171, 171, 172, 172, 172, 172, 172, 172, 172, - 172, 172, 172, 173, 173, 174, 174, 175, 176, 176, - 176, 176, 176, 177, 177, 178, 178, 178, 178, 178, - 178, 178, 178, 178, 178, 179, 180, 180, 181, 181, - 181, 181, 182, 183, 183, 183, 184, 184, 185, 185, - 186, 187, 187, 188, 188, 188, 188, 189, 190, 190, - 191, 192, 192, 193, 194, 194, 194, 195, 196, 196, - 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 198, 198, 199, 199, 200, 201, 201, 202, 203, - 203, 203, 204, 204, 205, 205, 205, 205, 205, 205, - 205, 205, 205, 206, 206, 207, 208, 208, 209, 209, - 210, 210, 211, 211, 212, 212, 212, 212, 212, 212, - 212, 212, 212, 212, 212, 212, 212, 212, 213, 213, - 214, 214, 215, 215, 215, 215, 215, 215, 215, 215 + 0, 165, 166, 166, 167, 167, 168, 168, 168, 168, + 168, 168, 168, 168, 168, 168, 168, 169, 169, 169, + 170, 170, 170, 170, 170, 170, 171, 171, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 173, 173, + 173, 173, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 175, 175, 175, 175, 176, + 176, 176, 176, 177, 177, 178, 178, 179, 179, 180, + 180, 180, 180, 180, 180, 180, 180, 181, 181, 181, + 181, 181, 181, 181, 181, 182, 182, 183, 183, 184, + 185, 185, 186, 186, 187, 187, 188, 188, 189, 189, + 190, 191, 191, 191, 191, 191, 191, 191, 191, 191, + 191, 191, 191, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 193, 193, 194, 194, 194, 194, 195, + 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, + 195, 195, 195, 195, 195, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 197, 197, 198, 198, + 199, 200, 200, 200, 200, 200, 201, 201, 202, 202, + 202, 202, 202, 202, 202, 202, 202, 202, 203, 204, + 204, 205, 205, 205, 205, 206, 207, 207, 207, 208, + 208, 209, 209, 210, 211, 211, 212, 212, 212, 212, + 213, 214, 214, 215, 216, 216, 217, 218, 218, 218, + 219, 220, 220, 221, 221, 221, 221, 221, 221, 221, + 221, 221, 221, 221, 222, 222, 223, 223, 224, 225, + 225, 226, 227, 227, 227, 228, 228, 229, 229, 229, + 229, 229, 229, 229, 229, 229, 230, 230, 231, 232, + 232, 233, 233, 234, 234, 235, 235, 236, 236, 236, + 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, + 236, 236, 237, 237, 238, 238, 239, 239, 239, 239, + 239, 239, 239, 239 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1066,28 +1160,31 @@ static const unsigned char yyr2[] = 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, 1, 1, - 1, 1, 1, 1, 1, 2, 0, 1, 1, 1, - 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, - 1, 2, 0, 0, 2, 0, 3, 2, 0, 1, - 0, 3, 1, 2, 1, 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, - 6, 8, 8, 3, 1, 1, 1, 1, 2, 2, - 4, 2, 1, 1, 1, 4, 2, 4, 6, 6, - 6, 6, 3, 4, 0, 1, 1, 1, 3, 3, - 3, 3, 3, 3, 1, 0, 1, 1, 1, 0, - 2, 3, 1, 1, 3, 1, 0, 8, 1, 1, - 3, 1, 1, 3, 0, 1, 1, 3, 0, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, - 5, 1, 1, 1, 1, 2, 2, 1, 2, 2, - 0, 1, 1, 1, 2, 2, 3, 9, 9, 8, - 14, 1, 1, 6, 5, 2, 6, 7, 1, 3, - 1, 0, 2, 1, 5, 5, 5, 2, 4, 4, - 6, 4, 4, 6, 6, 2, 7, 1, 2, 0, - 1, 0, 3, 6, 3, 6, 2, 4, 6, 4 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 2, 0, 1, + 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, + 1, 1, 1, 2, 0, 0, 2, 0, 3, 2, + 0, 1, 0, 3, 1, 2, 1, 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, 7, 6, 6, 8, 8, 3, 1, 1, 1, + 1, 2, 2, 4, 2, 1, 1, 1, 4, 2, + 4, 6, 6, 6, 6, 3, 4, 0, 1, 1, + 1, 3, 3, 3, 3, 3, 3, 1, 0, 1, + 1, 1, 0, 2, 3, 1, 1, 3, 1, 0, + 8, 1, 1, 3, 1, 1, 3, 0, 1, 1, + 3, 0, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 3, 1, 5, 1, 1, 1, 1, 2, 2, + 1, 2, 2, 0, 1, 1, 1, 2, 2, 3, + 9, 9, 8, 14, 1, 1, 6, 5, 2, 6, + 7, 1, 3, 1, 0, 2, 1, 5, 5, 5, + 7, 2, 4, 4, 6, 4, 4, 6, 6, 2, + 7, 1, 2, 0, 1, 0, 3, 6, 3, 6, + 2, 4, 6, 4 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1095,483 +1192,523 @@ static const unsigned char yyr2[] = means the default is an error. */ static const unsigned short int yydefact[] = { - 164, 0, 64, 152, 1, 151, 194, 57, 58, 59, - 61, 62, 63, 60, 0, 72, 220, 148, 149, 176, - 177, 0, 0, 0, 64, 0, 156, 195, 196, 72, - 0, 0, 65, 66, 67, 68, 69, 70, 0, 0, - 221, 220, 217, 56, 0, 0, 0, 0, 162, 0, - 0, 0, 0, 0, 153, 154, 0, 0, 55, 197, - 165, 150, 71, 85, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 2, 3, 0, - 0, 0, 0, 211, 0, 0, 84, 103, 88, 212, - 102, 188, 189, 190, 191, 192, 193, 216, 0, 0, - 0, 223, 222, 232, 261, 231, 218, 219, 0, 0, - 0, 0, 175, 163, 157, 155, 145, 146, 0, 0, - 0, 0, 104, 0, 0, 87, 109, 111, 0, 0, - 116, 110, 225, 0, 224, 0, 0, 46, 50, 45, - 49, 44, 48, 43, 47, 51, 52, 0, 260, 0, - 243, 0, 72, 6, 7, 8, 9, 10, 11, 12, + 187, 0, 86, 175, 1, 174, 217, 79, 80, 81, + 83, 84, 85, 82, 0, 94, 243, 171, 172, 199, + 200, 0, 0, 0, 86, 0, 179, 218, 219, 94, + 0, 0, 87, 88, 89, 90, 91, 92, 0, 0, + 244, 243, 240, 78, 0, 0, 0, 0, 185, 0, + 0, 0, 0, 0, 176, 177, 0, 0, 77, 220, + 188, 173, 93, 107, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 2, 3, 0, + 0, 0, 0, 234, 0, 0, 106, 125, 110, 235, + 124, 211, 212, 213, 214, 215, 216, 239, 0, 0, + 0, 246, 245, 255, 285, 254, 241, 242, 0, 0, + 0, 0, 198, 186, 180, 178, 168, 169, 0, 0, + 0, 0, 126, 0, 0, 109, 131, 133, 0, 0, + 138, 132, 248, 0, 247, 0, 0, 68, 72, 67, + 71, 66, 70, 65, 69, 73, 74, 0, 284, 0, + 266, 0, 94, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 0, 0, 0, 0, 0, 0, 26, - 27, 28, 29, 0, 0, 0, 0, 42, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 0, 0, 0, 0, 0, 72, 235, 0, 257, 170, - 167, 166, 168, 169, 171, 174, 0, 80, 80, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 0, 0, 0, 0, 80, 80, 0, 0, 0, 108, - 186, 115, 113, 0, 200, 201, 202, 205, 206, 207, - 203, 204, 198, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 209, 214, 213, 215, 0, 226, - 0, 247, 242, 0, 75, 75, 266, 0, 0, 255, + 23, 24, 25, 26, 27, 0, 0, 0, 0, 0, + 0, 48, 49, 50, 51, 0, 0, 0, 0, 64, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 0, 0, 0, 0, 0, 0, 94, 258, + 0, 281, 193, 190, 189, 191, 192, 194, 197, 0, + 102, 102, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 0, 0, 0, 0, 102, 102, 0, + 0, 0, 130, 209, 137, 135, 0, 223, 224, 225, + 228, 229, 230, 226, 227, 221, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 232, 237, + 236, 238, 0, 249, 0, 271, 265, 0, 97, 97, + 290, 0, 0, 279, 0, 0, 0, 0, 0, 0, + 0, 0, 28, 29, 30, 31, 32, 33, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 34, 35, + 36, 37, 0, 0, 0, 0, 0, 0, 0, 195, + 0, 183, 184, 152, 153, 4, 5, 150, 151, 154, + 145, 146, 149, 0, 0, 0, 0, 148, 147, 181, + 182, 108, 108, 134, 208, 202, 205, 206, 0, 0, + 127, 222, 0, 0, 0, 0, 0, 0, 167, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 172, 0, 160, 161, 130, 131, - 4, 5, 128, 129, 132, 123, 124, 127, 0, 0, - 0, 0, 126, 125, 158, 159, 86, 86, 112, 185, - 179, 182, 183, 0, 0, 105, 199, 0, 0, 0, - 0, 0, 0, 144, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 262, 0, 264, 259, 0, 0, + 286, 0, 288, 283, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 173, 0, 0, 82, 80, 118, 0, - 0, 122, 0, 119, 106, 107, 178, 180, 0, 78, - 114, 0, 259, 0, 0, 0, 0, 0, 208, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 269, 0, 0, 0, 251, 252, 0, 0, 0, - 0, 0, 248, 249, 0, 267, 0, 77, 83, 81, - 117, 120, 121, 184, 181, 79, 73, 0, 0, 0, - 0, 0, 0, 143, 0, 0, 0, 0, 0, 0, - 0, 241, 75, 76, 75, 238, 258, 0, 0, 0, - 0, 0, 244, 245, 246, 241, 0, 0, 187, 210, - 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 240, 0, 0, 263, 265, 0, 0, 0, - 250, 253, 254, 0, 268, 74, 0, 140, 0, 0, - 136, 137, 138, 139, 133, 0, 229, 0, 0, 0, - 239, 236, 0, 256, 0, 0, 0, 227, 0, 228, - 0, 0, 237, 135, 141, 142, 0, 0, 0, 0, - 0, 0, 234, 0, 0, 233, 0, 230 + 196, 0, 0, 104, 102, 140, 0, 0, 144, 0, + 141, 128, 129, 201, 203, 0, 100, 136, 0, 283, + 0, 0, 0, 0, 0, 231, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 293, + 0, 0, 0, 275, 276, 0, 0, 0, 0, 0, + 0, 272, 273, 0, 291, 0, 99, 105, 103, 139, + 142, 143, 207, 204, 101, 95, 0, 0, 0, 0, + 0, 0, 166, 0, 0, 0, 0, 0, 0, 0, + 0, 264, 97, 98, 97, 261, 282, 0, 0, 0, + 0, 0, 267, 268, 269, 0, 264, 0, 0, 210, + 233, 156, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 263, 0, 0, 287, 289, 0, + 0, 0, 274, 277, 278, 0, 0, 292, 96, 0, + 163, 0, 0, 158, 159, 160, 0, 162, 155, 0, + 252, 0, 0, 0, 262, 259, 0, 270, 280, 0, + 0, 0, 161, 250, 0, 251, 0, 0, 260, 157, + 164, 165, 0, 0, 0, 0, 0, 0, 257, 0, + 0, 256, 0, 253 }; /* YYDEFGOTO[NTERM-NUM]. */ static const short int yydefgoto[] = { - -1, 83, 302, 259, 260, 261, 262, 263, 230, 231, - 147, 232, 24, 15, 38, 458, 344, 366, 426, 296, - 367, 84, 85, 233, 87, 88, 128, 243, 333, 264, - 334, 118, 1, 2, 57, 3, 61, 212, 48, 113, - 216, 89, 377, 321, 322, 323, 39, 93, 16, 96, - 17, 29, 18, 327, 265, 90, 267, 445, 41, 42, - 43, 105, 106, 498, 107, 279, 472, 473, 205, 206, - 401, 207, 208 + -1, 83, 327, 262, 263, 264, 265, 312, 266, 267, + 233, 234, 147, 235, 24, 15, 38, 489, 370, 393, + 455, 321, 394, 84, 85, 236, 87, 88, 128, 246, + 358, 268, 359, 118, 1, 2, 57, 3, 61, 215, + 48, 113, 219, 89, 404, 346, 347, 348, 39, 93, + 16, 96, 17, 29, 18, 352, 269, 90, 271, 475, + 41, 42, 43, 105, 106, 532, 107, 283, 504, 505, + 208, 209, 429, 210, 211 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -477 +#define YYPACT_NINF -507 static const short int yypact[] = { - -477, 20, 54, 872, -477, -477, 86, -477, -477, -477, - -477, -477, -477, -477, 24, 110, 65, -477, -477, -477, - -477, 37, -105, 51, 3, -8, -477, -477, -477, 110, - 111, 126, -477, -477, -477, -477, -477, -477, 703, -23, - -477, -18, -477, -1, 23, 43, 64, 74, -477, 70, - 111, 703, 71, 71, -477, -477, 71, 71, -477, -477, - -477, -477, -477, 73, -477, -477, -477, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, -477, -477, 188, - 189, 190, 457, -477, 104, 77, -477, -477, -29, -477, - -477, -477, -477, -477, -477, -477, -477, -477, 736, 80, - 118, -477, -477, -477, 1196, -477, -477, -477, 181, 87, - 192, 182, 183, -477, -477, -477, -477, -477, 764, 764, - 802, 764, -477, 81, 82, -477, -477, -29, -114, 83, - 513, -477, 73, 988, -477, 988, 988, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, 988, -477, 764, - -477, 158, 110, -477, -477, -477, -477, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, -477, -477, -477, - -477, -477, -477, 764, 764, 764, 764, 764, 764, -477, - -477, -477, -477, 764, 764, 764, 764, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, -477, -477, -477, - 764, 764, 764, 764, 764, 110, -477, 57, -477, -477, - -477, -477, -477, -477, -477, -477, -26, 89, 89, 160, - 170, 203, 172, 204, 174, 205, 178, 207, 206, 208, - 180, 210, 209, 862, 89, 89, 764, 764, 764, -477, - 552, -477, 96, 98, -477, -477, -477, -477, -477, -477, - -477, -477, 173, 102, 106, 108, 112, 114, 802, 115, - 116, 117, 119, 127, -477, -477, -477, -477, 113, -477, - 125, -477, -477, 703, 130, 131, -477, 988, 128, 133, - 134, 135, 138, 140, 142, 988, 988, 988, 143, 197, - 703, 764, 764, 212, -477, -2, -477, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, -477, 598, 802, - 485, 244, -477, -477, -477, -477, 15, -82, -29, -477, - 104, -477, 147, 145, 626, -477, -477, 250, 802, 802, - 802, 802, 802, -477, -113, 802, 802, 802, 802, 802, - 273, 274, 988, 0, -477, 18, -477, 163, 988, 156, - 764, 764, 764, 764, 764, 165, 167, 168, 764, 764, - 988, 988, 169, -477, 271, 284, -477, 89, -477, -22, - -51, -477, -48, -477, -477, -477, -477, -477, 665, 266, - -477, 179, 163, 187, 211, 213, 215, 802, -477, 216, - 217, 218, 219, 272, 988, 988, 186, 988, 292, 988, - 764, -477, 220, 988, 222, -477, -477, 224, 225, 988, - 988, 988, -477, -477, 226, -477, 764, -477, -477, -477, - -477, -477, -477, -477, -477, -477, 265, 305, 223, 802, - 802, 802, 802, -477, 802, 802, 802, 802, 764, 227, - 202, 764, 229, -477, 229, -477, 230, 988, 231, 764, - 764, 764, -477, -477, -477, 764, 988, 319, -477, -477, - -477, 233, 232, 234, 236, 235, 237, 238, 240, 242, - 323, 31, 230, 246, 282, -477, -477, 764, 241, 988, - -477, -477, -477, 247, -477, -477, 802, -477, 802, 802, - -477, -477, -477, -477, -477, 988, -477, 1105, 58, 303, - -477, -477, 245, -477, 251, 252, 253, -477, 239, -477, - 1105, 368, -477, -477, -477, -477, 372, 258, 988, 988, - 374, 123, -477, 988, 379, -477, 988, -477 + -507, 31, 62, 973, -507, -507, -18, -507, -507, -507, + -507, -507, -507, -507, -3, 124, 43, -507, -507, -507, + -507, -33, -60, 25, 177, -37, -507, -507, -507, 124, + 102, 128, -507, -507, -507, -507, -507, -507, 800, -25, + -507, -17, -507, 49, 12, 16, 26, 29, -507, 28, + 102, 800, 7, 7, -507, -507, 7, 7, -507, -507, + -507, -507, -507, 42, -507, -507, -507, -507, -507, -507, + -507, -507, -507, -507, -507, -507, -507, -507, -507, 163, + 164, 165, 469, -507, 27, 47, -507, -507, -109, -507, + -507, -507, -507, -507, -507, -507, -507, -507, 837, 20, + 146, -507, -507, -507, 1314, -507, -507, -507, 155, 19, + 179, 172, 173, -507, -507, -507, -507, -507, 882, 882, + 921, 882, -507, 50, 51, -507, -507, -109, -126, 52, + 564, -507, 42, 1112, -507, 1112, 1112, -507, -507, -507, + -507, -507, -507, -507, -507, -507, -507, 1112, -507, 882, + -507, 149, 124, -507, -507, -507, -507, -507, -507, -507, + -507, -507, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, -507, -507, -507, 882, 882, 882, 882, 882, + 882, -507, -507, -507, -507, 882, 882, 882, 882, -507, + -507, -507, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, 882, 882, 882, 860, 882, 882, 124, -507, + -5, -507, -507, -507, -507, -507, -507, -507, -507, -64, + 58, 58, 77, 117, 193, 126, 194, 142, 195, 144, + 198, 197, 207, 153, 213, 211, 964, 58, 58, 882, + 882, 882, -507, 640, -507, 81, 82, -507, -507, -507, + -507, -507, -507, -507, -507, 170, 84, 86, 87, 88, + 89, 921, 90, 91, 92, 860, 93, 94, -507, -507, + -507, -507, 97, -507, 104, -507, -507, 800, 105, 109, + -507, 1112, 80, 112, 114, 115, 118, 120, 121, 1112, + 1112, 1112, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, 882, 123, 230, 800, 882, 882, 220, -507, + -23, -507, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, -507, 678, 921, 516, 246, -507, -507, -507, + -507, -73, -48, -109, -507, 27, -507, 131, 125, 723, + -507, -507, 256, 921, 921, 921, 921, 921, -507, -76, + 921, 921, 921, 133, 921, 921, 274, 278, 1112, -1, + -507, 1, -507, 143, 1112, 138, 882, 882, 882, 882, + 882, 147, 148, 150, 1112, 882, 882, 1112, 1112, 151, + -507, 266, 280, -507, 58, -507, -57, -74, -507, -124, + -507, -507, -507, -507, -507, 762, 264, -507, 152, 143, + 154, 156, 157, 158, 921, -507, 159, 161, 162, 921, + 166, 268, 1112, 1112, 167, 1112, 287, 1112, 882, -507, + 171, 1112, 174, -507, -507, 175, 178, 1112, 1112, 1112, + 180, -507, -507, 183, -507, 882, -507, -507, -507, -507, + -507, -507, -507, -507, -507, 258, 286, 176, 921, 921, + 921, 921, -507, 921, 921, 921, 181, 921, 882, 192, + 169, 882, 199, -507, 199, -507, 200, 1112, 201, 882, + 882, 882, -507, -507, -507, 1112, 882, 1112, 311, -507, + -507, -507, 202, 190, 203, 212, 191, 216, 217, 921, + 218, 221, 334, 41, 200, 222, 293, -507, -507, 882, + 208, 1112, -507, -507, -507, 223, 224, -507, -507, 921, + -507, 921, 921, -507, -507, -507, 225, -507, -507, 1112, + -507, 1201, 59, 336, -507, -507, 227, -507, -507, 226, + 228, 231, -507, -507, 235, -507, 1201, 373, -507, -507, + -507, -507, 374, 242, 1112, 1112, 380, 98, -507, 1112, + 381, -507, 1112, -507 }; /* YYPGOTO[NTERM-NUM]. */ static const short int yypgoto[] = { - -477, -477, -477, 293, 298, 300, 301, 302, -99, -97, - -440, -477, 353, 383, -134, -477, -271, 29, -477, -212, - -477, -49, -477, -38, -477, -68, 279, -477, -5, 177, - -190, 97, -477, -477, -477, -477, 364, -477, -477, -477, - -477, 9, -477, 40, -477, -477, 390, -477, -477, -477, - -477, -477, 418, -477, -476, -128, -103, 101, -477, 381, - -477, -93, -477, -477, -477, -477, 33, -21, -477, -477, - 53, -477, -477 + -507, -507, -507, 294, 295, 296, 297, 137, 299, 300, + -98, -97, -495, -507, 366, 386, -135, -507, -274, 5, + -507, -215, -507, -47, -507, -38, -507, -67, 282, -507, + -102, 182, -204, 60, -507, -507, -507, -507, 363, -507, + -507, -507, -507, -2, -507, 9, -507, -507, 387, -507, + -507, -507, -507, -507, 412, -507, -506, -103, 79, -88, + -507, 382, -507, -133, -507, -507, -507, -507, -6, -61, + -507, -507, 18, -507, -507 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -148 +#define YYTABLE_NINF -171 static const short int yytable[] = { - 86, 145, 115, 146, 346, 266, 297, 266, 266, 91, - 397, 40, 25, 86, 127, 94, 238, 387, 273, 266, - 4, 508, 314, 315, 49, 388, 239, 19, 399, 20, - 51, 497, 268, 269, 517, 364, 137, 138, 139, 140, - 141, 142, 143, 144, 270, 7, 8, 9, 52, 11, - 53, 13, 25, 54, -147, 365, 375, 398, 510, 131, - 133, 55, 127, 137, 138, 139, 140, 141, 142, 143, - 144, 290, 98, 99, 100, 398, 101, 102, 103, 387, - 217, 218, 387, 235, 135, 5, 30, 421, 6, 44, - 45, 46, 422, 129, 40, 136, 7, 8, 9, 10, - 11, 12, 13, -86, 293, 313, 116, 117, 387, 47, - 294, 133, 131, 50, 420, 234, 92, 14, 369, 370, - 372, 58, 95, 137, 138, 139, 140, 141, 142, 143, - 144, 27, 19, 28, 20, 274, 275, 133, 277, 278, - 133, 60, 210, 211, 62, 133, 133, 133, 133, 266, - 119, 374, 108, 120, 121, 419, 131, 266, 266, 266, - 291, 292, 285, 286, 287, 133, 133, 496, 316, 317, - 318, 475, 109, 476, 347, 31, 32, 33, 34, 35, - 36, 37, 355, 356, 357, 298, 299, -46, -46, -45, - -45, -44, -44, 110, 509, -43, -43, 300, 301, 134, - 101, 102, 320, 111, 112, -87, 122, 123, 124, 130, - 213, 209, 214, 215, 266, 240, 236, 237, 272, 295, - 266, -50, -49, -48, 342, -47, 324, -53, 303, -54, - 304, 325, 266, 266, 328, 86, 359, 326, 329, 396, - 330, 360, 363, 340, 331, 402, 332, 335, 336, 337, - 271, 338, 86, 361, 133, 341, 318, 414, 415, 339, - 343, 345, 348, 349, 350, 351, 266, 266, 352, 266, - 353, 266, 354, 358, 373, 266, 276, 378, 379, 280, - 381, 266, 266, 266, 281, 282, 283, 284, 394, 395, - 403, 439, 440, 400, 442, 409, 444, 410, 411, 416, - 448, 417, 418, 364, 288, 289, 452, 453, 454, 427, - 443, 438, 133, 405, 133, 133, 133, 429, 441, 266, - 133, 413, 457, 382, 383, 384, 385, 386, 266, 376, - 389, 390, 391, 392, 393, 459, 471, 485, 495, 398, - 320, 430, 511, 431, 478, 432, 434, 435, 436, 437, - 447, 266, 449, 484, 450, 451, 460, 470, 455, 474, - 477, 479, 133, 486, 488, 487, 489, 266, 490, 516, - 491, 492, 145, 493, 146, 494, 502, 501, 456, 499, - 503, 512, 433, 518, 513, 514, 515, 519, 520, 523, - 266, 266, 507, 362, 526, 266, 104, 200, 266, 145, - 469, 146, 201, 133, 202, 203, 204, 56, 425, 242, - 312, 133, 133, 133, 114, 521, 522, 133, 424, 59, - 525, 26, 97, 527, 461, 462, 463, 464, 524, 465, - 466, 467, 468, 446, 483, 428, 0, 0, 0, 133, + 86, 25, 145, 146, 115, 372, 322, 91, 531, 425, + 134, 427, 40, 86, 391, 127, 94, 277, 237, 44, + 45, 46, 339, 340, 135, 544, 241, 27, 414, 28, + 270, 4, 270, 270, 392, 136, 242, 546, 451, 47, + 553, 25, 116, 117, 270, -108, 137, 138, 139, 140, + 141, 142, 143, 144, 131, 19, 426, 20, 426, 30, + 133, 275, -170, 127, 137, 138, 139, 140, 141, 142, + 143, 144, 40, 315, 213, 214, 414, 19, 414, 20, + 220, 221, 129, 238, 415, 401, 450, 50, 318, 280, + 131, 49, 284, 5, 319, 414, 6, 285, 286, 287, + 288, 449, 323, 324, 7, 8, 9, 10, 11, 12, + 13, 133, 402, 119, 58, 131, 120, 121, 313, 314, + 316, 317, 98, 99, 100, 14, 101, 102, 103, 396, + 397, 399, 60, 338, -68, -68, 92, 278, 279, 133, + 281, 282, 133, -67, -67, 95, 62, 133, 133, 133, + 133, 137, 138, 139, 140, 141, 142, 143, 144, -66, + -66, -65, -65, 108, 289, 290, 291, 109, 133, 133, + 325, 326, 341, 342, 343, 101, 102, 110, 270, 448, + 111, 122, 123, 124, 112, 212, 270, 270, 270, 31, + 32, 33, 34, 35, 36, 37, -109, 216, 507, 530, + 508, 130, 217, 218, 51, 345, 243, 239, 240, 276, + 320, -72, -71, -70, 272, 273, -69, 545, -75, 7, + 8, 9, 52, 11, 53, 13, 274, 54, -76, 389, + 368, 328, 329, 349, 351, 55, 374, 350, 353, 86, + 354, 355, 356, 357, 360, 361, 362, 364, 365, 366, + 390, 409, 410, 411, 412, 413, 367, 369, 416, 417, + 418, 371, 420, 421, 375, 270, 376, 377, 387, 386, + 378, 270, 379, 380, 384, 385, 400, 86, 388, 133, + 406, 270, 343, 405, 270, 270, 408, 419, 432, 422, + 434, 435, 436, 423, 431, 428, 446, 441, 447, 437, + 438, 391, 439, 445, 456, 473, 458, 468, 459, 460, + 461, 463, 462, 464, 465, 488, 490, 466, 467, 270, + 270, 471, 270, 477, 270, 503, 479, 480, 270, 518, + 481, 491, 485, 499, 270, 270, 270, 486, 133, 433, + 133, 133, 133, 403, 502, 520, 523, 133, 442, 529, + 426, 506, 509, 511, 519, 521, 492, 493, 494, 495, + 373, 496, 497, 498, 522, 500, 535, 345, 381, 382, + 383, 524, 525, 527, 270, 547, 528, 533, 537, 538, + 542, 549, 270, 550, 270, 548, 551, 552, 554, 555, + 133, 512, 513, 514, 556, 559, 562, 526, 202, 203, + 204, 205, 363, 206, 207, 145, 146, 487, 270, 104, + 56, 454, 245, 114, 453, 26, 59, 539, 337, 540, + 541, 534, 476, 97, 560, 516, 270, 457, 0, 0, + 501, 0, 0, 133, 145, 146, 0, 0, 0, 0, + 0, 133, 133, 133, 0, 0, 0, 424, 133, 0, + 0, 270, 270, 430, 0, 0, 270, 0, 0, 270, + 0, 0, 0, 440, 0, 0, 443, 444, 0, 0, + 0, 133, 125, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 0, 0, 77, 78, + 0, 0, 0, 0, 0, 0, 0, 19, 0, 20, + 0, 469, 470, 0, 472, 0, 474, 0, 0, 0, + 478, 0, 0, 0, 0, 0, 482, 483, 484, 125, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 75, 76, 0, 0, 77, 78, 0, 0, 0, + 0, 0, 0, 0, 19, 0, 20, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 510, 0, 0, 0, + 0, 0, 0, 0, 515, 0, 517, 125, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 0, 0, 77, 78, 0, 0, 0, 0, 0, + 536, 0, 19, 0, 20, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 244, 0, 0, 0, 543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 404, 0, 406, 407, 408, 0, 0, 0, 412, - 125, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 0, 0, 77, 78, 0, 0, - 0, 504, 0, 505, 506, 19, 0, 20, 125, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 75, 76, 0, 0, 77, 78, 0, 0, 0, 0, - 0, 0, 0, 19, 0, 20, 125, 64, 65, 66, + 0, 0, 79, 0, 0, 80, 0, 0, 81, 0, + 82, 126, 0, 557, 558, 0, 0, 0, 561, 0, + 0, 563, 0, 125, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 0, 0, 77, + 78, 0, 0, 0, 0, 0, 0, 0, 19, 79, + 20, 0, 80, 0, 0, 81, 0, 82, 398, 0, + 344, 125, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 75, 76, 0, 0, 77, 78, 0, + 0, 0, 0, 0, 0, 0, 19, 0, 20, 0, + 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, + 80, 0, 0, 81, 0, 82, 125, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 77, 78, 0, 0, 0, 0, 0, 0, 0, 19, 0, 20, 0, 0, 0, 0, 0, 0, - 480, 481, 482, 241, 0, 125, 64, 65, 66, 67, + 0, 0, 0, 407, 0, 125, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, - 0, 77, 78, 0, 0, 0, 0, 0, 500, 0, - 19, 0, 20, 0, 0, 0, 0, 0, 79, 0, - 0, 80, 319, 0, 81, 0, 82, 126, 0, 0, - 0, 125, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 75, 76, 0, 79, 77, 78, 80, - 0, 0, 81, 0, 82, 371, 19, 0, 20, 125, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 0, 79, 77, 78, 80, 0, 0, - 81, 0, 82, 0, 19, 0, 20, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 380, 0, 125, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 0, 79, 77, 78, 80, 0, 0, 81, - 0, 82, 0, 19, 0, 20, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 423, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 0, 0, 77, 78, 0, 0, 0, 0, 0, 79, - 0, 19, 80, 20, 368, 81, 0, 82, 0, 132, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 0, 0, 77, 78, 79, 0, 0, - 80, 0, 0, 81, 19, 82, 20, 125, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 0, 0, 77, 78, 0, 0, 0, 0, 0, - 0, 0, 19, 0, 20, 0, 79, 0, 0, 80, - 0, 0, 81, 0, 82, 125, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 75, 76, 0, 0, 77, 78, 0, 0, 0, 0, 0, 0, 0, - 19, 0, 20, 0, 79, 0, 0, 80, 0, 0, + 19, 0, 20, 79, 0, 0, 80, 0, 0, 81, + 0, 82, 452, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 0, 0, 77, + 78, 0, 0, 0, 0, 0, 0, 0, 19, 0, + 20, 79, 0, 0, 80, 0, 395, 81, 0, 82, + 132, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 75, 76, 0, 0, 77, 78, 0, 0, + 0, 0, 0, 0, 0, 19, 0, 20, 0, 0, + 0, 0, 0, 0, 0, 0, 79, 0, 0, 80, + 0, 0, 81, 0, 82, 125, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, + 0, 77, 78, 0, 0, 0, 0, 0, 0, 0, + 19, 0, 20, 0, 0, 79, 0, 0, 80, 0, + 0, 81, 0, 82, 125, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 75, 76, 0, 0, + 77, 78, 0, 0, 0, 0, 0, 0, 0, 19, + 0, 20, 0, 79, 0, 0, 80, 0, 0, 81, + 0, 82, 292, 293, 294, 295, 296, 297, 298, 299, + 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 0, 77, 78, 0, 330, 331, 332, 0, + 79, 0, 19, 80, 20, 0, 81, 0, 82, 0, + -78, 19, 0, 20, 0, 0, 0, 6, -78, -78, + 0, 0, 0, 0, 0, -78, -78, -78, -78, -78, + -78, -78, 0, -78, 21, 0, 0, 0, 0, 0, + 0, -78, 22, 0, 0, 79, 23, 0, 80, 0, + 0, 81, 0, 82, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 169, 170, 171, 172, 173, 174, 0, 0, 0, 0, + 0, 0, 0, 0, 79, 0, 0, 80, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, + 0, 256, 0, 257, 181, 182, 183, 184, 0, 258, + 259, 260, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 0, 0, 0, 0, 0, + 333, 0, 0, 334, 0, 335, 0, 0, 336, 247, + 248, 77, 78, 249, 250, 251, 252, 253, 254, 0, + 19, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, - 80, 0, 0, 81, 0, 82, 0, 0, 0, 0, - 0, 77, 78, 0, 305, 306, 307, 0, 0, 0, - 19, 0, 20, 0, 0, 79, 0, 0, 80, -56, - 19, 81, 20, 82, 0, 0, 6, -56, -56, 0, - 0, 0, 0, 0, -56, -56, -56, -56, -56, -56, - -56, 0, -56, 21, 0, 0, 0, 0, 0, 0, - -56, 22, 0, 79, 0, 23, 80, 0, 0, 81, - 0, 82, 153, 154, 155, 156, 157, 158, 159, 160, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 0, 0, 0, 0, 0, 253, 0, 254, - 179, 180, 181, 182, 0, 255, 256, 257, 187, 188, + 171, 172, 173, 174, 0, 0, 0, 0, 247, 248, + 0, 0, 249, 250, 251, 252, 253, 254, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 256, + 0, 257, 181, 182, 183, 184, 0, 258, 259, 260, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 0, 0, 0, 0, 0, 308, 0, 0, 309, - 0, 310, 0, 0, 311, 244, 245, 77, 78, 246, - 247, 248, 249, 250, 251, 0, 19, 0, 20, 0, + 199, 200, 201, 255, 0, 0, 0, 0, 0, 0, + 0, 261, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 173, 174, 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, 256, 0, + 257, 181, 182, 183, 184, 0, 258, 259, 260, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 148, 0, 0, 0, 0, 0, 0, 0, + 261, 0, 0, 149, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 150, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 152, 0, 0, 0, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 169, 170, 171, 172, 173, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 252, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 0, 0, - 0, 0, 0, 253, 0, 254, 179, 180, 181, 182, - 0, 255, 256, 257, 187, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 0, 0, 0, - 0, 0, 244, 245, 0, 258, 246, 247, 248, 249, - 250, 251, 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, 0, 0, 0, 0, 0, 252, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, - 168, 169, 170, 171, 172, 0, 0, 0, 0, 0, - 253, 0, 254, 179, 180, 181, 182, 0, 255, 256, - 257, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 148, 0, 0, 0, 0, 0, - 0, 0, 258, 0, 0, 149, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 150, 151, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 152, 0, 0, 0, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, 172, 173, 174, 175, 0, - 0, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199 + 0, 0, 0, 0, 0, 0, 175, 176, 177, 0, + 0, 178, 179, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201 }; static const short int yycheck[] = { - 38, 100, 51, 100, 275, 133, 218, 135, 136, 32, - 10, 29, 3, 51, 82, 33, 130, 130, 152, 147, - 0, 497, 234, 235, 129, 138, 140, 28, 10, 30, - 27, 471, 135, 136, 510, 37, 5, 6, 7, 8, - 9, 10, 11, 12, 147, 42, 43, 44, 45, 46, - 47, 48, 43, 50, 0, 57, 138, 57, 498, 141, - 98, 58, 130, 5, 6, 7, 8, 9, 10, 11, - 12, 205, 73, 74, 75, 57, 77, 78, 79, 130, - 118, 119, 130, 121, 4, 31, 62, 138, 34, 52, - 53, 54, 140, 84, 29, 15, 42, 43, 44, 45, - 46, 47, 48, 132, 130, 233, 35, 36, 130, 72, - 136, 149, 141, 62, 136, 120, 139, 63, 308, 309, - 310, 129, 140, 5, 6, 7, 8, 9, 10, 11, - 12, 45, 28, 47, 30, 173, 174, 175, 176, 177, - 178, 30, 55, 56, 18, 183, 184, 185, 186, 277, - 53, 136, 129, 56, 57, 367, 141, 285, 286, 287, - 103, 104, 200, 201, 202, 203, 204, 136, 236, 237, - 238, 442, 129, 444, 277, 65, 66, 67, 68, 69, - 70, 71, 285, 286, 287, 25, 26, 17, 18, 17, - 18, 17, 18, 129, 136, 17, 18, 17, 18, 98, - 77, 78, 240, 129, 134, 132, 18, 18, 18, 132, - 18, 30, 30, 30, 342, 132, 135, 135, 60, 130, - 348, 18, 18, 18, 273, 18, 130, 21, 18, 21, - 21, 133, 360, 361, 132, 273, 39, 64, 132, 342, - 132, 290, 30, 130, 132, 348, 132, 132, 132, 132, - 149, 132, 290, 291, 292, 130, 324, 360, 361, 132, - 130, 130, 134, 130, 130, 130, 394, 395, 130, 397, - 130, 399, 130, 130, 30, 403, 175, 130, 133, 178, - 30, 409, 410, 411, 183, 184, 185, 186, 15, 15, - 134, 394, 395, 130, 397, 130, 399, 130, 130, 130, - 403, 30, 18, 37, 203, 204, 409, 410, 411, 130, - 18, 39, 350, 351, 352, 353, 354, 130, 132, 447, - 358, 359, 57, 328, 329, 330, 331, 332, 456, 320, - 335, 336, 337, 338, 339, 30, 134, 18, 15, 57, - 378, 130, 39, 130, 447, 130, 130, 130, 130, 130, - 130, 479, 130, 456, 130, 130, 133, 130, 132, 130, - 130, 130, 400, 130, 130, 133, 130, 495, 133, 130, - 133, 133, 471, 133, 471, 133, 479, 136, 416, 133, - 133, 136, 387, 15, 133, 133, 133, 15, 130, 15, - 518, 519, 495, 292, 15, 523, 43, 104, 526, 498, - 438, 498, 104, 441, 104, 104, 104, 24, 379, 130, - 233, 449, 450, 451, 50, 518, 519, 455, 378, 29, - 523, 3, 41, 526, 429, 430, 431, 432, 521, 434, - 435, 436, 437, 400, 455, 382, -1, -1, -1, 477, + 38, 3, 100, 100, 51, 279, 221, 32, 503, 10, + 98, 10, 29, 51, 37, 82, 33, 152, 120, 52, + 53, 54, 237, 238, 4, 531, 152, 45, 152, 47, + 133, 0, 135, 136, 57, 15, 162, 532, 162, 72, + 546, 43, 35, 36, 147, 154, 5, 6, 7, 8, + 9, 10, 11, 12, 163, 28, 57, 30, 57, 62, + 98, 149, 0, 130, 5, 6, 7, 8, 9, 10, + 11, 12, 29, 208, 55, 56, 152, 28, 152, 30, + 118, 119, 84, 121, 160, 158, 160, 62, 152, 177, + 163, 151, 180, 31, 158, 152, 34, 185, 186, 187, + 188, 158, 25, 26, 42, 43, 44, 45, 46, 47, + 48, 149, 160, 53, 151, 163, 56, 57, 206, 207, + 125, 126, 73, 74, 75, 63, 77, 78, 79, 333, + 334, 335, 30, 236, 17, 18, 161, 175, 176, 177, + 178, 179, 180, 17, 18, 162, 18, 185, 186, 187, + 188, 5, 6, 7, 8, 9, 10, 11, 12, 17, + 18, 17, 18, 151, 202, 203, 204, 151, 206, 207, + 17, 18, 239, 240, 241, 77, 78, 151, 281, 394, + 151, 18, 18, 18, 156, 30, 289, 290, 291, 65, + 66, 67, 68, 69, 70, 71, 154, 18, 472, 158, + 474, 154, 30, 30, 27, 243, 154, 157, 157, 60, + 152, 18, 18, 18, 135, 136, 18, 158, 21, 42, + 43, 44, 45, 46, 47, 48, 147, 50, 21, 317, + 277, 18, 21, 152, 64, 58, 156, 155, 154, 277, + 154, 154, 154, 154, 154, 154, 154, 154, 154, 152, + 30, 353, 354, 355, 356, 357, 152, 152, 360, 361, + 362, 152, 364, 365, 152, 368, 152, 152, 315, 39, + 152, 374, 152, 152, 312, 152, 30, 315, 316, 317, + 155, 384, 349, 152, 387, 388, 30, 154, 376, 15, + 378, 379, 380, 15, 156, 152, 30, 385, 18, 152, + 152, 37, 152, 152, 152, 18, 152, 39, 152, 152, + 152, 152, 414, 152, 152, 57, 30, 419, 152, 422, + 423, 154, 425, 152, 427, 156, 152, 152, 431, 18, + 152, 155, 152, 152, 437, 438, 439, 154, 376, 377, + 378, 379, 380, 345, 152, 155, 155, 385, 386, 15, + 57, 152, 152, 152, 152, 152, 458, 459, 460, 461, + 281, 463, 464, 465, 152, 467, 158, 405, 289, 290, + 291, 155, 155, 155, 477, 39, 155, 155, 155, 155, + 155, 155, 485, 155, 487, 158, 155, 152, 15, 15, + 428, 479, 480, 481, 152, 15, 15, 499, 104, 104, + 104, 104, 265, 104, 104, 503, 503, 445, 511, 43, + 24, 406, 130, 50, 405, 3, 29, 519, 236, 521, + 522, 509, 428, 41, 557, 486, 529, 409, -1, -1, + 468, -1, -1, 471, 532, 532, -1, -1, -1, -1, + -1, 479, 480, 481, -1, -1, -1, 368, 486, -1, + -1, 554, 555, 374, -1, -1, 559, -1, -1, 562, + -1, -1, -1, 384, -1, -1, 387, 388, -1, -1, + -1, 509, 3, 4, 5, 6, 7, 8, 9, 10, + 11, 12, 13, 14, 15, 16, -1, -1, 19, 20, + -1, -1, -1, -1, -1, -1, -1, 28, -1, 30, + -1, 422, 423, -1, 425, -1, 427, -1, -1, -1, + 431, -1, -1, -1, -1, -1, 437, 438, 439, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, + 14, 15, 16, -1, -1, 19, 20, -1, -1, -1, + -1, -1, -1, -1, 28, -1, 30, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 477, -1, -1, -1, + -1, -1, -1, -1, 485, -1, 487, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, -1, -1, 19, 20, -1, -1, -1, -1, -1, + 511, -1, 28, -1, 30, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 40, -1, -1, -1, 529, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 350, -1, 352, 353, 354, -1, -1, -1, 358, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, 14, 15, 16, -1, -1, 19, 20, -1, -1, - -1, 486, -1, 488, 489, 28, -1, 30, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 15, 16, -1, -1, 19, 20, -1, -1, -1, -1, - -1, -1, -1, 28, -1, 30, 3, 4, 5, 6, + -1, -1, 153, -1, -1, 156, -1, -1, 159, -1, + 161, 162, -1, 554, 555, -1, -1, -1, 559, -1, + -1, 562, -1, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, -1, -1, 19, + 20, -1, -1, -1, -1, -1, -1, -1, 28, 153, + 30, -1, 156, -1, -1, 159, -1, 161, 162, -1, + 40, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 15, 16, -1, -1, 19, 20, -1, + -1, -1, -1, -1, -1, -1, 28, -1, 30, -1, + -1, -1, -1, -1, -1, -1, -1, 153, -1, -1, + 156, -1, -1, 159, -1, 161, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, -1, -1, 19, 20, -1, -1, -1, -1, -1, -1, -1, 28, -1, 30, -1, -1, -1, -1, -1, -1, - 449, 450, 451, 40, -1, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, -1, - -1, 19, 20, -1, -1, -1, -1, -1, 477, -1, - 28, -1, 30, -1, -1, -1, -1, -1, 131, -1, - -1, 134, 40, -1, 137, -1, 139, 140, -1, -1, - -1, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15, 16, -1, 131, 19, 20, 134, - -1, -1, 137, -1, 139, 140, 28, -1, 30, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, - 14, 15, 16, -1, 131, 19, 20, 134, -1, -1, - 137, -1, 139, -1, 28, -1, 30, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 40, -1, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 15, 16, -1, 131, 19, 20, 134, -1, -1, 137, - -1, 139, -1, 28, -1, 30, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 40, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - -1, -1, 19, 20, -1, -1, -1, -1, -1, 131, - -1, 28, 134, 30, 136, 137, -1, 139, -1, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, - 14, 15, 16, -1, -1, 19, 20, 131, -1, -1, - 134, -1, -1, 137, 28, 139, 30, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 16, -1, -1, 19, 20, -1, -1, -1, -1, -1, - -1, -1, 28, -1, 30, -1, 131, -1, -1, 134, - -1, -1, 137, -1, 139, 3, 4, 5, 6, 7, + -1, -1, -1, 40, -1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, -1, -1, 19, 20, -1, -1, -1, -1, -1, -1, -1, - 28, -1, 30, -1, 131, -1, -1, 134, -1, -1, - 137, -1, 139, -1, -1, -1, -1, -1, -1, -1, + 28, -1, 30, 153, -1, -1, 156, -1, -1, 159, + -1, 161, 40, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, -1, -1, 19, + 20, -1, -1, -1, -1, -1, -1, -1, 28, -1, + 30, 153, -1, -1, 156, -1, 158, 159, -1, 161, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, + 13, 14, 15, 16, -1, -1, 19, 20, -1, -1, + -1, -1, -1, -1, -1, 28, -1, 30, -1, -1, + -1, -1, -1, -1, -1, -1, 153, -1, -1, 156, + -1, -1, 159, -1, 161, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, -1, + -1, 19, 20, -1, -1, -1, -1, -1, -1, -1, + 28, -1, 30, -1, -1, 153, -1, -1, 156, -1, + -1, 159, -1, 161, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, -1, -1, + 19, 20, -1, -1, -1, -1, -1, -1, -1, 28, + -1, 30, -1, 153, -1, -1, 156, -1, -1, 159, + -1, 161, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, -1, 19, 20, -1, 22, 23, 24, -1, + 153, -1, 28, 156, 30, -1, 159, -1, 161, -1, + 27, 28, -1, 30, -1, -1, -1, 34, 35, 36, + -1, -1, -1, -1, -1, 42, 43, 44, 45, 46, + 47, 48, -1, 50, 51, -1, -1, -1, -1, -1, + -1, 58, 59, -1, -1, 153, 63, -1, 156, -1, + -1, 159, -1, 161, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, -1, -1, -1, -1, + -1, -1, -1, -1, 153, -1, -1, 156, -1, -1, + 159, -1, 161, -1, -1, -1, -1, -1, -1, -1, + -1, 127, -1, 129, 130, 131, 132, 133, -1, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, -1, -1, -1, -1, -1, + 156, -1, -1, 159, -1, 161, -1, -1, 164, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, -1, + 28, -1, 30, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 131, -1, -1, - 134, -1, -1, 137, -1, 139, -1, -1, -1, -1, - -1, 19, 20, -1, 22, 23, 24, -1, -1, -1, - 28, -1, 30, -1, -1, 131, -1, -1, 134, 27, - 28, 137, 30, 139, -1, -1, 34, 35, 36, -1, - -1, -1, -1, -1, 42, 43, 44, 45, 46, 47, - 48, -1, 50, 51, -1, -1, -1, -1, -1, -1, - 58, 59, -1, 131, -1, 63, 134, -1, -1, 137, - -1, 139, 80, 81, 82, 83, 84, 85, 86, 87, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 62, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, -1, -1, -1, -1, -1, 105, -1, 107, - 108, 109, 110, 111, -1, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, -1, -1, -1, -1, -1, 134, -1, -1, 137, - -1, 139, -1, -1, 142, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, -1, 28, -1, 30, -1, + 98, 99, 100, 101, -1, -1, -1, -1, 17, 18, + -1, -1, 21, 22, 23, 24, 25, 26, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 127, + -1, 129, 130, 131, 132, 133, -1, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 62, -1, -1, -1, -1, -1, -1, + -1, 159, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, -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, 127, -1, + 129, 130, 131, 132, 133, -1, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 38, -1, -1, -1, -1, -1, -1, -1, + 159, -1, -1, 49, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 60, 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 76, -1, -1, -1, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 62, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, -1, -1, - -1, -1, -1, 105, -1, 107, 108, 109, 110, 111, - -1, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, -1, -1, -1, - -1, -1, 17, 18, -1, 137, 21, 22, 23, 24, - 25, 26, -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, - -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, -1, -1, -1, -1, -1, - 105, -1, 107, 108, 109, 110, 111, -1, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 38, -1, -1, -1, -1, -1, - -1, -1, 137, -1, -1, 49, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 60, 61, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 76, -1, -1, -1, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, -1, - -1, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128 + -1, -1, -1, -1, -1, -1, 122, 123, 124, -1, + -1, 127, 128, 129, 130, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const unsigned char yystos[] = { - 0, 175, 176, 178, 0, 31, 34, 42, 43, 44, - 45, 46, 47, 48, 63, 156, 191, 193, 195, 28, - 30, 51, 59, 63, 155, 184, 195, 45, 47, 194, - 62, 65, 66, 67, 68, 69, 70, 71, 157, 189, - 29, 201, 202, 203, 52, 53, 54, 72, 181, 129, - 62, 27, 45, 47, 50, 58, 156, 177, 129, 189, - 30, 179, 18, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 19, 20, 131, - 134, 137, 139, 144, 164, 165, 166, 167, 168, 184, - 198, 32, 139, 190, 33, 140, 192, 202, 73, 74, - 75, 77, 78, 79, 155, 204, 205, 207, 129, 129, - 129, 129, 134, 182, 179, 164, 35, 36, 174, 174, - 174, 174, 18, 18, 18, 3, 140, 168, 169, 184, - 132, 141, 3, 166, 200, 4, 15, 5, 6, 7, - 8, 9, 10, 11, 12, 151, 152, 153, 38, 49, + 0, 199, 200, 202, 0, 31, 34, 42, 43, 44, + 45, 46, 47, 48, 63, 180, 215, 217, 219, 28, + 30, 51, 59, 63, 179, 208, 219, 45, 47, 218, + 62, 65, 66, 67, 68, 69, 70, 71, 181, 213, + 29, 225, 226, 227, 52, 53, 54, 72, 205, 151, + 62, 27, 45, 47, 50, 58, 180, 201, 151, 213, + 30, 203, 18, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 19, 20, 153, + 156, 159, 161, 166, 188, 189, 190, 191, 192, 208, + 222, 32, 161, 214, 33, 162, 216, 226, 73, 74, + 75, 77, 78, 79, 179, 228, 229, 231, 151, 151, + 151, 151, 156, 206, 203, 188, 35, 36, 198, 198, + 198, 198, 18, 18, 18, 3, 162, 192, 193, 208, + 154, 163, 3, 190, 224, 4, 15, 5, 6, 7, + 8, 9, 10, 11, 12, 175, 176, 177, 38, 49, 60, 61, 76, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 146, 147, 148, 149, 150, 211, 212, 214, 215, 30, - 55, 56, 180, 18, 30, 30, 183, 166, 166, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 151, 152, 154, 166, 171, 166, 135, 135, 130, 140, - 132, 40, 169, 170, 17, 18, 21, 22, 23, 24, - 25, 26, 62, 105, 107, 113, 114, 115, 137, 146, - 147, 148, 149, 150, 172, 197, 198, 199, 199, 199, - 199, 200, 60, 157, 166, 166, 200, 166, 166, 208, - 200, 200, 200, 200, 200, 166, 166, 166, 200, 200, - 157, 103, 104, 130, 136, 130, 162, 162, 25, 26, - 17, 18, 145, 18, 21, 22, 23, 24, 134, 137, - 139, 142, 172, 198, 162, 162, 168, 168, 168, 40, - 166, 186, 187, 188, 130, 133, 64, 196, 132, 132, - 132, 132, 132, 171, 173, 132, 132, 132, 132, 132, - 130, 130, 164, 130, 159, 130, 159, 199, 134, 130, - 130, 130, 130, 130, 130, 199, 199, 199, 130, 39, - 164, 166, 200, 30, 37, 57, 160, 163, 136, 173, - 173, 140, 173, 30, 136, 138, 184, 185, 130, 133, - 40, 30, 171, 171, 171, 171, 171, 130, 138, 171, - 171, 171, 171, 171, 15, 15, 199, 10, 57, 10, - 130, 213, 199, 134, 200, 166, 200, 200, 200, 130, - 130, 130, 200, 166, 199, 199, 130, 30, 18, 162, - 136, 138, 140, 40, 186, 160, 161, 130, 213, 130, - 130, 130, 130, 171, 130, 130, 130, 130, 39, 199, - 199, 132, 199, 18, 199, 200, 209, 130, 199, 130, - 130, 130, 199, 199, 199, 132, 166, 57, 158, 30, - 133, 171, 171, 171, 171, 171, 171, 171, 171, 166, - 130, 134, 209, 210, 130, 159, 159, 130, 199, 130, - 200, 200, 200, 210, 199, 18, 130, 133, 130, 130, - 133, 133, 133, 133, 133, 15, 136, 153, 206, 133, - 200, 136, 199, 133, 171, 171, 171, 199, 197, 136, - 153, 39, 136, 133, 133, 133, 130, 197, 15, 15, - 130, 199, 199, 15, 204, 199, 15, 199 + 97, 98, 99, 100, 101, 122, 123, 124, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 168, 169, 170, 171, 173, 174, 235, 236, + 238, 239, 30, 55, 56, 204, 18, 30, 30, 207, + 190, 190, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 175, 176, 178, 190, 195, 190, 157, + 157, 152, 162, 154, 40, 193, 194, 17, 18, 21, + 22, 23, 24, 25, 26, 62, 127, 129, 135, 136, + 137, 159, 168, 169, 170, 171, 173, 174, 196, 221, + 222, 223, 223, 223, 223, 224, 60, 181, 190, 190, + 224, 190, 190, 232, 224, 224, 224, 224, 224, 190, + 190, 190, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 172, 224, 224, 181, 125, 126, 152, 158, + 152, 186, 186, 25, 26, 17, 18, 167, 18, 21, + 22, 23, 24, 156, 159, 161, 164, 196, 222, 186, + 186, 192, 192, 192, 40, 190, 210, 211, 212, 152, + 155, 64, 220, 154, 154, 154, 154, 154, 195, 197, + 154, 154, 154, 172, 154, 154, 152, 152, 188, 152, + 183, 152, 183, 223, 156, 152, 152, 152, 152, 152, + 152, 223, 223, 223, 190, 152, 39, 188, 190, 224, + 30, 37, 57, 184, 187, 158, 197, 197, 162, 197, + 30, 158, 160, 208, 209, 152, 155, 40, 30, 195, + 195, 195, 195, 195, 152, 160, 195, 195, 195, 154, + 195, 195, 15, 15, 223, 10, 57, 10, 152, 237, + 223, 156, 224, 190, 224, 224, 224, 152, 152, 152, + 223, 224, 190, 223, 223, 152, 30, 18, 186, 158, + 160, 162, 40, 210, 184, 185, 152, 237, 152, 152, + 152, 152, 195, 152, 152, 152, 195, 152, 39, 223, + 223, 154, 223, 18, 223, 224, 233, 152, 223, 152, + 152, 152, 223, 223, 223, 152, 154, 190, 57, 182, + 30, 155, 195, 195, 195, 195, 195, 195, 195, 152, + 195, 190, 152, 156, 233, 234, 152, 183, 183, 152, + 223, 152, 224, 224, 224, 223, 234, 223, 18, 152, + 155, 152, 152, 155, 155, 155, 195, 155, 155, 15, + 158, 177, 230, 155, 224, 158, 223, 155, 155, 195, + 195, 195, 155, 223, 221, 158, 177, 39, 158, 155, + 155, 155, 152, 221, 15, 15, 152, 223, 223, 15, + 228, 223, 15, 223 }; #define yyerrok (yyerrstatus = 0) @@ -2240,27 +2377,27 @@ yyreduce: YY_REDUCE_PRINT (yyn); switch (yyn) { - case 55: -#line 321 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 77: +#line 356 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[-1].String); ;} break; - case 56: -#line 324 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 78: +#line 359 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(""); ;} break; - case 64: -#line 331 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 86: +#line 366 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(""); ;} break; - case 71: -#line 336 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 93: +#line 371 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2268,28 +2405,28 @@ yyreduce: ;} break; - case 72: -#line 341 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 94: +#line 376 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(""); ;} break; - case 73: -#line 346 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 95: +#line 381 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 74: -#line 347 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 96: +#line 382 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); (yyval.String) = (yyvsp[-1].String); ;} break; - case 75: -#line 350 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 97: +#line 385 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 76: -#line 351 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 98: +#line 386 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-1].String)->insert(0, ", "); *(yyvsp[-1].String) += " " + *(yyvsp[0].String); @@ -2298,8 +2435,8 @@ yyreduce: ;} break; - case 77: -#line 359 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 99: +#line 394 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2307,18 +2444,18 @@ yyreduce: ;} break; - case 78: -#line 365 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 100: +#line 400 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 80: -#line 369 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 102: +#line 404 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 81: -#line 370 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 103: +#line 405 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-1].String)->insert(0, ", "); if (!(yyvsp[0].String)->empty()) @@ -2328,8 +2465,8 @@ yyreduce: ;} break; - case 83: -#line 380 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 105: +#line 415 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2337,31 +2474,31 @@ yyreduce: ;} break; - case 101: -#line 402 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 123: +#line 437 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Type).newTy = (yyvsp[0].String); (yyval.Type).oldTy = OpaqueTy; ;} break; - case 102: -#line 406 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 124: +#line 441 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Type).newTy = (yyvsp[0].String); (yyval.Type).oldTy = UnresolvedTy; ;} break; - case 103: -#line 410 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 125: +#line 445 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Type) = (yyvsp[0].Type); ;} break; - case 104: -#line 413 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 126: +#line 448 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Type UpReference (yyvsp[0].String)->insert(0, "\\"); (yyval.Type).newTy = (yyvsp[0].String); @@ -2369,8 +2506,8 @@ yyreduce: ;} break; - case 105: -#line 418 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 127: +#line 453 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Function derived type? *(yyvsp[-3].Type).newTy += "( " + *(yyvsp[-1].String) + " )"; delete (yyvsp[-1].String); @@ -2379,8 +2516,8 @@ yyreduce: ;} break; - case 106: -#line 424 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 128: +#line 459 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Sized array type? (yyvsp[-3].String)->insert(0,"[ "); *(yyvsp[-3].String) += " x " + *(yyvsp[-1].Type).newTy + " ]"; @@ -2391,8 +2528,8 @@ yyreduce: ;} break; - case 107: -#line 432 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 129: +#line 467 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Packed array type? (yyvsp[-3].String)->insert(0,"< "); *(yyvsp[-3].String) += " x " + *(yyvsp[-1].Type).newTy + " >"; @@ -2403,8 +2540,8 @@ yyreduce: ;} break; - case 108: -#line 440 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 130: +#line 475 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Structure type? (yyvsp[-1].String)->insert(0, "{ "); *(yyvsp[-1].String) += " }"; @@ -2413,16 +2550,16 @@ yyreduce: ;} break; - case 109: -#line 446 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 131: +#line 481 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Empty structure type? (yyval.Type).newTy = new std::string("{}"); (yyval.Type).oldTy = StructTy; ;} break; - case 110: -#line 450 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 132: +#line 485 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Pointer type? *(yyvsp[-1].Type).newTy += '*'; (yyval.Type).elemTy = (yyvsp[-1].Type).oldTy; @@ -2431,15 +2568,15 @@ yyreduce: ;} break; - case 111: -#line 461 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 133: +#line 496 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].Type).newTy; ;} break; - case 112: -#line 464 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 134: +#line 499 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", " + *(yyvsp[0].Type).newTy; delete (yyvsp[0].Type).newTy; @@ -2447,8 +2584,8 @@ yyreduce: ;} break; - case 114: -#line 473 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 136: +#line 508 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", ..."; delete (yyvsp[0].String); @@ -2456,22 +2593,22 @@ yyreduce: ;} break; - case 115: -#line 478 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 137: +#line 513 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); ;} break; - case 116: -#line 481 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 138: +#line 516 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 117: -#line 491 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 139: +#line 526 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Nonempty unsized arr (yyval.Const).type = (yyvsp[-3].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-3].Type).newTy); @@ -2480,8 +2617,8 @@ yyreduce: ;} break; - case 118: -#line 497 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 140: +#line 532 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-2].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-2].Type).newTy); @@ -2489,8 +2626,8 @@ yyreduce: ;} break; - case 119: -#line 502 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 141: +#line 537 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-2].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-2].Type).newTy); @@ -2499,8 +2636,8 @@ yyreduce: ;} break; - case 120: -#line 508 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 142: +#line 543 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Nonempty unsized arr (yyval.Const).type = (yyvsp[-3].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-3].Type).newTy); @@ -2509,8 +2646,8 @@ yyreduce: ;} break; - case 121: -#line 514 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 143: +#line 549 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-3].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-3].Type).newTy); @@ -2519,8 +2656,8 @@ yyreduce: ;} break; - case 122: -#line 520 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 144: +#line 555 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-2].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-2].Type).newTy); @@ -2528,8 +2665,8 @@ yyreduce: ;} break; - case 123: -#line 525 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 145: +#line 560 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2538,8 +2675,8 @@ yyreduce: ;} break; - case 124: -#line 531 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 146: +#line 566 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2548,8 +2685,8 @@ yyreduce: ;} break; - case 125: -#line 537 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 147: +#line 572 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2558,8 +2695,8 @@ yyreduce: ;} break; - case 126: -#line 543 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 148: +#line 578 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2568,8 +2705,8 @@ yyreduce: ;} break; - case 127: -#line 549 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 149: +#line 584 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2578,8 +2715,8 @@ yyreduce: ;} break; - case 128: -#line 555 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 150: +#line 590 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // integral constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2588,8 +2725,8 @@ yyreduce: ;} break; - case 129: -#line 561 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 151: +#line 596 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // integral constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2598,8 +2735,8 @@ yyreduce: ;} break; - case 130: -#line 567 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 152: +#line 602 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Boolean constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2608,8 +2745,8 @@ yyreduce: ;} break; - case 131: -#line 573 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 153: +#line 608 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Boolean constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2618,8 +2755,8 @@ yyreduce: ;} break; - case 132: -#line 579 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 154: +#line 614 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Float & Double constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2628,8 +2765,8 @@ yyreduce: ;} break; - case 133: -#line 587 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 155: +#line 622 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { std::string source = *(yyvsp[-3].Const).cnst; TypeInfo DstTy = (yyvsp[-1].Type); @@ -2646,8 +2783,8 @@ yyreduce: ;} break; - case 134: -#line 601 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 156: +#line 636 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-4].String) += "(" + *(yyvsp[-2].Const).cnst; for (unsigned i = 0; i < (yyvsp[-1].ValList)->size(); ++i) { @@ -2662,8 +2799,8 @@ yyreduce: ;} break; - case 135: -#line 613 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 157: +#line 648 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-7].String) += "(" + *(yyvsp[-5].Const).cnst + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-5].Const).destroy(); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2671,8 +2808,8 @@ yyreduce: ;} break; - case 136: -#line 618 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 158: +#line 653 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { const char* op = getDivRemOpcode(*(yyvsp[-5].String), (yyvsp[-3].Const).type); (yyval.String) = new std::string(op); @@ -2681,8 +2818,8 @@ yyreduce: ;} break; - case 137: -#line 624 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 159: +#line 659 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2690,17 +2827,29 @@ yyreduce: ;} break; - case 138: -#line 629 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 160: +#line 664 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { +#if UPGRADE_SETCOND_OPS + *(yyvsp[-5].String) = getCompareOp(*(yyvsp[-5].String), (yyvsp[-3].Const).type); +#endif *(yyvsp[-5].String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); (yyval.String) = (yyvsp[-5].String); ;} break; - case 139: -#line 634 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 161: +#line 672 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + { + *(yyvsp[-6].String) += "(" + *(yyvsp[-5].String) + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; + delete (yyvsp[-5].String); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); + (yyval.String) = (yyvsp[-6].String); + ;} + break; + + case 162: +#line 677 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { const char* shiftop = (yyvsp[-5].String)->c_str(); if (*(yyvsp[-5].String) == "shr") @@ -2711,8 +2860,8 @@ yyreduce: ;} break; - case 140: -#line 642 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 163: +#line 685 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2720,8 +2869,8 @@ yyreduce: ;} break; - case 141: -#line 647 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 164: +#line 690 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-7].String) += "(" + *(yyvsp[-5].Const).cnst + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-5].Const).destroy(); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2729,8 +2878,8 @@ yyreduce: ;} break; - case 142: -#line 652 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 165: +#line 695 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-7].String) += "(" + *(yyvsp[-5].Const).cnst + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-5].Const).destroy(); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2738,8 +2887,8 @@ yyreduce: ;} break; - case 143: -#line 662 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 166: +#line 705 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", " + *(yyvsp[0].Const).cnst; (yyvsp[0].Const).destroy(); @@ -2747,26 +2896,26 @@ yyreduce: ;} break; - case 144: -#line 667 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 167: +#line 710 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(*(yyvsp[0].Const).cnst); (yyvsp[0].Const).destroy(); ;} break; - case 147: -#line 682 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 170: +#line 725 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { ;} break; - case 148: -#line 687 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 171: +#line 730 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 149: -#line 690 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 172: +#line 733 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -2774,34 +2923,34 @@ yyreduce: ;} break; - case 150: -#line 695 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 173: +#line 738 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << "module asm " << " " << *(yyvsp[0].String) << "\n"; (yyval.String) = 0; ;} break; - case 151: -#line 699 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 174: +#line 742 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << "implementation\n"; (yyval.String) = 0; ;} break; - case 152: -#line 703 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 175: +#line 746 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 154: -#line 705 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 177: +#line 748 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); *(yyval.String) = "external"; ;} break; - case 155: -#line 708 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 178: +#line 751 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { EnumeratedTypes.push_back((yyvsp[0].Type)); if (!(yyvsp[-2].String)->empty()) { @@ -2816,8 +2965,8 @@ yyreduce: ;} break; - case 156: -#line 720 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 179: +#line 763 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Function prototypes can be in const pool *O << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -2825,8 +2974,8 @@ yyreduce: ;} break; - case 157: -#line 725 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 180: +#line 768 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Asm blocks can be in the const pool *O << *(yyvsp[-2].String) << " " << *(yyvsp[-1].String) << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[-2].String); delete (yyvsp[-1].String); delete (yyvsp[0].String); @@ -2834,8 +2983,8 @@ yyreduce: ;} break; - case 158: -#line 730 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 181: +#line 773 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-4].String)->empty()) *O << *(yyvsp[-4].String) << " = "; @@ -2845,8 +2994,8 @@ yyreduce: ;} break; - case 159: -#line 737 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 182: +#line 780 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-4].String)->empty()) *O << *(yyvsp[-4].String) << " = "; @@ -2856,8 +3005,8 @@ yyreduce: ;} break; - case 160: -#line 744 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 183: +#line 787 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-4].String)->empty()) *O << *(yyvsp[-4].String) << " = "; @@ -2867,8 +3016,8 @@ yyreduce: ;} break; - case 161: -#line 751 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 184: +#line 794 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-4].String)->empty()) *O << *(yyvsp[-4].String) << " = "; @@ -2878,8 +3027,8 @@ yyreduce: ;} break; - case 162: -#line 758 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 185: +#line 801 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << *(yyvsp[-1].String) << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[-1].String); delete (yyvsp[0].String); @@ -2887,8 +3036,8 @@ yyreduce: ;} break; - case 163: -#line 763 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 186: +#line 806 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << *(yyvsp[-2].String) << " = " << *(yyvsp[0].String) << "\n"; delete (yyvsp[-2].String); delete (yyvsp[0].String); @@ -2896,15 +3045,15 @@ yyreduce: ;} break; - case 164: -#line 768 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 187: +#line 811 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 168: -#line 778 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 191: +#line 821 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " = " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2912,8 +3061,8 @@ yyreduce: ;} break; - case 169: -#line 783 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 192: +#line 826 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " = " + *(yyvsp[0].String); if (*(yyvsp[0].String) == "64") @@ -2923,8 +3072,8 @@ yyreduce: ;} break; - case 170: -#line 790 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 193: +#line 833 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " = " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2932,8 +3081,8 @@ yyreduce: ;} break; - case 171: -#line 795 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 194: +#line 838 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " = " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2941,8 +3090,8 @@ yyreduce: ;} break; - case 172: -#line 802 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 195: +#line 845 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-1].String)->insert(0, "[ "); *(yyvsp[-1].String) += " ]"; @@ -2950,8 +3099,8 @@ yyreduce: ;} break; - case 173: -#line 809 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 196: +#line 852 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2959,20 +3108,20 @@ yyreduce: ;} break; - case 175: -#line 815 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 198: +#line 858 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 179: -#line 824 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 202: +#line 867 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 180: -#line 826 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 203: +#line 869 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[-1].Type).newTy; if (!(yyvsp[0].String)->empty()) @@ -2981,30 +3130,30 @@ yyreduce: ;} break; - case 181: -#line 833 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 204: +#line 876 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", " + *(yyvsp[0].String); delete (yyvsp[0].String); ;} break; - case 182: -#line 837 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 205: +#line 880 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); ;} break; - case 183: -#line 841 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 206: +#line 884 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); ;} break; - case 184: -#line 844 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 207: +#line 887 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", ..."; (yyval.String) = (yyvsp[-2].String); @@ -3012,20 +3161,20 @@ yyreduce: ;} break; - case 185: -#line 849 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 208: +#line 892 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); ;} break; - case 186: -#line 852 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 209: +#line 895 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 187: -#line 855 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 210: +#line 898 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-7].String)->empty()) { *(yyvsp[-7].String) += " "; @@ -3046,18 +3195,18 @@ yyreduce: ;} break; - case 188: -#line 874 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 211: +#line 917 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string("{"); delete (yyvsp[0].String); ;} break; - case 189: -#line 875 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 212: +#line 918 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string ("{"); ;} break; - case 190: -#line 877 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 213: +#line 920 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-2].String)->empty()) { *O << *(yyvsp[-2].String) << " "; @@ -3068,18 +3217,18 @@ yyreduce: ;} break; - case 191: -#line 886 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 214: +#line 929 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string("}"); delete (yyvsp[0].String); ;} break; - case 192: -#line 887 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 215: +#line 930 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string("}"); ;} break; - case 193: -#line 889 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 216: +#line 932 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if ((yyvsp[-1].String)) *O << *(yyvsp[-1].String); @@ -3088,13 +3237,13 @@ yyreduce: ;} break; - case 194: -#line 897 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 217: +#line 940 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 197: -#line 903 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 220: +#line 946 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-1].String)->empty()) *(yyvsp[-2].String) += " " + *(yyvsp[-1].String); @@ -3105,13 +3254,13 @@ yyreduce: ;} break; - case 198: -#line 916 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 221: +#line 959 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 208: -#line 922 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 231: +#line 965 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-1].String)->insert(0, "<"); *(yyvsp[-1].String) += ">"; @@ -3119,8 +3268,8 @@ yyreduce: ;} break; - case 210: -#line 928 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 233: +#line 971 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-3].String)->empty()) { *(yyvsp[-4].String) += " " + *(yyvsp[-3].String); @@ -3131,8 +3280,8 @@ yyreduce: ;} break; - case 213: -#line 941 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 236: +#line 984 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Value).val = (yyvsp[0].String); (yyval.Value).constant = false; @@ -3141,8 +3290,8 @@ yyreduce: ;} break; - case 214: -#line 947 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 237: +#line 990 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Value).val = (yyvsp[0].String); (yyval.Value).constant = true; @@ -3151,8 +3300,8 @@ yyreduce: ;} break; - case 215: -#line 958 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 238: +#line 1001 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Value) = (yyvsp[0].Value); (yyval.Value).type = (yyvsp[-1].Type); @@ -3160,29 +3309,29 @@ yyreduce: ;} break; - case 216: -#line 964 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 239: +#line 1007 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 217: -#line 967 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 240: +#line 1010 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Do not allow functions with 0 basic blocks (yyval.String) = 0; ;} break; - case 218: -#line 975 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 241: +#line 1018 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 219: -#line 979 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 242: +#line 1022 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -3190,15 +3339,15 @@ yyreduce: ;} break; - case 220: -#line 984 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 243: +#line 1027 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 221: -#line 987 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 244: +#line 1030 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -3206,13 +3355,13 @@ yyreduce: ;} break; - case 223: -#line 993 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 246: +#line 1036 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); *(yyval.String) = "unwind"; ;} break; - case 224: -#line 995 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 247: +#line 1038 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Return with a result... *O << " " << *(yyvsp[-1].String) << " " << *(yyvsp[0].Value).val << "\n"; delete (yyvsp[-1].String); (yyvsp[0].Value).destroy(); @@ -3220,8 +3369,8 @@ yyreduce: ;} break; - case 225: -#line 1000 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 248: +#line 1043 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Return with no result... *O << " " << *(yyvsp[-1].String) << " " << *(yyvsp[0].Type).newTy << "\n"; delete (yyvsp[-1].String); (yyvsp[0].Type).destroy(); @@ -3229,8 +3378,8 @@ yyreduce: ;} break; - case 226: -#line 1005 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 249: +#line 1048 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Unconditional Branch... *O << " " << *(yyvsp[-2].String) << " " << *(yyvsp[-1].Type).newTy << " " << *(yyvsp[0].Value).val << "\n"; delete (yyvsp[-2].String); (yyvsp[-1].Type).destroy(); (yyvsp[0].Value).destroy(); @@ -3238,8 +3387,8 @@ yyreduce: ;} break; - case 227: -#line 1010 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 250: +#line 1053 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[-8].String) << " " << *(yyvsp[-7].Type).newTy << " " << *(yyvsp[-6].Value).val << ", " << *(yyvsp[-4].Type).newTy << " " << *(yyvsp[-3].Value).val << ", " << *(yyvsp[-1].Type).newTy << " " @@ -3250,8 +3399,8 @@ yyreduce: ;} break; - case 228: -#line 1018 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 251: +#line 1061 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[-8].String) << " " << *(yyvsp[-7].Type).newTy << " " << *(yyvsp[-6].Value).val << ", " << *(yyvsp[-4].Type).newTy << " " << *(yyvsp[-3].Value).val << " [" << *(yyvsp[-1].String) << " ]\n"; @@ -3261,8 +3410,8 @@ yyreduce: ;} break; - case 229: -#line 1025 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 252: +#line 1068 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[-7].String) << " " << *(yyvsp[-6].Type).newTy << " " << *(yyvsp[-5].Value).val << ", " << *(yyvsp[-3].Type).newTy << " " << *(yyvsp[-2].Value).val << "[]\n"; @@ -3271,8 +3420,8 @@ yyreduce: ;} break; - case 230: -#line 1032 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 253: +#line 1075 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " "; if (!(yyvsp[-13].String)->empty()) @@ -3294,8 +3443,8 @@ yyreduce: ;} break; - case 231: -#line 1051 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 254: +#line 1094 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -3303,8 +3452,8 @@ yyreduce: ;} break; - case 232: -#line 1056 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 255: +#line 1099 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -3312,8 +3461,8 @@ yyreduce: ;} break; - case 233: -#line 1062 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 256: +#line 1105 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Type).newTy + " " + *(yyvsp[-3].String) + ", " + *(yyvsp[-1].Type).newTy + " " + *(yyvsp[0].Value).val; (yyvsp[-4].Type).destroy(); delete (yyvsp[-3].String); (yyvsp[-1].Type).destroy(); (yyvsp[0].Value).destroy(); @@ -3321,8 +3470,8 @@ yyreduce: ;} break; - case 234: -#line 1067 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 257: +#line 1110 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-3].String)->insert(0, *(yyvsp[-4].Type).newTy + " " ); *(yyvsp[-3].String) += ", " + *(yyvsp[-1].Type).newTy + " " + *(yyvsp[0].Value).val; @@ -3331,8 +3480,8 @@ yyreduce: ;} break; - case 235: -#line 1075 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 258: +#line 1118 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-1].String)->empty()) *(yyvsp[-1].String) += " = "; @@ -3342,8 +3491,8 @@ yyreduce: ;} break; - case 236: -#line 1084 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 259: +#line 1127 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Used for PHI nodes (yyvsp[-3].Value).val->insert(0, *(yyvsp[-5].Type).newTy + "["); *(yyvsp[-3].Value).val += "," + *(yyvsp[-1].Value).val + "]"; @@ -3353,8 +3502,8 @@ yyreduce: ;} break; - case 237: -#line 1091 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 260: +#line 1134 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-6].String) += ", [" + *(yyvsp[-3].Value).val + "," + *(yyvsp[-1].Value).val + "]"; (yyvsp[-3].Value).destroy(); (yyvsp[-1].Value).destroy(); @@ -3362,34 +3511,34 @@ yyreduce: ;} break; - case 238: -#line 1099 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 261: +#line 1142 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = new ValueList(); (yyval.ValList)->push_back((yyvsp[0].Value)); ;} break; - case 239: -#line 1103 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 262: +#line 1146 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-2].ValList)->push_back((yyvsp[0].Value)); (yyval.ValList) = (yyvsp[-2].ValList); ;} break; - case 240: -#line 1110 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 263: +#line 1153 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = (yyvsp[0].ValList); ;} break; - case 241: -#line 1111 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 264: +#line 1154 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = new ValueList(); ;} break; - case 242: -#line 1115 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 265: +#line 1158 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -3397,8 +3546,8 @@ yyreduce: ;} break; - case 244: -#line 1123 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 267: +#line 1166 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { const char* op = getDivRemOpcode(*(yyvsp[-4].String), (yyvsp[-3].Type)); (yyval.String) = new std::string(op); @@ -3407,8 +3556,8 @@ yyreduce: ;} break; - case 245: -#line 1129 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 268: +#line 1172 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-4].String) += " " + *(yyvsp[-3].Type).newTy + " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-3].Type).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3416,17 +3565,29 @@ yyreduce: ;} break; - case 246: -#line 1134 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 269: +#line 1177 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { +#if UPGRADE_SETCOND_OPS + *(yyvsp[-4].String) = getCompareOp(*(yyvsp[-4].String), (yyvsp[-3].Type)); +#endif *(yyvsp[-4].String) += " " + *(yyvsp[-3].Type).newTy + " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-3].Type).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); (yyval.String) = (yyvsp[-4].String); ;} break; - case 247: -#line 1139 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 270: +#line 1185 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + { + *(yyvsp[-6].String) += " " + *(yyvsp[-5].String) + " " + *(yyvsp[-3].Value).val + "," + *(yyvsp[-1].Value).val + ")"; + delete (yyvsp[-5].String); (yyvsp[-3].Value).destroy(); (yyvsp[-1].Value).destroy(); + (yyval.String) = (yyvsp[-6].String); + ;} + break; + + case 271: +#line 1190 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].Value).val; (yyvsp[0].Value).destroy(); @@ -3434,8 +3595,8 @@ yyreduce: ;} break; - case 248: -#line 1144 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 272: +#line 1195 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { const char* shiftop = (yyvsp[-3].String)->c_str(); if (*(yyvsp[-3].String) == "shr") @@ -3446,8 +3607,8 @@ yyreduce: ;} break; - case 249: -#line 1152 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 273: +#line 1203 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { std::string source = *(yyvsp[-2].Value).val; TypeInfo SrcTy = (yyvsp[-2].Value).type; @@ -3464,8 +3625,8 @@ yyreduce: ;} break; - case 250: -#line 1166 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 274: +#line 1217 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Value).val + ", " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-4].Value).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3473,8 +3634,8 @@ yyreduce: ;} break; - case 251: -#line 1171 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 275: +#line 1222 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-3].String) += " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Type).newTy; (yyvsp[-2].Value).destroy(); (yyvsp[0].Type).destroy(); @@ -3482,8 +3643,8 @@ yyreduce: ;} break; - case 252: -#line 1176 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 276: +#line 1227 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-3].String) += " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3491,8 +3652,8 @@ yyreduce: ;} break; - case 253: -#line 1181 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 277: +#line 1232 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Value).val + ", " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-4].Value).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3500,8 +3661,8 @@ yyreduce: ;} break; - case 254: -#line 1186 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 278: +#line 1237 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Value).val + ", " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-4].Value).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3509,8 +3670,8 @@ yyreduce: ;} break; - case 255: -#line 1191 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 279: +#line 1242 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -3518,8 +3679,8 @@ yyreduce: ;} break; - case 256: -#line 1196 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 280: +#line 1247 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-5].String)->empty()) *(yyvsp[-6].String) += " " + *(yyvsp[-5].String); @@ -3539,23 +3700,23 @@ yyreduce: ;} break; - case 258: -#line 1218 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 282: +#line 1269 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = (yyvsp[0].ValList); ;} break; - case 259: -#line 1219 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 283: +#line 1270 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = new ValueList(); ;} break; - case 261: -#line 1224 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 285: +#line 1275 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 262: -#line 1227 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 286: +#line 1278 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " " + *(yyvsp[-1].Type).newTy; if (!(yyvsp[0].String)->empty()) @@ -3565,8 +3726,8 @@ yyreduce: ;} break; - case 263: -#line 1234 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 287: +#line 1285 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Type).newTy + ", " + *(yyvsp[-2].Type).newTy + " " + *(yyvsp[-1].Value).val; if (!(yyvsp[0].String)->empty()) @@ -3576,8 +3737,8 @@ yyreduce: ;} break; - case 264: -#line 1241 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 288: +#line 1292 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " " + *(yyvsp[-1].Type).newTy; if (!(yyvsp[0].String)->empty()) @@ -3587,8 +3748,8 @@ yyreduce: ;} break; - case 265: -#line 1248 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 289: +#line 1299 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Type).newTy + ", " + *(yyvsp[-2].Type).newTy + " " + *(yyvsp[-1].Value).val; if (!(yyvsp[0].String)->empty()) @@ -3598,8 +3759,8 @@ yyreduce: ;} break; - case 266: -#line 1255 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 290: +#line 1306 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].Value).val; (yyvsp[0].Value).destroy(); @@ -3607,8 +3768,8 @@ yyreduce: ;} break; - case 267: -#line 1260 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 291: +#line 1311 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-3].String)->empty()) *(yyvsp[-3].String) += " "; @@ -3618,8 +3779,8 @@ yyreduce: ;} break; - case 268: -#line 1267 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 292: +#line 1318 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-5].String)->empty()) *(yyvsp[-5].String) += " "; @@ -3629,8 +3790,8 @@ yyreduce: ;} break; - case 269: -#line 1274 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 293: +#line 1325 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Upgrade the indices for (unsigned i = 0; i < (yyvsp[0].ValList)->size(); ++i) { @@ -3661,7 +3822,7 @@ yyreduce: } /* Line 1126 of yacc.c. */ -#line 3665 "UpgradeParser.tab.c" +#line 3826 "UpgradeParser.tab.c" yyvsp -= yylen; yyssp -= yylen; @@ -3929,7 +4090,7 @@ yyreturn: } -#line 1298 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" +#line 1349 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" int yyerror(const char *ErrorMsg) { diff --git a/tools/llvm-upgrade/UpgradeParser.cpp.cvs b/tools/llvm-upgrade/UpgradeParser.cpp.cvs index 843dd33c4ef..addd743b667 100644 --- a/tools/llvm-upgrade/UpgradeParser.cpp.cvs +++ b/tools/llvm-upgrade/UpgradeParser.cpp.cvs @@ -161,35 +161,57 @@ SETGT = 352, SETEQ = 353, SETNE = 354, - MALLOC = 355, - ALLOCA = 356, - FREE = 357, - LOAD = 358, - STORE = 359, - GETELEMENTPTR = 360, - PHI_TOK = 361, - SELECT = 362, - SHL = 363, - SHR = 364, - ASHR = 365, - LSHR = 366, - VAARG = 367, - EXTRACTELEMENT = 368, - INSERTELEMENT = 369, - SHUFFLEVECTOR = 370, - CAST = 371, - TRUNC = 372, - ZEXT = 373, - SEXT = 374, - FPTRUNC = 375, - FPEXT = 376, - FPTOUI = 377, - FPTOSI = 378, - UITOFP = 379, - SITOFP = 380, - PTRTOINT = 381, - INTTOPTR = 382, - BITCAST = 383 + ICMP = 355, + FCMP = 356, + EQ = 357, + NE = 358, + SLT = 359, + SGT = 360, + SLE = 361, + SGE = 362, + OEQ = 363, + ONE = 364, + OLT = 365, + OGT = 366, + OLE = 367, + OGE = 368, + ORD = 369, + UNO = 370, + UEQ = 371, + UNE = 372, + ULT = 373, + UGT = 374, + ULE = 375, + UGE = 376, + MALLOC = 377, + ALLOCA = 378, + FREE = 379, + LOAD = 380, + STORE = 381, + GETELEMENTPTR = 382, + PHI_TOK = 383, + SELECT = 384, + SHL = 385, + SHR = 386, + ASHR = 387, + LSHR = 388, + VAARG = 389, + EXTRACTELEMENT = 390, + INSERTELEMENT = 391, + SHUFFLEVECTOR = 392, + CAST = 393, + TRUNC = 394, + ZEXT = 395, + SEXT = 396, + FPTRUNC = 397, + FPEXT = 398, + FPTOUI = 399, + FPTOSI = 400, + UITOFP = 401, + SITOFP = 402, + PTRTOINT = 403, + INTTOPTR = 404, + BITCAST = 405 }; #endif /* Tokens. */ @@ -290,35 +312,57 @@ #define SETGT 352 #define SETEQ 353 #define SETNE 354 -#define MALLOC 355 -#define ALLOCA 356 -#define FREE 357 -#define LOAD 358 -#define STORE 359 -#define GETELEMENTPTR 360 -#define PHI_TOK 361 -#define SELECT 362 -#define SHL 363 -#define SHR 364 -#define ASHR 365 -#define LSHR 366 -#define VAARG 367 -#define EXTRACTELEMENT 368 -#define INSERTELEMENT 369 -#define SHUFFLEVECTOR 370 -#define CAST 371 -#define TRUNC 372 -#define ZEXT 373 -#define SEXT 374 -#define FPTRUNC 375 -#define FPEXT 376 -#define FPTOUI 377 -#define FPTOSI 378 -#define UITOFP 379 -#define SITOFP 380 -#define PTRTOINT 381 -#define INTTOPTR 382 -#define BITCAST 383 +#define ICMP 355 +#define FCMP 356 +#define EQ 357 +#define NE 358 +#define SLT 359 +#define SGT 360 +#define SLE 361 +#define SGE 362 +#define OEQ 363 +#define ONE 364 +#define OLT 365 +#define OGT 366 +#define OLE 367 +#define OGE 368 +#define ORD 369 +#define UNO 370 +#define UEQ 371 +#define UNE 372 +#define ULT 373 +#define UGT 374 +#define ULE 375 +#define UGE 376 +#define MALLOC 377 +#define ALLOCA 378 +#define FREE 379 +#define LOAD 380 +#define STORE 381 +#define GETELEMENTPTR 382 +#define PHI_TOK 383 +#define SELECT 384 +#define SHL 385 +#define SHR 386 +#define ASHR 387 +#define LSHR 388 +#define VAARG 389 +#define EXTRACTELEMENT 390 +#define INSERTELEMENT 391 +#define SHUFFLEVECTOR 392 +#define CAST 393 +#define TRUNC 394 +#define ZEXT 395 +#define SEXT 396 +#define FPTRUNC 397 +#define FPEXT 398 +#define FPTOUI 399 +#define FPTOSI 400 +#define UITOFP 401 +#define SITOFP 402 +#define PTRTOINT 403 +#define INTTOPTR 404 +#define BITCAST 405 @@ -336,6 +380,7 @@ #define YYERROR_VERBOSE 1 #define YYINCLUDED_STDLIB_H #define YYDEBUG 1 +#define UPGRADE_SETCOND_OPS 1 int yylex(); // declaration" of xxx warnings. int yyparse(); @@ -547,6 +592,34 @@ const char* getDivRemOpcode(const std::string& opcode, const TypeInfo& TI) { return op; } +std::string +getCompareOp(const std::string& setcc, const TypeInfo& TI) { + assert(setcc.length() == 5); + char cc1 = setcc[3]; + char cc2 = setcc[4]; + assert(cc1 == 'e' || cc1 == 'n' || cc1 == 'l' || cc1 == 'g'); + assert(cc2 == 'q' || cc2 == 'e' || cc2 == 'e' || cc2 == 't'); + std::string result("xcmp xxx"); + result[6] = cc1; + result[7] = cc2; + if (TI.isFloatingPoint()) { + result[0] = 'f'; + result[5] = 'o'; // FIXME: Always map to ordered comparison ? + } else if (TI.isIntegral() || TI.isPointer()) { + result[0] = 'i'; + if ((cc1 == 'e' && cc2 == 'q') || (cc1 == 'n' && cc2 == 'e')) + result.erase(5,1); + else if (TI.isSigned()) + result[5] = 's'; + else if (TI.isUnsigned() || TI.isPointer()) + result[5] = 'u'; + else + yyerror("Invalid integral type for setcc"); + } + return result; +} + + /* Enabling traces. */ #ifndef YYDEBUG @@ -567,7 +640,7 @@ const char* getDivRemOpcode(const std::string& opcode, const TypeInfo& TI) { #endif #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) -#line 239 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" +#line 268 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" typedef union YYSTYPE { std::string* String; TypeInfo Type; @@ -576,7 +649,7 @@ typedef union YYSTYPE { ValueList* ValList; } YYSTYPE; /* Line 196 of yacc.c. */ -#line 580 "UpgradeParser.tab.c" +#line 653 "UpgradeParser.tab.c" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 @@ -588,7 +661,7 @@ typedef union YYSTYPE { /* Line 219 of yacc.c. */ -#line 592 "UpgradeParser.tab.c" +#line 665 "UpgradeParser.tab.c" #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) # define YYSIZE_T __SIZE_TYPE__ @@ -739,20 +812,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 4 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1324 +#define YYLAST 1464 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 143 +#define YYNTOKENS 165 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 73 +#define YYNNTS 75 /* YYNRULES -- Number of rules. */ -#define YYNRULES 269 +#define YYNRULES 293 /* YYNRULES -- Number of states. */ -#define YYNSTATES 528 +#define YYNSTATES 564 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 383 +#define YYMAXUTOK 405 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -764,15 +837,15 @@ static const unsigned char yytranslate[] = 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, - 132, 133, 141, 2, 130, 2, 2, 2, 2, 2, + 154, 155, 163, 2, 152, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 137, 129, 138, 2, 2, 2, 2, 2, 2, 2, + 159, 151, 160, 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, 134, 131, 136, 2, 2, 2, 2, 2, 142, + 2, 156, 153, 158, 2, 2, 2, 2, 2, 164, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 135, 2, 2, 139, 2, 140, 2, 2, 2, 2, + 157, 2, 2, 161, 2, 162, 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, @@ -798,7 +871,9 @@ static const unsigned char yytranslate[] = 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128 + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150 }; #if YYDEBUG @@ -811,150 +886,162 @@ static const unsigned short int yyprhs[] = 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, - 99, 101, 103, 105, 107, 109, 112, 113, 115, 117, - 119, 121, 123, 125, 127, 128, 130, 132, 134, 136, - 138, 140, 143, 144, 145, 148, 149, 153, 156, 157, - 159, 160, 164, 166, 169, 171, 173, 175, 177, 179, - 181, 183, 185, 187, 189, 191, 193, 195, 197, 199, - 201, 203, 205, 207, 209, 212, 217, 223, 229, 233, - 236, 239, 241, 245, 247, 251, 253, 254, 259, 263, - 267, 272, 277, 281, 284, 287, 290, 293, 296, 299, - 302, 305, 308, 311, 318, 324, 333, 340, 347, 354, - 361, 368, 377, 386, 390, 392, 394, 396, 398, 401, - 404, 409, 412, 414, 416, 418, 423, 426, 431, 438, - 445, 452, 459, 463, 468, 469, 471, 473, 475, 479, - 483, 487, 491, 495, 499, 501, 502, 504, 506, 508, - 509, 512, 516, 518, 520, 524, 526, 527, 536, 538, - 540, 544, 546, 548, 552, 553, 555, 557, 561, 562, - 564, 566, 568, 570, 572, 574, 576, 578, 580, 584, - 586, 592, 594, 596, 598, 600, 603, 606, 608, 611, - 614, 615, 617, 619, 621, 624, 627, 631, 641, 651, - 660, 675, 677, 679, 686, 692, 695, 702, 710, 712, - 716, 718, 719, 722, 724, 730, 736, 742, 745, 750, - 755, 762, 767, 772, 779, 786, 789, 797, 799, 802, - 803, 805, 806, 810, 817, 821, 828, 831, 836, 843 + 99, 101, 103, 105, 107, 109, 111, 113, 115, 117, + 119, 121, 123, 125, 127, 129, 131, 133, 135, 137, + 139, 141, 143, 145, 147, 149, 151, 153, 156, 157, + 159, 161, 163, 165, 167, 169, 171, 172, 174, 176, + 178, 180, 182, 184, 187, 188, 189, 192, 193, 197, + 200, 201, 203, 204, 208, 210, 213, 215, 217, 219, + 221, 223, 225, 227, 229, 231, 233, 235, 237, 239, + 241, 243, 245, 247, 249, 251, 253, 256, 261, 267, + 273, 277, 280, 283, 285, 289, 291, 295, 297, 298, + 303, 307, 311, 316, 321, 325, 328, 331, 334, 337, + 340, 343, 346, 349, 352, 355, 362, 368, 377, 384, + 391, 398, 406, 413, 420, 429, 438, 442, 444, 446, + 448, 450, 453, 456, 461, 464, 466, 468, 470, 475, + 478, 483, 490, 497, 504, 511, 515, 520, 521, 523, + 525, 527, 531, 535, 539, 543, 547, 551, 553, 554, + 556, 558, 560, 561, 564, 568, 570, 572, 576, 578, + 579, 588, 590, 592, 596, 598, 600, 604, 605, 607, + 609, 613, 614, 616, 618, 620, 622, 624, 626, 628, + 630, 632, 636, 638, 644, 646, 648, 650, 652, 655, + 658, 660, 663, 666, 667, 669, 671, 673, 676, 679, + 683, 693, 703, 712, 727, 729, 731, 738, 744, 747, + 754, 762, 764, 768, 770, 771, 774, 776, 782, 788, + 794, 802, 805, 810, 815, 822, 827, 832, 839, 846, + 849, 857, 859, 862, 863, 865, 866, 870, 877, 881, + 888, 891, 896, 903 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const short int yyrhs[] = { - 175, 0, -1, 19, -1, 20, -1, 17, -1, 18, + 199, 0, -1, 19, -1, 20, -1, 17, -1, 18, -1, 80, -1, 81, -1, 82, -1, 83, -1, 84, -1, 85, -1, 86, -1, 87, -1, 88, -1, 89, -1, 90, -1, 91, -1, 92, -1, 93, -1, 94, -1, 95, -1, 96, -1, 97, -1, 98, -1, 99, - -1, 108, -1, 109, -1, 110, -1, 111, -1, 117, - -1, 118, -1, 119, -1, 120, -1, 121, -1, 122, - -1, 123, -1, 124, -1, 125, -1, 126, -1, 127, - -1, 128, -1, 116, -1, 11, -1, 9, -1, 7, - -1, 5, -1, 12, -1, 10, -1, 8, -1, 6, - -1, 151, -1, 152, -1, 13, -1, 14, -1, 184, - 129, -1, -1, 42, -1, 43, -1, 44, -1, 48, - -1, 45, -1, 46, -1, 47, -1, -1, 66, -1, - 67, -1, 68, -1, 69, -1, 70, -1, 71, -1, - 65, 18, -1, -1, -1, 57, 18, -1, -1, 130, - 57, 18, -1, 37, 30, -1, -1, 160, -1, -1, - 130, 163, 162, -1, 160, -1, 57, 18, -1, 166, - -1, 3, -1, 168, -1, 3, -1, 168, -1, 4, - -1, 5, -1, 6, -1, 7, -1, 8, -1, 9, - -1, 10, -1, 11, -1, 12, -1, 13, -1, 14, - -1, 15, -1, 16, -1, 198, -1, 167, -1, 131, - 18, -1, 165, 132, 170, 133, -1, 134, 18, 135, - 168, 136, -1, 137, 18, 135, 168, 138, -1, 139, - 169, 140, -1, 139, 140, -1, 168, 141, -1, 168, - -1, 169, 130, 168, -1, 169, -1, 169, 130, 40, - -1, 40, -1, -1, 166, 134, 173, 136, -1, 166, - 134, 136, -1, 166, 142, 30, -1, 166, 137, 173, - 138, -1, 166, 139, 173, 140, -1, 166, 139, 140, - -1, 166, 22, -1, 166, 23, -1, 166, 198, -1, - 166, 172, -1, 166, 24, -1, 151, 145, -1, 152, - 18, -1, 4, 25, -1, 4, 26, -1, 154, 21, - -1, 150, 132, 171, 39, 166, 133, -1, 105, 132, - 171, 213, 133, -1, 107, 132, 171, 130, 171, 130, - 171, 133, -1, 146, 132, 171, 130, 171, 133, -1, - 147, 132, 171, 130, 171, 133, -1, 148, 132, 171, - 130, 171, 133, -1, 149, 132, 171, 130, 171, 133, - -1, 113, 132, 171, 130, 171, 133, -1, 114, 132, - 171, 130, 171, 130, 171, 133, -1, 115, 132, 171, - 130, 171, 130, 171, 133, -1, 173, 130, 171, -1, - 171, -1, 35, -1, 36, -1, 176, -1, 176, 193, - -1, 176, 195, -1, 176, 63, 62, 179, -1, 176, - 31, -1, 178, -1, 50, -1, 58, -1, 178, 155, - 27, 164, -1, 178, 195, -1, 178, 63, 62, 179, - -1, 178, 155, 156, 174, 171, 162, -1, 178, 155, - 177, 174, 166, 162, -1, 178, 155, 45, 174, 166, - 162, -1, 178, 155, 47, 174, 166, 162, -1, 178, - 51, 181, -1, 178, 59, 129, 182, -1, -1, 30, - -1, 56, -1, 55, -1, 53, 129, 180, -1, 54, - 129, 18, -1, 52, 129, 30, -1, 72, 129, 30, - -1, 134, 183, 136, -1, 183, 130, 30, -1, 30, - -1, -1, 28, -1, 30, -1, 184, -1, -1, 166, - 185, -1, 187, 130, 186, -1, 186, -1, 187, -1, - 187, 130, 40, -1, 40, -1, -1, 157, 164, 184, - 132, 188, 133, 161, 158, -1, 32, -1, 139, -1, - 156, 189, 190, -1, 33, -1, 140, -1, 191, 201, - 192, -1, -1, 45, -1, 47, -1, 34, 194, 189, - -1, -1, 64, -1, 17, -1, 18, -1, 21, -1, - 25, -1, 26, -1, 22, -1, 23, -1, 24, -1, - 137, 173, 138, -1, 172, -1, 62, 196, 30, 130, - 30, -1, 144, -1, 184, -1, 198, -1, 197, -1, - 166, 199, -1, 201, 202, -1, 202, -1, 203, 205, - -1, 203, 207, -1, -1, 29, -1, 78, -1, 77, - -1, 73, 200, -1, 73, 3, -1, 74, 15, 199, - -1, 74, 4, 199, 130, 15, 199, 130, 15, 199, - -1, 75, 153, 199, 130, 15, 199, 134, 206, 136, - -1, 75, 153, 199, 130, 15, 199, 134, 136, -1, - 155, 76, 157, 164, 199, 132, 210, 133, 39, 15, - 199, 204, 15, 199, -1, 204, -1, 79, -1, 206, - 153, 197, 130, 15, 199, -1, 153, 197, 130, 15, - 199, -1, 155, 212, -1, 166, 134, 199, 130, 199, - 136, -1, 208, 130, 134, 199, 130, 199, 136, -1, - 200, -1, 209, 130, 200, -1, 209, -1, -1, 61, - 60, -1, 60, -1, 146, 166, 199, 130, 199, -1, - 147, 166, 199, 130, 199, -1, 148, 166, 199, 130, - 199, -1, 49, 200, -1, 149, 200, 130, 200, -1, - 150, 200, 39, 166, -1, 107, 200, 130, 200, 130, - 200, -1, 112, 200, 130, 166, -1, 113, 200, 130, - 200, -1, 114, 200, 130, 200, 130, 200, -1, 115, - 200, 130, 200, 130, 200, -1, 106, 208, -1, 211, - 157, 164, 199, 132, 210, 133, -1, 215, -1, 130, - 209, -1, -1, 38, -1, -1, 100, 166, 159, -1, - 100, 166, 130, 10, 199, 159, -1, 101, 166, 159, - -1, 101, 166, 130, 10, 199, 159, -1, 102, 200, - -1, 214, 103, 166, 199, -1, 214, 104, 200, 130, - 166, 199, -1, 105, 166, 199, 213, -1 + -1, 100, -1, 101, -1, 102, -1, 103, -1, 104, + -1, 105, -1, 106, -1, 107, -1, 118, -1, 119, + -1, 120, -1, 121, -1, 108, -1, 109, -1, 110, + -1, 111, -1, 112, -1, 113, -1, 114, -1, 115, + -1, 116, -1, 117, -1, 130, -1, 131, -1, 132, + -1, 133, -1, 139, -1, 140, -1, 141, -1, 142, + -1, 143, -1, 144, -1, 145, -1, 146, -1, 147, + -1, 148, -1, 149, -1, 150, -1, 138, -1, 11, + -1, 9, -1, 7, -1, 5, -1, 12, -1, 10, + -1, 8, -1, 6, -1, 175, -1, 176, -1, 13, + -1, 14, -1, 208, 151, -1, -1, 42, -1, 43, + -1, 44, -1, 48, -1, 45, -1, 46, -1, 47, + -1, -1, 66, -1, 67, -1, 68, -1, 69, -1, + 70, -1, 71, -1, 65, 18, -1, -1, -1, 57, + 18, -1, -1, 152, 57, 18, -1, 37, 30, -1, + -1, 184, -1, -1, 152, 187, 186, -1, 184, -1, + 57, 18, -1, 190, -1, 3, -1, 192, -1, 3, + -1, 192, -1, 4, -1, 5, -1, 6, -1, 7, + -1, 8, -1, 9, -1, 10, -1, 11, -1, 12, + -1, 13, -1, 14, -1, 15, -1, 16, -1, 222, + -1, 191, -1, 153, 18, -1, 189, 154, 194, 155, + -1, 156, 18, 157, 192, 158, -1, 159, 18, 157, + 192, 160, -1, 161, 193, 162, -1, 161, 162, -1, + 192, 163, -1, 192, -1, 193, 152, 192, -1, 193, + -1, 193, 152, 40, -1, 40, -1, -1, 190, 156, + 197, 158, -1, 190, 156, 158, -1, 190, 164, 30, + -1, 190, 159, 197, 160, -1, 190, 161, 197, 162, + -1, 190, 161, 162, -1, 190, 22, -1, 190, 23, + -1, 190, 222, -1, 190, 196, -1, 190, 24, -1, + 175, 167, -1, 176, 18, -1, 4, 25, -1, 4, + 26, -1, 178, 21, -1, 174, 154, 195, 39, 190, + 155, -1, 127, 154, 195, 237, 155, -1, 129, 154, + 195, 152, 195, 152, 195, 155, -1, 168, 154, 195, + 152, 195, 155, -1, 169, 154, 195, 152, 195, 155, + -1, 170, 154, 195, 152, 195, 155, -1, 171, 172, + 154, 195, 152, 195, 155, -1, 173, 154, 195, 152, + 195, 155, -1, 135, 154, 195, 152, 195, 155, -1, + 136, 154, 195, 152, 195, 152, 195, 155, -1, 137, + 154, 195, 152, 195, 152, 195, 155, -1, 197, 152, + 195, -1, 195, -1, 35, -1, 36, -1, 200, -1, + 200, 217, -1, 200, 219, -1, 200, 63, 62, 203, + -1, 200, 31, -1, 202, -1, 50, -1, 58, -1, + 202, 179, 27, 188, -1, 202, 219, -1, 202, 63, + 62, 203, -1, 202, 179, 180, 198, 195, 186, -1, + 202, 179, 201, 198, 190, 186, -1, 202, 179, 45, + 198, 190, 186, -1, 202, 179, 47, 198, 190, 186, + -1, 202, 51, 205, -1, 202, 59, 151, 206, -1, + -1, 30, -1, 56, -1, 55, -1, 53, 151, 204, + -1, 54, 151, 18, -1, 52, 151, 30, -1, 72, + 151, 30, -1, 156, 207, 158, -1, 207, 152, 30, + -1, 30, -1, -1, 28, -1, 30, -1, 208, -1, + -1, 190, 209, -1, 211, 152, 210, -1, 210, -1, + 211, -1, 211, 152, 40, -1, 40, -1, -1, 181, + 188, 208, 154, 212, 155, 185, 182, -1, 32, -1, + 161, -1, 180, 213, 214, -1, 33, -1, 162, -1, + 215, 225, 216, -1, -1, 45, -1, 47, -1, 34, + 218, 213, -1, -1, 64, -1, 17, -1, 18, -1, + 21, -1, 25, -1, 26, -1, 22, -1, 23, -1, + 24, -1, 159, 197, 160, -1, 196, -1, 62, 220, + 30, 152, 30, -1, 166, -1, 208, -1, 222, -1, + 221, -1, 190, 223, -1, 225, 226, -1, 226, -1, + 227, 229, -1, 227, 231, -1, -1, 29, -1, 78, + -1, 77, -1, 73, 224, -1, 73, 3, -1, 74, + 15, 223, -1, 74, 4, 223, 152, 15, 223, 152, + 15, 223, -1, 75, 177, 223, 152, 15, 223, 156, + 230, 158, -1, 75, 177, 223, 152, 15, 223, 156, + 158, -1, 179, 76, 181, 188, 223, 154, 234, 155, + 39, 15, 223, 228, 15, 223, -1, 228, -1, 79, + -1, 230, 177, 221, 152, 15, 223, -1, 177, 221, + 152, 15, 223, -1, 179, 236, -1, 190, 156, 223, + 152, 223, 158, -1, 232, 152, 156, 223, 152, 223, + 158, -1, 224, -1, 233, 152, 224, -1, 233, -1, + -1, 61, 60, -1, 60, -1, 168, 190, 223, 152, + 223, -1, 169, 190, 223, 152, 223, -1, 170, 190, + 223, 152, 223, -1, 171, 172, 190, 223, 152, 223, + 155, -1, 49, 224, -1, 173, 224, 152, 224, -1, + 174, 224, 39, 190, -1, 129, 224, 152, 224, 152, + 224, -1, 134, 224, 152, 190, -1, 135, 224, 152, + 224, -1, 136, 224, 152, 224, 152, 224, -1, 137, + 224, 152, 224, 152, 224, -1, 128, 232, -1, 235, + 181, 188, 223, 154, 234, 155, -1, 239, -1, 152, + 233, -1, -1, 38, -1, -1, 122, 190, 183, -1, + 122, 190, 152, 10, 223, 183, -1, 123, 190, 183, + -1, 123, 190, 152, 10, 223, 183, -1, 124, 224, + -1, 238, 125, 190, 223, -1, 238, 126, 224, 152, + 190, 223, -1, 127, 190, 223, 237, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const unsigned short int yyrline[] = { - 0, 299, 299, 299, 300, 300, 304, 304, 304, 304, - 304, 304, 304, 305, 305, 305, 305, 306, 306, 306, - 307, 307, 307, 307, 307, 307, 308, 308, 308, 308, - 309, 309, 309, 309, 309, 309, 309, 310, 310, 310, - 310, 310, 310, 315, 315, 315, 315, 316, 316, 316, - 316, 317, 317, 318, 318, 321, 324, 329, 329, 329, - 329, 329, 329, 330, 331, 334, 334, 334, 334, 334, - 335, 336, 341, 346, 347, 350, 351, 359, 365, 366, - 369, 370, 379, 380, 393, 393, 394, 394, 395, 399, - 399, 399, 399, 399, 399, 399, 400, 400, 400, 400, - 400, 402, 406, 410, 413, 418, 424, 432, 440, 446, - 450, 461, 464, 472, 473, 478, 481, 491, 497, 502, - 508, 514, 520, 525, 531, 537, 543, 549, 555, 561, - 567, 573, 579, 587, 601, 613, 618, 624, 629, 634, - 642, 647, 652, 662, 667, 672, 672, 682, 687, 690, - 695, 699, 703, 705, 705, 708, 720, 725, 730, 737, - 744, 751, 758, 763, 768, 773, 775, 775, 778, 783, - 790, 795, 802, 809, 814, 815, 823, 823, 824, 824, - 826, 833, 837, 841, 844, 849, 852, 854, 874, 875, - 877, 886, 887, 889, 897, 898, 899, 903, 916, 917, - 920, 920, 920, 920, 920, 920, 920, 921, 922, 927, - 928, 937, 937, 941, 947, 958, 964, 967, 975, 979, - 984, 987, 993, 993, 995, 1000, 1005, 1010, 1018, 1025, - 1031, 1051, 1056, 1062, 1067, 1075, 1084, 1091, 1099, 1103, - 1110, 1111, 1115, 1120, 1123, 1129, 1134, 1139, 1144, 1152, - 1166, 1171, 1176, 1181, 1186, 1191, 1196, 1213, 1218, 1219, - 1223, 1224, 1227, 1234, 1241, 1248, 1255, 1260, 1267, 1274 + 0, 331, 331, 331, 332, 332, 336, 336, 336, 336, + 336, 336, 336, 337, 337, 337, 337, 338, 338, 338, + 339, 339, 339, 339, 339, 339, 340, 340, 341, 341, + 341, 341, 341, 341, 341, 341, 341, 341, 342, 342, + 342, 342, 342, 342, 342, 342, 342, 342, 343, 343, + 343, 343, 344, 344, 344, 344, 344, 344, 344, 345, + 345, 345, 345, 345, 345, 350, 350, 350, 350, 351, + 351, 351, 351, 352, 352, 353, 353, 356, 359, 364, + 364, 364, 364, 364, 364, 365, 366, 369, 369, 369, + 369, 369, 370, 371, 376, 381, 382, 385, 386, 394, + 400, 401, 404, 405, 414, 415, 428, 428, 429, 429, + 430, 434, 434, 434, 434, 434, 434, 434, 435, 435, + 435, 435, 435, 437, 441, 445, 448, 453, 459, 467, + 475, 481, 485, 496, 499, 507, 508, 513, 516, 526, + 532, 537, 543, 549, 555, 560, 566, 572, 578, 584, + 590, 596, 602, 608, 614, 622, 636, 648, 653, 659, + 664, 672, 677, 685, 690, 695, 705, 710, 715, 715, + 725, 730, 733, 738, 742, 746, 748, 748, 751, 763, + 768, 773, 780, 787, 794, 801, 806, 811, 816, 818, + 818, 821, 826, 833, 838, 845, 852, 857, 858, 866, + 866, 867, 867, 869, 876, 880, 884, 887, 892, 895, + 897, 917, 918, 920, 929, 930, 932, 940, 941, 942, + 946, 959, 960, 963, 963, 963, 963, 963, 963, 963, + 964, 965, 970, 971, 980, 980, 984, 990, 1001, 1007, + 1010, 1018, 1022, 1027, 1030, 1036, 1036, 1038, 1043, 1048, + 1053, 1061, 1068, 1074, 1094, 1099, 1105, 1110, 1118, 1127, + 1134, 1142, 1146, 1153, 1154, 1158, 1163, 1166, 1172, 1177, + 1185, 1190, 1195, 1203, 1217, 1222, 1227, 1232, 1237, 1242, + 1247, 1264, 1269, 1270, 1274, 1275, 1278, 1285, 1292, 1299, + 1306, 1311, 1318, 1325 }; #endif @@ -978,28 +1065,30 @@ static const char *const yytname[] = "RET", "BR", "SWITCH", "INVOKE", "EXCEPT", "UNWIND", "UNREACHABLE", "ADD", "SUB", "MUL", "DIV", "UDIV", "SDIV", "FDIV", "REM", "UREM", "SREM", "FREM", "AND", "OR", "XOR", "SETLE", "SETGE", "SETLT", "SETGT", - "SETEQ", "SETNE", "MALLOC", "ALLOCA", "FREE", "LOAD", "STORE", + "SETEQ", "SETNE", "ICMP", "FCMP", "EQ", "NE", "SLT", "SGT", "SLE", "SGE", + "OEQ", "ONE", "OLT", "OGT", "OLE", "OGE", "ORD", "UNO", "UEQ", "UNE", + "ULT", "UGT", "ULE", "UGE", "MALLOC", "ALLOCA", "FREE", "LOAD", "STORE", "GETELEMENTPTR", "PHI_TOK", "SELECT", "SHL", "SHR", "ASHR", "LSHR", "VAARG", "EXTRACTELEMENT", "INSERTELEMENT", "SHUFFLEVECTOR", "CAST", "TRUNC", "ZEXT", "SEXT", "FPTRUNC", "FPEXT", "FPTOUI", "FPTOSI", "UITOFP", "SITOFP", "PTRTOINT", "INTTOPTR", "BITCAST", "'='", "','", "'\\\\'", "'('", "')'", "'['", "'x'", "']'", "'<'", "'>'", "'{'", "'}'", "'*'", "'c'", "$accept", "IntVal", "EInt64Val", "ArithmeticOps", - "LogicalOps", "SetCondOps", "ShiftOps", "CastOps", "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", "DefinitionList", - "External", "ConstPool", "AsmBlock", "BigOrLittle", "TargetDefinition", - "LibrariesDefinition", "LibList", "Name", "OptName", "ArgVal", - "ArgListH", "ArgList", "FunctionHeaderH", "BEGIN", "FunctionHeader", - "END", "Function", "FnDeclareLinkage", "FunctionProto", "OptSideEffect", - "ConstValueRef", "SymbolicValueRef", "ValueRef", "ResolvedVal", - "BasicBlockList", "BasicBlock", "InstructionList", "Unwind", - "BBTerminatorInst", "JumpTable", "Inst", "PHIList", "ValueRefList", - "ValueRefListE", "OptTailCall", "InstVal", "IndexList", "OptVolatile", - "MemoryInst", 0 + "LogicalOps", "SetCondOps", "CompareOps", "Predicates", "ShiftOps", + "CastOps", "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", "DefinitionList", "External", "ConstPool", "AsmBlock", + "BigOrLittle", "TargetDefinition", "LibrariesDefinition", "LibList", + "Name", "OptName", "ArgVal", "ArgListH", "ArgList", "FunctionHeaderH", + "BEGIN", "FunctionHeader", "END", "Function", "FnDeclareLinkage", + "FunctionProto", "OptSideEffect", "ConstValueRef", "SymbolicValueRef", + "ValueRef", "ResolvedVal", "BasicBlockList", "BasicBlock", + "InstructionList", "Unwind", "BBTerminatorInst", "JumpTable", "Inst", + "PHIList", "ValueRefList", "ValueRefListE", "OptTailCall", "InstVal", + "IndexList", "OptVolatile", "MemoryInst", 0 }; #endif @@ -1020,42 +1109,47 @@ static const unsigned short int yytoknum[] = 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, - 375, 376, 377, 378, 379, 380, 381, 382, 383, 61, - 44, 92, 40, 41, 91, 120, 93, 60, 62, 123, - 125, 42, 99 + 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, + 405, 61, 44, 92, 40, 41, 91, 120, 93, 60, + 62, 123, 125, 42, 99 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const unsigned char yyr1[] = { - 0, 143, 144, 144, 145, 145, 146, 146, 146, 146, - 146, 146, 146, 146, 146, 146, 146, 147, 147, 147, - 148, 148, 148, 148, 148, 148, 149, 149, 149, 149, - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, - 150, 150, 150, 151, 151, 151, 151, 152, 152, 152, - 152, 153, 153, 154, 154, 155, 155, 156, 156, 156, - 156, 156, 156, 156, 156, 157, 157, 157, 157, 157, - 157, 157, 157, 158, 158, 159, 159, 160, 161, 161, - 162, 162, 163, 163, 164, 164, 165, 165, 166, 167, - 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, - 167, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 169, 169, 170, 170, 170, 170, 171, 171, 171, - 171, 171, 171, 171, 171, 171, 171, 171, 171, 171, - 171, 171, 171, 172, 172, 172, 172, 172, 172, 172, - 172, 172, 172, 173, 173, 174, 174, 175, 176, 176, - 176, 176, 176, 177, 177, 178, 178, 178, 178, 178, - 178, 178, 178, 178, 178, 179, 180, 180, 181, 181, - 181, 181, 182, 183, 183, 183, 184, 184, 185, 185, - 186, 187, 187, 188, 188, 188, 188, 189, 190, 190, - 191, 192, 192, 193, 194, 194, 194, 195, 196, 196, - 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 198, 198, 199, 199, 200, 201, 201, 202, 203, - 203, 203, 204, 204, 205, 205, 205, 205, 205, 205, - 205, 205, 205, 206, 206, 207, 208, 208, 209, 209, - 210, 210, 211, 211, 212, 212, 212, 212, 212, 212, - 212, 212, 212, 212, 212, 212, 212, 212, 213, 213, - 214, 214, 215, 215, 215, 215, 215, 215, 215, 215 + 0, 165, 166, 166, 167, 167, 168, 168, 168, 168, + 168, 168, 168, 168, 168, 168, 168, 169, 169, 169, + 170, 170, 170, 170, 170, 170, 171, 171, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, 173, 173, + 173, 173, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 175, 175, 175, 175, 176, + 176, 176, 176, 177, 177, 178, 178, 179, 179, 180, + 180, 180, 180, 180, 180, 180, 180, 181, 181, 181, + 181, 181, 181, 181, 181, 182, 182, 183, 183, 184, + 185, 185, 186, 186, 187, 187, 188, 188, 189, 189, + 190, 191, 191, 191, 191, 191, 191, 191, 191, 191, + 191, 191, 191, 192, 192, 192, 192, 192, 192, 192, + 192, 192, 192, 193, 193, 194, 194, 194, 194, 195, + 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, + 195, 195, 195, 195, 195, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 197, 197, 198, 198, + 199, 200, 200, 200, 200, 200, 201, 201, 202, 202, + 202, 202, 202, 202, 202, 202, 202, 202, 203, 204, + 204, 205, 205, 205, 205, 206, 207, 207, 207, 208, + 208, 209, 209, 210, 211, 211, 212, 212, 212, 212, + 213, 214, 214, 215, 216, 216, 217, 218, 218, 218, + 219, 220, 220, 221, 221, 221, 221, 221, 221, 221, + 221, 221, 221, 221, 222, 222, 223, 223, 224, 225, + 225, 226, 227, 227, 227, 228, 228, 229, 229, 229, + 229, 229, 229, 229, 229, 229, 230, 230, 231, 232, + 232, 233, 233, 234, 234, 235, 235, 236, 236, 236, + 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, + 236, 236, 237, 237, 238, 238, 239, 239, 239, 239, + 239, 239, 239, 239 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1066,28 +1160,31 @@ static const unsigned char yyr2[] = 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, 1, 1, - 1, 1, 1, 1, 1, 2, 0, 1, 1, 1, - 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, - 1, 2, 0, 0, 2, 0, 3, 2, 0, 1, - 0, 3, 1, 2, 1, 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, - 6, 8, 8, 3, 1, 1, 1, 1, 2, 2, - 4, 2, 1, 1, 1, 4, 2, 4, 6, 6, - 6, 6, 3, 4, 0, 1, 1, 1, 3, 3, - 3, 3, 3, 3, 1, 0, 1, 1, 1, 0, - 2, 3, 1, 1, 3, 1, 0, 8, 1, 1, - 3, 1, 1, 3, 0, 1, 1, 3, 0, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, - 5, 1, 1, 1, 1, 2, 2, 1, 2, 2, - 0, 1, 1, 1, 2, 2, 3, 9, 9, 8, - 14, 1, 1, 6, 5, 2, 6, 7, 1, 3, - 1, 0, 2, 1, 5, 5, 5, 2, 4, 4, - 6, 4, 4, 6, 6, 2, 7, 1, 2, 0, - 1, 0, 3, 6, 3, 6, 2, 4, 6, 4 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 2, 0, 1, + 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, + 1, 1, 1, 2, 0, 0, 2, 0, 3, 2, + 0, 1, 0, 3, 1, 2, 1, 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, 7, 6, 6, 8, 8, 3, 1, 1, 1, + 1, 2, 2, 4, 2, 1, 1, 1, 4, 2, + 4, 6, 6, 6, 6, 3, 4, 0, 1, 1, + 1, 3, 3, 3, 3, 3, 3, 1, 0, 1, + 1, 1, 0, 2, 3, 1, 1, 3, 1, 0, + 8, 1, 1, 3, 1, 1, 3, 0, 1, 1, + 3, 0, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 3, 1, 5, 1, 1, 1, 1, 2, 2, + 1, 2, 2, 0, 1, 1, 1, 2, 2, 3, + 9, 9, 8, 14, 1, 1, 6, 5, 2, 6, + 7, 1, 3, 1, 0, 2, 1, 5, 5, 5, + 7, 2, 4, 4, 6, 4, 4, 6, 6, 2, + 7, 1, 2, 0, 1, 0, 3, 6, 3, 6, + 2, 4, 6, 4 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1095,483 +1192,523 @@ static const unsigned char yyr2[] = means the default is an error. */ static const unsigned short int yydefact[] = { - 164, 0, 64, 152, 1, 151, 194, 57, 58, 59, - 61, 62, 63, 60, 0, 72, 220, 148, 149, 176, - 177, 0, 0, 0, 64, 0, 156, 195, 196, 72, - 0, 0, 65, 66, 67, 68, 69, 70, 0, 0, - 221, 220, 217, 56, 0, 0, 0, 0, 162, 0, - 0, 0, 0, 0, 153, 154, 0, 0, 55, 197, - 165, 150, 71, 85, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 2, 3, 0, - 0, 0, 0, 211, 0, 0, 84, 103, 88, 212, - 102, 188, 189, 190, 191, 192, 193, 216, 0, 0, - 0, 223, 222, 232, 261, 231, 218, 219, 0, 0, - 0, 0, 175, 163, 157, 155, 145, 146, 0, 0, - 0, 0, 104, 0, 0, 87, 109, 111, 0, 0, - 116, 110, 225, 0, 224, 0, 0, 46, 50, 45, - 49, 44, 48, 43, 47, 51, 52, 0, 260, 0, - 243, 0, 72, 6, 7, 8, 9, 10, 11, 12, + 187, 0, 86, 175, 1, 174, 217, 79, 80, 81, + 83, 84, 85, 82, 0, 94, 243, 171, 172, 199, + 200, 0, 0, 0, 86, 0, 179, 218, 219, 94, + 0, 0, 87, 88, 89, 90, 91, 92, 0, 0, + 244, 243, 240, 78, 0, 0, 0, 0, 185, 0, + 0, 0, 0, 0, 176, 177, 0, 0, 77, 220, + 188, 173, 93, 107, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 2, 3, 0, + 0, 0, 0, 234, 0, 0, 106, 125, 110, 235, + 124, 211, 212, 213, 214, 215, 216, 239, 0, 0, + 0, 246, 245, 255, 285, 254, 241, 242, 0, 0, + 0, 0, 198, 186, 180, 178, 168, 169, 0, 0, + 0, 0, 126, 0, 0, 109, 131, 133, 0, 0, + 138, 132, 248, 0, 247, 0, 0, 68, 72, 67, + 71, 66, 70, 65, 69, 73, 74, 0, 284, 0, + 266, 0, 94, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 0, 0, 0, 0, 0, 0, 26, - 27, 28, 29, 0, 0, 0, 0, 42, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 0, 0, 0, 0, 0, 72, 235, 0, 257, 170, - 167, 166, 168, 169, 171, 174, 0, 80, 80, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 0, 0, 0, 0, 80, 80, 0, 0, 0, 108, - 186, 115, 113, 0, 200, 201, 202, 205, 206, 207, - 203, 204, 198, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 209, 214, 213, 215, 0, 226, - 0, 247, 242, 0, 75, 75, 266, 0, 0, 255, + 23, 24, 25, 26, 27, 0, 0, 0, 0, 0, + 0, 48, 49, 50, 51, 0, 0, 0, 0, 64, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 0, 0, 0, 0, 0, 0, 94, 258, + 0, 281, 193, 190, 189, 191, 192, 194, 197, 0, + 102, 102, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 0, 0, 0, 0, 102, 102, 0, + 0, 0, 130, 209, 137, 135, 0, 223, 224, 225, + 228, 229, 230, 226, 227, 221, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 232, 237, + 236, 238, 0, 249, 0, 271, 265, 0, 97, 97, + 290, 0, 0, 279, 0, 0, 0, 0, 0, 0, + 0, 0, 28, 29, 30, 31, 32, 33, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 34, 35, + 36, 37, 0, 0, 0, 0, 0, 0, 0, 195, + 0, 183, 184, 152, 153, 4, 5, 150, 151, 154, + 145, 146, 149, 0, 0, 0, 0, 148, 147, 181, + 182, 108, 108, 134, 208, 202, 205, 206, 0, 0, + 127, 222, 0, 0, 0, 0, 0, 0, 167, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 172, 0, 160, 161, 130, 131, - 4, 5, 128, 129, 132, 123, 124, 127, 0, 0, - 0, 0, 126, 125, 158, 159, 86, 86, 112, 185, - 179, 182, 183, 0, 0, 105, 199, 0, 0, 0, - 0, 0, 0, 144, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 262, 0, 264, 259, 0, 0, + 286, 0, 288, 283, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 173, 0, 0, 82, 80, 118, 0, - 0, 122, 0, 119, 106, 107, 178, 180, 0, 78, - 114, 0, 259, 0, 0, 0, 0, 0, 208, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 269, 0, 0, 0, 251, 252, 0, 0, 0, - 0, 0, 248, 249, 0, 267, 0, 77, 83, 81, - 117, 120, 121, 184, 181, 79, 73, 0, 0, 0, - 0, 0, 0, 143, 0, 0, 0, 0, 0, 0, - 0, 241, 75, 76, 75, 238, 258, 0, 0, 0, - 0, 0, 244, 245, 246, 241, 0, 0, 187, 210, - 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 240, 0, 0, 263, 265, 0, 0, 0, - 250, 253, 254, 0, 268, 74, 0, 140, 0, 0, - 136, 137, 138, 139, 133, 0, 229, 0, 0, 0, - 239, 236, 0, 256, 0, 0, 0, 227, 0, 228, - 0, 0, 237, 135, 141, 142, 0, 0, 0, 0, - 0, 0, 234, 0, 0, 233, 0, 230 + 196, 0, 0, 104, 102, 140, 0, 0, 144, 0, + 141, 128, 129, 201, 203, 0, 100, 136, 0, 283, + 0, 0, 0, 0, 0, 231, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 293, + 0, 0, 0, 275, 276, 0, 0, 0, 0, 0, + 0, 272, 273, 0, 291, 0, 99, 105, 103, 139, + 142, 143, 207, 204, 101, 95, 0, 0, 0, 0, + 0, 0, 166, 0, 0, 0, 0, 0, 0, 0, + 0, 264, 97, 98, 97, 261, 282, 0, 0, 0, + 0, 0, 267, 268, 269, 0, 264, 0, 0, 210, + 233, 156, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 263, 0, 0, 287, 289, 0, + 0, 0, 274, 277, 278, 0, 0, 292, 96, 0, + 163, 0, 0, 158, 159, 160, 0, 162, 155, 0, + 252, 0, 0, 0, 262, 259, 0, 270, 280, 0, + 0, 0, 161, 250, 0, 251, 0, 0, 260, 157, + 164, 165, 0, 0, 0, 0, 0, 0, 257, 0, + 0, 256, 0, 253 }; /* YYDEFGOTO[NTERM-NUM]. */ static const short int yydefgoto[] = { - -1, 83, 302, 259, 260, 261, 262, 263, 230, 231, - 147, 232, 24, 15, 38, 458, 344, 366, 426, 296, - 367, 84, 85, 233, 87, 88, 128, 243, 333, 264, - 334, 118, 1, 2, 57, 3, 61, 212, 48, 113, - 216, 89, 377, 321, 322, 323, 39, 93, 16, 96, - 17, 29, 18, 327, 265, 90, 267, 445, 41, 42, - 43, 105, 106, 498, 107, 279, 472, 473, 205, 206, - 401, 207, 208 + -1, 83, 327, 262, 263, 264, 265, 312, 266, 267, + 233, 234, 147, 235, 24, 15, 38, 489, 370, 393, + 455, 321, 394, 84, 85, 236, 87, 88, 128, 246, + 358, 268, 359, 118, 1, 2, 57, 3, 61, 215, + 48, 113, 219, 89, 404, 346, 347, 348, 39, 93, + 16, 96, 17, 29, 18, 352, 269, 90, 271, 475, + 41, 42, 43, 105, 106, 532, 107, 283, 504, 505, + 208, 209, 429, 210, 211 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -477 +#define YYPACT_NINF -507 static const short int yypact[] = { - -477, 20, 54, 872, -477, -477, 86, -477, -477, -477, - -477, -477, -477, -477, 24, 110, 65, -477, -477, -477, - -477, 37, -105, 51, 3, -8, -477, -477, -477, 110, - 111, 126, -477, -477, -477, -477, -477, -477, 703, -23, - -477, -18, -477, -1, 23, 43, 64, 74, -477, 70, - 111, 703, 71, 71, -477, -477, 71, 71, -477, -477, - -477, -477, -477, 73, -477, -477, -477, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, -477, -477, 188, - 189, 190, 457, -477, 104, 77, -477, -477, -29, -477, - -477, -477, -477, -477, -477, -477, -477, -477, 736, 80, - 118, -477, -477, -477, 1196, -477, -477, -477, 181, 87, - 192, 182, 183, -477, -477, -477, -477, -477, 764, 764, - 802, 764, -477, 81, 82, -477, -477, -29, -114, 83, - 513, -477, 73, 988, -477, 988, 988, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, 988, -477, 764, - -477, 158, 110, -477, -477, -477, -477, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, -477, -477, -477, - -477, -477, -477, 764, 764, 764, 764, 764, 764, -477, - -477, -477, -477, 764, 764, 764, 764, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, -477, -477, -477, - 764, 764, 764, 764, 764, 110, -477, 57, -477, -477, - -477, -477, -477, -477, -477, -477, -26, 89, 89, 160, - 170, 203, 172, 204, 174, 205, 178, 207, 206, 208, - 180, 210, 209, 862, 89, 89, 764, 764, 764, -477, - 552, -477, 96, 98, -477, -477, -477, -477, -477, -477, - -477, -477, 173, 102, 106, 108, 112, 114, 802, 115, - 116, 117, 119, 127, -477, -477, -477, -477, 113, -477, - 125, -477, -477, 703, 130, 131, -477, 988, 128, 133, - 134, 135, 138, 140, 142, 988, 988, 988, 143, 197, - 703, 764, 764, 212, -477, -2, -477, -477, -477, -477, - -477, -477, -477, -477, -477, -477, -477, -477, 598, 802, - 485, 244, -477, -477, -477, -477, 15, -82, -29, -477, - 104, -477, 147, 145, 626, -477, -477, 250, 802, 802, - 802, 802, 802, -477, -113, 802, 802, 802, 802, 802, - 273, 274, 988, 0, -477, 18, -477, 163, 988, 156, - 764, 764, 764, 764, 764, 165, 167, 168, 764, 764, - 988, 988, 169, -477, 271, 284, -477, 89, -477, -22, - -51, -477, -48, -477, -477, -477, -477, -477, 665, 266, - -477, 179, 163, 187, 211, 213, 215, 802, -477, 216, - 217, 218, 219, 272, 988, 988, 186, 988, 292, 988, - 764, -477, 220, 988, 222, -477, -477, 224, 225, 988, - 988, 988, -477, -477, 226, -477, 764, -477, -477, -477, - -477, -477, -477, -477, -477, -477, 265, 305, 223, 802, - 802, 802, 802, -477, 802, 802, 802, 802, 764, 227, - 202, 764, 229, -477, 229, -477, 230, 988, 231, 764, - 764, 764, -477, -477, -477, 764, 988, 319, -477, -477, - -477, 233, 232, 234, 236, 235, 237, 238, 240, 242, - 323, 31, 230, 246, 282, -477, -477, 764, 241, 988, - -477, -477, -477, 247, -477, -477, 802, -477, 802, 802, - -477, -477, -477, -477, -477, 988, -477, 1105, 58, 303, - -477, -477, 245, -477, 251, 252, 253, -477, 239, -477, - 1105, 368, -477, -477, -477, -477, 372, 258, 988, 988, - 374, 123, -477, 988, 379, -477, 988, -477 + -507, 31, 62, 973, -507, -507, -18, -507, -507, -507, + -507, -507, -507, -507, -3, 124, 43, -507, -507, -507, + -507, -33, -60, 25, 177, -37, -507, -507, -507, 124, + 102, 128, -507, -507, -507, -507, -507, -507, 800, -25, + -507, -17, -507, 49, 12, 16, 26, 29, -507, 28, + 102, 800, 7, 7, -507, -507, 7, 7, -507, -507, + -507, -507, -507, 42, -507, -507, -507, -507, -507, -507, + -507, -507, -507, -507, -507, -507, -507, -507, -507, 163, + 164, 165, 469, -507, 27, 47, -507, -507, -109, -507, + -507, -507, -507, -507, -507, -507, -507, -507, 837, 20, + 146, -507, -507, -507, 1314, -507, -507, -507, 155, 19, + 179, 172, 173, -507, -507, -507, -507, -507, 882, 882, + 921, 882, -507, 50, 51, -507, -507, -109, -126, 52, + 564, -507, 42, 1112, -507, 1112, 1112, -507, -507, -507, + -507, -507, -507, -507, -507, -507, -507, 1112, -507, 882, + -507, 149, 124, -507, -507, -507, -507, -507, -507, -507, + -507, -507, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, -507, -507, -507, 882, 882, 882, 882, 882, + 882, -507, -507, -507, -507, 882, 882, 882, 882, -507, + -507, -507, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, 882, 882, 882, 860, 882, 882, 124, -507, + -5, -507, -507, -507, -507, -507, -507, -507, -507, -64, + 58, 58, 77, 117, 193, 126, 194, 142, 195, 144, + 198, 197, 207, 153, 213, 211, 964, 58, 58, 882, + 882, 882, -507, 640, -507, 81, 82, -507, -507, -507, + -507, -507, -507, -507, -507, 170, 84, 86, 87, 88, + 89, 921, 90, 91, 92, 860, 93, 94, -507, -507, + -507, -507, 97, -507, 104, -507, -507, 800, 105, 109, + -507, 1112, 80, 112, 114, 115, 118, 120, 121, 1112, + 1112, 1112, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, 882, 123, 230, 800, 882, 882, 220, -507, + -23, -507, -507, -507, -507, -507, -507, -507, -507, -507, + -507, -507, -507, 678, 921, 516, 246, -507, -507, -507, + -507, -73, -48, -109, -507, 27, -507, 131, 125, 723, + -507, -507, 256, 921, 921, 921, 921, 921, -507, -76, + 921, 921, 921, 133, 921, 921, 274, 278, 1112, -1, + -507, 1, -507, 143, 1112, 138, 882, 882, 882, 882, + 882, 147, 148, 150, 1112, 882, 882, 1112, 1112, 151, + -507, 266, 280, -507, 58, -507, -57, -74, -507, -124, + -507, -507, -507, -507, -507, 762, 264, -507, 152, 143, + 154, 156, 157, 158, 921, -507, 159, 161, 162, 921, + 166, 268, 1112, 1112, 167, 1112, 287, 1112, 882, -507, + 171, 1112, 174, -507, -507, 175, 178, 1112, 1112, 1112, + 180, -507, -507, 183, -507, 882, -507, -507, -507, -507, + -507, -507, -507, -507, -507, 258, 286, 176, 921, 921, + 921, 921, -507, 921, 921, 921, 181, 921, 882, 192, + 169, 882, 199, -507, 199, -507, 200, 1112, 201, 882, + 882, 882, -507, -507, -507, 1112, 882, 1112, 311, -507, + -507, -507, 202, 190, 203, 212, 191, 216, 217, 921, + 218, 221, 334, 41, 200, 222, 293, -507, -507, 882, + 208, 1112, -507, -507, -507, 223, 224, -507, -507, 921, + -507, 921, 921, -507, -507, -507, 225, -507, -507, 1112, + -507, 1201, 59, 336, -507, -507, 227, -507, -507, 226, + 228, 231, -507, -507, 235, -507, 1201, 373, -507, -507, + -507, -507, 374, 242, 1112, 1112, 380, 98, -507, 1112, + 381, -507, 1112, -507 }; /* YYPGOTO[NTERM-NUM]. */ static const short int yypgoto[] = { - -477, -477, -477, 293, 298, 300, 301, 302, -99, -97, - -440, -477, 353, 383, -134, -477, -271, 29, -477, -212, - -477, -49, -477, -38, -477, -68, 279, -477, -5, 177, - -190, 97, -477, -477, -477, -477, 364, -477, -477, -477, - -477, 9, -477, 40, -477, -477, 390, -477, -477, -477, - -477, -477, 418, -477, -476, -128, -103, 101, -477, 381, - -477, -93, -477, -477, -477, -477, 33, -21, -477, -477, - 53, -477, -477 + -507, -507, -507, 294, 295, 296, 297, 137, 299, 300, + -98, -97, -495, -507, 366, 386, -135, -507, -274, 5, + -507, -215, -507, -47, -507, -38, -507, -67, 282, -507, + -102, 182, -204, 60, -507, -507, -507, -507, 363, -507, + -507, -507, -507, -2, -507, 9, -507, -507, 387, -507, + -507, -507, -507, -507, 412, -507, -506, -103, 79, -88, + -507, 382, -507, -133, -507, -507, -507, -507, -6, -61, + -507, -507, 18, -507, -507 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -148 +#define YYTABLE_NINF -171 static const short int yytable[] = { - 86, 145, 115, 146, 346, 266, 297, 266, 266, 91, - 397, 40, 25, 86, 127, 94, 238, 387, 273, 266, - 4, 508, 314, 315, 49, 388, 239, 19, 399, 20, - 51, 497, 268, 269, 517, 364, 137, 138, 139, 140, - 141, 142, 143, 144, 270, 7, 8, 9, 52, 11, - 53, 13, 25, 54, -147, 365, 375, 398, 510, 131, - 133, 55, 127, 137, 138, 139, 140, 141, 142, 143, - 144, 290, 98, 99, 100, 398, 101, 102, 103, 387, - 217, 218, 387, 235, 135, 5, 30, 421, 6, 44, - 45, 46, 422, 129, 40, 136, 7, 8, 9, 10, - 11, 12, 13, -86, 293, 313, 116, 117, 387, 47, - 294, 133, 131, 50, 420, 234, 92, 14, 369, 370, - 372, 58, 95, 137, 138, 139, 140, 141, 142, 143, - 144, 27, 19, 28, 20, 274, 275, 133, 277, 278, - 133, 60, 210, 211, 62, 133, 133, 133, 133, 266, - 119, 374, 108, 120, 121, 419, 131, 266, 266, 266, - 291, 292, 285, 286, 287, 133, 133, 496, 316, 317, - 318, 475, 109, 476, 347, 31, 32, 33, 34, 35, - 36, 37, 355, 356, 357, 298, 299, -46, -46, -45, - -45, -44, -44, 110, 509, -43, -43, 300, 301, 134, - 101, 102, 320, 111, 112, -87, 122, 123, 124, 130, - 213, 209, 214, 215, 266, 240, 236, 237, 272, 295, - 266, -50, -49, -48, 342, -47, 324, -53, 303, -54, - 304, 325, 266, 266, 328, 86, 359, 326, 329, 396, - 330, 360, 363, 340, 331, 402, 332, 335, 336, 337, - 271, 338, 86, 361, 133, 341, 318, 414, 415, 339, - 343, 345, 348, 349, 350, 351, 266, 266, 352, 266, - 353, 266, 354, 358, 373, 266, 276, 378, 379, 280, - 381, 266, 266, 266, 281, 282, 283, 284, 394, 395, - 403, 439, 440, 400, 442, 409, 444, 410, 411, 416, - 448, 417, 418, 364, 288, 289, 452, 453, 454, 427, - 443, 438, 133, 405, 133, 133, 133, 429, 441, 266, - 133, 413, 457, 382, 383, 384, 385, 386, 266, 376, - 389, 390, 391, 392, 393, 459, 471, 485, 495, 398, - 320, 430, 511, 431, 478, 432, 434, 435, 436, 437, - 447, 266, 449, 484, 450, 451, 460, 470, 455, 474, - 477, 479, 133, 486, 488, 487, 489, 266, 490, 516, - 491, 492, 145, 493, 146, 494, 502, 501, 456, 499, - 503, 512, 433, 518, 513, 514, 515, 519, 520, 523, - 266, 266, 507, 362, 526, 266, 104, 200, 266, 145, - 469, 146, 201, 133, 202, 203, 204, 56, 425, 242, - 312, 133, 133, 133, 114, 521, 522, 133, 424, 59, - 525, 26, 97, 527, 461, 462, 463, 464, 524, 465, - 466, 467, 468, 446, 483, 428, 0, 0, 0, 133, + 86, 25, 145, 146, 115, 372, 322, 91, 531, 425, + 134, 427, 40, 86, 391, 127, 94, 277, 237, 44, + 45, 46, 339, 340, 135, 544, 241, 27, 414, 28, + 270, 4, 270, 270, 392, 136, 242, 546, 451, 47, + 553, 25, 116, 117, 270, -108, 137, 138, 139, 140, + 141, 142, 143, 144, 131, 19, 426, 20, 426, 30, + 133, 275, -170, 127, 137, 138, 139, 140, 141, 142, + 143, 144, 40, 315, 213, 214, 414, 19, 414, 20, + 220, 221, 129, 238, 415, 401, 450, 50, 318, 280, + 131, 49, 284, 5, 319, 414, 6, 285, 286, 287, + 288, 449, 323, 324, 7, 8, 9, 10, 11, 12, + 13, 133, 402, 119, 58, 131, 120, 121, 313, 314, + 316, 317, 98, 99, 100, 14, 101, 102, 103, 396, + 397, 399, 60, 338, -68, -68, 92, 278, 279, 133, + 281, 282, 133, -67, -67, 95, 62, 133, 133, 133, + 133, 137, 138, 139, 140, 141, 142, 143, 144, -66, + -66, -65, -65, 108, 289, 290, 291, 109, 133, 133, + 325, 326, 341, 342, 343, 101, 102, 110, 270, 448, + 111, 122, 123, 124, 112, 212, 270, 270, 270, 31, + 32, 33, 34, 35, 36, 37, -109, 216, 507, 530, + 508, 130, 217, 218, 51, 345, 243, 239, 240, 276, + 320, -72, -71, -70, 272, 273, -69, 545, -75, 7, + 8, 9, 52, 11, 53, 13, 274, 54, -76, 389, + 368, 328, 329, 349, 351, 55, 374, 350, 353, 86, + 354, 355, 356, 357, 360, 361, 362, 364, 365, 366, + 390, 409, 410, 411, 412, 413, 367, 369, 416, 417, + 418, 371, 420, 421, 375, 270, 376, 377, 387, 386, + 378, 270, 379, 380, 384, 385, 400, 86, 388, 133, + 406, 270, 343, 405, 270, 270, 408, 419, 432, 422, + 434, 435, 436, 423, 431, 428, 446, 441, 447, 437, + 438, 391, 439, 445, 456, 473, 458, 468, 459, 460, + 461, 463, 462, 464, 465, 488, 490, 466, 467, 270, + 270, 471, 270, 477, 270, 503, 479, 480, 270, 518, + 481, 491, 485, 499, 270, 270, 270, 486, 133, 433, + 133, 133, 133, 403, 502, 520, 523, 133, 442, 529, + 426, 506, 509, 511, 519, 521, 492, 493, 494, 495, + 373, 496, 497, 498, 522, 500, 535, 345, 381, 382, + 383, 524, 525, 527, 270, 547, 528, 533, 537, 538, + 542, 549, 270, 550, 270, 548, 551, 552, 554, 555, + 133, 512, 513, 514, 556, 559, 562, 526, 202, 203, + 204, 205, 363, 206, 207, 145, 146, 487, 270, 104, + 56, 454, 245, 114, 453, 26, 59, 539, 337, 540, + 541, 534, 476, 97, 560, 516, 270, 457, 0, 0, + 501, 0, 0, 133, 145, 146, 0, 0, 0, 0, + 0, 133, 133, 133, 0, 0, 0, 424, 133, 0, + 0, 270, 270, 430, 0, 0, 270, 0, 0, 270, + 0, 0, 0, 440, 0, 0, 443, 444, 0, 0, + 0, 133, 125, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 0, 0, 77, 78, + 0, 0, 0, 0, 0, 0, 0, 19, 0, 20, + 0, 469, 470, 0, 472, 0, 474, 0, 0, 0, + 478, 0, 0, 0, 0, 0, 482, 483, 484, 125, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 75, 76, 0, 0, 77, 78, 0, 0, 0, + 0, 0, 0, 0, 19, 0, 20, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 510, 0, 0, 0, + 0, 0, 0, 0, 515, 0, 517, 125, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 0, 0, 77, 78, 0, 0, 0, 0, 0, + 536, 0, 19, 0, 20, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 244, 0, 0, 0, 543, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 404, 0, 406, 407, 408, 0, 0, 0, 412, - 125, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 0, 0, 77, 78, 0, 0, - 0, 504, 0, 505, 506, 19, 0, 20, 125, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 75, 76, 0, 0, 77, 78, 0, 0, 0, 0, - 0, 0, 0, 19, 0, 20, 125, 64, 65, 66, + 0, 0, 79, 0, 0, 80, 0, 0, 81, 0, + 82, 126, 0, 557, 558, 0, 0, 0, 561, 0, + 0, 563, 0, 125, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 0, 0, 77, + 78, 0, 0, 0, 0, 0, 0, 0, 19, 79, + 20, 0, 80, 0, 0, 81, 0, 82, 398, 0, + 344, 125, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 75, 76, 0, 0, 77, 78, 0, + 0, 0, 0, 0, 0, 0, 19, 0, 20, 0, + 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, + 80, 0, 0, 81, 0, 82, 125, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 77, 78, 0, 0, 0, 0, 0, 0, 0, 19, 0, 20, 0, 0, 0, 0, 0, 0, - 480, 481, 482, 241, 0, 125, 64, 65, 66, 67, + 0, 0, 0, 407, 0, 125, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, - 0, 77, 78, 0, 0, 0, 0, 0, 500, 0, - 19, 0, 20, 0, 0, 0, 0, 0, 79, 0, - 0, 80, 319, 0, 81, 0, 82, 126, 0, 0, - 0, 125, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 75, 76, 0, 79, 77, 78, 80, - 0, 0, 81, 0, 82, 371, 19, 0, 20, 125, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 0, 79, 77, 78, 80, 0, 0, - 81, 0, 82, 0, 19, 0, 20, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 380, 0, 125, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 0, 79, 77, 78, 80, 0, 0, 81, - 0, 82, 0, 19, 0, 20, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 423, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 0, 0, 77, 78, 0, 0, 0, 0, 0, 79, - 0, 19, 80, 20, 368, 81, 0, 82, 0, 132, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 0, 0, 77, 78, 79, 0, 0, - 80, 0, 0, 81, 19, 82, 20, 125, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 0, 0, 77, 78, 0, 0, 0, 0, 0, - 0, 0, 19, 0, 20, 0, 79, 0, 0, 80, - 0, 0, 81, 0, 82, 125, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 75, 76, 0, 0, 77, 78, 0, 0, 0, 0, 0, 0, 0, - 19, 0, 20, 0, 79, 0, 0, 80, 0, 0, + 19, 0, 20, 79, 0, 0, 80, 0, 0, 81, + 0, 82, 452, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 0, 0, 77, + 78, 0, 0, 0, 0, 0, 0, 0, 19, 0, + 20, 79, 0, 0, 80, 0, 395, 81, 0, 82, + 132, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 75, 76, 0, 0, 77, 78, 0, 0, + 0, 0, 0, 0, 0, 19, 0, 20, 0, 0, + 0, 0, 0, 0, 0, 0, 79, 0, 0, 80, + 0, 0, 81, 0, 82, 125, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, + 0, 77, 78, 0, 0, 0, 0, 0, 0, 0, + 19, 0, 20, 0, 0, 79, 0, 0, 80, 0, + 0, 81, 0, 82, 125, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 75, 76, 0, 0, + 77, 78, 0, 0, 0, 0, 0, 0, 0, 19, + 0, 20, 0, 79, 0, 0, 80, 0, 0, 81, + 0, 82, 292, 293, 294, 295, 296, 297, 298, 299, + 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 0, 77, 78, 0, 330, 331, 332, 0, + 79, 0, 19, 80, 20, 0, 81, 0, 82, 0, + -78, 19, 0, 20, 0, 0, 0, 6, -78, -78, + 0, 0, 0, 0, 0, -78, -78, -78, -78, -78, + -78, -78, 0, -78, 21, 0, 0, 0, 0, 0, + 0, -78, 22, 0, 0, 79, 23, 0, 80, 0, + 0, 81, 0, 82, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 169, 170, 171, 172, 173, 174, 0, 0, 0, 0, + 0, 0, 0, 0, 79, 0, 0, 80, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, + 0, 256, 0, 257, 181, 182, 183, 184, 0, 258, + 259, 260, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 0, 0, 0, 0, 0, + 333, 0, 0, 334, 0, 335, 0, 0, 336, 247, + 248, 77, 78, 249, 250, 251, 252, 253, 254, 0, + 19, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, - 80, 0, 0, 81, 0, 82, 0, 0, 0, 0, - 0, 77, 78, 0, 305, 306, 307, 0, 0, 0, - 19, 0, 20, 0, 0, 79, 0, 0, 80, -56, - 19, 81, 20, 82, 0, 0, 6, -56, -56, 0, - 0, 0, 0, 0, -56, -56, -56, -56, -56, -56, - -56, 0, -56, 21, 0, 0, 0, 0, 0, 0, - -56, 22, 0, 79, 0, 23, 80, 0, 0, 81, - 0, 82, 153, 154, 155, 156, 157, 158, 159, 160, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 0, 0, 0, 0, 0, 253, 0, 254, - 179, 180, 181, 182, 0, 255, 256, 257, 187, 188, + 171, 172, 173, 174, 0, 0, 0, 0, 247, 248, + 0, 0, 249, 250, 251, 252, 253, 254, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 256, + 0, 257, 181, 182, 183, 184, 0, 258, 259, 260, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 0, 0, 0, 0, 0, 308, 0, 0, 309, - 0, 310, 0, 0, 311, 244, 245, 77, 78, 246, - 247, 248, 249, 250, 251, 0, 19, 0, 20, 0, + 199, 200, 201, 255, 0, 0, 0, 0, 0, 0, + 0, 261, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 173, 174, 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, 256, 0, + 257, 181, 182, 183, 184, 0, 258, 259, 260, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 148, 0, 0, 0, 0, 0, 0, 0, + 261, 0, 0, 149, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 150, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 152, 0, 0, 0, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 169, 170, 171, 172, 173, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 252, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 0, 0, - 0, 0, 0, 253, 0, 254, 179, 180, 181, 182, - 0, 255, 256, 257, 187, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 0, 0, 0, - 0, 0, 244, 245, 0, 258, 246, 247, 248, 249, - 250, 251, 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, 0, 0, 0, 0, 0, 252, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, - 168, 169, 170, 171, 172, 0, 0, 0, 0, 0, - 253, 0, 254, 179, 180, 181, 182, 0, 255, 256, - 257, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 148, 0, 0, 0, 0, 0, - 0, 0, 258, 0, 0, 149, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 150, 151, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 152, 0, 0, 0, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, 172, 173, 174, 175, 0, - 0, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199 + 0, 0, 0, 0, 0, 0, 175, 176, 177, 0, + 0, 178, 179, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201 }; static const short int yycheck[] = { - 38, 100, 51, 100, 275, 133, 218, 135, 136, 32, - 10, 29, 3, 51, 82, 33, 130, 130, 152, 147, - 0, 497, 234, 235, 129, 138, 140, 28, 10, 30, - 27, 471, 135, 136, 510, 37, 5, 6, 7, 8, - 9, 10, 11, 12, 147, 42, 43, 44, 45, 46, - 47, 48, 43, 50, 0, 57, 138, 57, 498, 141, - 98, 58, 130, 5, 6, 7, 8, 9, 10, 11, - 12, 205, 73, 74, 75, 57, 77, 78, 79, 130, - 118, 119, 130, 121, 4, 31, 62, 138, 34, 52, - 53, 54, 140, 84, 29, 15, 42, 43, 44, 45, - 46, 47, 48, 132, 130, 233, 35, 36, 130, 72, - 136, 149, 141, 62, 136, 120, 139, 63, 308, 309, - 310, 129, 140, 5, 6, 7, 8, 9, 10, 11, - 12, 45, 28, 47, 30, 173, 174, 175, 176, 177, - 178, 30, 55, 56, 18, 183, 184, 185, 186, 277, - 53, 136, 129, 56, 57, 367, 141, 285, 286, 287, - 103, 104, 200, 201, 202, 203, 204, 136, 236, 237, - 238, 442, 129, 444, 277, 65, 66, 67, 68, 69, - 70, 71, 285, 286, 287, 25, 26, 17, 18, 17, - 18, 17, 18, 129, 136, 17, 18, 17, 18, 98, - 77, 78, 240, 129, 134, 132, 18, 18, 18, 132, - 18, 30, 30, 30, 342, 132, 135, 135, 60, 130, - 348, 18, 18, 18, 273, 18, 130, 21, 18, 21, - 21, 133, 360, 361, 132, 273, 39, 64, 132, 342, - 132, 290, 30, 130, 132, 348, 132, 132, 132, 132, - 149, 132, 290, 291, 292, 130, 324, 360, 361, 132, - 130, 130, 134, 130, 130, 130, 394, 395, 130, 397, - 130, 399, 130, 130, 30, 403, 175, 130, 133, 178, - 30, 409, 410, 411, 183, 184, 185, 186, 15, 15, - 134, 394, 395, 130, 397, 130, 399, 130, 130, 130, - 403, 30, 18, 37, 203, 204, 409, 410, 411, 130, - 18, 39, 350, 351, 352, 353, 354, 130, 132, 447, - 358, 359, 57, 328, 329, 330, 331, 332, 456, 320, - 335, 336, 337, 338, 339, 30, 134, 18, 15, 57, - 378, 130, 39, 130, 447, 130, 130, 130, 130, 130, - 130, 479, 130, 456, 130, 130, 133, 130, 132, 130, - 130, 130, 400, 130, 130, 133, 130, 495, 133, 130, - 133, 133, 471, 133, 471, 133, 479, 136, 416, 133, - 133, 136, 387, 15, 133, 133, 133, 15, 130, 15, - 518, 519, 495, 292, 15, 523, 43, 104, 526, 498, - 438, 498, 104, 441, 104, 104, 104, 24, 379, 130, - 233, 449, 450, 451, 50, 518, 519, 455, 378, 29, - 523, 3, 41, 526, 429, 430, 431, 432, 521, 434, - 435, 436, 437, 400, 455, 382, -1, -1, -1, 477, + 38, 3, 100, 100, 51, 279, 221, 32, 503, 10, + 98, 10, 29, 51, 37, 82, 33, 152, 120, 52, + 53, 54, 237, 238, 4, 531, 152, 45, 152, 47, + 133, 0, 135, 136, 57, 15, 162, 532, 162, 72, + 546, 43, 35, 36, 147, 154, 5, 6, 7, 8, + 9, 10, 11, 12, 163, 28, 57, 30, 57, 62, + 98, 149, 0, 130, 5, 6, 7, 8, 9, 10, + 11, 12, 29, 208, 55, 56, 152, 28, 152, 30, + 118, 119, 84, 121, 160, 158, 160, 62, 152, 177, + 163, 151, 180, 31, 158, 152, 34, 185, 186, 187, + 188, 158, 25, 26, 42, 43, 44, 45, 46, 47, + 48, 149, 160, 53, 151, 163, 56, 57, 206, 207, + 125, 126, 73, 74, 75, 63, 77, 78, 79, 333, + 334, 335, 30, 236, 17, 18, 161, 175, 176, 177, + 178, 179, 180, 17, 18, 162, 18, 185, 186, 187, + 188, 5, 6, 7, 8, 9, 10, 11, 12, 17, + 18, 17, 18, 151, 202, 203, 204, 151, 206, 207, + 17, 18, 239, 240, 241, 77, 78, 151, 281, 394, + 151, 18, 18, 18, 156, 30, 289, 290, 291, 65, + 66, 67, 68, 69, 70, 71, 154, 18, 472, 158, + 474, 154, 30, 30, 27, 243, 154, 157, 157, 60, + 152, 18, 18, 18, 135, 136, 18, 158, 21, 42, + 43, 44, 45, 46, 47, 48, 147, 50, 21, 317, + 277, 18, 21, 152, 64, 58, 156, 155, 154, 277, + 154, 154, 154, 154, 154, 154, 154, 154, 154, 152, + 30, 353, 354, 355, 356, 357, 152, 152, 360, 361, + 362, 152, 364, 365, 152, 368, 152, 152, 315, 39, + 152, 374, 152, 152, 312, 152, 30, 315, 316, 317, + 155, 384, 349, 152, 387, 388, 30, 154, 376, 15, + 378, 379, 380, 15, 156, 152, 30, 385, 18, 152, + 152, 37, 152, 152, 152, 18, 152, 39, 152, 152, + 152, 152, 414, 152, 152, 57, 30, 419, 152, 422, + 423, 154, 425, 152, 427, 156, 152, 152, 431, 18, + 152, 155, 152, 152, 437, 438, 439, 154, 376, 377, + 378, 379, 380, 345, 152, 155, 155, 385, 386, 15, + 57, 152, 152, 152, 152, 152, 458, 459, 460, 461, + 281, 463, 464, 465, 152, 467, 158, 405, 289, 290, + 291, 155, 155, 155, 477, 39, 155, 155, 155, 155, + 155, 155, 485, 155, 487, 158, 155, 152, 15, 15, + 428, 479, 480, 481, 152, 15, 15, 499, 104, 104, + 104, 104, 265, 104, 104, 503, 503, 445, 511, 43, + 24, 406, 130, 50, 405, 3, 29, 519, 236, 521, + 522, 509, 428, 41, 557, 486, 529, 409, -1, -1, + 468, -1, -1, 471, 532, 532, -1, -1, -1, -1, + -1, 479, 480, 481, -1, -1, -1, 368, 486, -1, + -1, 554, 555, 374, -1, -1, 559, -1, -1, 562, + -1, -1, -1, 384, -1, -1, 387, 388, -1, -1, + -1, 509, 3, 4, 5, 6, 7, 8, 9, 10, + 11, 12, 13, 14, 15, 16, -1, -1, 19, 20, + -1, -1, -1, -1, -1, -1, -1, 28, -1, 30, + -1, 422, 423, -1, 425, -1, 427, -1, -1, -1, + 431, -1, -1, -1, -1, -1, 437, 438, 439, 3, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, + 14, 15, 16, -1, -1, 19, 20, -1, -1, -1, + -1, -1, -1, -1, 28, -1, 30, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 477, -1, -1, -1, + -1, -1, -1, -1, 485, -1, 487, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, -1, -1, 19, 20, -1, -1, -1, -1, -1, + 511, -1, 28, -1, 30, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 40, -1, -1, -1, 529, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 350, -1, 352, 353, 354, -1, -1, -1, 358, - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, 14, 15, 16, -1, -1, 19, 20, -1, -1, - -1, 486, -1, 488, 489, 28, -1, 30, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 15, 16, -1, -1, 19, 20, -1, -1, -1, -1, - -1, -1, -1, 28, -1, 30, 3, 4, 5, 6, + -1, -1, 153, -1, -1, 156, -1, -1, 159, -1, + 161, 162, -1, 554, 555, -1, -1, -1, 559, -1, + -1, 562, -1, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, -1, -1, 19, + 20, -1, -1, -1, -1, -1, -1, -1, 28, 153, + 30, -1, 156, -1, -1, 159, -1, 161, 162, -1, + 40, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 15, 16, -1, -1, 19, 20, -1, + -1, -1, -1, -1, -1, -1, 28, -1, 30, -1, + -1, -1, -1, -1, -1, -1, -1, 153, -1, -1, + 156, -1, -1, 159, -1, 161, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, -1, -1, 19, 20, -1, -1, -1, -1, -1, -1, -1, 28, -1, 30, -1, -1, -1, -1, -1, -1, - 449, 450, 451, 40, -1, 3, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, 15, 16, -1, - -1, 19, 20, -1, -1, -1, -1, -1, 477, -1, - 28, -1, 30, -1, -1, -1, -1, -1, 131, -1, - -1, 134, 40, -1, 137, -1, 139, 140, -1, -1, - -1, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15, 16, -1, 131, 19, 20, 134, - -1, -1, 137, -1, 139, 140, 28, -1, 30, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, - 14, 15, 16, -1, 131, 19, 20, 134, -1, -1, - 137, -1, 139, -1, 28, -1, 30, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 40, -1, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 15, 16, -1, 131, 19, 20, 134, -1, -1, 137, - -1, 139, -1, 28, -1, 30, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 40, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - -1, -1, 19, 20, -1, -1, -1, -1, -1, 131, - -1, 28, 134, 30, 136, 137, -1, 139, -1, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, - 14, 15, 16, -1, -1, 19, 20, 131, -1, -1, - 134, -1, -1, 137, 28, 139, 30, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 16, -1, -1, 19, 20, -1, -1, -1, -1, -1, - -1, -1, 28, -1, 30, -1, 131, -1, -1, 134, - -1, -1, 137, -1, 139, 3, 4, 5, 6, 7, + -1, -1, -1, 40, -1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, -1, -1, 19, 20, -1, -1, -1, -1, -1, -1, -1, - 28, -1, 30, -1, 131, -1, -1, 134, -1, -1, - 137, -1, 139, -1, -1, -1, -1, -1, -1, -1, + 28, -1, 30, 153, -1, -1, 156, -1, -1, 159, + -1, 161, 40, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, -1, -1, 19, + 20, -1, -1, -1, -1, -1, -1, -1, 28, -1, + 30, 153, -1, -1, 156, -1, 158, 159, -1, 161, + 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, + 13, 14, 15, 16, -1, -1, 19, 20, -1, -1, + -1, -1, -1, -1, -1, 28, -1, 30, -1, -1, + -1, -1, -1, -1, -1, -1, 153, -1, -1, 156, + -1, -1, 159, -1, 161, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, 15, 16, -1, + -1, 19, 20, -1, -1, -1, -1, -1, -1, -1, + 28, -1, 30, -1, -1, 153, -1, -1, 156, -1, + -1, 159, -1, 161, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, -1, -1, + 19, 20, -1, -1, -1, -1, -1, -1, -1, 28, + -1, 30, -1, 153, -1, -1, 156, -1, -1, 159, + -1, 161, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, -1, 19, 20, -1, 22, 23, 24, -1, + 153, -1, 28, 156, 30, -1, 159, -1, 161, -1, + 27, 28, -1, 30, -1, -1, -1, 34, 35, 36, + -1, -1, -1, -1, -1, 42, 43, 44, 45, 46, + 47, 48, -1, 50, 51, -1, -1, -1, -1, -1, + -1, 58, 59, -1, -1, 153, 63, -1, 156, -1, + -1, 159, -1, 161, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, -1, -1, -1, -1, + -1, -1, -1, -1, 153, -1, -1, 156, -1, -1, + 159, -1, 161, -1, -1, -1, -1, -1, -1, -1, + -1, 127, -1, 129, 130, 131, 132, 133, -1, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, -1, -1, -1, -1, -1, + 156, -1, -1, 159, -1, 161, -1, -1, 164, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, -1, + 28, -1, 30, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 131, -1, -1, - 134, -1, -1, 137, -1, 139, -1, -1, -1, -1, - -1, 19, 20, -1, 22, 23, 24, -1, -1, -1, - 28, -1, 30, -1, -1, 131, -1, -1, 134, 27, - 28, 137, 30, 139, -1, -1, 34, 35, 36, -1, - -1, -1, -1, -1, 42, 43, 44, 45, 46, 47, - 48, -1, 50, 51, -1, -1, -1, -1, -1, -1, - 58, 59, -1, 131, -1, 63, 134, -1, -1, 137, - -1, 139, 80, 81, 82, 83, 84, 85, 86, 87, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 62, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, -1, -1, -1, -1, -1, 105, -1, 107, - 108, 109, 110, 111, -1, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, -1, -1, -1, -1, -1, 134, -1, -1, 137, - -1, 139, -1, -1, 142, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, -1, 28, -1, 30, -1, + 98, 99, 100, 101, -1, -1, -1, -1, 17, 18, + -1, -1, 21, 22, 23, 24, 25, 26, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 127, + -1, 129, 130, 131, 132, 133, -1, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 62, -1, -1, -1, -1, -1, -1, + -1, 159, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, -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, 127, -1, + 129, 130, 131, 132, 133, -1, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 38, -1, -1, -1, -1, -1, -1, -1, + 159, -1, -1, 49, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 60, 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 76, -1, -1, -1, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 62, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, -1, -1, - -1, -1, -1, 105, -1, 107, 108, 109, 110, 111, - -1, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, -1, -1, -1, - -1, -1, 17, 18, -1, 137, 21, 22, 23, 24, - 25, 26, -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, - -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, -1, -1, -1, -1, -1, - 105, -1, 107, 108, 109, 110, 111, -1, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 38, -1, -1, -1, -1, -1, - -1, -1, 137, -1, -1, 49, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 60, 61, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 76, -1, -1, -1, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, -1, - -1, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128 + -1, -1, -1, -1, -1, -1, 122, 123, 124, -1, + -1, 127, 128, 129, 130, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const unsigned char yystos[] = { - 0, 175, 176, 178, 0, 31, 34, 42, 43, 44, - 45, 46, 47, 48, 63, 156, 191, 193, 195, 28, - 30, 51, 59, 63, 155, 184, 195, 45, 47, 194, - 62, 65, 66, 67, 68, 69, 70, 71, 157, 189, - 29, 201, 202, 203, 52, 53, 54, 72, 181, 129, - 62, 27, 45, 47, 50, 58, 156, 177, 129, 189, - 30, 179, 18, 3, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 19, 20, 131, - 134, 137, 139, 144, 164, 165, 166, 167, 168, 184, - 198, 32, 139, 190, 33, 140, 192, 202, 73, 74, - 75, 77, 78, 79, 155, 204, 205, 207, 129, 129, - 129, 129, 134, 182, 179, 164, 35, 36, 174, 174, - 174, 174, 18, 18, 18, 3, 140, 168, 169, 184, - 132, 141, 3, 166, 200, 4, 15, 5, 6, 7, - 8, 9, 10, 11, 12, 151, 152, 153, 38, 49, + 0, 199, 200, 202, 0, 31, 34, 42, 43, 44, + 45, 46, 47, 48, 63, 180, 215, 217, 219, 28, + 30, 51, 59, 63, 179, 208, 219, 45, 47, 218, + 62, 65, 66, 67, 68, 69, 70, 71, 181, 213, + 29, 225, 226, 227, 52, 53, 54, 72, 205, 151, + 62, 27, 45, 47, 50, 58, 180, 201, 151, 213, + 30, 203, 18, 3, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 19, 20, 153, + 156, 159, 161, 166, 188, 189, 190, 191, 192, 208, + 222, 32, 161, 214, 33, 162, 216, 226, 73, 74, + 75, 77, 78, 79, 179, 228, 229, 231, 151, 151, + 151, 151, 156, 206, 203, 188, 35, 36, 198, 198, + 198, 198, 18, 18, 18, 3, 162, 192, 193, 208, + 154, 163, 3, 190, 224, 4, 15, 5, 6, 7, + 8, 9, 10, 11, 12, 175, 176, 177, 38, 49, 60, 61, 76, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 146, 147, 148, 149, 150, 211, 212, 214, 215, 30, - 55, 56, 180, 18, 30, 30, 183, 166, 166, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 151, 152, 154, 166, 171, 166, 135, 135, 130, 140, - 132, 40, 169, 170, 17, 18, 21, 22, 23, 24, - 25, 26, 62, 105, 107, 113, 114, 115, 137, 146, - 147, 148, 149, 150, 172, 197, 198, 199, 199, 199, - 199, 200, 60, 157, 166, 166, 200, 166, 166, 208, - 200, 200, 200, 200, 200, 166, 166, 166, 200, 200, - 157, 103, 104, 130, 136, 130, 162, 162, 25, 26, - 17, 18, 145, 18, 21, 22, 23, 24, 134, 137, - 139, 142, 172, 198, 162, 162, 168, 168, 168, 40, - 166, 186, 187, 188, 130, 133, 64, 196, 132, 132, - 132, 132, 132, 171, 173, 132, 132, 132, 132, 132, - 130, 130, 164, 130, 159, 130, 159, 199, 134, 130, - 130, 130, 130, 130, 130, 199, 199, 199, 130, 39, - 164, 166, 200, 30, 37, 57, 160, 163, 136, 173, - 173, 140, 173, 30, 136, 138, 184, 185, 130, 133, - 40, 30, 171, 171, 171, 171, 171, 130, 138, 171, - 171, 171, 171, 171, 15, 15, 199, 10, 57, 10, - 130, 213, 199, 134, 200, 166, 200, 200, 200, 130, - 130, 130, 200, 166, 199, 199, 130, 30, 18, 162, - 136, 138, 140, 40, 186, 160, 161, 130, 213, 130, - 130, 130, 130, 171, 130, 130, 130, 130, 39, 199, - 199, 132, 199, 18, 199, 200, 209, 130, 199, 130, - 130, 130, 199, 199, 199, 132, 166, 57, 158, 30, - 133, 171, 171, 171, 171, 171, 171, 171, 171, 166, - 130, 134, 209, 210, 130, 159, 159, 130, 199, 130, - 200, 200, 200, 210, 199, 18, 130, 133, 130, 130, - 133, 133, 133, 133, 133, 15, 136, 153, 206, 133, - 200, 136, 199, 133, 171, 171, 171, 199, 197, 136, - 153, 39, 136, 133, 133, 133, 130, 197, 15, 15, - 130, 199, 199, 15, 204, 199, 15, 199 + 97, 98, 99, 100, 101, 122, 123, 124, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 168, 169, 170, 171, 173, 174, 235, 236, + 238, 239, 30, 55, 56, 204, 18, 30, 30, 207, + 190, 190, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 175, 176, 178, 190, 195, 190, 157, + 157, 152, 162, 154, 40, 193, 194, 17, 18, 21, + 22, 23, 24, 25, 26, 62, 127, 129, 135, 136, + 137, 159, 168, 169, 170, 171, 173, 174, 196, 221, + 222, 223, 223, 223, 223, 224, 60, 181, 190, 190, + 224, 190, 190, 232, 224, 224, 224, 224, 224, 190, + 190, 190, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 172, 224, 224, 181, 125, 126, 152, 158, + 152, 186, 186, 25, 26, 17, 18, 167, 18, 21, + 22, 23, 24, 156, 159, 161, 164, 196, 222, 186, + 186, 192, 192, 192, 40, 190, 210, 211, 212, 152, + 155, 64, 220, 154, 154, 154, 154, 154, 195, 197, + 154, 154, 154, 172, 154, 154, 152, 152, 188, 152, + 183, 152, 183, 223, 156, 152, 152, 152, 152, 152, + 152, 223, 223, 223, 190, 152, 39, 188, 190, 224, + 30, 37, 57, 184, 187, 158, 197, 197, 162, 197, + 30, 158, 160, 208, 209, 152, 155, 40, 30, 195, + 195, 195, 195, 195, 152, 160, 195, 195, 195, 154, + 195, 195, 15, 15, 223, 10, 57, 10, 152, 237, + 223, 156, 224, 190, 224, 224, 224, 152, 152, 152, + 223, 224, 190, 223, 223, 152, 30, 18, 186, 158, + 160, 162, 40, 210, 184, 185, 152, 237, 152, 152, + 152, 152, 195, 152, 152, 152, 195, 152, 39, 223, + 223, 154, 223, 18, 223, 224, 233, 152, 223, 152, + 152, 152, 223, 223, 223, 152, 154, 190, 57, 182, + 30, 155, 195, 195, 195, 195, 195, 195, 195, 152, + 195, 190, 152, 156, 233, 234, 152, 183, 183, 152, + 223, 152, 224, 224, 224, 223, 234, 223, 18, 152, + 155, 152, 152, 155, 155, 155, 195, 155, 155, 15, + 158, 177, 230, 155, 224, 158, 223, 155, 155, 195, + 195, 195, 155, 223, 221, 158, 177, 39, 158, 155, + 155, 155, 152, 221, 15, 15, 152, 223, 223, 15, + 228, 223, 15, 223 }; #define yyerrok (yyerrstatus = 0) @@ -2240,27 +2377,27 @@ yyreduce: YY_REDUCE_PRINT (yyn); switch (yyn) { - case 55: -#line 321 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 77: +#line 356 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[-1].String); ;} break; - case 56: -#line 324 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 78: +#line 359 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(""); ;} break; - case 64: -#line 331 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 86: +#line 366 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(""); ;} break; - case 71: -#line 336 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 93: +#line 371 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2268,28 +2405,28 @@ yyreduce: ;} break; - case 72: -#line 341 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 94: +#line 376 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(""); ;} break; - case 73: -#line 346 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 95: +#line 381 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 74: -#line 347 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 96: +#line 382 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); (yyval.String) = (yyvsp[-1].String); ;} break; - case 75: -#line 350 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 97: +#line 385 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 76: -#line 351 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 98: +#line 386 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-1].String)->insert(0, ", "); *(yyvsp[-1].String) += " " + *(yyvsp[0].String); @@ -2298,8 +2435,8 @@ yyreduce: ;} break; - case 77: -#line 359 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 99: +#line 394 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2307,18 +2444,18 @@ yyreduce: ;} break; - case 78: -#line 365 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 100: +#line 400 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 80: -#line 369 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 102: +#line 404 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 81: -#line 370 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 103: +#line 405 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-1].String)->insert(0, ", "); if (!(yyvsp[0].String)->empty()) @@ -2328,8 +2465,8 @@ yyreduce: ;} break; - case 83: -#line 380 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 105: +#line 415 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2337,31 +2474,31 @@ yyreduce: ;} break; - case 101: -#line 402 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 123: +#line 437 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Type).newTy = (yyvsp[0].String); (yyval.Type).oldTy = OpaqueTy; ;} break; - case 102: -#line 406 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 124: +#line 441 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Type).newTy = (yyvsp[0].String); (yyval.Type).oldTy = UnresolvedTy; ;} break; - case 103: -#line 410 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 125: +#line 445 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Type) = (yyvsp[0].Type); ;} break; - case 104: -#line 413 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 126: +#line 448 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Type UpReference (yyvsp[0].String)->insert(0, "\\"); (yyval.Type).newTy = (yyvsp[0].String); @@ -2369,8 +2506,8 @@ yyreduce: ;} break; - case 105: -#line 418 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 127: +#line 453 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Function derived type? *(yyvsp[-3].Type).newTy += "( " + *(yyvsp[-1].String) + " )"; delete (yyvsp[-1].String); @@ -2379,8 +2516,8 @@ yyreduce: ;} break; - case 106: -#line 424 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 128: +#line 459 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Sized array type? (yyvsp[-3].String)->insert(0,"[ "); *(yyvsp[-3].String) += " x " + *(yyvsp[-1].Type).newTy + " ]"; @@ -2391,8 +2528,8 @@ yyreduce: ;} break; - case 107: -#line 432 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 129: +#line 467 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Packed array type? (yyvsp[-3].String)->insert(0,"< "); *(yyvsp[-3].String) += " x " + *(yyvsp[-1].Type).newTy + " >"; @@ -2403,8 +2540,8 @@ yyreduce: ;} break; - case 108: -#line 440 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 130: +#line 475 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Structure type? (yyvsp[-1].String)->insert(0, "{ "); *(yyvsp[-1].String) += " }"; @@ -2413,16 +2550,16 @@ yyreduce: ;} break; - case 109: -#line 446 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 131: +#line 481 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Empty structure type? (yyval.Type).newTy = new std::string("{}"); (yyval.Type).oldTy = StructTy; ;} break; - case 110: -#line 450 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 132: +#line 485 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Pointer type? *(yyvsp[-1].Type).newTy += '*'; (yyval.Type).elemTy = (yyvsp[-1].Type).oldTy; @@ -2431,15 +2568,15 @@ yyreduce: ;} break; - case 111: -#line 461 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 133: +#line 496 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].Type).newTy; ;} break; - case 112: -#line 464 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 134: +#line 499 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", " + *(yyvsp[0].Type).newTy; delete (yyvsp[0].Type).newTy; @@ -2447,8 +2584,8 @@ yyreduce: ;} break; - case 114: -#line 473 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 136: +#line 508 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", ..."; delete (yyvsp[0].String); @@ -2456,22 +2593,22 @@ yyreduce: ;} break; - case 115: -#line 478 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 137: +#line 513 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); ;} break; - case 116: -#line 481 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 138: +#line 516 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 117: -#line 491 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 139: +#line 526 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Nonempty unsized arr (yyval.Const).type = (yyvsp[-3].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-3].Type).newTy); @@ -2480,8 +2617,8 @@ yyreduce: ;} break; - case 118: -#line 497 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 140: +#line 532 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-2].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-2].Type).newTy); @@ -2489,8 +2626,8 @@ yyreduce: ;} break; - case 119: -#line 502 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 141: +#line 537 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-2].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-2].Type).newTy); @@ -2499,8 +2636,8 @@ yyreduce: ;} break; - case 120: -#line 508 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 142: +#line 543 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Nonempty unsized arr (yyval.Const).type = (yyvsp[-3].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-3].Type).newTy); @@ -2509,8 +2646,8 @@ yyreduce: ;} break; - case 121: -#line 514 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 143: +#line 549 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-3].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-3].Type).newTy); @@ -2519,8 +2656,8 @@ yyreduce: ;} break; - case 122: -#line 520 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 144: +#line 555 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-2].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-2].Type).newTy); @@ -2528,8 +2665,8 @@ yyreduce: ;} break; - case 123: -#line 525 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 145: +#line 560 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2538,8 +2675,8 @@ yyreduce: ;} break; - case 124: -#line 531 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 146: +#line 566 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2548,8 +2685,8 @@ yyreduce: ;} break; - case 125: -#line 537 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 147: +#line 572 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2558,8 +2695,8 @@ yyreduce: ;} break; - case 126: -#line 543 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 148: +#line 578 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2568,8 +2705,8 @@ yyreduce: ;} break; - case 127: -#line 549 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 149: +#line 584 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2578,8 +2715,8 @@ yyreduce: ;} break; - case 128: -#line 555 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 150: +#line 590 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // integral constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2588,8 +2725,8 @@ yyreduce: ;} break; - case 129: -#line 561 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 151: +#line 596 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // integral constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2598,8 +2735,8 @@ yyreduce: ;} break; - case 130: -#line 567 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 152: +#line 602 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Boolean constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2608,8 +2745,8 @@ yyreduce: ;} break; - case 131: -#line 573 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 153: +#line 608 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Boolean constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2618,8 +2755,8 @@ yyreduce: ;} break; - case 132: -#line 579 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 154: +#line 614 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Float & Double constants (yyval.Const).type = (yyvsp[-1].Type); (yyval.Const).cnst = new std::string(*(yyvsp[-1].Type).newTy); @@ -2628,8 +2765,8 @@ yyreduce: ;} break; - case 133: -#line 587 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 155: +#line 622 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { std::string source = *(yyvsp[-3].Const).cnst; TypeInfo DstTy = (yyvsp[-1].Type); @@ -2646,8 +2783,8 @@ yyreduce: ;} break; - case 134: -#line 601 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 156: +#line 636 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-4].String) += "(" + *(yyvsp[-2].Const).cnst; for (unsigned i = 0; i < (yyvsp[-1].ValList)->size(); ++i) { @@ -2662,8 +2799,8 @@ yyreduce: ;} break; - case 135: -#line 613 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 157: +#line 648 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-7].String) += "(" + *(yyvsp[-5].Const).cnst + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-5].Const).destroy(); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2671,8 +2808,8 @@ yyreduce: ;} break; - case 136: -#line 618 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 158: +#line 653 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { const char* op = getDivRemOpcode(*(yyvsp[-5].String), (yyvsp[-3].Const).type); (yyval.String) = new std::string(op); @@ -2681,8 +2818,8 @@ yyreduce: ;} break; - case 137: -#line 624 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 159: +#line 659 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2690,17 +2827,29 @@ yyreduce: ;} break; - case 138: -#line 629 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 160: +#line 664 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { +#if UPGRADE_SETCOND_OPS + *(yyvsp[-5].String) = getCompareOp(*(yyvsp[-5].String), (yyvsp[-3].Const).type); +#endif *(yyvsp[-5].String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); (yyval.String) = (yyvsp[-5].String); ;} break; - case 139: -#line 634 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 161: +#line 672 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + { + *(yyvsp[-6].String) += "(" + *(yyvsp[-5].String) + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; + delete (yyvsp[-5].String); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); + (yyval.String) = (yyvsp[-6].String); + ;} + break; + + case 162: +#line 677 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { const char* shiftop = (yyvsp[-5].String)->c_str(); if (*(yyvsp[-5].String) == "shr") @@ -2711,8 +2860,8 @@ yyreduce: ;} break; - case 140: -#line 642 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 163: +#line 685 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2720,8 +2869,8 @@ yyreduce: ;} break; - case 141: -#line 647 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 164: +#line 690 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-7].String) += "(" + *(yyvsp[-5].Const).cnst + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-5].Const).destroy(); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2729,8 +2878,8 @@ yyreduce: ;} break; - case 142: -#line 652 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 165: +#line 695 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-7].String) += "(" + *(yyvsp[-5].Const).cnst + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")"; (yyvsp[-5].Const).destroy(); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy(); @@ -2738,8 +2887,8 @@ yyreduce: ;} break; - case 143: -#line 662 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 166: +#line 705 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", " + *(yyvsp[0].Const).cnst; (yyvsp[0].Const).destroy(); @@ -2747,26 +2896,26 @@ yyreduce: ;} break; - case 144: -#line 667 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 167: +#line 710 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(*(yyvsp[0].Const).cnst); (yyvsp[0].Const).destroy(); ;} break; - case 147: -#line 682 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 170: +#line 725 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { ;} break; - case 148: -#line 687 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 171: +#line 730 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 149: -#line 690 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 172: +#line 733 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -2774,34 +2923,34 @@ yyreduce: ;} break; - case 150: -#line 695 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 173: +#line 738 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << "module asm " << " " << *(yyvsp[0].String) << "\n"; (yyval.String) = 0; ;} break; - case 151: -#line 699 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 174: +#line 742 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << "implementation\n"; (yyval.String) = 0; ;} break; - case 152: -#line 703 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 175: +#line 746 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 154: -#line 705 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 177: +#line 748 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); *(yyval.String) = "external"; ;} break; - case 155: -#line 708 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 178: +#line 751 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { EnumeratedTypes.push_back((yyvsp[0].Type)); if (!(yyvsp[-2].String)->empty()) { @@ -2816,8 +2965,8 @@ yyreduce: ;} break; - case 156: -#line 720 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 179: +#line 763 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Function prototypes can be in const pool *O << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -2825,8 +2974,8 @@ yyreduce: ;} break; - case 157: -#line 725 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 180: +#line 768 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Asm blocks can be in the const pool *O << *(yyvsp[-2].String) << " " << *(yyvsp[-1].String) << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[-2].String); delete (yyvsp[-1].String); delete (yyvsp[0].String); @@ -2834,8 +2983,8 @@ yyreduce: ;} break; - case 158: -#line 730 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 181: +#line 773 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-4].String)->empty()) *O << *(yyvsp[-4].String) << " = "; @@ -2845,8 +2994,8 @@ yyreduce: ;} break; - case 159: -#line 737 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 182: +#line 780 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-4].String)->empty()) *O << *(yyvsp[-4].String) << " = "; @@ -2856,8 +3005,8 @@ yyreduce: ;} break; - case 160: -#line 744 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 183: +#line 787 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-4].String)->empty()) *O << *(yyvsp[-4].String) << " = "; @@ -2867,8 +3016,8 @@ yyreduce: ;} break; - case 161: -#line 751 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 184: +#line 794 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-4].String)->empty()) *O << *(yyvsp[-4].String) << " = "; @@ -2878,8 +3027,8 @@ yyreduce: ;} break; - case 162: -#line 758 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 185: +#line 801 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << *(yyvsp[-1].String) << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[-1].String); delete (yyvsp[0].String); @@ -2887,8 +3036,8 @@ yyreduce: ;} break; - case 163: -#line 763 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 186: +#line 806 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << *(yyvsp[-2].String) << " = " << *(yyvsp[0].String) << "\n"; delete (yyvsp[-2].String); delete (yyvsp[0].String); @@ -2896,15 +3045,15 @@ yyreduce: ;} break; - case 164: -#line 768 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 187: +#line 811 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 168: -#line 778 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 191: +#line 821 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " = " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2912,8 +3061,8 @@ yyreduce: ;} break; - case 169: -#line 783 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 192: +#line 826 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " = " + *(yyvsp[0].String); if (*(yyvsp[0].String) == "64") @@ -2923,8 +3072,8 @@ yyreduce: ;} break; - case 170: -#line 790 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 193: +#line 833 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " = " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2932,8 +3081,8 @@ yyreduce: ;} break; - case 171: -#line 795 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 194: +#line 838 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " = " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2941,8 +3090,8 @@ yyreduce: ;} break; - case 172: -#line 802 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 195: +#line 845 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-1].String)->insert(0, "[ "); *(yyvsp[-1].String) += " ]"; @@ -2950,8 +3099,8 @@ yyreduce: ;} break; - case 173: -#line 809 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 196: +#line 852 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -2959,20 +3108,20 @@ yyreduce: ;} break; - case 175: -#line 815 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 198: +#line 858 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 179: -#line 824 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 202: +#line 867 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 180: -#line 826 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 203: +#line 869 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[-1].Type).newTy; if (!(yyvsp[0].String)->empty()) @@ -2981,30 +3130,30 @@ yyreduce: ;} break; - case 181: -#line 833 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 204: +#line 876 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", " + *(yyvsp[0].String); delete (yyvsp[0].String); ;} break; - case 182: -#line 837 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 205: +#line 880 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); ;} break; - case 183: -#line 841 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 206: +#line 884 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); ;} break; - case 184: -#line 844 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 207: +#line 887 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += ", ..."; (yyval.String) = (yyvsp[-2].String); @@ -3012,20 +3161,20 @@ yyreduce: ;} break; - case 185: -#line 849 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 208: +#line 892 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); ;} break; - case 186: -#line 852 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 209: +#line 895 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 187: -#line 855 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 210: +#line 898 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-7].String)->empty()) { *(yyvsp[-7].String) += " "; @@ -3046,18 +3195,18 @@ yyreduce: ;} break; - case 188: -#line 874 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 211: +#line 917 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string("{"); delete (yyvsp[0].String); ;} break; - case 189: -#line 875 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 212: +#line 918 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string ("{"); ;} break; - case 190: -#line 877 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 213: +#line 920 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-2].String)->empty()) { *O << *(yyvsp[-2].String) << " "; @@ -3068,18 +3217,18 @@ yyreduce: ;} break; - case 191: -#line 886 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 214: +#line 929 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string("}"); delete (yyvsp[0].String); ;} break; - case 192: -#line 887 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 215: +#line 930 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string("}"); ;} break; - case 193: -#line 889 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 216: +#line 932 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if ((yyvsp[-1].String)) *O << *(yyvsp[-1].String); @@ -3088,13 +3237,13 @@ yyreduce: ;} break; - case 194: -#line 897 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 217: +#line 940 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 197: -#line 903 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 220: +#line 946 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-1].String)->empty()) *(yyvsp[-2].String) += " " + *(yyvsp[-1].String); @@ -3105,13 +3254,13 @@ yyreduce: ;} break; - case 198: -#line 916 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 221: +#line 959 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 208: -#line 922 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 231: +#line 965 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-1].String)->insert(0, "<"); *(yyvsp[-1].String) += ">"; @@ -3119,8 +3268,8 @@ yyreduce: ;} break; - case 210: -#line 928 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 233: +#line 971 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-3].String)->empty()) { *(yyvsp[-4].String) += " " + *(yyvsp[-3].String); @@ -3131,8 +3280,8 @@ yyreduce: ;} break; - case 213: -#line 941 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 236: +#line 984 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Value).val = (yyvsp[0].String); (yyval.Value).constant = false; @@ -3141,8 +3290,8 @@ yyreduce: ;} break; - case 214: -#line 947 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 237: +#line 990 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Value).val = (yyvsp[0].String); (yyval.Value).constant = true; @@ -3151,8 +3300,8 @@ yyreduce: ;} break; - case 215: -#line 958 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 238: +#line 1001 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.Value) = (yyvsp[0].Value); (yyval.Value).type = (yyvsp[-1].Type); @@ -3160,29 +3309,29 @@ yyreduce: ;} break; - case 216: -#line 964 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 239: +#line 1007 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 217: -#line 967 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 240: +#line 1010 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Do not allow functions with 0 basic blocks (yyval.String) = 0; ;} break; - case 218: -#line 975 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 241: +#line 1018 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 219: -#line 979 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 242: +#line 1022 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -3190,15 +3339,15 @@ yyreduce: ;} break; - case 220: -#line 984 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 243: +#line 1027 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = 0; ;} break; - case 221: -#line 987 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 244: +#line 1030 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -3206,13 +3355,13 @@ yyreduce: ;} break; - case 223: -#line 993 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 246: +#line 1036 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = (yyvsp[0].String); *(yyval.String) = "unwind"; ;} break; - case 224: -#line 995 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 247: +#line 1038 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Return with a result... *O << " " << *(yyvsp[-1].String) << " " << *(yyvsp[0].Value).val << "\n"; delete (yyvsp[-1].String); (yyvsp[0].Value).destroy(); @@ -3220,8 +3369,8 @@ yyreduce: ;} break; - case 225: -#line 1000 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 248: +#line 1043 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Return with no result... *O << " " << *(yyvsp[-1].String) << " " << *(yyvsp[0].Type).newTy << "\n"; delete (yyvsp[-1].String); (yyvsp[0].Type).destroy(); @@ -3229,8 +3378,8 @@ yyreduce: ;} break; - case 226: -#line 1005 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 249: +#line 1048 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Unconditional Branch... *O << " " << *(yyvsp[-2].String) << " " << *(yyvsp[-1].Type).newTy << " " << *(yyvsp[0].Value).val << "\n"; delete (yyvsp[-2].String); (yyvsp[-1].Type).destroy(); (yyvsp[0].Value).destroy(); @@ -3238,8 +3387,8 @@ yyreduce: ;} break; - case 227: -#line 1010 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 250: +#line 1053 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[-8].String) << " " << *(yyvsp[-7].Type).newTy << " " << *(yyvsp[-6].Value).val << ", " << *(yyvsp[-4].Type).newTy << " " << *(yyvsp[-3].Value).val << ", " << *(yyvsp[-1].Type).newTy << " " @@ -3250,8 +3399,8 @@ yyreduce: ;} break; - case 228: -#line 1018 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 251: +#line 1061 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[-8].String) << " " << *(yyvsp[-7].Type).newTy << " " << *(yyvsp[-6].Value).val << ", " << *(yyvsp[-4].Type).newTy << " " << *(yyvsp[-3].Value).val << " [" << *(yyvsp[-1].String) << " ]\n"; @@ -3261,8 +3410,8 @@ yyreduce: ;} break; - case 229: -#line 1025 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 252: +#line 1068 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[-7].String) << " " << *(yyvsp[-6].Type).newTy << " " << *(yyvsp[-5].Value).val << ", " << *(yyvsp[-3].Type).newTy << " " << *(yyvsp[-2].Value).val << "[]\n"; @@ -3271,8 +3420,8 @@ yyreduce: ;} break; - case 230: -#line 1032 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 253: +#line 1075 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " "; if (!(yyvsp[-13].String)->empty()) @@ -3294,8 +3443,8 @@ yyreduce: ;} break; - case 231: -#line 1051 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 254: +#line 1094 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -3303,8 +3452,8 @@ yyreduce: ;} break; - case 232: -#line 1056 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 255: +#line 1099 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *O << " " << *(yyvsp[0].String) << "\n"; delete (yyvsp[0].String); @@ -3312,8 +3461,8 @@ yyreduce: ;} break; - case 233: -#line 1062 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 256: +#line 1105 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Type).newTy + " " + *(yyvsp[-3].String) + ", " + *(yyvsp[-1].Type).newTy + " " + *(yyvsp[0].Value).val; (yyvsp[-4].Type).destroy(); delete (yyvsp[-3].String); (yyvsp[-1].Type).destroy(); (yyvsp[0].Value).destroy(); @@ -3321,8 +3470,8 @@ yyreduce: ;} break; - case 234: -#line 1067 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 257: +#line 1110 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-3].String)->insert(0, *(yyvsp[-4].Type).newTy + " " ); *(yyvsp[-3].String) += ", " + *(yyvsp[-1].Type).newTy + " " + *(yyvsp[0].Value).val; @@ -3331,8 +3480,8 @@ yyreduce: ;} break; - case 235: -#line 1075 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 258: +#line 1118 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-1].String)->empty()) *(yyvsp[-1].String) += " = "; @@ -3342,8 +3491,8 @@ yyreduce: ;} break; - case 236: -#line 1084 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 259: +#line 1127 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Used for PHI nodes (yyvsp[-3].Value).val->insert(0, *(yyvsp[-5].Type).newTy + "["); *(yyvsp[-3].Value).val += "," + *(yyvsp[-1].Value).val + "]"; @@ -3353,8 +3502,8 @@ yyreduce: ;} break; - case 237: -#line 1091 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 260: +#line 1134 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-6].String) += ", [" + *(yyvsp[-3].Value).val + "," + *(yyvsp[-1].Value).val + "]"; (yyvsp[-3].Value).destroy(); (yyvsp[-1].Value).destroy(); @@ -3362,34 +3511,34 @@ yyreduce: ;} break; - case 238: -#line 1099 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 261: +#line 1142 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = new ValueList(); (yyval.ValList)->push_back((yyvsp[0].Value)); ;} break; - case 239: -#line 1103 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 262: +#line 1146 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyvsp[-2].ValList)->push_back((yyvsp[0].Value)); (yyval.ValList) = (yyvsp[-2].ValList); ;} break; - case 240: -#line 1110 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 263: +#line 1153 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = (yyvsp[0].ValList); ;} break; - case 241: -#line 1111 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 264: +#line 1154 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = new ValueList(); ;} break; - case 242: -#line 1115 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 265: +#line 1158 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -3397,8 +3546,8 @@ yyreduce: ;} break; - case 244: -#line 1123 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 267: +#line 1166 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { const char* op = getDivRemOpcode(*(yyvsp[-4].String), (yyvsp[-3].Type)); (yyval.String) = new std::string(op); @@ -3407,8 +3556,8 @@ yyreduce: ;} break; - case 245: -#line 1129 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 268: +#line 1172 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-4].String) += " " + *(yyvsp[-3].Type).newTy + " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-3].Type).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3416,17 +3565,29 @@ yyreduce: ;} break; - case 246: -#line 1134 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 269: +#line 1177 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { +#if UPGRADE_SETCOND_OPS + *(yyvsp[-4].String) = getCompareOp(*(yyvsp[-4].String), (yyvsp[-3].Type)); +#endif *(yyvsp[-4].String) += " " + *(yyvsp[-3].Type).newTy + " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-3].Type).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); (yyval.String) = (yyvsp[-4].String); ;} break; - case 247: -#line 1139 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 270: +#line 1185 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + { + *(yyvsp[-6].String) += " " + *(yyvsp[-5].String) + " " + *(yyvsp[-3].Value).val + "," + *(yyvsp[-1].Value).val + ")"; + delete (yyvsp[-5].String); (yyvsp[-3].Value).destroy(); (yyvsp[-1].Value).destroy(); + (yyval.String) = (yyvsp[-6].String); + ;} + break; + + case 271: +#line 1190 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].Value).val; (yyvsp[0].Value).destroy(); @@ -3434,8 +3595,8 @@ yyreduce: ;} break; - case 248: -#line 1144 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 272: +#line 1195 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { const char* shiftop = (yyvsp[-3].String)->c_str(); if (*(yyvsp[-3].String) == "shr") @@ -3446,8 +3607,8 @@ yyreduce: ;} break; - case 249: -#line 1152 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 273: +#line 1203 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { std::string source = *(yyvsp[-2].Value).val; TypeInfo SrcTy = (yyvsp[-2].Value).type; @@ -3464,8 +3625,8 @@ yyreduce: ;} break; - case 250: -#line 1166 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 274: +#line 1217 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Value).val + ", " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-4].Value).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3473,8 +3634,8 @@ yyreduce: ;} break; - case 251: -#line 1171 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 275: +#line 1222 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-3].String) += " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Type).newTy; (yyvsp[-2].Value).destroy(); (yyvsp[0].Type).destroy(); @@ -3482,8 +3643,8 @@ yyreduce: ;} break; - case 252: -#line 1176 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 276: +#line 1227 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-3].String) += " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3491,8 +3652,8 @@ yyreduce: ;} break; - case 253: -#line 1181 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 277: +#line 1232 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Value).val + ", " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-4].Value).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3500,8 +3661,8 @@ yyreduce: ;} break; - case 254: -#line 1186 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 278: +#line 1237 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Value).val + ", " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val; (yyvsp[-4].Value).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy(); @@ -3509,8 +3670,8 @@ yyreduce: ;} break; - case 255: -#line 1191 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 279: +#line 1242 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); @@ -3518,8 +3679,8 @@ yyreduce: ;} break; - case 256: -#line 1196 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 280: +#line 1247 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-5].String)->empty()) *(yyvsp[-6].String) += " " + *(yyvsp[-5].String); @@ -3539,23 +3700,23 @@ yyreduce: ;} break; - case 258: -#line 1218 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 282: +#line 1269 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = (yyvsp[0].ValList); ;} break; - case 259: -#line 1219 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 283: +#line 1270 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.ValList) = new ValueList(); ;} break; - case 261: -#line 1224 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 285: +#line 1275 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { (yyval.String) = new std::string(); ;} break; - case 262: -#line 1227 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 286: +#line 1278 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " " + *(yyvsp[-1].Type).newTy; if (!(yyvsp[0].String)->empty()) @@ -3565,8 +3726,8 @@ yyreduce: ;} break; - case 263: -#line 1234 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 287: +#line 1285 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Type).newTy + ", " + *(yyvsp[-2].Type).newTy + " " + *(yyvsp[-1].Value).val; if (!(yyvsp[0].String)->empty()) @@ -3576,8 +3737,8 @@ yyreduce: ;} break; - case 264: -#line 1241 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 288: +#line 1292 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-2].String) += " " + *(yyvsp[-1].Type).newTy; if (!(yyvsp[0].String)->empty()) @@ -3587,8 +3748,8 @@ yyreduce: ;} break; - case 265: -#line 1248 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 289: +#line 1299 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-5].String) += " " + *(yyvsp[-4].Type).newTy + ", " + *(yyvsp[-2].Type).newTy + " " + *(yyvsp[-1].Value).val; if (!(yyvsp[0].String)->empty()) @@ -3598,8 +3759,8 @@ yyreduce: ;} break; - case 266: -#line 1255 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 290: +#line 1306 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { *(yyvsp[-1].String) += " " + *(yyvsp[0].Value).val; (yyvsp[0].Value).destroy(); @@ -3607,8 +3768,8 @@ yyreduce: ;} break; - case 267: -#line 1260 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 291: +#line 1311 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-3].String)->empty()) *(yyvsp[-3].String) += " "; @@ -3618,8 +3779,8 @@ yyreduce: ;} break; - case 268: -#line 1267 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 292: +#line 1318 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { if (!(yyvsp[-5].String)->empty()) *(yyvsp[-5].String) += " "; @@ -3629,8 +3790,8 @@ yyreduce: ;} break; - case 269: -#line 1274 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" + case 293: +#line 1325 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" { // Upgrade the indices for (unsigned i = 0; i < (yyvsp[0].ValList)->size(); ++i) { @@ -3661,7 +3822,7 @@ yyreduce: } /* Line 1126 of yacc.c. */ -#line 3665 "UpgradeParser.tab.c" +#line 3826 "UpgradeParser.tab.c" yyvsp -= yylen; yyssp -= yylen; @@ -3929,7 +4090,7 @@ yyreturn: } -#line 1298 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" +#line 1349 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" int yyerror(const char *ErrorMsg) { diff --git a/tools/llvm-upgrade/UpgradeParser.h b/tools/llvm-upgrade/UpgradeParser.h index fa719dd364c..7000e205d03 100644 --- a/tools/llvm-upgrade/UpgradeParser.h +++ b/tools/llvm-upgrade/UpgradeParser.h @@ -126,35 +126,57 @@ SETGT = 352, SETEQ = 353, SETNE = 354, - MALLOC = 355, - ALLOCA = 356, - FREE = 357, - LOAD = 358, - STORE = 359, - GETELEMENTPTR = 360, - PHI_TOK = 361, - SELECT = 362, - SHL = 363, - SHR = 364, - ASHR = 365, - LSHR = 366, - VAARG = 367, - EXTRACTELEMENT = 368, - INSERTELEMENT = 369, - SHUFFLEVECTOR = 370, - CAST = 371, - TRUNC = 372, - ZEXT = 373, - SEXT = 374, - FPTRUNC = 375, - FPEXT = 376, - FPTOUI = 377, - FPTOSI = 378, - UITOFP = 379, - SITOFP = 380, - PTRTOINT = 381, - INTTOPTR = 382, - BITCAST = 383 + ICMP = 355, + FCMP = 356, + EQ = 357, + NE = 358, + SLT = 359, + SGT = 360, + SLE = 361, + SGE = 362, + OEQ = 363, + ONE = 364, + OLT = 365, + OGT = 366, + OLE = 367, + OGE = 368, + ORD = 369, + UNO = 370, + UEQ = 371, + UNE = 372, + ULT = 373, + UGT = 374, + ULE = 375, + UGE = 376, + MALLOC = 377, + ALLOCA = 378, + FREE = 379, + LOAD = 380, + STORE = 381, + GETELEMENTPTR = 382, + PHI_TOK = 383, + SELECT = 384, + SHL = 385, + SHR = 386, + ASHR = 387, + LSHR = 388, + VAARG = 389, + EXTRACTELEMENT = 390, + INSERTELEMENT = 391, + SHUFFLEVECTOR = 392, + CAST = 393, + TRUNC = 394, + ZEXT = 395, + SEXT = 396, + FPTRUNC = 397, + FPEXT = 398, + FPTOUI = 399, + FPTOSI = 400, + UITOFP = 401, + SITOFP = 402, + PTRTOINT = 403, + INTTOPTR = 404, + BITCAST = 405 }; #endif /* Tokens. */ @@ -255,41 +277,63 @@ #define SETGT 352 #define SETEQ 353 #define SETNE 354 -#define MALLOC 355 -#define ALLOCA 356 -#define FREE 357 -#define LOAD 358 -#define STORE 359 -#define GETELEMENTPTR 360 -#define PHI_TOK 361 -#define SELECT 362 -#define SHL 363 -#define SHR 364 -#define ASHR 365 -#define LSHR 366 -#define VAARG 367 -#define EXTRACTELEMENT 368 -#define INSERTELEMENT 369 -#define SHUFFLEVECTOR 370 -#define CAST 371 -#define TRUNC 372 -#define ZEXT 373 -#define SEXT 374 -#define FPTRUNC 375 -#define FPEXT 376 -#define FPTOUI 377 -#define FPTOSI 378 -#define UITOFP 379 -#define SITOFP 380 -#define PTRTOINT 381 -#define INTTOPTR 382 -#define BITCAST 383 +#define ICMP 355 +#define FCMP 356 +#define EQ 357 +#define NE 358 +#define SLT 359 +#define SGT 360 +#define SLE 361 +#define SGE 362 +#define OEQ 363 +#define ONE 364 +#define OLT 365 +#define OGT 366 +#define OLE 367 +#define OGE 368 +#define ORD 369 +#define UNO 370 +#define UEQ 371 +#define UNE 372 +#define ULT 373 +#define UGT 374 +#define ULE 375 +#define UGE 376 +#define MALLOC 377 +#define ALLOCA 378 +#define FREE 379 +#define LOAD 380 +#define STORE 381 +#define GETELEMENTPTR 382 +#define PHI_TOK 383 +#define SELECT 384 +#define SHL 385 +#define SHR 386 +#define ASHR 387 +#define LSHR 388 +#define VAARG 389 +#define EXTRACTELEMENT 390 +#define INSERTELEMENT 391 +#define SHUFFLEVECTOR 392 +#define CAST 393 +#define TRUNC 394 +#define ZEXT 395 +#define SEXT 396 +#define FPTRUNC 397 +#define FPEXT 398 +#define FPTOUI 399 +#define FPTOSI 400 +#define UITOFP 401 +#define SITOFP 402 +#define PTRTOINT 403 +#define INTTOPTR 404 +#define BITCAST 405 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) -#line 239 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" +#line 268 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" typedef union YYSTYPE { std::string* String; TypeInfo Type; @@ -298,7 +342,7 @@ typedef union YYSTYPE { ValueList* ValList; } YYSTYPE; /* Line 1447 of yacc.c. */ -#line 302 "UpgradeParser.tab.h" +#line 346 "UpgradeParser.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 diff --git a/tools/llvm-upgrade/UpgradeParser.h.cvs b/tools/llvm-upgrade/UpgradeParser.h.cvs index fa719dd364c..7000e205d03 100644 --- a/tools/llvm-upgrade/UpgradeParser.h.cvs +++ b/tools/llvm-upgrade/UpgradeParser.h.cvs @@ -126,35 +126,57 @@ SETGT = 352, SETEQ = 353, SETNE = 354, - MALLOC = 355, - ALLOCA = 356, - FREE = 357, - LOAD = 358, - STORE = 359, - GETELEMENTPTR = 360, - PHI_TOK = 361, - SELECT = 362, - SHL = 363, - SHR = 364, - ASHR = 365, - LSHR = 366, - VAARG = 367, - EXTRACTELEMENT = 368, - INSERTELEMENT = 369, - SHUFFLEVECTOR = 370, - CAST = 371, - TRUNC = 372, - ZEXT = 373, - SEXT = 374, - FPTRUNC = 375, - FPEXT = 376, - FPTOUI = 377, - FPTOSI = 378, - UITOFP = 379, - SITOFP = 380, - PTRTOINT = 381, - INTTOPTR = 382, - BITCAST = 383 + ICMP = 355, + FCMP = 356, + EQ = 357, + NE = 358, + SLT = 359, + SGT = 360, + SLE = 361, + SGE = 362, + OEQ = 363, + ONE = 364, + OLT = 365, + OGT = 366, + OLE = 367, + OGE = 368, + ORD = 369, + UNO = 370, + UEQ = 371, + UNE = 372, + ULT = 373, + UGT = 374, + ULE = 375, + UGE = 376, + MALLOC = 377, + ALLOCA = 378, + FREE = 379, + LOAD = 380, + STORE = 381, + GETELEMENTPTR = 382, + PHI_TOK = 383, + SELECT = 384, + SHL = 385, + SHR = 386, + ASHR = 387, + LSHR = 388, + VAARG = 389, + EXTRACTELEMENT = 390, + INSERTELEMENT = 391, + SHUFFLEVECTOR = 392, + CAST = 393, + TRUNC = 394, + ZEXT = 395, + SEXT = 396, + FPTRUNC = 397, + FPEXT = 398, + FPTOUI = 399, + FPTOSI = 400, + UITOFP = 401, + SITOFP = 402, + PTRTOINT = 403, + INTTOPTR = 404, + BITCAST = 405 }; #endif /* Tokens. */ @@ -255,41 +277,63 @@ #define SETGT 352 #define SETEQ 353 #define SETNE 354 -#define MALLOC 355 -#define ALLOCA 356 -#define FREE 357 -#define LOAD 358 -#define STORE 359 -#define GETELEMENTPTR 360 -#define PHI_TOK 361 -#define SELECT 362 -#define SHL 363 -#define SHR 364 -#define ASHR 365 -#define LSHR 366 -#define VAARG 367 -#define EXTRACTELEMENT 368 -#define INSERTELEMENT 369 -#define SHUFFLEVECTOR 370 -#define CAST 371 -#define TRUNC 372 -#define ZEXT 373 -#define SEXT 374 -#define FPTRUNC 375 -#define FPEXT 376 -#define FPTOUI 377 -#define FPTOSI 378 -#define UITOFP 379 -#define SITOFP 380 -#define PTRTOINT 381 -#define INTTOPTR 382 -#define BITCAST 383 +#define ICMP 355 +#define FCMP 356 +#define EQ 357 +#define NE 358 +#define SLT 359 +#define SGT 360 +#define SLE 361 +#define SGE 362 +#define OEQ 363 +#define ONE 364 +#define OLT 365 +#define OGT 366 +#define OLE 367 +#define OGE 368 +#define ORD 369 +#define UNO 370 +#define UEQ 371 +#define UNE 372 +#define ULT 373 +#define UGT 374 +#define ULE 375 +#define UGE 376 +#define MALLOC 377 +#define ALLOCA 378 +#define FREE 379 +#define LOAD 380 +#define STORE 381 +#define GETELEMENTPTR 382 +#define PHI_TOK 383 +#define SELECT 384 +#define SHL 385 +#define SHR 386 +#define ASHR 387 +#define LSHR 388 +#define VAARG 389 +#define EXTRACTELEMENT 390 +#define INSERTELEMENT 391 +#define SHUFFLEVECTOR 392 +#define CAST 393 +#define TRUNC 394 +#define ZEXT 395 +#define SEXT 396 +#define FPTRUNC 397 +#define FPEXT 398 +#define FPTOUI 399 +#define FPTOSI 400 +#define UITOFP 401 +#define SITOFP 402 +#define PTRTOINT 403 +#define INTTOPTR 404 +#define BITCAST 405 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) -#line 239 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" +#line 268 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y" typedef union YYSTYPE { std::string* String; TypeInfo Type; @@ -298,7 +342,7 @@ typedef union YYSTYPE { ValueList* ValList; } YYSTYPE; /* Line 1447 of yacc.c. */ -#line 302 "UpgradeParser.tab.h" +#line 346 "UpgradeParser.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 diff --git a/tools/llvm-upgrade/UpgradeParser.y.cvs b/tools/llvm-upgrade/UpgradeParser.y.cvs index 7815892cb87..fedff0ee80e 100644 --- a/tools/llvm-upgrade/UpgradeParser.y.cvs +++ b/tools/llvm-upgrade/UpgradeParser.y.cvs @@ -22,6 +22,7 @@ #define YYERROR_VERBOSE 1 #define YYINCLUDED_STDLIB_H #define YYDEBUG 1 +#define UPGRADE_SETCOND_OPS 1 int yylex(); // declaration" of xxx warnings. int yyparse(); @@ -232,6 +233,34 @@ const char* getDivRemOpcode(const std::string& opcode, const TypeInfo& TI) { yyerror("Invalid type for rem instruction"); return op; } + +std::string +getCompareOp(const std::string& setcc, const TypeInfo& TI) { + assert(setcc.length() == 5); + char cc1 = setcc[3]; + char cc2 = setcc[4]; + assert(cc1 == 'e' || cc1 == 'n' || cc1 == 'l' || cc1 == 'g'); + assert(cc2 == 'q' || cc2 == 'e' || cc2 == 'e' || cc2 == 't'); + std::string result("xcmp xxx"); + result[6] = cc1; + result[7] = cc2; + if (TI.isFloatingPoint()) { + result[0] = 'f'; + result[5] = 'o'; // FIXME: Always map to ordered comparison ? + } else if (TI.isIntegral() || TI.isPointer()) { + result[0] = 'i'; + if ((cc1 == 'e' && cc2 == 'q') || (cc1 == 'n' && cc2 == 'e')) + result.erase(5,1); + else if (TI.isSigned()) + result[5] = 's'; + else if (TI.isUnsigned() || TI.isPointer()) + result[5] = 'u'; + else + yyerror("Invalid integral type for setcc"); + } + return result; +} + %} %file-prefix="UpgradeParser" @@ -262,6 +291,8 @@ const char* getDivRemOpcode(const std::string& opcode, const TypeInfo& TI) { %token RET BR SWITCH INVOKE EXCEPT UNWIND UNREACHABLE %token ADD SUB MUL DIV UDIV SDIV FDIV REM UREM SREM FREM AND OR XOR %token SETLE SETGE SETLT SETGT SETEQ SETNE // Binary Comparators +%token ICMP FCMP EQ NE SLT SGT SLE SGE OEQ ONE OLT OGT OLE OGE +%token ORD UNO UEQ UNE ULT UGT ULE UGE %token MALLOC ALLOCA FREE LOAD STORE GETELEMENTPTR %token PHI_TOK SELECT SHL SHR ASHR LSHR VAARG %token EXTRACTELEMENT INSERTELEMENT SHUFFLEVECTOR @@ -279,7 +310,8 @@ const char* getDivRemOpcode(const std::string& opcode, const TypeInfo& TI) { %type MemoryInst SymbolicValueRef OptSideEffect GlobalType %type FnDeclareLinkage BasicBlockList BigOrLittle AsmBlock %type Name ConstValueRef ConstVector External -%type ShiftOps SetCondOps LogicalOps ArithmeticOps CastOps +%type ShiftOps SetCondOps LogicalOps ArithmeticOps CastOps CompareOps +%type Predicates %type ValueRefList ValueRefListE IndexList @@ -305,6 +337,9 @@ ArithmeticOps: ADD | SUB | MUL | DIV | UDIV | SDIV | FDIV | REM | UREM | SREM | FREM; LogicalOps : AND | OR | XOR; SetCondOps : SETLE | SETGE | SETLT | SETGT | SETEQ | SETNE; +CompareOps : ICMP | FCMP; +Predicates : EQ | NE | SLT | SGT | SLE | SGE | ULT | UGT | ULE | UGE + | OEQ | ONE | OLT | OGT | OLE | OGE | ORD | UNO | UEQ | UNE ; ShiftOps : SHL | SHR | ASHR | LSHR; CastOps : TRUNC | ZEXT | SEXT | FPTRUNC | FPEXT | FPTOUI | FPTOSI | UITOFP | SITOFP | PTRTOINT | INTTOPTR | BITCAST | CAST @@ -627,10 +662,18 @@ ConstExpr: CastOps '(' ConstVal TO Types ')' { $$ = $1; } | SetCondOps '(' ConstVal ',' ConstVal ')' { +#if UPGRADE_SETCOND_OPS + *$1 = getCompareOp(*$1, $3.type); +#endif *$1 += "(" + *$3.cnst + "," + *$5.cnst + ")"; $3.destroy(); $5.destroy(); $$ = $1; } + | CompareOps Predicates '(' ConstVal ',' ConstVal ')' { + *$1 += "(" + *$2 + "," + *$4.cnst + "," + *$6.cnst + ")"; + delete $2; $4.destroy(); $6.destroy(); + $$ = $1; + } | ShiftOps '(' ConstVal ',' ConstVal ')' { const char* shiftop = $1->c_str(); if (*$1 == "shr") @@ -1132,10 +1175,18 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef { $$ = $1; } | SetCondOps Types ValueRef ',' ValueRef { +#if UPGRADE_SETCOND_OPS + *$1 = getCompareOp(*$1, $2); +#endif *$1 += " " + *$2.newTy + " " + *$3.val + ", " + *$5.val; $2.destroy(); $3.destroy(); $5.destroy(); $$ = $1; } + | CompareOps Predicates Types ValueRef ',' ValueRef ')' { + *$1 += " " + *$2 + " " + *$4.val + "," + *$6.val + ")"; + delete $2; $4.destroy(); $6.destroy(); + $$ = $1; + } | NOT ResolvedVal { *$1 += " " + *$2.val; $2.destroy();