llvm.org GIT mirror llvm / e4977cf
Make structs and arrays first-class types, and add assembly and bitcode support for the extractvalue and insertvalue instructions and constant expressions. Note that this does not yet include CodeGen support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51468 91177308-0d34-0410-b5e6-96231b3b80d8 Dan Gohman 12 years ago
13 changed file(s) with 1684 addition(s) and 1289 deletion(s). Raw diff Collapse all Expand all
124124 CST_CODE_CE_INSERTELT = 15, // CE_INSERTELT: [opval, opval, opval]
125125 CST_CODE_CE_SHUFFLEVEC = 16, // CE_SHUFFLEVEC: [opval, opval, opval]
126126 CST_CODE_CE_CMP = 17, // CE_CMP: [opty, opval, opval, pred]
127 CST_CODE_INLINEASM = 18 // INLINEASM: [sideeffect,asmstr,conststr]
127 CST_CODE_INLINEASM = 18, // INLINEASM: [sideeffect,asmstr,conststr]
128 CST_CODE_CE_EXTRACTVAL = 19, // CE_EXTRACTVAL: [n x operands]
129 CST_CODE_CE_INSERTVAL = 20 // CE_INSERTVAL: [n x operands]
128130 };
129131
130132 /// CastOpcodes - These are values used in the bitcode files to encode which
201203 // this is so information only available in the pointer type (e.g. address
202204 // spaces) is retained.
203205 FUNC_CODE_INST_STORE2 = 24, // STORE: [ptrty,ptr,val, align, vol]
204 FUNC_CODE_INST_GETRESULT = 25 // GETRESULT: [ty, opval, n]
206 FUNC_CODE_INST_GETRESULT = 25, // GETRESULT: [ty, opval, n]
207 FUNC_CODE_INST_EXTRACTVAL = 26, // EXTRACTVAL: [n x operands]
208 FUNC_CODE_INST_INSERTVAL = 27 // INSERTVAL: [n x operands]
205209 };
206210 } // End bitc namespace
207211 } // End llvm namespace
215215 /// is a valid type for a Value.
216216 ///
217217 inline bool isFirstClassType() const {
218 // Coming soon: first-class struct and array types...
219 return isSingleValueType();
218 return isSingleValueType() ||
219 ID == StructTyID || ID == ArrayTyID;
220220 }
221221
222222 /// isSingleValueType - Return true if the type is a valid type for a
604604 INSTKEYWORD("insertelement", OtherOpVal, InsertElement, INSERTELEMENT);
605605 INSTKEYWORD("shufflevector", OtherOpVal, ShuffleVector, SHUFFLEVECTOR);
606606 INSTKEYWORD("getresult", OtherOpVal, GetResult, GETRESULT);
607 INSTKEYWORD("extractvalue", OtherOpVal, ExtractValue, EXTRACTVALUE);
608 INSTKEYWORD("insertvalue", OtherOpVal, InsertValue, INSERTVALUE);
607609 #undef INSTKEYWORD
608610
609611 // Check for [us]0x[0-9A-Fa-f]+ which are Hexadecimal constant generated by
209209 INSERTELEMENT = 391,
210210 SHUFFLEVECTOR = 392,
211211 GETRESULT = 393,
212 SIGNEXT = 394,
213 ZEROEXT = 395,
214 NORETURN = 396,
215 INREG = 397,
216 SRET = 398,
217 NOUNWIND = 399,
218 NOALIAS = 400,
219 BYVAL = 401,
220 NEST = 402,
221 READNONE = 403,
222 READONLY = 404,
223 GC = 405,
224 DEFAULT = 406,
225 HIDDEN = 407,
226 PROTECTED = 408
212 EXTRACTVALUE = 394,
213 INSERTVALUE = 395,
214 SIGNEXT = 396,
215 ZEROEXT = 397,
216 NORETURN = 398,
217 INREG = 399,
218 SRET = 400,
219 NOUNWIND = 401,
220 NOALIAS = 402,
221 BYVAL = 403,
222 NEST = 404,
223 READNONE = 405,
224 READONLY = 406,
225 GC = 407,
226 DEFAULT = 408,
227 HIDDEN = 409,
228 PROTECTED = 410
227229 };
228230 #endif
229231 /* Tokens. */
363365 #define INSERTELEMENT 391
364366 #define SHUFFLEVECTOR 392
365367 #define GETRESULT 393
366 #define SIGNEXT 394
367 #define ZEROEXT 395
368 #define NORETURN 396
369 #define INREG 397
370 #define SRET 398
371 #define NOUNWIND 399
372 #define NOALIAS 400
373 #define BYVAL 401
374 #define NEST 402
375 #define READNONE 403
376 #define READONLY 404
377 #define GC 405
378 #define DEFAULT 406
379 #define HIDDEN 407
380 #define PROTECTED 408
368 #define EXTRACTVALUE 394
369 #define INSERTVALUE 395
370 #define SIGNEXT 396
371 #define ZEROEXT 397
372 #define NORETURN 398
373 #define INREG 399
374 #define SRET 400
375 #define NOUNWIND 401
376 #define NOALIAS 402
377 #define BYVAL 403
378 #define NEST 404
379 #define READNONE 405
380 #define READONLY 406
381 #define GC 407
382 #define DEFAULT 408
383 #define HIDDEN 409
384 #define PROTECTED 410
381385
382386
383387
384388
385389 /* Copy the first part of user declarations. */
386 #line 14 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
390 #line 14 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
387391
388392 #include "ParserInternals.h"
389393 #include "llvm/CallingConv.h"
848852 if (TriggerError) return 0;
849853
850854 if (!Ty->isFirstClassType() && !isa(Ty)) {
851 GenerateError("Invalid use of a composite type");
855 GenerateError("Invalid use of a non-first-class type");
852856 return 0;
853857 }
854858
13391343
13401344 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
13411345 typedef union YYSTYPE
1342 #line 949 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
1346 #line 949 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
13431347 {
13441348 llvm::Module *ModuleVal;
13451349 llvm::Function *FunctionVal;
13871391 llvm::FCmpInst::Predicate FPredicate;
13881392 }
13891393 /* Line 193 of yacc.c. */
1390 #line 1392 "llvmAsmParser.tab.c"
1394 #line 1396 "llvmAsmParser.tab.c"
13911395 YYSTYPE;
13921396 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
13931397 # define YYSTYPE_IS_DECLARED 1
14001404
14011405
14021406 /* Line 216 of yacc.c. */
1403 #line 1405 "llvmAsmParser.tab.c"
1407 #line 1409 "llvmAsmParser.tab.c"
14041408
14051409 #ifdef short
14061410 # undef short
16151619 /* YYFINAL -- State number of the termination state. */
16161620 #define YYFINAL 44
16171621 /* YYLAST -- Last index in YYTABLE. */
1618 #define YYLAST 2040
1622 #define YYLAST 2144
16191623
16201624 /* YYNTOKENS -- Number of terminals. */
1621 #define YYNTOKENS 168
1625 #define YYNTOKENS 170
16221626 /* YYNNTS -- Number of nonterminals. */
16231627 #define YYNNTS 85
16241628 /* YYNRULES -- Number of rules. */
1625 #define YYNRULES 327
1629 #define YYNRULES 331
16261630 /* YYNRULES -- Number of states. */
1627 #define YYNSTATES 656
1631 #define YYNSTATES 679
16281632
16291633 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
16301634 #define YYUNDEFTOK 2
1631 #define YYMAXUTOK 408
1635 #define YYMAXUTOK 410
16321636
16331637 #define YYTRANSLATE(YYX) \
16341638 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
16401644 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
16411645 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
16421646 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1643 154, 155, 158, 2, 157, 2, 2, 2, 2, 2,
1647 156, 157, 160, 2, 159, 2, 2, 2, 2, 2,
16441648 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1645 163, 156, 164, 2, 2, 2, 2, 2, 2, 2,
1649 165, 158, 166, 2, 2, 2, 2, 2, 2, 2,
16461650 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
16471651 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1648 2, 160, 159, 162, 2, 2, 2, 2, 2, 167,
1652 2, 162, 161, 164, 2, 2, 2, 2, 2, 169,
16491653 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
16501654 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1651 161, 2, 2, 165, 2, 166, 2, 2, 2, 2,
1655 163, 2, 2, 167, 2, 168, 2, 2, 2, 2,
16521656 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
16531657 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
16541658 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
16761680 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
16771681 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
16781682 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1679 145, 146, 147, 148, 149, 150, 151, 152, 153
1683 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
1684 155
16801685 };
16811686
16821687 #if YYDEBUG
17041709 375, 380, 384, 388, 393, 398, 402, 409, 415, 418,
17051710 421, 424, 427, 430, 433, 436, 439, 442, 445, 448,
17061711 451, 458, 464, 473, 480, 487, 495, 503, 511, 519,
1707 526, 535, 544, 548, 550, 552, 554, 556, 557, 560,
1708 567, 569, 570, 572, 575, 576, 580, 581, 585, 589,
1709 593, 597, 598, 607, 608, 618, 619, 629, 635, 638,
1710 642, 644, 648, 652, 656, 660, 662, 663, 669, 673,
1711 675, 679, 681, 682, 693, 695, 697, 702, 704, 706,
1712 709, 713, 714, 716, 718, 720, 722, 724, 726, 728,
1713 730, 732, 736, 738, 744, 746, 748, 750, 752, 754,
1714 756, 759, 761, 765, 768, 771, 775, 778, 779, 781,
1715 784, 787, 791, 801, 811, 820, 835, 837, 839, 846,
1716 852, 855, 862, 870, 875, 880, 887, 894, 895, 896,
1717 900, 903, 905, 911, 917, 924, 931, 938, 945, 950,
1718 957, 962, 967, 974, 981, 984, 993, 995, 997, 998,
1719 1002, 1009, 1013, 1020, 1023, 1029, 1037, 1043
1712 526, 535, 544, 550, 558, 562, 564, 566, 568, 570,
1713 571, 574, 581, 583, 584, 586, 589, 590, 594, 595,
1714 599, 603, 607, 611, 612, 621, 622, 632, 633, 643,
1715 649, 652, 656, 658, 662, 666, 670, 674, 676, 677,
1716 683, 687, 689, 693, 695, 696, 707, 709, 711, 716,
1717 718, 720, 723, 727, 728, 730, 732, 734, 736, 738,
1718 740, 742, 744, 746, 750, 752, 758, 760, 762, 764,
1719 766, 768, 770, 773, 775, 779, 782, 785, 789, 792,
1720 793, 795, 798, 801, 805, 815, 825, 834, 849, 851,
1721 853, 860, 866, 869, 876, 884, 889, 894, 901, 908,
1722 909, 910, 914, 917, 919, 925, 931, 938, 945, 952,
1723 959, 964, 971, 976, 981, 988, 995, 998, 1007, 1009,
1724 1011, 1012, 1016, 1023, 1027, 1034, 1037, 1043, 1051, 1057,
1725 1062, 1067
17201726 };
17211727
17221728 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
17231729 static const yytype_int16 yyrhs[] =
17241730 {
1725 214, 0, -1, 75, -1, 76, -1, 77, -1, 78,
1731 216, 0, -1, 75, -1, 76, -1, 77, -1, 78,
17261732 -1, 79, -1, 80, -1, 81, -1, 82, -1, 83,
17271733 -1, 87, -1, 88, -1, 89, -1, 84, -1, 85,
17281734 -1, 86, -1, 120, -1, 121, -1, 122, -1, 123,
17341740 -1, 111, -1, 112, -1, 113, -1, 100, -1, 101,
17351741 -1, 102, -1, 103, -1, 26, -1, 27, -1, 11,
17361742 -1, 12, -1, 13, -1, 16, -1, 15, -1, 14,
1737 -1, 19, -1, 22, -1, 24, -1, 176, -1, -1,
1738 55, 154, 4, 155, -1, -1, 176, 156, -1, -1,
1739 20, -1, 23, -1, 182, -1, -1, 180, 156, -1,
1743 -1, 19, -1, 22, -1, 24, -1, 178, -1, -1,
1744 55, 156, 4, 157, -1, -1, 178, 158, -1, -1,
1745 20, -1, 23, -1, 184, -1, -1, 182, 158, -1,
17401746 42, -1, 44, -1, 43, -1, 45, -1, 47, -1,
1741 49, -1, 46, -1, 48, -1, 51, -1, -1, 151,
1742 -1, 152, -1, 153, -1, -1, 46, -1, 48, -1,
1747 49, -1, 46, -1, 48, -1, 51, -1, -1, 153,
1748 -1, 154, -1, 155, -1, -1, 46, -1, 48, -1,
17431749 -1, 42, -1, 43, -1, 44, -1, 47, -1, -1,
17441750 44, -1, 42, -1, -1, 63, -1, 64, -1, 65,
1745 -1, 66, -1, 67, -1, 62, 4, -1, 140, -1,
1746 121, -1, 139, -1, 122, -1, 142, -1, 143, -1,
1747 145, -1, 146, -1, 147, -1, 54, 4, -1, -1,
1748 191, 190, -1, 141, -1, 144, -1, 140, -1, 139,
1749 -1, 148, -1, 149, -1, -1, 193, 192, -1, -1,
1750 150, 22, -1, -1, 54, 4, -1, -1, 157, 54,
1751 4, -1, 34, 22, -1, -1, 197, -1, -1, 157,
1752 200, 199, -1, 197, -1, 54, 4, -1, 11, -1,
1751 -1, 66, -1, 67, -1, 62, 4, -1, 142, -1,
1752 121, -1, 141, -1, 122, -1, 144, -1, 145, -1,
1753 147, -1, 148, -1, 149, -1, 54, 4, -1, -1,
1754 193, 192, -1, 143, -1, 146, -1, 142, -1, 141,
1755 -1, 150, -1, 151, -1, -1, 195, 194, -1, -1,
1756 152, 22, -1, -1, 54, 4, -1, -1, 159, 54,
1757 4, -1, 34, 22, -1, -1, 199, -1, -1, 159,
1758 202, 201, -1, 199, -1, 54, 4, -1, 11, -1,
17531759 12, -1, 13, -1, 16, -1, 15, -1, 14, -1,
1754 17, -1, 50, -1, 201, -1, 202, 178, 158, -1,
1755 236, -1, 159, 4, -1, 202, 154, 206, 155, 193,
1756 -1, 10, 154, 206, 155, 193, -1, 160, 4, 161,
1757 202, 162, -1, 163, 4, 161, 202, 164, -1, 165,
1758 207, 166, -1, 165, 166, -1, 163, 165, 207, 166,
1759 164, -1, 163, 165, 166, 164, -1, 202, 191, -1,
1760 202, -1, 10, -1, 203, -1, 205, 157, 203, -1,
1761 205, -1, 205, 157, 39, -1, 39, -1, -1, 202,
1762 -1, 207, 157, 202, -1, 202, 160, 210, 162, -1,
1763 202, 160, 162, -1, 202, 167, 22, -1, 202, 163,
1764 210, 164, -1, 202, 165, 210, 166, -1, 202, 165,
1765 166, -1, 202, 163, 165, 210, 166, 164, -1, 202,
1766 163, 165, 166, 164, -1, 202, 40, -1, 202, 41,
1767 -1, 202, 236, -1, 202, 209, -1, 202, 25, -1,
1768 174, 3, -1, 174, 5, -1, 174, 4, -1, 174,
1769 6, -1, 11, 26, -1, 11, 27, -1, 175, 9,
1770 -1, 171, 154, 208, 38, 202, 155, -1, 119, 154,
1771 208, 248, 155, -1, 133, 154, 208, 157, 208, 157,
1772 208, 155, -1, 169, 154, 208, 157, 208, 155, -1,
1773 170, 154, 208, 157, 208, 155, -1, 90, 172, 154,
1774 208, 157, 208, 155, -1, 91, 173, 154, 208, 157,
1775 208, 155, -1, 92, 172, 154, 208, 157, 208, 155,
1776 -1, 93, 173, 154, 208, 157, 208, 155, -1, 135,
1777 154, 208, 157, 208, 155, -1, 136, 154, 208, 157,
1778 208, 157, 208, 155, -1, 137, 154, 208, 157, 208,
1779 157, 208, 155, -1, 210, 157, 208, -1, 208, -1,
1780 32, -1, 33, -1, 37, -1, -1, 204, 236, -1,
1781 125, 154, 213, 38, 202, 155, -1, 215, -1, -1,
1782 216, -1, 215, 216, -1, -1, 31, 217, 232, -1,
1783 -1, 30, 218, 233, -1, 60, 59, 222, -1, 179,
1784 18, 202, -1, 179, 18, 10, -1, -1, 181, 185,
1785 212, 211, 208, 178, 219, 199, -1, -1, 181, 183,
1786 185, 212, 211, 208, 178, 220, 199, -1, -1, 181,
1787 184, 185, 212, 211, 202, 178, 221, 199, -1, 181,
1788 185, 35, 188, 213, -1, 52, 223, -1, 56, 156,
1789 224, -1, 22, -1, 53, 156, 22, -1, 68, 156,
1790 22, -1, 160, 225, 162, -1, 225, 157, 22, -1,
1791 22, -1, -1, 226, 157, 202, 191, 177, -1, 202,
1792 191, 177, -1, 226, -1, 226, 157, 39, -1, 39,
1793 -1, -1, 189, 204, 180, 154, 227, 155, 193, 198,
1794 195, 194, -1, 28, -1, 165, -1, 187, 185, 228,
1795 229, -1, 29, -1, 166, -1, 240, 231, -1, 186,
1796 185, 228, -1, -1, 61, -1, 3, -1, 4, -1,
1797 9, -1, 26, -1, 27, -1, 40, -1, 41, -1,
1798 25, -1, 163, 210, 164, -1, 209, -1, 59, 234,
1799 22, 157, 22, -1, 7, -1, 8, -1, 176, -1,
1800 180, -1, 236, -1, 235, -1, 202, 237, -1, 238,
1801 -1, 239, 157, 238, -1, 240, 241, -1, 230, 241,
1802 -1, 242, 179, 243, -1, 242, 245, -1, -1, 21,
1803 -1, 69, 239, -1, 69, 10, -1, 70, 17, 237,
1804 -1, 70, 11, 237, 157, 17, 237, 157, 17, 237,
1805 -1, 71, 174, 237, 157, 17, 237, 160, 244, 162,
1806 -1, 71, 174, 237, 157, 17, 237, 160, 162, -1,
1807 72, 189, 204, 237, 154, 247, 155, 193, 38, 17,
1808 237, 73, 17, 237, -1, 73, -1, 74, -1, 244,
1809 174, 235, 157, 17, 237, -1, 174, 235, 157, 17,
1810 237, -1, 179, 250, -1, 202, 160, 237, 157, 237,
1811 162, -1, 246, 157, 160, 237, 157, 237, 162, -1,
1812 202, 191, 237, 191, -1, 17, 191, 237, 191, -1,
1813 247, 157, 202, 191, 237, 191, -1, 247, 157, 17,
1814 191, 237, 191, -1, -1, -1, 248, 157, 238, -1,
1815 58, 57, -1, 57, -1, 169, 202, 237, 157, 237,
1816 -1, 170, 202, 237, 157, 237, -1, 90, 172, 202,
1817 237, 157, 237, -1, 91, 173, 202, 237, 157, 237,
1818 -1, 92, 172, 202, 237, 157, 237, -1, 93, 173,
1819 202, 237, 157, 237, -1, 171, 238, 38, 202, -1,
1820 133, 238, 157, 238, 157, 238, -1, 134, 238, 157,
1821 202, -1, 135, 238, 157, 238, -1, 136, 238, 157,
1822 238, 157, 238, -1, 137, 238, 157, 238, 157, 238,
1823 -1, 132, 246, -1, 249, 189, 204, 237, 154, 247,
1824 155, 193, -1, 252, -1, 36, -1, -1, 114, 202,
1825 196, -1, 114, 202, 157, 11, 237, 196, -1, 115,
1826 202, 196, -1, 115, 202, 157, 11, 237, 196, -1,
1827 116, 238, -1, 251, 117, 202, 237, 196, -1, 251,
1828 118, 238, 157, 202, 237, 196, -1, 138, 202, 237,
1829 157, 4, -1, 119, 202, 237, 248, -1
1760 17, -1, 50, -1, 203, -1, 204, 180, 160, -1,
1761 238, -1, 161, 4, -1, 204, 156, 208, 157, 195,
1762 -1, 10, 156, 208, 157, 195, -1, 162, 4, 163,
1763 204, 164, -1, 165, 4, 163, 204, 166, -1, 167,
1764 209, 168, -1, 167, 168, -1, 165, 167, 209, 168,
1765 166, -1, 165, 167, 168, 166, -1, 204, 193, -1,
1766 204, -1, 10, -1, 205, -1, 207, 159, 205, -1,
1767 207, -1, 207, 159, 39, -1, 39, -1, -1, 204,
1768 -1, 209, 159, 204, -1, 204, 162, 212, 164, -1,
1769 204, 162, 164, -1, 204, 169, 22, -1, 204, 165,
1770 212, 166, -1, 204, 167, 212, 168, -1, 204, 167,
1771 168, -1, 204, 165, 167, 212, 168, 166, -1, 204,
1772 165, 167, 168, 166, -1, 204, 40, -1, 204, 41,
1773 -1, 204, 238, -1, 204, 211, -1, 204, 25, -1,
1774 176, 3, -1, 176, 5, -1, 176, 4, -1, 176,
1775 6, -1, 11, 26, -1, 11, 27, -1, 177, 9,
1776 -1, 173, 156, 210, 38, 204, 157, -1, 119, 156,
1777 210, 250, 157, -1, 133, 156, 210, 159, 210, 159,
1778 210, 157, -1, 171, 156, 210, 159, 210, 157, -1,
1779 172, 156, 210, 159, 210, 157, -1, 90, 174, 156,
1780 210, 159, 210, 157, -1, 91, 175, 156, 210, 159,
1781 210, 157, -1, 92, 174, 156, 210, 159, 210, 157,
1782 -1, 93, 175, 156, 210, 159, 210, 157, -1, 135,
1783 156, 210, 159, 210, 157, -1, 136, 156, 210, 159,
1784 210, 159, 210, 157, -1, 137, 156, 210, 159, 210,
1785 159, 210, 157, -1, 139, 156, 210, 250, 157, -1,
1786 140, 156, 210, 159, 210, 250, 157, -1, 212, 159,
1787 210, -1, 210, -1, 32, -1, 33, -1, 37, -1,
1788 -1, 206, 238, -1, 125, 156, 215, 38, 204, 157,
1789 -1, 217, -1, -1, 218, -1, 217, 218, -1, -1,
1790 31, 219, 234, -1, -1, 30, 220, 235, -1, 60,
1791 59, 224, -1, 181, 18, 204, -1, 181, 18, 10,
1792 -1, -1, 183, 187, 214, 213, 210, 180, 221, 201,
1793 -1, -1, 183, 185, 187, 214, 213, 210, 180, 222,
1794 201, -1, -1, 183, 186, 187, 214, 213, 204, 180,
1795 223, 201, -1, 183, 187, 35, 190, 215, -1, 52,
1796 225, -1, 56, 158, 226, -1, 22, -1, 53, 158,
1797 22, -1, 68, 158, 22, -1, 162, 227, 164, -1,
1798 227, 159, 22, -1, 22, -1, -1, 228, 159, 204,
1799 193, 179, -1, 204, 193, 179, -1, 228, -1, 228,
1800 159, 39, -1, 39, -1, -1, 191, 206, 182, 156,
1801 229, 157, 195, 200, 197, 196, -1, 28, -1, 167,
1802 -1, 189, 187, 230, 231, -1, 29, -1, 168, -1,
1803 242, 233, -1, 188, 187, 230, -1, -1, 61, -1,
1804 3, -1, 4, -1, 9, -1, 26, -1, 27, -1,
1805 40, -1, 41, -1, 25, -1, 165, 212, 166, -1,
1806 211, -1, 59, 236, 22, 159, 22, -1, 7, -1,
1807 8, -1, 178, -1, 182, -1, 238, -1, 237, -1,
1808 204, 239, -1, 240, -1, 241, 159, 240, -1, 242,
1809 243, -1, 232, 243, -1, 244, 181, 245, -1, 244,
1810 247, -1, -1, 21, -1, 69, 241, -1, 69, 10,
1811 -1, 70, 17, 239, -1, 70, 11, 239, 159, 17,
1812 239, 159, 17, 239, -1, 71, 176, 239, 159, 17,
1813 239, 162, 246, 164, -1, 71, 176, 239, 159, 17,
1814 239, 162, 164, -1, 72, 191, 206, 239, 156, 249,
1815 157, 195, 38, 17, 239, 73, 17, 239, -1, 73,
1816 -1, 74, -1, 246, 176, 237, 159, 17, 239, -1,
1817 176, 237, 159, 17, 239, -1, 181, 252, -1, 204,
1818 162, 239, 159, 239, 164, -1, 248, 159, 162, 239,
1819 159, 239, 164, -1, 204, 193, 239, 193, -1, 17,
1820 193, 239, 193, -1, 249, 159, 204, 193, 239, 193,
1821 -1, 249, 159, 17, 193, 239, 193, -1, -1, -1,
1822 250, 159, 240, -1, 58, 57, -1, 57, -1, 171,
1823 204, 239, 159, 239, -1, 172, 204, 239, 159, 239,
1824 -1, 90, 174, 204, 239, 159, 239, -1, 91, 175,
1825 204, 239, 159, 239, -1, 92, 174, 204, 239, 159,
1826 239, -1, 93, 175, 204, 239, 159, 239, -1, 173,
1827 240, 38, 204, -1, 133, 240, 159, 240, 159, 240,
1828 -1, 134, 240, 159, 204, -1, 135, 240, 159, 240,
1829 -1, 136, 240, 159, 240, 159, 240, -1, 137, 240,
1830 159, 240, 159, 240, -1, 132, 248, -1, 251, 191,
1831 206, 239, 156, 249, 157, 195, -1, 254, -1, 36,
1832 -1, -1, 114, 204, 198, -1, 114, 204, 159, 11,
1833 239, 198, -1, 115, 204, 198, -1, 115, 204, 159,
1834 11, 239, 198, -1, 116, 240, -1, 253, 117, 204,
1835 239, 198, -1, 253, 118, 240, 159, 204, 239, 198,
1836 -1, 138, 204, 239, 159, 4, -1, 119, 204, 239,
1837 250, -1, 139, 204, 239, 250, -1, 140, 204, 239,
1838 159, 204, 239, 250, -1
18301839 };
18311840
18321841 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
18331842 static const yytype_uint16 yyrline[] =
18341843 {
1835 0, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111,
1836 1111, 1112, 1112, 1112, 1112, 1112, 1112, 1113, 1113, 1113,
1837 1113, 1113, 1113, 1114, 1114, 1114, 1114, 1114, 1114, 1117,
1838 1117, 1118, 1118, 1119, 1119, 1120, 1120, 1121, 1121, 1125,
1839 1125, 1126, 1126, 1127, 1127, 1128, 1128, 1129, 1129, 1130,
1840 1130, 1131, 1131, 1132, 1133, 1138, 1139, 1139, 1139, 1139,
1841 1139, 1141, 1141, 1141, 1142, 1142, 1144, 1145, 1149, 1153,
1842 1158, 1158, 1160, 1161, 1166, 1172, 1173, 1174, 1175, 1176,
1843 1177, 1181, 1182, 1183, 1187, 1188, 1189, 1190, 1194, 1195,
1844 1196, 1200, 1201, 1202, 1203, 1204, 1208, 1209, 1210, 1213,
1845 1214, 1215, 1216, 1217, 1218, 1219, 1226, 1227, 1228, 1229,
1846 1230, 1231, 1232, 1233, 1234, 1235, 1239, 1240, 1245, 1246,
1847 1247, 1248, 1249, 1250, 1253, 1254, 1259, 1260, 1267, 1268,
1848 1274, 1275, 1284, 1292, 1293, 1298, 1299, 1300, 1305, 1318,
1849 1318, 1318, 1318, 1318, 1318, 1318, 1321, 1325, 1329, 1336,
1850 1341, 1349, 1378, 1403, 1408, 1418, 1428, 1432, 1442, 1449,
1851 1458, 1465, 1470, 1475, 1482, 1483, 1490, 1497, 1505, 1511,
1852 1523, 1551, 1567, 1594, 1622, 1648, 1668, 1694, 1714, 1726,
1853 1733, 1799, 1809, 1819, 1825, 1835, 1841, 1851, 1856, 1861,
1854 1874, 1886, 1907, 1915, 1921, 1932, 1937, 1942, 1947, 1952,
1855 1958, 1964, 1973, 1977, 1985, 1985, 1988, 1988, 1991, 2003,
1856 2024, 2029, 2037, 2038, 2042, 2042, 2046, 2046, 2049, 2052,
1857 2076, 2088, 2087, 2099, 2098, 2108, 2107, 2118, 2158, 2161,
1858 2167, 2177, 2181, 2186, 2188, 2193, 2198, 2207, 2217, 2228,
1859 2232, 2241, 2250, 2255, 2384, 2384, 2386, 2395, 2395, 2397,
1860 2402, 2414, 2418, 2423, 2427, 2431, 2435, 2439, 2443, 2447,
1861 2451, 2455, 2480, 2484, 2494, 2498, 2502, 2507, 2514, 2514,
1862 2520, 2529, 2534, 2539, 2543, 2552, 2561, 2570, 2574, 2582,
1863 2589, 2593, 2598, 2608, 2627, 2636, 2722, 2726, 2733, 2744,
1864 2757, 2767, 2778, 2788, 2799, 2807, 2817, 2824, 2827, 2828,
1865 2835, 2839, 2844, 2860, 2877, 2891, 2905, 2919, 2933, 2945,
1866 2953, 2960, 2966, 2972, 2978, 2993, 3083, 3088, 3092, 3099,
1867 3106, 3114, 3121, 3129, 3137, 3151, 3168, 3176
1844 0, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112,
1845 1112, 1113, 1113, 1113, 1113, 1113, 1113, 1114, 1114, 1114,
1846 1114, 1114, 1114, 1115, 1115, 1115, 1115, 1115, 1115, 1118,
1847 1118, 1119, 1119, 1120, 1120, 1121, 1121, 1122, 1122, 1126,
1848 1126, 1127, 1127, 1128, 1128, 1129, 1129, 1130, 1130, 1131,
1849 1131, 1132, 1132, 1133, 1134, 1139, 1140, 1140, 1140, 1140,
1850 1140, 1142, 1142, 1142, 1143, 1143, 1145, 1146, 1150, 1154,
1851 1159, 1159, 1161, 1162, 1167, 1173, 1174, 1175, 1176, 1177,
1852 1178, 1182, 1183, 1184, 1188, 1189, 1190, 1191, 1195, 1196,
1853 1197, 1201, 1202, 1203, 1204, 1205, 1209, 1210, 1211, 1214,
1854 1215, 1216, 1217, 1218, 1219, 1220, 1227, 1228, 1229, 1230,
1855 1231, 1232, 1233, 1234, 1235, 1236, 1240, 1241, 1246, 1247,
1856 1248, 1249, 1250, 1251, 1254, 1255, 1260, 1261, 1268, 1269,
1857 1275, 1276, 1285, 1293, 1294, 1299, 1300, 1301, 1306, 1319,
1858 1319, 1319, 1319, 1319, 1319, 1319, 1322, 1326, 1330, 1337,
1859 1342, 1350, 1379, 1404, 1409, 1419, 1429, 1433, 1443, 1450,
1860 1459, 1466, 1471, 1476, 1483, 1484, 1491, 1498, 1506, 1512,
1861 1524, 1552, 1568, 1595, 1623, 1649, 1669, 1695, 1715, 1727,
1862 1734, 1800, 1810, 1820, 1826, 1836, 1842, 1852, 1857, 1862,
1863 1875, 1887, 1908, 1916, 1922, 1933, 1938, 1943, 1948, 1953,
1864 1959, 1965, 1971, 1992, 2016, 2020, 2028, 2028, 2031, 2031,
1865 2034, 2046, 2067, 2072, 2080, 2081, 2085, 2085, 2089, 2089,
1866 2092, 2095, 2119, 2131, 2130, 2142, 2141, 2151, 2150, 2161,
1867 2201, 2204, 2210, 2220, 2224, 2229, 2231, 2236, 2241, 2250,
1868 2260, 2271, 2275, 2284, 2293, 2298, 2427, 2427, 2429, 2438,
1869 2438, 2440, 2445, 2457, 2461, 2466, 2470, 2474, 2478, 2482,
1870 2486, 2490, 2494, 2498, 2523, 2527, 2537, 2541, 2545, 2550,
1871 2557, 2557, 2563, 2572, 2577, 2582, 2586, 2595, 2604, 2613,
1872 2617, 2625, 2632, 2636, 2641, 2651, 2670, 2679, 2765, 2769,
1873 2776, 2787, 2800, 2810, 2821, 2831, 2842, 2850, 2860, 2867,
1874 2870, 2871, 2878, 2882, 2887, 2903, 2920, 2934, 2948, 2962,
1875 2976, 2988, 2996, 3003, 3009, 3015, 3021, 3036, 3126, 3131,
1876 3135, 3142, 3149, 3157, 3164, 3172, 3180, 3194, 3211, 3219,
1877 3234, 3249
18681878 };
18691879 #endif
18701880
18941904 "TRUNC", "ZEXT", "SEXT", "FPTRUNC", "FPEXT", "BITCAST", "UITOFP",
18951905 "SITOFP", "FPTOUI", "FPTOSI", "INTTOPTR", "PTRTOINT", "PHI_TOK",
18961906 "SELECT", "VAARG", "EXTRACTELEMENT", "INSERTELEMENT", "SHUFFLEVECTOR",
1897 "GETRESULT", "SIGNEXT", "ZEROEXT", "NORETURN", "INREG", "SRET",
1898 "NOUNWIND", "NOALIAS", "BYVAL", "NEST", "READNONE", "READONLY", "GC",
1899 "DEFAULT", "HIDDEN", "PROTECTED", "'('", "')'", "'='", "','", "'*'",
1900 "'\\\\'", "'['", "'x'", "']'", "'<'", "'>'", "'{'", "'}'", "'c'",
1901 "$accept", "ArithmeticOps", "LogicalOps", "CastOps", "IPredicates",
1902 "FPredicates", "IntType", "FPType", "LocalName", "OptLocalName",
1903 "OptAddrSpace", "OptLocalAssign", "GlobalName", "OptGlobalAssign",
1904 "GlobalAssign", "GVInternalLinkage", "GVExternalLinkage",
1905 "GVVisibilityStyle", "FunctionDeclareLinkage", "FunctionDefineLinkage",
1906 "AliasLinkage", "OptCallingConv", "ParamAttr", "OptParamAttrs",
1907 "FuncAttr", "OptFuncAttrs", "OptGC", "OptAlign", "OptCAlign",
1908 "SectionString", "OptSection", "GlobalVarAttributes",
1907 "GETRESULT", "EXTRACTVALUE", "INSERTVALUE", "SIGNEXT", "ZEROEXT",
1908 "NORETURN", "INREG", "SRET", "NOUNWIND", "NOALIAS", "BYVAL", "NEST",
1909 "READNONE", "READONLY", "GC", "DEFAULT", "HIDDEN", "PROTECTED", "'('",
1910 "')'", "'='", "','", "'*'", "'\\\\'", "'['", "'x'", "']'", "'<'", "'>'",
1911 "'{'", "'}'", "'c'", "$accept", "ArithmeticOps", "LogicalOps", "CastOps",
1912 "IPredicates", "FPredicates", "IntType", "FPType", "LocalName",
1913 "OptLocalName", "OptAddrSpace", "OptLocalAssign", "GlobalName",
1914 "OptGlobalAssign", "GlobalAssign", "GVInternalLinkage",
1915 "GVExternalLinkage", "GVVisibilityStyle", "FunctionDeclareLinkage",
1916 "FunctionDefineLinkage", "AliasLinkage", "OptCallingConv", "ParamAttr",
1917 "OptParamAttrs", "FuncAttr", "OptFuncAttrs", "OptGC", "OptAlign",
1918 "OptCAlign", "SectionString", "OptSection", "GlobalVarAttributes",
19091919 "GlobalVarAttribute", "PrimType", "Types", "ArgType", "ResultTypes",
19101920 "ArgTypeList", "ArgTypeListI", "TypeListI", "ConstVal", "ConstExpr",
19111921 "ConstVector", "GlobalType", "ThreadLocal", "AliaseeRef", "Module",
19401950 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
19411951 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
19421952 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
1943 405, 406, 407, 408, 40, 41, 61, 44, 42, 92,
1944 91, 120, 93, 60, 62, 123, 125, 99
1953 405, 406, 407, 408, 409, 410, 40, 41, 61, 44,
1954 42, 92, 91, 120, 93, 60, 62, 123, 125, 99
19451955 };
19461956 # endif
19471957
19481958 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
19491959 static const yytype_uint8 yyr1[] =
19501960 {
1951 0, 168, 169, 169, 169, 169, 169, 169, 169, 169,
1952 169, 170, 170, 170, 170, 170, 170, 171, 171, 171,
1953 171, 171, 171, 171, 171, 171, 171, 171, 171, 172,
1954 172, 172, 172, 172, 172, 172, 172, 172, 172, 173,
1955 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
1956 173, 173, 173, 173, 173, 174, 175, 175, 175, 175,
1957 175, 176, 176, 176, 177, 177, 178, 178, 179, 179,
1958 180, 180, 181, 181, 182, 183, 183, 183, 183, 183,
1959 183, 184, 184, 184, 185, 185, 185, 185, 186, 186,
1960 186, 187, 187, 187, 187, 187, 188, 188, 188, 189,
1961 189, 189, 189, 189, 189, 189, 190, 190, 190, 190,
1962 190, 190, 190, 190, 190, 190, 191, 191, 192, 192,
1963 192, 192, 192, 192, 193, 193, 194, 194, 195, 195,
1964 196, 196, 197, 198, 198, 199, 199, 200, 200, 201,
1965 201, 201, 201, 201, 201, 201, 202, 202, 202, 202,
1966 202, 202, 202, 202, 202, 202, 202, 202, 202, 203,
1967 204, 204, 205, 205, 206, 206, 206, 206, 207, 207,
1968 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
1969 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
1970 209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
1971 209, 209, 210, 210, 211, 211, 212, 212, 213, 213,
1972 214, 214, 215, 215, 217, 216, 218, 216, 216, 216,
1973 216, 219, 216, 220, 216, 221, 216, 216, 216, 216,
1974 222, 223, 223, 224, 225, 225, 225, 226, 226, 227,
1975 227, 227, 227, 228, 229, 229, 230, 231, 231, 232,
1976 233, 234, 234, 235, 235, 235, 235, 235, 235, 235,
1977 235, 235, 235, 235, 236, 236, 236, 236, 237, 237,
1978 238, 239, 239, 240, 240, 241, 242, 242, 242, 243,
1979 243, 243, 243, 243, 243, 243, 243, 243, 244, 244,
1980 245, 246, 246, 247, 247, 247, 247, 247, 248, 248,
1981 249, 249, 250, 250, 250, 250, 250, 250, 250, 250,
1982 250, 250, 250, 250, 250, 250, 250, 251, 251, 252,
1983 252, 252, 252, 252, 252, 252, 252, 252
1961 0, 170, 171, 171, 171, 171, 171, 171, 171, 171,
1962 171, 172, 172, 172, 172, 172, 172, 173, 173, 173,
1963 173, 173, 173, 173, 173, 173, 173, 173, 173, 174,
1964 174, 174, 174, 174, 174, 174, 174, 174, 174, 175,
1965 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
1966 175, 175, 175, 175, 175, 176, 177, 177, 177, 177,
1967 177, 178, 178, 178, 179, 179, 180, 180, 181, 181,
1968 182, 182, 183, 183, 184, 185, 185, 185, 185, 185,
1969 185, 186, 186, 186, 187, 187, 187, 187, 188, 188,
1970 188, 189, 189, 189, 189, 189, 190, 190, 190, 191,
1971 191, 191, 191, 191, 191, 191, 192, 192, 192, 192,
1972 192, 192, 192, 192, 192, 192, 193, 193, 194, 194,
1973 194, 194, 194, 194, 195, 195, 196, 196, 197, 197,
1974 198, 198, 199, 200, 200, 201, 201, 202, 202, 203,
1975 203, 203, 203, 203, 203, 203, 204, 204, 204, 204,
1976 204, 204, 204, 204, 204, 204, 204, 204, 204, 205,
1977 206, 206, 207, 207, 208, 208, 208, 208, 209, 209,
1978 210, 210, 210, 210, 210, 210, 210, 210, 210, 210,
1979 210, 210, 210, 210, 210, 210, 210, 210, 210, 210,
1980 211, 211, 211, 211, 211, 211, 211, 211, 211, 211,
1981 211, 211, 211, 211, 212, 212, 213, 213, 214, 214,
1982 215, 215, 216, 216, 217, 217, 219, 218, 220, 218,
1983 218, 218, 218, 221, 218, 222, 218, 223, 218, 218,
1984 218, 218, 224, 225, 225, 226, 227, 227, 227, 228,
1985 228, 229, 229, 229, 229, 230, 231, 231, 232, 233,
1986 233, 234, 235, 236, 236, 237, 237, 237, 237, 237,
1987 237, 237, 237, 237, 237, 237, 238, 238, 238, 238,
1988 239, 239, 240, 241, 241, 242, 242, 243, 244, 244,
1989 244, 245, 245, 245, 245, 245, 245, 245, 245, 245,
1990 246, 246, 247, 248, 248, 249, 249, 249, 249, 249,
1991 250, 250, 251, 251, 252, 252, 252, 252, 252, 252,
1992 252, 252, 252, 252, 252, 252, 252, 252, 252, 253,
1993 253, 254, 254, 254, 254, 254, 254, 254, 254, 254,
1994 254, 254
19841995 };
19851996
19861997 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
20062017 4, 3, 3, 4, 4, 3, 6, 5, 2, 2,
20072018 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
20082019 6, 5, 8, 6, 6, 7, 7, 7, 7, 6,
2009 8, 8, 3, 1, 1, 1, 1, 0, 2, 6,
2010 1, 0, 1, 2, 0, 3, 0, 3, 3, 3,
2011 3, 0, 8, 0, 9, 0, 9, 5, 2, 3,
2012 1, 3, 3, 3, 3, 1, 0, 5, 3, 1,
2013 3, 1, 0, 10, 1, 1, 4, 1, 1, 2,
2014 3, 0, 1, 1, 1, 1, 1, 1, 1, 1,
2015 1, 3, 1, 5, 1, 1, 1, 1, 1, 1,
2016 2, 1, 3, 2, 2, 3, 2, 0, 1, 2,
2017 2, 3, 9, 9, 8, 14, 1, 1, 6, 5,
2018 2, 6, 7, 4, 4, 6, 6, 0, 0, 3,
2019 2, 1, 5, 5, 6, 6, 6, 6, 4, 6,
2020 4, 4, 6, 6, 2, 8, 1, 1, 0, 3,
2021 6, 3, 6, 2, 5, 7, 5, 4
2020 8, 8, 5, 7, 3, 1, 1, 1, 1, 0,
2021 2, 6, 1, 0, 1, 2, 0, 3, 0, 3,
2022 3, 3, 3, 0, 8, 0, 9, 0, 9, 5,
2023 2, 3, 1, 3, 3, 3, 3, 1, 0, 5,
2024 3, 1, 3, 1, 0, 10, 1, 1, 4, 1,
2025 1, 2, 3, 0, 1, 1, 1, 1, 1, 1,
2026 1, 1, 1, 3, 1, 5, 1, 1, 1, 1,
2027 1, 1, 2, 1, 3, 2, 2, 3, 2, 0,
2028 1, 2, 2, 3, 9, 9, 8, 14, 1, 1,
2029 6, 5, 2, 6, 7, 4, 4, 6, 6, 0,
2030 0, 3, 2, 1, 5, 5, 6, 6, 6, 6,
2031 4, 6, 4, 4, 6, 6, 2, 8, 1, 1,
2032 0, 3, 6, 3, 6, 2, 5, 7, 5, 4,
2033 4, 7
20222034 };
20232035
20242036 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
20262038 means the default is an error. */
20272039 static const yytype_uint16 yydefact[] =
20282040 {
2029 73, 61, 70, 62, 71, 63, 216, 214, 0, 0,
2030 0, 0, 0, 0, 84, 72, 0, 73, 212, 88,
2031 91, 0, 0, 228, 0, 0, 68, 0, 74, 75,
2041 73, 61, 70, 62, 71, 63, 218, 216, 0, 0,
2042 0, 0, 0, 0, 84, 72, 0, 73, 214, 88,
2043 91, 0, 0, 230, 0, 0, 68, 0, 74, 75,
20322044 77, 76, 78, 81, 79, 82, 80, 83, 85, 86,
2033 87, 84, 84, 207, 1, 213, 89, 90, 84, 217,
2034 92, 93, 94, 95, 84, 277, 215, 277, 0, 0,
2035 236, 229, 230, 218, 264, 265, 220, 139, 140, 141,
2036 144, 143, 142, 145, 146, 0, 0, 0, 0, 266,
2037 267, 147, 219, 149, 207, 207, 96, 206, 0, 99,
2038 99, 278, 274, 69, 247, 248, 249, 273, 231, 232,
2039 235, 0, 167, 150, 0, 0, 0, 0, 156, 168,
2040 0, 0, 167, 0, 0, 0, 98, 97, 0, 204,
2041 205, 0, 0, 100, 101, 102, 103, 104, 0, 250,
2042 0, 318, 276, 0, 233, 166, 116, 162, 164, 0,
2045 87, 84, 84, 209, 1, 215, 89, 90, 84, 219,
2046 92, 93, 94, 95, 84, 279, 217, 279, 0, 0,
2047 238, 231, 232, 220, 266, 267, 222, 139, 140, 141,
2048 144, 143, 142, 145, 146, 0, 0, 0, 0, 268,
2049 269, 147, 221, 149, 209, 209, 96, 208, 0, 99,
2050 99, 280, 276, 69, 249, 250, 251, 275, 233, 234,
2051 237, 0, 167, 150, 0, 0, 0, 0, 156, 168,
2052 0, 0, 167, 0, 0, 0, 98, 97, 0, 206,
2053 207, 0, 0, 100, 101, 102, 103, 104, 0, 252,
2054 0, 320, 278, 0, 235, 166, 116, 162, 164, 0,
20432055 0, 0, 0, 0, 0, 155, 0, 0, 148, 0,
2044 0, 161, 0, 160, 0, 227, 139, 140, 141, 144,
2045 143, 142, 0, 0, 67, 67, 105, 0, 244, 245,
2046 246, 317, 301, 0, 0, 0, 0, 99, 286, 287,
2056 0, 161, 0, 160, 0, 229, 139, 140, 141, 144,
2057 143, 142, 0, 0, 67, 67, 105, 0, 246, 247,
2058 248, 319, 303, 0, 0, 0, 0, 99, 288, 289,
20472059 2, 3, 4, 5, 6, 7, 8, 9, 10, 14,
20482060 15, 16, 11, 12, 13, 0, 0, 0, 0, 0,
20492061 0, 0, 0, 17, 18, 19, 20, 21, 22, 23,
20502062 24, 25, 26, 27, 28, 0, 0, 0, 0, 0,
2051 0, 0, 0, 0, 0, 275, 99, 290, 0, 316,
2052 234, 159, 0, 124, 67, 67, 158, 0, 169, 0,
2053 124, 67, 67, 0, 208, 187, 188, 183, 185, 184,
2054 186, 189, 182, 178, 179, 0, 0, 0, 0, 0,
2063 0, 0, 0, 0, 0, 0, 0, 277, 99, 292,
2064 0, 318, 236, 159, 0, 124, 67, 67, 158, 0,
2065 169, 0, 124, 67, 67, 0, 210, 187, 188, 183,
2066 185, 184, 186, 189, 182, 178, 179, 0, 0, 0,
20552067 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2056 0, 181, 180, 221, 0, 300, 280, 67, 271, 279,
2057 0, 0, 55, 0, 0, 29, 30, 31, 32, 33,
2058 34, 35, 36, 37, 38, 0, 53, 54, 49, 50,
2059 51, 52, 39, 40, 41, 42, 43, 44, 45, 46,
2060 47, 48, 0, 0, 0, 130, 130, 323, 67, 67,
2061 314, 0, 0, 0, 0, 0, 67, 67, 67, 0,
2062 0, 0, 0, 0, 107, 109, 108, 106, 110, 111,
2063 112, 113, 114, 117, 165, 163, 152, 153, 154, 157,
2064 66, 151, 223, 225, 0, 0, 0, 0, 0, 0,
2065 0, 0, 0, 0, 171, 203, 0, 0, 0, 175,
2066 0, 172, 0, 0, 0, 135, 242, 253, 254, 255,
2067 260, 256, 257, 258, 259, 251, 0, 262, 269, 268,
2068 270, 0, 0, 281, 0, 0, 67, 67, 67, 67,
2069 0, 319, 0, 321, 298, 0, 0, 0, 0, 0,
2070 0, 0, 0, 0, 0, 0, 0, 67, 0, 115,
2068 0, 0, 0, 0, 0, 181, 180, 223, 0, 302,
2069 282, 67, 273, 281, 0, 0, 55, 0, 0, 29,
2070 30, 31, 32, 33, 34, 35, 36, 37, 38, 0,
2071 53, 54, 49, 50, 51, 52, 39, 40, 41, 42,
2072 43, 44, 45, 46, 47, 48, 0, 0, 0, 130,
2073 130, 325, 67, 67, 316, 0, 0, 0, 0, 0,
2074 67, 67, 67, 67, 67, 0, 0, 0, 0, 0,
2075 107, 109, 108, 106, 110, 111, 112, 113, 114, 117,
2076 165, 163, 152, 153, 154, 157, 66, 151, 225, 227,
2077 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2078 0, 0, 171, 205, 0, 0, 0, 175, 0, 172,
2079 0, 0, 0, 135, 244, 255, 256, 257, 262, 258,
2080 259, 260, 261, 253, 0, 264, 271, 270, 272, 0,
2081 0, 283, 0, 0, 67, 67, 67, 67, 0, 321,
2082 0, 323, 300, 0, 0, 0, 0, 0, 0, 0,
2083 0, 300, 0, 0, 0, 0, 0, 67, 0, 115,
20712084 121, 120, 118, 119, 122, 123, 125, 135, 135, 0,
2072 0, 0, 0, 0, 298, 0, 0, 0, 0, 0,
2073 170, 156, 168, 0, 173, 174, 0, 0, 0, 0,
2074 222, 241, 116, 239, 0, 252, 0, 0, 272, 0,
2075 0, 0, 0, 0, 0, 0, 0, 0, 0, 327,
2076 0, 0, 0, 310, 311, 0, 0, 0, 0, 0,
2077 308, 0, 130, 0, 224, 226, 67, 0, 0, 0,
2078 0, 0, 0, 0, 0, 0, 202, 177, 0, 0,
2079 0, 0, 0, 0, 137, 135, 65, 0, 124, 0,
2080 261, 0, 0, 297, 0, 0, 0, 0, 130, 131,
2081 130, 0, 0, 0, 0, 0, 0, 326, 302, 303,
2082 297, 0, 324, 67, 209, 0, 0, 0, 0, 191,
2083 0, 0, 0, 0, 176, 0, 0, 67, 132, 138,
2084 136, 64, 238, 240, 116, 133, 0, 0, 0, 116,
2085 116, 0, 304, 305, 306, 307, 320, 322, 299, 0,
2086 0, 309, 312, 313, 0, 130, 0, 0, 0, 0,
2087 0, 199, 0, 0, 193, 194, 190, 65, 134, 128,
2088 263, 0, 0, 0, 0, 124, 0, 291, 0, 124,
2089 325, 195, 196, 197, 198, 0, 0, 0, 237, 0,
2090 126, 0, 284, 0, 0, 107, 109, 116, 116, 0,
2091 116, 116, 292, 315, 192, 200, 201, 129, 0, 243,
2092 282, 0, 283, 0, 294, 293, 0, 0, 0, 127,
2093 0, 0, 0, 116, 116, 0, 0, 0, 296, 295,
2094 289, 0, 0, 288, 0, 285
2085 0, 0, 0, 0, 300, 0, 0, 0, 0, 300,
2086 0, 0, 170, 156, 168, 0, 173, 174, 0, 0,
2087 0, 0, 224, 243, 116, 241, 0, 254, 0, 0,
2088 274, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2089 0, 329, 0, 0, 0, 312, 313, 0, 0, 0,
2090 330, 0, 0, 0, 310, 0, 130, 0, 226, 228,
2091 67, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2092 0, 0, 204, 177, 0, 0, 0, 0, 0, 0,
2093 137, 135, 65, 0, 124, 0, 263, 0, 0, 299,
2094 0, 0, 0, 0, 130, 131, 130, 0, 0, 0,
2095 0, 0, 0, 328, 67, 304, 305, 299, 0, 326,
2096 67, 211, 0, 0, 0, 0, 191, 0, 0, 0,
2097 0, 202, 300, 176, 0, 0, 67, 132, 138, 136,
2098 64, 240, 242, 116, 133, 0, 0, 0, 116, 116,
2099 0, 306, 307, 308, 309, 322, 324, 301, 0, 0,
2100 311, 314, 315, 300, 0, 130, 0, 0, 0, 0,
2101 0, 199, 0, 0, 0, 193, 194, 190, 65, 134,
2102 128, 265, 0, 0, 0, 0, 124, 0, 293, 0,
2103 331, 124, 327, 195, 196, 197, 198, 0, 0, 0,
2104 203, 239, 0, 126, 0, 286, 0, 0, 107, 109,
2105 116, 116, 0, 116, 116, 294, 317, 192, 200, 201,
2106 129, 0, 245, 284, 0, 285, 0, 296, 295, 0,
2107 0, 0, 127, 0, 0, 0, 116, 116, 0, 0,
2108 0, 298, 297, 291, 0, 0, 290, 0, 287
20952109 };
20962110
20972111 /* YYDEFGOTO[NTERM-NUM]. */
20982112 static const yytype_int16 yydefgoto[] =
20992113 {
2100 -1, 268, 269, 270, 295, 312, 162, 163, 79, 552,
2114 -1, 272, 273, 274, 299, 316, 162, 163, 79, 571,
21012115 113, 12, 80, 14, 15, 41, 42, 43, 48, 54,
2102 118, 128, 343, 231, 426, 346, 629, 610, 401, 504,
2103 589, 450, 505, 81, 164, 137, 154, 138, 139, 110,
2104 365, 387, 366, 121, 88, 155, 16, 17, 18, 20,
2105 19, 375, 427, 428, 63, 23, 61, 101, 453, 454,
2106 129, 170, 55, 96, 56, 49, 456, 388, 83, 390,
2107 278, 279, 57, 92, 93, 225, 614, 132, 320, 561,
2108 469, 226, 227, 228, 229
2116 118, 128, 349, 233, 436, 352, 652, 633, 409, 520,
2117 610, 462, 521, 81, 164, 137, 154, 138, 139, 110,
2118 373, 395, 374, 121, 88, 155, 16, 17, 18, 20,
2119 19, 383, 437, 438, 63, 23, 61, 101, 465, 466,
2120 129, 170, 55, 96, 56, 49, 468, 396, 83, 398,
2121 282, 283, 57, 92, 93, 227, 637, 132, 324, 580,
2122 481, 228, 229, 230, 231
21092123 };
21102124
21112125 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
21122126 STATE-NUM. */
2113 #define YYPACT_NINF -560
2127 #define YYPACT_NINF -578
21142128 static const yytype_int16 yypact[] =
21152129 {
2116 590, -560, -560, -560, -560, -560, -560, -560, 9, -119,
2117 23, -66, 80, -43, -1, -560, 132, 897, -560, 131,
2118 219, 16, 43, -560, 48, 203, -560, 1564, -560, -560,
2119 -560, -560, -560, -560, -560, -560, -560, -560, -560, -560,
2120 -560, -6, -6, 230, -560, -560, -560, -560, -6, -560,
2121 -560, -560, -560, -560, -6, 211, -560, -10, 223, 234,
2122 246, -560, -560, -560, -560, -560, 119, -560, -560, -560,
2123 -560, -560, -560, -560, -560, 289, 296, 2, 227, -560,
2124 -560, -560, 3, -560, 266, 266, 247, -560, 34, 121,
2125 121, -560, -560, 233, -560, -560, -560, -560, -560, -560,
2126 -560, 67, 1400, -560, 146, 151, 830, 119, -560, 3,
2127 -102, 171, 1400, 159, 34, 34, -560, -560, 1441, -560,
2128 -560, 1682, 322, -560, -560, -560, -560, -560, 1723, -560,
2129 -16, 1902, -560, 306, -560, -560, 3, -560, 172, 176,
2130 1741, 1741, 168, -101, 1741, -560, 332, 182, -560, 1682,
2131 1741, 119, 184, 3, 252, -560, 102, 335, 339, 340,
2132 343, 345, 106, 346, 1164, 303, -560, 213, -560, -560,
2133 -560, -560, -560, 302, 1764, 52, 349, 121, -560, -560,
2134 -560, -560, -560, -560, -560, -560, -560, -560, -560, -560,
2135 -560, -560, -560, -560, -560, 591, 440, 591, 440, 1741,
2136 1741, 1741, 1741, -560, -560, -560, -560, -560, -560, -560,
2137 -560, -560, -560, -560, -560, 1741, 1741, 1741, 1741, 1741,
2138 1741, 1741, 1741, 1741, 1741, -560, 121, -560, 36, -560,
2139 -560, 200, 1461, -560, -20, -37, -560, 198, 3, 215,
2140 -560, 303, 4, 1441, -560, -560, -560, -560, -560, -560,
2141 -560, -560, -560, -560, -560, 591, 440, 591, 440, 217,
2142 218, 220, 222, 224, 1482, 1782, 1061, 351, 225, 226,
2143 237, -560, -560, -560, 240, -560, 119, 742, -560, 231,
2144 884, 884, -560, 884, 1723, -560, -560, -560, -560, -560,
2145 -560, -560, -560, -560, -560, 1741, -560, -560, -560, -560,
2146 -560, -560, -560, -560, -560, -560, -560, -560, -560, -560,
2147 -560, -560, 1741, 1741, 1741, -21, 24, -560, 742, -35,
2148 238, 241, 249, 254, 255, 256, 742, 742, 742, 366,
2149 1723, 1741, 1741, 373, -560, -560, -560, -560, -560, -560,
2150 -560, -560, -560, -560, -560, -560, 175, -560, -560, -560,
2151 -560, 175, -560, 159, 371, 260, 261, 262, 263, 1682,
2152 1682, 1682, 1682, 1682, -560, -560, 91, 1105, -96, -560,
2153 -69, -560, 1682, 1682, 1682, 264, 1502, -560, -560, -560,
2154 -560, -560, -560, -560, -560, 359, 1682, -560, -560, -560,
2155 -560, 1741, 265, -560, 267, 884, 742, 742, 742, 742,
2156 21, -560, 40, -560, -560, 884, 272, 1741, 1741, 1741,
2157 1741, 1741, 268, 269, 270, 1741, 884, 742, 276, -560,
2158 -560, -560, -560, -560, -560, -560, -560, 264, 264, 1741,
2159 1682, 1682, 1682, 1682, -560, 277, 280, 281, 282, 1682,
2160 -560, 259, 1015, -62, -560, -560, 287, 290, 408, 19,
2161 -560, -560, 3, 291, 294, -560, 428, -61, -560, 434,
2162 435, 299, 297, 301, 304, 305, 884, 452, 884, 307,
2163 308, 884, 311, 3, -560, 312, 313, 455, 884, 884,
2164 3, 309, 319, 1741, -560, -560, -15, 320, 325, 326,
2165 327, 137, 1682, 1682, 1682, 1682, -560, -560, 321, 1682,
2166 1682, 1741, 438, 482, -560, 264, 386, 1523, -560, 334,
2167 -560, 884, 884, 1805, 884, 884, 884, 884, 319, -560,
2168 319, 1741, 884, 336, 1741, 1741, 1741, -560, -560, -560,
2169 1805, 443, -560, 742, -560, 1682, 1682, 1682, 1682, -560,
2170 337, 347, 344, 348, -560, 354, 355, 15, -560, -560,
2171 -560, -560, -560, -560, 3, -18, 470, 356, 352, 5,
2172 3, 156, -560, -560, -560, -560, -560, -560, -560, 341,
2173 884, -560, -560, -560, 163, 319, 360, 362, 365, 369,
2174 1682, -560, 1682, 1682, -560, -560, -560, 386, -560, 457,
2175 -560, 497, -7, 577, 577, -560, 1846, -560, 372, -560,
2176 -560, -560, -560, -560, -560, 380, 382, 383, -560, 517,
2177 404, 884, -560, 1307, -2, 401, 402, -560, -560, 82,
2178 5, 3, -560, 175, -560, -560, -560, -560, 540, -560,
2179 -560, 406, -560, 1307, 200, 200, 547, 577, 577, -560,
2180 548, 409, 884, -560, -560, 884, 551, 496, 200, 200,
2181 -560, 884, 554, -560, 884, -560
2130 348, -578, -578, -578, -578, -578, -578, -578, 42, -145,
2131 -8, -70, 59, -15, -2, -578, 154, 1288, -578, 155,
2132 317, 4, 24, -578, -4, 157, -578, 1678, -578, -578,
2133 -578, -578, -578, -578, -578, -578, -578, -578, -578, -578,
2134 -578, 133, 133, 203, -578, -578, -578, -578, 133, -578,
2135 -578, -578, -578, -578, 133, 183, -578, -5, 191, 194,
2136 204, -578, -578, -578, -578, -578, 73, -578, -578, -578,
2137 -578, -578, -578, -578, -578, 235, 238, 11, 244, -578,
2138 -578, -578, 87, -578, 212, 212, 261, -578, 100, 321,
2139 321, -578, -578, 250, -578, -578, -578, -578, -578, -578,
2140 -578, -47, 50, -578, 102, 107, 787, 73, -578, 87,
2141 -81, 141, 50, 129, 100, 100, -578, -578, 1362, -578,
2142 -578, 1722, 303, -578, -578, -578, -578, -578, 1780, -578,
2143 -17, 2004, -578, 302, -578, -578, 87, -578, 173, 189,
2144 1840, 1840, 181, -61, 1840, -578, 346, 200, -578, 1722,
2145 1840, 73, 195, 87, 294, -578, 79, 360, 365, 371,
2146 372, 385, 272, 388, 1425, 343, -578, 30, -578, -578,
2147 -578, -578, -578, 344, 1858, 220, 391, 321, -578, -578,
2148 -578, -578, -578, -578, -578, -578, -578, -578, -578, -578,
2149 -578, -578, -578, -578, -578, 668, 443, 668, 443, 1840,
2150 1840, 1840, 1840, -578, -578, -578, -578, -578, -578, -578,
2151 -578, -578, -578, -578, -578, 1840, 1840, 1840, 1840, 1840,
2152 1840, 1840, 1840, 1840, 1840, 1840, 1840, -578, 321, -578,
2153 53, -578, -578, 178, 1560, -578, -20, -27, -578, 241,
2154 87, 253, -578, 343, 16, 1362, -578, -578, -578, -578,
2155 -578, -578, -578, -578, -578, -578, -578, 668, 443, 668,
2156 443, 258, 264, 268, 275, 278, 280, 281, 1601, 1887,
2157 1046, 395, 282, 284, 287, -578, -578, -578, 288, -578,
2158 73, 996, -578, 266, 1140, 1140, -578, 1140, 1780, -578,
2159 -578, -578, -578, -578, -578, -578, -578, -578, -578, 1840,
2160 -578, -578, -578, -578, -578, -578, -578, -578, -578, -578,
2161 -578, -578, -578, -578, -578, -578, 1840, 1840, 1840, 68,
2162 85, -578, 996, -25, 271, 286, 289, 290, 291, 299,
2163 996, 996, 996, 996, 996, 408, 1780, 1840, 1840, 455,
2164 -578, -578, -578, -578, -578, -578, -578, -578, -578, -578,
2165 -578, -578, 188, -578, -578, -578, -578, 188, -578, 129,
2166 409, 304, 305, 306, 308, 1722, 1722, 1722, 1722, 1722,
2167 1722, 1722, -578, -578, 89, 1087, -58, -578, -48, -578,
2168 1722, 1722, 1722, 313, 1619, -578, -578, -578, -578, -578,
2169 -578, -578, -578, 412, 1722, -578, -578, -578, -578, 1840,
2170 315, -578, 316, 1140, 996, 996, 996, 996, 27, -578,
2171 37, -578, -578, 1140, 322, 1840, 1840, 1840, 1840, 1840,
2172 319, -578, 324, 326, 327, 1840, 1140, 996, 329, -578,
2173 -578, -578, -578, -578, -578, -578, -578, 313, 313, 1840,
2174 1722, 1722, 1722, 1722, -578, 330, 331, 333, 335, -578,
2175 336, 1722, -578, 332, 1274, -40, -578, -578, 337, 341,
2176 463, 21, -578, -578, 87, 345, 349, -578, 480, 22,
2177 -578, 488, 490, 352, 350, 351, 353, 354, 1140, 513,
2178 1140, 359, 361, 1140, 364, 87, -578, 366, 373, 515,
2179 359, 1840, 1140, 1140, 87, 368, 375, 1840, -578, -578,
2180 -1, 376, 377, 380, 381, 147, 1722, 1722, 1722, 1722,
2181 176, 1722, -578, -578, 392, 1722, 1722, 1840, 519, 538,
2182 -578, 313, 274, 1660, -578, 398, -578, 1140, 1140, 1905,
2183 1140, 1140, 1140, 1140, 375, -578, 375, 1840, 1140, 400,
2184 1840, 1840, 1840, -578, 996, -578, -578, 1905, 506, -578,
2185 996, -578, 1722, 1722, 1722, 1722, -578, 402, 405, 406,
2186 407, -578, -578, -578, 410, 413, 49, -578, -578, -578,
2187 -578, -578, -578, 87, -16, 547, 414, 419, 90, 87,
2188 206, -578, -578, -578, -578, -578, -578, -578, 411, 1140,
2189 -578, -578, -578, -578, 269, 375, 415, 417, 425, 427,
2190 1722, -578, 1722, 1722, 276, -578, -578, -578, 274, -578,
2191 517, -578, 568, 1, 849, 849, -578, 1946, -578, 422,
2192 359, -578, -578, -578, -578, -578, -578, 430, 431, 432,
2193 -578, -578, 586, 444, 1140, -578, 621, 3, 442, 447,
2194 -578, -578, 18, 90, 87, -578, 188, -578, -578, -578,
2195 -578, 577, -578, -578, 441, -578, 621, 178, 178, 587,
2196 849, 849, -578, 588, 448, 1140, -578, -578, 1140, 589,
2197 539, 178, 178, -578, 1140, 594, -578, 1140, -578
21822198 };
21832199
21842200 /* YYPGOTO[NTERM-NUM]. */
21852201 static const yytype_int16 yypgoto[] =
21862202 {
2187 -560, 441, 442, 444, -174, -167, -173, -560, 0, -13,
2188 -141, 483, 13, -560, -560, -560, -560, 30, -560, -560,
2189 -560, -139, -560, -416, -560, -238, -560, -560, -311, 22,
2190 -560, -406, -560, -560, -26, 350, -120, -560, 471, 485,
2191 -64, -157, -251, 100, 194, 363, -560, -560, 571, -560,
2192 -560, -560, -560, -560, -560, -560, -560, -560, -560, -560,
2193 499, -560, -560, -560, -560, -560, -560, -559, -115, 162,
2194 -191, -560, -560, 535, -560, -560, -560, -560, -560, 63,
2195 160, -560, -560, -560, -560
2203 -578, 482, 484, 485, -163, -161, -174, -578, 0, 12,
2204 -97, 525, 10, -578, -578, -578, -578, 267, -578, -578,
2205 -578, -138, -578, -457, -578, -239, -578, -578, -311, 45,
2206 -578, -412, -578, -578, -26, 387, -122, -578, 510, 521,
2207 86, -159, -237, 222, 257, 383, -578, -578, 612, -578,
2208 -578, -578, -578, -578, -578, -578, -578, -578, -578, -578,
2209 541, -578, -578, -578, -578, -578, -578, -577, -51, 246,
2210 -197, -578, -578, 575, -578, -578, -578, -578, -578, 88,
2211 -413, -578, -578, -578, -578
21962212 };
21972213
21982214 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
21992215 positive, shift that token. If negative, reduce the rule which
22002216 number is the opposite. If zero, do what YYDEFACT says.
22012217 If YYTABLE_NINF, syntax error. */
2202 #define YYTABLE_NINF -212
2218 #define YYTABLE_NINF -214
22032219 static const yytype_int16 yytable[] =
22042220 {
2205 11, 82, 351, 283, 282, 403, 105, 271, 167, 282,
2206 317, 91, 168, 13, 368, 370, 502, 11, 111, 94,
2207 111, 484, 485, 313, 273, 321, 322, 323, 324, 325,
2208 13, 314, 466, 329, 111, 111, 506, 24, 284, 244,
2209 111, 29, 30, 31, 32, 33, 34, 35, 36, 272,
2210 37, 468, 109, 502, 631, 144, 144, 165, 111, 111,
2211 -145, 439, 21, 280, 145, 237, 119, 120, 444, 281,
2212 111, 84, 85, 503, 641, 467, 136, 22, 89, 111,
2213 109, 355, 25, 357, 90, 241, 136, 330, 439, 356,
2214 26, 358, 153, 11, 467, 439, 439, 445, 27, 550,
2215 352, 353, 153, 510, 498, -55, -55, -55, -55, 247,
2216 248, 249, 250, 28, 234, 235, 443, 112, 238, 112,
2217 636, 420, 421, 422, 242, 405, 423, 348, 245, 246,
2218 424, 425, 44, 112, 112, 457, 400, -67, 587, 112,
2219 534, 418, 347, 593, 594, 38, 39, 40, 277, 169,
2220 38, 39, 40, 331, 332, 612, 95, 112, 112, -145,
2221 632, -67, 389, -145, 395, 389, 389, 106, 389, 112,
2222 586, 532, 58, 315, 316, 277, 318, 46, 112, 47,
2223 274, 402, -67, 122, 123, 124, 125, 126, 127, 319,
2224 277, 277, 277, 277, 277, 326, 327, 328, 277, 59,
2225 458, 634, 635, 389, 637, 638, 136, 566, 60, 567,
2226 416, 389, 389, 389, 149, 150, 472, 153, 474, 475,
2227 476, 420, 421, 422, 133, 62, 423, 648, 649, 134,
2228 424, 425, 91, 2, 64, 65, 4, 107, 67, 68,
2229 69, 70, 71, 72, 73, 98, 1, 2, 439, 3,
2230 4, 5, 1, 440, 333, 3, 99, 5, 153, 64,
2231 65, 50, 51, 52, 600, 86, 53, 87, 100, 396,
2232 555, 1, 2, 102, 3, 4, 5, 74, 114, 115,
2233 389, 389, 389, 389, 389, 271, 397, 398, 399, 116,
2234 389, 117, 539, 103, 521, 434, 435, 436, 437, 438,
2235 104, 389, 389, 87, 153, 417, 277, 140, 446, 447,
2236 448, 595, 141, 596, 420, 421, 422, 148, 599, 423,
2237 596, 334, 335, 424, 425, 146, 166, 272, 230, 232,
2238 568, 233, 236, 571, 572, 573, 239, 240, 243, 336,
2239 337, 442, 338, 339, -56, 340, 341, 342, -57, -60,
2240 452, 389, -59, 389, -58, 251, 389, 619, 111, 275,
2241 282, 623, 349, 389, 389, 277, 487, 488, 489, 490,
2242 350, 359, 360, 371, 361, 496, 362, 419, 363, 372,
2243 373, 277, 473, 277, 277, 277, 75, 76, 391, 480,
2244 77, 374, 78, 108, 376, 406, 389, 389, 407, 389,
2245 389, 389, 389, 486, 415, 1, 408, 389, 3, 429,
2246 5, 409, 410, 411, 430, 431, 432, 433, 389, 613,
2247 455, 449, 459, 497, 460, 477, 478, 479, 540, 541,
2248 542, 543, 471, 483, 492, 545, 546, 493, 494, 495,
2249 333, 633, 392, 393, 499, 394, 501, 500, 507, 508,
2250 509, 511, 512, 513, 514, 389, 519, 533, 515, 527,
2251 548, 516, 517, 530, 521, 522, 296, 297, 524, 525,
2252 526, 576, 577, 578, 579, 547, 531, 535, 389, 389,
2253 404, 554, 536, 537, 538, 544, 549, 560, 412, 413,
2254 414, 556, 590, 570, 580, 277, 389, 467, 277, 277,
2255 277, 582, 581, 597, 560, 583, 551, 334, 335, 584,
2256 585, 609, 592, 591, 611, 601, 605, 602, 606, 607,
2257 603, 627, 389, 389, 604, 336, 337, 389, 338, 339,
2258 389, 340, 341, 342, 622, 624, 389, 625, 626, 389,
2259 298, 299, 300, 301, 302, 303, 304, 305, 306, 307,
2260 308, 309, 310, 311, 628, -18, -19, 461, 462, 463,
2261 464, 465, 639, 640, 642, 645, 646, 470, 651, 652,
2262 621, 654, 222, 223, 608, 224, 131, 588, 481, 482,
2263 377, 378, 345, 147, 64, 65, 379, 551, 45, 130,
2264 -211, 143, 97, 574, 491, 0, 1, 2, 0, 3,
2265 4, 5, 380, 381, 382, 0, 354, 0, -69, 1,
2266 2, 0, 3, 4, 5, 0, 0, 383, 384, 0,
2267 6, 7, 0, 0, 0, 0, 0, 0, 518, 0,
2268 520, 333, 0, 523, 0, 0, 385, 0, 0, 0,
2269 528, 529, 8, 0, 0, 0, 9, 0, 0, 0,
2270 10, 0, 180, 181, 182, 183, 184, 185, 186, 187,
2271 188, 189, 190, 191, 192, 193, 194, 255, 256, 257,
2272 258, 0, 0, 557, 558, 0, 562, 563, 564, 565,
2273 0, 0, 0, 0, 569, 285, 286, 287, 288, 289,
2274 290, 291, 292, 293, 294, 575, 259, 203, 615, 616,
2275 206, 207, 208, 209, 210, 211, 212, 213, 214, 0,
2276 260, 0, 261, 262, 263, 0, 336, 337, 0, 338,
2277 339, 0, 340, 341, 342, 0, 0, 0, 0, 0,
2278 0, 0, 598, 0, 0, 0, 0, 0, 0, 0,
2279 386, 0, 0, 0, 0, 377, 378, 0, 0, 64,
2280 65, 379, 0, 0, 0, 617, 618, 0, 0, 0,
2281 0, 1, 2, 0, 3, 4, 5, 380, 381, 382,
2282 0, 0, 0, 630, 0, 0, 0, 0, 0, 0,
2283 0, 0, 383, 384, 0, 0, 0, 0, 0, 0,
2284 0, 0, 0, 0, 0, 0, 0, 111, 0, 643,
2285 644, 385, 0, 0, 647, 0, 0, 650, 0, 0,
2286 0, 0, 0, 653, 0, 0, 655, 180, 181, 182,
2287 183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
2288 193, 194, 255, 256, 257, 258, 0, 64, 65, 0,
2221 11, 82, 287, 357, 321, 275, 167, 522, 490, 411,
2222 13, 168, 286, 24, 286, 105, 91, 11, 518, 325,
2223 326, 327, 328, 329, 94, 498, 499, 13, 111, 335,
2224 111, 505, 376, 378, 317, 111, 510, 318, 478, 288,
2225 29, 30, 31, 32, 33, 34, 35, 36, 480, 37,
2226 2, 25, 109, 4, 111, 518, 659, 64, 65, 654,
2227 107, 67, 68, 69, 70, 71, 72, 73, 277, 1,
2228 2, 111, 3, 4, 5, 519, 136, 27, 144, 664,
2229 109, 479, -55, -55, -55, -55, 136, 145, 26, 135,
2230 336, 479, 153, 11, 361, 21, 363, 362, 144, 364,
2231 74, 451, 153, 246, 111, 247, 248, 239, 456, 569,
2232 22, 451, 133, 276, 236, 237, 608, 134, 240, 451,
2233 457, 614, 615, 111, 244, 430, 431, 432, 514, 112,
2234 433, 112, 119, 120, 434, 435, 112, 413, 455, 354,
2235 111, 428, 111, 28, 353, -145, 358, 359, 281, 604,
2236 169, 38, 39, 40, 44, 112, 551, 469, 60, 430,
2237 431, 432, 58, 95, 433, 635, 403, 655, 434, 435,
2238 337, 338, 112, 319, 320, 281, 322, 278, 106, 62,
2239 620, 451, 59, 657, 658, 549, 660, 661, 526, 323,
2240 281, 281, 281, 281, 281, 330, 331, 332, 333, 334,
2241 281, 46, 470, 47, 91, 112, 607, 165, 136, 671,
2242 672, 75, 76, 98, 426, 77, 99, 78, 484, 153,
2243 486, 487, 488, 585, 112, 586, 100, 408, -67, 102,
2244 397, 284, 339, 397, 397, 243, 397, 285, 86, 103,
2245 87, 112, 104, 112, 410, -67, -145, -67, 451, 87,
2246 -145, 64, 65, 452, 107, 67, 68, 69, 70, 71,
2247 72, 73, 153, 1, 2, 140, 3, 4, 5, 1,
2248 141, 397, 3, 404, 5, 249, 250, 251, 252, 397,
2249 397, 397, 397, 397, 622, 574, 38, 39, 40, 148,
2250 405, 406, 407, 1, 74, 275, 3, 146, 5, 340,
2251 341, 64, 65, 116, 556, 117, 537, 166, 84, 85,
2252 153, 427, 281, 1, 2, 89, 3, 4, 5, 342,
2253 343, 90, 344, 345, 232, 346, 347, 348, 339, 430,
2254 431, 432, 234, 561, 433, 537, 149, 150, 434, 435,
2255 587, 114, 115, 590, 591, 592, 235, 238, -213, 454,
2256 241, 245, 397, 397, 397, 397, 397, 242, 464, 50,
2257 51, 52, 397, 616, 53, 617, -69, 1, 2, -56,
2258 3, 4, 5, 281, -57, 397, 397, 642, 6, 7,
2259 -60, -59, 646, 122, 123, 124, 125, 126, 127, 281,
2260 485, 281, 281, 281, -58, 340, 341, 253, 111, 494,
2261 8, 279, 286, 276, 9, 75, 76, 355, 10, 77,
2262 356, 78, 108, 500, 365, 342, 343, 379, 344, 345,
2263 366, 346, 347, 348, 367, 399, 621, 397, 617, 397,
2264 414, 368, 397, 630, 369, 537, 370, 371, 380, 636,
2265 381, 397, 397, 382, 384, 415, 425, 439, 416, 417,
2266 418, 444, 445, 446, 447, 448, 449, 450, 419, 429,
2267 440, 441, 442, 656, 443, 544, 458, 459, 460, 300,
2268 301, 550, 461, 467, 471, 472, 397, 397, 489, 397,
2269 397, 397, 397, 491, 483, 492, 493, 397, 497, 506,
2270 507, 566, 508, 397, 509, 511, 515, 573, 513, 397,
2271 516, 517, 525, 579, 523, 527, 524, 528, 529, 530,
2272 531, 281, 532, 533, 281, 281, 281, 535, 537, 543,
2273 538, 579, 570, 540, 547, 541, 501, 502, 503, 504,
2274 400, 401, 542, 402, 548, 552, 553, 512, 397, 554,
2275 555, 567, 568, 302, 303, 304, 305, 306, 307, 308,
2276 309, 310, 311, 312, 313, 314, 315, 575, 563, 589,
2277 479, 600, 601, 397, 397, 602, 603, 605, 412, 611,
2278 606, 632, 623, 612, 624, 618, 420, 421, 422, 423,
2279 424, 613, 625, 397, 626, 634, 645, 647, 648, 649,
2280 650, 644, 557, 558, 559, 560, 651, 562, -18, 662,
2281 663, 564, 565, -19, 665, 668, 674, 669, 570, 397,
2282 397, 677, 675, 224, 397, 225, 226, 397, 131, 609,
2283 631, 351, 147, 397, 385, 386, 397, 143, 360, 45,
2284 387, 130, 97, 0, 0, 594, 0, 0, 596, 597,
2285 598, 599, 0, 0, 0, 0, 388, 389, 390, 473,
2286 474, 475, 476, 477, 0, 0, 0, 0, 0, 482,
2287 0, 391, 392, 0, 0, 0, 0, 0, 0, 0,
2288 0, 0, 495, 496, 0, 0, 0, 0, 0, 0,
2289 393, 0, 0, 0, 0, 0, 627, 0, 628, 629,
2290 0, 0, 0, 0, 0, 0, 180, 181, 182, 183,
2291 184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
2292 194, 257, 258, 259, 260, 0, 0, 0, 0, 0,
2293 0, 0, 0, 0, 534, 0, 536, 0, 0, 539,
2294 0, 0, 0, 0, 0, 0, 0, 0, 545, 546,
2295 261, 203, 204, 205, 206, 207, 208, 209, 210, 211,
2296 212, 213, 214, 0, 262, 0, 263, 264, 265, 0,
2297 266, 267, 289, 290, 291, 292, 293, 294, 295, 296,
2298 297, 298, 0, 576, 577, 0, 581, 582, 583, 584,
2299 0, 0, 0, 0, 588, 0, 394, 0, 0, 0,
2300 593, 0, 0, 0, 64, 65, 595, 107, 67, 68,
2301 69, 70, 71, 72, 73, 0, 1, 2, 0, 3,
2302 4, 5, 0, 0, 0, 0, 0, 0, 0, 0,
2303 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2304 0, 0, 0, 0, 0, 619, 0, 74, 0, 0,
2305 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2306 0, 0, 385, 386, 0, 0, 64, 65, 387, 0,
2307 640, 641, 0, 0, 0, 0, 0, 0, 1, 2,
2308 0, 3, 4, 5, 388, 389, 390, 0, 0, 0,
2309 653, 0, 0, 0, 0, 0, 0, 0, 0, 391,
2310 392, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2311 0, 0, 0, 339, 0, 0, 666, 667, 393, 0,
2312 0, 670, 0, 0, 673, 0, 0, 0, 0, 0,
2313 676, 0, 0, 678, 180, 181, 182, 183, 184, 185,
2314 186, 187, 188, 189, 190, 191, 192, 193, 194, 257,
2315 258, 259, 260, 0, 0, 0, 0, 0, 75, 76,
2316 0, 0, 77, 0, 78, 142, 0, 0, 0, 0,
2317 0, 0, 0, 0, 0, 0, 0, 0, 261, 203,
2318 638, 639, 206, 207, 208, 209, 210, 211, 212, 213,
2319 214, 0, 262, 0, 263, 264, 265, 0, 266, 267,
2320 342, 343, 0, 344, 345, 0, 346, 347, 348, 385,
2321 386, 0, 0, 64, 65, 387, 0, 0, 0, 0,
2322 0, 0, 0, 0, 394, 1, 2, 0, 3, 4,
2323 5, 388, 389, 390, 0, 0, 0, 0, 0, 0,
2324 0, 0, 0, 0, 0, 0, 391, 392, 0, 0,
2325 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2326 0, 111, 0, 64, 65, 393, 107, 156, 157, 158,
2327 159, 160, 161, 73, 0, 1, 2, 0, 3, 4,
2328 5, 180, 181, 182, 183, 184, 185, 186, 187, 188,
2329 189, 190, 191, 192, 193, 194, 257, 258, 259, 260,
2330 0, 0, 0, 0, 64, 65, 74, 107, 156, 157,
2331 158, 159, 160, 161, 73, 0, 1, 2, 0, 3,
2332 4, 5, 0, 0, 0, 261, 203, 204, 205, 206,
2333 207, 208, 209, 210, 211, 212, 213, 214, 0, 262,
2334 0, 263, 264, 265, 0, 266, 267, 74, 0, 0,
2335 0, 0, 0, 385, 386, 0, 0, 64, 65, 387,
2336 0, 0, 112, 0, 0, 0, 0, 0, 0, 1,
2337 2, 394, 3, 4, 5, 388, 389, 390, 0, 0,
2338 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2339 391, 392, 0, 0, 0, 0, 0, 0, 0, 0,
2340 0, 0, 0, 0, 0, 0, 0, 0, 0, 393,
2341 0, 0, 0, 0, 0, 0, 0, 75, 76, 0,
2342 0, 77, 0, 78, 377, 180, 181, 182, 183, 184,
2343 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
2344 257, 258, 259, 260, 0, 0, 0, 0, 0, 0,
2345 0, 0, 0, 0, 0, 0, 0, 0, 75, 76,
2346 0, 0, 77, 0, 78, 453, 0, 0, 0, 261,
2347 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
2348 213, 214, 0, 262, 0, 263, 264, 265, 0, 266,
2349 267, 64, 65, 0, 0, 0, 0, 0, -212, 0,
2350 0, 0, 0, 1, 2, 0, 3, 4, 5, 254,
2351 0, 0, 0, 0, 0, 394, -69, 1, 2, 0,
2352 3, 4, 5, 0, 255, 256, 0, 0, 6, 7,
2353 0, 0, 0, 0, 0, 0, 0, 0, 0, 111,
2354 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2355 8, 0, 0, 0, 9, 0, 0, 0, 10, 180,
2356 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
2357 191, 192, 193, 194, 257, 258, 259, 260, 0, 64,
2358 65, 0, 151, 67, 68, 69, 70, 71, 72, 73,
2359 0, 1, 2, 0, 3, 4, 5, 0, 0, 0,
2360 0, 0, 0, 261, 203, 204, 205, 206, 207, 208,
2361 209, 210, 211, 212, 213, 214, 0, 262, 0, 263,
2362 264, 265, 74, 266, 267, 0, 0, 0, 0, 0,
2363 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2364 112, 0, 64, 65, -67, 0, 268, 0, 0, 269,
2365 0, 270, 0, 271, 1, 2, 0, 3, 4, 5,
2366 254, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2367 0, 0, 0, 0, 0, 255, 256, 0, 0, 0,
2368 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2369 111, 0, 0, 0, 0, 0, 0, 152, 0, 0,
2370 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2371 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
2372 190, 191, 192, 193, 194, 257, 258, 259, 260, 0,
2373 0, 0, 0, 75, 76, 0, 0, 77, 0, 78,
2374 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2375 0, 0, 0, 0, 261, 203, 204, 205, 206, 207,
2376 208, 209, 210, 211, 212, 213, 214, 0, 262, 0,
2377 263, 264, 265, 0, 266, 267, 0, 64, 65, 0,
22892378 107, 67, 68, 69, 70, 71, 72, 73, 0, 1,
2290 2, 0, 3, 4, 5, 0, 0, 0, 0, 0,
2291 0, 259, 203, 204, 205, 206, 207, 208, 209, 210,
2292 211, 212, 213, 214, 0, 260, 0, 261, 262, 263,
2293 74, 0, 0, 0, 0, 0, 0, 377, 378, 0,
2294 0, 64, 65, 379, 0, 0, 112, -210, 0, 0,
2295 0, 0, 0, 1, 2, 386, 3, 4, 5, 380,
2296 381, 382, 0, 0, 0, -69, 1, 2, 0, 3,
2297 4, 5, 0, 0, 383, 384, 0, 6, 7, 0,
2298 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2299 0, 0, 0, 385, 0, 0, 0, 0, 0, 8,
2300 0, 0, 0, 9, 0, 0, 0, 10, 0, 180,
2301 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
2302 191, 192, 193, 194, 255, 256, 257, 258, 0, 0,
2303 0, 0, 0, 0, 0, 0, 0, 0, 0, 75,
2304 76, 0, 0, 77, 0, 78, 142, 0, 0, 0,
2305 0, 0, 0, 259, 203, 204, 205, 206, 207, 208,
2306 209, 210, 211, 212, 213, 214, 0, 260, 0, 261,
2307 262, 263, 64, 65, 0, 0, 0, 0, 0, 0,
2308 0, 0, 0, 0, 1, 2, 0, 3, 4, 5,
2309 252, 0, 0, 0, 0, 0, 0, 386, 0, 0,
2310 0, 0, 0, 0, 0, 253, 254, 0, 0, 0,
2379 2, 112, 3, 4, 5, 0, 0, 268, 0, 0,
2380 269, 0, 270, 0, 271, 0, 0, 0, 0, 350,
23112381 0, 0, 0, 0, 0, 0, 0, 0, 64, 65,
2312 111, 107, 156, 157, 158, 159, 160, 161, 73, 0,
2313 1, 2, 0, 3, 4, 5, 0, 0, 0, 0,
2314 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
2315 190, 191, 192, 193, 194, 255, 256, 257, 258, 0,
2316 0, 74, 64, 65, 0, 107, 156, 157, 158, 159,
2317 160, 161, 73, 0, 1, 2, 0, 3, 4, 5,
2318 0, 0, 0, 0, 259, 203, 204, 205, 206, 207,
2319 208, 209, 210, 211, 212, 213, 214, 0, 260, 0,
2320 261, 262, 263, 0, 0, 74, 0, 0, 0, 0,
2321 0, 0, 0, 0, 0, 0, 0, 0, 0, 112,
2322 0, 64, 65, -67, 0, 264, 0, 0, 265, 0,
2323 266, 0, 267, 1, 2, 0, 3, 4, 5, 252,
2324 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2325 0, 0, 0, 0, 253, 254, 0, 0, 0, 0,
2326 0, 0, 0, 0, 0, 0, 0, 0, 0, 111,
2327 75, 76, 0, 0, 77, 0, 78, 369, 0, 0,
2328 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
2329 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
2330 191, 192, 193, 194, 255, 256, 257, 258, 0, 0,
2331 0, 0, 0, 0, 75, 76, 0, 0, 77, 0,
2332 78, 441, 0, 0, 0, 0, 0, 0, 0, 0,
2333 0, 0, 0, 259, 203, 204, 205, 206, 207, 208,
2334 209, 210, 211, 212, 213, 214, 0, 260, 0, 261,
2335 262, 263, 0, 0, 0, 0, 0, 0, 0, 0,
2336 377, 378, 0, 0, 0, 0, 379, 0, 112, 0,
2337 0, 0, 0, 0, 264, 0, 0, 265, 0, 266,
2338 0, 267, 380, 381, 382, 0, 0, 0, 0, 0,
2339 0, 0, 0, 0, 0, 0, 0, 383, 384, 0,
2340 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2341 0, 0, 0, 0, 0, 0, 385, 0, 0, 0,
2342 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2343 0, 0, 180, 181, 182, 183, 184, 185, 186, 187,
2344 188, 189, 190, 191, 192, 193, 194, 255, 256, 257,
2345 258, 0, 0, 0, 0, 0, 0, 64, 65, 0,
2382 74, 107, 156, 157, 158, 159, 160, 161, 73, 0,
2383 1, 2, 0, 3, 4, 5, 64, 65, 0, 107,
2384 67, 68, 69, 70, 71, 72, 73, 0, 1, 2,
2385 0, 3, 4, 5, 0, 0, 0, 0, 0, 0,
2386 0, 74, 0, 0, 0, 0, 0, 0, 463, 0,
2387 0, 0, 0, 0, 0, 0, 0, 64, 65, 74,
23462388 107, 67, 68, 69, 70, 71, 72, 73, 0, 1,
2347 2, 0, 3, 4, 5, 0, 259, 203, 204, 205,
2348 206, 207, 208, 209, 210, 211, 212, 213, 214, 135,
2349 260, 0, 261, 262, 263, 0, 0, 0, 64, 65,
2350 74, 151, 67, 68, 69, 70, 71, 72, 73, 0,
2351 1, 2, 0, 3, 4, 5, 0, 0, 64, 65,
2352 386, 107, 67, 68, 69, 70, 71, 72, 73, 0,
2353 1, 2, 0, 3, 4, 5, 0, 0, 0, 64,
2354 65, 74, 107, 156, 157, 158, 159, 160, 161, 73,
2355 344, 1, 2, 0, 3, 4, 5, 0, 0, 64,
2356 65, 74, 107, 67, 68, 69, 70, 71, 72, 73,
2357 0, 1, 2, 0, 3, 4, 5, 0, 0, 0,
2358 64, 65, 74, 107, 67, 68, 69, 70, 71, 72,
2359 73, 451, 1, 2, 0, 3, 4, 5, 0, 0,
2360 0, 0, 74, 0, 0, 0, 0, 0, 0, 75,
2361 76, 0, 553, 77, 0, 78, 152, 0, 0, 0,
2362 0, 64, 65, 74, 66, 67, 68, 69, 70, 71,
2363 72, 73, 0, 1, 2, 0, 3, 4, 5, 0,
2364 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2365 75, 76, 0, 0, 77, 0, 78, 0, 0, 0,
2366 0, 0, 0, 0, 74, 0, 0, 0, 0, 0,
2367 75, 76, 0, 0, 77, 0, 78, 0, 0, 0,
2368 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2369 0, 75, 76, 0, 364, 77, 0, 78, 0, 0,
2370 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2371 0, 75, 76, 0, 0, 77, 0, 78, 0, 0,
2372 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2373 0, 0, 75, 76, 0, 0, 77, 0, 78, 64,
2389 2, 0, 3, 4, 5, 64, 65, 0, 66, 67,
2390 68, 69, 70, 71, 72, 73, 0, 1, 2, 572,
2391 3, 4, 5, 0, 0, 0, 0, 0, 0, 0,
2392 74, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2393 0, 75, 76, 0, 0, 77, 0, 78, 74, 64,
23742394 65, 0, 107, 156, 157, 158, 159, 160, 161, 73,
23752395 0, 1, 2, 0, 3, 4, 5, 0, 0, 0,
23762396 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2377 0, 0, 0, 75, 76, 0, 0, 77, 0, 78,
2378 64, 65, 74, 151, 67, 68, 69, 70, 71, 72,
2379 73, 0, 1, 2, 0, 3, 4, 5, 64, 65,
2380 0, 107, 67, 68, 69, 70, 71, 72, 73, 0,
2381 1, 2, 0, 3, 4, 5, 0, 0, 0, 0,
2382 0, 64, 65, 74, 276, 67, 68, 69, 70, 71,
2383 72, 73, 0, 1, 2, 0, 3, 4, 5, 64,
2384 65, 74, 107, 156, 157, 158, 159, 160, 161, 73,
2385 0, 1, 2, 0, 3, 4, 5, 0, 0, 0,
2386 0, 0, 64, 65, 74, 107, 67, 68, 69, 70,
2387 71, 72, 559, 0, 1, 2, 0, 3, 4, 5,
2397 0, 0, 75, 76, 0, 372, 77, 0, 78, 0,
23882398 0, 0, 74, 0, 0, 0, 0, 0, 0, 0,
2399 75, 76, 0, 0, 77, 0, 78, 64, 65, 0,
2400 151, 67, 68, 69, 70, 71, 72, 73, 0, 1,
2401 2, 0, 3, 4, 5, 0, 0, 0, 0, 0,
2402 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2403 0, 75, 76, 0, 0, 77, 0, 78, 0, 0,
2404 74, 0, 0, 0, 0, 0, 0, 0, 0, 75,
2405 76, 0, 0, 77, 0, 78, 0, 64, 65, 0,
2406 107, 67, 68, 69, 70, 71, 72, 73, 0, 1,
2407 2, 0, 3, 4, 5, 64, 65, 0, 280, 67,
2408 68, 69, 70, 71, 72, 73, 0, 1, 2, 0,
2409 3, 4, 5, 75, 76, 0, 0, 77, 0, 78,
2410 74, 0, 0, 0, 64, 65, 0, 107, 156, 157,
2411 158, 159, 160, 161, 73, 0, 1, 2, 74, 3,
2412 4, 5, 64, 65, 0, 107, 67, 68, 69, 70,
2413 71, 72, 578, 0, 1, 2, 0, 3, 4, 5,
2414 0, 0, 0, 0, 0, 0, 0, 74, 0, 0,
23892415 0, 75, 76, 0, 0, 77, 0, 78, 0, 0,
23902416 0, 0, 0, 64, 65, 74, 107, 67, 68, 69,
2391 70, 71, 72, 620, 0, 1, 2, 0, 3, 4,
2417 70, 71, 72, 643, 0, 1, 2, 0, 3, 4,
23922418 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2393 0, 0, 75, 76, 0, 0, 77, 0, 78, 0,
2419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
23942420 0, 0, 0, 0, 0, 0, 74, 0, 0, 0,
2395 75, 76, 0, 0, 77, 0, 78, 0, 0, 0,
2421 0, 75, 76, 0, 0, 77, 0, 78, 0, 0,
2422 0, 0, 0, 0, 0, 0, 0, 0, 0, 75,
2423 76, 0, 0, 77, 0, 78, 0, 0, 0, 0,
23962424 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2397 0, 0, 0, 75, 76, 0, 0, 77, 0, 78,
2398 0, 0, 0, 0, 0, 0, 0, 0, 171, 0,
2399 0, 75, 76, 0, 0, 77, 0, 367, 0, 0,
2400 0, 0, 0, 0, 0, 0, 0, 0, 0, 172,
2401 173, 0, 0, 0, 75, 76, 0, 0, 77, 0,
2402 78, 174, 175, 176, 177, 178, 179, 180, 181, 182,
2403 183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
2404 193, 194, 195, 196, 197, 198, 0, 0, 0, 0,
2405 0, 0, 0, 0, 0, 75, 76, 0, 0, 77,
2406 0, 78, 0, 0, 0, 0, 199, 200, 201, 0,
2407 0, 202, 203, 204, 205, 206, 207, 208, 209, 210,
2408 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
2409 221
2425 171, 0, 0, 0, 0, 0, 0, 0, 75, 76,
2426 0, 0, 77, 0, 375, 0, 0, 0, 0, 0,
2427 0, 172, 173, 0, 0, 0, 75, 76, 0, 0,
2428 77, 0, 78, 174, 175, 176, 177, 178, 179, 180,
2429 181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
2430 191, 192, 193, 194, 195, 196, 197, 198, 0, 0,
2431 0, 0, 0, 0, 0, 0, 0, 75, 76, 0,
2432 0, 77, 0, 78, 0, 0, 0, 0, 199, 200,
2433 201, 0, 0, 202, 203, 204, 205, 206, 207, 208,
2434 209, 210, 211, 212, 213, 214, 215, 216, 217, 218,
2435 219, 220, 221, 222, 223
24102436 };
24112437
24122438 static const yytype_int16 yycheck[] =
24132439 {
2414 0, 27, 240, 176, 11, 316, 4, 164, 128, 11,
2415 201, 21, 28, 0, 265, 266, 34, 17, 55, 29,
2416 55, 427, 428, 197, 165, 216, 217, 218, 219, 220,
2417 17, 198, 11, 224, 55, 55, 452, 156, 177, 154,
2418 55, 42, 43, 44, 45, 46, 47, 48, 49, 164,
2419 51, 11, 78, 34, 613, 157, 157, 121, 55, 55,
2420 55, 157, 53, 11, 166, 166, 32, 33, 164, 17,
2421 55, 41, 42, 54, 633, 54, 102, 68, 48, 55,
2422 106, 255, 59, 257, 54, 149, 112, 226, 157, 256,
2423 156, 258, 118, 93, 54, 157, 157, 166, 18, 505,
2424 241, 242, 128, 164, 166, 3, 4, 5, 6, 3,
2425 4, 5, 6, 156, 140, 141, 367, 154, 144, 154,
2426 38, 139, 140, 141, 150, 160, 144, 164, 26, 27,
2427 148, 149, 0, 154, 154, 386, 157, 158, 554, 154,
2428 155, 332, 162, 559, 560, 151, 152, 153, 174, 165,
2429 151, 152, 153, 117, 118, 162, 166, 154, 154, 154,
2430 162, 158, 277, 158, 284, 280, 281, 165, 283, 154,
2431 155, 482, 156, 199, 200, 201, 202, 46, 154, 48,
2432 167, 157, 158, 62, 63, 64, 65, 66, 67, 215,
2433 216, 217, 218, 219, 220, 221, 222, 223, 224, 156,
2434 391, 617, 618, 318, 620, 621, 232, 518, 160, 520,
2435 330, 326, 327, 328, 114, 115, 407, 243, 409, 410,
2436 411, 139, 140, 141, 157, 22, 144, 643, 644, 162,
2437 148, 149, 21, 20, 7, 8, 23, 10, 11, 12,
2438 13, 14, 15, 16, 17, 22, 19, 20, 157, 22,
2439 23, 24, 19, 162, 54, 22, 22, 24, 284, 7,
2440 8, 42, 43, 44, 575, 35, 47, 37, 22, 295,
2441 508, 19, 20, 154, 22, 23, 24, 50, 84, 85,
2442 395, 396, 397, 398, 399, 442, 312, 313, 314, 42,
2443 405, 44, 155, 4, 157, 359, 360, 361, 362, 363,
2444 4, 416, 417, 37, 330, 331, 332, 161, 372, 373,
2445 374, 155, 161, 157, 139, 140, 141, 158, 155, 144,
2446 157, 121, 122, 148, 149, 154, 4, 442, 22, 157,
2447 521, 155, 164, 524, 525, 526, 4, 155, 154, 139,
2448 140, 367, 142, 143, 9, 145, 146, 147, 9, 9,
2449 376, 466, 9, 468, 9, 9, 471, 595, 55, 57,
2450 11, 599, 164, 478, 479, 391, 430, 431, 432, 433,
2451 155, 154, 154, 22, 154, 439, 154, 4, 154, 154,
2452 154, 407, 408, 409, 410, 411, 159, 160, 157, 415,
2453 163, 154, 165, 166, 154, 157, 511, 512, 157, 514,
2454 515, 516, 517, 429, 38, 19, 157, 522, 22, 38,
2455 24, 157, 157, 157, 154, 154, 154, 154, 533, 592,
2456 61, 157, 157, 164, 157, 157, 157, 157, 492, 493,
2457 494, 495, 160, 157, 157, 499, 500, 157, 157, 157,
2458 54, 614, 280, 281, 157, 283, 38, 157, 157, 155,
2459 22, 17, 17, 154, 157, 570, 4, 483, 157, 4,
2460 22, 157, 157, 154, 157, 157, 26, 27, 157, 157,
2461 157, 535, 536, 537, 538, 501, 157, 157, 593, 594,
2462 318, 507, 157, 157, 157, 164, 4, 513, 326, 327,
2463 328, 157, 22, 157, 157, 521, 611, 54, 524, 525,
2464 526, 157, 155, 162, 530, 157, 506, 121, 122, 155,
2465 155, 54, 160, 157, 17, 155, 580, 155, 582, 583,
2466 155, 4, 637, 638, 155, 139, 140, 642, 142, 143,
2467 645, 145, 146, 147, 162, 155, 651, 155, 155, 654,
2468 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
2469 110, 111, 112, 113, 150, 154, 154, 395, 396, 397,
2470 398, 399, 22, 157, 17, 17, 157, 405, 17, 73,
2471 596, 17, 131, 131, 587, 131, 93, 555, 416, 417,
2472 3, 4, 232, 112, 7, 8, 9, 587, 17, 90,
2473 0, 106, 57, 530, 434, -1, 19, 20, -1, 22,
2474 23, 24, 25, 26, 27, -1, 243, -1, 18, 19,
2475 20, -1, 22, 23, 24, -1, -1, 40, 41, -1,
2476 30, 31, -1, -1, -1, -1, -1, -1, 466, -1,
2477 468, 54, -1, 471, -1, -1, 59, -1, -1, -1,
2478 478, 479, 52, -1, -1, -1, 56, -1, -1, -1,
2479 60, -1, 75, 76, 77, 78, 79, 80, 81, 82,
2480 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
2481 93, -1, -1, 511, 512, -1, 514, 515, 516, 517,
2482 -1, -1, -1, -1, 522, 94, 95, 96, 97, 98,
2483 99, 100, 101, 102, 103, 533, 119, 120, 121, 122,
2484 123, 124, 125, 126, 127, 128, 129, 130, 131, -1,
2485 133, -1, 135, 136, 137, -1, 139, 140, -1, 142,
2486 143, -1, 145, 146, 147, -1, -1, -1, -1, -1,
2487 -1, -1, 570, -1, -1, -1, -1, -1, -1, -1,
2488 163, -1, -1, -1, -1, 3, 4, -1, -1, 7,
2489 8, 9, -1, -1, -1, 593, 594, -1, -1, -1,
2490 -1, 19, 20, -1, 22, 23, 24, 25, 26, 27,
2491 -1, -1, -1, 611, -1, -1, -1, -1, -1, -1,
2492 -1, -1, 40, 41, -1, -1, -1, -1, -1, -1,
2493 -1, -1, -1, -1, -1, -1, -1, 55, -1, 637,
2494 638, 59, -1, -1, 642, -1, -1, 645, -1, -1,
2495 -1, -1, -1, 651, -1, -1, 654, 75, 76, 77,
2496 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
2497 88, 89, 90, 91, 92, 93, -1, 7, 8, -1,
2498 10, 11, 12, 13, 14, 15, 16, 17, -1, 19,
2499 20, -1, 22, 23, 24, -1, -1, -1, -1, -1,
2500 -1, 119, 120, 121, 122, 123, 124, 125, 126, 127,
2501 128, 129, 130, 131, -1, 133, -1, 135, 136, 137,
2502 50, -1, -1, -1, -1, -1, -1, 3, 4, -1,
2503 -1, 7, 8, 9, -1, -1, 154, 0, -1, -1,
2504 -1, -1, -1, 19, 20, 163, 22, 23, 24, 25,
2505 26, 27, -1, -1, -1, 18, 19, 20, -1, 22,
2506 23, 24, -1, -1, 40, 41, -1, 30, 31, -1,
2440 0, 27, 176, 242, 201, 164, 128, 464, 421, 320,
2441 0, 28, 11, 158, 11, 4, 21, 17, 34, 216,
2442 217, 218, 219, 220, 29, 437, 438, 17, 55, 226,
2443 55, 444, 269, 270, 197, 55, 449, 198, 11, 177,
2444 42, 43, 44, 45, 46, 47, 48, 49, 11, 51,
2445 20, 59, 78, 23, 55, 34, 38, 7, 8, 636,
2446 10, 11, 12, 13, 14, 15, 16, 17, 165, 19,
2447 20, 55, 22, 23, 24, 54, 102, 18, 159, 656,
2448 106, 54, 3, 4, 5, 6, 112, 168, 158, 39,
2449 228, 54, 118, 93, 257, 53, 259, 258, 159, 260,
2450 50, 159, 128, 154, 55, 26, 27, 168, 166, 521,
2451 68, 159, 159, 164, 140, 141, 573, 164, 144, 159,
2452 168, 578, 579, 55, 150, 141, 142, 143, 168, 156,
2453 146, 156, 32, 33, 150, 151, 156, 162, 375, 166,
2454 55, 338, 55, 158, 164, 55, 243, 244, 174, 562,
2455 167, 153, 154, 155, 0, 156, 157, 394, 162, 141,
2456 142, 143, 158, 168, 146, 164, 288, 164, 150, 151,
2457 117, 118, 156, 199, 200, 201, 202, 167, 167, 22,
2458 593, 159, 158, 640, 641, 496, 643, 644, 166, 215,
2459 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
2460 226, 46, 399, 48, 21, 156, 157, 121, 234, 666,
2461 667, 161, 162, 22, 336, 165, 22, 167, 415, 245,
2462 417, 418, 419, 534, 156, 536, 22, 159, 160, 156,
2463 281, 11, 54, 284, 285, 149, 287, 17, 35, 4,
2464 37, 156, 4, 156, 159, 160, 156, 160, 159, 37,
2465 160, 7, 8, 164, 10, 11, 12, 13, 14, 15,
2466 16, 17, 288, 19, 20, 163, 22, 23, 24, 19,
2467 163, 322, 22, 299, 24, 3, 4, 5, 6, 330,
2468 331, 332, 333, 334, 595, 524, 153, 154, 155, 160,
2469 316, 317, 318, 19, 50, 454, 22, 156, 24, 121,
2470 122, 7, 8, 42, 157, 44, 159, 4, 41, 42,
2471 336, 337, 338, 19, 20, 48, 22, 23, 24, 141,
2472 142, 54, 144, 145, 22, 147, 148, 149, 54, 141,
2473 142, 143, 159, 157, 146, 159, 114, 115, 150, 151,
2474 537, 84, 85, 540, 541, 542, 157, 166, 0, 375,
2475 4, 156, 403, 404, 405, 406, 407, 157, 384, 42,
2476 43, 44, 413, 157, 47, 159, 18, 19, 20, 9,
2477 22, 23, 24, 399, 9, 426, 427, 616, 30, 31,
2478 9, 9, 621, 62, 63, 64, 65, 66, 67, 415,
2479 416, 417, 418, 419, 9, 121, 122, 9, 55, 425,
2480 52, 57, 11, 454, 56, 161, 162, 166, 60, 165,
2481 157, 167, 168, 439, 156, 141, 142, 22, 144, 145,
2482 156, 147, 148, 149, 156, 159, 157, 478, 159, 480,
2483 159, 156, 483, 157, 156, 159, 156, 156, 156, 613,
2484 156, 492, 493, 156, 156, 159, 38, 38, 159, 159,
2485 159, 365, 366, 367, 368, 369, 370, 371, 159, 4,
2486 156, 156, 156, 637, 156, 491, 380, 381, 382, 26,
2487 27, 497, 159, 61, 159, 159, 527, 528, 159, 530,
2488 531, 532, 533, 159, 162, 159, 159, 538, 159, 159,
2489 159, 517, 159, 544, 159, 159, 159, 523, 166, 550,
2490 159, 38, 22, 529, 159, 17, 157, 17, 156, 159,
2491 159, 537, 159, 159, 540, 541, 542, 4, 159, 4,
2492 159, 547, 522, 159, 156, 159, 440, 441, 442, 443,
2493 284, 285, 159, 287, 159, 159, 159, 451, 589, 159,
2494 159, 22, 4, 100, 101, 102, 103, 104, 105, 106,
2495 107, 108, 109, 110, 111, 112, 113, 159, 166, 159,
2496 54, 159, 157, 614, 615, 159, 159, 157, 322, 22,
2497 157, 54, 157, 159, 157, 164, 330, 331, 332, 333,
2498 334, 162, 157, 634, 157, 17, 164, 157, 157, 157,
2499 4, 617, 506, 507, 508, 509, 152, 511, 156, 22,
2500 159, 515, 516, 156, 17, 17, 17, 159, 608, 660,
2501 661, 17, 73, 131, 665, 131, 131, 668, 93, 574,
2502 608, 234, 112, 674, 3, 4, 677, 106, 245, 17,
2503 9, 90, 57, -1, -1, 547, -1, -1, 552, 553,
2504 554, 555, -1, -1, -1, -1, 25, 26, 27, 403,
2505 404, 405, 406, 407, -1, -1, -1, -1, -1, 413,
2506 -1, 40, 41, -1, -1, -1, -1, -1, -1, -1,
2507 -1, -1, 426, 427, -1, -1, -1, -1, -1, -1,
2508 59, -1, -1, -1, -1, -1, 600, -1, 602, 603,
2509 -1, -1, -1, -1, -1, -1, 75, 76, 77, 78,
2510 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
2511 89, 90, 91, 92, 93, -1, -1, -1, -1, -1,
2512 -1, -1, -1, -1, 478, -1, 480, -1, -1, 483,
2513 -1, -1, -1, -1, -1, -1, -1, -1, 492, 493,
2514 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
2515 129, 130, 131, -1, 133, -1, 135, 136, 137, -1,
2516 139, 140, 94, 95, 96, 97, 98, 99, 100, 101,
2517 102, 103, -1, 527, 528, -1, 530, 531, 532, 533,
2518 -1, -1, -1, -1, 538, -1, 165, -1, -1, -1,
2519 544, -1, -1, -1, 7, 8, 550, 10, 11, 12,
2520 13, 14, 15, 16, 17, -1, 19, 20, -1, 22,
2521 23, 24, -1, -1, -1, -1, -1, -1, -1, -1,
25072522 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2508 -1, -1, -1, 59, -1, -1, -1, -1, -1, 52,
2509 -1, -1, -1, 56, -1, -1, -1, 60, -1, 75,
2523 -1, -1, -1, -1, -1, 589, -1, 50, -1, -1,
2524 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2525 -1, -1, 3, 4, -1, -1, 7, 8, 9, -1,
2526 614, 615, -1, -1, -1, -1, -1, -1, 19, 20,
2527 -1, 22, 23, 24, 25, 26, 27, -1, -1, -1,
2528 634, -1, -1, -1, -1, -1, -1, -1, -1, 40,
2529 41, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2530 -1, -1, -1, 54, -1, -1, 660, 661, 59, -1,
2531 -1, 665, -1, -1, 668, -1, -1, -1, -1, -1,
2532 674, -1, -1, 677, 75, 76, 77, 78, 79, 80,
2533 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
2534 91, 92, 93, -1, -1, -1, -1, -1, 161, 162,
2535 -1, -1, 165, -1, 167, 168, -1, -1, -1, -1,
2536 -1, -1, -1, -1, -1, -1, -1, -1, 119, 120,
2537 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
2538 131, -1, 133, -1, 135, 136, 137, -1, 139, 140,
2539 141, 142, -1, 144, 145, -1, 147, 148, 149, 3,
2540 4, -1, -1, 7, 8, 9, -1, -1, -1, -1,
2541 -1, -1, -1, -1, 165, 19, 20, -1, 22, 23,
2542 24, 25, 26, 27, -1, -1, -1, -1, -1, -1,
2543 -1, -1, -1, -1, -1, -1, 40, 41, -1, -1,
2544 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2545 -1, 55, -1, 7, 8, 59, 10, 11, 12, 13,
2546 14, 15, 16, 17, -1, 19, 20, -1, 22, 23,
2547 24, 75, 76, 77, 78, 79, 80, 81, 82, 83,
2548 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
2549 -1, -1, -1, -1, 7, 8, 50, 10, 11, 12,
2550 13, 14, 15, 16, 17, -1, 19, 20, -1, 22,
2551 23, 24, -1, -1, -1, 119, 120, 121, 122, 123,
2552 124, 125, 126, 127, 128, 129, 130, 131, -1, 133,
2553 -1, 135, 136, 137, -1, 139, 140, 50, -1, -1,
2554 -1, -1, -1, 3, 4, -1, -1, 7, 8, 9,
2555 -1, -1, 156, -1, -1, -1, -1, -1, -1, 19,
2556 20, 165, 22, 23, 24, 25, 26, 27, -1, -1,
2557 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2558 40, 41, -1, -1, -1, -1, -1, -1, -1, -1,
2559 -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
2560 -1, -1, -1, -1, -1, -1, -1, 161, 162, -1,
2561 -1, 165, -1, 167, 168, 75, 76, 77, 78, 79,
2562 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
2563 90, 91, 92, 93, -1, -1, -1, -1, -1, -1,
2564 -1, -1, -1, -1, -1, -1, -1, -1, 161, 162,
2565 -1, -1, 165, -1, 167, 168, -1, -1, -1, 119,
2566 120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
2567 130, 131, -1, 133, -1, 135, 136, 137, -1, 139,
2568 140, 7, 8, -1, -1, -1, -1, -1, 0, -1,
2569 -1, -1, -1, 19, 20, -1, 22, 23, 24, 25,
2570 -1, -1, -1, -1, -1, 165, 18, 19, 20, -1,
2571 22, 23, 24, -1, 40, 41, -1, -1, 30, 31,
2572 -1, -1, -1, -1, -1, -1, -1, -1, -1, 55,
2573 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2574 52, -1, -1, -1, 56, -1, -1, -1, 60, 75,
25102575 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
2511 86, 87, 88, 89, 90, 91, 92, 93, -1, -1,
2512 -1, -1, -1, -1, -1, -1, -1, -1, -1, 159,
2513 160, -1, -1, 163, -1, 165, 166, -1, -1, -1,
2576 86, 87, 88, 89, 90, 91, 92, 93, -1, 7,
2577 8, -1, 10, 11, 12, 13, 14, 15, 16, 17,
2578 -1, 19, 20, -1, 22, 23, 24, -1, -1, -1,
25142579 -1, -1, -1, 119, 120, 121, 122, 123, 124, 125,
25152580 126, 127, 128, 129, 130, 131, -1, 133, -1, 135,
2516 136, 137, 7, 8, -1, -1, -1, -1, -1, -1,
2517 -1, -1, -1, -1, 19, 20, -1, 22, 23, 24,
2518 25, -1, -1, -1, -1, -1, -1, 163, -1, -1,
2581 136, 137, 50, 139, 140, -1, -1, -1, -1, -1,
2582 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2583 156, -1, 7, 8, 160, -1, 162, -1, -1, 165,
2584 -1, 167, -1, 169, 19, 20, -1, 22, 23, 24,
2585 25, -1, -1, -1, -1, -1, -1, -1, -1, -1,
25192586 -1, -1, -1, -1, -1, 40, 41, -1, -1, -1,
2520 -1, -1, -1, -1, -1, -1, -1, -1, 7, 8,
2521 55, 10, 11, 12, 13, 14, 15, 16, 17, -1,
2522 19, 20, -1, 22, 23, 24, -1, -1, -1, -1,
2587 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2588 55, -1, -1, -1, -1, -1, -1, 125, -1, -1,
2589 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
25232590 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
25242591 85, 86, 87, 88, 89, 90, 91, 92, 93, -1,
2525 -1, 50, 7, 8, -1, 10, 11, 12, 13, 14,
2526 15, 16, 17, -1, 19, 20, -1, 22, 23, 24,
2592 -1, -1, -1, 161, 162, -1, -1, 165, -1, 167,
2593 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
25272594 -1, -1, -1, -1, 119, 120, 121, 122, 123, 124,
25282595 125, 126, 127, 128, 129, 130, 131, -1, 133, -1,
2529 135, 136, 137, -1, -1, 50, -1, -1, -1, -1,
2530 -1, -1, -1, -1, -1, -1, -1, -1, -1, 154,
2531 -1, 7, 8, 158, -1, 160, -1, -1, 163, -1,
2532 165, -1, 167, 19, 20, -1, 22, 23, 24, 25,
2533 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2534 -1, -1, -1, -1, 40, 41, -1, -1, -1, -1,
2535 -1, -1, -1, -1, -1, -1, -1, -1, -1, 55,
2536 159, 160, -1, -1, 163, -1, 165, 166, -1, -1,
2537 -1, -1, -1, -1, -1, -1, -1, -1, -1, 75,
2538 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
2539 86, 87, 88, 89, 90, 91, 92, 93, -1, -1,
2540 -1, -1, -1, -1, 159, 160, -1, -1, 163, -1,
2541 165, 166, -1, -1, -1, -1, -1, -1, -1, -1,
2542 -1, -1, -1, 119, 120, 121, 122, 123, 124, 125,
2543 126, 127, 128, 129, 130, 131, -1, 133, -1, 135,
2544 136, 137, -1, -1, -1, -1, -1, -1, -1, -1,
2545 3, 4, -1, -1, -1, -1, 9, -1, 154, -1,
2546 -1, -1, -1, -1, 160, -1, -1, 163, -1, 165,
2547 -1, 167, 25, 26, 27, -1, -1, -1, -1, -1,
2548 -1, -1, -1, -1, -1, -1, -1, 40, 41, -1,
2549 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2550 -1, -1, -1, -1, -1, -1, 59, -1, -1, -1,
2551 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2552 -1, -1, 75, 76, 77, 78, 79, 80, 81, 82,
2553 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
2554 93, -1, -1, -1, -1, -1, -1, 7, 8, -1,
2596 135, 136, 137, -1, 139, 140, -1, 7, 8, -1,
25552597 10, 11, 12, 13, 14, 15, 16, 17, -1, 19,
2556 20, -1, 22, 23, 24, -1, 119, 120, 121, 122,
2557 123, 124, 125, 126, 127, 128, 129, 130, 131, 39,
2558 133, -1, 135, 136, 137, -1, -1, -1, 7, 8,
2598 20, 156, 22, 23, 24, -1, -1, 162, -1, -1,
2599 165, -1, 167, -1, 169, -1, -1, -1, -1, 39,
2600 -1, -1, -1, -1, -1, -1, -1, -1, 7, 8,
25592601 50, 10, 11, 12, 13, 14, 15, 16, 17, -1,
2560 19, 20, -1, 22, 23, 24, -1, -1, 7, 8,
2561 163, 10, 11, 12, 13, 14, 15, 16, 17, -1,
2562 19, 20, -1, 22, 23, 24, -1, -1, -1, 7,
2563 8, 50, 10, 11, 12, 13, 14, 15, 16, 17,
2564 39, 19, 20, -1, 22, 23, 24, -1, -1, 7,
2565 8, 50, 10, 11, 12, 13, 14, 15, 16, 17,
2566 -1, 19, 20, -1, 22, 23, 24, -1, -1, -1,
2567 7, 8, 50, 10, 11, 12, 13, 14, 15, 16,
2568 17, 39, 19, 20, -1, 22, 23, 24, -1, -1,
2569 -1, -1, 50, -1, -1, -1, -1, -1, -1, 159,
2570 160, -1, 39, 163, -1, 165, 125, -1, -1, -1,
2571 -1, 7, 8, 50, 10, 11, 12, 13, 14, 15,
2572 16, 17, -1, 19, 20, -1, 22, 23, 24, -1,
2573 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2574 159, 160, -1, -1, 163, -1, 165, -1, -1, -1,
2575 -1, -1, -1, -1, 50, -1, -1, -1, -1, -1,
2576 159, 160, -1, -1, 163, -1, 165, -1, -1, -1,
2577 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2578 -1, 159, 160, -1, 162, 163, -1, 165, -1, -1,
2579 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2580 -1, 159, 160, -1, -1, 163, -1, 165, -1, -1,
2581 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2582 -1, -1, 159, 160, -1, -1, 163, -1, 165, 7,
2602 19, 20, -1, 22, 23, 24, 7, 8, -1, 10,
2603 11, 12, 13, 14, 15, 16, 17, -1, 19, 20,
2604 -1, 22, 23, 24, -1, -1, -1, -1, -1, -1,
2605 -1, 50, -1, -1, -1, -1, -1, -1, 39, -1,
2606 -1, -1, -1, -1, -1, -1, -1, 7, 8, 50,
2607 10, 11, 12, 13, 14, 15, 16, 17, -1, 19,
2608 20, -1, 22, 23, 24, 7, 8, -1, 10, 11,
2609 12, 13, 14, 15, 16, 17, -1, 19, 20, 39,
2610 22, 23, 24, -1, -1, -1, -1, -1, -1, -1,
2611 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2612 -1, 161, 162, -1, -1, 165, -1, 167, 50, 7,
25832613 8, -1, 10, 11, 12, 13, 14, 15, 16, 17,
25842614 -1, 19, 20, -1, 22, 23, 24, -1, -1, -1,
25852615 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2586 -1, -1, -1, 159, 160, -1, -1, 163, -1, 165,
2587 7, 8, 50, 10, 11, 12, 13, 14, 15, 16,
2588 17, -1, 19, 20, -1, 22, 23, 24, 7, 8,
2589 -1, 10, 11, 12, 13, 14, 15, 16, 17, -1,
2590 19, 20, -1, 22, 23, 24, -1, -1, -1, -1,
2591 -1, 7, 8, 50, 10, 11, 12, 13, 14, 15,
2592 16, 17, -1, 19, 20, -1, 22, 23, 24, 7,
2593 8, 50, 10, 11, 12, 13, 14, 15, 16, 17,
2594 -1, 19, 20, -1, 22, 23, 24, -1, -1, -1,
2595 -1, -1, 7, 8, 50, 10, 11, 12, 13, 14,
2616 -1, -1, 161, 162, -1, 164, 165, -1, 167, -1,
2617 -1, -1, 50, -1, -1, -1, -1, -1, -1, -1,
2618 161, 162, -1, -1, 165, -1, 167, 7, 8, -1,
2619 10, 11, 12, 13, 14, 15, 16, 17, -1, 19,
2620 20, -1, 22, 23, 24, -1, -1, -1, -1, -1,
2621 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2622 -1, 161, 162, -1, -1, 165, -1, 167, -1, -1,
2623 50, -1, -1, -1, -1, -1, -1, -1, -1, 161,
2624 162, -1, -1, 165, -1, 167, -1, 7, 8, -1,
2625 10, 11, 12, 13, 14, 15, 16, 17, -1, 19,
2626 20, -1, 22, 23, 24, 7, 8, -1, 10, 11,
2627 12, 13, 14, 15, 16, 17, -1, 19, 20, -1,
2628 22, 23, 24, 161, 162, -1, -1, 165, -1, 167,
2629 50, -1, -1, -1, 7, 8, -1, 10, 11, 12,
2630 13, 14, 15, 16, 17, -1, 19, 20, 50, 22,
2631 23, 24, 7, 8, -1, 10, 11, 12, 13, 14,
25962632 15, 16, 17, -1, 19, 20, -1, 22, 23, 24,
2597 -1, -1, 50, -1, -1, -1, -1, -1, -1, -1,
2598 -1, 159, 160, -1, -1, 163, -1, 165, -1, -1,
2633 -1, -1, -1, -1, -1, -1, -1, 50, -1, -1,
2634 -1, 161, 162, -1, -1, 165, -1, 167, -1, -1,
25992635 -1, -1, -1, 7, 8, 50, 10, 11, 12, 13,
26002636 14, 15, 16, 17, -1, 19, 20, -1, 22, 23,
26012637 24, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2602 -1, -1, 159, 160, -1, -1, 163, -1, 165, -1,
2638 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
26032639 -1, -1, -1, -1, -1, -1, 50, -1, -1, -1,
2604 159, 160, -1, -1, 163, -1, 165, -1, -1, -1,
2640 -1, 161, 162, -1, -1, 165, -1, 167, -1, -1,
2641 -1, -1, -1, -1, -1, -1, -1, -1, -1, 161,
2642 162, -1, -1, 165, -1, 167, -1, -1, -1, -1,
26052643 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2606 -1, -1, -1, 159, 160, -1, -1, 163, -1, 165,
2607 -1, -1, -1, -1, -1, -1, -1, -1, 36, -1,
2608 -1, 159, 160, -1, -1, 163, -1, 165, -1, -1,
2609 -1, -1, -1, -1, -1, -1, -1, -1, -1, 57,
2610 58, -1, -1, -1, 159, 160, -1, -1, 163, -1,
2611 165, 69, 70, 71, 72, 73, 74, 75, 76, 77,
2612 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
2613 88, 89, 90, 91, 92, 93, -1, -1, -1, -1,
2614 -1, -1, -1, -1, -1, 159, 160, -1, -1, 163,
2615 -1, 165, -1, -1, -1, -1, 114, 115, 116, -1,
2616 -1, 119, 120, 121, 122, 123, 124, 125, 126, 127,
2617 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
2618 138
2644 36, -1, -1, -1, -1, -1, -1, -1, 161, 162,
2645 -1, -1, 165, -1, 167, -1, -1, -1, -1, -1,
2646 -1, 57, 58, -1, -1, -1, 161, 162, -1, -1,
2647 165, -1, 167, 69, 70, 71, 72, 73, 74, 75,
2648 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
2649 86, 87, 88, 89, 90, 91, 92, 93, -1, -1,
2650 -1, -1, -1, -1, -1, -1, -1, 161, 162, -1,
2651 -1, 165, -1, 167, -1, -1, -1, -1, 114, 115,
2652 116, -1, -1, 119, 120, 121, 122, 123, 124, 125,
2653 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
2654 136, 137, 138, 139, 140
26192655 };
26202656
26212657 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
26232659 static const yytype_uint8 yystos[] =
26242660 {
26252661 0, 19, 20, 22, 23, 24, 30, 31, 52, 56,
2626 60, 176, 179, 180, 181, 182, 214, 215, 216, 218,
2627 217, 53, 68, 223, 156, 59, 156, 18, 156, 42,
2628 43, 44, 45, 46, 47, 48, 49, 51, 151, 152,
2629 153, 183, 184, 185, 0, 216, 46, 48, 186, 233,
2630 42, 43, 44, 47, 187, 230, 232, 240, 156, 156,
2631 160, 224, 22, 222, 7, 8, 10, 11, 12, 13,
2632 14, 15, 16, 17, 50, 159, 160, 163, 165, 176,
2633 180, 201, 202, 236, 185, 185, 35, 37, 212, 185,
2634 185, 21, 241, 242, 29, 166, 231, 241, 22, 22,
2635 22, 225, 154, 4, 4, 4, 165, 10, 166, 202,
2636 207, 55, 154, 178, 212, 212, 42, 44, 188, 32,
2637 33, 211, 62, 63, 64, 65, 66, 67, 189, 228,
2638 228, 179, 245, 157, 162, 39, 202, 203, 205, 206,
2639 161, 161, 166, 207, 157, 166, 154, 206, 158, 211,
2640 211, 10, 125, 202, 204, 213, 11, 12, 13, 14,
2641 15, 16, 174, 175, 202, 208, 4, 204, 28, 165,
2642 229, 36, 57, 58, 69, 70, 71, 72, 73, 74,
2662 60, 178, 181, 182, 183, 184, 216, 217, 218, 220,
2663 219, 53, 68, 225, 158, 59, 158, 18, 158, 42,
2664 43, 44, 45, 46, 47, 48, 49, 51, 153, 154,
2665 155, 185, 186, 187, 0, 218, 46, 48, 188, 235,
2666 42, 43, 44, 47, 189, 232, 234, 242, 158, 158,
2667 162, 226, 22, 224, 7, 8, 10, 11, 12, 13,
2668 14, 15, 16, 17, 50, 161, 162, 165, 167, 178,
2669 182, 203, 204, 238, 187, 187, 35, 37, 214, 187,
2670 187, 21, 243, 244, 29, 168, 233, 243, 22, 22,
2671 22, 227, 156, 4, 4, 4, 167, 10, 168, 204,
2672 209, 55, 156, 180, 214, 214, 42, 44, 190, 32,
2673 33, 213, 62, 63, 64, 65, 66, 67, 191, 230,
2674 230, 181, 247, 159, 164, 39, 204, 205, 207, 208,
2675 163, 163, 168, 209, 159, 168, 156, 208, 160, 213,
2676 213, 10, 125, 204, 206, 215, 11, 12, 13, 14,
2677 15, 16, 176, 177, 204, 210, 4, 206, 28, 167,
2678 231, 36, 57, 58, 69, 70, 71, 72, 73, 74,
26432679 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
26442680 85, 86, 87, 88, 89, 90, 91, 92, 93, 114,
26452681 115, 116, 119, 120, 121, 122, 123, 124, 125, 126,
26462682 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
2647 137, 138, 169, 170, 171, 243, 249, 250, 251, 252,
2648 22, 191, 157, 155, 202, 202, 164, 166, 202, 4,
2649 155, 208, 202, 154, 236, 26, 27, 3, 4, 5,
2650 6, 9, 25, 40, 41, 90, 91, 92, 93, 119,
2651 133, 135, 136, 137, 160, 163, 165, 167, 169, 170,
2652 171, 209, 236, 178, 180, 57, 10, 202, 238, 239,
2653 11, 17, 11, 174, 189, 94, 95, 96, 97, 98,
2654 99, 100, 101, 102, 103, 172, 26, 27, 100, 101,
2655 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
2656 112, 113, 173, 172, 173, 202, 202, 238, 202, 202,
2657 246, 238, 238, 238, 238, 238, 202, 202, 202, 238,
2658 189, 117, 118, 54, 121, 122, 139, 140, 142, 143,
2659 145, 146, 147, 190, 39, 203, 193, 162, 164, 164,
2660 155, 193, 178, 178, 213, 172, 173, 172, 173, 154,
2661 154, 154, 154, 154, 162, 208, 210, 165, 210, 166,
2662 210, 22, 154, 154, 154, 219, 154, 3, 4, 9,
2663 25, 26, 27, 40, 41, 59, 163, 209, 235, 236,
2664 237, 157, 237, 237, 237, 204, 202, 202, 202, 202,
2665 157, 196, 157, 196, 237, 160, 157, 157, 157, 157,
2666 157, 157, 237, 237, 237, 38, 204, 202, 238, 4,
2667 139, 140, 141, 144, 148, 149, 192, 220, 221, 38,
2668 154, 154, 154, 154, 208, 208, 208, 208, 208, 157,
2669 162, 166, 202, 210, 164, 166, 208, 208, 208, 157,
2670 199, 39, 202, 226, 227, 61, 234, 210, 238, 157,
2671 157, 237, 237, 237, 237, 237, 11, 54, 11, 248,
2672 237, 160, 238, 202, 238, 238, 238, 157, 157, 157,
2673 202, 237, 237, 157, 199, 199, 202, 208, 208, 208,
2674 208, 248, 157, 157, 157, 157, 208, 164, 166, 157,
2675 157, 38, 34, 54, 197, 200, 191, 157, 155, 22,
2676 164, 17, 17, 154, 157, 157, 157, 157, 237, 4,
2677 237, 157, 157, 237, 157, 157, 157, 4, 237, 237,
2678 154, 157, 196, 202, 155, 157, 157, 157, 157, 155,
2679 208, 208, 208, 208, 164, 208, 208, 202, 22, 4,
2680 199, 176, 177, 39, 202, 193, 157, 237, 237, 17,
2681 202, 247, 237, 237, 237, 237, 196, 196, 238, 237,
2682 157, 238, 238, 238, 247, 237, 208, 208, 208, 208,
2683 157, 155, 157, 157, 155, 155, 155, 191, 197, 198,
2684 22, 157, 160, 191, 191, 155, 157, 162, 237, 155,
2685 196, 155, 155, 155, 155, 208, 208, 208, 177, 54,
2686 195, 17, 162, 174, 244, 121, 122, 237, 237, 193,
2687 17, 202, 162, 193, 155, 155, 155, 4, 150, 194,
2688 237, 235, 162, 174, 191, 191, 38, 191, 191, 22,
2689 157, 235, 17, 237, 237, 17, 157, 237, 191, 191,
2690 237, 17, 73, 237, 17, 237
2683 137, 138, 139, 140, 171, 172, 173, 245, 251, 252,
2684 253, 254, 22, 193, 159, 157, 204, 204, 166, 168,
2685 204, 4, 157, 210, 204, 156, 238, 26, 27, 3,
2686 4, 5, 6, 9, 25, 40, 41, 90, 91, 92,
2687 93, 119, 133, 135, 136, 137, 139, 140, 162, 165,
2688 167, 169, 171, 172, 173, 211, 238, 180, 182, 57,
2689 10, 204, 240, 241, 11, 17, 11, 176, 191, 94,
2690 95, 96, 97, 98, 99, 100, 101, 102, 103, 174,
2691 26, 27, 100, 101, 102, 103, 104, 105, 106, 107,
2692 108, 109, 110, 111, 112, 113, 175, 174, 175, 204,
2693 204, 240, 204, 204, 248, 240, 240, 240, 240, 240,
2694 204, 204, 204, 204, 204, 240, 191, 117, 118, 54,
2695 121, 122, 141, 142, 144, 145, 147, 148, 149, 192,
2696 39, 205, 195, 164, 166, 166, 157, 195, 180, 180,
2697 215, 174, 175, 174, 175, 156, 156, 156, 156, 156,
2698 156, 156, 164, 210, 212, 167, 212, 168, 212, 22,
2699 156, 156, 156, 221, 156, 3, 4, 9, 25, 26,
2700 27, 40, 41, 59, 165, 211, 237, 238, 239, 159,
2701 239, 239, 239, 206, 204, 204, 204, 204, 159, 198,
2702 159, 198, 239, 162, 159, 159, 159, 159, 159, 159,
2703 239, 239, 239, 239, 239, 38, 206, 204, 240, 4,
2704 141, 142, 143, 146, 150, 151, 194, 222, 223, 38,
2705 156, 156, 156, 156, 210, 210, 210, 210, 210, 210,
2706 210, 159, 164, 168, 204, 212, 166, 168, 210, 210,
2707 210, 159, 201, 39, 204, 228, 229, 61, 236, 212,
2708 240, 159, 159, 239, 239, 239, 239, 239, 11, 54,
2709 11, 250, 239, 162, 240, 204, 240, 240, 240, 159,
2710 250, 159, 159, 159, 204, 239, 239, 159, 201, 201,
2711 204, 210, 210, 210, 210, 250, 159, 159, 159, 159,
2712 250, 159, 210, 166, 168, 159, 159, 38, 34, 54,
2713 199, 202, 193, 159, 157, 22, 166, 17, 17, 156,
2714 159, 159, 159, 159, 239, 4, 239, 159, 159, 239,
2715 159, 159, 159, 4, 204, 239, 239, 156, 159, 198,
2716 204, 157, 159, 159, 159, 159, 157, 210, 210, 210,
2717 210, 157, 210, 166, 210, 210, 204, 22, 4, 201,
2718 178, 179, 39, 204, 195, 159, 239, 239, 17, 204,
2719 249, 239, 239, 239, 239, 198, 198, 240, 239, 159,
2720 240, 240, 240, 239, 249, 239, 210, 210, 210, 210,
2721 159, 157, 159, 159, 250, 157, 157, 157, 193, 199,
2722 200, 22, 159, 162, 193, 193, 157, 159, 164, 239,
2723 250, 157, 198, 157, 157, 157, 157, 210, 210, 210,
2724 157, 179, 54, 197, 17, 164, 176, 246, 121, 122,
2725 239, 239, 195, 17, 204, 164, 195, 157, 157, 157,
2726 4, 152, 196, 239, 237, 164, 176, 193, 193, 38,
2727 193, 193, 22, 159, 237, 17, 239, 239, 17, 159,
2728 239, 193, 193, 239, 17, 73, 239, 17, 239
26912729 };
26922730
26932731 #define yyerrok (yyerrstatus = 0)
35023540 switch (yyn)
35033541 {
35043542 case 29:
3505 #line 1117 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3543 #line 1118 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35063544 { (yyval.IPredicate) = ICmpInst::ICMP_EQ; ;}
35073545 break;
35083546
35093547 case 30:
3510 #line 1117 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3548 #line 1118 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35113549 { (yyval.IPredicate) = ICmpInst::ICMP_NE; ;}
35123550 break;
35133551
35143552 case 31:
3515 #line 1118 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3553 #line 1119 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35163554 { (yyval.IPredicate) = ICmpInst::ICMP_SLT; ;}
35173555 break;
35183556
35193557 case 32:
3520 #line 1118 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3558 #line 1119 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35213559 { (yyval.IPredicate) = ICmpInst::ICMP_SGT; ;}
35223560 break;
35233561
35243562 case 33:
3525 #line 1119 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3563 #line 1120 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35263564 { (yyval.IPredicate) = ICmpInst::ICMP_SLE; ;}
35273565 break;
35283566
35293567 case 34:
3530 #line 1119 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3568 #line 1120 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35313569 { (yyval.IPredicate) = ICmpInst::ICMP_SGE; ;}
35323570 break;
35333571
35343572 case 35:
3535 #line 1120 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3573 #line 1121 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35363574 { (yyval.IPredicate) = ICmpInst::ICMP_ULT; ;}
35373575 break;
35383576
35393577 case 36:
3540 #line 1120 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3578 #line 1121 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35413579 { (yyval.IPredicate) = ICmpInst::ICMP_UGT; ;}
35423580 break;
35433581
35443582 case 37:
3545 #line 1121 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3583 #line 1122 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35463584 { (yyval.IPredicate) = ICmpInst::ICMP_ULE; ;}
35473585 break;
35483586
35493587 case 38:
3550 #line 1121 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3588 #line 1122 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35513589 { (yyval.IPredicate) = ICmpInst::ICMP_UGE; ;}
35523590 break;
35533591
35543592 case 39:
3555 #line 1125 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3593 #line 1126 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35563594 { (yyval.FPredicate) = FCmpInst::FCMP_OEQ; ;}
35573595 break;
35583596
35593597 case 40:
3560 #line 1125 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3598 #line 1126 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35613599 { (yyval.FPredicate) = FCmpInst::FCMP_ONE; ;}
35623600 break;
35633601
35643602 case 41:
3565 #line 1126 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3603 #line 1127 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35663604 { (yyval.FPredicate) = FCmpInst::FCMP_OLT; ;}
35673605 break;
35683606
35693607 case 42:
3570 #line 1126 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3608 #line 1127 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35713609 { (yyval.FPredicate) = FCmpInst::FCMP_OGT; ;}
35723610 break;
35733611
35743612 case 43:
3575 #line 1127 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3613 #line 1128 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35763614 { (yyval.FPredicate) = FCmpInst::FCMP_OLE; ;}
35773615 break;
35783616
35793617 case 44:
3580 #line 1127 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3618 #line 1128 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35813619 { (yyval.FPredicate) = FCmpInst::FCMP_OGE; ;}
35823620 break;
35833621
35843622 case 45:
3585 #line 1128 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3623 #line 1129 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35863624 { (yyval.FPredicate) = FCmpInst::FCMP_ORD; ;}
35873625 break;
35883626
35893627 case 46:
3590 #line 1128 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3628 #line 1129 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35913629 { (yyval.FPredicate) = FCmpInst::FCMP_UNO; ;}
35923630 break;
35933631
35943632 case 47:
3595 #line 1129 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3633 #line 1130 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
35963634 { (yyval.FPredicate) = FCmpInst::FCMP_UEQ; ;}
35973635 break;
35983636
35993637 case 48:
3600 #line 1129 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3638 #line 1130 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36013639 { (yyval.FPredicate) = FCmpInst::FCMP_UNE; ;}
36023640 break;
36033641
36043642 case 49:
3605 #line 1130 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3643 #line 1131 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36063644 { (yyval.FPredicate) = FCmpInst::FCMP_ULT; ;}
36073645 break;
36083646
36093647 case 50:
3610 #line 1130 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3648 #line 1131 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36113649 { (yyval.FPredicate) = FCmpInst::FCMP_UGT; ;}
36123650 break;
36133651
36143652 case 51:
3615 #line 1131 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3653 #line 1132 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36163654 { (yyval.FPredicate) = FCmpInst::FCMP_ULE; ;}
36173655 break;
36183656
36193657 case 52:
3620 #line 1131 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3658 #line 1132 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36213659 { (yyval.FPredicate) = FCmpInst::FCMP_UGE; ;}
36223660 break;
36233661
36243662 case 53:
3625 #line 1132 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3663 #line 1133 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36263664 { (yyval.FPredicate) = FCmpInst::FCMP_TRUE; ;}
36273665 break;
36283666
36293667 case 54:
3630 #line 1133 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3668 #line 1134 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36313669 { (yyval.FPredicate) = FCmpInst::FCMP_FALSE; ;}
36323670 break;
36333671
36343672 case 65:
3635 #line 1142 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3673 #line 1143 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36363674 { (yyval.StrVal) = 0; ;}
36373675 break;
36383676
36393677 case 66:
3640 #line 1144 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3678 #line 1145 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36413679 { (yyval.UIntVal)=(yyvsp[(3) - (4)].UInt64Val); ;}
36423680 break;
36433681
36443682 case 67:
3645 #line 1145 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3683 #line 1146 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36463684 { (yyval.UIntVal)=0; ;}
36473685 break;
36483686
36493687 case 68:
3650 #line 1149 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3688 #line 1150 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36513689 {
36523690 (yyval.StrVal) = (yyvsp[(1) - (2)].StrVal);
36533691 CHECK_FOR_ERROR
36553693 break;
36563694
36573695 case 69:
3658 #line 1153 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3696 #line 1154 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36593697 {
36603698 (yyval.StrVal) = 0;
36613699 CHECK_FOR_ERROR
36633701 break;
36643702
36653703 case 73:
3666 #line 1161 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3704 #line 1162 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36673705 {
36683706 (yyval.StrVal) = 0;
36693707 CHECK_FOR_ERROR
36713709 break;
36723710
36733711 case 74:
3674 #line 1166 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3712 #line 1167 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36753713 {
36763714 (yyval.StrVal) = (yyvsp[(1) - (2)].StrVal);
36773715 CHECK_FOR_ERROR
36793717 break;
36803718
36813719 case 75:
3682 #line 1172 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3720 #line 1173 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36833721 { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
36843722 break;
36853723
36863724 case 76:
3687 #line 1173 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3725 #line 1174 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36883726 { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
36893727 break;
36903728
36913729 case 77:
3692 #line 1174 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3730 #line 1175 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36933731 { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}
36943732 break;
36953733
36963734 case 78:
3697 #line 1175 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3735 #line 1176 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
36983736 { (yyval.Linkage) = GlobalValue::AppendingLinkage; ;}
36993737 break;
37003738
37013739 case 79:
3702 #line 1176 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3740 #line 1177 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37033741 { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}
37043742 break;
37053743
37063744 case 80:
3707 #line 1177 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3745 #line 1178 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37083746 { (yyval.Linkage) = GlobalValue::CommonLinkage; ;}
37093747 break;
37103748
37113749 case 81:
3712 #line 1181 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3750 #line 1182 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37133751 { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}
37143752 break;
37153753
37163754 case 82:
3717 #line 1182 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3755 #line 1183 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37183756 { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}
37193757 break;
37203758
37213759 case 83:
3722 #line 1183 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3760 #line 1184 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37233761 { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
37243762 break;
37253763
37263764 case 84:
3727 #line 1187 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3765 #line 1188 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37283766 { (yyval.Visibility) = GlobalValue::DefaultVisibility; ;}
37293767 break;
37303768
37313769 case 85:
3732 #line 1188 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3770 #line 1189 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37333771 { (yyval.Visibility) = GlobalValue::DefaultVisibility; ;}
37343772 break;
37353773
37363774 case 86:
3737 #line 1189 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3775 #line 1190 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37383776 { (yyval.Visibility) = GlobalValue::HiddenVisibility; ;}
37393777 break;
37403778
37413779 case 87:
3742 #line 1190 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3780 #line 1191 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37433781 { (yyval.Visibility) = GlobalValue::ProtectedVisibility; ;}
37443782 break;
37453783
37463784 case 88:
3747 #line 1194 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3785 #line 1195 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37483786 { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
37493787 break;
37503788
37513789 case 89:
3752 #line 1195 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3790 #line 1196 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37533791 { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}
37543792 break;
37553793
37563794 case 90:
3757 #line 1196 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3795 #line 1197 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37583796 { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}
37593797 break;
37603798
37613799 case 91:
3762 #line 1200 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3800 #line 1201 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37633801 { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
37643802 break;
37653803
37663804 case 92:
3767 #line 1201 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3805 #line 1202 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37683806 { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
37693807 break;
37703808
37713809 case 93:
3772 #line 1202 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3810 #line 1203 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37733811 { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}
37743812 break;
37753813
37763814 case 94:
3777 #line 1203 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3815 #line 1204 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37783816 { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
37793817 break;
37803818
37813819 case 95:
3782 #line 1204 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3820 #line 1205 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37833821 { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}
37843822 break;
37853823
37863824 case 96:
3787 #line 1208 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3825 #line 1209 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37883826 { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
37893827 break;
37903828
37913829 case 97:
3792 #line 1209 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3830 #line 1210 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37933831 { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
37943832 break;
37953833
37963834 case 98:
3797 #line 1210 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3835 #line 1211 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
37983836 { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
37993837 break;
38003838
38013839 case 99:
3802 #line 1213 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3840 #line 1214 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38033841 { (yyval.UIntVal) = CallingConv::C; ;}
38043842 break;
38053843
38063844 case 100:
3807 #line 1214 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3845 #line 1215 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38083846 { (yyval.UIntVal) = CallingConv::C; ;}
38093847 break;
38103848
38113849 case 101:
3812 #line 1215 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3850 #line 1216 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38133851 { (yyval.UIntVal) = CallingConv::Fast; ;}
38143852 break;
38153853
38163854 case 102:
3817 #line 1216 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3855 #line 1217 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38183856 { (yyval.UIntVal) = CallingConv::Cold; ;}
38193857 break;
38203858
38213859 case 103:
3822 #line 1217 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3860 #line 1218 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38233861 { (yyval.UIntVal) = CallingConv::X86_StdCall; ;}
38243862 break;
38253863
38263864 case 104:
3827 #line 1218 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3865 #line 1219 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38283866 { (yyval.UIntVal) = CallingConv::X86_FastCall; ;}
38293867 break;
38303868
38313869 case 105:
3832 #line 1219 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3870 #line 1220 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38333871 {
38343872 if ((unsigned)(yyvsp[(2) - (2)].UInt64Val) != (yyvsp[(2) - (2)].UInt64Val))
38353873 GEN_ERROR("Calling conv too large");
38393877 break;
38403878
38413879 case 106:
3842 #line 1226 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3880 #line 1227 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38433881 { (yyval.ParamAttrs) = ParamAttr::ZExt; ;}
38443882 break;
38453883
38463884 case 107:
3847 #line 1227 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3885 #line 1228 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38483886 { (yyval.ParamAttrs) = ParamAttr::ZExt; ;}
38493887 break;
38503888
38513889 case 108:
3852 #line 1228 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3890 #line 1229 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38533891 { (yyval.ParamAttrs) = ParamAttr::SExt; ;}
38543892 break;
38553893
38563894 case 109:
3857 #line 1229 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3895 #line 1230 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38583896 { (yyval.ParamAttrs) = ParamAttr::SExt; ;}
38593897 break;
38603898
38613899 case 110:
3862 #line 1230 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3900 #line 1231 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38633901 { (yyval.ParamAttrs) = ParamAttr::InReg; ;}
38643902 break;
38653903
38663904 case 111:
3867 #line 1231 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3905 #line 1232 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38683906 { (yyval.ParamAttrs) = ParamAttr::StructRet; ;}
38693907 break;
38703908
38713909 case 112:
3872 #line 1232 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3910 #line 1233 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38733911 { (yyval.ParamAttrs) = ParamAttr::NoAlias; ;}
38743912 break;
38753913
38763914 case 113:
3877 #line 1233 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3915 #line 1234 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38783916 { (yyval.ParamAttrs) = ParamAttr::ByVal; ;}
38793917 break;
38803918
38813919 case 114:
3882 #line 1234 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3920 #line 1235 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38833921 { (yyval.ParamAttrs) = ParamAttr::Nest; ;}
38843922 break;
38853923
38863924 case 115:
3887 #line 1235 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3925 #line 1236 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38883926 { (yyval.ParamAttrs) =
38893927 ParamAttr::constructAlignmentFromInt((yyvsp[(2) - (2)].UInt64Val)); ;}
38903928 break;
38913929
38923930 case 116:
3893 #line 1239 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3931 #line 1240 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38943932 { (yyval.ParamAttrs) = ParamAttr::None; ;}
38953933 break;
38963934
38973935 case 117:
3898 #line 1240 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3936 #line 1241 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
38993937 {
39003938 (yyval.ParamAttrs) = (yyvsp[(1) - (2)].ParamAttrs) | (yyvsp[(2) - (2)].ParamAttrs);
39013939 ;}
39023940 break;
39033941
39043942 case 118:
3905 #line 1245 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3943 #line 1246 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39063944 { (yyval.ParamAttrs) = ParamAttr::NoReturn; ;}
39073945 break;
39083946
39093947 case 119:
3910 #line 1246 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3948 #line 1247 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39113949 { (yyval.ParamAttrs) = ParamAttr::NoUnwind; ;}
39123950 break;
39133951
39143952 case 120:
3915 #line 1247 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3953 #line 1248 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39163954 { (yyval.ParamAttrs) = ParamAttr::ZExt; ;}
39173955 break;
39183956
39193957 case 121:
3920 #line 1248 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3958 #line 1249 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39213959 { (yyval.ParamAttrs) = ParamAttr::SExt; ;}
39223960 break;
39233961
39243962 case 122:
3925 #line 1249 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3963 #line 1250 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39263964 { (yyval.ParamAttrs) = ParamAttr::ReadNone; ;}
39273965 break;
39283966
39293967 case 123:
3930 #line 1250 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3968 #line 1251 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39313969 { (yyval.ParamAttrs) = ParamAttr::ReadOnly; ;}
39323970 break;
39333971
39343972 case 124:
3935 #line 1253 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3973 #line 1254 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39363974 { (yyval.ParamAttrs) = ParamAttr::None; ;}
39373975 break;
39383976
39393977 case 125:
3940 #line 1254 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3978 #line 1255 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39413979 {
39423980 (yyval.ParamAttrs) = (yyvsp[(1) - (2)].ParamAttrs) | (yyvsp[(2) - (2)].ParamAttrs);
39433981 ;}
39443982 break;
39453983
39463984 case 126:
3947 #line 1259 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3985 #line 1260 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39483986 { (yyval.StrVal) = 0; ;}
39493987 break;
39503988
39513989 case 127:
3952 #line 1260 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3990 #line 1261 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39533991 {
39543992 (yyval.StrVal) = (yyvsp[(2) - (2)].StrVal);
39553993 ;}
39563994 break;
39573995
39583996 case 128:
3959 #line 1267 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
3997 #line 1268 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39603998 { (yyval.UIntVal) = 0; ;}
39613999 break;
39624000
39634001 case 129:
3964 #line 1268 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4002 #line 1269 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39654003 {
39664004 (yyval.UIntVal) = (yyvsp[(2) - (2)].UInt64Val);
39674005 if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
39714009 break;
39724010
39734011 case 130:
3974 #line 1274 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4012 #line 1275 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39754013 { (yyval.UIntVal) = 0; ;}
39764014 break;
39774015
39784016 case 131:
3979 #line 1275 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4017 #line 1276 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39804018 {
39814019 (yyval.UIntVal) = (yyvsp[(3) - (3)].UInt64Val);
39824020 if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
39864024 break;
39874025
39884026 case 132:
3989 #line 1284 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4027 #line 1285 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
39904028 {
39914029 for (unsigned i = 0, e = (yyvsp[(2) - (2)].StrVal)->length(); i != e; ++i)
39924030 if ((*(yyvsp[(2) - (2)].StrVal))[i] == '"' || (*(yyvsp[(2) - (2)].StrVal))[i] == '\\')
39974035 break;
39984036
39994037 case 133:
4000 #line 1292 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4038 #line 1293 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40014039 { (yyval.StrVal) = 0; ;}
40024040 break;
40034041
40044042 case 134:
4005 #line 1293 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4043 #line 1294 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40064044 { (yyval.StrVal) = (yyvsp[(1) - (1)].StrVal); ;}
40074045 break;
40084046
40094047 case 135:
4010 #line 1298 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4048 #line 1299 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40114049 {;}
40124050 break;
40134051
40144052 case 136:
4015 #line 1299 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4053 #line 1300 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40164054 {;}
40174055 break;
40184056
40194057 case 137:
4020 #line 1300 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4058 #line 1301 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40214059 {
40224060 CurGV->setSection(*(yyvsp[(1) - (1)].StrVal));
40234061 delete (yyvsp[(1) - (1)].StrVal);
40264064 break;
40274065
40284066 case 138:
4029 #line 1305 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4067 #line 1306 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40304068 {
40314069 if ((yyvsp[(2) - (2)].UInt64Val) != 0 && !isPowerOf2_32((yyvsp[(2) - (2)].UInt64Val)))
40324070 GEN_ERROR("Alignment must be a power of two");
40364074 break;
40374075
40384076 case 146:
4039 #line 1321 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4077 #line 1322 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40404078 {
40414079 (yyval.TypeVal) = new PATypeHolder(OpaqueType::get());
40424080 CHECK_FOR_ERROR
40444082 break;
40454083
40464084 case 147:
4047 #line 1325 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4085 #line 1326 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40484086 {
40494087 (yyval.TypeVal) = new PATypeHolder((yyvsp[(1) - (1)].PrimType));
40504088 CHECK_FOR_ERROR
40524090 break;
40534091
40544092 case 148:
4055 #line 1329 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4093 #line 1330 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40564094 { // Pointer type?
40574095 if (*(yyvsp[(1) - (3)].TypeVal) == Type::LabelTy)
40584096 GEN_ERROR("Cannot form a pointer to a basic block");
40634101 break;
40644102
40654103 case 149:
4066 #line 1336 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4104 #line 1337 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40674105 { // Named types are also simple types...
40684106 const Type* tmp = getTypeVal((yyvsp[(1) - (1)].ValIDVal));
40694107 CHECK_FOR_ERROR
40724110 break;
40734111
40744112 case 150:
4075 #line 1341 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4113 #line 1342 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40764114 { // Type UpReference
40774115 if ((yyvsp[(2) - (2)].UInt64Val) > (uint64_t)~0U) GEN_ERROR("Value out of range");
40784116 OpaqueType *OT = OpaqueType::get(); // Use temporary placeholder
40844122 break;
40854123
40864124 case 151:
4087 #line 1349 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4125 #line 1350 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
40884126 {
40894127 // Allow but ignore attributes on function types; this permits auto-upgrade.
40904128 // FIXME: remove in LLVM 3.0.
41174155 break;
41184156
41194157 case 152:
4120 #line 1378 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4158 #line 1379 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
41214159 {
41224160 // Allow but ignore attributes on function types; this permits auto-upgrade.
41234161 // FIXME: remove in LLVM 3.0.
41454183 break;
41464184
41474185 case 153:
4148 #line 1403 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4186 #line 1404 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
41494187 { // Sized array type?
41504188 (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(ArrayType::get(*(yyvsp[(4) - (5)].TypeVal), (unsigned)(yyvsp[(2) - (5)].UInt64Val))));
41514189 delete (yyvsp[(4) - (5)].TypeVal);
41544192 break;
41554193
41564194 case 154:
4157 #line 1408 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4195 #line 1409 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
41584196 { // Vector type?
41594197 const llvm::Type* ElemTy = (yyvsp[(4) - (5)].TypeVal)->get();
41604198 if ((unsigned)(yyvsp[(2) - (5)].UInt64Val) != (yyvsp[(2) - (5)].UInt64Val))
41684206 break;
41694207
41704208 case 155:
4171 #line 1418 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4209 #line 1419 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
41724210 { // Structure type?
41734211 std::vector Elements;
41744212 for (std::list::iterator I = (yyvsp[(2) - (3)].TypeList)->begin(),
41824220 break;
41834221
41844222 case 156:
4185 #line 1428 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4223 #line 1429 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
41864224 { // Empty structure type?
41874225 (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector()));
41884226 CHECK_FOR_ERROR
41904228 break;
41914229
41924230 case 157:
4193 #line 1432 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4231 #line 1433 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
41944232 {
41954233 std::vector Elements;
41964234 for (std::list::iterator I = (yyvsp[(3) - (5)].TypeList)->begin(),
42044242 break;
42054243
42064244 case 158:
4207 #line 1442 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4245 #line 1443 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42084246 { // Empty structure type?
42094247 (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector(), true));
42104248 CHECK_FOR_ERROR
42124250 break;
42134251
42144252 case 159:
4215 #line 1449 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4253 #line 1450 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42164254 {
42174255 // Allow but ignore attributes on function types; this permits auto-upgrade.
42184256 // FIXME: remove in LLVM 3.0.
42224260 break;
42234261
42244262 case 160:
4225 #line 1458 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4263 #line 1459 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42264264 {
42274265 if (!UpRefs.empty())
42284266 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (1)].TypeVal))->getDescription());
42334271 break;
42344272
42354273 case 161:
4236 #line 1465 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4274 #line 1466 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42374275 {
42384276 (yyval.TypeVal) = new PATypeHolder(Type::VoidTy);
42394277 ;}
42404278 break;
42414279
42424280 case 162:
4243 #line 1470 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4281 #line 1471 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42444282 {
42454283 (yyval.TypeWithAttrsList) = new TypeWithAttrsList();
42464284 (yyval.TypeWithAttrsList)->push_back((yyvsp[(1) - (1)].TypeWithAttrs));
42494287 break;
42504288
42514289 case 163:
4252 #line 1475 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4290 #line 1476 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42534291 {
42544292 ((yyval.TypeWithAttrsList)=(yyvsp[(1) - (3)].TypeWithAttrsList))->push_back((yyvsp[(3) - (3)].TypeWithAttrs));
42554293 CHECK_FOR_ERROR
42574295 break;
42584296
42594297 case 165:
4260 #line 1483 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4298 #line 1484 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42614299 {
42624300 (yyval.TypeWithAttrsList)=(yyvsp[(1) - (3)].TypeWithAttrsList);
42634301 TypeWithAttrs TWA; TWA.Attrs = ParamAttr::None;
42684306 break;
42694307
42704308 case 166:
4271 #line 1490 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4309 #line 1491 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42724310 {
42734311 (yyval.TypeWithAttrsList) = new TypeWithAttrsList;
42744312 TypeWithAttrs TWA; TWA.Attrs = ParamAttr::None;
42794317 break;
42804318
42814319 case 167:
4282 #line 1497 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4320 #line 1498 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42834321 {
42844322 (yyval.TypeWithAttrsList) = new TypeWithAttrsList();
42854323 CHECK_FOR_ERROR
42874325 break;
42884326
42894327 case 168:
4290 #line 1505 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4328 #line 1506 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
42914329 {
42924330 (yyval.TypeList) = new std::list();
42934331 (yyval.TypeList)->push_back(*(yyvsp[(1) - (1)].TypeVal));
42974335 break;
42984336
42994337 case 169:
4300 #line 1511 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4338 #line 1512 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
43014339 {
43024340 ((yyval.TypeList)=(yyvsp[(1) - (3)].TypeList))->push_back(*(yyvsp[(3) - (3)].TypeVal));
43034341 delete (yyvsp[(3) - (3)].TypeVal);
43064344 break;
43074345
43084346 case 170:
4309 #line 1523 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4347 #line 1524 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
43104348 { // Nonempty unsized arr
43114349 if (!UpRefs.empty())
43124350 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (4)].TypeVal))->getDescription());
43384376 break;
43394377
43404378 case 171:
4341 #line 1551 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4379 #line 1552 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
43424380 {
43434381 if (!UpRefs.empty())
43444382 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription());
43584396 break;
43594397
43604398 case 172:
4361 #line 1567 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4399 #line 1568 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
43624400 {
43634401 if (!UpRefs.empty())
43644402 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription());
43894427 break;
43904428
43914429 case 173:
4392 #line 1594 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4430 #line 1595 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
43934431 { // Nonempty unsized arr
43944432 if (!UpRefs.empty())
43954433 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (4)].TypeVal))->getDescription());
44214459 break;
44224460
44234461 case 174:
4424 #line 1622 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4462 #line 1623 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
44254463 {
44264464 const StructType *STy = dyn_cast((yyvsp[(1) - (4)].TypeVal)->get());
44274465 if (STy == 0)
44514489 break;
44524490
44534491 case 175:
4454 #line 1648 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4492 #line 1649 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
44554493 {
44564494 if (!UpRefs.empty())
44574495 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription());
44754513 break;
44764514
44774515 case 176:
4478 #line 1668 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4516 #line 1669 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
44794517 {
44804518 const StructType *STy = dyn_cast((yyvsp[(1) - (6)].TypeVal)->get());
44814519 if (STy == 0)
45054543 break;
45064544
45074545 case 177:
4508 #line 1694 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4546 #line 1695 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
45094547 {
45104548 if (!UpRefs.empty())
45114549 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (5)].TypeVal))->getDescription());
45294567 break;
45304568
45314569 case 178:
4532 #line 1714 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4570 #line 1715 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
45334571 {
45344572 if (!UpRefs.empty())
45354573 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
45454583 break;
45464584
45474585 case 179:
4548 #line 1726 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4586 #line 1727 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
45494587 {
45504588 if (!UpRefs.empty())
45514589 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
45564594 break;
45574595
45584596 case 180:
4559 #line 1733 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4597 #line 1734 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
45604598 {
45614599 if (!UpRefs.empty())
45624600 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
46264664 break;
46274665
46284666 case 181:
4629 #line 1799 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4667 #line 1800 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
46304668 {
46314669 if (!UpRefs.empty())
46324670 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
46404678 break;
46414679
46424680 case 182:
4643 #line 1809 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4681 #line 1810 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
46444682 {
46454683 if (!UpRefs.empty())
46464684 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
46544692 break;
46554693
46564694 case 183:
4657 #line 1819 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4695 #line 1820 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
46584696 { // integral constants
46594697 if (!ConstantInt::isValueValidForType((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].SInt64Val)))
46604698 GEN_ERROR("Constant value doesn't fit in type");
46644702 break;
46654703
46664704 case 184:
4667 #line 1825 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4705 #line 1826 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
46684706 { // arbitrary precision integer constants
46694707 uint32_t BitWidth = cast((yyvsp[(1) - (2)].PrimType))->getBitWidth();
46704708 if ((yyvsp[(2) - (2)].APIntVal)->getBitWidth() > BitWidth) {
46784716 break;
46794717
46804718 case 185:
4681 #line 1835 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4719 #line 1836 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
46824720 { // integral constants
46834721 if (!ConstantInt::isValueValidForType((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].UInt64Val)))
46844722 GEN_ERROR("Constant value doesn't fit in type");
46884726 break;
46894727
46904728 case 186:
4691 #line 1841 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4729 #line 1842 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
46924730 { // arbitrary precision integer constants
46934731 uint32_t BitWidth = cast((yyvsp[(1) - (2)].PrimType))->getBitWidth();
46944732 if ((yyvsp[(2) - (2)].APIntVal)->getBitWidth() > BitWidth) {
47024740 break;
47034741
47044742 case 187:
4705 #line 1851 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4743 #line 1852 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
47064744 { // Boolean constants
47074745 assert(cast((yyvsp[(1) - (2)].PrimType))->getBitWidth() == 1 && "Not Bool?");
47084746 (yyval.ConstVal) = ConstantInt::getTrue();
47114749 break;
47124750
47134751 case 188:
4714 #line 1856 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4752 #line 1857 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
47154753 { // Boolean constants
47164754 assert(cast((yyvsp[(1) - (2)].PrimType))->getBitWidth() == 1 && "Not Bool?");
47174755 (yyval.ConstVal) = ConstantInt::getFalse();
47204758 break;
47214759
47224760 case 189:
4723 #line 1861 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4761 #line 1862 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
47244762 { // Floating point constants
47254763 if (!ConstantFP::isValueValidForType((yyvsp[(1) - (2)].PrimType), *(yyvsp[(2) - (2)].FPVal)))
47264764 GEN_ERROR("Floating point constant invalid for type");
47354773 break;
47364774
47374775 case 190:
4738 #line 1874 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4776 #line 1875 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
47394777 {
47404778 if (!UpRefs.empty())
47414779 GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(5) - (6)].TypeVal))->getDescription());
47514789 break;
47524790
47534791 case 191:
4754 #line 1886 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4792 #line 1887 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
47554793 {
47564794 if (!isa((yyvsp[(3) - (5)].ConstVal)->getType()))
47574795 GEN_ERROR("GetElementPtr requires a pointer operand");
47764814 break;
47774815
47784816 case 192:
4779 #line 1907 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4817 #line 1908 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
47804818 {
47814819 if ((yyvsp[(3) - (8)].ConstVal)->getType() != Type::Int1Ty)
47824820 GEN_ERROR("Select condition must be of boolean type");
47884826 break;
47894827
47904828 case 193:
4791 #line 1915 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4829 #line 1916 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
47924830 {
47934831 if ((yyvsp[(3) - (6)].ConstVal)->getType() != (yyvsp[(5) - (6)].ConstVal)->getType())
47944832 GEN_ERROR("Binary operator types must match");
47984836 break;
47994837
48004838 case 194:
4801 #line 1921 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4839 #line 1922 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48024840 {
48034841 if ((yyvsp[(3) - (6)].ConstVal)->getType() != (yyvsp[(5) - (6)].ConstVal)->getType())
48044842 GEN_ERROR("Logical operator types must match");
48134851 break;
48144852
48154853 case 195:
4816 #line 1932 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4854 #line 1933 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48174855 {
48184856 if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType())
48194857 GEN_ERROR("icmp operand types must match");
48224860 break;
48234861
48244862 case 196:
4825 #line 1937 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4863 #line 1938 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48264864 {
48274865 if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType())
48284866 GEN_ERROR("fcmp operand types must match");
48314869 break;
48324870
48334871 case 197:
4834 #line 1942 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4872 #line 1943 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48354873 {
48364874 if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType())
48374875 GEN_ERROR("vicmp operand types must match");
48404878 break;
48414879
48424880 case 198:
4843 #line 1947 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4881 #line 1948 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48444882 {
48454883 if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType())
48464884 GEN_ERROR("vfcmp operand types must match");
48494887 break;
48504888
48514889 case 199:
4852 #line 1952 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4890 #line 1953 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48534891 {
48544892 if (!ExtractElementInst::isValidOperands((yyvsp[(3) - (6)].ConstVal), (yyvsp[(5) - (6)].ConstVal)))
48554893 GEN_ERROR("Invalid extractelement operands");
48594897 break;
48604898
48614899 case 200:
4862 #line 1958 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4900 #line 1959 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48634901 {
48644902 if (!InsertElementInst::isValidOperands((yyvsp[(3) - (8)].ConstVal), (yyvsp[(5) - (8)].ConstVal), (yyvsp[(7) - (8)].ConstVal)))
48654903 GEN_ERROR("Invalid insertelement operands");
48694907 break;
48704908
48714909 case 201:
4872 #line 1964 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4910 #line 1965 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48734911 {
48744912 if (!ShuffleVectorInst::isValidOperands((yyvsp[(3) - (8)].ConstVal), (yyvsp[(5) - (8)].ConstVal), (yyvsp[(7) - (8)].ConstVal)))
48754913 GEN_ERROR("Invalid shufflevector operands");
48794917 break;
48804918
48814919 case 202:
4882 #line 1973 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4920 #line 1971 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4921 {
4922 if (!isa((yyvsp[(3) - (5)].ConstVal)->getType()) && !isa((yyvsp[(3) - (5)].ConstVal)->getType()))
4923 GEN_ERROR("ExtractValue requires an aggregate operand");
4924
4925 const Type *IdxTy =
4926 ExtractValueInst::getIndexedType((yyvsp[(3) - (5)].ConstVal)->getType(), (yyvsp[(4) - (5)].ValueList)->begin(), (yyvsp[(4) - (5)].ValueList)->end());
4927 if (!IdxTy)
4928 GEN_ERROR("Index list invalid for constant extractvalue");
4929
4930 SmallVector IdxVec;
4931 for (unsigned i = 0, e = (yyvsp[(4) - (5)].ValueList)->size(); i != e; ++i)
4932 if (Constant *C = dyn_cast((*(yyvsp[(4) - (5)].ValueList))[i]))
4933 IdxVec.push_back(C);
4934 else
4935 GEN_ERROR("Indices to constant extractvalue must be constants");
4936
4937 delete (yyvsp[(4) - (5)].ValueList);
4938
4939 (yyval.ConstVal) = ConstantExpr::getExtractValue((yyvsp[(3) - (5)].ConstVal), &IdxVec[0], IdxVec.size());
4940 CHECK_FOR_ERROR
4941 ;}
4942 break;
4943
4944 case 203:
4945 #line 1992 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4946 {
4947 if (!isa((yyvsp[(3) - (7)].ConstVal)->getType()) && !isa((yyvsp[(3) - (7)].ConstVal)->getType()))
4948 GEN_ERROR("InsertValue requires an aggregate operand");
4949
4950 const Type *IdxTy =
4951 ExtractValueInst::getIndexedType((yyvsp[(3) - (7)].ConstVal)->getType(), (yyvsp[(6) - (7)].ValueList)->begin(), (yyvsp[(6) - (7)].ValueList)->end());
4952 if (IdxTy != (yyvsp[(5) - (7)].ConstVal)->getType())
4953 GEN_ERROR("Index list invalid for constant insertvalue");
4954
4955 SmallVector IdxVec;
4956 for (unsigned i = 0, e = (yyvsp[(6) - (7)].ValueList)->size(); i != e; ++i)
4957 if (Constant *C = dyn_cast((*(yyvsp[(6) - (7)].ValueList))[i]))
4958 IdxVec.push_back(C);
4959 else
4960 GEN_ERROR("Indices to constant insertvalue must be constants");
4961
4962 delete (yyvsp[(6) - (7)].ValueList);
4963
4964 (yyval.ConstVal) = ConstantExpr::getInsertValue((yyvsp[(3) - (7)].ConstVal), (yyvsp[(5) - (7)].ConstVal), &IdxVec[0], IdxVec.size());
4965 CHECK_FOR_ERROR
4966 ;}
4967 break;
4968
4969 case 204:
4970 #line 2016 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48834971 {
48844972 ((yyval.ConstVector) = (yyvsp[(1) - (3)].ConstVector))->push_back((yyvsp[(3) - (3)].ConstVal));
48854973 CHECK_FOR_ERROR
48864974 ;}
48874975 break;
48884976
4889 case 203:
4890 #line 1977 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4977 case 205:
4978 #line 2020 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
48914979 {
48924980 (yyval.ConstVector) = new std::vector();
48934981 (yyval.ConstVector)->push_back((yyvsp[(1) - (1)].ConstVal));
48954983 ;}
48964984 break;
48974985
4898 case 204:
4899 #line 1985 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4986 case 206:
4987 #line 2028 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
49004988 { (yyval.BoolVal) = false; ;}
49014989 break;
49024990
4903 case 205:
4904 #line 1985 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4991 case 207:
4992 #line 2028 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
49054993 { (yyval.BoolVal) = true; ;}
49064994 break;
49074995
4908 case 206:
4909 #line 1988 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
4996 case 208:
4997 #line 2031 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
49104998 { (yyval.BoolVal) = true; ;}
49114999 break;
49125000
4913 case 207:
4914 #line 1988 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
5001 case 209:
5002 #line 2031 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
49155003 { (yyval.BoolVal) = false; ;}
49165004 break;
49175005
4918 case 208:
4919 #line 1991 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
5006 case 210:
5007 #line 2034 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
49205008 {
49215009 const Type* VTy = (yyvsp[(1) - (2)].TypeVal)->get();
49225010 Value *V = getVal(VTy, (yyvsp[(2) - (2)].ValIDVal));
49315019 ;}
49325020 break;
49335021
4934 case 209:
4935 #line 2003 "/Volumes/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
5022 case 211:
5023 #line 2046 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
49365024 {
49375025 Constant *Val = (yyvsp[(3) - (6)].ConstVal);
49385026 const Type *DestTy = (yyvsp[(5) - (6)].TypeVal)->get();
49475035 ;}