diff options
author | Chris Lattner <sabre@nondot.org> | 2006-01-25 22:27:16 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2006-01-25 22:27:16 +0000 |
commit | 0e9c376761e2704d4a18dc9228d9e6fa7ddf307c (patch) | |
tree | 46dbddcaeeb18d4c468e8472964876ffa33f6f3e /lib/AsmParser | |
parent | aa2c85376611f7c458232845585912b541bdc680 (diff) | |
download | external_llvm-0e9c376761e2704d4a18dc9228d9e6fa7ddf307c.zip external_llvm-0e9c376761e2704d4a18dc9228d9e6fa7ddf307c.tar.gz external_llvm-0e9c376761e2704d4a18dc9228d9e6fa7ddf307c.tar.bz2 |
regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25619 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AsmParser')
-rw-r--r-- | lib/AsmParser/Lexer.cpp | 1064 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.cpp | 1496 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.h | 81 |
3 files changed, 1339 insertions, 1302 deletions
diff --git a/lib/AsmParser/Lexer.cpp b/lib/AsmParser/Lexer.cpp index 15067d7..333c154 100644 --- a/lib/AsmParser/Lexer.cpp +++ b/lib/AsmParser/Lexer.cpp @@ -308,33 +308,33 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 105 -#define YY_END_OF_BUFFER 106 -static yyconst short int yy_acclist[183] = +#define YY_NUM_RULES 106 +#define YY_END_OF_BUFFER 107 +static yyconst short int yy_acclist[184] = { 0, - 106, 104, 105, 103, 104, 105, 103, 105, 104, 105, - 104, 105, 104, 105, 104, 105, 104, 105, 104, 105, - 96, 104, 105, 96, 104, 105, 1, 104, 105, 104, - 105, 104, 105, 104, 105, 104, 105, 104, 105, 104, - 105, 104, 105, 104, 105, 104, 105, 104, 105, 104, - 105, 104, 105, 104, 105, 104, 105, 104, 105, 104, - 105, 104, 105, 104, 105, 104, 105, 104, 105, 104, - 105, 95, 93, 92, 92, 99, 97, 101, 96, 1, - 79, 36, 61, 20, 95, 92, 92, 100, 101, 17, - 101, 102, 55, 60, 35, 30, 37, 58, 3, 46, - - 57, 22, 69, 59, 78, 73, 74, 56, 62, 94, - 101, 101, 41, 70, 71, 86, 87, 48, 19, 98, - 23, 4, 53, 47, 40, 11, 101, 32, 2, 5, - 50, 52, 42, 64, 68, 66, 67, 65, 63, 44, - 88, 43, 49, 18, 76, 85, 39, 51, 27, 21, - 38, 7, 81, 29, 84, 34, 54, 72, 80, 24, - 25, 82, 45, 77, 75, 6, 26, 33, 8, 14, - 9, 10, 31, 12, 28, 83, 89, 91, 13, 90, - 15, 16 + 107, 105, 106, 104, 105, 106, 104, 106, 105, 106, + 105, 106, 105, 106, 105, 106, 105, 106, 105, 106, + 97, 105, 106, 97, 105, 106, 1, 105, 106, 105, + 106, 105, 106, 105, 106, 105, 106, 105, 106, 105, + 106, 105, 106, 105, 106, 105, 106, 105, 106, 105, + 106, 105, 106, 105, 106, 105, 106, 105, 106, 105, + 106, 105, 106, 105, 106, 105, 106, 105, 106, 105, + 106, 96, 94, 93, 93, 100, 98, 102, 97, 1, + 80, 37, 62, 20, 96, 93, 93, 101, 102, 17, + 102, 103, 56, 61, 35, 30, 38, 59, 3, 47, + + 58, 22, 70, 60, 79, 74, 75, 57, 63, 95, + 102, 102, 42, 71, 72, 87, 88, 49, 19, 99, + 23, 4, 54, 48, 41, 11, 102, 32, 2, 5, + 51, 53, 43, 65, 69, 67, 68, 66, 64, 45, + 89, 44, 50, 18, 77, 86, 40, 52, 27, 21, + 39, 7, 82, 29, 85, 34, 55, 73, 81, 24, + 25, 83, 46, 78, 76, 6, 26, 33, 8, 14, + 9, 10, 31, 12, 36, 28, 84, 90, 92, 13, + 91, 15, 16 } ; -static yyconst short int yy_accept[435] = +static yyconst short int yy_accept[444] = { 0, 1, 1, 1, 2, 4, 7, 9, 11, 13, 15, 17, 19, 21, 24, 27, 30, 32, 34, 36, 38, @@ -345,45 +345,46 @@ static yyconst short int yy_accept[435] = 82, 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, 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, 96, 96, 97, 97, 97, 97, 98, 98, - 98, 98, 98, 99, 99, 100, 100, 100, 100, 100, - 100, 100, 100, 100, 100, 100, 101, 101, 101, 101, - 101, 101, 101, 101, 101, 102, 103, 103, 103, 104, - 104, 105, 106, 106, 106, 106, 106, 106, 107, 107, - 108, 108, 109, 109, 109, 109, 109, 109, 109, 109, + 84, 84, 84, 84, 84, 84, 84, 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, 96, 96, 97, 97, 97, 97, 98, + 98, 98, 98, 98, 99, 99, 100, 100, 100, 100, + 100, 100, 100, 100, 100, 100, 100, 101, 101, 101, + 101, 101, 101, 101, 101, 101, 102, 103, 103, 103, + 104, 104, 105, 106, 106, 106, 106, 106, 106, 107, + 107, 108, 108, 108, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, - 109, 109, 109, 110, 110, 111, 112, 112, 112, 112, + 109, 109, 109, 109, 109, 110, 110, 111, 112, 112, - 113, 113, 113, 113, 113, 114, 115, 116, 116, 116, + 112, 112, 113, 113, 113, 113, 113, 114, 115, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, - 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, - 118, 119, 119, 119, 120, 120, 120, 121, 121, 121, - 121, 121, 121, 121, 121, 121, 121, 121, 122, 122, - 122, 123, 124, 124, 125, 125, 125, 125, 125, 125, - 125, 125, 125, 125, 126, 126, 127, 127, 128, 129, - 129, 129, 130, 130, 130, 130, 130, 130, 130, 130, - 130, 130, 131, 131, 132, 132, 132, 132, 132, 132, - 132, 133, 133, 133, 133, 133, 133, 133, 134, 134, - - 134, 135, 136, 137, 138, 139, 140, 141, 142, 142, - 142, 142, 143, 144, 145, 145, 145, 145, 145, 145, - 146, 146, 146, 146, 147, 147, 148, 148, 148, 148, - 149, 150, 151, 151, 151, 152, 152, 153, 153, 153, - 153, 154, 154, 155, 156, 157, 158, 158, 158, 159, - 160, 161, 162, 162, 162, 163, 164, 165, 166, 166, - 166, 166, 166, 167, 168, 168, 168, 168, 168, 168, - 168, 168, 168, 169, 169, 169, 169, 169, 169, 170, - 171, 171, 171, 171, 171, 172, 173, 173, 173, 173, - 174, 174, 175, 175, 175, 175, 175, 175, 175, 175, + 116, 116, 117, 117, 117, 117, 117, 117, 117, 117, + 117, 117, 118, 119, 119, 119, 120, 120, 120, 121, + 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, + 121, 122, 122, 122, 123, 124, 124, 125, 125, 125, + 125, 125, 125, 125, 125, 125, 125, 126, 126, 127, + 127, 128, 129, 129, 129, 130, 130, 130, 130, 130, + 130, 130, 130, 130, 130, 131, 131, 132, 132, 132, + 132, 132, 132, 132, 133, 133, 133, 133, 133, 133, + + 133, 134, 134, 134, 135, 136, 137, 138, 139, 140, + 141, 141, 142, 142, 142, 142, 143, 144, 145, 145, + 145, 145, 145, 145, 146, 146, 146, 146, 147, 147, + 148, 148, 148, 148, 149, 150, 151, 151, 151, 152, + 152, 153, 153, 153, 153, 154, 154, 155, 156, 157, + 158, 158, 158, 159, 159, 160, 161, 162, 162, 162, + 163, 164, 165, 166, 166, 166, 166, 166, 167, 168, + 168, 168, 168, 168, 168, 168, 168, 168, 169, 169, + 169, 169, 169, 169, 169, 170, 171, 171, 171, 171, + 171, 172, 173, 173, 173, 173, 173, 174, 174, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 176, 176, 177, 177, 177, 177, 177, - 177, 177, 177, 177, 178, 178, 179, 180, 180, 181, - 182, 182, 183, 183 + 175, 175, 175, 175, 176, 176, 176, 176, 176, 176, + 176, 176, 177, 177, 178, 178, 178, 178, 178, 178, + 178, 178, 178, 179, 179, 180, 181, 181, 182, 183, + 183, 184, 184 } ; static yyconst int yy_ec[256] = @@ -427,111 +428,113 @@ static yyconst int yy_meta[42] = 3 } ; -static yyconst short int yy_base[439] = +static yyconst short int yy_base[448] = { 0, - 0, 0, 908, 909, 909, 909, 903, 894, 34, 36, + 0, 0, 926, 927, 927, 927, 921, 912, 34, 36, 38, 42, 46, 50, 0, 52, 57, 54, 68, 62, 80, 82, 76, 94, 98, 40, 83, 88, 56, 125, - 108, 154, 109, 87, 110, 111, 901, 909, 892, 909, - 0, 119, 134, 141, 144, 124, 147, 164, 179, 0, - 55, 153, 157, 155, 119, 159, 172, 173, 891, 175, - 192, 193, 194, 90, 180, 195, 198, 196, 202, 200, - 206, 207, 212, 214, 216, 215, 223, 219, 227, 226, - 224, 230, 243, 890, 233, 242, 244, 249, 130, 250, - 251, 252, 253, 258, 261, 889, 262, 264, 256, 263, - - 277, 279, 41, 285, 278, 294, 84, 288, 888, 0, - 298, 305, 887, 312, 324, 0, 886, 306, 298, 885, - 318, 884, 268, 883, 313, 325, 307, 882, 326, 329, - 331, 332, 881, 333, 335, 336, 341, 337, 338, 344, - 343, 354, 358, 342, 356, 360, 353, 366, 367, 355, - 368, 372, 370, 373, 880, 879, 374, 31, 878, 377, - 877, 876, 400, 388, 390, 382, 412, 875, 379, 874, - 380, 873, 392, 404, 384, 414, 387, 416, 417, 418, - 420, 422, 426, 430, 432, 424, 444, 434, 438, 428, - 446, 448, 872, 435, 909, 458, 470, 460, 472, 475, - - 460, 386, 463, 464, 871, 870, 869, 476, 478, 479, - 482, 485, 486, 487, 488, 489, 490, 496, 492, 868, - 493, 497, 498, 504, 505, 510, 512, 511, 513, 867, - 866, 514, 516, 865, 517, 519, 0, 521, 520, 536, - 518, 535, 537, 539, 522, 540, 547, 864, 550, 551, - 863, 862, 552, 861, 523, 553, 555, 557, 556, 564, - 565, 567, 569, 860, 570, 859, 571, 576, 858, 572, - 579, 857, 576, 589, 580, 582, 581, 591, 592, 595, - 597, 856, 598, 855, 600, 599, 602, 603, 606, 607, - 854, 610, 611, 617, 613, 619, 621, 853, 625, 629, - - 852, 851, 850, 849, 848, 847, 846, 845, 632, 631, - 633, 844, 843, 842, 634, 638, 639, 635, 637, 841, - 636, 640, 646, 840, 649, 839, 650, 651, 655, 838, - 837, 836, 656, 641, 835, 665, 834, 666, 669, 668, - 833, 672, 832, 831, 830, 829, 670, 671, 828, 827, - 826, 825, 674, 680, 824, 823, 822, 819, 682, 676, - 683, 684, 810, 808, 686, 685, 690, 693, 696, 698, - 695, 702, 807, 703, 709, 706, 705, 712, 806, 804, - 716, 717, 718, 720, 803, 802, 719, 721, 727, 801, - 722, 798, 730, 725, 737, 738, 726, 740, 743, 744, - - 745, 746, 747, 750, 751, 752, 757, 756, 763, 762, - 764, 767, 796, 769, 795, 773, 774, 768, 775, 776, - 779, 780, 782, 794, 783, 792, 454, 788, 452, 450, - 790, 301, 909, 823, 825, 263, 829, 226 + 108, 154, 109, 87, 110, 111, 919, 927, 910, 927, + 0, 119, 134, 142, 145, 124, 159, 166, 179, 0, + 55, 180, 147, 153, 119, 150, 183, 156, 909, 175, + 191, 192, 196, 90, 146, 200, 199, 201, 202, 204, + 205, 211, 212, 210, 218, 217, 221, 227, 236, 230, + 214, 239, 241, 908, 243, 247, 248, 225, 249, 250, + 251, 253, 258, 262, 267, 270, 907, 274, 259, 275, + + 279, 263, 284, 41, 285, 286, 288, 84, 294, 906, + 0, 308, 310, 905, 318, 330, 0, 904, 300, 304, + 903, 314, 902, 282, 901, 320, 324, 331, 900, 332, + 312, 333, 336, 899, 337, 342, 338, 341, 344, 345, + 352, 349, 356, 353, 346, 360, 363, 364, 367, 370, + 371, 373, 374, 375, 377, 898, 897, 378, 31, 896, + 379, 895, 894, 404, 392, 395, 380, 408, 893, 383, + 892, 388, 399, 891, 398, 416, 422, 386, 391, 426, + 424, 427, 428, 429, 432, 430, 440, 434, 436, 437, + 442, 446, 443, 455, 890, 444, 927, 458, 475, 461, + + 465, 477, 466, 472, 468, 478, 889, 888, 887, 480, + 481, 484, 486, 482, 488, 490, 491, 496, 494, 498, + 492, 886, 502, 506, 507, 500, 508, 510, 513, 514, + 518, 885, 884, 519, 520, 883, 522, 525, 0, 527, + 526, 523, 531, 534, 538, 540, 541, 544, 545, 552, + 882, 556, 555, 881, 880, 558, 879, 560, 562, 550, + 568, 566, 569, 574, 575, 576, 878, 577, 877, 578, + 581, 876, 582, 581, 875, 585, 588, 584, 596, 597, + 594, 598, 599, 601, 874, 607, 873, 604, 609, 610, + 612, 615, 618, 872, 617, 619, 622, 630, 631, 633, + + 871, 620, 623, 870, 869, 868, 867, 866, 865, 864, + 637, 863, 636, 641, 643, 862, 861, 860, 644, 649, + 645, 650, 651, 859, 654, 655, 657, 858, 658, 857, + 659, 660, 661, 856, 855, 854, 665, 663, 853, 666, + 852, 672, 675, 680, 851, 687, 850, 849, 848, 847, + 678, 679, 846, 688, 845, 844, 843, 689, 691, 842, + 839, 829, 828, 690, 693, 692, 695, 827, 825, 697, + 701, 704, 700, 707, 708, 711, 714, 824, 715, 716, + 725, 719, 726, 727, 823, 822, 729, 731, 732, 733, + 819, 818, 734, 739, 735, 737, 817, 740, 816, 745, + + 741, 751, 752, 757, 758, 759, 760, 761, 762, 763, + 765, 767, 770, 812, 769, 771, 774, 783, 773, 777, + 784, 811, 785, 810, 787, 791, 793, 795, 797, 799, + 802, 803, 805, 804, 625, 542, 806, 387, 255, 809, + 219, 927, 843, 845, 182, 849, 139 } ; -static yyconst short int yy_def[439] = +static yyconst short int yy_def[448] = { 0, - 433, 1, 433, 433, 433, 433, 434, 435, 436, 433, - 435, 435, 435, 435, 437, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 434, 433, 435, 433, - 438, 438, 433, 433, 435, 435, 435, 435, 435, 437, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - - 435, 435, 435, 435, 435, 435, 435, 435, 433, 438, - 438, 433, 435, 435, 435, 49, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 49, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 433, 433, 433, 433, 435, 435, - - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 163, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 433, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, - 435, 435, 0, 433, 433, 433, 433, 433 + 442, 1, 442, 442, 442, 442, 443, 444, 445, 442, + 444, 444, 444, 444, 446, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 443, 442, 444, 442, + 447, 447, 442, 442, 444, 444, 444, 444, 444, 446, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + + 444, 444, 444, 444, 444, 444, 444, 444, 444, 442, + 447, 447, 442, 444, 444, 444, 49, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 49, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 442, 442, 442, 442, + + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 164, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 442, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 0, 442, 442, 442, 442, 442 } ; -static yyconst short int yy_nxt[951] = +static yyconst short int yy_nxt[969] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 4, 15, 8, 8, 8, 16, 17, 18, 19, @@ -539,212 +542,216 @@ static yyconst short int yy_nxt[951] = 28, 8, 29, 30, 31, 32, 33, 34, 35, 8, 36, 42, 40, 43, 43, 44, 44, 45, 45, 40, 46, 40, 40, 40, 47, 48, 48, 40, 47, 48, - 48, 40, 235, 40, 186, 40, 40, 40, 40, 81, - 60, 51, 61, 40, 117, 82, 87, 56, 52, 40, + 48, 40, 237, 40, 188, 40, 40, 40, 40, 81, + 60, 51, 61, 40, 118, 82, 87, 56, 52, 40, 53, 57, 54, 62, 49, 55, 58, 40, 63, 59, 66, 40, 64, 40, 40, 40, 68, 65, 40, 40, - 67, 40, 71, 73, 74, 40, 69, 106, 72, 40, - 75, 85, 70, 83, 78, 84, 193, 86, 76, 40, - 40, 40, 40, 77, 95, 104, 133, 79, 111, 111, - 40, 108, 113, 80, 88, 40, 40, 96, 105, 107, - 97, 40, 89, 43, 43, 90, 122, 98, 91, 112, - 44, 44, 47, 45, 45, 40, 114, 114, 40, 92, - 93, 115, 94, 88, 40, 40, 40, 115, 40, 164, - 40, 99, 47, 48, 48, 40, 120, 118, 100, 119, - 101, 123, 102, 40, 40, 121, 40, 103, 116, 116, - 40, 40, 116, 116, 124, 116, 116, 116, 116, 116, - - 116, 126, 125, 40, 40, 40, 40, 40, 127, 40, - 128, 40, 131, 40, 135, 134, 136, 40, 40, 129, - 141, 130, 138, 40, 132, 40, 40, 40, 110, 139, - 40, 140, 137, 148, 40, 40, 143, 40, 40, 151, - 142, 40, 144, 149, 40, 153, 154, 145, 146, 150, - 147, 152, 155, 40, 40, 40, 157, 159, 156, 158, - 40, 40, 40, 40, 40, 41, 160, 40, 165, 40, - 172, 161, 40, 40, 40, 40, 166, 168, 162, 40, - 169, 171, 173, 170, 167, 174, 176, 163, 40, 40, - 40, 180, 204, 175, 178, 179, 40, 177, 182, 40, - - 187, 188, 190, 183, 191, 40, 181, 111, 111, 40, - 192, 184, 40, 189, 196, 196, 185, 40, 40, 197, - 194, 114, 114, 40, 40, 197, 115, 202, 201, 40, - 198, 199, 115, 200, 200, 40, 40, 40, 203, 205, - 40, 207, 40, 40, 40, 208, 40, 40, 40, 40, - 212, 206, 40, 40, 40, 40, 214, 210, 211, 213, - 219, 215, 209, 220, 40, 40, 40, 40, 223, 40, - 217, 40, 218, 216, 221, 222, 224, 40, 40, 40, - 225, 40, 226, 40, 40, 40, 227, 230, 40, 229, - 40, 40, 228, 40, 231, 40, 232, 40, 40, 40, - - 234, 40, 240, 40, 270, 236, 249, 251, 233, 237, - 237, 245, 246, 237, 237, 40, 237, 237, 237, 237, - 237, 237, 238, 40, 239, 40, 247, 40, 40, 40, - 248, 40, 241, 40, 242, 40, 252, 40, 243, 40, - 244, 40, 256, 40, 250, 40, 40, 264, 255, 40, - 258, 253, 254, 260, 257, 40, 259, 40, 263, 40, - 261, 40, 265, 40, 267, 40, 262, 196, 196, 268, - 268, 40, 197, 266, 40, 40, 198, 198, 197, 268, - 268, 200, 200, 40, 200, 200, 40, 40, 269, 40, - 40, 271, 272, 40, 273, 275, 40, 40, 40, 40, - - 40, 40, 278, 40, 40, 281, 276, 40, 40, 40, - 282, 277, 274, 286, 283, 40, 40, 279, 287, 285, - 280, 40, 40, 40, 40, 40, 284, 40, 40, 40, - 40, 40, 40, 40, 40, 290, 288, 289, 291, 293, - 292, 298, 295, 294, 299, 313, 40, 40, 40, 301, - 40, 40, 296, 297, 300, 302, 307, 304, 40, 306, - 308, 40, 40, 40, 40, 309, 40, 40, 40, 303, - 310, 305, 312, 316, 314, 40, 40, 311, 40, 315, - 40, 40, 40, 40, 317, 268, 268, 40, 324, 320, - 40, 40, 40, 40, 326, 323, 318, 319, 325, 329, - - 40, 330, 40, 40, 322, 327, 40, 321, 40, 40, - 40, 40, 328, 40, 40, 334, 335, 40, 40, 331, - 336, 40, 40, 333, 40, 337, 332, 341, 40, 338, - 40, 343, 40, 345, 340, 344, 40, 339, 342, 346, - 40, 347, 40, 40, 40, 40, 40, 40, 40, 40, - 40, 40, 40, 352, 348, 350, 354, 40, 355, 357, - 40, 40, 40, 349, 359, 351, 40, 40, 353, 356, - 358, 363, 365, 361, 360, 366, 40, 40, 362, 40, - 40, 40, 40, 40, 370, 40, 368, 40, 364, 369, - 371, 40, 367, 40, 40, 40, 40, 40, 374, 373, - - 377, 40, 372, 375, 40, 381, 40, 40, 376, 40, - 382, 378, 380, 40, 40, 386, 40, 40, 379, 388, - 40, 383, 384, 40, 385, 389, 390, 40, 40, 40, - 40, 40, 40, 40, 392, 387, 40, 40, 40, 391, - 396, 40, 393, 397, 399, 394, 400, 398, 40, 40, - 401, 40, 395, 403, 40, 40, 40, 40, 40, 402, - 408, 40, 40, 40, 406, 404, 405, 40, 40, 407, - 412, 413, 409, 40, 40, 40, 410, 415, 40, 40, - 40, 411, 416, 417, 40, 40, 40, 40, 419, 421, - 40, 40, 414, 40, 40, 420, 418, 422, 427, 40, - - 424, 40, 423, 40, 425, 40, 40, 40, 431, 40, - 426, 430, 40, 40, 40, 40, 429, 40, 40, 40, - 428, 40, 432, 37, 37, 37, 37, 39, 39, 50, + 67, 40, 71, 73, 74, 40, 69, 107, 72, 40, + 75, 85, 70, 83, 78, 84, 195, 86, 76, 40, + 40, 40, 40, 77, 96, 105, 134, 79, 112, 112, + 40, 109, 114, 80, 88, 40, 40, 97, 106, 108, + 98, 111, 89, 43, 43, 90, 123, 99, 91, 92, + 113, 44, 44, 47, 45, 45, 40, 40, 40, 93, + 94, 40, 95, 88, 40, 40, 121, 40, 115, 115, + 40, 100, 124, 116, 47, 48, 48, 40, 101, 116, + 102, 135, 103, 122, 41, 126, 40, 104, 117, 117, + 40, 40, 117, 117, 40, 117, 117, 117, 117, 117, + + 117, 127, 40, 40, 119, 125, 120, 40, 128, 129, + 40, 40, 40, 40, 132, 40, 40, 137, 130, 136, + 131, 40, 40, 40, 142, 40, 133, 139, 40, 40, + 40, 141, 40, 138, 140, 149, 40, 152, 40, 143, + 144, 40, 145, 146, 147, 150, 148, 40, 157, 153, + 40, 151, 40, 154, 40, 155, 156, 159, 40, 40, + 40, 40, 40, 164, 40, 158, 40, 160, 166, 40, + 40, 161, 172, 40, 40, 162, 167, 169, 40, 174, + 170, 40, 163, 171, 168, 40, 40, 173, 165, 180, + 40, 175, 183, 40, 176, 40, 40, 40, 178, 40, + + 189, 190, 177, 184, 194, 40, 206, 182, 185, 179, + 192, 40, 193, 191, 181, 40, 186, 112, 112, 198, + 198, 187, 203, 40, 199, 40, 196, 115, 115, 40, + 199, 40, 116, 204, 205, 40, 200, 201, 116, 202, + 202, 40, 40, 40, 40, 211, 207, 40, 40, 40, + 208, 210, 40, 40, 214, 40, 40, 40, 216, 212, + 40, 217, 213, 40, 40, 209, 215, 40, 221, 222, + 224, 40, 225, 218, 40, 40, 223, 219, 40, 220, + 226, 40, 40, 227, 40, 40, 40, 229, 40, 40, + 40, 40, 232, 228, 40, 230, 233, 40, 40, 40, + + 242, 234, 40, 40, 236, 231, 40, 238, 248, 40, + 40, 254, 235, 239, 239, 247, 253, 239, 239, 40, + 239, 239, 239, 239, 239, 239, 240, 40, 243, 241, + 244, 249, 250, 40, 245, 40, 246, 40, 40, 40, + 40, 40, 251, 40, 252, 40, 255, 40, 40, 259, + 261, 40, 264, 40, 40, 40, 258, 40, 256, 268, + 260, 257, 266, 263, 262, 267, 40, 198, 198, 265, + 271, 271, 199, 270, 202, 202, 40, 40, 199, 40, + 269, 200, 200, 40, 271, 271, 202, 202, 40, 40, + 273, 40, 40, 40, 272, 40, 274, 40, 276, 40, + + 278, 40, 40, 40, 281, 40, 275, 40, 280, 40, + 279, 40, 284, 40, 285, 277, 286, 40, 40, 40, + 282, 40, 289, 283, 40, 40, 287, 290, 288, 40, + 40, 40, 291, 40, 40, 293, 40, 40, 40, 294, + 292, 303, 40, 295, 296, 40, 298, 301, 297, 40, + 302, 40, 40, 40, 305, 40, 40, 299, 307, 300, + 309, 40, 304, 40, 311, 312, 40, 40, 306, 40, + 313, 40, 308, 40, 319, 310, 314, 40, 316, 40, + 40, 315, 317, 318, 320, 40, 40, 40, 40, 40, + 271, 271, 40, 40, 321, 40, 40, 324, 328, 40, + + 329, 322, 327, 330, 331, 40, 323, 40, 40, 40, + 40, 326, 40, 333, 325, 40, 332, 334, 40, 338, + 40, 40, 335, 40, 340, 339, 40, 337, 40, 40, + 40, 40, 336, 40, 40, 341, 40, 342, 345, 347, + 348, 40, 40, 344, 40, 346, 343, 40, 40, 352, + 349, 350, 40, 351, 40, 40, 40, 353, 354, 355, + 40, 40, 40, 357, 360, 40, 40, 359, 40, 40, + 40, 40, 40, 362, 40, 356, 40, 40, 358, 364, + 368, 370, 366, 40, 361, 365, 40, 367, 363, 40, + 40, 40, 373, 372, 369, 374, 375, 371, 40, 40, + + 40, 40, 40, 40, 40, 376, 40, 378, 40, 379, + 377, 40, 40, 380, 381, 40, 382, 383, 40, 40, + 384, 387, 40, 386, 388, 40, 40, 40, 389, 385, + 40, 392, 395, 390, 391, 394, 40, 40, 40, 397, + 40, 396, 40, 40, 40, 40, 40, 393, 40, 399, + 40, 40, 40, 403, 407, 400, 40, 405, 404, 401, + 398, 406, 40, 40, 408, 409, 402, 411, 40, 40, + 40, 40, 40, 40, 40, 410, 40, 417, 40, 412, + 40, 40, 40, 415, 40, 40, 416, 421, 40, 418, + 422, 424, 414, 419, 40, 40, 40, 413, 40, 420, + + 425, 428, 40, 426, 40, 430, 40, 427, 40, 423, + 40, 431, 429, 40, 40, 40, 40, 40, 436, 432, + 40, 40, 40, 40, 434, 433, 440, 40, 40, 40, + 40, 435, 439, 40, 40, 40, 40, 438, 40, 40, + 40, 441, 437, 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, 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, 195, - 40, 40, 40, 40, 109, 40, 38, 433, 3, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 433 + 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 197, 40, 40, + 40, 40, 110, 40, 38, 442, 3, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442 } ; -static yyconst short int yy_chk[951] = +static yyconst short int yy_chk[969] = { 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, 9, 158, 9, 9, 10, 10, 11, 11, 11, - 12, 26, 103, 12, 13, 13, 13, 13, 14, 14, - 14, 14, 158, 16, 103, 18, 51, 29, 17, 26, + 1, 9, 159, 9, 9, 10, 10, 11, 11, 11, + 12, 26, 104, 12, 13, 13, 13, 13, 14, 14, + 14, 14, 159, 16, 104, 18, 51, 29, 17, 26, 18, 16, 18, 20, 51, 26, 29, 17, 16, 19, 16, 17, 16, 18, 13, 16, 17, 23, 19, 17, - 20, 21, 19, 22, 27, 107, 21, 19, 34, 28, + 20, 21, 19, 22, 27, 108, 21, 19, 34, 28, 20, 64, 22, 23, 23, 24, 21, 34, 22, 25, - 24, 28, 21, 27, 25, 27, 107, 28, 24, 31, + 24, 28, 21, 27, 25, 27, 108, 28, 24, 31, 33, 35, 36, 24, 31, 33, 64, 25, 42, 42, 55, 36, 46, 25, 30, 46, 30, 31, 33, 35, - 31, 89, 30, 43, 43, 30, 55, 31, 30, 44, - 44, 44, 45, 45, 45, 45, 47, 47, 47, 30, - 30, 47, 30, 32, 52, 32, 54, 47, 53, 89, - 56, 32, 48, 48, 48, 48, 53, 52, 32, 52, - 32, 56, 32, 57, 58, 54, 60, 32, 49, 49, - 49, 65, 49, 49, 57, 49, 49, 49, 49, 49, - - 49, 60, 58, 61, 62, 63, 66, 68, 60, 67, - 61, 70, 63, 69, 66, 65, 67, 71, 72, 62, - 70, 62, 68, 73, 63, 74, 76, 75, 438, 68, - 78, 69, 67, 75, 77, 81, 72, 80, 79, 77, - 71, 82, 73, 76, 85, 78, 79, 74, 74, 76, - 74, 77, 80, 86, 83, 87, 82, 85, 81, 83, - 88, 90, 91, 92, 93, 436, 86, 99, 90, 94, - 93, 87, 95, 97, 100, 98, 90, 91, 87, 123, - 91, 92, 94, 91, 90, 95, 97, 88, 101, 105, - 102, 100, 123, 95, 98, 99, 104, 97, 102, 108, - - 104, 104, 105, 102, 105, 106, 101, 111, 111, 119, - 106, 102, 432, 104, 112, 112, 102, 118, 127, 112, - 108, 114, 114, 114, 125, 112, 114, 119, 118, 121, - 115, 115, 114, 115, 115, 115, 126, 129, 121, 125, - 130, 127, 131, 132, 134, 129, 135, 136, 138, 139, - 134, 126, 137, 144, 141, 140, 136, 131, 132, 135, - 140, 137, 130, 141, 147, 142, 150, 145, 144, 143, - 138, 146, 139, 137, 142, 143, 145, 148, 149, 151, - 146, 153, 147, 152, 154, 157, 148, 151, 160, 150, - 169, 171, 149, 166, 152, 175, 153, 202, 177, 164, - - 157, 165, 166, 173, 202, 160, 175, 177, 154, 163, - 163, 169, 171, 163, 163, 174, 163, 163, 163, 163, - 163, 163, 164, 167, 165, 176, 173, 178, 179, 180, - 174, 181, 167, 182, 167, 186, 178, 183, 167, 190, - 167, 184, 182, 185, 176, 188, 194, 190, 181, 189, - 184, 179, 180, 186, 183, 187, 185, 191, 189, 192, - 187, 430, 191, 429, 194, 427, 188, 196, 196, 198, - 198, 201, 196, 192, 203, 204, 197, 197, 196, 197, - 197, 199, 199, 199, 200, 200, 200, 208, 201, 209, - 210, 203, 204, 211, 208, 210, 212, 213, 214, 215, - - 216, 217, 213, 219, 221, 216, 211, 218, 222, 223, - 217, 212, 209, 222, 218, 224, 225, 214, 223, 221, - 215, 226, 228, 227, 229, 232, 219, 233, 235, 241, - 236, 239, 238, 245, 255, 226, 224, 225, 227, 229, - 228, 238, 233, 232, 239, 255, 242, 240, 243, 241, - 244, 246, 235, 236, 240, 242, 245, 243, 247, 244, - 246, 249, 250, 253, 256, 247, 257, 259, 258, 242, - 249, 243, 253, 258, 256, 260, 261, 250, 262, 257, - 263, 265, 267, 270, 259, 268, 268, 273, 270, 262, - 271, 275, 277, 276, 273, 267, 260, 261, 271, 276, - - 274, 277, 278, 279, 265, 274, 280, 263, 281, 283, - 286, 285, 275, 287, 288, 281, 283, 289, 290, 278, - 285, 292, 293, 280, 295, 286, 279, 290, 294, 287, - 296, 293, 297, 295, 289, 294, 299, 288, 292, 296, - 300, 297, 310, 309, 311, 315, 318, 321, 319, 316, - 317, 322, 334, 311, 299, 309, 316, 323, 317, 319, - 325, 327, 328, 300, 322, 310, 329, 333, 315, 318, - 321, 328, 333, 325, 323, 334, 336, 338, 327, 340, - 339, 347, 348, 342, 340, 353, 338, 360, 329, 339, - 342, 354, 336, 359, 361, 362, 366, 365, 353, 348, - - 360, 367, 347, 354, 368, 366, 371, 369, 359, 370, - 367, 361, 365, 372, 374, 371, 377, 376, 362, 374, - 375, 368, 369, 378, 370, 375, 376, 381, 382, 383, - 387, 384, 388, 391, 378, 372, 394, 397, 389, 377, - 384, 393, 381, 387, 389, 382, 391, 388, 395, 396, - 393, 398, 383, 395, 399, 400, 401, 402, 403, 394, - 400, 404, 405, 406, 398, 396, 397, 408, 407, 399, - 404, 405, 401, 410, 409, 411, 402, 407, 412, 418, - 414, 403, 408, 409, 416, 417, 419, 420, 411, 414, - 421, 422, 406, 423, 425, 412, 410, 416, 421, 428, - - 418, 431, 417, 426, 419, 424, 415, 413, 428, 392, - 420, 425, 390, 386, 385, 380, 423, 379, 373, 364, - 422, 363, 431, 434, 434, 434, 434, 435, 435, 437, - 358, 437, 437, 357, 356, 355, 352, 351, 350, 349, - 346, 345, 344, 343, 341, 337, 335, 332, 331, 330, - 326, 324, 320, 314, 313, 312, 308, 307, 306, 305, - 304, 303, 302, 301, 298, 291, 284, 282, 272, 269, - 266, 264, 254, 252, 251, 248, 234, 231, 230, 220, - 207, 206, 205, 193, 172, 170, 168, 162, 161, 159, - 156, 155, 133, 128, 124, 122, 120, 117, 113, 109, - - 96, 84, 59, 39, 37, 8, 7, 3, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 433 + 31, 447, 30, 43, 43, 30, 55, 31, 30, 30, + 44, 44, 44, 45, 45, 45, 45, 65, 53, 30, + 30, 56, 30, 32, 54, 32, 53, 58, 47, 47, + 47, 32, 56, 47, 48, 48, 48, 48, 32, 47, + 32, 65, 32, 54, 445, 58, 60, 32, 49, 49, + 49, 52, 49, 49, 57, 49, 49, 49, 49, 49, + + 49, 60, 61, 62, 52, 57, 52, 63, 60, 61, + 67, 66, 68, 69, 63, 70, 71, 67, 62, 66, + 62, 74, 72, 73, 70, 81, 63, 68, 76, 75, + 441, 69, 77, 67, 68, 75, 88, 77, 78, 71, + 72, 80, 73, 74, 74, 76, 74, 79, 81, 77, + 82, 76, 83, 78, 85, 79, 80, 83, 86, 87, + 89, 90, 91, 88, 92, 82, 439, 85, 90, 93, + 99, 86, 92, 94, 102, 87, 90, 91, 95, 94, + 91, 96, 87, 91, 90, 98, 100, 93, 89, 99, + 101, 95, 102, 124, 96, 103, 105, 106, 98, 107, + + 105, 105, 96, 103, 107, 109, 124, 101, 103, 98, + 106, 119, 106, 105, 100, 120, 103, 112, 112, 113, + 113, 103, 119, 131, 113, 122, 109, 115, 115, 115, + 113, 126, 115, 120, 122, 127, 116, 116, 115, 116, + 116, 116, 128, 130, 132, 131, 126, 133, 135, 137, + 127, 130, 138, 136, 135, 139, 140, 145, 137, 132, + 142, 138, 133, 141, 144, 128, 136, 143, 141, 142, + 144, 146, 145, 138, 147, 148, 143, 139, 149, 140, + 146, 150, 151, 147, 152, 153, 154, 149, 155, 158, + 161, 167, 152, 148, 170, 150, 153, 178, 438, 172, + + 167, 154, 179, 165, 158, 151, 166, 161, 172, 175, + 173, 179, 155, 164, 164, 170, 178, 164, 164, 168, + 164, 164, 164, 164, 164, 164, 165, 176, 168, 166, + 168, 173, 175, 177, 168, 181, 168, 180, 182, 183, + 184, 186, 176, 185, 177, 188, 180, 189, 190, 184, + 186, 187, 189, 191, 193, 196, 183, 192, 181, 193, + 185, 182, 191, 188, 187, 192, 194, 198, 198, 190, + 200, 200, 198, 196, 201, 201, 201, 203, 198, 205, + 194, 199, 199, 204, 199, 199, 202, 202, 202, 206, + 204, 210, 211, 214, 203, 212, 205, 213, 210, 215, + + 212, 216, 217, 221, 215, 219, 206, 218, 214, 220, + 213, 226, 218, 223, 219, 211, 220, 224, 225, 227, + 216, 228, 224, 217, 229, 230, 221, 225, 223, 231, + 234, 235, 226, 237, 242, 228, 238, 241, 240, 229, + 227, 242, 243, 230, 231, 244, 235, 240, 234, 245, + 241, 246, 247, 436, 244, 248, 249, 237, 245, 238, + 246, 260, 243, 250, 248, 249, 253, 252, 244, 256, + 250, 258, 245, 259, 260, 247, 252, 262, 256, 261, + 263, 253, 258, 259, 261, 264, 265, 266, 268, 270, + 271, 271, 274, 273, 262, 278, 276, 265, 273, 277, + + 274, 263, 270, 276, 277, 281, 264, 279, 280, 282, + 283, 268, 284, 279, 266, 288, 278, 280, 286, 284, + 289, 290, 281, 291, 288, 286, 292, 283, 295, 293, + 296, 302, 282, 297, 303, 289, 435, 290, 293, 296, + 297, 298, 299, 292, 300, 295, 291, 313, 311, 302, + 298, 299, 314, 300, 315, 319, 321, 303, 311, 313, + 320, 322, 323, 315, 321, 325, 326, 320, 327, 329, + 331, 332, 333, 323, 338, 314, 337, 340, 319, 326, + 332, 337, 329, 342, 322, 327, 343, 331, 325, 351, + 352, 344, 342, 340, 333, 343, 344, 338, 346, 354, + + 358, 364, 359, 366, 365, 346, 367, 352, 370, 354, + 351, 373, 371, 358, 359, 372, 364, 365, 374, 375, + 366, 371, 376, 370, 372, 377, 379, 380, 373, 367, + 382, 376, 380, 374, 375, 379, 381, 383, 384, 382, + 387, 381, 388, 389, 390, 393, 395, 377, 396, 384, + 394, 398, 401, 390, 396, 387, 400, 394, 393, 388, + 383, 395, 402, 403, 398, 400, 389, 402, 404, 405, + 406, 407, 408, 409, 410, 401, 411, 408, 412, 403, + 415, 413, 416, 406, 419, 417, 407, 412, 420, 409, + 413, 416, 405, 410, 418, 421, 423, 404, 425, 411, + + 417, 420, 426, 418, 427, 423, 428, 419, 429, 415, + 430, 425, 421, 431, 432, 434, 433, 437, 430, 426, + 440, 424, 422, 414, 428, 427, 437, 399, 397, 392, + 391, 429, 434, 386, 385, 378, 369, 432, 368, 363, + 362, 440, 431, 443, 443, 443, 443, 444, 444, 446, + 361, 446, 446, 360, 357, 356, 355, 353, 350, 349, + 348, 347, 345, 341, 339, 336, 335, 334, 330, 328, + 324, 318, 317, 316, 312, 310, 309, 308, 307, 306, + 305, 304, 301, 294, 287, 285, 275, 272, 269, 267, + 257, 255, 254, 251, 236, 233, 232, 222, 209, 208, + + 207, 195, 174, 171, 169, 163, 162, 160, 157, 156, + 134, 129, 125, 123, 121, 118, 114, 110, 97, 84, + 59, 39, 37, 8, 7, 3, 442, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442 } ; static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr; @@ -761,7 +768,7 @@ goto find_rule; \ #define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET char *yytext; -#line 1 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 1 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" #define INITIAL 0 /*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===// // @@ -776,7 +783,7 @@ char *yytext; // //===----------------------------------------------------------------------===*/ #define YY_NEVER_INTERACTIVE 1 -#line 28 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 28 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" #include "ParserInternals.h" #include "llvm/Module.h" #include <list> @@ -902,7 +909,7 @@ using namespace llvm; /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing * it to deal with 64 bit numbers. */ -#line 906 "Lexer.cpp" +#line 913 "Lexer.cpp" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1053,10 +1060,10 @@ YY_DECL register char *yy_cp, *yy_bp; register int yy_act; -#line 179 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 179 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" -#line 1060 "Lexer.cpp" +#line 1067 "Lexer.cpp" if ( yy_init ) { @@ -1104,14 +1111,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 >= 434 ) + if ( yy_current_state >= 443 ) 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 != 433 ); + while ( yy_current_state != 442 ); yy_find_action: yy_current_state = *--yy_state_ptr; @@ -1149,471 +1156,476 @@ do_action: /* This label is used only to access EOF actions. */ { /* beginning of action switch */ case 1: YY_RULE_SETUP -#line 181 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 181 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { /* Ignore comments for now */ } YY_BREAK case 2: YY_RULE_SETUP -#line 183 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 183 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return BEGINTOK; } YY_BREAK case 3: YY_RULE_SETUP -#line 184 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 184 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ENDTOK; } YY_BREAK case 4: YY_RULE_SETUP -#line 185 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 185 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TRUETOK; } YY_BREAK case 5: YY_RULE_SETUP -#line 186 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 186 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return FALSETOK; } YY_BREAK case 6: YY_RULE_SETUP -#line 187 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 187 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return DECLARE; } YY_BREAK case 7: YY_RULE_SETUP -#line 188 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 188 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return GLOBAL; } YY_BREAK case 8: YY_RULE_SETUP -#line 189 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 189 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return CONSTANT; } YY_BREAK case 9: YY_RULE_SETUP -#line 190 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 190 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return INTERNAL; } YY_BREAK case 10: YY_RULE_SETUP -#line 191 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 191 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return LINKONCE; } YY_BREAK case 11: YY_RULE_SETUP -#line 192 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 192 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return WEAK; } YY_BREAK case 12: YY_RULE_SETUP -#line 193 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 193 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return APPENDING; } YY_BREAK case 13: YY_RULE_SETUP -#line 194 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 194 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return EXTERNAL; } /* Deprecated, turn into external */ YY_BREAK case 14: YY_RULE_SETUP -#line 195 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 195 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return EXTERNAL; } YY_BREAK case 15: YY_RULE_SETUP -#line 196 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 196 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return IMPLEMENTATION; } YY_BREAK case 16: YY_RULE_SETUP -#line 197 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 197 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ZEROINITIALIZER; } YY_BREAK case 17: YY_RULE_SETUP -#line 198 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 198 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return DOTDOTDOT; } YY_BREAK case 18: YY_RULE_SETUP -#line 199 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 199 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return UNDEF; } YY_BREAK case 19: YY_RULE_SETUP -#line 200 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 200 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return NULL_TOK; } YY_BREAK case 20: YY_RULE_SETUP -#line 201 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 201 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TO; } YY_BREAK case 21: YY_RULE_SETUP -#line 202 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 202 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { RET_TOK(TermOpVal, Unwind, UNWIND); } YY_BREAK case 22: YY_RULE_SETUP -#line 203 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 203 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return NOT; } /* Deprecated, turned into XOR */ YY_BREAK case 23: YY_RULE_SETUP -#line 204 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 204 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TAIL; } YY_BREAK case 24: YY_RULE_SETUP -#line 205 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 205 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TARGET; } YY_BREAK case 25: YY_RULE_SETUP -#line 206 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 206 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return TRIPLE; } YY_BREAK case 26: YY_RULE_SETUP -#line 207 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 207 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return DEPLIBS; } YY_BREAK case 27: YY_RULE_SETUP -#line 208 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 208 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ENDIAN; } YY_BREAK case 28: YY_RULE_SETUP -#line 209 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 209 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return POINTERSIZE; } YY_BREAK case 29: YY_RULE_SETUP -#line 210 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 210 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return LITTLE; } YY_BREAK case 30: YY_RULE_SETUP -#line 211 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 211 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return BIG; } YY_BREAK case 31: YY_RULE_SETUP -#line 212 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 212 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return VOLATILE; } YY_BREAK case 32: YY_RULE_SETUP -#line 213 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 213 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ALIGN; } YY_BREAK case 33: YY_RULE_SETUP -#line 214 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 214 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return SECTION; } YY_BREAK case 34: YY_RULE_SETUP -#line 215 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 215 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return MODULE; } YY_BREAK case 35: YY_RULE_SETUP -#line 216 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 216 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return ASM_TOK; } YY_BREAK case 36: YY_RULE_SETUP -#line 218 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ return CC_TOK; } +#line 217 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ return SIDEEFFECT; } YY_BREAK case 37: YY_RULE_SETUP -#line 219 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ return CCC_TOK; } +#line 219 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ return CC_TOK; } YY_BREAK case 38: YY_RULE_SETUP -#line 220 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ return FASTCC_TOK; } +#line 220 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ return CCC_TOK; } YY_BREAK case 39: YY_RULE_SETUP -#line 221 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ return COLDCC_TOK; } +#line 221 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ return FASTCC_TOK; } YY_BREAK case 40: YY_RULE_SETUP -#line 223 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::VoidTy ; return VOID; } +#line 222 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ return COLDCC_TOK; } YY_BREAK case 41: YY_RULE_SETUP -#line 224 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::BoolTy ; return BOOL; } +#line 224 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::VoidTy ; return VOID; } YY_BREAK case 42: YY_RULE_SETUP -#line 225 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::SByteTy ; return SBYTE; } +#line 225 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::BoolTy ; return BOOL; } YY_BREAK case 43: YY_RULE_SETUP -#line 226 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::UByteTy ; return UBYTE; } +#line 226 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::SByteTy ; return SBYTE; } YY_BREAK case 44: YY_RULE_SETUP -#line 227 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::ShortTy ; return SHORT; } +#line 227 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::UByteTy ; return UBYTE; } YY_BREAK case 45: YY_RULE_SETUP -#line 228 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::UShortTy; return USHORT; } +#line 228 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::ShortTy ; return SHORT; } YY_BREAK case 46: YY_RULE_SETUP -#line 229 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::IntTy ; return INT; } +#line 229 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::UShortTy; return USHORT; } YY_BREAK case 47: YY_RULE_SETUP -#line 230 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::UIntTy ; return UINT; } +#line 230 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::IntTy ; return INT; } YY_BREAK case 48: YY_RULE_SETUP -#line 231 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::LongTy ; return LONG; } +#line 231 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::UIntTy ; return UINT; } YY_BREAK case 49: YY_RULE_SETUP -#line 232 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::ULongTy ; return ULONG; } +#line 232 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::LongTy ; return LONG; } YY_BREAK case 50: YY_RULE_SETUP -#line 233 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::FloatTy ; return FLOAT; } +#line 233 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::ULongTy ; return ULONG; } YY_BREAK case 51: YY_RULE_SETUP -#line 234 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::DoubleTy; return DOUBLE; } +#line 234 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::FloatTy ; return FLOAT; } YY_BREAK case 52: YY_RULE_SETUP -#line 235 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ llvmAsmlval.PrimType = Type::LabelTy ; return LABEL; } +#line 235 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::DoubleTy; return DOUBLE; } YY_BREAK case 53: YY_RULE_SETUP -#line 236 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ return TYPE; } +#line 236 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ llvmAsmlval.PrimType = Type::LabelTy ; return LABEL; } YY_BREAK case 54: YY_RULE_SETUP -#line 237 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ return OPAQUE; } +#line 237 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ return TYPE; } YY_BREAK case 55: YY_RULE_SETUP -#line 239 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, Add, ADD); } +#line 238 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ return OPAQUE; } YY_BREAK case 56: YY_RULE_SETUP -#line 240 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, Sub, SUB); } +#line 240 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, Add, ADD); } YY_BREAK case 57: YY_RULE_SETUP -#line 241 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, Mul, MUL); } +#line 241 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, Sub, SUB); } YY_BREAK case 58: YY_RULE_SETUP -#line 242 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, Div, DIV); } +#line 242 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, Mul, MUL); } YY_BREAK case 59: YY_RULE_SETUP -#line 243 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, Rem, REM); } +#line 243 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, Div, DIV); } YY_BREAK case 60: YY_RULE_SETUP -#line 244 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, And, AND); } +#line 244 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, Rem, REM); } YY_BREAK case 61: YY_RULE_SETUP -#line 245 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, Or , OR ); } +#line 245 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, And, AND); } YY_BREAK case 62: YY_RULE_SETUP -#line 246 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, Xor, XOR); } +#line 246 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, Or , OR ); } YY_BREAK case 63: YY_RULE_SETUP -#line 247 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, SetNE, SETNE); } +#line 247 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, Xor, XOR); } YY_BREAK case 64: YY_RULE_SETUP -#line 248 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, SetEQ, SETEQ); } +#line 248 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, SetNE, SETNE); } YY_BREAK case 65: YY_RULE_SETUP -#line 249 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, SetLT, SETLT); } +#line 249 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, SetEQ, SETEQ); } YY_BREAK case 66: YY_RULE_SETUP -#line 250 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, SetGT, SETGT); } +#line 250 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, SetLT, SETLT); } YY_BREAK case 67: YY_RULE_SETUP -#line 251 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, SetLE, SETLE); } +#line 251 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, SetGT, SETGT); } YY_BREAK case 68: YY_RULE_SETUP -#line 252 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(BinaryOpVal, SetGE, SETGE); } +#line 252 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, SetLE, SETLE); } YY_BREAK case 69: YY_RULE_SETUP -#line 254 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(OtherOpVal, PHI, PHI_TOK); } +#line 253 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(BinaryOpVal, SetGE, SETGE); } YY_BREAK case 70: YY_RULE_SETUP -#line 255 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(OtherOpVal, Call, CALL); } +#line 255 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(OtherOpVal, PHI, PHI_TOK); } YY_BREAK case 71: YY_RULE_SETUP -#line 256 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(OtherOpVal, Cast, CAST); } +#line 256 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(OtherOpVal, Call, CALL); } YY_BREAK case 72: YY_RULE_SETUP -#line 257 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(OtherOpVal, Select, SELECT); } +#line 257 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(OtherOpVal, Cast, CAST); } YY_BREAK case 73: YY_RULE_SETUP -#line 258 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(OtherOpVal, Shl, SHL); } +#line 258 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(OtherOpVal, Select, SELECT); } YY_BREAK case 74: YY_RULE_SETUP -#line 259 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(OtherOpVal, Shr, SHR); } +#line 259 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(OtherOpVal, Shl, SHL); } YY_BREAK case 75: YY_RULE_SETUP -#line 260 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ return VANEXT_old; } +#line 260 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(OtherOpVal, Shr, SHR); } YY_BREAK case 76: YY_RULE_SETUP -#line 261 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ return VAARG_old; } +#line 261 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ return VANEXT_old; } YY_BREAK case 77: YY_RULE_SETUP -#line 262 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(OtherOpVal, VAArg , VAARG); } +#line 262 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ return VAARG_old; } YY_BREAK case 78: YY_RULE_SETUP -#line 263 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(TermOpVal, Ret, RET); } +#line 263 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(OtherOpVal, VAArg , VAARG); } YY_BREAK case 79: YY_RULE_SETUP -#line 264 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(TermOpVal, Br, BR); } +#line 264 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(TermOpVal, Ret, RET); } YY_BREAK case 80: YY_RULE_SETUP -#line 265 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(TermOpVal, Switch, SWITCH); } +#line 265 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(TermOpVal, Br, BR); } YY_BREAK case 81: YY_RULE_SETUP -#line 266 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(TermOpVal, Invoke, INVOKE); } +#line 266 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(TermOpVal, Switch, SWITCH); } YY_BREAK case 82: YY_RULE_SETUP -#line 267 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(TermOpVal, Unwind, UNWIND); } +#line 267 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(TermOpVal, Invoke, INVOKE); } YY_BREAK case 83: YY_RULE_SETUP -#line 268 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(TermOpVal, Unreachable, UNREACHABLE); } +#line 268 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(TermOpVal, Unwind, UNWIND); } YY_BREAK case 84: YY_RULE_SETUP -#line 270 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(MemOpVal, Malloc, MALLOC); } +#line 269 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(TermOpVal, Unreachable, UNREACHABLE); } YY_BREAK case 85: YY_RULE_SETUP -#line 271 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(MemOpVal, Alloca, ALLOCA); } +#line 271 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(MemOpVal, Malloc, MALLOC); } YY_BREAK case 86: YY_RULE_SETUP -#line 272 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(MemOpVal, Free, FREE); } +#line 272 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(MemOpVal, Alloca, ALLOCA); } YY_BREAK case 87: YY_RULE_SETUP -#line 273 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(MemOpVal, Load, LOAD); } +#line 273 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(MemOpVal, Free, FREE); } YY_BREAK case 88: YY_RULE_SETUP -#line 274 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(MemOpVal, Store, STORE); } +#line 274 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(MemOpVal, Load, LOAD); } YY_BREAK case 89: YY_RULE_SETUP -#line 275 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); } +#line 275 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(MemOpVal, Store, STORE); } YY_BREAK case 90: YY_RULE_SETUP -#line 277 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); } +#line 276 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); } YY_BREAK case 91: YY_RULE_SETUP -#line 278 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" -{ RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); } +#line 278 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); } YY_BREAK case 92: YY_RULE_SETUP -#line 281 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 279 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" +{ RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); } + YY_BREAK +case 93: +YY_RULE_SETUP +#line 282 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { UnEscapeLexed(yytext+1); llvmAsmlval.StrVal = strdup(yytext+1); // Skip % return VAR_ID; } YY_BREAK -case 93: +case 94: YY_RULE_SETUP -#line 286 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 287 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { yytext[strlen(yytext)-1] = 0; // nuke colon UnEscapeLexed(yytext); @@ -1621,9 +1633,9 @@ YY_RULE_SETUP return LABELSTR; } YY_BREAK -case 94: +case 95: YY_RULE_SETUP -#line 292 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 293 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { yytext[strlen(yytext)-2] = 0; // nuke colon, end quote UnEscapeLexed(yytext+1); @@ -1631,9 +1643,9 @@ YY_RULE_SETUP return LABELSTR; } YY_BREAK -case 95: +case 96: YY_RULE_SETUP -#line 299 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 300 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { // Note that we cannot unescape a string constant here! The // string constant might contain a \00 which would not be // understood by the string stuff. It is valid to make a @@ -1644,14 +1656,14 @@ YY_RULE_SETUP return STRINGCONSTANT; } YY_BREAK -case 96: +case 97: YY_RULE_SETUP -#line 310 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 311 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.UInt64Val = atoull(yytext); return EUINT64VAL; } YY_BREAK -case 97: +case 98: YY_RULE_SETUP -#line 311 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 312 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { uint64_t Val = atoull(yytext+1); // +1: we have bigger negative range @@ -1661,17 +1673,17 @@ YY_RULE_SETUP return ESINT64VAL; } YY_BREAK -case 98: +case 99: YY_RULE_SETUP -#line 319 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 320 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.UInt64Val = HexIntToVal(yytext+3); return yytext[0] == 's' ? ESINT64VAL : EUINT64VAL; } YY_BREAK -case 99: +case 100: YY_RULE_SETUP -#line 324 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 325 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { uint64_t Val = atoull(yytext+1); if ((unsigned)Val != Val) @@ -1680,9 +1692,9 @@ YY_RULE_SETUP return UINTVAL; } YY_BREAK -case 100: +case 101: YY_RULE_SETUP -#line 331 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 332 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { uint64_t Val = atoull(yytext+2); // +1: we have bigger negative range @@ -1692,18 +1704,18 @@ YY_RULE_SETUP return SINTVAL; } YY_BREAK -case 101: +case 102: YY_RULE_SETUP -#line 340 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 341 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.FPVal = atof(yytext); return FPVAL; } YY_BREAK -case 102: +case 103: YY_RULE_SETUP -#line 341 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 342 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; } YY_BREAK case YY_STATE_EOF(INITIAL): -#line 343 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 344 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { /* Make sure to free the internal buffers for flex when we are * done reading our input! @@ -1712,22 +1724,22 @@ case YY_STATE_EOF(INITIAL): return EOF; } YY_BREAK -case 103: +case 104: YY_RULE_SETUP -#line 351 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 352 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { /* Ignore whitespace */ } YY_BREAK -case 104: +case 105: YY_RULE_SETUP -#line 352 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 353 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" { return yytext[0]; } YY_BREAK -case 105: +case 106: YY_RULE_SETUP -#line 354 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 355 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 1731 "Lexer.cpp" +#line 1743 "Lexer.cpp" case YY_END_OF_BUFFER: { @@ -2014,7 +2026,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 >= 434 ) + if ( yy_current_state >= 443 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2044,11 +2056,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 >= 434 ) + if ( yy_current_state >= 443 ) 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 == 433); + yy_is_jam = (yy_current_state == 442); if ( ! yy_is_jam ) *yy_state_ptr++ = yy_current_state; @@ -2609,5 +2621,5 @@ int main() return 0; } #endif -#line 354 "/Users/sabre/cvs/llvm/lib/AsmParser/Lexer.l" +#line 355 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l" diff --git a/lib/AsmParser/llvmAsmParser.cpp b/lib/AsmParser/llvmAsmParser.cpp index 6f814b4..f7e57fe 100644 --- a/lib/AsmParser/llvmAsmParser.cpp +++ b/lib/AsmParser/llvmAsmParser.cpp @@ -1,5 +1,5 @@ -/* A Bison parser, made from /Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y +/* A Bison parser, made from /Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y by GNU Bison version 1.28 */ #define YYBISON 1 /* Identify Bison output. */ @@ -68,51 +68,53 @@ #define TAIL 311 #define ASM_TOK 312 #define MODULE 313 -#define CC_TOK 314 -#define CCC_TOK 315 -#define FASTCC_TOK 316 -#define COLDCC_TOK 317 -#define RET 318 -#define BR 319 -#define SWITCH 320 -#define INVOKE 321 -#define UNWIND 322 -#define UNREACHABLE 323 -#define ADD 324 -#define SUB 325 -#define MUL 326 -#define DIV 327 -#define REM 328 -#define AND 329 -#define OR 330 -#define XOR 331 -#define SETLE 332 -#define SETGE 333 -#define SETLT 334 -#define SETGT 335 -#define SETEQ 336 -#define SETNE 337 -#define MALLOC 338 -#define ALLOCA 339 -#define FREE 340 -#define LOAD 341 -#define STORE 342 -#define GETELEMENTPTR 343 -#define PHI_TOK 344 -#define CAST 345 -#define SELECT 346 -#define SHL 347 -#define SHR 348 -#define VAARG 349 -#define EXTRACTELEMENT 350 -#define INSERTELEMENT 351 -#define VAARG_old 352 -#define VANEXT_old 353 - -#line 14 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#define SIDEEFFECT 314 +#define CC_TOK 315 +#define CCC_TOK 316 +#define FASTCC_TOK 317 +#define COLDCC_TOK 318 +#define RET 319 +#define BR 320 +#define SWITCH 321 +#define INVOKE 322 +#define UNWIND 323 +#define UNREACHABLE 324 +#define ADD 325 +#define SUB 326 +#define MUL 327 +#define DIV 328 +#define REM 329 +#define AND 330 +#define OR 331 +#define XOR 332 +#define SETLE 333 +#define SETGE 334 +#define SETLT 335 +#define SETGT 336 +#define SETEQ 337 +#define SETNE 338 +#define MALLOC 339 +#define ALLOCA 340 +#define FREE 341 +#define LOAD 342 +#define STORE 343 +#define GETELEMENTPTR 344 +#define PHI_TOK 345 +#define CAST 346 +#define SELECT 347 +#define SHL 348 +#define SHR 349 +#define VAARG 350 +#define EXTRACTELEMENT 351 +#define INSERTELEMENT 352 +#define VAARG_old 353 +#define VANEXT_old 354 + +#line 14 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" #include "ParserInternals.h" #include "llvm/CallingConv.h" +#include "llvm/InlineAsm.h" #include "llvm/Instructions.h" #include "llvm/Module.h" #include "llvm/SymbolTable.h" @@ -415,6 +417,17 @@ static Value *getValNonImprovising(const Type *Ty, const ValID &D) { ThrowException("Constant expression type different from required type!"); return D.ConstantValue; + case ValID::InlineAsmVal: { // Inline asm expression + const PointerType *PTy = dyn_cast<PointerType>(Ty); + const FunctionType *FTy = + PTy ? dyn_cast<FunctionType>(PTy->getElementType()) : 0; + if (!FTy || !InlineAsm::Verify(FTy, D.IAD->Constraints)) + ThrowException("Invalid type for asm constraint string!"); + InlineAsm *IA = InlineAsm::get(FTy, D.IAD->AsmString, D.IAD->Constraints, + D.IAD->HasSideEffects); + D.destroy(); // Free InlineAsmDescriptor. + return IA; + } default: assert(0 && "Unhandled case!"); return 0; @@ -973,7 +986,7 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) { } -#line 878 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 890 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" typedef union { llvm::Module *ModuleVal; llvm::Function *FunctionVal; @@ -1023,26 +1036,26 @@ typedef union { -#define YYFINAL 467 +#define YYFINAL 473 #define YYFLAG -32768 -#define YYNTBASE 114 +#define YYNTBASE 115 -#define YYTRANSLATE(x) ((unsigned)(x) <= 353 ? yytranslate[x] : 184) +#define YYTRANSLATE(x) ((unsigned)(x) <= 354 ? yytranslate[x] : 186) static const char yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 103, - 104, 112, 2, 101, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 108, - 100, 109, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 104, + 105, 113, 2, 102, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 109, + 101, 110, 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, - 105, 102, 107, 2, 2, 2, 2, 2, 113, 2, + 106, 103, 108, 2, 2, 2, 2, 2, 114, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 106, - 2, 2, 110, 2, 111, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 107, + 2, 2, 111, 2, 112, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -1065,7 +1078,7 @@ static const char yytranslate[] = { 0, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99 + 97, 98, 99, 100 }; #if YYDEBUG != 0 @@ -1086,122 +1099,123 @@ static const short yyprhs[] = { 0, 372, 376, 381, 382, 384, 386, 388, 392, 396, 400, 404, 408, 410, 411, 413, 415, 417, 418, 421, 425, 427, 429, 433, 435, 436, 445, 447, 449, 453, 455, - 457, 460, 461, 465, 467, 469, 471, 473, 475, 477, - 479, 481, 485, 487, 489, 491, 493, 495, 498, 501, - 504, 508, 511, 512, 514, 517, 520, 524, 534, 544, - 553, 567, 569, 571, 578, 584, 587, 594, 602, 604, - 608, 610, 611, 614, 616, 622, 628, 634, 637, 642, - 647, 654, 659, 664, 669, 674, 681, 684, 692, 694, - 697, 698, 700, 701, 705, 712, 716, 723, 726, 731, - 738 + 457, 460, 461, 465, 466, 468, 470, 472, 474, 476, + 478, 480, 482, 484, 488, 490, 496, 498, 500, 502, + 504, 507, 510, 513, 517, 520, 521, 523, 526, 529, + 533, 543, 553, 562, 576, 578, 580, 587, 593, 596, + 603, 611, 613, 617, 619, 620, 623, 625, 631, 637, + 643, 646, 651, 656, 663, 668, 673, 678, 683, 690, + 693, 701, 703, 706, 707, 709, 710, 714, 721, 725, + 732, 735, 740, 747 }; static const short yyrhs[] = { 5, - 0, 6, 0, 3, 0, 4, 0, 70, 0, 71, - 0, 72, 0, 73, 0, 74, 0, 75, 0, 76, - 0, 77, 0, 78, 0, 79, 0, 80, 0, 81, - 0, 82, 0, 83, 0, 93, 0, 94, 0, 16, + 0, 6, 0, 3, 0, 4, 0, 71, 0, 72, + 0, 73, 0, 74, 0, 75, 0, 76, 0, 77, + 0, 78, 0, 79, 0, 80, 0, 81, 0, 82, + 0, 83, 0, 84, 0, 94, 0, 95, 0, 16, 0, 14, 0, 12, 0, 10, 0, 17, 0, 15, - 0, 13, 0, 11, 0, 120, 0, 121, 0, 18, - 0, 19, 0, 154, 100, 0, 0, 41, 0, 42, - 0, 43, 0, 44, 0, 0, 0, 61, 0, 62, - 0, 63, 0, 60, 4, 0, 0, 54, 4, 0, - 0, 101, 54, 4, 0, 34, 24, 0, 0, 129, - 0, 0, 101, 132, 131, 0, 129, 0, 54, 4, - 0, 135, 0, 8, 0, 137, 0, 8, 0, 137, + 0, 13, 0, 11, 0, 121, 0, 122, 0, 18, + 0, 19, 0, 155, 101, 0, 0, 41, 0, 42, + 0, 43, 0, 44, 0, 0, 0, 62, 0, 63, + 0, 64, 0, 61, 4, 0, 0, 54, 4, 0, + 0, 102, 54, 4, 0, 34, 24, 0, 0, 130, + 0, 0, 102, 133, 132, 0, 130, 0, 54, 4, + 0, 136, 0, 8, 0, 138, 0, 8, 0, 138, 0, 9, 0, 10, 0, 11, 0, 12, 0, 13, 0, 14, 0, 15, 0, 16, 0, 17, 0, 18, - 0, 19, 0, 20, 0, 21, 0, 45, 0, 136, - 0, 167, 0, 102, 4, 0, 134, 103, 139, 104, - 0, 105, 4, 106, 137, 107, 0, 108, 4, 106, - 137, 109, 0, 110, 138, 111, 0, 110, 111, 0, - 137, 112, 0, 137, 0, 138, 101, 137, 0, 138, - 0, 138, 101, 37, 0, 37, 0, 0, 135, 105, - 142, 107, 0, 135, 105, 107, 0, 135, 113, 24, - 0, 135, 108, 142, 109, 0, 135, 110, 142, 111, - 0, 135, 110, 111, 0, 135, 38, 0, 135, 39, - 0, 135, 167, 0, 135, 141, 0, 135, 26, 0, - 120, 115, 0, 121, 4, 0, 9, 27, 0, 9, - 28, 0, 123, 7, 0, 91, 103, 140, 36, 135, - 104, 0, 89, 103, 140, 181, 104, 0, 92, 103, - 140, 101, 140, 101, 140, 104, 0, 116, 103, 140, - 101, 140, 104, 0, 117, 103, 140, 101, 140, 104, - 0, 118, 103, 140, 101, 140, 104, 0, 119, 103, - 140, 101, 140, 104, 0, 96, 103, 140, 101, 140, - 104, 0, 142, 101, 140, 0, 140, 0, 32, 0, - 33, 0, 145, 0, 145, 163, 0, 145, 164, 0, - 145, 59, 58, 149, 0, 145, 25, 0, 146, 0, - 146, 124, 20, 133, 0, 146, 164, 0, 146, 59, - 58, 149, 0, 0, 146, 124, 125, 143, 140, 147, - 131, 0, 0, 146, 124, 47, 143, 135, 148, 131, - 0, 146, 48, 151, 0, 146, 55, 100, 152, 0, - 0, 24, 0, 53, 0, 52, 0, 50, 100, 150, - 0, 51, 100, 4, 0, 49, 100, 24, 0, 105, - 153, 107, 0, 153, 101, 24, 0, 24, 0, 0, - 22, 0, 24, 0, 154, 0, 0, 135, 155, 0, - 157, 101, 156, 0, 156, 0, 157, 0, 157, 101, - 37, 0, 37, 0, 0, 126, 133, 154, 103, 158, - 104, 130, 127, 0, 29, 0, 110, 0, 125, 159, - 160, 0, 30, 0, 111, 0, 170, 162, 0, 0, - 31, 165, 159, 0, 3, 0, 4, 0, 7, 0, - 27, 0, 28, 0, 38, 0, 39, 0, 26, 0, - 108, 142, 109, 0, 141, 0, 114, 0, 154, 0, - 167, 0, 166, 0, 135, 168, 0, 170, 171, 0, - 161, 171, 0, 172, 124, 173, 0, 172, 175, 0, - 0, 23, 0, 64, 169, 0, 64, 8, 0, 65, - 21, 168, 0, 65, 9, 168, 101, 21, 168, 101, - 21, 168, 0, 66, 122, 168, 101, 21, 168, 105, - 174, 107, 0, 66, 122, 168, 101, 21, 168, 105, - 107, 0, 67, 126, 133, 168, 103, 178, 104, 36, - 21, 168, 68, 21, 168, 0, 68, 0, 69, 0, - 174, 122, 166, 101, 21, 168, 0, 122, 166, 101, - 21, 168, 0, 124, 180, 0, 135, 105, 168, 101, - 168, 107, 0, 176, 101, 105, 168, 101, 168, 107, - 0, 169, 0, 177, 101, 169, 0, 177, 0, 0, - 57, 56, 0, 56, 0, 116, 135, 168, 101, 168, - 0, 117, 135, 168, 101, 168, 0, 118, 135, 168, - 101, 168, 0, 46, 169, 0, 119, 169, 101, 169, - 0, 91, 169, 36, 135, 0, 92, 169, 101, 169, - 101, 169, 0, 95, 169, 101, 135, 0, 98, 169, - 101, 135, 0, 99, 169, 101, 135, 0, 96, 169, - 101, 169, 0, 97, 169, 101, 169, 101, 169, 0, - 90, 176, 0, 179, 126, 133, 168, 103, 178, 104, - 0, 183, 0, 101, 177, 0, 0, 35, 0, 0, - 84, 135, 128, 0, 84, 135, 101, 15, 168, 128, - 0, 85, 135, 128, 0, 85, 135, 101, 15, 168, - 128, 0, 86, 169, 0, 182, 87, 135, 168, 0, - 182, 88, 169, 101, 135, 168, 0, 89, 135, 168, - 181, 0 + 0, 19, 0, 20, 0, 21, 0, 45, 0, 137, + 0, 169, 0, 103, 4, 0, 135, 104, 140, 105, + 0, 106, 4, 107, 138, 108, 0, 109, 4, 107, + 138, 110, 0, 111, 139, 112, 0, 111, 112, 0, + 138, 113, 0, 138, 0, 139, 102, 138, 0, 139, + 0, 139, 102, 37, 0, 37, 0, 0, 136, 106, + 143, 108, 0, 136, 106, 108, 0, 136, 114, 24, + 0, 136, 109, 143, 110, 0, 136, 111, 143, 112, + 0, 136, 111, 112, 0, 136, 38, 0, 136, 39, + 0, 136, 169, 0, 136, 142, 0, 136, 26, 0, + 121, 116, 0, 122, 4, 0, 9, 27, 0, 9, + 28, 0, 124, 7, 0, 92, 104, 141, 36, 136, + 105, 0, 90, 104, 141, 183, 105, 0, 93, 104, + 141, 102, 141, 102, 141, 105, 0, 117, 104, 141, + 102, 141, 105, 0, 118, 104, 141, 102, 141, 105, + 0, 119, 104, 141, 102, 141, 105, 0, 120, 104, + 141, 102, 141, 105, 0, 97, 104, 141, 102, 141, + 105, 0, 143, 102, 141, 0, 141, 0, 32, 0, + 33, 0, 146, 0, 146, 164, 0, 146, 165, 0, + 146, 59, 58, 150, 0, 146, 25, 0, 147, 0, + 147, 125, 20, 134, 0, 147, 165, 0, 147, 59, + 58, 150, 0, 0, 147, 125, 126, 144, 141, 148, + 132, 0, 0, 147, 125, 47, 144, 136, 149, 132, + 0, 147, 48, 152, 0, 147, 55, 101, 153, 0, + 0, 24, 0, 53, 0, 52, 0, 50, 101, 151, + 0, 51, 101, 4, 0, 49, 101, 24, 0, 106, + 154, 108, 0, 154, 102, 24, 0, 24, 0, 0, + 22, 0, 24, 0, 155, 0, 0, 136, 156, 0, + 158, 102, 157, 0, 157, 0, 158, 0, 158, 102, + 37, 0, 37, 0, 0, 127, 134, 155, 104, 159, + 105, 131, 128, 0, 29, 0, 111, 0, 126, 160, + 161, 0, 30, 0, 112, 0, 172, 163, 0, 0, + 31, 166, 160, 0, 0, 60, 0, 3, 0, 4, + 0, 7, 0, 27, 0, 28, 0, 38, 0, 39, + 0, 26, 0, 109, 143, 110, 0, 142, 0, 58, + 167, 24, 102, 24, 0, 115, 0, 155, 0, 169, + 0, 168, 0, 136, 170, 0, 172, 173, 0, 162, + 173, 0, 174, 125, 175, 0, 174, 177, 0, 0, + 23, 0, 65, 171, 0, 65, 8, 0, 66, 21, + 170, 0, 66, 9, 170, 102, 21, 170, 102, 21, + 170, 0, 67, 123, 170, 102, 21, 170, 106, 176, + 108, 0, 67, 123, 170, 102, 21, 170, 106, 108, + 0, 68, 127, 134, 170, 104, 180, 105, 36, 21, + 170, 69, 21, 170, 0, 69, 0, 70, 0, 176, + 123, 168, 102, 21, 170, 0, 123, 168, 102, 21, + 170, 0, 125, 182, 0, 136, 106, 170, 102, 170, + 108, 0, 178, 102, 106, 170, 102, 170, 108, 0, + 171, 0, 179, 102, 171, 0, 179, 0, 0, 57, + 56, 0, 56, 0, 117, 136, 170, 102, 170, 0, + 118, 136, 170, 102, 170, 0, 119, 136, 170, 102, + 170, 0, 46, 171, 0, 120, 171, 102, 171, 0, + 92, 171, 36, 136, 0, 93, 171, 102, 171, 102, + 171, 0, 96, 171, 102, 136, 0, 99, 171, 102, + 136, 0, 100, 171, 102, 136, 0, 97, 171, 102, + 171, 0, 98, 171, 102, 171, 102, 171, 0, 91, + 178, 0, 181, 127, 134, 170, 104, 180, 105, 0, + 185, 0, 102, 179, 0, 0, 35, 0, 0, 85, + 136, 129, 0, 85, 136, 102, 15, 170, 129, 0, + 86, 136, 129, 0, 86, 136, 102, 15, 170, 129, + 0, 87, 171, 0, 184, 88, 136, 170, 0, 184, + 89, 171, 102, 136, 170, 0, 90, 136, 170, 183, + 0 }; #endif #if YYDEBUG != 0 static const short yyrline[] = { 0, - 997, 998, 1005, 1006, 1015, 1015, 1015, 1015, 1015, 1016, - 1016, 1016, 1017, 1017, 1017, 1017, 1017, 1017, 1019, 1019, - 1023, 1023, 1023, 1023, 1024, 1024, 1024, 1024, 1025, 1025, - 1026, 1026, 1029, 1032, 1036, 1036, 1037, 1038, 1039, 1042, - 1042, 1043, 1044, 1045, 1054, 1054, 1060, 1060, 1068, 1075, - 1075, 1081, 1081, 1083, 1087, 1100, 1100, 1101, 1101, 1103, - 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1113, 1113, 1113, - 1113, 1113, 1113, 1114, 1117, 1120, 1126, 1133, 1145, 1149, - 1160, 1169, 1172, 1180, 1184, 1189, 1190, 1193, 1196, 1206, - 1231, 1244, 1273, 1298, 1318, 1330, 1339, 1343, 1402, 1408, - 1416, 1421, 1426, 1429, 1432, 1439, 1449, 1480, 1487, 1508, - 1518, 1523, 1530, 1540, 1543, 1550, 1550, 1560, 1567, 1571, - 1574, 1577, 1580, 1593, 1613, 1615, 1617, 1620, 1623, 1627, - 1630, 1632, 1634, 1638, 1650, 1651, 1653, 1656, 1664, 1669, - 1671, 1675, 1679, 1687, 1687, 1688, 1688, 1690, 1696, 1701, - 1707, 1710, 1715, 1719, 1723, 1809, 1809, 1811, 1819, 1819, - 1821, 1825, 1825, 1834, 1837, 1840, 1843, 1846, 1849, 1852, - 1855, 1858, 1882, 1889, 1892, 1897, 1897, 1903, 1907, 1910, - 1918, 1927, 1931, 1941, 1952, 1955, 1958, 1961, 1964, 1978, - 1982, 2035, 2038, 2044, 2052, 2062, 2069, 2074, 2081, 2085, - 2091, 2091, 2093, 2096, 2102, 2114, 2125, 2135, 2147, 2154, - 2161, 2168, 2173, 2192, 2214, 2222, 2234, 2248, 2305, 2311, - 2313, 2317, 2320, 2326, 2330, 2334, 2338, 2342, 2349, 2359, - 2372 + 1010, 1011, 1018, 1019, 1028, 1028, 1028, 1028, 1028, 1029, + 1029, 1029, 1030, 1030, 1030, 1030, 1030, 1030, 1032, 1032, + 1036, 1036, 1036, 1036, 1037, 1037, 1037, 1037, 1038, 1038, + 1039, 1039, 1042, 1045, 1049, 1049, 1050, 1051, 1052, 1055, + 1055, 1056, 1057, 1058, 1067, 1067, 1073, 1073, 1081, 1088, + 1088, 1094, 1094, 1096, 1100, 1113, 1113, 1114, 1114, 1116, + 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1126, 1126, 1126, + 1126, 1126, 1126, 1127, 1130, 1133, 1139, 1146, 1158, 1162, + 1173, 1182, 1185, 1193, 1197, 1202, 1203, 1206, 1209, 1219, + 1244, 1257, 1286, 1311, 1331, 1343, 1352, 1356, 1415, 1421, + 1429, 1434, 1439, 1442, 1445, 1452, 1462, 1493, 1500, 1521, + 1531, 1536, 1543, 1553, 1556, 1563, 1563, 1573, 1580, 1584, + 1587, 1590, 1593, 1606, 1626, 1628, 1630, 1633, 1636, 1640, + 1643, 1645, 1647, 1651, 1663, 1664, 1666, 1669, 1677, 1682, + 1684, 1688, 1692, 1700, 1700, 1701, 1701, 1703, 1709, 1714, + 1720, 1723, 1728, 1732, 1736, 1822, 1822, 1824, 1832, 1832, + 1834, 1838, 1838, 1847, 1850, 1854, 1857, 1860, 1863, 1866, + 1869, 1872, 1875, 1878, 1902, 1905, 1918, 1921, 1926, 1926, + 1932, 1936, 1939, 1947, 1956, 1960, 1970, 1981, 1984, 1987, + 1990, 1993, 2007, 2011, 2064, 2067, 2073, 2081, 2091, 2098, + 2103, 2110, 2114, 2120, 2120, 2122, 2125, 2131, 2143, 2154, + 2164, 2176, 2183, 2190, 2197, 2202, 2221, 2243, 2251, 2263, + 2277, 2334, 2340, 2342, 2346, 2349, 2355, 2359, 2363, 2367, + 2371, 2378, 2388, 2401 }; #endif @@ -1215,8 +1229,8 @@ static const char * const yytname[] = { "$","error","$undefined.","ESINT64VAL" "BEGINTOK","ENDTOK","DECLARE","GLOBAL","CONSTANT","SECTION","VOLATILE","TO", "DOTDOTDOT","NULL_TOK","UNDEF","CONST","INTERNAL","LINKONCE","WEAK","APPENDING", "OPAQUE","NOT","EXTERNAL","TARGET","TRIPLE","ENDIAN","POINTERSIZE","LITTLE", -"BIG","ALIGN","DEPLIBS","CALL","TAIL","ASM_TOK","MODULE","CC_TOK","CCC_TOK", -"FASTCC_TOK","COLDCC_TOK","RET","BR","SWITCH","INVOKE","UNWIND","UNREACHABLE", +"BIG","ALIGN","DEPLIBS","CALL","TAIL","ASM_TOK","MODULE","SIDEEFFECT","CC_TOK", +"CCC_TOK","FASTCC_TOK","COLDCC_TOK","RET","BR","SWITCH","INVOKE","UNWIND","UNREACHABLE", "ADD","SUB","MUL","DIV","REM","AND","OR","XOR","SETLE","SETGE","SETLT","SETGT", "SETEQ","SETNE","MALLOC","ALLOCA","FREE","LOAD","STORE","GETELEMENTPTR","PHI_TOK", "CAST","SELECT","SHL","SHR","VAARG","EXTRACTELEMENT","INSERTELEMENT","VAARG_old", @@ -1228,38 +1242,38 @@ static const char * const yytname[] = { "$","error","$undefined.","ESINT64VAL" "ArgTypeListI","ConstVal","ConstExpr","ConstVector","GlobalType","Module","FunctionList", "ConstPool","@1","@2","AsmBlock","BigOrLittle","TargetDefinition","LibrariesDefinition", "LibList","Name","OptName","ArgVal","ArgListH","ArgList","FunctionHeaderH","BEGIN", -"FunctionHeader","END","Function","FunctionProto","@3","ConstValueRef","SymbolicValueRef", -"ValueRef","ResolvedVal","BasicBlockList","BasicBlock","InstructionList","BBTerminatorInst", -"JumpTable","Inst","PHIList","ValueRefList","ValueRefListE","OptTailCall","InstVal", -"IndexList","OptVolatile","MemoryInst", NULL +"FunctionHeader","END","Function","FunctionProto","@3","OptSideEffect","ConstValueRef", +"SymbolicValueRef","ValueRef","ResolvedVal","BasicBlockList","BasicBlock","InstructionList", +"BBTerminatorInst","JumpTable","Inst","PHIList","ValueRefList","ValueRefListE", +"OptTailCall","InstVal","IndexList","OptVolatile","MemoryInst", NULL }; #endif static const short yyr1[] = { 0, - 114, 114, 115, 115, 116, 116, 116, 116, 116, 117, - 117, 117, 118, 118, 118, 118, 118, 118, 119, 119, - 120, 120, 120, 120, 121, 121, 121, 121, 122, 122, - 123, 123, 124, 124, 125, 125, 125, 125, 125, 126, - 126, 126, 126, 126, 127, 127, 128, 128, 129, 130, - 130, 131, 131, 132, 132, 133, 133, 134, 134, 135, - 136, 136, 136, 136, 136, 136, 136, 136, 136, 136, - 136, 136, 136, 137, 137, 137, 137, 137, 137, 137, - 137, 137, 137, 138, 138, 139, 139, 139, 139, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 141, 141, 141, 141, 141, - 141, 141, 141, 142, 142, 143, 143, 144, 145, 145, - 145, 145, 145, 146, 146, 146, 147, 146, 148, 146, - 146, 146, 146, 149, 150, 150, 151, 151, 151, 152, - 153, 153, 153, 154, 154, 155, 155, 156, 157, 157, - 158, 158, 158, 158, 159, 160, 160, 161, 162, 162, - 163, 165, 164, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 167, 167, 168, 168, 169, 170, 170, - 171, 172, 172, 172, 173, 173, 173, 173, 173, 173, - 173, 173, 173, 174, 174, 175, 176, 176, 177, 177, - 178, 178, 179, 179, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 181, - 181, 182, 182, 183, 183, 183, 183, 183, 183, 183, - 183 + 115, 115, 116, 116, 117, 117, 117, 117, 117, 118, + 118, 118, 119, 119, 119, 119, 119, 119, 120, 120, + 121, 121, 121, 121, 122, 122, 122, 122, 123, 123, + 124, 124, 125, 125, 126, 126, 126, 126, 126, 127, + 127, 127, 127, 127, 128, 128, 129, 129, 130, 131, + 131, 132, 132, 133, 133, 134, 134, 135, 135, 136, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 137, + 137, 137, 137, 138, 138, 138, 138, 138, 138, 138, + 138, 138, 138, 139, 139, 140, 140, 140, 140, 141, + 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, + 141, 141, 141, 141, 141, 142, 142, 142, 142, 142, + 142, 142, 142, 143, 143, 144, 144, 145, 146, 146, + 146, 146, 146, 147, 147, 147, 148, 147, 149, 147, + 147, 147, 147, 150, 151, 151, 152, 152, 152, 153, + 154, 154, 154, 155, 155, 156, 156, 157, 158, 158, + 159, 159, 159, 159, 160, 161, 161, 162, 163, 163, + 164, 166, 165, 167, 167, 168, 168, 168, 168, 168, + 168, 168, 168, 168, 168, 168, 169, 169, 170, 170, + 171, 172, 172, 173, 174, 174, 174, 175, 175, 175, + 175, 175, 175, 175, 175, 175, 176, 176, 177, 178, + 178, 179, 179, 180, 180, 181, 181, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 183, 183, 184, 184, 185, 185, 185, 185, + 185, 185, 185, 185 }; static const short yyr2[] = { 0, @@ -1279,229 +1293,223 @@ static const short yyr2[] = { 0, 3, 4, 0, 1, 1, 1, 3, 3, 3, 3, 3, 1, 0, 1, 1, 1, 0, 2, 3, 1, 1, 3, 1, 0, 8, 1, 1, 3, 1, 1, - 2, 0, 3, 1, 1, 1, 1, 1, 1, 1, - 1, 3, 1, 1, 1, 1, 1, 2, 2, 2, - 3, 2, 0, 1, 2, 2, 3, 9, 9, 8, - 13, 1, 1, 6, 5, 2, 6, 7, 1, 3, - 1, 0, 2, 1, 5, 5, 5, 2, 4, 4, - 6, 4, 4, 4, 4, 6, 2, 7, 1, 2, - 0, 1, 0, 3, 6, 3, 6, 2, 4, 6, - 4 + 2, 0, 3, 0, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 3, 1, 5, 1, 1, 1, 1, + 2, 2, 2, 3, 2, 0, 1, 2, 2, 3, + 9, 9, 8, 13, 1, 1, 6, 5, 2, 6, + 7, 1, 3, 1, 0, 2, 1, 5, 5, 5, + 2, 4, 4, 6, 4, 4, 4, 4, 6, 2, + 7, 1, 2, 0, 1, 0, 3, 6, 3, 6, + 2, 4, 6, 4 }; static const short yydefact[] = { 133, 39, 123, 122, 162, 35, 36, 37, 38, 0, 40, - 183, 119, 120, 183, 144, 145, 0, 0, 0, 39, + 186, 119, 120, 186, 144, 145, 0, 0, 0, 39, 0, 125, 40, 0, 0, 41, 42, 43, 0, 0, - 184, 180, 34, 159, 160, 161, 179, 0, 0, 0, + 187, 183, 34, 159, 160, 161, 182, 0, 0, 0, 131, 0, 0, 0, 0, 0, 33, 163, 134, 121, 44, 1, 2, 57, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 0, 0, - 0, 0, 174, 0, 0, 56, 75, 60, 175, 76, - 156, 157, 158, 223, 182, 0, 0, 0, 143, 132, + 0, 0, 177, 0, 0, 56, 75, 60, 178, 76, + 156, 157, 158, 226, 185, 0, 0, 0, 143, 132, 126, 124, 116, 117, 0, 0, 77, 0, 0, 59, - 82, 84, 0, 0, 89, 83, 222, 0, 204, 0, - 0, 0, 0, 40, 192, 193, 5, 6, 7, 8, + 82, 84, 0, 0, 89, 83, 225, 0, 207, 0, + 0, 0, 0, 40, 195, 196, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 0, 0, 0, 0, 0, 0, 0, 19, 20, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 181, 40, - 196, 0, 219, 139, 136, 135, 137, 138, 142, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 184, 40, + 199, 0, 222, 139, 136, 135, 137, 138, 142, 0, 129, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 0, 0, 0, 0, 127, 0, 0, 0, - 81, 154, 88, 86, 0, 0, 208, 203, 186, 185, + 81, 154, 88, 86, 0, 0, 211, 206, 189, 188, 0, 0, 24, 28, 23, 27, 22, 26, 21, 25, - 29, 30, 0, 0, 47, 47, 228, 0, 0, 217, + 29, 30, 0, 0, 47, 47, 231, 0, 0, 220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 140, 52, 103, 104, 3, 4, 101, 102, 105, 100, 96, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 98, 52, 58, 58, 85, 153, 147, 150, 151, 0, - 0, 78, 164, 165, 166, 171, 167, 168, 169, 170, - 0, 173, 177, 176, 178, 0, 187, 0, 0, 0, - 224, 0, 226, 221, 0, 0, 0, 0, 0, 0, + 0, 78, 166, 167, 168, 173, 169, 170, 171, 172, + 164, 0, 175, 180, 179, 181, 0, 190, 0, 0, + 0, 227, 0, 229, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 141, 0, 130, 0, 0, 0, 0, 91, 115, 0, - 0, 95, 0, 92, 0, 0, 0, 0, 128, 79, - 80, 146, 148, 0, 50, 87, 0, 0, 0, 0, - 0, 0, 0, 0, 231, 0, 0, 210, 0, 212, - 215, 0, 213, 214, 0, 0, 0, 209, 0, 229, - 0, 0, 0, 54, 52, 221, 0, 0, 0, 0, - 90, 93, 94, 0, 0, 0, 0, 152, 149, 51, - 45, 172, 0, 0, 202, 47, 48, 47, 199, 220, - 0, 0, 0, 0, 205, 206, 207, 202, 0, 49, - 55, 53, 0, 0, 0, 0, 114, 0, 0, 0, - 0, 0, 155, 0, 0, 201, 0, 0, 225, 227, - 0, 0, 0, 211, 216, 0, 230, 107, 0, 0, - 0, 0, 0, 0, 0, 46, 0, 0, 0, 200, - 197, 0, 218, 106, 0, 113, 109, 110, 111, 112, - 0, 190, 0, 0, 0, 198, 0, 188, 0, 189, - 0, 0, 108, 0, 0, 0, 0, 0, 0, 195, - 0, 0, 194, 191, 0, 0, 0 + 0, 141, 0, 130, 0, 0, 0, 0, 91, 115, + 0, 0, 95, 0, 92, 0, 0, 0, 0, 128, + 79, 80, 146, 148, 0, 50, 87, 165, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 234, 0, 0, + 213, 0, 215, 218, 0, 216, 217, 0, 0, 0, + 212, 0, 232, 0, 0, 0, 54, 52, 224, 0, + 0, 0, 0, 90, 93, 94, 0, 0, 0, 0, + 152, 149, 51, 45, 0, 174, 0, 0, 205, 47, + 48, 47, 202, 223, 0, 0, 0, 0, 208, 209, + 210, 205, 0, 49, 55, 53, 0, 0, 0, 0, + 114, 0, 0, 0, 0, 0, 155, 0, 0, 0, + 204, 0, 0, 228, 230, 0, 0, 0, 214, 219, + 0, 233, 107, 0, 0, 0, 0, 0, 0, 0, + 46, 176, 0, 0, 0, 203, 200, 0, 221, 106, + 0, 113, 109, 110, 111, 112, 0, 193, 0, 0, + 0, 201, 0, 191, 0, 192, 0, 0, 108, 0, + 0, 0, 0, 0, 0, 198, 0, 0, 197, 194, + 0, 0, 0 }; static const short yydefgoto[] = { 73, 232, 246, 247, 248, 249, 173, 174, 203, 175, 20, - 10, 29, 403, 281, 354, 371, 303, 355, 74, 75, - 186, 77, 78, 103, 185, 309, 272, 310, 95, 465, + 10, 29, 407, 282, 357, 374, 304, 358, 74, 75, + 186, 77, 78, 103, 185, 310, 273, 311, 95, 471, 1, 2, 252, 227, 50, 157, 41, 90, 160, 79, - 323, 258, 259, 260, 30, 83, 11, 36, 12, 13, - 23, 273, 80, 275, 379, 14, 32, 33, 149, 444, - 85, 210, 406, 407, 150, 151, 335, 152, 153 + 324, 258, 259, 260, 30, 83, 11, 36, 12, 13, + 23, 329, 274, 80, 276, 383, 14, 32, 33, 149, + 450, 85, 210, 411, 412, 150, 151, 338, 152, 153 }; static const short yypact[] = {-32768, - 37, 361,-32768,-32768,-32768,-32768,-32768,-32768, -44, 49, - 38,-32768,-32768, 3,-32768,-32768, 70, -2, 42, 50, - 4,-32768, 49, 89, 125,-32768,-32768,-32768, 1054, -21, --32768,-32768, 64,-32768,-32768,-32768,-32768, 26, 45, 47, --32768, 69, 89, 1054, 117, 117,-32768,-32768,-32768,-32768, --32768,-32768,-32768, 73,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 174, 179, - 180, 122,-32768, 64, 82,-32768,-32768, -27,-32768,-32768, --32768,-32768,-32768, 1215,-32768, 163, -25, 186, 168,-32768, --32768,-32768,-32768,-32768, 1092, 1130,-32768, 85, 90,-32768, --32768, -27, -38, 94, 864,-32768,-32768, 1092,-32768, 142, - 1168, 23, 144, 49,-32768,-32768,-32768,-32768,-32768,-32768, + 30, 99,-32768,-32768,-32768,-32768,-32768,-32768, -47, 46, + 33,-32768,-32768, -13,-32768,-32768, 75, -32, 26, 21, + -3,-32768, 46, 63, 100,-32768,-32768,-32768, 974, -21, +-32768,-32768, 105,-32768,-32768,-32768,-32768, 10, 27, 32, +-32768, 38, 63, 974, 103, 103,-32768,-32768,-32768,-32768, +-32768,-32768,-32768, 18,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 135, 148, + 155, 490,-32768, 105, 67,-32768,-32768, -64,-32768,-32768, +-32768,-32768,-32768, 1136,-32768, 149, 85, 172, 154,-32768, +-32768,-32768,-32768,-32768, 1012, 1050,-32768, 73, 76,-32768, +-32768, -64, -17, 80, 784,-32768,-32768, 1012,-32768, 129, + 1088, 23, 221, 46,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - 1092, 1092, 1092, 1092, 1092, 1092, 1092,-32768,-32768, 1092, - 1092, 1092, 1092, 1092, 1092, 1092, 1092, 1092,-32768, 49, --32768, 75,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -36, --32768, 124, 162, 195, 165, 196, 167, 197, 169, 198, - 200, 201, 177, 199, 209, 531,-32768, 1092, 1092, 1092, --32768, 902,-32768, 103, 101, 680,-32768,-32768, 73,-32768, - 680, 680,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768, 680, 1054, 116, 118,-32768, 680, 113, 127, - 189, 130, 133, 134, 135, 136, 137, 680, 680, 680, - 139, 1054, 1092, 1092, 202,-32768, 140,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768, 143, 145, 146, - 147, 940, 1130, 637, 219, 148, 149, 150, 151,-32768, --32768, 140, -35, -64, -27,-32768, 64,-32768, 154, 153, - 978,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - 1130,-32768,-32768,-32768,-32768, 158,-32768, 161, 680, -5, --32768, 15,-32768, 173, 680, 164, 1092, 1092, 1092, 1092, - 1092, 1092, 1092, 178, 182, 183, 1092, 680, 680, 184, --32768, -18,-32768, 1130, 1130, 1130, 1130,-32768,-32768, -6, - -26,-32768, -37,-32768, 1130, 1130, 1130, 1130,-32768,-32768, --32768,-32768,-32768, 1016, 213,-32768, -19, 245, 247, 187, - 680, 266, 680, 1092,-32768, 190, 680,-32768, 191,-32768, --32768, 192,-32768,-32768, 680, 680, 680,-32768, 193,-32768, - 1092, 256, 290,-32768, 140, 173, 261, 206, 207, 1130, --32768,-32768,-32768, 210, 211, 212, 214,-32768,-32768,-32768, - 244,-32768, 680, 680, 1092, 215,-32768, 215,-32768, 218, - 680, 220, 1092, 1092,-32768,-32768,-32768, 1092, 680,-32768, --32768,-32768, 216, 1092, 1130, 1130,-32768, 1130, 1130, 1130, - 1130, 295,-32768, 222, 205, 218, 221, 248,-32768,-32768, - 1092, 217, 680,-32768,-32768, 223,-32768,-32768, 224, 225, - 231, 232, 233, 235, 238,-32768, 293, 8, 307,-32768, --32768, 237,-32768,-32768, 1130,-32768,-32768,-32768,-32768,-32768, - 680,-32768, 763, 41, 324,-32768, 243,-32768, 249,-32768, - 763, 680,-32768, 327, 252, 281, 680, 333, 334,-32768, - 680, 680,-32768,-32768, 359, 360,-32768 + 1012, 1012, 1012, 1012, 1012, 1012, 1012,-32768,-32768, 1012, + 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012,-32768, 46, +-32768, 60,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -14, +-32768, 123, 153, 182, 159, 186, 162, 187, 164, 188, + 189, 190, 166, 194, 193, 372,-32768, 1012, 1012, 1012, +-32768, 822,-32768, 101, 102, 622,-32768,-32768, 18,-32768, + 622, 622,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768, 622, 974, 104, 107,-32768, 622, 98, 108, + 169, 109, 110, 118, 119, 120, 121, 622, 622, 622, + 122, 974, 1012, 1012, 201,-32768, 124,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768, 136, 137, 138, + 141, 860, 1050, 531, 215, 142, 143, 144, 146,-32768, +-32768, 124, -75, -53, -64,-32768, 105,-32768, 150, 139, + 898,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, + 191, 1050,-32768,-32768,-32768,-32768, 151,-32768, 152, 622, + 5,-32768, 16,-32768, 158, 622, 156, 1012, 1012, 1012, + 1012, 1012, 1012, 1012, 161, 165, 168, 1012, 622, 622, + 170,-32768, -18,-32768, 1050, 1050, 1050, 1050,-32768,-32768, + -11, -65,-32768, -16,-32768, 1050, 1050, 1050, 1050,-32768, +-32768,-32768,-32768,-32768, 936, 222,-32768,-32768, 233, -10, + 245, 250, 171, 622, 269, 622, 1012,-32768, 178, 622, +-32768, 179,-32768,-32768, 180,-32768,-32768, 622, 622, 622, +-32768, 181,-32768, 1012, 259, 280,-32768, 124, 158, 255, + 184, 192, 1050,-32768,-32768,-32768, 197, 198, 199, 200, +-32768,-32768,-32768, 238, 202,-32768, 622, 622, 1012, 204, +-32768, 204,-32768, 205, 622, 206, 1012, 1012,-32768,-32768, +-32768, 1012, 622,-32768,-32768,-32768, 207, 1012, 1050, 1050, +-32768, 1050, 1050, 1050, 1050, 289,-32768, 271, 218, 223, + 205, 216, 270,-32768,-32768, 1012, 219, 622,-32768,-32768, + 225,-32768,-32768, 228, 226, 230, 231, 232, 235, 236, +-32768,-32768, 321, 12, 308,-32768,-32768, 237,-32768,-32768, + 1050,-32768,-32768,-32768,-32768,-32768, 622,-32768, 682, 66, + 328,-32768, 246,-32768, 248,-32768, 682, 622,-32768, 332, + 253, 287, 622, 336, 340,-32768, 622, 622,-32768,-32768, + 363, 364,-32768 }; static const short yypgoto[] = {-32768, --32768, 277, 278, 279, 280, -111, -110, -415,-32768, 335, - 353, -103,-32768, -199, 51,-32768, -247,-32768, -40,-32768, - -29,-32768, -55, 269,-32768, -95, 203, -184, 329,-32768, --32768,-32768,-32768,-32768, 337,-32768,-32768,-32768,-32768, 10, --32768, 54,-32768,-32768, 354,-32768,-32768,-32768,-32768, 380, --32768, -344, 53, 138, -102,-32768, 373,-32768,-32768,-32768, --32768,-32768, 55, 0,-32768,-32768, 35,-32768,-32768 +-32768, 281, 282, 283, 284, -112, -111, -415,-32768, 339, + 359, -102,-32768, -201, 54,-32768, -243,-32768, -40,-32768, + -29,-32768, -66, 276,-32768, -89, 208, -230, 337,-32768, +-32768,-32768,-32768,-32768, 342,-32768,-32768,-32768,-32768, 1, +-32768, 57,-32768,-32768, 365,-32768,-32768,-32768,-32768, 384, +-32768,-32768, -356, -31, 140, -90,-32768, 375,-32768,-32768, +-32768,-32768,-32768, 53, -1,-32768,-32768, 34,-32768,-32768 }; -#define YYLAST 1314 +#define YYLAST 1236 static const short yytable[] = { 76, - 177, 201, 202, 92, 319, 187, 283, 81, 190, 331, - 204, 21, 443, 24, 76, 352, 102, 193, 194, 195, - 196, 197, 198, 199, 200, 31, 155, 156, 451, 333, - 207, 191, 34, 211, 212, 353, -118, 213, 214, 215, - 216, 217, 21, 192, 321, 221, 222, 106, 332, 102, - 193, 194, 195, 196, 197, 198, 199, 200, 311, 313, - 31, 3, 180, 360, 225, 161, 176, 4, 332, 44, - 226, 320, 181, 363, 360, -58, 106, 5, 6, 7, - 8, 360, 362, 104, 106, 15, 327, 16, 82, 372, - 5, 6, 7, 8, 360, 9, 45, 42, 449, 43, - 361, 205, 206, 47, 208, 209, 455, 392, 25, 26, - 27, 28, 49, 35, 442, 218, 219, 220, 38, 39, - 40, 300, 253, 254, 255, 86, 52, 53, 51, 100, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 15, 87, 16, 88, 450, 93, 94, - 228, 229, 257, 193, 194, 195, 196, 197, 198, 199, - 200, 223, 224, 279, -24, -24, 68, -23, -23, -22, - -22, -21, -21, 89, 76, -59, 409, 97, 410, 230, - 231, 298, 98, 99, 105, 339, 154, 341, 342, 158, - 178, 159, 76, 299, 348, 179, 182, 188, -28, -27, - -26, -25, 233, 261, 262, 255, -31, -32, 356, 357, - 358, 359, 176, 176, 176, 234, 280, 285, 282, 364, - 365, 366, 367, 69, 287, 301, 70, 286, 251, 71, - 288, 72, 101, 289, 290, 291, 292, 293, 274, 297, - 302, 176, 314, 274, 274, 304, 352, 305, 306, 307, - 315, 316, 317, 318, 324, 274, 325, 338, 328, 340, - 274, 329, 343, 344, 397, 373, 322, 374, 337, 377, - 274, 274, 274, 334, 176, 176, 176, 176, 345, 390, - 414, 415, 346, 347, 351, 176, 176, 176, 176, 375, - 381, 383, 384, 391, 257, 388, 394, 402, 426, 420, - 421, 332, 422, 423, 424, 425, 395, 396, 430, 428, - 398, 399, 400, 441, 401, 408, 201, 202, 411, 418, - 413, 389, 427, 431, 429, 435, 433, 434, 276, 277, - 176, 274, 201, 202, 436, 437, 438, 274, 439, 447, - 278, 440, 445, 446, 452, 284, 453, 457, 459, 454, - 274, 274, 458, 461, 462, 294, 295, 296, 466, 467, - 145, 146, 147, 148, 419, 176, 176, 84, 176, 176, - 176, 176, 46, 184, 96, 370, 48, 369, 250, 91, - -34, 22, 15, 274, 16, 274, 37, 416, 380, 274, - 393, 4, -34, -34, 0, 0, 0, 274, 274, 274, - 0, -34, -34, -34, -34, 176, 0, -34, 17, 0, - 0, 0, 0, 0, 0, 18, 330, 0, 0, 19, - 0, 0, 336, 0, 0, 274, 274, 0, 0, 0, - 0, 0, 0, 274, 0, 349, 350, 0, 0, 0, - 0, 274, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 274, 0, 0, 376, 0, - 378, 0, 0, 0, 382, 0, 0, 0, 0, 0, - 0, 0, 385, 386, 387, 0, 0, 0, 0, 0, - 0, 0, 0, 274, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 274, 0, 0, 0, 0, 274, - 404, 405, 0, 274, 274, 0, 0, 0, 412, 0, - 0, 0, 0, 0, 0, 0, 417, 0, 0, 0, - 0, 0, 0, 0, 0, 52, 53, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 432, 0, 15, 0, 16, 0, 235, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 236, 237, - 0, 0, 0, 0, 0, 0, 0, 0, 448, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 456, - 0, 0, 0, 0, 460, 0, 0, 0, 463, 464, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 0, 0, 0, 0, 0, 238, - 0, 239, 240, 138, 139, 0, 241, 0, 0, 0, - 0, 0, 0, 0, 0, 242, 0, 0, 243, 0, - 244, 52, 53, 245, 100, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, 172, 66, 67, 15, 0, - 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 68, 263, 264, 52, 53, 265, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 15, 0, 16, 0, 266, 267, 268, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 269, 270, 0, + 201, 202, 21, 92, 284, 102, 177, 81, 320, 31, + 24, 204, 312, 314, 76, 355, 34, 187, 449, 334, + 190, 193, 194, 195, 196, 197, 198, 199, 200, -118, + 336, 191, 321, 21, 457, 356, 363, 106, 102, -58, + 44, 330, 207, 192, 365, 211, 212, 222, 106, 213, + 214, 215, 216, 217, 3, 31, 322, 221, 335, 106, + 4, 5, 6, 7, 8, 161, 176, 45, 42, 335, + 5, 6, 7, 8, 104, 193, 194, 195, 196, 197, + 198, 199, 200, 43, 180, 363, 49, 225, 9, 82, + 363, 363, 455, 226, 181, 366, 364, 47, 35, 376, + 461, 205, 206, 51, 208, 209, 25, 26, 27, 28, + 86, 253, 254, 255, 396, 218, 219, 220, -34, 448, + 15, -59, 16, 38, 39, 40, 15, 87, 16, 4, + -34, -34, 88, 301, 93, 94, 155, 156, 97, -34, + -34, -34, -34, 89, 251, -34, 17, 223, 224, 228, + 229, 98, 257, 18, 275, -24, -24, 19, 99, 275, + 275, -23, -23, 280, -22, -22, -21, -21, 230, 231, + 105, 275, 154, 456, 76, 158, 275, 159, 414, 178, + 415, 299, 179, 182, 188, -28, 275, 275, 275, -27, + -26, -25, 76, 300, 255, -31, -32, 233, 342, 234, + 344, 345, 261, 286, 288, 281, 262, 351, 283, 287, + 289, 290, 176, 176, 176, 359, 360, 361, 362, 291, + 292, 293, 294, 298, 302, 303, 367, 368, 369, 370, + 193, 194, 195, 196, 197, 198, 199, 200, 315, 305, + 306, 307, 176, 326, 308, 316, 317, 318, 275, 319, + 328, 325, 331, 332, 275, 355, 375, 323, 341, 337, + 343, 340, 348, 346, 347, 377, 349, 275, 275, 350, + 378, 354, 381, 401, 379, 176, 176, 176, 176, 385, + 387, 388, 394, 395, 392, 399, 176, 176, 176, 176, + 398, 406, 431, 400, 432, 257, 419, 420, 402, 403, + 404, 405, 275, 408, 275, 413, 416, 418, 275, 425, + 426, 423, 427, 428, 429, 430, 275, 275, 275, 433, + 435, 201, 202, 335, 393, 436, 437, 441, 434, 439, + 277, 278, 440, 176, 442, 443, 444, 201, 202, 445, + 446, 447, 279, 451, 452, 275, 275, 285, 458, 460, + 459, 453, 463, 275, 464, 465, 467, 295, 296, 297, + 468, 275, 472, 473, 145, 146, 147, 148, 424, 176, + 176, 84, 176, 176, 176, 176, 52, 53, 46, 373, + 184, 372, 96, 250, 91, 22, 275, 48, 37, 384, + 421, 0, 397, 15, 0, 16, 0, 235, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 236, + 237, 176, 0, 0, 0, 275, 0, 0, 0, 333, + 0, 0, 0, 0, 0, 339, 275, 0, 0, 0, + 0, 275, 0, 0, 0, 275, 275, 0, 352, 353, + 0, 0, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 0, 0, 0, 0, + 0, 238, 0, 239, 240, 138, 139, 0, 241, 0, + 0, 0, 0, 380, 0, 382, 0, 242, 0, 386, + 243, 0, 244, 0, 0, 245, 0, 389, 390, 391, + 0, 0, 0, 0, 52, 53, 0, 100, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 15, 0, 16, 0, 0, 409, 410, 0, 0, + 0, 0, 0, 0, 417, 0, 0, 0, 0, 0, + 0, 0, 422, 0, 68, 52, 53, 0, 100, 162, + 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, + 66, 67, 15, 0, 16, 0, 0, 438, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, - 0, 70, 0, 0, 71, 0, 72, 312, 0, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 0, 0, 263, 264, 0, 238, 265, - 239, 240, 138, 139, 0, 241, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 271, 266, 267, - 268, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 269, 270, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 68, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 454, 0, 0, 0, + 0, 0, 69, 0, 0, 70, 0, 462, 71, 0, + 72, 101, 466, 0, 0, 0, 469, 470, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 263, 264, 52, 53, 265, 0, + 0, 0, 0, 69, 0, 0, 70, 0, 0, 71, + 0, 72, 313, 15, 0, 16, 0, 266, 267, 268, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 269, + 270, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 271, + 0, 0, 0, 0, 263, 264, 0, 0, 265, 0, + 0, 0, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 0, 266, 267, 268, + 0, 238, 0, 239, 240, 138, 139, 0, 241, 269, + 270, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 272, 0, 0, 0, 0, 0, 0, 0, 0, 271, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 0, 0, 0, 0, 0, 238, 0, 239, 240, 138, 139, 0, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 53, - 271, 100, 55, 56, 57, 58, 59, 60, 61, 62, + 272, 100, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 15, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 183, 0, 0, 0, 0, 0, 52, 53, 68, 100, @@ -1510,133 +1518,125 @@ static const short yytable[] = { 76, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 0, 0, 0, 0, 52, 53, 68, 100, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 66, - 67, 15, 0, 16, 0, 69, 0, 0, 70, 0, - 0, 71, 0, 72, 0, 0, 0, 0, 0, 0, + 67, 15, 0, 16, 0, 0, 69, 0, 0, 70, + 0, 0, 71, 0, 72, 0, 0, 0, 0, 0, 0, 0, 52, 53, 68, 100, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 15, - 0, 16, 0, 69, 0, 0, 70, 0, 0, 71, - 0, 72, 0, 0, 326, 0, 0, 0, 0, 0, + 0, 16, 0, 0, 69, 0, 0, 70, 0, 0, + 71, 0, 72, 0, 327, 0, 0, 0, 0, 0, 52, 53, 68, 100, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 15, 0, 16, - 0, 69, 0, 0, 70, 0, 308, 71, 0, 72, - 0, 0, 368, 0, 0, 0, 0, 0, 52, 53, + 0, 0, 69, 0, 0, 70, 0, 309, 71, 0, + 72, 0, 371, 0, 0, 0, 0, 0, 52, 53, 68, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 15, 0, 16, 0, 69, - 0, 0, 70, 0, 0, 71, 0, 72, 0, 0, + 63, 64, 65, 66, 67, 15, 0, 16, 0, 0, + 69, 0, 0, 70, 0, 0, 71, 0, 72, 0, 0, 0, 0, 0, 0, 0, 52, 53, 68, 100, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 15, 0, 16, 0, 69, 0, 0, - 70, 0, 0, 71, 0, 72, 0, 0, 0, 0, + 65, 66, 67, 15, 0, 16, 0, 0, 69, 0, + 0, 70, 0, 0, 71, 0, 72, 0, 0, 0, 0, 0, 0, 0, 52, 53, 68, 100, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 66, - 67, 15, 0, 16, 0, 69, 0, 0, 70, 0, - 0, 71, 0, 72, 0, 0, 0, 0, 0, 0, + 67, 15, 0, 16, 0, 0, 69, 0, 0, 70, + 0, 0, 71, 0, 72, 0, 0, 0, 0, 0, 0, 0, 52, 53, 68, 189, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 15, - 0, 16, 0, 69, 0, 0, 70, 0, 0, 71, - 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 16, 0, 0, 69, 0, 0, 70, 0, 0, + 71, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 69, 0, 0, 70, 0, 0, 71, 0, 72, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 108, 0, 0, 0, 0, 0, 0, 0, 0, 69, - 109, 110, 70, 0, 0, 71, 0, 72, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 0, 0, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144 + 0, 0, 69, 0, 0, 70, 0, 0, 71, 0, + 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, + 69, 109, 110, 70, 0, 0, 71, 0, 72, 0, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 0, 0, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144 }; static const short yycheck[] = { 29, - 96, 113, 113, 44, 252, 108, 206, 29, 111, 15, - 114, 2, 428, 58, 44, 34, 72, 10, 11, 12, - 13, 14, 15, 16, 17, 23, 52, 53, 444, 15, - 133, 9, 30, 136, 137, 54, 0, 140, 141, 142, - 143, 144, 33, 21, 109, 148, 150, 112, 54, 105, - 10, 11, 12, 13, 14, 15, 16, 17, 243, 244, - 23, 25, 101, 101, 101, 95, 96, 31, 54, 20, - 107, 107, 111, 111, 101, 103, 112, 41, 42, 43, - 44, 101, 109, 74, 112, 22, 271, 24, 110, 109, - 41, 42, 43, 44, 101, 59, 47, 100, 443, 58, - 107, 131, 132, 100, 134, 135, 451, 355, 60, 61, - 62, 63, 24, 111, 107, 145, 146, 147, 49, 50, - 51, 224, 178, 179, 180, 100, 5, 6, 4, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 100, 24, 100, 107, 32, 33, - 27, 28, 182, 10, 11, 12, 13, 14, 15, 16, - 17, 87, 88, 204, 3, 4, 45, 3, 4, 3, - 4, 3, 4, 105, 204, 103, 376, 4, 378, 3, - 4, 222, 4, 4, 103, 288, 24, 290, 291, 4, - 106, 24, 222, 223, 297, 106, 103, 56, 4, 4, - 4, 4, 4, 101, 104, 261, 7, 7, 304, 305, - 306, 307, 242, 243, 244, 7, 101, 105, 101, 315, - 316, 317, 318, 102, 36, 24, 105, 101, 176, 108, - 101, 110, 111, 101, 101, 101, 101, 101, 186, 101, - 101, 271, 24, 191, 192, 103, 34, 103, 103, 103, - 103, 103, 103, 103, 101, 203, 104, 287, 101, 289, - 208, 101, 292, 293, 360, 21, 257, 21, 105, 4, - 218, 219, 220, 101, 304, 305, 306, 307, 101, 24, - 383, 384, 101, 101, 101, 315, 316, 317, 318, 103, - 101, 101, 101, 4, 324, 103, 36, 54, 4, 395, - 396, 54, 398, 399, 400, 401, 101, 101, 411, 105, - 101, 101, 101, 21, 101, 101, 428, 428, 101, 104, - 101, 351, 101, 107, 104, 101, 104, 104, 191, 192, - 360, 279, 444, 444, 104, 104, 104, 285, 104, 435, - 203, 104, 36, 107, 21, 208, 104, 21, 68, 101, - 298, 299, 101, 21, 21, 218, 219, 220, 0, 0, - 84, 84, 84, 84, 394, 395, 396, 33, 398, 399, - 400, 401, 20, 105, 46, 325, 23, 324, 176, 43, - 20, 2, 22, 331, 24, 333, 14, 388, 334, 337, - 356, 31, 32, 33, -1, -1, -1, 345, 346, 347, - -1, 41, 42, 43, 44, 435, -1, 47, 48, -1, - -1, -1, -1, -1, -1, 55, 279, -1, -1, 59, - -1, -1, 285, -1, -1, 373, 374, -1, -1, -1, - -1, -1, -1, 381, -1, 298, 299, -1, -1, -1, - -1, 389, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 413, -1, -1, 331, -1, - 333, -1, -1, -1, 337, -1, -1, -1, -1, -1, - -1, -1, 345, 346, 347, -1, -1, -1, -1, -1, - -1, -1, -1, 441, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 452, -1, -1, -1, -1, 457, - 373, 374, -1, 461, 462, -1, -1, -1, 381, -1, - -1, -1, -1, -1, -1, -1, 389, -1, -1, -1, - -1, -1, -1, -1, -1, 5, 6, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 413, -1, 22, -1, 24, -1, 26, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 38, 39, - -1, -1, -1, -1, -1, -1, -1, -1, 441, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 452, - -1, -1, -1, -1, 457, -1, -1, -1, 461, 462, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, -1, -1, -1, -1, -1, 89, - -1, 91, 92, 93, 94, -1, 96, -1, -1, -1, - -1, -1, -1, -1, -1, 105, -1, -1, 108, -1, - 110, 5, 6, 113, 8, 9, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, -1, - 24, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 45, 3, 4, 5, 6, 7, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, -1, 24, -1, 26, 27, 28, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 38, 39, -1, + 113, 113, 2, 44, 206, 72, 96, 29, 252, 23, + 58, 114, 243, 244, 44, 34, 30, 108, 434, 15, + 111, 10, 11, 12, 13, 14, 15, 16, 17, 0, + 15, 9, 108, 33, 450, 54, 102, 113, 105, 104, + 20, 272, 133, 21, 110, 136, 137, 150, 113, 140, + 141, 142, 143, 144, 25, 23, 110, 148, 54, 113, + 31, 41, 42, 43, 44, 95, 96, 47, 101, 54, + 41, 42, 43, 44, 74, 10, 11, 12, 13, 14, + 15, 16, 17, 58, 102, 102, 24, 102, 59, 111, + 102, 102, 449, 108, 112, 112, 108, 101, 112, 110, + 457, 131, 132, 4, 134, 135, 61, 62, 63, 64, + 101, 178, 179, 180, 358, 145, 146, 147, 20, 108, + 22, 104, 24, 49, 50, 51, 22, 101, 24, 31, + 32, 33, 101, 224, 32, 33, 52, 53, 4, 41, + 42, 43, 44, 106, 176, 47, 48, 88, 89, 27, + 28, 4, 182, 55, 186, 3, 4, 59, 4, 191, + 192, 3, 4, 204, 3, 4, 3, 4, 3, 4, + 104, 203, 24, 108, 204, 4, 208, 24, 380, 107, + 382, 222, 107, 104, 56, 4, 218, 219, 220, 4, + 4, 4, 222, 223, 261, 7, 7, 4, 289, 7, + 291, 292, 102, 106, 36, 102, 105, 298, 102, 102, + 102, 102, 242, 243, 244, 305, 306, 307, 308, 102, + 102, 102, 102, 102, 24, 102, 316, 317, 318, 319, + 10, 11, 12, 13, 14, 15, 16, 17, 24, 104, + 104, 104, 272, 105, 104, 104, 104, 104, 280, 104, + 60, 102, 102, 102, 286, 34, 24, 257, 288, 102, + 290, 106, 102, 293, 294, 21, 102, 299, 300, 102, + 21, 102, 4, 363, 104, 305, 306, 307, 308, 102, + 102, 102, 24, 4, 104, 102, 316, 317, 318, 319, + 36, 54, 4, 102, 24, 325, 387, 388, 102, 102, + 102, 102, 334, 102, 336, 102, 102, 102, 340, 399, + 400, 105, 402, 403, 404, 405, 348, 349, 350, 102, + 105, 434, 434, 54, 354, 416, 108, 102, 106, 105, + 191, 192, 105, 363, 105, 105, 105, 450, 450, 105, + 105, 21, 203, 36, 108, 377, 378, 208, 21, 102, + 105, 441, 21, 385, 102, 69, 21, 218, 219, 220, + 21, 393, 0, 0, 84, 84, 84, 84, 398, 399, + 400, 33, 402, 403, 404, 405, 5, 6, 20, 326, + 105, 325, 46, 176, 43, 2, 418, 23, 14, 337, + 392, -1, 359, 22, -1, 24, -1, 26, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 38, + 39, 441, -1, -1, -1, 447, -1, -1, -1, 280, + -1, -1, -1, -1, -1, 286, 458, -1, -1, -1, + -1, 463, -1, -1, -1, 467, 468, -1, 299, 300, + -1, -1, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, -1, -1, -1, -1, + -1, 90, -1, 92, 93, 94, 95, -1, 97, -1, + -1, -1, -1, 334, -1, 336, -1, 106, -1, 340, + 109, -1, 111, -1, -1, 114, -1, 348, 349, 350, + -1, -1, -1, -1, 5, 6, -1, 8, 9, 10, + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, -1, 24, -1, -1, 377, 378, -1, -1, + -1, -1, -1, -1, 385, -1, -1, -1, -1, -1, + -1, -1, 393, -1, 45, 5, 6, -1, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, -1, 24, -1, -1, 418, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 102, -1, - -1, 105, -1, -1, 108, -1, 110, 111, -1, 70, - 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, -1, -1, 3, 4, -1, 89, 7, - 91, 92, 93, 94, -1, 96, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 108, 26, 27, - 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 38, 39, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 45, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 447, -1, -1, -1, + -1, -1, 103, -1, -1, 106, -1, 458, 109, -1, + 111, 112, 463, -1, -1, -1, 467, 468, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 3, 4, 5, 6, 7, -1, + -1, -1, -1, 103, -1, -1, 106, -1, -1, 109, + -1, 111, 112, 22, -1, 24, -1, 26, 27, 28, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 38, + 39, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 58, + -1, -1, -1, -1, 3, 4, -1, -1, 7, -1, + -1, -1, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, -1, 26, 27, 28, + -1, 90, -1, 92, 93, 94, 95, -1, 97, 38, + 39, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 109, -1, -1, -1, -1, -1, -1, -1, -1, 58, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, -1, -1, -1, -1, - -1, 89, -1, 91, 92, 93, 94, -1, 96, -1, + -1, -1, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, -1, -1, -1, -1, + -1, 90, -1, 92, 93, 94, 95, -1, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, 6, - 108, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 109, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, -1, 24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, -1, -1, 5, 6, 45, 8, @@ -1645,42 +1645,42 @@ static const short yycheck[] = { 29, -1, -1, -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, -1, -1, 5, 6, 45, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, -1, 24, -1, 102, -1, -1, 105, -1, - -1, 108, -1, 110, -1, -1, -1, -1, -1, -1, + 21, 22, -1, 24, -1, -1, 103, -1, -1, 106, + -1, -1, 109, -1, 111, -1, -1, -1, -1, -1, -1, -1, 5, 6, 45, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - -1, 24, -1, 102, -1, -1, 105, -1, -1, 108, - -1, 110, -1, -1, 37, -1, -1, -1, -1, -1, + -1, 24, -1, -1, 103, -1, -1, 106, -1, -1, + 109, -1, 111, -1, 37, -1, -1, -1, -1, -1, 5, 6, 45, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, -1, 24, - -1, 102, -1, -1, 105, -1, 107, 108, -1, 110, - -1, -1, 37, -1, -1, -1, -1, -1, 5, 6, + -1, -1, 103, -1, -1, 106, -1, 108, 109, -1, + 111, -1, 37, -1, -1, -1, -1, -1, 5, 6, 45, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, -1, 24, -1, 102, - -1, -1, 105, -1, -1, 108, -1, 110, -1, -1, + 17, 18, 19, 20, 21, 22, -1, 24, -1, -1, + 103, -1, -1, 106, -1, -1, 109, -1, 111, -1, -1, -1, -1, -1, -1, -1, 5, 6, 45, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, -1, 24, -1, 102, -1, -1, - 105, -1, -1, 108, -1, 110, -1, -1, -1, -1, + 19, 20, 21, 22, -1, 24, -1, -1, 103, -1, + -1, 106, -1, -1, 109, -1, 111, -1, -1, -1, -1, -1, -1, -1, 5, 6, 45, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, -1, 24, -1, 102, -1, -1, 105, -1, - -1, 108, -1, 110, -1, -1, -1, -1, -1, -1, + 21, 22, -1, 24, -1, -1, 103, -1, -1, 106, + -1, -1, 109, -1, 111, -1, -1, -1, -1, -1, -1, -1, 5, 6, 45, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - -1, 24, -1, 102, -1, -1, 105, -1, -1, 108, - -1, 110, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 24, -1, -1, 103, -1, -1, 106, -1, -1, + 109, -1, 111, -1, -1, -1, -1, -1, -1, -1, -1, -1, 45, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 102, -1, -1, 105, -1, -1, 108, -1, 110, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 46, -1, -1, -1, -1, -1, -1, -1, -1, 102, - 56, 57, 105, -1, -1, 108, -1, 110, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, -1, -1, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99 + -1, -1, 103, -1, -1, 106, -1, -1, 109, -1, + 111, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 35, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 46, -1, -1, -1, -1, -1, -1, -1, -1, + 103, 56, 57, 106, -1, -1, 109, -1, 111, -1, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, -1, -1, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/share/bison.simple" @@ -2226,7 +2226,7 @@ yyreduce: switch (yyn) { case 2: -#line 998 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1011 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].UIntVal > (uint32_t)INT32_MAX) // Outside of my range! ThrowException("Value too large for type!"); @@ -2234,7 +2234,7 @@ case 2: ; break;} case 4: -#line 1006 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1019 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].UInt64Val > (uint64_t)INT64_MAX) // Outside of my range! ThrowException("Value too large for type!"); @@ -2242,55 +2242,55 @@ case 4: ; break;} case 33: -#line 1029 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1042 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = yyvsp[-1].StrVal; ; break;} case 34: -#line 1032 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1045 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = 0; ; break;} case 35: -#line 1036 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1049 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::InternalLinkage; ; break;} case 36: -#line 1037 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1050 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::LinkOnceLinkage; ; break;} case 37: -#line 1038 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1051 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::WeakLinkage; ; break;} case 38: -#line 1039 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1052 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::AppendingLinkage; ; break;} case 39: -#line 1040 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1053 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::ExternalLinkage; ; break;} case 40: -#line 1042 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1055 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::C; ; break;} case 41: -#line 1043 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1056 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::C; ; break;} case 42: -#line 1044 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1057 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::Fast; ; break;} case 43: -#line 1045 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1058 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::Cold; ; break;} case 44: -#line 1046 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1059 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((unsigned)yyvsp[0].UInt64Val != yyvsp[0].UInt64Val) ThrowException("Calling conv too large!"); @@ -2298,11 +2298,11 @@ case 44: ; break;} case 45: -#line 1054 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1067 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = 0; ; break;} case 46: -#line 1055 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1068 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = yyvsp[0].UInt64Val; if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal)) @@ -2310,11 +2310,11 @@ case 46: ; break;} case 47: -#line 1060 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1073 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = 0; ; break;} case 48: -#line 1061 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1074 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = yyvsp[0].UInt64Val; if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal)) @@ -2322,7 +2322,7 @@ case 48: ; break;} case 49: -#line 1068 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1081 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { for (unsigned i = 0, e = strlen(yyvsp[0].StrVal); i != e; ++i) if (yyvsp[0].StrVal[i] == '"' || yyvsp[0].StrVal[i] == '\\') @@ -2331,30 +2331,30 @@ case 49: ; break;} case 50: -#line 1075 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1088 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = 0; ; break;} case 51: -#line 1076 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1089 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = yyvsp[0].StrVal; ; break;} case 52: -#line 1081 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1094 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" {; break;} case 53: -#line 1082 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1095 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" {; break;} case 54: -#line 1083 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1096 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV->setSection(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} case 55: -#line 1087 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1100 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].UInt64Val != 0 && !isPowerOf2_32(yyvsp[0].UInt64Val)) ThrowException("Alignment must be a power of two!"); @@ -2362,15 +2362,15 @@ case 55: ; break;} case 57: -#line 1100 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1113 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ; break;} case 59: -#line 1101 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1114 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ; break;} case 60: -#line 1103 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1116 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) ThrowException("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription()); @@ -2378,25 +2378,25 @@ case 60: ; break;} case 74: -#line 1114 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1127 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(OpaqueType::get()); ; break;} case 75: -#line 1117 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1130 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ; break;} case 76: -#line 1120 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1133 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Named types are also simple types... yyval.TypeVal = new PATypeHolder(getTypeVal(yyvsp[0].ValIDVal)); ; break;} case 77: -#line 1126 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1139 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Type UpReference if (yyvsp[0].UInt64Val > (uint64_t)~0U) ThrowException("Value out of range!"); OpaqueType *OT = OpaqueType::get(); // Use temporary placeholder @@ -2406,7 +2406,7 @@ case 77: ; break;} case 78: -#line 1133 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1146 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Function derived type? std::vector<const Type*> Params; for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-1].TypeList->begin(), @@ -2421,14 +2421,14 @@ case 78: ; break;} case 79: -#line 1145 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1158 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Sized array type? yyval.TypeVal = new PATypeHolder(HandleUpRefs(ArrayType::get(*yyvsp[-1].TypeVal, (unsigned)yyvsp[-3].UInt64Val))); delete yyvsp[-1].TypeVal; ; break;} case 80: -#line 1149 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1162 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Packed array type? const llvm::Type* ElemTy = yyvsp[-1].TypeVal->get(); if ((unsigned)yyvsp[-3].UInt64Val != yyvsp[-3].UInt64Val) @@ -2442,7 +2442,7 @@ case 80: ; break;} case 81: -#line 1160 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1173 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Structure type? std::vector<const Type*> Elements; for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-1].TypeList->begin(), @@ -2454,51 +2454,51 @@ case 81: ; break;} case 82: -#line 1169 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1182 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Empty structure type? yyval.TypeVal = new PATypeHolder(StructType::get(std::vector<const Type*>())); ; break;} case 83: -#line 1172 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1185 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Pointer type? yyval.TypeVal = new PATypeHolder(HandleUpRefs(PointerType::get(*yyvsp[-1].TypeVal))); delete yyvsp[-1].TypeVal; ; break;} case 84: -#line 1180 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1193 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeList = new std::list<PATypeHolder>(); yyval.TypeList->push_back(*yyvsp[0].TypeVal); delete yyvsp[0].TypeVal; ; break;} case 85: -#line 1184 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1197 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeList=yyvsp[-2].TypeList)->push_back(*yyvsp[0].TypeVal); delete yyvsp[0].TypeVal; ; break;} case 87: -#line 1190 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1203 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeList=yyvsp[-2].TypeList)->push_back(Type::VoidTy); ; break;} case 88: -#line 1193 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1206 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeList = new std::list<PATypeHolder>())->push_back(Type::VoidTy); ; break;} case 89: -#line 1196 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1209 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeList = new std::list<PATypeHolder>(); ; break;} case 90: -#line 1206 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1219 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-3].TypeVal->get()); if (ATy == 0) @@ -2526,7 +2526,7 @@ case 90: ; break;} case 91: -#line 1231 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1244 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-2].TypeVal->get()); if (ATy == 0) @@ -2542,7 +2542,7 @@ case 91: ; break;} case 92: -#line 1244 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1257 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-2].TypeVal->get()); if (ATy == 0) @@ -2574,7 +2574,7 @@ case 92: ; break;} case 93: -#line 1273 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1286 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr const PackedType *PTy = dyn_cast<PackedType>(yyvsp[-3].TypeVal->get()); if (PTy == 0) @@ -2602,7 +2602,7 @@ case 93: ; break;} case 94: -#line 1298 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1311 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast<StructType>(yyvsp[-3].TypeVal->get()); if (STy == 0) @@ -2625,7 +2625,7 @@ case 94: ; break;} case 95: -#line 1318 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1331 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast<StructType>(yyvsp[-2].TypeVal->get()); if (STy == 0) @@ -2640,7 +2640,7 @@ case 95: ; break;} case 96: -#line 1330 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1343 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PTy = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get()); if (PTy == 0) @@ -2652,14 +2652,14 @@ case 96: ; break;} case 97: -#line 1339 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1352 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ConstVal = UndefValue::get(yyvsp[-1].TypeVal->get()); delete yyvsp[-1].TypeVal; ; break;} case 98: -#line 1343 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1356 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *Ty = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get()); if (Ty == 0) @@ -2721,7 +2721,7 @@ case 98: ; break;} case 99: -#line 1402 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1415 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-1].TypeVal->get() != yyvsp[0].ConstVal->getType()) ThrowException("Mismatched types for constant expression!"); @@ -2730,7 +2730,7 @@ case 99: ; break;} case 100: -#line 1408 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1421 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const Type *Ty = yyvsp[-1].TypeVal->get(); if (isa<FunctionType>(Ty) || Ty == Type::LabelTy || isa<OpaqueType>(Ty)) @@ -2740,7 +2740,7 @@ case 100: ; break;} case 101: -#line 1416 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1429 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // integral constants if (!ConstantSInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].SInt64Val)) ThrowException("Constant value doesn't fit in type!"); @@ -2748,7 +2748,7 @@ case 101: ; break;} case 102: -#line 1421 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1434 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // integral constants if (!ConstantUInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].UInt64Val)) ThrowException("Constant value doesn't fit in type!"); @@ -2756,19 +2756,19 @@ case 102: ; break;} case 103: -#line 1426 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1439 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants yyval.ConstVal = ConstantBool::True; ; break;} case 104: -#line 1429 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1442 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants yyval.ConstVal = ConstantBool::False; ; break;} case 105: -#line 1432 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1445 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Float & Double constants if (!ConstantFP::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].FPVal)) ThrowException("Floating point constant invalid for type!!"); @@ -2776,7 +2776,7 @@ case 105: ; break;} case 106: -#line 1439 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1452 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!yyvsp[-3].ConstVal->getType()->isFirstClassType()) ThrowException("cast constant expression from a non-primitive type: '" + @@ -2789,7 +2789,7 @@ case 106: ; break;} case 107: -#line 1449 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1462 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[-2].ConstVal->getType())) ThrowException("GetElementPtr requires a pointer operand!"); @@ -2823,7 +2823,7 @@ case 107: ; break;} case 108: -#line 1480 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1493 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-5].ConstVal->getType() != Type::BoolTy) ThrowException("Select condition must be of boolean type!"); @@ -2833,7 +2833,7 @@ case 108: ; break;} case 109: -#line 1487 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1500 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) ThrowException("Binary operator types must match!"); @@ -2857,7 +2857,7 @@ case 109: ; break;} case 110: -#line 1508 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1521 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) ThrowException("Logical operator types must match!"); @@ -2870,7 +2870,7 @@ case 110: ; break;} case 111: -#line 1518 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1531 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) ThrowException("setcc operand types must match!"); @@ -2878,7 +2878,7 @@ case 111: ; break;} case 112: -#line 1523 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1536 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-1].ConstVal->getType() != Type::UByteTy) ThrowException("Shift count for shift constant must be unsigned byte!"); @@ -2888,7 +2888,7 @@ case 112: ; break;} case 113: -#line 1530 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1543 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PackedType>(yyvsp[-3].ConstVal->getType())) ThrowException("First operand of extractelement must be " @@ -2899,60 +2899,60 @@ case 113: ; break;} case 114: -#line 1540 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1553 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ConstVector = yyvsp[-2].ConstVector)->push_back(yyvsp[0].ConstVal); ; break;} case 115: -#line 1543 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1556 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ConstVector = new std::vector<Constant*>(); yyval.ConstVector->push_back(yyvsp[0].ConstVal); ; break;} case 116: -#line 1550 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1563 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} case 117: -#line 1550 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1563 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} case 118: -#line 1560 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1573 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = ParserResult = yyvsp[0].ModuleVal; CurModule.ModuleDone(); ; break;} case 119: -#line 1567 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1580 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-1].ModuleVal; CurFun.FunctionDone(); ; break;} case 120: -#line 1571 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1584 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-1].ModuleVal; ; break;} case 121: -#line 1574 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1587 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-3].ModuleVal; ; break;} case 122: -#line 1577 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1590 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = yyvsp[-1].ModuleVal; ; break;} case 123: -#line 1580 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1593 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = CurModule.CurrentModule; // Emit an error if there are any unresolved types left. @@ -2966,7 +2966,7 @@ case 123: ; break;} case 124: -#line 1593 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1606 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Eagerly resolve types. This is not an optimization, this is a // requirement that is due to the fact that we could have this: @@ -2989,30 +2989,30 @@ case 124: ; break;} case 125: -#line 1613 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1626 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Function prototypes can be in const pool ; break;} case 126: -#line 1615 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1628 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Asm blocks can be in the const pool ; break;} case 127: -#line 1617 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1630 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].ConstVal == 0) ThrowException("Global value initializer is not a constant!"); CurGV = ParseGlobalVariable(yyvsp[-3].StrVal, yyvsp[-2].Linkage, yyvsp[-1].BoolVal, yyvsp[0].ConstVal->getType(), yyvsp[0].ConstVal); ; break;} case 128: -#line 1620 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1633 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; ; break;} case 129: -#line 1623 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1636 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = ParseGlobalVariable(yyvsp[-3].StrVal, GlobalValue::ExternalLinkage, yyvsp[-1].BoolVal, *yyvsp[0].TypeVal, 0); @@ -3020,28 +3020,28 @@ case 129: ; break;} case 130: -#line 1627 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1640 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; ; break;} case 131: -#line 1630 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1643 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} case 132: -#line 1632 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1645 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} case 133: -#line 1634 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1647 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} case 134: -#line 1638 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1651 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm(); char *EndStr = UnEscapeLexed(yyvsp[0].StrVal, true); @@ -3055,21 +3055,21 @@ case 134: ; break;} case 135: -#line 1650 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1663 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Endianness = Module::BigEndian; ; break;} case 136: -#line 1651 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1664 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Endianness = Module::LittleEndian; ; break;} case 137: -#line 1653 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1666 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setEndianness(yyvsp[0].Endianness); ; break;} case 138: -#line 1656 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1669 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].UInt64Val == 32) CurModule.CurrentModule->setPointerSize(Module::Pointer32); @@ -3080,37 +3080,37 @@ case 138: ; break;} case 139: -#line 1664 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1677 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setTargetTriple(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} case 141: -#line 1671 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1684 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} case 142: -#line 1675 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1688 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal); free(yyvsp[0].StrVal); ; break;} case 143: -#line 1679 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1692 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ; break;} case 147: -#line 1688 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1701 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = 0; ; break;} case 148: -#line 1690 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1703 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (*yyvsp[-1].TypeVal == Type::VoidTy) ThrowException("void typed arguments are invalid!"); @@ -3118,7 +3118,7 @@ case 148: ; break;} case 149: -#line 1696 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1709 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[-2].ArgList; yyvsp[-2].ArgList->push_back(*yyvsp[0].ArgVal); @@ -3126,7 +3126,7 @@ case 149: ; break;} case 150: -#line 1701 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1714 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = new std::vector<std::pair<PATypeHolder*,char*> >(); yyval.ArgList->push_back(*yyvsp[0].ArgVal); @@ -3134,13 +3134,13 @@ case 150: ; break;} case 151: -#line 1707 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1720 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[0].ArgList; ; break;} case 152: -#line 1710 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1723 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[-2].ArgList; yyval.ArgList->push_back(std::pair<PATypeHolder*, @@ -3148,20 +3148,20 @@ case 152: ; break;} case 153: -#line 1715 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1728 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = new std::vector<std::pair<PATypeHolder*,char*> >(); yyval.ArgList->push_back(std::make_pair(new PATypeHolder(Type::VoidTy), (char*)0)); ; break;} case 154: -#line 1719 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1732 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = 0; ; break;} case 155: -#line 1724 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1737 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { UnEscapeLexed(yyvsp[-5].StrVal); std::string FunctionName(yyvsp[-5].StrVal); @@ -3248,7 +3248,7 @@ case 155: ; break;} case 158: -#line 1811 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1824 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = CurFun.CurrentFunction; @@ -3258,72 +3258,84 @@ case 158: ; break;} case 161: -#line 1821 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1834 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = yyvsp[-1].FunctionVal; ; break;} case 162: -#line 1825 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1838 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.isDeclare = true; ; break;} case 163: -#line 1825 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1838 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = CurFun.CurrentFunction; CurFun.FunctionDone(); ; break;} case 164: -#line 1834 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1847 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +{ + yyval.BoolVal = false; + ; + break;} +case 165: +#line 1850 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +{ + yyval.BoolVal = true; + ; + break;} +case 166: +#line 1854 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // A reference to a direct constant yyval.ValIDVal = ValID::create(yyvsp[0].SInt64Val); ; break;} -case 165: -#line 1837 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 167: +#line 1857 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(yyvsp[0].UInt64Val); ; break;} -case 166: -#line 1840 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 168: +#line 1860 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Perhaps it's an FP constant? yyval.ValIDVal = ValID::create(yyvsp[0].FPVal); ; break;} -case 167: -#line 1843 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 169: +#line 1863 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(ConstantBool::True); ; break;} -case 168: -#line 1846 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 170: +#line 1866 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(ConstantBool::False); ; break;} -case 169: -#line 1849 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 171: +#line 1869 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createNull(); ; break;} -case 170: -#line 1852 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 172: +#line 1872 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createUndef(); ; break;} -case 171: -#line 1855 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 173: +#line 1875 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // A vector zero constant. yyval.ValIDVal = ValID::createZeroInit(); ; break;} -case 172: -#line 1858 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 174: +#line 1878 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized packed vector const Type *ETy = (*yyvsp[-1].ConstVector)[0]->getType(); int NumElements = yyvsp[-1].ConstVector->size(); @@ -3349,44 +3361,56 @@ case 172: delete PTy; delete yyvsp[-1].ConstVector; ; break;} -case 173: -#line 1882 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 175: +#line 1902 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(yyvsp[0].ConstVal); ; break;} -case 174: -#line 1889 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 176: +#line 1905 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +{ + char *End = UnEscapeLexed(yyvsp[-2].StrVal, true); + std::string AsmStr = std::string(yyvsp[-2].StrVal, End); + End = UnEscapeLexed(yyvsp[0].StrVal, true); + std::string Constraints = std::string(yyvsp[0].StrVal, End); + yyval.ValIDVal = ValID::createInlineAsm(AsmStr, Constraints, yyvsp[-3].BoolVal); + free(yyvsp[-2].StrVal); + free(yyvsp[0].StrVal); + ; + break;} +case 177: +#line 1918 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it an integer reference...? yyval.ValIDVal = ValID::create(yyvsp[0].SIntVal); ; break;} -case 175: -#line 1892 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 178: +#line 1921 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it a named reference...? yyval.ValIDVal = ValID::create(yyvsp[0].StrVal); ; break;} -case 178: -#line 1903 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 181: +#line 1932 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueVal = getVal(*yyvsp[-1].TypeVal, yyvsp[0].ValIDVal); delete yyvsp[-1].TypeVal; ; break;} -case 179: -#line 1907 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 182: +#line 1936 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = yyvsp[-1].FunctionVal; ; break;} -case 180: -#line 1910 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 183: +#line 1939 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Do not allow functions with 0 basic blocks yyval.FunctionVal = yyvsp[-1].FunctionVal; ; break;} -case 181: -#line 1918 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 184: +#line 1947 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { setValueName(yyvsp[0].TermInstVal, yyvsp[-1].StrVal); InsertValue(yyvsp[0].TermInstVal); @@ -3396,15 +3420,15 @@ case 181: yyval.BasicBlockVal = yyvsp[-2].BasicBlockVal; ; break;} -case 182: -#line 1927 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 185: +#line 1956 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyvsp[-1].BasicBlockVal->getInstList().push_back(yyvsp[0].InstVal); yyval.BasicBlockVal = yyvsp[-1].BasicBlockVal; ; break;} -case 183: -#line 1931 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 186: +#line 1960 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BasicBlockVal = CurBB = getBBVal(ValID::create((int)CurFun.NextBBNum++), true); @@ -3416,8 +3440,8 @@ case 183: BBL.splice(BBL.end(), BBL, yyval.BasicBlockVal); ; break;} -case 184: -#line 1941 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 187: +#line 1970 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BasicBlockVal = CurBB = getBBVal(ValID::create(yyvsp[0].StrVal), true); @@ -3429,32 +3453,32 @@ case 184: BBL.splice(BBL.end(), BBL, yyval.BasicBlockVal); ; break;} -case 185: -#line 1952 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 188: +#line 1981 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with a result... yyval.TermInstVal = new ReturnInst(yyvsp[0].ValueVal); ; break;} -case 186: -#line 1955 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 189: +#line 1984 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with no result... yyval.TermInstVal = new ReturnInst(); ; break;} -case 187: -#line 1958 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 190: +#line 1987 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Unconditional Branch... yyval.TermInstVal = new BranchInst(getBBVal(yyvsp[0].ValIDVal)); ; break;} -case 188: -#line 1961 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 191: +#line 1990 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new BranchInst(getBBVal(yyvsp[-3].ValIDVal), getBBVal(yyvsp[0].ValIDVal), getVal(Type::BoolTy, yyvsp[-6].ValIDVal)); ; break;} -case 189: -#line 1964 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 192: +#line 1993 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { SwitchInst *S = new SwitchInst(getVal(yyvsp[-7].PrimType, yyvsp[-6].ValIDVal), getBBVal(yyvsp[-3].ValIDVal), yyvsp[-1].JumpTable->size()); yyval.TermInstVal = S; @@ -3470,15 +3494,15 @@ case 189: delete yyvsp[-1].JumpTable; ; break;} -case 190: -#line 1978 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 193: +#line 2007 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { SwitchInst *S = new SwitchInst(getVal(yyvsp[-6].PrimType, yyvsp[-5].ValIDVal), getBBVal(yyvsp[-2].ValIDVal), 0); yyval.TermInstVal = S; ; break;} -case 191: -#line 1983 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 194: +#line 2012 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PFTy; const FunctionType *Ty; @@ -3532,20 +3556,20 @@ case 191: delete yyvsp[-7].ValueList; ; break;} -case 192: -#line 2035 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 195: +#line 2064 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new UnwindInst(); ; break;} -case 193: -#line 2038 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 196: +#line 2067 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new UnreachableInst(); ; break;} -case 194: -#line 2044 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 197: +#line 2073 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.JumpTable = yyvsp[-5].JumpTable; Constant *V = cast<Constant>(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal)); @@ -3555,8 +3579,8 @@ case 194: yyval.JumpTable->push_back(std::make_pair(V, getBBVal(yyvsp[0].ValIDVal))); ; break;} -case 195: -#line 2052 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 198: +#line 2081 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.JumpTable = new std::vector<std::pair<Constant*, BasicBlock*> >(); Constant *V = cast<Constant>(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal)); @@ -3567,8 +3591,8 @@ case 195: yyval.JumpTable->push_back(std::make_pair(V, getBBVal(yyvsp[0].ValIDVal))); ; break;} -case 196: -#line 2062 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 199: +#line 2091 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is this definition named?? if so, assign the name... setValueName(yyvsp[0].InstVal, yyvsp[-1].StrVal); @@ -3576,54 +3600,54 @@ case 196: yyval.InstVal = yyvsp[0].InstVal; ; break;} -case 197: -#line 2069 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 200: +#line 2098 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Used for PHI nodes yyval.PHIList = new std::list<std::pair<Value*, BasicBlock*> >(); yyval.PHIList->push_back(std::make_pair(getVal(*yyvsp[-5].TypeVal, yyvsp[-3].ValIDVal), getBBVal(yyvsp[-1].ValIDVal))); delete yyvsp[-5].TypeVal; ; break;} -case 198: -#line 2074 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 201: +#line 2103 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.PHIList = yyvsp[-6].PHIList; yyvsp[-6].PHIList->push_back(std::make_pair(getVal(yyvsp[-6].PHIList->front().first->getType(), yyvsp[-3].ValIDVal), getBBVal(yyvsp[-1].ValIDVal))); ; break;} -case 199: -#line 2081 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 202: +#line 2110 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Used for call statements, and memory insts... yyval.ValueList = new std::vector<Value*>(); yyval.ValueList->push_back(yyvsp[0].ValueVal); ; break;} -case 200: -#line 2085 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 203: +#line 2114 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = yyvsp[-2].ValueList; yyvsp[-2].ValueList->push_back(yyvsp[0].ValueVal); ; break;} -case 202: -#line 2091 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 205: +#line 2120 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = 0; ; break;} -case 203: -#line 2093 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 206: +#line 2122 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} -case 204: -#line 2096 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 207: +#line 2125 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} -case 205: -#line 2102 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 208: +#line 2131 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!(*yyvsp[-3].TypeVal)->isInteger() && !(*yyvsp[-3].TypeVal)->isFloatingPoint() && !isa<PackedType>((*yyvsp[-3].TypeVal).get())) @@ -3637,8 +3661,8 @@ case 205: delete yyvsp[-3].TypeVal; ; break;} -case 206: -#line 2114 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 209: +#line 2143 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!(*yyvsp[-3].TypeVal)->isIntegral()) { if (!isa<PackedType>(yyvsp[-3].TypeVal->get()) || @@ -3651,8 +3675,8 @@ case 206: delete yyvsp[-3].TypeVal; ; break;} -case 207: -#line 2125 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 210: +#line 2154 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if(isa<PackedType>((*yyvsp[-3].TypeVal).get())) { ThrowException( @@ -3664,8 +3688,8 @@ case 207: delete yyvsp[-3].TypeVal; ; break;} -case 208: -#line 2135 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 211: +#line 2164 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { std::cerr << "WARNING: Use of eliminated 'not' instruction:" << " Replacing with 'xor'.\n"; @@ -3679,8 +3703,8 @@ case 208: ThrowException("Could not create a xor instruction!"); ; break;} -case 209: -#line 2147 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 212: +#line 2176 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].ValueVal->getType() != Type::UByteTy) ThrowException("Shift amount must be ubyte!"); @@ -3689,8 +3713,8 @@ case 209: yyval.InstVal = new ShiftInst(yyvsp[-3].OtherOpVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal); ; break;} -case 210: -#line 2154 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 213: +#line 2183 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!yyvsp[0].TypeVal->get()->isFirstClassType()) ThrowException("cast instruction to a non-primitive type: '" + @@ -3699,8 +3723,8 @@ case 210: delete yyvsp[0].TypeVal; ; break;} -case 211: -#line 2161 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 214: +#line 2190 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-4].ValueVal->getType() != Type::BoolTy) ThrowException("select condition must be boolean!"); @@ -3709,16 +3733,16 @@ case 211: yyval.InstVal = new SelectInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal); ; break;} -case 212: -#line 2168 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 215: +#line 2197 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { NewVarArgs = true; yyval.InstVal = new VAArgInst(yyvsp[-2].ValueVal, *yyvsp[0].TypeVal); delete yyvsp[0].TypeVal; ; break;} -case 213: -#line 2173 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 216: +#line 2202 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ObsoleteVarArgs = true; const Type* ArgTy = yyvsp[-2].ValueVal->getType(); @@ -3739,8 +3763,8 @@ case 213: delete yyvsp[0].TypeVal; ; break;} -case 214: -#line 2192 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 217: +#line 2221 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ObsoleteVarArgs = true; const Type* ArgTy = yyvsp[-2].ValueVal->getType(); @@ -3764,8 +3788,8 @@ case 214: delete yyvsp[0].TypeVal; ; break;} -case 215: -#line 2214 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 218: +#line 2243 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PackedType>(yyvsp[-2].ValueVal->getType())) ThrowException("First operand of extractelement must be " @@ -3775,8 +3799,8 @@ case 215: yyval.InstVal = new ExtractElementInst(yyvsp[-2].ValueVal, yyvsp[0].ValueVal); ; break;} -case 216: -#line 2222 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 219: +#line 2251 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PackedType>(yyvsp[-4].ValueVal->getType())) ThrowException("First operand of insertelement must be " @@ -3790,8 +3814,8 @@ case 216: yyval.InstVal = new InsertElementInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal); ; break;} -case 217: -#line 2234 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 220: +#line 2263 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const Type *Ty = yyvsp[0].PHIList->front().first->getType(); if (!Ty->isFirstClassType()) @@ -3807,8 +3831,8 @@ case 217: delete yyvsp[0].PHIList; // Free the list... ; break;} -case 218: -#line 2248 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 221: +#line 2277 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PFTy; const FunctionType *Ty; @@ -3867,66 +3891,66 @@ case 218: delete yyvsp[-1].ValueList; ; break;} -case 219: -#line 2305 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 222: +#line 2334 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = yyvsp[0].InstVal; ; break;} -case 220: -#line 2311 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 223: +#line 2340 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = yyvsp[0].ValueList; ; break;} -case 221: -#line 2313 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 224: +#line 2342 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = new std::vector<Value*>(); ; break;} -case 222: -#line 2317 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 225: +#line 2346 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} -case 223: -#line 2320 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 226: +#line 2349 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} -case 224: -#line 2326 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 227: +#line 2355 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = new MallocInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal); delete yyvsp[-1].TypeVal; ; break;} -case 225: -#line 2330 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 228: +#line 2359 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = new MallocInst(*yyvsp[-4].TypeVal, getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal), yyvsp[0].UIntVal); delete yyvsp[-4].TypeVal; ; break;} -case 226: -#line 2334 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 229: +#line 2363 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = new AllocaInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal); delete yyvsp[-1].TypeVal; ; break;} -case 227: -#line 2338 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 230: +#line 2367 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = new AllocaInst(*yyvsp[-4].TypeVal, getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal), yyvsp[0].UIntVal); delete yyvsp[-4].TypeVal; ; break;} -case 228: -#line 2342 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 231: +#line 2371 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[0].ValueVal->getType())) ThrowException("Trying to free nonpointer type " + @@ -3934,8 +3958,8 @@ case 228: yyval.InstVal = new FreeInst(yyvsp[0].ValueVal); ; break;} -case 229: -#line 2349 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 232: +#line 2378 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[-1].TypeVal->get())) ThrowException("Can't load from nonpointer type: " + @@ -3947,8 +3971,8 @@ case 229: delete yyvsp[-1].TypeVal; ; break;} -case 230: -#line 2359 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 233: +#line 2388 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const PointerType *PT = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get()); if (!PT) @@ -3963,8 +3987,8 @@ case 230: delete yyvsp[-1].TypeVal; ; break;} -case 231: -#line 2372 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +case 234: +#line 2401 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[-2].TypeVal->get())) ThrowException("getelementptr insn requires pointer operand!"); @@ -4209,7 +4233,7 @@ yyerrhandle: } return 1; } -#line 2395 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2424 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y" int yyerror(const char *ErrorMsg) { std::string where diff --git a/lib/AsmParser/llvmAsmParser.h b/lib/AsmParser/llvmAsmParser.h index 8261cd2..9a175fb 100644 --- a/lib/AsmParser/llvmAsmParser.h +++ b/lib/AsmParser/llvmAsmParser.h @@ -94,46 +94,47 @@ typedef union { #define TAIL 311 #define ASM_TOK 312 #define MODULE 313 -#define CC_TOK 314 -#define CCC_TOK 315 -#define FASTCC_TOK 316 -#define COLDCC_TOK 317 -#define RET 318 -#define BR 319 -#define SWITCH 320 -#define INVOKE 321 -#define UNWIND 322 -#define UNREACHABLE 323 -#define ADD 324 -#define SUB 325 -#define MUL 326 -#define DIV 327 -#define REM 328 -#define AND 329 -#define OR 330 -#define XOR 331 -#define SETLE 332 -#define SETGE 333 -#define SETLT 334 -#define SETGT 335 -#define SETEQ 336 -#define SETNE 337 -#define MALLOC 338 -#define ALLOCA 339 -#define FREE 340 -#define LOAD 341 -#define STORE 342 -#define GETELEMENTPTR 343 -#define PHI_TOK 344 -#define CAST 345 -#define SELECT 346 -#define SHL 347 -#define SHR 348 -#define VAARG 349 -#define EXTRACTELEMENT 350 -#define INSERTELEMENT 351 -#define VAARG_old 352 -#define VANEXT_old 353 +#define SIDEEFFECT 314 +#define CC_TOK 315 +#define CCC_TOK 316 +#define FASTCC_TOK 317 +#define COLDCC_TOK 318 +#define RET 319 +#define BR 320 +#define SWITCH 321 +#define INVOKE 322 +#define UNWIND 323 +#define UNREACHABLE 324 +#define ADD 325 +#define SUB 326 +#define MUL 327 +#define DIV 328 +#define REM 329 +#define AND 330 +#define OR 331 +#define XOR 332 +#define SETLE 333 +#define SETGE 334 +#define SETLT 335 +#define SETGT 336 +#define SETEQ 337 +#define SETNE 338 +#define MALLOC 339 +#define ALLOCA 340 +#define FREE 341 +#define LOAD 342 +#define STORE 343 +#define GETELEMENTPTR 344 +#define PHI_TOK 345 +#define CAST 346 +#define SELECT 347 +#define SHL 348 +#define SHR 349 +#define VAARG 350 +#define EXTRACTELEMENT 351 +#define INSERTELEMENT 352 +#define VAARG_old 353 +#define VANEXT_old 354 extern YYSTYPE llvmAsmlval; |