diff options
author | Dale Johannesen <dalej@apple.com> | 2007-11-05 21:20:28 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@apple.com> | 2007-11-05 21:20:28 +0000 |
commit | cfb19e6297a5527845fd6c14b7dff5dea34b6a25 (patch) | |
tree | b09932726b145c3501614679561c699708a4dc48 /lib | |
parent | a23f9db964559748fcac9446dc65659ada3e21d1 (diff) | |
download | external_llvm-cfb19e6297a5527845fd6c14b7dff5dea34b6a25.zip external_llvm-cfb19e6297a5527845fd6c14b7dff5dea34b6a25.tar.gz external_llvm-cfb19e6297a5527845fd6c14b7dff5dea34b6a25.tar.bz2 |
Make labels work in asm blocks; allow labels as
parameters. Rename ValueRefList to ParamList
in AsmParser, since its only use is for parameters.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43734 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/AsmParser/ParserInternals.h | 4 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.cpp.cvs | 1487 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.h.cvs | 2 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.y | 40 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.y.cvs | 40 | ||||
-rw-r--r-- | lib/Bitcode/Reader/BitcodeReader.cpp | 5 | ||||
-rw-r--r-- | lib/CodeGen/AsmPrinter.cpp | 19 | ||||
-rw-r--r-- | lib/CodeGen/SelectionDAG/ScheduleDAG.cpp | 9 | ||||
-rw-r--r-- | lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | 50 | ||||
-rw-r--r-- | lib/CodeGen/SelectionDAG/TargetLowering.cpp | 9 |
10 files changed, 876 insertions, 789 deletions
diff --git a/lib/AsmParser/ParserInternals.h b/lib/AsmParser/ParserInternals.h index 61de652..80a5692 100644 --- a/lib/AsmParser/ParserInternals.h +++ b/lib/AsmParser/ParserInternals.h @@ -241,12 +241,12 @@ struct ArgListEntry { typedef std::vector<struct ArgListEntry> ArgListType; -struct ValueRefListEntry { +struct ParamListEntry { Value *Val; uint16_t Attrs; }; -typedef std::vector<ValueRefListEntry> ValueRefList; +typedef std::vector<ParamListEntry> ParamList; } // End llvm namespace diff --git a/lib/AsmParser/llvmAsmParser.cpp.cvs b/lib/AsmParser/llvmAsmParser.cpp.cvs index 7f94f1d..eec7105 100644 --- a/lib/AsmParser/llvmAsmParser.cpp.cvs +++ b/lib/AsmParser/llvmAsmParser.cpp.cvs @@ -1,5 +1,5 @@ -/* A Bison parser, made from /Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y +/* A Bison parser, made from /Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y by GNU Bison version 1.28 */ #define YYBISON 1 /* Identify Bison output. */ @@ -155,7 +155,7 @@ #define HIDDEN 398 #define PROTECTED 399 -#line 14 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 14 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" #include "ParserInternals.h" #include "llvm/CallingConv.h" @@ -1109,7 +1109,7 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) { } -#line 968 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 968 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" typedef union { llvm::Module *ModuleVal; llvm::Function *FunctionVal; @@ -1126,7 +1126,7 @@ typedef union { llvm::ArgListType *ArgList; llvm::TypeWithAttrs TypeWithAttrs; llvm::TypeWithAttrsList *TypeWithAttrsList; - llvm::ValueRefList *ValueRefList; + llvm::ParamList *ParamList; // Represent the RHS of PHI node std::list<std::pair<llvm::Value*, @@ -1166,7 +1166,7 @@ typedef union { -#define YYFINAL 594 +#define YYFINAL 600 #define YYFLAG -32768 #define YYNTBASE 160 @@ -1245,9 +1245,10 @@ static const short yyprhs[] = { 0, 693, 695, 701, 703, 705, 707, 709, 711, 713, 716, 719, 722, 726, 729, 730, 732, 735, 738, 742, 752, 762, 771, 786, 788, 790, 797, 803, 806, 813, 821, - 825, 831, 832, 833, 837, 840, 842, 848, 854, 861, - 868, 873, 880, 885, 890, 897, 904, 907, 916, 918, - 920, 921, 925, 932, 936, 943, 946, 952, 960 + 825, 829, 835, 841, 842, 843, 847, 850, 852, 858, + 864, 871, 878, 883, 890, 895, 900, 907, 914, 917, + 926, 928, 930, 931, 935, 942, 946, 953, 956, 962, + 970 }; static const short yyrhs[] = { 73, @@ -1333,7 +1334,8 @@ static const short yyrhs[] = { 73, 165, 224, 147, 17, 226, 0, 165, 224, 147, 17, 226, 0, 169, 238, 0, 191, 152, 226, 147, 226, 154, 0, 234, 147, 152, 226, 147, 226, 154, 0, - 191, 226, 181, 0, 235, 147, 191, 226, 181, 0, + 191, 226, 181, 0, 17, 226, 181, 0, 235, 147, + 191, 226, 181, 0, 235, 147, 17, 226, 181, 0, 0, 0, 236, 147, 227, 0, 56, 55, 0, 55, 0, 160, 191, 226, 147, 226, 0, 161, 191, 226, 147, 226, 0, 88, 163, 191, 226, 147, 226, 0, @@ -1382,9 +1384,10 @@ static const short yyrline[] = { 0, 2470, 2474, 2484, 2488, 2492, 2497, 2504, 2504, 2510, 2519, 2523, 2532, 2541, 2550, 2554, 2561, 2565, 2569, 2574, 2584, 2603, 2612, 2692, 2696, 2703, 2714, 2727, 2737, 2748, 2758, - 2767, 2776, 2779, 2780, 2787, 2791, 2796, 2817, 2834, 2848, - 2862, 2874, 2882, 2889, 2895, 2901, 2907, 2922, 3007, 3012, - 3016, 3023, 3030, 3038, 3045, 3053, 3061, 3075, 3092 + 2767, 2773, 2782, 2788, 2791, 2792, 2799, 2803, 2808, 2829, + 2846, 2860, 2874, 2886, 2894, 2901, 2907, 2913, 2919, 2934, + 3019, 3024, 3028, 3035, 3042, 3050, 3057, 3065, 3073, 3087, + 3104 }; #endif @@ -1421,7 +1424,7 @@ static const char * const yytname[] = { "$","error","$undefined.","ESINT64VAL" "LibrariesDefinition","LibList","ArgListH","ArgList","FunctionHeaderH","BEGIN", "FunctionHeader","END","Function","FunctionProto","OptSideEffect","ConstValueRef", "SymbolicValueRef","ValueRef","ResolvedVal","BasicBlockList","BasicBlock","InstructionList", -"BBTerminatorInst","JumpTable","Inst","PHIList","ValueRefList","IndexList","OptTailCall", +"BBTerminatorInst","JumpTable","Inst","PHIList","ParamList","IndexList","OptTailCall", "InstVal","OptVolatile","MemoryInst", NULL }; #endif @@ -1455,9 +1458,10 @@ static const short yyr1[] = { 0, 224, 224, 225, 225, 225, 225, 226, 226, 227, 228, 228, 229, 230, 230, 230, 231, 231, 231, 231, 231, 231, 231, 231, 231, 232, 232, 233, 234, 234, 235, - 235, 235, 236, 236, 237, 237, 238, 238, 238, 238, - 238, 238, 238, 238, 238, 238, 238, 238, 238, 239, - 239, 240, 240, 240, 240, 240, 240, 240, 240 + 235, 235, 235, 235, 236, 236, 237, 237, 238, 238, + 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, + 238, 239, 239, 240, 240, 240, 240, 240, 240, 240, + 240 }; static const short yyr2[] = { 0, @@ -1489,9 +1493,10 @@ static const short yyr2[] = { 0, 1, 5, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 2, 0, 1, 2, 2, 3, 9, 9, 8, 14, 1, 1, 6, 5, 2, 6, 7, 3, - 5, 0, 0, 3, 2, 1, 5, 5, 6, 6, - 4, 6, 4, 4, 6, 6, 2, 8, 1, 1, - 0, 3, 6, 3, 6, 2, 5, 7, 4 + 3, 5, 5, 0, 0, 3, 2, 1, 5, 5, + 6, 6, 4, 6, 4, 4, 6, 6, 2, 8, + 1, 1, 0, 3, 6, 3, 6, 2, 5, 7, + 4 }; static const short yydefact[] = { 70, @@ -1507,491 +1512,509 @@ static const short yydefact[] = { 70, 236, 237, 238, 260, 220, 221, 224, 0, 158, 141, 0, 0, 0, 0, 147, 159, 0, 139, 158, 0, 0, 94, 93, 0, 193, 194, 0, 0, 96, 97, - 98, 99, 100, 0, 239, 0, 301, 263, 0, 222, + 98, 99, 100, 0, 239, 0, 303, 263, 0, 222, 157, 111, 153, 155, 0, 0, 0, 0, 0, 0, 146, 0, 0, 0, 152, 0, 151, 0, 216, 130, 131, 132, 135, 134, 133, 0, 0, 0, 210, 101, - 0, 233, 234, 235, 300, 286, 0, 0, 0, 0, + 0, 233, 234, 235, 302, 288, 0, 0, 0, 0, 95, 273, 274, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13, 14, 15, 10, 11, 12, 0, 0, 0, 0, 0, 0, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 262, 95, 277, 0, 299, + 0, 0, 0, 0, 0, 262, 95, 277, 0, 301, 223, 150, 0, 117, 0, 0, 149, 0, 160, 117, 212, 214, 0, 197, 178, 179, 174, 176, 175, 177, 180, 173, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172, 171, - 126, 0, 285, 267, 0, 266, 0, 0, 54, 0, + 126, 0, 287, 267, 0, 266, 0, 0, 54, 0, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 0, 52, 53, 48, 49, 50, 51, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 0, 121, - 121, 306, 0, 0, 297, 0, 0, 0, 0, 0, + 121, 308, 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 103, 105, 104, 102, 106, 107, 108, 109, 110, 112, 156, 154, 143, 144, 145, 148, 142, 126, 126, 0, 0, 0, 0, 0, 0, 0, 0, 162, 192, 0, 0, 0, 166, 0, 163, 0, 0, 0, 0, 211, 231, 242, 243, 244, 249, 245, 246, 247, 248, 240, 0, 251, 258, 257, - 259, 0, 268, 0, 0, 0, 0, 0, 302, 0, - 304, 283, 0, 0, 0, 0, 0, 0, 0, 0, + 259, 0, 268, 0, 0, 0, 0, 0, 304, 0, + 306, 285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 115, 113, 114, 118, - 213, 215, 0, 0, 0, 283, 0, 0, 0, 0, + 213, 215, 0, 0, 0, 285, 0, 0, 0, 0, 0, 161, 147, 159, 0, 164, 165, 0, 0, 0, 0, 0, 128, 126, 230, 111, 228, 0, 241, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 309, - 0, 0, 0, 293, 294, 0, 0, 0, 0, 291, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 311, + 0, 0, 0, 295, 296, 0, 0, 0, 0, 293, 0, 121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 168, 0, 0, 0, 0, 123, 129, 127, - 64, 0, 117, 0, 250, 0, 0, 282, 0, 0, - 121, 122, 121, 0, 0, 0, 0, 0, 0, 287, - 288, 282, 0, 307, 0, 198, 0, 0, 182, 0, + 64, 0, 117, 0, 250, 0, 0, 284, 0, 0, + 121, 122, 121, 0, 0, 0, 0, 0, 0, 289, + 290, 284, 0, 309, 0, 198, 0, 0, 182, 0, 0, 0, 0, 167, 0, 0, 0, 63, 227, 229, - 111, 124, 0, 0, 0, 0, 0, 289, 290, 303, - 305, 284, 0, 0, 292, 295, 296, 0, 121, 0, - 0, 0, 188, 0, 0, 184, 185, 181, 64, 125, - 119, 252, 0, 0, 111, 0, 117, 278, 0, 117, - 308, 186, 187, 0, 0, 0, 226, 0, 232, 0, - 271, 0, 0, 280, 0, 0, 279, 298, 183, 189, - 190, 120, 269, 0, 270, 0, 111, 0, 0, 0, - 281, 0, 0, 0, 0, 276, 0, 0, 275, 0, - 272, 0, 0, 0 + 111, 124, 0, 0, 0, 136, 0, 0, 291, 292, + 305, 307, 286, 0, 0, 294, 297, 298, 0, 121, + 0, 0, 0, 188, 0, 0, 184, 185, 181, 64, + 125, 119, 252, 0, 0, 111, 111, 0, 117, 278, + 0, 117, 310, 186, 187, 0, 0, 0, 226, 0, + 232, 0, 271, 0, 0, 281, 280, 136, 0, 0, + 279, 300, 183, 189, 190, 120, 269, 0, 270, 0, + 111, 111, 0, 0, 0, 283, 282, 0, 0, 0, + 0, 276, 0, 0, 275, 0, 272, 0, 0, 0 }; static const short yydefgoto[] = { 256, 257, 258, 282, 299, 156, 157, 76, 509, 12, 77, 14, 15, 39, 40, 41, 45, 51, 114, 124, 326, - 222, 400, 329, 559, 379, 423, 541, 356, 424, 78, + 222, 400, 329, 561, 379, 423, 542, 356, 424, 78, 158, 133, 148, 134, 135, 107, 345, 368, 346, 117, - 85, 149, 592, 16, 17, 19, 18, 261, 334, 335, + 85, 149, 598, 16, 17, 19, 18, 261, 334, 335, 60, 22, 58, 98, 427, 428, 125, 164, 52, 93, 53, 46, 430, 369, 80, 371, 266, 54, 89, 90, - 216, 563, 128, 305, 517, 440, 217, 218, 219, 220 + 216, 565, 128, 305, 518, 440, 217, 218, 219, 220 }; static const short yypact[] = { 42, --32768,-32768,-32768,-32768,-32768,-32768,-32768, -21, -131, 60, - -93, 105, -22, 182,-32768, 525,-32768, 46, 168, -12, - 19,-32768, 1, 152,-32768, 1277,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 90, 90, - 100,-32768,-32768,-32768, 90,-32768,-32768,-32768,-32768,-32768, - 90, 186,-32768, 12, 187, 201, 209,-32768,-32768,-32768, --32768,-32768, 93,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768, 252, 254, 2, 907,-32768,-32768,-32768, 13,-32768, - 225, 225, 150,-32768, 76, 116, 116,-32768,-32768, 108, --32768,-32768,-32768,-32768,-32768,-32768,-32768, -79, 1027,-32768, - 111, 114, 947, 93,-32768, 13, -104,-32768, 1027, 76, - 76,-32768,-32768, 1067,-32768,-32768, 1299, 266,-32768,-32768, --32768,-32768,-32768, 1330,-32768, -16, 1572,-32768, 256,-32768, --32768, 13,-32768, 139, 144, 1370, 1370, 132, -95, 1370, --32768, 145, 1299, 1370, 93, 147, 13, 311,-32768, 43, - 290, 293, 298, 299, 302, 247, 303, 724,-32768,-32768, - 35,-32768,-32768,-32768,-32768,-32768, 258, 1450, 70, 305, - 116,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 317, 405, - 1370, 1370, 1370, 1370,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768, 1370, 1370, 1370, 1370, - 1370, 1370, 1370, 1370, 1370,-32768, 116,-32768, 34,-32768, --32768, 131, 1107,-32768, 6, -46,-32768, 164, 13,-32768, --32768, 13, 1067,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768, 317, 405, 173, 178, 179, 189, - 192, 1179, 1481, 987, 314, 193, 197, 198,-32768,-32768, - 202, 203,-32768, 93, 565,-32768, 699, 699,-32768, 699, - 1330,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768, 1370,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1370, 113, - 137,-32768, 565, -10, 205, 207, 208, 210, 218, 219, - 565, 565, 330, 1330, 1370, 1370,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 106,-32768, --32768,-32768, 106, 202, 202, 331, 220, 221, 1299, 1299, - 1299, 1299, 1299,-32768,-32768, -41, 1005, -61,-32768, -91, --32768, 1299, 1299, 1299, -13,-32768, 1219,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 313, 1299,-32768,-32768,-32768, --32768, 226,-32768, 227, 699, 565, 565, 23,-32768, 24, --32768,-32768, 699, 223, 1370, 1370, 1370, 1370, 1370, 232, - 233, 1370, 699, 565, 234,-32768,-32768,-32768,-32768,-32768, --32768,-32768, 1370, 1299, 1299,-32768, 235, 236, 237, 239, - 1299,-32768, 231, 724, -76,-32768,-32768, 241, 242, 352, - 369, 388,-32768, 202,-32768, 13, 246, 243,-32768, 374, - -59, 380, 385, 253, 257, 270, 699, 414, 699, 272, - 273, 699, 278, 13,-32768, 280, 282, 699, 699, 13, - 283, 287, 1370, -112, 288, 289, -33, 1299, 1299, 1299, - 1299,-32768,-32768, 294, 1299, 1299, 1370,-32768,-32768,-32768, - 79, 1259,-32768, 292,-32768, 699, 699, 1370, 699, 699, - 287,-32768, 287, 1370, 699, 307, 1370, 1370, 1370,-32768, --32768, 1370, 392,-32768, 565,-32768, 1299, 1299,-32768, 308, - 295, 309, 310,-32768, 301, 315, 7,-32768,-32768,-32768, - 13, 10, 427, 318, 306, 565, 52,-32768,-32768,-32768, --32768,-32768, 316, 699,-32768,-32768,-32768, 71, 287, 322, - 325, 1299,-32768, 1299, 1299,-32768,-32768,-32768, 79,-32768, - 407,-32768, 444, -4,-32768, 1370,-32768,-32768, 323,-32768, --32768,-32768,-32768, 327, 328, 329,-32768, 464,-32768, 699, --32768, 859, -3, 131, 565, -14,-32768, 106,-32768,-32768, --32768,-32768,-32768, 334,-32768, 859,-32768, 452, 465, 336, - 131, 699, 699, 468, 416,-32768, 699, 471,-32768, 699, --32768, 490, 491,-32768 +-32768,-32768,-32768,-32768,-32768,-32768,-32768, -8, -110, 13, + -39, 104, 5, 167,-32768, 321,-32768, 83, 74, 12, + 17,-32768, 41, 148,-32768, 1305,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 117, 117, + 11,-32768,-32768,-32768, 117,-32768,-32768,-32768,-32768,-32768, + 117, 154,-32768, -10, 181, 204, 212,-32768,-32768,-32768, +-32768,-32768, 98,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768, 254, 259, 3, 958,-32768,-32768,-32768, 49,-32768, + 231, 231, 225,-32768, 65, 215, 215,-32768,-32768, 131, +-32768,-32768,-32768,-32768,-32768,-32768,-32768, -34, 1038,-32768, + 120, 128, 976, 98,-32768, 49, -123,-32768, 1038, 65, + 65,-32768,-32768, 1056,-32768,-32768, 1327, 280,-32768,-32768, +-32768,-32768,-32768, 1345,-32768, -16, 1663,-32768, 263,-32768, +-32768, 49,-32768, 139, 136, 1398, 1398, 132, -95, 1398, +-32768, 143, 1327, 1398, 98, 145, 49, 213,-32768, 50, + 287, 289, 298, 299, 300, 219, 304, 805,-32768,-32768, + 233,-32768,-32768,-32768,-32768,-32768, 260, 1496, 70, 303, + 215,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 396, 449, + 1398, 1398, 1398, 1398,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768, 1398, 1398, 1398, 1398, + 1398, 1398, 1398, 1398, 1398,-32768, 215,-32768, 125,-32768, +-32768, -32, 1078,-32768, 23, -105,-32768, 160, 49,-32768, +-32768, 49, 1056,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768, 396, 449, 168, 169, 170, 173, + 174, 1229, 1514, 998, 295, 175, 179, 183,-32768,-32768, + 187, 185,-32768, 98, 646,-32768, 780, 780,-32768, 780, + 1345,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768, 1398,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1398, 97, + 102,-32768, 646, 24, 195, 203, 208, 209, 210, 211, + 646, 646, 332, 1345, 1398, 1398,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 10,-32768, +-32768,-32768, 10, 187, 187, 333, 186, 223, 1327, 1327, + 1327, 1327, 1327,-32768,-32768, -15, 1016, -55,-32768, -79, +-32768, 1327, 1327, 1327, -4,-32768, 1247,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768, 317, 1327,-32768,-32768,-32768, +-32768, 234,-32768, 235, 780, 646, 646, 4,-32768, 22, +-32768,-32768, 780, 207, 1398, 1398, 1398, 1398, 1398, 236, + 240, 1398, 780, 646, 241,-32768,-32768,-32768,-32768,-32768, +-32768,-32768, 1398, 1327, 1327,-32768, 244, 246, 247, 251, + 1327,-32768, 224, 805, -78,-32768,-32768, 252, 253, 363, + 380, 399,-32768, 187,-32768, 49, 257, 256,-32768, 386, + -52, 392, 393, 261, 270, 275, 780, 422, 780, 282, + 283, 780, 284, 49,-32768, 285, 288, 780, 780, 49, + 277, 290, 1398, 30, 291, 292, -80, 1327, 1327, 1327, + 1327,-32768,-32768, 293, 1327, 1327, 1398,-32768,-32768,-32768, + 278, 1287,-32768, 294,-32768, 780, 780, 1554, 780, 780, + 290,-32768, 290, 1398, 780, 296, 1398, 1398, 1398,-32768, +-32768, 1554, 383,-32768, 646,-32768, 1327, 1327,-32768, 297, + 301, 307, 308,-32768, 305, 309, 68,-32768,-32768,-32768, + 49, -11, 418, 314, 313, 780, 646, -9,-32768,-32768, +-32768,-32768,-32768, 312, 780,-32768,-32768,-32768, 44, 290, + 318, 319, 1327,-32768, 1327, 1327,-32768,-32768,-32768, 278, +-32768, 395,-32768, 428, -7,-32768,-32768, 1572,-32768,-32768, + 320,-32768,-32768,-32768,-32768, 322, 328, 329,-32768, 442, +-32768, 780,-32768, 503, -2, -32, -32, 780, 646, 1, +-32768, 10,-32768,-32768,-32768,-32768,-32768, 325,-32768, 503, +-32768,-32768, 433, 451, 334, -32, -32, 780, 780, 466, + 413,-32768, 780, 479,-32768, 780,-32768, 500, 501,-32768 }; -static const short yypgoto[] = { 365, - 366, 367, 255, 251, -168,-32768, 0, -40, 408, 14, --32768,-32768,-32768,-32768, 40,-32768,-32768,-32768, -158,-32768, - -406,-32768, -226,-32768, -290, 3,-32768, -317,-32768,-32768, - -25, 296, -119,-32768, 409, 413, -60, -155, -231, 166, - 119, 284,-32768,-32768, 504,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768, 435,-32768,-32768,-32768, --32768,-32768,-32768, -525, -139, 47, -183,-32768, 474,-32768, --32768,-32768,-32768,-32768, 37, 124,-32768,-32768,-32768,-32768 +static const short yypgoto[] = { 375, + 376, 377, 264, 262, -168,-32768, 0, -30, 421, 18, +-32768,-32768,-32768,-32768, 43,-32768,-32768,-32768, -158,-32768, + -420,-32768, -222,-32768, -287, 2,-32768, -294,-32768,-32768, + -25, 302, -107,-32768, 404, 414, -112, -155, -233, 144, + 189, 286,-32768,-32768, 502,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768, 434,-32768,-32768,-32768, +-32768,-32768,-32768, -542, -111, 122, -183,-32768, 468,-32768, +-32768,-32768,-32768,-32768, 28, 118,-32768,-32768,-32768,-32768 }; -#define YYLAST 1705 +#define YYLAST 1796 static const short yytable[] = { 11, - 79, 270, 259, 333, 161, 102, 269, 269, 234, 302, - 381, 162, 271, 13, 23, 11, 401, 402, 260, 471, - 421, 348, 350, 578, 306, 307, 308, 309, 310, 13, - 20, 313, 88, 437, 439, 108, 574, 109, 496, 422, - 91, -200, 140, 421, 21, -54, -54, -54, -54, 106, - 580, 140, 25, 141, 2, 411, 159, 4, 314, -66, - 1, 2, 228, 3, 4, 5, 417, 129, 235, 236, - 411, 6, 7, 132, 130, 438, 438, 106, 81, 82, - 267, 464, 231, 132, 86, 411, 268, 411, 147, 11, - 87, 43, 8, 44, 416, 9, 475, 1, 147, 10, - 3, 108, 5, 109, 539, 411, 470, 115, 116, 331, - 225, 226, 412, 484, 229, 415, 24, 499, 232, 396, - 397, 398, 26, 27, 399, 370, 1, 370, 370, 3, - 370, 5, 395, 55, 83, 431, 84, 108, 564, 109, - 163, 383, 265, 396, 397, 398, 315, 316, 399, 561, - 575, 375, 57, 108, 108, 109, 109, 538, 103, 330, - 108, 494, 109, 370, 56, 300, 301, 265, 303, 92, - 581, 370, 370, 59, 262, 118, 119, 120, 121, 122, - 123, 304, 265, 265, 265, 265, 265, 311, 312, 265, - 520, 112, 521, 113, 393, 317, 318, 132, 546, 110, - 111, 443, 547, 445, 446, 447, 88, 147, 95, 47, - 48, 49, 319, 320, 50, 321, 322, 546, 323, 324, - 325, 550, 96, 28, 29, 30, 31, 32, 33, 34, - 97, 35, 36, 37, 38, 370, 370, 370, 551, 396, - 397, 398, 99, 370, 399, 147, 512, 317, 318, 237, - 238, 239, 240, 370, 370, 100, 376, 101, 259, 378, - 108, 84, 109, 136, 319, 320, 137, 321, 322, 160, - 323, 324, 325, 377, 260, 143, 144, 221, 406, 407, - 408, 409, 410, 380, 108, 223, 109, 227, 147, 394, - 265, 418, 419, 420, 224, 230, 233, 370, -55, 370, - 522, -56, 370, 525, 526, 527, -59, -58, 370, 370, - -57, 241, 263, 372, 373, 269, 374, 61, 62, 332, - 566, 414, 339, 568, 36, 37, 38, 340, 341, 1, - 2, 426, 3, 4, 5, 351, 370, 370, 342, 370, - 370, 343, 352, 455, 456, 370, 353, 354, 355, 382, - 462, 384, 357, 385, 386, 370, 387, 390, 391, 265, - 444, 265, 265, 265, 388, 389, 450, 392, 403, 404, - 405, 429, 432, 433, 442, 562, 370, 454, 448, 449, - 453, 458, 459, 460, 370, 461, 463, 465, 466, 467, - 468, 469, 472, 473, 576, 474, 476, 500, 501, 502, - 503, 477, 478, 479, 505, 506, 272, 273, 274, 275, - 276, 277, 278, 279, 280, 281, 480, 482, 484, 485, - 370, 434, 435, 436, 487, 370, 488, 495, 489, 441, - 283, 284, 492, 493, 497, 498, 530, 531, 513, 451, - 452, 507, 370, 370, 438, 533, 511, 370, 542, 504, - 370, 536, 516, 524, 532, 534, 535, 544, 265, 558, - 560, 265, 265, 265, 543, 537, 516, 572, 582, 548, - 508, 554, 552, 555, 556, 553, 567, 569, 570, 571, - 579, 583, 584, 481, 587, 483, 588, 590, 486, 593, - 594, 213, 214, 215, 490, 491, 338, 127, 557, 337, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 296, 297, 298, 540, 139, 336, 142, 328, 42, - 565, 126, 514, 515, -199, 518, 519, 94, 528, 457, - 0, 523, 0, 0, 0, 0, 0, 0, 508, 0, - 0, 529, -66, 1, 2, 0, 3, 4, 5, 0, - 0, 0, 0, 0, 6, 7, 0, 0, 0, 0, - 0, 0, 545, 0, 0, 0, 0, 358, 359, 0, - 549, 61, 62, 360, 0, 8, 0, 0, 9, 0, - 0, 0, 10, 1, 2, 0, 3, 4, 5, 361, - 362, 363, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 364, 365, 573, 0, 0, 0, - 0, 577, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 366, 0, 0, 0, 0, 0, 0, 585, 586, - 0, 0, 0, 589, 0, 0, 591, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 245, 246, 0, 0, 0, 0, 0, 0, + 79, 270, 259, 269, 159, 471, 102, 333, 269, 302, + 88, 162, 271, 381, 437, 11, 161, 13, 91, 348, + 350, 578, 421, 140, 306, 307, 308, 309, 310, 421, + 231, 313, 439, 13, 141, 23, 234, 585, 583, 401, + 402, -200, 108, 20, 109, 83, 260, 84, 422, 106, + 331, 140, -54, -54, -54, -54, 438, 21, 314, -66, + 1, 2, 228, 3, 4, 5, 484, 411, 411, 24, + 499, 6, 7, 132, 438, 235, 236, 106, 417, 464, + 267, 81, 82, 132, 317, 318, 268, 86, 147, 11, + 540, 411, 8, 87, 411, 9, 115, 116, 147, 10, + 416, 319, 320, 475, 321, 322, 25, 323, 324, 325, + 225, 226, 129, 415, 229, 47, 48, 49, 232, 130, + 50, 26, 396, 397, 398, 566, 567, 399, 43, 470, + 44, 411, 395, 431, 396, 397, 398, 548, 412, 399, + 163, 549, 265, 396, 397, 398, 563, 92, 399, 1, + 27, 579, 3, 370, 5, 370, 370, 55, 370, 103, + 586, 587, 56, 375, 494, 300, 301, 265, 303, 59, + 108, 108, 109, 109, 88, 383, 330, 108, 262, 109, + 496, 304, 265, 265, 265, 265, 265, 311, 312, 265, + 548, 370, 57, 521, 552, 522, 108, 132, 109, 370, + 370, 443, 95, 445, 446, 447, 393, 147, 28, 29, + 30, 31, 32, 33, 34, 108, 35, 109, 539, 61, + 62, 237, 238, 239, 240, 96, 406, 407, 408, 409, + 410, 1, 2, 97, 3, 4, 5, 315, 316, 418, + 419, 420, 553, 378, 108, 147, 109, 99, 380, 108, + 512, 109, 2, 143, 144, 4, 376, 100, 259, 36, + 37, 38, 101, 370, 370, 370, 112, 84, 113, 110, + 111, 370, 136, 377, 118, 119, 120, 121, 122, 123, + 137, 370, 370, 160, 221, 223, 224, 227, 147, 394, + 265, 455, 456, 230, 233, -55, 1, -56, 462, 3, + 523, 5, 260, 526, 527, 528, -59, -58, -57, 36, + 37, 38, 241, 269, 263, 332, 351, 339, 340, 341, + -199, 414, 342, 343, 352, 370, 570, 370, 353, 572, + 370, 426, 354, 355, 357, 404, 370, 370, -66, 1, + 2, 384, 3, 4, 5, 500, 501, 502, 503, 385, + 6, 7, 505, 506, 386, 387, 388, 389, 442, 265, + 444, 265, 265, 265, 370, 370, 450, 370, 370, 392, + 403, 8, 405, 370, 9, 429, 564, 454, 10, 463, + 432, 433, 448, 370, 531, 532, 449, 453, 372, 373, + 458, 374, 459, 460, 317, 318, 580, 461, 465, 466, + 467, 468, 469, 472, 370, 370, 473, 474, 476, 477, + 478, 319, 320, 370, 321, 322, 479, 323, 324, 325, + 556, 480, 557, 558, 382, 482, 492, 495, 484, 485, + 487, 488, 390, 391, 489, 438, 493, 497, 498, 543, + 513, 507, 525, 533, 562, 576, 511, 560, 504, 588, + 370, 534, 517, 535, 536, 537, 370, 370, 265, 538, + 544, 265, 265, 265, 545, 550, 517, 589, 554, 555, + 508, 584, 573, 571, 283, 284, 370, 370, 574, 575, + 590, 370, 593, 594, 370, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 596, 434, 435, 436, 599, + 600, 213, 214, 215, 441, 358, 359, 338, 337, 559, + 127, 360, 142, 541, 451, 452, 139, 42, 336, 529, + 126, 94, 569, 457, 328, 0, 0, 361, 362, 363, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 508, + 0, 0, 364, 365, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 481, 366, + 483, 0, 0, 486, 0, 0, 0, 0, 0, 490, + 491, 0, 0, 0, 0, 174, 175, 176, 177, 178, + 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, + 245, 246, 0, 0, 0, 0, 0, 514, 515, 0, + 519, 520, 0, 0, 0, 0, 524, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 530, 247, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 0, 248, 0, 249, 250, 251, 0, 546, 547, 0, + 0, 0, 0, 0, 0, 0, 551, 0, 358, 359, + 0, 0, 61, 62, 360, 0, 0, 367, 0, 0, + 0, 0, 0, 0, 1, 2, 0, 3, 4, 5, + 361, 362, 363, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 577, 0, 364, 365, 0, 0, 581, + 582, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 366, 0, 0, 0, 0, 0, 0, 591, + 592, 0, 0, 0, 595, 0, 0, 597, 174, 175, + 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 245, 246, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 247, + 247, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 0, 248, 0, 249, 250, 251, 0, + 0, 0, 358, 359, 0, 0, 61, 62, 360, 0, + 0, 0, 0, 108, 0, 109, 0, 0, 1, 2, + 367, 3, 4, 5, 361, 362, 363, 0, 0, 0, + 0, 61, 62, 0, 0, 0, 0, 0, 0, 364, + 365, 0, 0, 1, 2, 0, 3, 4, 5, 242, + 0, 0, 0, 0, 0, 0, 366, 0, 0, 0, + 0, 0, 0, 0, 243, 244, 0, 0, 0, 0, + 0, 0, 174, 175, 176, 177, 178, 179, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 245, 246, 0, + 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, + 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 245, 246, 247, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 204, 205, 206, 0, 248, 0, + 249, 250, 251, 0, 0, 0, 0, 0, 0, 247, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 0, 248, 0, 249, 250, 251, 0, 0, - 0, 358, 359, 0, 0, 61, 62, 360, 0, 0, - 0, 0, 108, 0, 109, 0, 0, 1, 2, 367, - 3, 4, 5, 361, 362, 363, 0, 0, 0, 0, - 61, 62, 0, 0, 0, 0, 0, 0, 364, 365, - 0, 0, 1, 2, 0, 3, 4, 5, 242, 0, - 0, 0, 0, 0, 0, 366, 0, 0, 0, 0, - 0, 0, 0, 243, 244, 0, 0, 0, 0, 0, - 0, 174, 175, 176, 177, 178, 179, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 245, 246, 0, 0, - 0, 0, 0, 0, 0, 0, 174, 175, 176, 177, - 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 245, 246, 247, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 0, 248, 0, 249, - 250, 251, 0, 0, 0, 0, 0, 0, 247, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, - 206, 0, 248, 367, 249, 250, 251, 0, 0, 0, - 0, 358, 359, 0, 0, 0, 0, 360, 0, 0, - 0, 108, 0, 109, 0, 252, 0, 0, 253, 0, - 254, 0, 255, 361, 362, 363, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, + 205, 206, 0, 248, 367, 249, 250, 251, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 61, 62, 366, 104, 64, 65, 66, + 0, 0, 108, 0, 109, 0, 252, 0, 0, 253, + 0, 254, 0, 255, 61, 62, 0, 104, 64, 65, + 66, 67, 68, 69, 70, 0, 1, 2, 0, 3, + 4, 5, 61, 62, 0, 104, 64, 65, 66, 67, + 68, 69, 70, 0, 1, 2, 0, 3, 4, 5, + 0, 0, 0, 0, 61, 62, 71, 104, 150, 151, + 152, 153, 154, 155, 70, 0, 1, 2, 0, 3, + 4, 5, 61, 62, 71, 104, 150, 151, 152, 153, + 154, 155, 70, 0, 1, 2, 0, 3, 4, 5, + 0, 0, 0, 0, 61, 62, 71, 104, 64, 65, + 66, 67, 68, 69, 70, 0, 1, 2, 0, 3, + 4, 5, 61, 62, 71, 145, 64, 65, 66, 67, + 68, 69, 70, 0, 1, 2, 131, 3, 4, 5, + 0, 0, 0, 0, 61, 62, 71, 104, 64, 65, + 66, 67, 68, 69, 70, 0, 1, 2, 0, 3, + 4, 5, 0, 0, 71, 0, 72, 0, 0, 73, + 0, 0, 74, 0, 75, 105, 327, 0, 0, 0, + 0, 0, 0, 0, 72, 0, 71, 73, 0, 0, + 74, 0, 75, 138, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 72, 0, 0, 73, + 0, 0, 74, 0, 75, 349, 0, 0, 0, 0, + 0, 0, 0, 0, 72, 0, 0, 73, 0, 0, + 74, 0, 75, 413, 0, 0, 146, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 72, 0, 0, 73, + 0, 0, 74, 0, 75, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 72, 0, 0, 73, 0, 0, + 74, 0, 75, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 72, 0, 0, 73, + 0, 0, 74, 0, 75, 61, 62, 0, 104, 150, + 151, 152, 153, 154, 155, 70, 0, 1, 2, 0, + 3, 4, 5, 61, 62, 0, 104, 64, 65, 66, 67, 68, 69, 70, 0, 1, 2, 0, 3, 4, - 5, 174, 175, 176, 177, 178, 179, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 245, 246, 0, 0, + 5, 0, 0, 0, 0, 0, 0, 71, 0, 0, + 0, 0, 0, 0, 0, 425, 0, 0, 0, 0, 0, 0, 0, 61, 62, 71, 104, 64, 65, 66, 67, 68, 69, 70, 0, 1, 2, 0, 3, 4, - 5, 0, 0, 247, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 0, 248, 0, 249, - 250, 251, 0, 61, 62, 71, 104, 150, 151, 152, + 5, 61, 62, 0, 63, 64, 65, 66, 67, 68, + 69, 70, 0, 1, 2, 510, 3, 4, 5, 0, + 0, 0, 0, 61, 62, 71, 104, 150, 151, 152, 153, 154, 155, 70, 0, 1, 2, 0, 3, 4, - 5, 61, 62, 367, 104, 150, 151, 152, 153, 154, - 155, 70, 0, 1, 2, 0, 3, 4, 5, 0, - 0, 0, 0, 61, 62, 71, 104, 64, 65, 66, - 67, 68, 69, 70, 0, 1, 2, 0, 3, 4, - 5, 0, 0, 71, 0, 72, 0, 0, 73, 0, - 0, 74, 0, 75, 105, 131, 0, 0, 0, 0, - 0, 0, 0, 61, 62, 71, 145, 64, 65, 66, - 67, 68, 69, 70, 0, 1, 2, 0, 3, 4, - 5, 0, 0, 0, 0, 72, 0, 0, 73, 0, - 0, 74, 0, 75, 138, 0, 0, 0, 0, 0, - 0, 0, 0, 61, 62, 71, 104, 64, 65, 66, - 67, 68, 69, 70, 0, 1, 2, 0, 3, 4, - 5, 0, 0, 0, 0, 72, 0, 0, 73, 0, - 0, 74, 0, 75, 349, 327, 0, 0, 0, 0, - 0, 0, 0, 72, 0, 71, 73, 0, 0, 74, - 0, 75, 413, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 72, 0, 0, 73, 0, - 0, 74, 0, 75, 0, 61, 62, 146, 104, 150, - 151, 152, 153, 154, 155, 70, 0, 1, 2, 0, - 3, 4, 5, 0, 0, 0, 0, 0, 0, 0, + 5, 61, 62, 71, 145, 64, 65, 66, 67, 68, + 69, 70, 0, 1, 2, 0, 3, 4, 5, 0, + 0, 0, 0, 0, 0, 71, 0, 72, 0, 0, + 73, 0, 344, 74, 0, 75, 0, 0, 0, 0, + 0, 0, 0, 71, 0, 72, 0, 0, 73, 0, + 0, 74, 0, 75, 61, 62, 0, 104, 64, 65, + 66, 67, 68, 69, 70, 0, 1, 2, 0, 3, + 4, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, 73, 0, - 0, 74, 0, 75, 0, 61, 62, 71, 104, 64, - 65, 66, 67, 68, 69, 70, 0, 1, 2, 0, - 3, 4, 5, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 72, 0, 425, 73, 0, - 0, 74, 0, 75, 0, 61, 62, 71, 104, 64, - 65, 66, 67, 68, 69, 70, 0, 1, 2, 0, - 3, 4, 5, 61, 62, 0, 63, 64, 65, 66, - 67, 68, 69, 70, 0, 1, 2, 510, 3, 4, - 5, 0, 0, 0, 0, 61, 62, 71, 104, 150, - 151, 152, 153, 154, 155, 70, 0, 1, 2, 0, - 3, 4, 5, 0, 0, 71, 0, 72, 0, 0, - 73, 0, 344, 74, 0, 75, 61, 62, 0, 145, - 64, 65, 66, 67, 68, 69, 70, 71, 1, 2, - 0, 3, 4, 5, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, - 73, 0, 0, 74, 0, 75, 61, 62, 71, 104, - 64, 65, 66, 67, 68, 69, 70, 0, 1, 2, - 0, 3, 4, 5, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, - 73, 0, 0, 74, 0, 75, 0, 0, 71, 0, + 0, 74, 0, 75, 0, 0, 71, 0, 0, 0, + 0, 0, 0, 72, 0, 0, 73, 0, 0, 74, + 0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, 73, 0, 0, 74, 0, 75, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, - 73, 0, 0, 74, 0, 75, 61, 62, 0, 264, - 64, 65, 66, 67, 68, 69, 70, 0, 1, 2, - 0, 3, 4, 5, 0, 0, 0, 0, 72, 0, - 0, 73, 0, 0, 74, 0, 75, 61, 62, 0, - 104, 150, 151, 152, 153, 154, 155, 70, 71, 1, - 2, 0, 3, 4, 5, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, - 0, 73, 0, 0, 74, 0, 75, 0, 0, 71, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 72, 0, 0, 73, 0, 0, 74, + 0, 75, 61, 62, 0, 264, 64, 65, 66, 67, + 68, 69, 70, 0, 1, 2, 0, 3, 4, 5, + 61, 62, 0, 104, 150, 151, 152, 153, 154, 155, + 70, 0, 1, 2, 0, 3, 4, 5, 0, 0, + 0, 0, 0, 0, 71, 0, 72, 0, 0, 73, + 0, 0, 74, 0, 75, 0, 0, 0, 0, 0, + 61, 62, 71, 104, 64, 65, 66, 67, 68, 69, + 516, 0, 1, 2, 0, 3, 4, 5, 61, 62, + 0, 104, 64, 65, 66, 67, 68, 69, 568, 0, + 1, 2, 0, 3, 4, 5, 0, 0, 0, 0, + 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 72, 0, 0, 73, 0, 0, + 74, 0, 75, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 72, 0, 0, 73, 0, 0, 74, 0, + 347, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 165, 0, + 0, 0, 72, 0, 0, 73, 0, 0, 74, 0, + 75, 0, 0, 0, 0, 0, 0, 166, 167, 0, + 72, 0, 0, 73, 0, 0, 74, 0, 75, 168, + 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, + 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, - 0, 73, 0, 0, 74, 0, 75, 165, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 166, 167, 0, 72, - 0, 0, 73, 0, 0, 74, 0, 347, 168, 169, - 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 191, 192, 193, 0, 0, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212 + 0, 0, 191, 192, 193, 0, 0, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212 }; static const short yycheck[] = { 0, - 26, 170, 158, 230, 124, 4, 11, 11, 148, 193, - 301, 28, 171, 0, 146, 16, 334, 335, 158, 426, - 34, 253, 254, 38, 208, 209, 210, 211, 212, 16, - 52, 215, 21, 11, 11, 148, 562, 150, 151, 53, - 29, 0, 147, 34, 66, 3, 4, 5, 6, 75, - 576, 147, 146, 158, 20, 147, 117, 23, 217, 18, - 19, 20, 158, 22, 23, 24, 158, 147, 26, 27, - 147, 30, 31, 99, 154, 53, 53, 103, 39, 40, - 11, 158, 143, 109, 45, 147, 17, 147, 114, 90, - 51, 46, 51, 48, 156, 54, 156, 19, 124, 58, - 22, 148, 24, 150, 511, 147, 424, 32, 33, 156, - 136, 137, 154, 147, 140, 347, 57, 151, 144, 134, - 135, 136, 18, 146, 139, 265, 19, 267, 268, 22, - 270, 24, 316, 146, 35, 367, 37, 148, 545, 150, - 157, 152, 168, 134, 135, 136, 113, 114, 139, 154, - 154, 271, 152, 148, 148, 150, 150, 151, 157, 154, - 148, 452, 150, 303, 146, 191, 192, 193, 194, 158, - 577, 311, 312, 22, 161, 60, 61, 62, 63, 64, - 65, 207, 208, 209, 210, 211, 212, 213, 214, 215, - 481, 42, 483, 44, 314, 117, 118, 223, 147, 81, - 82, 385, 151, 387, 388, 389, 21, 233, 22, 42, - 43, 44, 134, 135, 47, 137, 138, 147, 140, 141, - 142, 151, 22, 42, 43, 44, 45, 46, 47, 48, - 22, 50, 143, 144, 145, 375, 376, 377, 529, 134, - 135, 136, 150, 383, 139, 271, 473, 117, 118, 3, - 4, 5, 6, 393, 394, 4, 282, 4, 414, 147, - 148, 37, 150, 153, 134, 135, 153, 137, 138, 4, - 140, 141, 142, 299, 414, 110, 111, 22, 339, 340, - 341, 342, 343, 147, 148, 147, 150, 156, 314, 315, - 316, 352, 353, 354, 151, 151, 150, 437, 9, 439, - 484, 9, 442, 487, 488, 489, 9, 9, 448, 449, - 9, 9, 55, 267, 268, 11, 270, 7, 8, 156, - 547, 347, 150, 550, 143, 144, 145, 150, 150, 19, - 20, 357, 22, 23, 24, 22, 476, 477, 150, 479, - 480, 150, 150, 404, 405, 485, 150, 150, 147, 303, - 411, 147, 150, 147, 147, 495, 147, 311, 312, 385, - 386, 387, 388, 389, 147, 147, 392, 38, 38, 150, - 150, 59, 147, 147, 152, 544, 516, 403, 147, 147, - 147, 147, 147, 147, 524, 147, 156, 147, 147, 38, - 22, 4, 147, 151, 563, 22, 17, 458, 459, 460, - 461, 17, 150, 147, 465, 466, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 147, 4, 147, 147, - 560, 375, 376, 377, 147, 565, 147, 453, 147, 383, - 26, 27, 150, 147, 147, 147, 497, 498, 147, 393, - 394, 467, 582, 583, 53, 151, 472, 587, 22, 156, - 590, 151, 478, 147, 147, 147, 147, 152, 484, 53, - 17, 487, 488, 489, 147, 151, 492, 4, 17, 154, - 471, 532, 151, 534, 535, 151, 154, 151, 151, 151, - 147, 17, 147, 437, 17, 439, 71, 17, 442, 0, - 0, 127, 127, 127, 448, 449, 246, 90, 539, 245, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 512, 103, 233, 109, 223, 16, - 546, 87, 476, 477, 0, 479, 480, 54, 492, 406, - -1, 485, -1, -1, -1, -1, -1, -1, 539, -1, - -1, 495, 18, 19, 20, -1, 22, 23, 24, -1, - -1, -1, -1, -1, 30, 31, -1, -1, -1, -1, - -1, -1, 516, -1, -1, -1, -1, 3, 4, -1, - 524, 7, 8, 9, -1, 51, -1, -1, 54, -1, - -1, -1, 58, 19, 20, -1, 22, 23, 24, 25, - 26, 27, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 40, 41, 560, -1, -1, -1, - -1, 565, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 57, -1, -1, -1, -1, -1, -1, 582, 583, - -1, -1, -1, 587, -1, -1, 590, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, -1, -1, -1, -1, -1, -1, + 26, 170, 158, 11, 117, 426, 4, 230, 11, 193, + 21, 28, 171, 301, 11, 16, 124, 0, 29, 253, + 254, 564, 34, 147, 208, 209, 210, 211, 212, 34, + 143, 215, 11, 16, 158, 146, 148, 580, 38, 334, + 335, 0, 148, 52, 150, 35, 158, 37, 53, 75, + 156, 147, 3, 4, 5, 6, 53, 66, 217, 18, + 19, 20, 158, 22, 23, 24, 147, 147, 147, 57, + 151, 30, 31, 99, 53, 26, 27, 103, 158, 158, + 11, 39, 40, 109, 117, 118, 17, 45, 114, 90, + 511, 147, 51, 51, 147, 54, 32, 33, 124, 58, + 156, 134, 135, 156, 137, 138, 146, 140, 141, 142, + 136, 137, 147, 347, 140, 42, 43, 44, 144, 154, + 47, 18, 134, 135, 136, 546, 547, 139, 46, 424, + 48, 147, 316, 367, 134, 135, 136, 147, 154, 139, + 157, 151, 168, 134, 135, 136, 154, 158, 139, 19, + 146, 154, 22, 265, 24, 267, 268, 146, 270, 157, + 581, 582, 146, 271, 452, 191, 192, 193, 194, 22, + 148, 148, 150, 150, 21, 152, 154, 148, 161, 150, + 151, 207, 208, 209, 210, 211, 212, 213, 214, 215, + 147, 303, 152, 481, 151, 483, 148, 223, 150, 311, + 312, 385, 22, 387, 388, 389, 314, 233, 42, 43, + 44, 45, 46, 47, 48, 148, 50, 150, 151, 7, + 8, 3, 4, 5, 6, 22, 339, 340, 341, 342, + 343, 19, 20, 22, 22, 23, 24, 113, 114, 352, + 353, 354, 530, 147, 148, 271, 150, 150, 147, 148, + 473, 150, 20, 110, 111, 23, 282, 4, 414, 143, + 144, 145, 4, 375, 376, 377, 42, 37, 44, 81, + 82, 383, 153, 299, 60, 61, 62, 63, 64, 65, + 153, 393, 394, 4, 22, 147, 151, 156, 314, 315, + 316, 404, 405, 151, 150, 9, 19, 9, 411, 22, + 484, 24, 414, 487, 488, 489, 9, 9, 9, 143, + 144, 145, 9, 11, 55, 156, 22, 150, 150, 150, + 0, 347, 150, 150, 150, 437, 549, 439, 150, 552, + 442, 357, 150, 147, 150, 150, 448, 449, 18, 19, + 20, 147, 22, 23, 24, 458, 459, 460, 461, 147, + 30, 31, 465, 466, 147, 147, 147, 147, 152, 385, + 386, 387, 388, 389, 476, 477, 392, 479, 480, 38, + 38, 51, 150, 485, 54, 59, 545, 403, 58, 156, + 147, 147, 147, 495, 497, 498, 147, 147, 267, 268, + 147, 270, 147, 147, 117, 118, 565, 147, 147, 147, + 38, 22, 4, 147, 516, 517, 151, 22, 17, 17, + 150, 134, 135, 525, 137, 138, 147, 140, 141, 142, + 533, 147, 535, 536, 303, 4, 150, 453, 147, 147, + 147, 147, 311, 312, 147, 53, 147, 147, 147, 22, + 147, 467, 147, 147, 17, 4, 472, 53, 156, 17, + 562, 151, 478, 147, 147, 151, 568, 569, 484, 151, + 147, 487, 488, 489, 152, 154, 492, 17, 151, 151, + 471, 147, 151, 154, 26, 27, 588, 589, 151, 151, + 147, 593, 17, 71, 596, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 17, 375, 376, 377, 0, + 0, 127, 127, 127, 383, 3, 4, 246, 245, 540, + 90, 9, 109, 512, 393, 394, 103, 16, 233, 492, + 87, 54, 548, 406, 223, -1, -1, 25, 26, 27, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 540, + -1, -1, 40, 41, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 437, 57, + 439, -1, -1, 442, -1, -1, -1, -1, -1, 448, + 449, -1, -1, -1, -1, 73, 74, 75, 76, 77, + 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, -1, -1, -1, -1, -1, 476, 477, -1, + 479, 480, -1, -1, -1, -1, 485, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 495, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, 129, -1, 131, 132, 133, -1, 516, 517, -1, + -1, -1, -1, -1, -1, -1, 525, -1, 3, 4, + -1, -1, 7, 8, 9, -1, -1, 155, -1, -1, + -1, -1, -1, -1, 19, 20, -1, 22, 23, 24, + 25, 26, 27, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 562, -1, 40, 41, -1, -1, 568, + 569, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 57, -1, -1, -1, -1, -1, -1, 588, + 589, -1, -1, -1, 593, -1, -1, 596, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 115, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, -1, 129, -1, 131, 132, 133, -1, + -1, -1, 3, 4, -1, -1, 7, 8, 9, -1, + -1, -1, -1, 148, -1, 150, -1, -1, 19, 20, + 155, 22, 23, 24, 25, 26, 27, -1, -1, -1, + -1, 7, 8, -1, -1, -1, -1, -1, -1, 40, + 41, -1, -1, 19, 20, -1, 22, 23, 24, 25, + -1, -1, -1, -1, -1, -1, 57, -1, -1, -1, + -1, -1, -1, -1, 40, 41, -1, -1, -1, -1, + -1, -1, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, -1, + -1, -1, -1, -1, -1, -1, -1, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, -1, 129, -1, + 131, 132, 133, -1, -1, -1, -1, -1, -1, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, -1, 129, -1, 131, 132, 133, -1, -1, - -1, 3, 4, -1, -1, 7, 8, 9, -1, -1, - -1, -1, 148, -1, 150, -1, -1, 19, 20, 155, - 22, 23, 24, 25, 26, 27, -1, -1, -1, -1, - 7, 8, -1, -1, -1, -1, -1, -1, 40, 41, - -1, -1, 19, 20, -1, 22, 23, 24, 25, -1, - -1, -1, -1, -1, -1, 57, -1, -1, -1, -1, - -1, -1, -1, 40, 41, -1, -1, -1, -1, -1, - -1, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, -1, -1, - -1, -1, -1, -1, -1, -1, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, -1, 129, -1, 131, - 132, 133, -1, -1, -1, -1, -1, -1, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, 129, 155, 131, 132, 133, -1, -1, -1, - -1, 3, 4, -1, -1, -1, -1, 9, -1, -1, - -1, 148, -1, 150, -1, 152, -1, -1, 155, -1, - 157, -1, 159, 25, 26, 27, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 40, 41, + 126, 127, -1, 129, 155, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 7, 8, 57, 10, 11, 12, 13, - 14, 15, 16, 17, -1, 19, 20, -1, 22, 23, - 24, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, -1, -1, - -1, -1, -1, 7, 8, 49, 10, 11, 12, 13, - 14, 15, 16, 17, -1, 19, 20, -1, 22, 23, - 24, -1, -1, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, -1, 129, -1, 131, - 132, 133, -1, 7, 8, 49, 10, 11, 12, 13, - 14, 15, 16, 17, -1, 19, 20, -1, 22, 23, - 24, 7, 8, 155, 10, 11, 12, 13, 14, 15, - 16, 17, -1, 19, 20, -1, 22, 23, 24, -1, - -1, -1, -1, 7, 8, 49, 10, 11, 12, 13, + -1, -1, 148, -1, 150, -1, 152, -1, -1, 155, + -1, 157, -1, 159, 7, 8, -1, 10, 11, 12, + 13, 14, 15, 16, 17, -1, 19, 20, -1, 22, + 23, 24, 7, 8, -1, 10, 11, 12, 13, 14, + 15, 16, 17, -1, 19, 20, -1, 22, 23, 24, + -1, -1, -1, -1, 7, 8, 49, 10, 11, 12, + 13, 14, 15, 16, 17, -1, 19, 20, -1, 22, + 23, 24, 7, 8, 49, 10, 11, 12, 13, 14, + 15, 16, 17, -1, 19, 20, -1, 22, 23, 24, + -1, -1, -1, -1, 7, 8, 49, 10, 11, 12, + 13, 14, 15, 16, 17, -1, 19, 20, -1, 22, + 23, 24, 7, 8, 49, 10, 11, 12, 13, 14, + 15, 16, 17, -1, 19, 20, 39, 22, 23, 24, + -1, -1, -1, -1, 7, 8, 49, 10, 11, 12, + 13, 14, 15, 16, 17, -1, 19, 20, -1, 22, + 23, 24, -1, -1, 49, -1, 149, -1, -1, 152, + -1, -1, 155, -1, 157, 158, 39, -1, -1, -1, + -1, -1, -1, -1, 149, -1, 49, 152, -1, -1, + 155, -1, 157, 158, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 149, -1, -1, 152, + -1, -1, 155, -1, 157, 158, -1, -1, -1, -1, + -1, -1, -1, -1, 149, -1, -1, 152, -1, -1, + 155, -1, 157, 158, -1, -1, 121, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 149, -1, -1, 152, + -1, -1, 155, -1, 157, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 149, -1, -1, 152, -1, -1, + 155, -1, 157, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 149, -1, -1, 152, + -1, -1, 155, -1, 157, 7, 8, -1, 10, 11, + 12, 13, 14, 15, 16, 17, -1, 19, 20, -1, + 22, 23, 24, 7, 8, -1, 10, 11, 12, 13, 14, 15, 16, 17, -1, 19, 20, -1, 22, 23, - 24, -1, -1, 49, -1, 149, -1, -1, 152, -1, - -1, 155, -1, 157, 158, 39, -1, -1, -1, -1, + 24, -1, -1, -1, -1, -1, -1, 49, -1, -1, + -1, -1, -1, -1, -1, 39, -1, -1, -1, -1, -1, -1, -1, 7, 8, 49, 10, 11, 12, 13, 14, 15, 16, 17, -1, 19, 20, -1, 22, 23, - 24, -1, -1, -1, -1, 149, -1, -1, 152, -1, - -1, 155, -1, 157, 158, -1, -1, -1, -1, -1, + 24, 7, 8, -1, 10, 11, 12, 13, 14, 15, + 16, 17, -1, 19, 20, 39, 22, 23, 24, -1, -1, -1, -1, 7, 8, 49, 10, 11, 12, 13, 14, 15, 16, 17, -1, 19, 20, -1, 22, 23, - 24, -1, -1, -1, -1, 149, -1, -1, 152, -1, - -1, 155, -1, 157, 158, 39, -1, -1, -1, -1, - -1, -1, -1, 149, -1, 49, 152, -1, -1, 155, - -1, 157, 158, -1, -1, -1, -1, -1, -1, -1, + 24, 7, 8, 49, 10, 11, 12, 13, 14, 15, + 16, 17, -1, 19, 20, -1, 22, 23, 24, -1, + -1, -1, -1, -1, -1, 49, -1, 149, -1, -1, + 152, -1, 154, 155, -1, 157, -1, -1, -1, -1, + -1, -1, -1, 49, -1, 149, -1, -1, 152, -1, + -1, 155, -1, 157, 7, 8, -1, 10, 11, 12, + 13, 14, 15, 16, 17, -1, 19, 20, -1, 22, + 23, 24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, -1, -1, 152, -1, - -1, 155, -1, 157, -1, 7, 8, 121, 10, 11, - 12, 13, 14, 15, 16, 17, -1, 19, 20, -1, - 22, 23, 24, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 149, -1, -1, 152, -1, - -1, 155, -1, 157, -1, 7, 8, 49, 10, 11, - 12, 13, 14, 15, 16, 17, -1, 19, 20, -1, - 22, 23, 24, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 149, -1, 39, 152, -1, - -1, 155, -1, 157, -1, 7, 8, 49, 10, 11, - 12, 13, 14, 15, 16, 17, -1, 19, 20, -1, - 22, 23, 24, 7, 8, -1, 10, 11, 12, 13, - 14, 15, 16, 17, -1, 19, 20, 39, 22, 23, - 24, -1, -1, -1, -1, 7, 8, 49, 10, 11, - 12, 13, 14, 15, 16, 17, -1, 19, 20, -1, - 22, 23, 24, -1, -1, 49, -1, 149, -1, -1, - 152, -1, 154, 155, -1, 157, 7, 8, -1, 10, - 11, 12, 13, 14, 15, 16, 17, 49, 19, 20, - -1, 22, 23, 24, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 149, -1, -1, - 152, -1, -1, 155, -1, 157, 7, 8, 49, 10, - 11, 12, 13, 14, 15, 16, 17, -1, 19, 20, - -1, 22, 23, 24, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 149, -1, -1, - 152, -1, -1, 155, -1, 157, -1, -1, 49, -1, + -1, 155, -1, 157, -1, -1, 49, -1, -1, -1, + -1, -1, -1, 149, -1, -1, 152, -1, -1, 155, + -1, 157, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 149, -1, -1, 152, -1, -1, 155, -1, 157, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 149, -1, -1, - 152, -1, -1, 155, -1, 157, 7, 8, -1, 10, - 11, 12, 13, 14, 15, 16, 17, -1, 19, 20, - -1, 22, 23, 24, -1, -1, -1, -1, 149, -1, - -1, 152, -1, -1, 155, -1, 157, 7, 8, -1, - 10, 11, 12, 13, 14, 15, 16, 17, 49, 19, - 20, -1, 22, 23, 24, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 149, -1, - -1, 152, -1, -1, 155, -1, 157, -1, -1, 49, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 149, -1, -1, 152, -1, -1, 155, + -1, 157, 7, 8, -1, 10, 11, 12, 13, 14, + 15, 16, 17, -1, 19, 20, -1, 22, 23, 24, + 7, 8, -1, 10, 11, 12, 13, 14, 15, 16, + 17, -1, 19, 20, -1, 22, 23, 24, -1, -1, + -1, -1, -1, -1, 49, -1, 149, -1, -1, 152, + -1, -1, 155, -1, 157, -1, -1, -1, -1, -1, + 7, 8, 49, 10, 11, 12, 13, 14, 15, 16, + 17, -1, 19, 20, -1, 22, 23, 24, 7, 8, + -1, 10, 11, 12, 13, 14, 15, 16, 17, -1, + 19, 20, -1, 22, 23, 24, -1, -1, -1, -1, + -1, -1, 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 149, -1, -1, 152, -1, -1, + 155, -1, 157, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 149, -1, -1, 152, -1, -1, 155, -1, + 157, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 149, -1, - -1, 152, -1, -1, 155, -1, 157, 36, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 36, -1, + -1, -1, 149, -1, -1, 152, -1, -1, 155, -1, + 157, -1, -1, -1, -1, -1, -1, 55, 56, -1, + 149, -1, -1, 152, -1, -1, 155, -1, 157, 67, + 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, + 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 55, 56, -1, 149, - -1, -1, 152, -1, -1, 155, -1, 157, 67, 68, - 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 110, 111, 112, -1, -1, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133 + -1, -1, 110, 111, 112, -1, -1, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/share/bison.simple" @@ -2537,259 +2560,259 @@ yyreduce: switch (yyn) { case 28: -#line 1133 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1133 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_EQ; ; break;} case 29: -#line 1133 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1133 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_NE; ; break;} case 30: -#line 1134 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1134 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_SLT; ; break;} case 31: -#line 1134 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1134 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_SGT; ; break;} case 32: -#line 1135 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1135 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_SLE; ; break;} case 33: -#line 1135 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1135 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_SGE; ; break;} case 34: -#line 1136 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1136 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_ULT; ; break;} case 35: -#line 1136 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1136 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_UGT; ; break;} case 36: -#line 1137 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1137 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_ULE; ; break;} case 37: -#line 1137 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1137 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.IPredicate = ICmpInst::ICMP_UGE; ; break;} case 38: -#line 1141 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1141 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_OEQ; ; break;} case 39: -#line 1141 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1141 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_ONE; ; break;} case 40: -#line 1142 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1142 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_OLT; ; break;} case 41: -#line 1142 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1142 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_OGT; ; break;} case 42: -#line 1143 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1143 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_OLE; ; break;} case 43: -#line 1143 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1143 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_OGE; ; break;} case 44: -#line 1144 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1144 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_ORD; ; break;} case 45: -#line 1144 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1144 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_UNO; ; break;} case 46: -#line 1145 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1145 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_UEQ; ; break;} case 47: -#line 1145 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1145 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_UNE; ; break;} case 48: -#line 1146 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1146 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_ULT; ; break;} case 49: -#line 1146 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1146 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_UGT; ; break;} case 50: -#line 1147 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1147 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_ULE; ; break;} case 51: -#line 1147 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1147 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_UGE; ; break;} case 52: -#line 1148 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1148 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_TRUE; ; break;} case 53: -#line 1149 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1149 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FPredicate = FCmpInst::FCMP_FALSE; ; break;} case 64: -#line 1158 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1158 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = 0; ; break;} case 65: -#line 1162 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1162 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = yyvsp[-1].StrVal; CHECK_FOR_ERROR ; break;} case 66: -#line 1166 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1166 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = 0; CHECK_FOR_ERROR ; break;} case 70: -#line 1174 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1174 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = 0; CHECK_FOR_ERROR ; break;} case 71: -#line 1179 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1179 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = yyvsp[-1].StrVal; CHECK_FOR_ERROR ; break;} case 72: -#line 1185 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1185 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::InternalLinkage; ; break;} case 73: -#line 1186 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1186 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::WeakLinkage; ; break;} case 74: -#line 1187 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1187 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::LinkOnceLinkage; ; break;} case 75: -#line 1188 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1188 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::AppendingLinkage; ; break;} case 76: -#line 1189 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1189 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::DLLExportLinkage; ; break;} case 77: -#line 1193 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1193 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::DLLImportLinkage; ; break;} case 78: -#line 1194 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1194 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::ExternalWeakLinkage; ; break;} case 79: -#line 1195 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1195 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::ExternalLinkage; ; break;} case 80: -#line 1199 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1199 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Visibility = GlobalValue::DefaultVisibility; ; break;} case 81: -#line 1200 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1200 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Visibility = GlobalValue::DefaultVisibility; ; break;} case 82: -#line 1201 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1201 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Visibility = GlobalValue::HiddenVisibility; ; break;} case 83: -#line 1202 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1202 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Visibility = GlobalValue::ProtectedVisibility; ; break;} case 84: -#line 1206 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1206 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::ExternalLinkage; ; break;} case 85: -#line 1207 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1207 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::DLLImportLinkage; ; break;} case 86: -#line 1208 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1208 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::ExternalWeakLinkage; ; break;} case 87: -#line 1212 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1212 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::ExternalLinkage; ; break;} case 88: -#line 1213 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1213 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::InternalLinkage; ; break;} case 89: -#line 1214 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1214 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::LinkOnceLinkage; ; break;} case 90: -#line 1215 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1215 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::WeakLinkage; ; break;} case 91: -#line 1216 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1216 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::DLLExportLinkage; ; break;} case 92: -#line 1220 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1220 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::ExternalLinkage; ; break;} case 93: -#line 1221 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1221 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::WeakLinkage; ; break;} case 94: -#line 1222 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1222 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.Linkage = GlobalValue::InternalLinkage; ; break;} case 95: -#line 1225 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1225 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::C; ; break;} case 96: -#line 1226 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1226 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::C; ; break;} case 97: -#line 1227 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1227 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::Fast; ; break;} case 98: -#line 1228 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1228 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::Cold; ; break;} case 99: -#line 1229 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1229 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::X86_StdCall; ; break;} case 100: -#line 1230 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1230 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = CallingConv::X86_FastCall; ; break;} case 101: -#line 1231 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1231 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if ((unsigned)yyvsp[0].UInt64Val != yyvsp[0].UInt64Val) GEN_ERROR("Calling conv too large"); @@ -2798,83 +2821,83 @@ case 101: ; break;} case 102: -#line 1238 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1238 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::ZExt; ; break;} case 103: -#line 1239 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1239 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::ZExt; ; break;} case 104: -#line 1240 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1240 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::SExt; ; break;} case 105: -#line 1241 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1241 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::SExt; ; break;} case 106: -#line 1242 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1242 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::InReg; ; break;} case 107: -#line 1243 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1243 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::StructRet; ; break;} case 108: -#line 1244 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1244 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::NoAlias; ; break;} case 109: -#line 1245 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1245 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::ByVal; ; break;} case 110: -#line 1246 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1246 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::Nest; ; break;} case 111: -#line 1249 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1249 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::None; ; break;} case 112: -#line 1250 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1250 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = yyvsp[-1].ParamAttrs | yyvsp[0].ParamAttrs; ; break;} case 113: -#line 1255 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1255 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::NoReturn; ; break;} case 114: -#line 1256 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1256 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::NoUnwind; ; break;} case 115: -#line 1257 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1257 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::ZExt; ; break;} case 116: -#line 1258 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1258 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::SExt; ; break;} case 117: -#line 1261 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1261 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = ParamAttr::None; ; break;} case 118: -#line 1262 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1262 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ParamAttrs = yyvsp[-1].ParamAttrs | yyvsp[0].ParamAttrs; ; break;} case 119: -#line 1269 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1269 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = 0; ; break;} case 120: -#line 1270 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1270 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = yyvsp[0].UInt64Val; if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal)) @@ -2883,11 +2906,11 @@ case 120: ; break;} case 121: -#line 1276 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1276 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = 0; ; break;} case 122: -#line 1277 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1277 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.UIntVal = yyvsp[0].UInt64Val; if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal)) @@ -2896,7 +2919,7 @@ case 122: ; break;} case 123: -#line 1285 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1285 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { for (unsigned i = 0, e = yyvsp[0].StrVal->length(); i != e; ++i) if ((*yyvsp[0].StrVal)[i] == '"' || (*yyvsp[0].StrVal)[i] == '\\') @@ -2906,23 +2929,23 @@ case 123: ; break;} case 124: -#line 1293 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1293 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = 0; ; break;} case 125: -#line 1294 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1294 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.StrVal = yyvsp[0].StrVal; ; break;} case 126: -#line 1299 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1299 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" {; break;} case 127: -#line 1300 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1300 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" {; break;} case 128: -#line 1301 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1301 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV->setSection(*yyvsp[0].StrVal); delete yyvsp[0].StrVal; @@ -2930,7 +2953,7 @@ case 128: ; break;} case 129: -#line 1306 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1306 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].UInt64Val != 0 && !isPowerOf2_32(yyvsp[0].UInt64Val)) GEN_ERROR("Alignment must be a power of two"); @@ -2939,21 +2962,21 @@ case 129: ; break;} case 137: -#line 1322 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1322 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(OpaqueType::get()); CHECK_FOR_ERROR ; break;} case 138: -#line 1326 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1326 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); CHECK_FOR_ERROR ; break;} case 139: -#line 1330 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1330 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Pointer type? if (*yyvsp[-1].TypeVal == Type::LabelTy) GEN_ERROR("Cannot form a pointer to a basic block"); @@ -2963,7 +2986,7 @@ case 139: ; break;} case 140: -#line 1337 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1337 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Named types are also simple types... const Type* tmp = getTypeVal(yyvsp[0].ValIDVal); CHECK_FOR_ERROR @@ -2971,7 +2994,7 @@ case 140: ; break;} case 141: -#line 1342 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1342 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Type UpReference if (yyvsp[0].UInt64Val > (uint64_t)~0U) GEN_ERROR("Value out of range"); OpaqueType *OT = OpaqueType::get(); // Use temporary placeholder @@ -2982,7 +3005,7 @@ case 141: ; break;} case 142: -#line 1350 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1350 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { std::vector<const Type*> Params; ParamAttrsVector Attrs; @@ -3015,7 +3038,7 @@ case 142: ; break;} case 143: -#line 1380 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1380 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { std::vector<const Type*> Params; ParamAttrsVector Attrs; @@ -3048,7 +3071,7 @@ case 143: ; break;} case 144: -#line 1411 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1411 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Sized array type? yyval.TypeVal = new PATypeHolder(HandleUpRefs(ArrayType::get(*yyvsp[-1].TypeVal, (unsigned)yyvsp[-3].UInt64Val))); delete yyvsp[-1].TypeVal; @@ -3056,7 +3079,7 @@ case 144: ; break;} case 145: -#line 1416 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1416 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Vector type? const llvm::Type* ElemTy = yyvsp[-1].TypeVal->get(); if ((unsigned)yyvsp[-3].UInt64Val != yyvsp[-3].UInt64Val) @@ -3071,7 +3094,7 @@ case 145: ; break;} case 146: -#line 1428 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1428 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Structure type? std::vector<const Type*> Elements; for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-1].TypeList->begin(), @@ -3084,14 +3107,14 @@ case 146: ; break;} case 147: -#line 1438 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1438 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Empty structure type? yyval.TypeVal = new PATypeHolder(StructType::get(std::vector<const Type*>())); CHECK_FOR_ERROR ; break;} case 148: -#line 1442 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1442 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { std::vector<const Type*> Elements; for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-2].TypeList->begin(), @@ -3104,21 +3127,21 @@ case 148: ; break;} case 149: -#line 1452 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1452 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Empty structure type? yyval.TypeVal = new PATypeHolder(StructType::get(std::vector<const Type*>(), true)); CHECK_FOR_ERROR ; break;} case 150: -#line 1459 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1459 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeWithAttrs.Ty = yyvsp[-1].TypeVal; yyval.TypeWithAttrs.Attrs = yyvsp[0].ParamAttrs; ; break;} case 151: -#line 1466 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1466 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription()); @@ -3128,13 +3151,13 @@ case 151: ; break;} case 152: -#line 1473 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1473 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeVal = new PATypeHolder(Type::VoidTy); ; break;} case 153: -#line 1478 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1478 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeWithAttrsList = new TypeWithAttrsList(); yyval.TypeWithAttrsList->push_back(yyvsp[0].TypeWithAttrs); @@ -3142,14 +3165,14 @@ case 153: ; break;} case 154: -#line 1483 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1483 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeWithAttrsList=yyvsp[-2].TypeWithAttrsList)->push_back(yyvsp[0].TypeWithAttrs); CHECK_FOR_ERROR ; break;} case 156: -#line 1491 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1491 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeWithAttrsList=yyvsp[-2].TypeWithAttrsList; TypeWithAttrs TWA; TWA.Attrs = ParamAttr::None; @@ -3159,7 +3182,7 @@ case 156: ; break;} case 157: -#line 1498 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1498 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeWithAttrsList = new TypeWithAttrsList; TypeWithAttrs TWA; TWA.Attrs = ParamAttr::None; @@ -3169,14 +3192,14 @@ case 157: ; break;} case 158: -#line 1505 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1505 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeWithAttrsList = new TypeWithAttrsList(); CHECK_FOR_ERROR ; break;} case 159: -#line 1513 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1513 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TypeList = new std::list<PATypeHolder>(); yyval.TypeList->push_back(*yyvsp[0].TypeVal); @@ -3185,7 +3208,7 @@ case 159: ; break;} case 160: -#line 1519 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1519 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeList=yyvsp[-2].TypeList)->push_back(*yyvsp[0].TypeVal); delete yyvsp[0].TypeVal; @@ -3193,7 +3216,7 @@ case 160: ; break;} case 161: -#line 1531 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1531 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription()); @@ -3224,7 +3247,7 @@ case 161: ; break;} case 162: -#line 1559 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1559 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); @@ -3243,7 +3266,7 @@ case 162: ; break;} case 163: -#line 1575 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1575 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); @@ -3273,7 +3296,7 @@ case 163: ; break;} case 164: -#line 1602 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1602 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription()); @@ -3304,7 +3327,7 @@ case 164: ; break;} case 165: -#line 1630 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1630 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast<StructType>(yyvsp[-3].TypeVal->get()); if (STy == 0) @@ -3333,7 +3356,7 @@ case 165: ; break;} case 166: -#line 1656 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1656 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); @@ -3356,7 +3379,7 @@ case 166: ; break;} case 167: -#line 1676 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1676 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast<StructType>(yyvsp[-5].TypeVal->get()); if (STy == 0) @@ -3385,7 +3408,7 @@ case 167: ; break;} case 168: -#line 1702 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1702 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-4].TypeVal)->getDescription()); @@ -3408,7 +3431,7 @@ case 168: ; break;} case 169: -#line 1722 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1722 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription()); @@ -3423,7 +3446,7 @@ case 169: ; break;} case 170: -#line 1734 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1734 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription()); @@ -3433,7 +3456,7 @@ case 170: ; break;} case 171: -#line 1741 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1741 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription()); @@ -3502,7 +3525,7 @@ case 171: ; break;} case 172: -#line 1807 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1807 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription()); @@ -3515,7 +3538,7 @@ case 172: ; break;} case 173: -#line 1817 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1817 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription()); @@ -3528,7 +3551,7 @@ case 173: ; break;} case 174: -#line 1827 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1827 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // integral constants if (!ConstantInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].SInt64Val)) GEN_ERROR("Constant value doesn't fit in type"); @@ -3537,7 +3560,7 @@ case 174: ; break;} case 175: -#line 1833 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1833 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // arbitrary precision integer constants uint32_t BitWidth = cast<IntegerType>(yyvsp[-1].PrimType)->getBitWidth(); if (yyvsp[0].APIntVal->getBitWidth() > BitWidth) { @@ -3550,7 +3573,7 @@ case 175: ; break;} case 176: -#line 1843 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1843 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // integral constants if (!ConstantInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].UInt64Val)) GEN_ERROR("Constant value doesn't fit in type"); @@ -3559,7 +3582,7 @@ case 176: ; break;} case 177: -#line 1849 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1849 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // arbitrary precision integer constants uint32_t BitWidth = cast<IntegerType>(yyvsp[-1].PrimType)->getBitWidth(); if (yyvsp[0].APIntVal->getBitWidth() > BitWidth) { @@ -3572,7 +3595,7 @@ case 177: ; break;} case 178: -#line 1859 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1859 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants assert(cast<IntegerType>(yyvsp[-1].PrimType)->getBitWidth() == 1 && "Not Bool?"); yyval.ConstVal = ConstantInt::getTrue(); @@ -3580,7 +3603,7 @@ case 178: ; break;} case 179: -#line 1864 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1864 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants assert(cast<IntegerType>(yyvsp[-1].PrimType)->getBitWidth() == 1 && "Not Bool?"); yyval.ConstVal = ConstantInt::getFalse(); @@ -3588,7 +3611,7 @@ case 179: ; break;} case 180: -#line 1869 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1869 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Floating point constants if (!ConstantFP::isValueValidForType(yyvsp[-1].PrimType, *yyvsp[0].FPVal)) GEN_ERROR("Floating point constant invalid for type"); @@ -3602,7 +3625,7 @@ case 180: ; break;} case 181: -#line 1882 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1882 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription()); @@ -3617,7 +3640,7 @@ case 181: ; break;} case 182: -#line 1894 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1894 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[-2].ConstVal->getType())) GEN_ERROR("GetElementPtr requires a pointer operand"); @@ -3642,7 +3665,7 @@ case 182: ; break;} case 183: -#line 1916 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1916 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-5].ConstVal->getType() != Type::Int1Ty) GEN_ERROR("Select condition must be of boolean type"); @@ -3653,7 +3676,7 @@ case 183: ; break;} case 184: -#line 1924 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1924 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) GEN_ERROR("Binary operator types must match"); @@ -3662,7 +3685,7 @@ case 184: ; break;} case 185: -#line 1930 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1930 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) GEN_ERROR("Logical operator types must match"); @@ -3676,7 +3699,7 @@ case 185: ; break;} case 186: -#line 1941 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1941 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) GEN_ERROR("icmp operand types must match"); @@ -3684,7 +3707,7 @@ case 186: ; break;} case 187: -#line 1946 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1946 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType()) GEN_ERROR("fcmp operand types must match"); @@ -3692,7 +3715,7 @@ case 187: ; break;} case 188: -#line 1951 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1951 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!ExtractElementInst::isValidOperands(yyvsp[-3].ConstVal, yyvsp[-1].ConstVal)) GEN_ERROR("Invalid extractelement operands"); @@ -3701,7 +3724,7 @@ case 188: ; break;} case 189: -#line 1957 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1957 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!InsertElementInst::isValidOperands(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal)) GEN_ERROR("Invalid insertelement operands"); @@ -3710,7 +3733,7 @@ case 189: ; break;} case 190: -#line 1963 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1963 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!ShuffleVectorInst::isValidOperands(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal)) GEN_ERROR("Invalid shufflevector operands"); @@ -3719,14 +3742,14 @@ case 190: ; break;} case 191: -#line 1972 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1972 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ConstVector = yyvsp[-2].ConstVector)->push_back(yyvsp[0].ConstVal); CHECK_FOR_ERROR ; break;} case 192: -#line 1976 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1976 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ConstVector = new std::vector<Constant*>(); yyval.ConstVector->push_back(yyvsp[0].ConstVal); @@ -3734,23 +3757,23 @@ case 192: ; break;} case 193: -#line 1984 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1984 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} case 194: -#line 1984 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1984 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} case 195: -#line 1987 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1987 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; ; break;} case 196: -#line 1987 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1987 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; ; break;} case 197: -#line 1990 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1990 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { const Type* VTy = yyvsp[-1].TypeVal->get(); Value *V = getVal(VTy, yyvsp[0].ValIDVal); @@ -3765,7 +3788,7 @@ case 197: ; break;} case 198: -#line 2002 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2002 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { Constant *Val = yyvsp[-3].ConstVal; const Type *DestTy = yyvsp[-1].TypeVal->get(); @@ -3780,7 +3803,7 @@ case 198: ; break;} case 199: -#line 2023 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2023 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = ParserResult = CurModule.CurrentModule; CurModule.ModuleDone(); @@ -3788,7 +3811,7 @@ case 199: ; break;} case 200: -#line 2028 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2028 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ModuleVal = ParserResult = CurModule.CurrentModule; CurModule.ModuleDone(); @@ -3796,34 +3819,34 @@ case 200: ; break;} case 203: -#line 2041 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2041 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.isDeclare = false; ; break;} case 204: -#line 2041 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2041 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.FunctionDone(); CHECK_FOR_ERROR ; break;} case 205: -#line 2045 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2045 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.isDeclare = true; ; break;} case 206: -#line 2045 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2045 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ; break;} case 207: -#line 2048 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2048 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ; break;} case 208: -#line 2051 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2051 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription()); @@ -3850,7 +3873,7 @@ case 208: ; break;} case 209: -#line 2075 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2075 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { ResolveTypeTo(yyvsp[-2].StrVal, yyvsp[0].PrimType); @@ -3864,7 +3887,7 @@ case 209: ; break;} case 210: -#line 2086 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2086 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { /* "Externally Visible" Linkage */ if (yyvsp[0].ConstVal == 0) @@ -3875,13 +3898,13 @@ case 210: ; break;} case 211: -#line 2093 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2093 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; ; break;} case 212: -#line 2097 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2097 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[0].ConstVal == 0) GEN_ERROR("Global value initializer is not a constant"); @@ -3890,13 +3913,13 @@ case 212: ; break;} case 213: -#line 2102 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2102 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; ; break;} case 214: -#line 2106 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2106 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription()); @@ -3906,14 +3929,14 @@ case 214: ; break;} case 215: -#line 2112 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2112 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; CHECK_FOR_ERROR ; break;} case 216: -#line 2116 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2116 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { std::string Name; if (yyvsp[-4].StrVal) { @@ -3956,19 +3979,19 @@ case 216: ; break;} case 217: -#line 2156 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2156 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ; break;} case 218: -#line 2159 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2159 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ; break;} case 219: -#line 2165 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2165 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm(); if (AsmSoFar.empty()) @@ -3980,21 +4003,21 @@ case 219: ; break;} case 220: -#line 2175 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2175 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setTargetTriple(*yyvsp[0].StrVal); delete yyvsp[0].StrVal; ; break;} case 221: -#line 2179 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2179 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setDataLayout(*yyvsp[0].StrVal); delete yyvsp[0].StrVal; ; break;} case 223: -#line 2186 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2186 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(*yyvsp[0].StrVal); delete yyvsp[0].StrVal; @@ -4002,7 +4025,7 @@ case 223: ; break;} case 224: -#line 2191 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2191 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(*yyvsp[0].StrVal); delete yyvsp[0].StrVal; @@ -4010,13 +4033,13 @@ case 224: ; break;} case 225: -#line 2196 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2196 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ; break;} case 226: -#line 2205 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2205 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); @@ -4029,7 +4052,7 @@ case 226: ; break;} case 227: -#line 2215 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2215 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); @@ -4042,14 +4065,14 @@ case 227: ; break;} case 228: -#line 2226 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2226 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[0].ArgList; CHECK_FOR_ERROR ; break;} case 229: -#line 2230 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2230 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = yyvsp[-2].ArgList; struct ArgListEntry E; @@ -4061,7 +4084,7 @@ case 229: ; break;} case 230: -#line 2239 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2239 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = new ArgListType; struct ArgListEntry E; @@ -4073,14 +4096,14 @@ case 230: ; break;} case 231: -#line 2248 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2248 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ArgList = 0; CHECK_FOR_ERROR ; break;} case 232: -#line 2254 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2254 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { std::string FunctionName(*yyvsp[-6].StrVal); delete yyvsp[-6].StrVal; // Free strdup'd memory! @@ -4202,7 +4225,7 @@ case 232: ; break;} case 235: -#line 2376 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2376 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = CurFun.CurrentFunction; @@ -4213,14 +4236,14 @@ case 235: ; break;} case 238: -#line 2387 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2387 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = yyvsp[-1].FunctionVal; CHECK_FOR_ERROR ; break;} case 239: -#line 2392 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2392 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.CurrentFunction->setLinkage(yyvsp[-2].Linkage); CurFun.CurrentFunction->setVisibility(yyvsp[-1].Visibility); @@ -4230,77 +4253,77 @@ case 239: ; break;} case 240: -#line 2404 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2404 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; CHECK_FOR_ERROR ; break;} case 241: -#line 2408 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2408 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; CHECK_FOR_ERROR ; break;} case 242: -#line 2413 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2413 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // A reference to a direct constant yyval.ValIDVal = ValID::create(yyvsp[0].SInt64Val); CHECK_FOR_ERROR ; break;} case 243: -#line 2417 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2417 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(yyvsp[0].UInt64Val); CHECK_FOR_ERROR ; break;} case 244: -#line 2421 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2421 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Perhaps it's an FP constant? yyval.ValIDVal = ValID::create(yyvsp[0].FPVal); CHECK_FOR_ERROR ; break;} case 245: -#line 2425 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2425 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(ConstantInt::getTrue()); CHECK_FOR_ERROR ; break;} case 246: -#line 2429 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2429 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(ConstantInt::getFalse()); CHECK_FOR_ERROR ; break;} case 247: -#line 2433 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2433 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createNull(); CHECK_FOR_ERROR ; break;} case 248: -#line 2437 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2437 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createUndef(); CHECK_FOR_ERROR ; break;} case 249: -#line 2441 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2441 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // A vector zero constant. yyval.ValIDVal = ValID::createZeroInit(); CHECK_FOR_ERROR ; break;} case 250: -#line 2445 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2445 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized packed vector const Type *ETy = (*yyvsp[-1].ConstVector)[0]->getType(); int NumElements = yyvsp[-1].ConstVector->size(); @@ -4328,14 +4351,14 @@ case 250: ; break;} case 251: -#line 2470 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2470 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::create(yyvsp[0].ConstVal); CHECK_FOR_ERROR ; break;} case 252: -#line 2474 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2474 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createInlineAsm(*yyvsp[-2].StrVal, *yyvsp[0].StrVal, yyvsp[-3].BoolVal); delete yyvsp[-2].StrVal; @@ -4344,21 +4367,21 @@ case 252: ; break;} case 253: -#line 2484 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2484 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it an integer reference...? yyval.ValIDVal = ValID::createLocalID(yyvsp[0].UIntVal); CHECK_FOR_ERROR ; break;} case 254: -#line 2488 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2488 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValIDVal = ValID::createGlobalID(yyvsp[0].UIntVal); CHECK_FOR_ERROR ; break;} case 255: -#line 2492 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2492 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it a named reference...? yyval.ValIDVal = ValID::createLocalName(*yyvsp[0].StrVal); delete yyvsp[0].StrVal; @@ -4366,7 +4389,7 @@ case 255: ; break;} case 256: -#line 2497 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2497 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it a named reference...? yyval.ValIDVal = ValID::createGlobalName(*yyvsp[0].StrVal); delete yyvsp[0].StrVal; @@ -4374,7 +4397,7 @@ case 256: ; break;} case 259: -#line 2510 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2510 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription()); @@ -4384,21 +4407,21 @@ case 259: ; break;} case 260: -#line 2519 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2519 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.FunctionVal = yyvsp[-1].FunctionVal; CHECK_FOR_ERROR ; break;} case 261: -#line 2523 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2523 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Do not allow functions with 0 basic blocks yyval.FunctionVal = yyvsp[-1].FunctionVal; CHECK_FOR_ERROR ; break;} case 262: -#line 2532 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2532 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { setValueName(yyvsp[0].TermInstVal, yyvsp[-1].StrVal); CHECK_FOR_ERROR @@ -4409,7 +4432,7 @@ case 262: ; break;} case 263: -#line 2541 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2541 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (CastInst *CI1 = dyn_cast<CastInst>(yyvsp[0].InstVal)) if (CastInst *CI2 = dyn_cast<CastInst>(CI1->getOperand(0))) @@ -4421,14 +4444,14 @@ case 263: ; break;} case 264: -#line 2550 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2550 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Empty space between instruction lists yyval.BasicBlockVal = defineBBVal(ValID::createLocalID(CurFun.NextValNum)); CHECK_FOR_ERROR ; break;} case 265: -#line 2554 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2554 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Labelled (named) basic block yyval.BasicBlockVal = defineBBVal(ValID::createLocalName(*yyvsp[0].StrVal)); delete yyvsp[0].StrVal; @@ -4437,21 +4460,21 @@ case 265: ; break;} case 266: -#line 2561 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2561 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with a result... yyval.TermInstVal = new ReturnInst(yyvsp[0].ValueVal); CHECK_FOR_ERROR ; break;} case 267: -#line 2565 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2565 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with no result... yyval.TermInstVal = new ReturnInst(); CHECK_FOR_ERROR ; break;} case 268: -#line 2569 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2569 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Unconditional Branch... BasicBlock* tmpBB = getBBVal(yyvsp[0].ValIDVal); CHECK_FOR_ERROR @@ -4459,7 +4482,7 @@ case 268: ; break;} case 269: -#line 2574 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2574 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { assert(cast<IntegerType>(yyvsp[-7].PrimType)->getBitWidth() == 1 && "Not Bool?"); BasicBlock* tmpBBA = getBBVal(yyvsp[-3].ValIDVal); @@ -4472,7 +4495,7 @@ case 269: ; break;} case 270: -#line 2584 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2584 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { Value* tmpVal = getVal(yyvsp[-7].PrimType, yyvsp[-6].ValIDVal); CHECK_FOR_ERROR @@ -4494,7 +4517,7 @@ case 270: ; break;} case 271: -#line 2603 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2603 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { Value* tmpVal = getVal(yyvsp[-6].PrimType, yyvsp[-5].ValIDVal); CHECK_FOR_ERROR @@ -4506,7 +4529,7 @@ case 271: ; break;} case 272: -#line 2613 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2613 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Handle the short syntax @@ -4521,7 +4544,7 @@ case 272: ParamAttrsWithIndex PAWI; PAWI.index = 0; PAWI.attrs = yyvsp[-6].ParamAttrs; Attrs.push_back(PAWI); } - ValueRefList::iterator I = yyvsp[-8].ValueRefList->begin(), E = yyvsp[-8].ValueRefList->end(); + ParamList::iterator I = yyvsp[-8].ParamList->begin(), E = yyvsp[-8].ParamList->end(); unsigned index = 1; for (; I != E; ++I, ++index) { const Type *Ty = I->Val->getType(); @@ -4552,7 +4575,7 @@ case 272: // Check the arguments ValueList Args; - if (yyvsp[-8].ValueRefList->empty()) { // Has no arguments? + if (yyvsp[-8].ParamList->empty()) { // Has no arguments? // Make sure no arguments is a good thing! if (Ty->getNumParams() != 0) GEN_ERROR("No arguments passed to a function that " @@ -4562,7 +4585,7 @@ case 272: // correctly! FunctionType::param_iterator I = Ty->param_begin(); FunctionType::param_iterator E = Ty->param_end(); - ValueRefList::iterator ArgI = yyvsp[-8].ValueRefList->begin(), ArgE = yyvsp[-8].ValueRefList->end(); + ParamList::iterator ArgI = yyvsp[-8].ParamList->begin(), ArgE = yyvsp[-8].ParamList->end(); for (; ArgI != ArgE && I != E; ++ArgI, ++I) { if (ArgI->Val->getType() != *I) @@ -4583,26 +4606,26 @@ case 272: InvokeInst *II = new InvokeInst(V, Normal, Except, Args.begin(), Args.end()); II->setCallingConv(yyvsp[-12].UIntVal); yyval.TermInstVal = II; - delete yyvsp[-8].ValueRefList; + delete yyvsp[-8].ParamList; CHECK_FOR_ERROR ; break;} case 273: -#line 2692 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2692 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new UnwindInst(); CHECK_FOR_ERROR ; break;} case 274: -#line 2696 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2696 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.TermInstVal = new UnreachableInst(); CHECK_FOR_ERROR ; break;} case 275: -#line 2703 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2703 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.JumpTable = yyvsp[-5].JumpTable; Constant *V = cast<Constant>(getExistingVal(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal)); @@ -4616,7 +4639,7 @@ case 275: ; break;} case 276: -#line 2714 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2714 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.JumpTable = new std::vector<std::pair<Constant*, BasicBlock*> >(); Constant *V = cast<Constant>(getExistingVal(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal)); @@ -4631,7 +4654,7 @@ case 276: ; break;} case 277: -#line 2727 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2727 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Is this definition named?? if so, assign the name... setValueName(yyvsp[0].InstVal, yyvsp[-1].StrVal); @@ -4642,7 +4665,7 @@ case 277: ; break;} case 278: -#line 2737 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2737 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Used for PHI nodes if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-5].TypeVal)->getDescription()); @@ -4656,7 +4679,7 @@ case 278: ; break;} case 279: -#line 2748 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2748 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.PHIList = yyvsp[-6].PHIList; Value* tmpVal = getVal(yyvsp[-6].PHIList->front().first->getType(), yyvsp[-3].ValIDVal); @@ -4667,61 +4690,79 @@ case 279: ; break;} case 280: -#line 2758 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2758 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); // Used for call and invoke instructions - yyval.ValueRefList = new ValueRefList(); - ValueRefListEntry E; E.Attrs = yyvsp[0].ParamAttrs; E.Val = getVal(yyvsp[-2].TypeVal->get(), yyvsp[-1].ValIDVal); - yyval.ValueRefList->push_back(E); + yyval.ParamList = new ParamList(); + ParamListEntry E; E.Attrs = yyvsp[0].ParamAttrs; E.Val = getVal(yyvsp[-2].TypeVal->get(), yyvsp[-1].ValIDVal); + yyval.ParamList->push_back(E); delete yyvsp[-2].TypeVal; ; break;} case 281: -#line 2767 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2767 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" +{ + // Labels are only valid in ASMs + yyval.ParamList = new ParamList(); + ParamListEntry E; E.Attrs = yyvsp[0].ParamAttrs; E.Val = getBBVal(yyvsp[-1].ValIDVal); + yyval.ParamList->push_back(E); + ; + break;} +case 282: +#line 2773 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); - yyval.ValueRefList = yyvsp[-4].ValueRefList; - ValueRefListEntry E; E.Attrs = yyvsp[0].ParamAttrs; E.Val = getVal(yyvsp[-2].TypeVal->get(), yyvsp[-1].ValIDVal); - yyval.ValueRefList->push_back(E); + yyval.ParamList = yyvsp[-4].ParamList; + ParamListEntry E; E.Attrs = yyvsp[0].ParamAttrs; E.Val = getVal(yyvsp[-2].TypeVal->get(), yyvsp[-1].ValIDVal); + yyval.ParamList->push_back(E); delete yyvsp[-2].TypeVal; CHECK_FOR_ERROR ; break;} -case 282: -#line 2776 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" -{ yyval.ValueRefList = new ValueRefList(); ; - break;} case 283: -#line 2779 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" -{ yyval.ValueList = new std::vector<Value*>(); ; +#line 2782 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" +{ + yyval.ParamList = yyvsp[-4].ParamList; + ParamListEntry E; E.Attrs = yyvsp[0].ParamAttrs; E.Val = getBBVal(yyvsp[-1].ValIDVal); + yyval.ParamList->push_back(E); + CHECK_FOR_ERROR + ; break;} case 284: -#line 2780 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2788 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" +{ yyval.ParamList = new ParamList(); ; + break;} +case 285: +#line 2791 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" +{ yyval.ValueList = new std::vector<Value*>(); ; + break;} +case 286: +#line 2792 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.ValueList = yyvsp[-2].ValueList; yyval.ValueList->push_back(yyvsp[0].ValueVal); CHECK_FOR_ERROR ; break;} -case 285: -#line 2787 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 287: +#line 2799 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; CHECK_FOR_ERROR ; break;} -case 286: -#line 2791 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 288: +#line 2803 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; CHECK_FOR_ERROR ; break;} -case 287: -#line 2796 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 289: +#line 2808 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription()); @@ -4744,8 +4785,8 @@ case 287: delete yyvsp[-3].TypeVal; ; break;} -case 288: -#line 2817 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 290: +#line 2829 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription()); @@ -4764,8 +4805,8 @@ case 288: delete yyvsp[-3].TypeVal; ; break;} -case 289: -#line 2834 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 291: +#line 2846 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription()); @@ -4781,8 +4822,8 @@ case 289: delete yyvsp[-3].TypeVal; ; break;} -case 290: -#line 2848 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 292: +#line 2860 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription()); @@ -4798,8 +4839,8 @@ case 290: delete yyvsp[-3].TypeVal; ; break;} -case 291: -#line 2862 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 293: +#line 2874 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription()); @@ -4813,8 +4854,8 @@ case 291: delete yyvsp[0].TypeVal; ; break;} -case 292: -#line 2874 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 294: +#line 2886 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (yyvsp[-4].ValueVal->getType() != Type::Int1Ty) GEN_ERROR("select condition must be boolean"); @@ -4824,8 +4865,8 @@ case 292: CHECK_FOR_ERROR ; break;} -case 293: -#line 2882 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 295: +#line 2894 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription()); @@ -4834,8 +4875,8 @@ case 293: CHECK_FOR_ERROR ; break;} -case 294: -#line 2889 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 296: +#line 2901 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!ExtractElementInst::isValidOperands(yyvsp[-2].ValueVal, yyvsp[0].ValueVal)) GEN_ERROR("Invalid extractelement operands"); @@ -4843,8 +4884,8 @@ case 294: CHECK_FOR_ERROR ; break;} -case 295: -#line 2895 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 297: +#line 2907 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!InsertElementInst::isValidOperands(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal)) GEN_ERROR("Invalid insertelement operands"); @@ -4852,8 +4893,8 @@ case 295: CHECK_FOR_ERROR ; break;} -case 296: -#line 2901 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 298: +#line 2913 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!ShuffleVectorInst::isValidOperands(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal)) GEN_ERROR("Invalid shufflevector operands"); @@ -4861,8 +4902,8 @@ case 296: CHECK_FOR_ERROR ; break;} -case 297: -#line 2907 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 299: +#line 2919 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { const Type *Ty = yyvsp[0].PHIList->front().first->getType(); if (!Ty->isFirstClassType()) @@ -4879,8 +4920,8 @@ case 297: CHECK_FOR_ERROR ; break;} -case 298: -#line 2923 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 300: +#line 2935 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { // Handle the short syntax @@ -4896,7 +4937,7 @@ case 298: Attrs.push_back(PAWI); } unsigned index = 1; - ValueRefList::iterator I = yyvsp[-2].ValueRefList->begin(), E = yyvsp[-2].ValueRefList->end(); + ParamList::iterator I = yyvsp[-2].ParamList->begin(), E = yyvsp[-2].ParamList->end(); for (; I != E; ++I, ++index) { const Type *Ty = I->Val->getType(); if (Ty == Type::VoidTy) @@ -4930,7 +4971,7 @@ case 298: // Check the arguments ValueList Args; - if (yyvsp[-2].ValueRefList->empty()) { // Has no arguments? + if (yyvsp[-2].ParamList->empty()) { // Has no arguments? // Make sure no arguments is a good thing! if (Ty->getNumParams() != 0) GEN_ERROR("No arguments passed to a function that " @@ -4941,7 +4982,7 @@ case 298: // FunctionType::param_iterator I = Ty->param_begin(); FunctionType::param_iterator E = Ty->param_end(); - ValueRefList::iterator ArgI = yyvsp[-2].ValueRefList->begin(), ArgE = yyvsp[-2].ValueRefList->end(); + ParamList::iterator ArgI = yyvsp[-2].ParamList->begin(), ArgE = yyvsp[-2].ParamList->end(); for (; ArgI != ArgE && I != E; ++ArgI, ++I) { if (ArgI->Val->getType() != *I) @@ -4961,34 +5002,34 @@ case 298: CI->setTailCall(yyvsp[-7].BoolVal); CI->setCallingConv(yyvsp[-6].UIntVal); yyval.InstVal = CI; - delete yyvsp[-2].ValueRefList; + delete yyvsp[-2].ParamList; delete yyvsp[-5].TypeVal; CHECK_FOR_ERROR ; break;} -case 299: -#line 3007 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 301: +#line 3019 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.InstVal = yyvsp[0].InstVal; CHECK_FOR_ERROR ; break;} -case 300: -#line 3012 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 302: +#line 3024 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = true; CHECK_FOR_ERROR ; break;} -case 301: -#line 3016 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 303: +#line 3028 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { yyval.BoolVal = false; CHECK_FOR_ERROR ; break;} -case 302: -#line 3023 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 304: +#line 3035 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription()); @@ -4997,8 +5038,8 @@ case 302: CHECK_FOR_ERROR ; break;} -case 303: -#line 3030 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 305: +#line 3042 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-4].TypeVal)->getDescription()); @@ -5008,8 +5049,8 @@ case 303: delete yyvsp[-4].TypeVal; ; break;} -case 304: -#line 3038 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 306: +#line 3050 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription()); @@ -5018,8 +5059,8 @@ case 304: CHECK_FOR_ERROR ; break;} -case 305: -#line 3045 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 307: +#line 3057 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-4].TypeVal)->getDescription()); @@ -5029,8 +5070,8 @@ case 305: delete yyvsp[-4].TypeVal; ; break;} -case 306: -#line 3053 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 308: +#line 3065 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa<PointerType>(yyvsp[0].ValueVal->getType())) GEN_ERROR("Trying to free nonpointer type " + @@ -5039,8 +5080,8 @@ case 306: CHECK_FOR_ERROR ; break;} -case 307: -#line 3061 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 309: +#line 3073 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); @@ -5056,8 +5097,8 @@ case 307: delete yyvsp[-2].TypeVal; ; break;} -case 308: -#line 3075 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 310: +#line 3087 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); @@ -5076,8 +5117,8 @@ case 308: delete yyvsp[-2].TypeVal; ; break;} -case 309: -#line 3092 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +case 311: +#line 3104 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription()); @@ -5316,7 +5357,7 @@ yyerrhandle: } return 1; } -#line 3109 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3121 "/Volumes/MacOS9/gcc/llvm-gcc-main/llvm/lib/AsmParser/llvmAsmParser.y" // common code from the two 'RunVMAsmParser' functions diff --git a/lib/AsmParser/llvmAsmParser.h.cvs b/lib/AsmParser/llvmAsmParser.h.cvs index d6cf28d..84d8915 100644 --- a/lib/AsmParser/llvmAsmParser.h.cvs +++ b/lib/AsmParser/llvmAsmParser.h.cvs @@ -14,7 +14,7 @@ typedef union { llvm::ArgListType *ArgList; llvm::TypeWithAttrs TypeWithAttrs; llvm::TypeWithAttrsList *TypeWithAttrsList; - llvm::ValueRefList *ValueRefList; + llvm::ParamList *ParamList; // Represent the RHS of PHI node std::list<std::pair<llvm::Value*, diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index d2e5256..7084538 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -981,7 +981,7 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) { llvm::ArgListType *ArgList; llvm::TypeWithAttrs TypeWithAttrs; llvm::TypeWithAttrsList *TypeWithAttrsList; - llvm::ValueRefList *ValueRefList; + llvm::ParamList *ParamList; // Represent the RHS of PHI node std::list<std::pair<llvm::Value*, @@ -1021,7 +1021,7 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) { %type <ConstVector> ConstVector %type <ArgList> ArgList ArgListH %type <PHIList> PHIList -%type <ValueRefList> ValueRefList // For call param lists & GEP indices +%type <ParamList> ParamList // For call param lists & GEP indices %type <ValueList> IndexList // For GEP indices %type <TypeList> TypeListI %type <TypeWithAttrsList> ArgTypeList ArgTypeListI @@ -2609,7 +2609,7 @@ BBTerminatorInst : RET ResolvedVal { // Return with a result... $$ = S; CHECK_FOR_ERROR } - | INVOKE OptCallingConv ResultTypes ValueRef '(' ValueRefList ')' OptFuncAttrs + | INVOKE OptCallingConv ResultTypes ValueRef '(' ParamList ')' OptFuncAttrs TO LABEL ValueRef UNWIND LABEL ValueRef { // Handle the short syntax @@ -2624,7 +2624,7 @@ BBTerminatorInst : RET ResolvedVal { // Return with a result... ParamAttrsWithIndex PAWI; PAWI.index = 0; PAWI.attrs = $8; Attrs.push_back(PAWI); } - ValueRefList::iterator I = $6->begin(), E = $6->end(); + ParamList::iterator I = $6->begin(), E = $6->end(); unsigned index = 1; for (; I != E; ++I, ++index) { const Type *Ty = I->Val->getType(); @@ -2665,7 +2665,7 @@ BBTerminatorInst : RET ResolvedVal { // Return with a result... // correctly! FunctionType::param_iterator I = Ty->param_begin(); FunctionType::param_iterator E = Ty->param_end(); - ValueRefList::iterator ArgI = $6->begin(), ArgE = $6->end(); + ParamList::iterator ArgI = $6->begin(), ArgE = $6->end(); for (; ArgI != ArgE && I != E; ++ArgI, ++I) { if (ArgI->Val->getType() != *I) @@ -2755,25 +2755,37 @@ PHIList : Types '[' ValueRef ',' ValueRef ']' { // Used for PHI nodes }; -ValueRefList : Types ValueRef OptParamAttrs { +ParamList : Types ValueRef OptParamAttrs { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*$1)->getDescription()); // Used for call and invoke instructions - $$ = new ValueRefList(); - ValueRefListEntry E; E.Attrs = $3; E.Val = getVal($1->get(), $2); + $$ = new ParamList(); + ParamListEntry E; E.Attrs = $3; E.Val = getVal($1->get(), $2); $$->push_back(E); delete $1; } - | ValueRefList ',' Types ValueRef OptParamAttrs { + | LABEL ValueRef OptParamAttrs { + // Labels are only valid in ASMs + $$ = new ParamList(); + ParamListEntry E; E.Attrs = $3; E.Val = getBBVal($2); + $$->push_back(E); + } + | ParamList ',' Types ValueRef OptParamAttrs { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*$3)->getDescription()); $$ = $1; - ValueRefListEntry E; E.Attrs = $5; E.Val = getVal($3->get(), $4); + ParamListEntry E; E.Attrs = $5; E.Val = getVal($3->get(), $4); $$->push_back(E); delete $3; CHECK_FOR_ERROR } - | /*empty*/ { $$ = new ValueRefList(); }; + | ParamList ',' LABEL ValueRef OptParamAttrs { + $$ = $1; + ParamListEntry E; E.Attrs = $5; E.Val = getBBVal($4); + $$->push_back(E); + CHECK_FOR_ERROR + } + | /*empty*/ { $$ = new ParamList(); }; IndexList // Used for gep instructions and constant expressions : /*empty*/ { $$ = new std::vector<Value*>(); } @@ -2919,7 +2931,7 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef { delete $2; // Free the list... CHECK_FOR_ERROR } - | OptTailCall OptCallingConv ResultTypes ValueRef '(' ValueRefList ')' + | OptTailCall OptCallingConv ResultTypes ValueRef '(' ParamList ')' OptFuncAttrs { // Handle the short syntax @@ -2935,7 +2947,7 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef { Attrs.push_back(PAWI); } unsigned index = 1; - ValueRefList::iterator I = $6->begin(), E = $6->end(); + ParamList::iterator I = $6->begin(), E = $6->end(); for (; I != E; ++I, ++index) { const Type *Ty = I->Val->getType(); if (Ty == Type::VoidTy) @@ -2980,7 +2992,7 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef { // FunctionType::param_iterator I = Ty->param_begin(); FunctionType::param_iterator E = Ty->param_end(); - ValueRefList::iterator ArgI = $6->begin(), ArgE = $6->end(); + ParamList::iterator ArgI = $6->begin(), ArgE = $6->end(); for (; ArgI != ArgE && I != E; ++ArgI, ++I) { if (ArgI->Val->getType() != *I) diff --git a/lib/AsmParser/llvmAsmParser.y.cvs b/lib/AsmParser/llvmAsmParser.y.cvs index d2e5256..7084538 100644 --- a/lib/AsmParser/llvmAsmParser.y.cvs +++ b/lib/AsmParser/llvmAsmParser.y.cvs @@ -981,7 +981,7 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) { llvm::ArgListType *ArgList; llvm::TypeWithAttrs TypeWithAttrs; llvm::TypeWithAttrsList *TypeWithAttrsList; - llvm::ValueRefList *ValueRefList; + llvm::ParamList *ParamList; // Represent the RHS of PHI node std::list<std::pair<llvm::Value*, @@ -1021,7 +1021,7 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) { %type <ConstVector> ConstVector %type <ArgList> ArgList ArgListH %type <PHIList> PHIList -%type <ValueRefList> ValueRefList // For call param lists & GEP indices +%type <ParamList> ParamList // For call param lists & GEP indices %type <ValueList> IndexList // For GEP indices %type <TypeList> TypeListI %type <TypeWithAttrsList> ArgTypeList ArgTypeListI @@ -2609,7 +2609,7 @@ BBTerminatorInst : RET ResolvedVal { // Return with a result... $$ = S; CHECK_FOR_ERROR } - | INVOKE OptCallingConv ResultTypes ValueRef '(' ValueRefList ')' OptFuncAttrs + | INVOKE OptCallingConv ResultTypes ValueRef '(' ParamList ')' OptFuncAttrs TO LABEL ValueRef UNWIND LABEL ValueRef { // Handle the short syntax @@ -2624,7 +2624,7 @@ BBTerminatorInst : RET ResolvedVal { // Return with a result... ParamAttrsWithIndex PAWI; PAWI.index = 0; PAWI.attrs = $8; Attrs.push_back(PAWI); } - ValueRefList::iterator I = $6->begin(), E = $6->end(); + ParamList::iterator I = $6->begin(), E = $6->end(); unsigned index = 1; for (; I != E; ++I, ++index) { const Type *Ty = I->Val->getType(); @@ -2665,7 +2665,7 @@ BBTerminatorInst : RET ResolvedVal { // Return with a result... // correctly! FunctionType::param_iterator I = Ty->param_begin(); FunctionType::param_iterator E = Ty->param_end(); - ValueRefList::iterator ArgI = $6->begin(), ArgE = $6->end(); + ParamList::iterator ArgI = $6->begin(), ArgE = $6->end(); for (; ArgI != ArgE && I != E; ++ArgI, ++I) { if (ArgI->Val->getType() != *I) @@ -2755,25 +2755,37 @@ PHIList : Types '[' ValueRef ',' ValueRef ']' { // Used for PHI nodes }; -ValueRefList : Types ValueRef OptParamAttrs { +ParamList : Types ValueRef OptParamAttrs { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*$1)->getDescription()); // Used for call and invoke instructions - $$ = new ValueRefList(); - ValueRefListEntry E; E.Attrs = $3; E.Val = getVal($1->get(), $2); + $$ = new ParamList(); + ParamListEntry E; E.Attrs = $3; E.Val = getVal($1->get(), $2); $$->push_back(E); delete $1; } - | ValueRefList ',' Types ValueRef OptParamAttrs { + | LABEL ValueRef OptParamAttrs { + // Labels are only valid in ASMs + $$ = new ParamList(); + ParamListEntry E; E.Attrs = $3; E.Val = getBBVal($2); + $$->push_back(E); + } + | ParamList ',' Types ValueRef OptParamAttrs { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*$3)->getDescription()); $$ = $1; - ValueRefListEntry E; E.Attrs = $5; E.Val = getVal($3->get(), $4); + ParamListEntry E; E.Attrs = $5; E.Val = getVal($3->get(), $4); $$->push_back(E); delete $3; CHECK_FOR_ERROR } - | /*empty*/ { $$ = new ValueRefList(); }; + | ParamList ',' LABEL ValueRef OptParamAttrs { + $$ = $1; + ParamListEntry E; E.Attrs = $5; E.Val = getBBVal($4); + $$->push_back(E); + CHECK_FOR_ERROR + } + | /*empty*/ { $$ = new ParamList(); }; IndexList // Used for gep instructions and constant expressions : /*empty*/ { $$ = new std::vector<Value*>(); } @@ -2919,7 +2931,7 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef { delete $2; // Free the list... CHECK_FOR_ERROR } - | OptTailCall OptCallingConv ResultTypes ValueRef '(' ValueRefList ')' + | OptTailCall OptCallingConv ResultTypes ValueRef '(' ParamList ')' OptFuncAttrs { // Handle the short syntax @@ -2935,7 +2947,7 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef { Attrs.push_back(PAWI); } unsigned index = 1; - ValueRefList::iterator I = $6->begin(), E = $6->end(); + ParamList::iterator I = $6->begin(), E = $6->end(); for (; I != E; ++I, ++index) { const Type *Ty = I->Val->getType(); if (Ty == Type::VoidTy) @@ -2980,7 +2992,7 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef { // FunctionType::param_iterator I = Ty->param_begin(); FunctionType::param_iterator E = Ty->param_end(); - ValueRefList::iterator ArgI = $6->begin(), ArgE = $6->end(); + ParamList::iterator ArgI = $6->begin(), ArgE = $6->end(); for (; ArgI != ArgE && I != E; ++ArgI, ++I) { if (ArgI->Val->getType() != *I) diff --git a/lib/Bitcode/Reader/BitcodeReader.cpp b/lib/Bitcode/Reader/BitcodeReader.cpp index 7278557..0bacf0f 100644 --- a/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/lib/Bitcode/Reader/BitcodeReader.cpp @@ -1506,7 +1506,10 @@ bool BitcodeReader::ParseFunctionBody(Function *F) { SmallVector<Value*, 16> Args; // Read the fixed params. for (unsigned i = 0, e = FTy->getNumParams(); i != e; ++i, ++OpNum) { - Args.push_back(getFnValueByID(Record[OpNum], FTy->getParamType(i))); + if (FTy->getParamType(i)->getTypeID()==Type::LabelTyID) + Args.push_back(getBasicBlock(Record[OpNum])); + else + Args.push_back(getFnValueByID(Record[OpNum], FTy->getParamType(i))); if (Args.back() == 0) return Error("Invalid CALL record"); } diff --git a/lib/CodeGen/AsmPrinter.cpp b/lib/CodeGen/AsmPrinter.cpp index e7c7448..3500d12 100644 --- a/lib/CodeGen/AsmPrinter.cpp +++ b/lib/CodeGen/AsmPrinter.cpp @@ -1188,13 +1188,18 @@ void AsmPrinter::printInlineAsm(const MachineInstr *MI) const { unsigned OpFlags = MI->getOperand(OpNo).getImmedValue(); ++OpNo; // Skip over the ID number. - AsmPrinter *AP = const_cast<AsmPrinter*>(this); - if ((OpFlags & 7) == 4 /*ADDR MODE*/) { - Error = AP->PrintAsmMemoryOperand(MI, OpNo, AsmPrinterVariant, - Modifier[0] ? Modifier : 0); - } else { - Error = AP->PrintAsmOperand(MI, OpNo, AsmPrinterVariant, - Modifier[0] ? Modifier : 0); + if (Modifier[0]=='l') // labels are target independent + printBasicBlockLabel(MI->getOperand(OpNo).getMachineBasicBlock(), + false, false); + else { + AsmPrinter *AP = const_cast<AsmPrinter*>(this); + if ((OpFlags & 7) == 4 /*ADDR MODE*/) { + Error = AP->PrintAsmMemoryOperand(MI, OpNo, AsmPrinterVariant, + Modifier[0] ? Modifier : 0); + } else { + Error = AP->PrintAsmOperand(MI, OpNo, AsmPrinterVariant, + Modifier[0] ? Modifier : 0); + } } } if (Error) { diff --git a/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp b/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp index c98c131..ec84b70 100644 --- a/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp +++ b/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp @@ -803,10 +803,13 @@ void ScheduleDAG::EmitNode(SDNode *Node, unsigned InstanceNo, if (ConstantSDNode *CS = dyn_cast<ConstantSDNode>(Node->getOperand(i))) { MI->addImmOperand(CS->getValue()); - } else { - GlobalAddressSDNode *GA = - cast<GlobalAddressSDNode>(Node->getOperand(i)); + } else if (GlobalAddressSDNode *GA = + dyn_cast<GlobalAddressSDNode>(Node->getOperand(i))) { MI->addGlobalAddressOperand(GA->getGlobal(), GA->getOffset()); + } else { + BasicBlockSDNode *BB = + cast<BasicBlockSDNode>(Node->getOperand(i)); + MI->addMachineBasicBlockOperand(BB->getBasicBlock()); } } break; diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp index 44d8188..5c2765b 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp @@ -3489,31 +3489,37 @@ void SelectionDAGLowering::visitInlineAsm(CallInst &I) { } // If this is an input or an indirect output, process the call argument. + // BasicBlocks are labels, currently appearing only in asm's. if (OpInfo.CallOperandVal) { - OpInfo.CallOperand = getValue(OpInfo.CallOperandVal); - const Type *OpTy = OpInfo.CallOperandVal->getType(); - // If this is an indirect operand, the operand is a pointer to the - // accessed type. - if (OpInfo.isIndirect) - OpTy = cast<PointerType>(OpTy)->getElementType(); - - // If OpTy is not a first-class value, it may be a struct/union that we - // can tile with integers. - if (!OpTy->isFirstClassType() && OpTy->isSized()) { - unsigned BitSize = TD->getTypeSizeInBits(OpTy); - switch (BitSize) { - default: break; - case 1: - case 8: - case 16: - case 32: - case 64: - OpTy = IntegerType::get(BitSize); - break; + if (isa<BasicBlock>(OpInfo.CallOperandVal)) + OpInfo.CallOperand = + DAG.getBasicBlock(FuncInfo.MBBMap[cast<BasicBlock>(OpInfo.CallOperandVal)]); + else { + OpInfo.CallOperand = getValue(OpInfo.CallOperandVal); + const Type *OpTy = OpInfo.CallOperandVal->getType(); + // If this is an indirect operand, the operand is a pointer to the + // accessed type. + if (OpInfo.isIndirect) + OpTy = cast<PointerType>(OpTy)->getElementType(); + + // If OpTy is not a first-class value, it may be a struct/union that we + // can tile with integers. + if (!OpTy->isFirstClassType() && OpTy->isSized()) { + unsigned BitSize = TD->getTypeSizeInBits(OpTy); + switch (BitSize) { + default: break; + case 1: + case 8: + case 16: + case 32: + case 64: + OpTy = IntegerType::get(BitSize); + break; + } } + + OpVT = TLI.getValueType(OpTy, true); } - - OpVT = TLI.getValueType(OpTy, true); } OpInfo.ConstraintVT = OpVT; diff --git a/lib/CodeGen/SelectionDAG/TargetLowering.cpp b/lib/CodeGen/SelectionDAG/TargetLowering.cpp index cffb03d..9309cf4 100644 --- a/lib/CodeGen/SelectionDAG/TargetLowering.cpp +++ b/lib/CodeGen/SelectionDAG/TargetLowering.cpp @@ -1396,10 +1396,15 @@ void TargetLowering::LowerAsmOperandForConstraint(SDOperand Op, SelectionDAG &DAG) { switch (ConstraintLetter) { default: break; + case 'X': // Allows any operand; labels (basic block) use this. + if (Op.getOpcode() == ISD::BasicBlock) { + Ops.push_back(Op); + return; + } + // fall through case 'i': // Simple Integer or Relocatable Constant case 'n': // Simple Integer - case 's': // Relocatable Constant - case 'X': { // Allows any operand. + case 's': { // Relocatable Constant // These operands are interested in values of the form (GV+C), where C may // be folded in as an offset of GV, or it may be explicitly added. Also, it // is possible and fine if either GV or C are missing. |