From 191dfb96ded746bc38586e36a61509b5bb9b00da Mon Sep 17 00:00:00 2001 From: Nuno Lopes Date: Fri, 3 Oct 2008 15:52:39 +0000 Subject: [PATCH] regenerate git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57009 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/AsmParser/llvmAsmParser.cpp.cvs | 678 ++++++++++++++++++------------------ lib/AsmParser/llvmAsmParser.h.cvs | 2 +- lib/AsmParser/llvmAsmParser.y.cvs | 4 + 3 files changed, 346 insertions(+), 338 deletions(-) diff --git a/lib/AsmParser/llvmAsmParser.cpp.cvs b/lib/AsmParser/llvmAsmParser.cpp.cvs index 04ea8268449..581cd7c0f67 100644 --- a/lib/AsmParser/llvmAsmParser.cpp.cvs +++ b/lib/AsmParser/llvmAsmParser.cpp.cvs @@ -1091,6 +1091,7 @@ static void ResolveTypeTo(std::string *Name, const Type *ToTy) { ((DerivedType*)I->second.get())->refineAbstractTypeTo(ToTy); CurModule.LateResolveTypes.erase(I); } + D.destroy(); } // setValueName - Set the specified value to the name given. The name may be @@ -1166,9 +1167,12 @@ ParseGlobalVariable(std::string *NameStr, GV->setConstant(isConstantGlobal); GV->setThreadLocal(IsThreadLocal); InsertValue(GV, CurModule.Values); + ID.destroy(); return GV; } + ID.destroy(); + // If this global has a name if (!Name.empty()) { // if the global we're parsing has an initializer (is a definition) and @@ -1371,7 +1375,7 @@ Module *llvm::RunVMAsmParser(llvm::MemoryBuffer *MB) { #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 970 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 974 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { llvm::Module *ModuleVal; llvm::Function *FunctionVal; @@ -1420,7 +1424,7 @@ typedef union YYSTYPE llvm::FCmpInst::Predicate FPredicate; } /* Line 187 of yacc.c. */ -#line 1424 "llvmAsmParser.tab.c" +#line 1428 "llvmAsmParser.tab.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -1433,7 +1437,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 1437 "llvmAsmParser.tab.c" +#line 1441 "llvmAsmParser.tab.c" #ifdef short # undef short @@ -1879,42 +1883,42 @@ static const yytype_int16 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, - 1136, 1137, 1137, 1137, 1137, 1137, 1137, 1138, 1138, 1138, - 1138, 1138, 1138, 1139, 1139, 1139, 1139, 1139, 1139, 1142, - 1142, 1143, 1143, 1144, 1144, 1145, 1145, 1146, 1146, 1150, - 1150, 1151, 1151, 1152, 1152, 1153, 1153, 1154, 1154, 1155, - 1155, 1156, 1156, 1157, 1158, 1163, 1164, 1164, 1164, 1164, - 1164, 1166, 1166, 1166, 1167, 1167, 1169, 1170, 1174, 1178, - 1183, 1189, 1189, 1191, 1192, 1197, 1203, 1204, 1205, 1206, - 1207, 1208, 1212, 1213, 1214, 1218, 1219, 1220, 1221, 1225, - 1226, 1227, 1231, 1232, 1233, 1234, 1235, 1239, 1240, 1241, - 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1257, 1258, 1259, - 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1270, 1271, 1276, - 1277, 1278, 1281, 1282, 1288, 1289, 1290, 1291, 1292, 1293, - 1294, 1295, 1296, 1297, 1300, 1301, 1307, 1308, 1315, 1316, - 1322, 1323, 1332, 1340, 1341, 1346, 1347, 1348, 1353, 1366, - 1366, 1366, 1366, 1366, 1366, 1366, 1369, 1373, 1377, 1384, - 1389, 1397, 1426, 1451, 1456, 1466, 1476, 1480, 1490, 1497, - 1506, 1513, 1518, 1523, 1530, 1531, 1538, 1545, 1553, 1559, - 1571, 1599, 1615, 1642, 1670, 1696, 1716, 1742, 1762, 1774, - 1781, 1847, 1857, 1867, 1873, 1883, 1889, 1899, 1905, 1911, - 1924, 1936, 1957, 1965, 1971, 1982, 1987, 1992, 1997, 2002, - 2008, 2014, 2020, 2028, 2039, 2043, 2051, 2051, 2054, 2054, - 2057, 2069, 2090, 2095, 2103, 2104, 2108, 2108, 2112, 2112, - 2115, 2118, 2142, 2154, 2153, 2165, 2164, 2174, 2173, 2184, - 2224, 2227, 2233, 2243, 2247, 2252, 2254, 2259, 2264, 2273, - 2283, 2294, 2298, 2307, 2316, 2321, 2470, 2470, 2472, 2481, - 2481, 2483, 2488, 2500, 2504, 2509, 2513, 2517, 2522, 2527, - 2531, 2535, 2539, 2543, 2547, 2551, 2573, 2595, 2601, 2614, - 2626, 2631, 2643, 2649, 2653, 2663, 2667, 2671, 2676, 2683, - 2683, 2689, 2698, 2703, 2708, 2712, 2721, 2730, 2743, 2752, - 2756, 2764, 2784, 2788, 2793, 2804, 2823, 2832, 2936, 2940, - 2947, 2958, 2971, 2980, 2993, 3004, 3014, 3025, 3033, 3043, - 3050, 3053, 3054, 3062, 3068, 3077, 3081, 3086, 3102, 3119, - 3131, 3143, 3157, 3171, 3183, 3204, 3211, 3217, 3223, 3229, - 3244, 3354, 3359, 3363, 3370, 3377, 3387, 3394, 3404, 3412, - 3426, 3443, 3457, 3472, 3487 + 0, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, + 1140, 1141, 1141, 1141, 1141, 1141, 1141, 1142, 1142, 1142, + 1142, 1142, 1142, 1143, 1143, 1143, 1143, 1143, 1143, 1146, + 1146, 1147, 1147, 1148, 1148, 1149, 1149, 1150, 1150, 1154, + 1154, 1155, 1155, 1156, 1156, 1157, 1157, 1158, 1158, 1159, + 1159, 1160, 1160, 1161, 1162, 1167, 1168, 1168, 1168, 1168, + 1168, 1170, 1170, 1170, 1171, 1171, 1173, 1174, 1178, 1182, + 1187, 1193, 1193, 1195, 1196, 1201, 1207, 1208, 1209, 1210, + 1211, 1212, 1216, 1217, 1218, 1222, 1223, 1224, 1225, 1229, + 1230, 1231, 1235, 1236, 1237, 1238, 1239, 1243, 1244, 1245, + 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1274, 1275, 1280, + 1281, 1282, 1285, 1286, 1292, 1293, 1294, 1295, 1296, 1297, + 1298, 1299, 1300, 1301, 1304, 1305, 1311, 1312, 1319, 1320, + 1326, 1327, 1336, 1344, 1345, 1350, 1351, 1352, 1357, 1370, + 1370, 1370, 1370, 1370, 1370, 1370, 1373, 1377, 1381, 1388, + 1393, 1401, 1430, 1455, 1460, 1470, 1480, 1484, 1494, 1501, + 1510, 1517, 1522, 1527, 1534, 1535, 1542, 1549, 1557, 1563, + 1575, 1603, 1619, 1646, 1674, 1700, 1720, 1746, 1766, 1778, + 1785, 1851, 1861, 1871, 1877, 1887, 1893, 1903, 1909, 1915, + 1928, 1940, 1961, 1969, 1975, 1986, 1991, 1996, 2001, 2006, + 2012, 2018, 2024, 2032, 2043, 2047, 2055, 2055, 2058, 2058, + 2061, 2073, 2094, 2099, 2107, 2108, 2112, 2112, 2116, 2116, + 2119, 2122, 2146, 2158, 2157, 2169, 2168, 2178, 2177, 2188, + 2228, 2231, 2237, 2247, 2251, 2256, 2258, 2263, 2268, 2277, + 2287, 2298, 2302, 2311, 2320, 2325, 2474, 2474, 2476, 2485, + 2485, 2487, 2492, 2504, 2508, 2513, 2517, 2521, 2526, 2531, + 2535, 2539, 2543, 2547, 2551, 2555, 2577, 2599, 2605, 2618, + 2630, 2635, 2647, 2653, 2657, 2667, 2671, 2675, 2680, 2687, + 2687, 2693, 2702, 2707, 2712, 2716, 2725, 2734, 2747, 2756, + 2760, 2768, 2788, 2792, 2797, 2808, 2827, 2836, 2940, 2944, + 2951, 2962, 2975, 2984, 2997, 3008, 3018, 3029, 3037, 3047, + 3054, 3057, 3058, 3066, 3072, 3081, 3085, 3090, 3106, 3123, + 3135, 3147, 3161, 3175, 3187, 3208, 3215, 3221, 3227, 3233, + 3248, 3358, 3363, 3367, 3374, 3381, 3391, 3398, 3408, 3416, + 3430, 3447, 3461, 3476, 3491 }; #endif @@ -3657,152 +3661,152 @@ yyreduce: switch (yyn) { case 29: -#line 1142 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1146 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_EQ; ;} break; case 30: -#line 1142 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1146 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_NE; ;} break; case 31: -#line 1143 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1147 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_SLT; ;} break; case 32: -#line 1143 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1147 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_SGT; ;} break; case 33: -#line 1144 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1148 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_SLE; ;} break; case 34: -#line 1144 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1148 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_SGE; ;} break; case 35: -#line 1145 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1149 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_ULT; ;} break; case 36: -#line 1145 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1149 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_UGT; ;} break; case 37: -#line 1146 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1150 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_ULE; ;} break; case 38: -#line 1146 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1150 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.IPredicate) = ICmpInst::ICMP_UGE; ;} break; case 39: -#line 1150 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_OEQ; ;} break; case 40: -#line 1150 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_ONE; ;} break; case 41: -#line 1151 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1155 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_OLT; ;} break; case 42: -#line 1151 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1155 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_OGT; ;} break; case 43: -#line 1152 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1156 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_OLE; ;} break; case 44: -#line 1152 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1156 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_OGE; ;} break; case 45: -#line 1153 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1157 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_ORD; ;} break; case 46: -#line 1153 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1157 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_UNO; ;} break; case 47: -#line 1154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1158 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_UEQ; ;} break; case 48: -#line 1154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1158 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_UNE; ;} break; case 49: -#line 1155 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1159 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_ULT; ;} break; case 50: -#line 1155 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1159 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_UGT; ;} break; case 51: -#line 1156 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1160 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_ULE; ;} break; case 52: -#line 1156 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1160 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_UGE; ;} break; case 53: -#line 1157 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1161 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_TRUE; ;} break; case 54: -#line 1158 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1162 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FPredicate) = FCmpInst::FCMP_FALSE; ;} break; case 65: -#line 1167 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1171 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.StrVal) = 0; ;} break; case 66: -#line 1169 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1173 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal)=(yyvsp[(3) - (4)].UInt64Val); ;} break; case 67: -#line 1170 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1174 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal)=0; ;} break; case 68: -#line 1174 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1178 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.StrVal) = (yyvsp[(1) - (2)].StrVal); CHECK_FOR_ERROR @@ -3810,7 +3814,7 @@ yyreduce: break; case 69: -#line 1178 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1182 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.StrVal) = 0; CHECK_FOR_ERROR @@ -3818,7 +3822,7 @@ yyreduce: break; case 70: -#line 1183 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1187 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = (yyvsp[(1) - (2)].UIntVal); CHECK_FOR_ERROR @@ -3826,7 +3830,7 @@ yyreduce: break; case 74: -#line 1192 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1196 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.StrVal) = 0; CHECK_FOR_ERROR @@ -3834,7 +3838,7 @@ yyreduce: break; case 75: -#line 1197 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1201 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.StrVal) = (yyvsp[(1) - (2)].StrVal); CHECK_FOR_ERROR @@ -3842,157 +3846,157 @@ yyreduce: break; case 76: -#line 1203 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1207 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::InternalLinkage; ;} break; case 77: -#line 1204 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1208 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::WeakLinkage; ;} break; case 78: -#line 1205 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1209 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;} break; case 79: -#line 1206 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1210 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::AppendingLinkage; ;} break; case 80: -#line 1207 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1211 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;} break; case 81: -#line 1208 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1212 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::CommonLinkage; ;} break; case 82: -#line 1212 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1216 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;} break; case 83: -#line 1213 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1217 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;} break; case 84: -#line 1214 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1218 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;} break; case 85: -#line 1218 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1222 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Visibility) = GlobalValue::DefaultVisibility; ;} break; case 86: -#line 1219 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1223 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Visibility) = GlobalValue::DefaultVisibility; ;} break; case 87: -#line 1220 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1224 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Visibility) = GlobalValue::HiddenVisibility; ;} break; case 88: -#line 1221 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1225 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Visibility) = GlobalValue::ProtectedVisibility; ;} break; case 89: -#line 1225 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1229 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;} break; case 90: -#line 1226 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1230 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;} break; case 91: -#line 1227 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1231 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;} break; case 92: -#line 1231 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1235 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;} break; case 93: -#line 1232 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1236 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::InternalLinkage; ;} break; case 94: -#line 1233 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1237 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;} break; case 95: -#line 1234 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1238 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::WeakLinkage; ;} break; case 96: -#line 1235 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1239 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;} break; case 97: -#line 1239 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1243 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;} break; case 98: -#line 1240 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1244 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::WeakLinkage; ;} break; case 99: -#line 1241 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1245 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Linkage) = GlobalValue::InternalLinkage; ;} break; case 100: -#line 1244 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1248 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = CallingConv::C; ;} break; case 101: -#line 1245 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1249 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = CallingConv::C; ;} break; case 102: -#line 1246 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1250 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = CallingConv::Fast; ;} break; case 103: -#line 1247 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1251 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = CallingConv::Cold; ;} break; case 104: -#line 1248 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1252 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = CallingConv::X86_StdCall; ;} break; case 105: -#line 1249 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1253 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = CallingConv::X86_FastCall; ;} break; case 106: -#line 1250 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1254 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((unsigned)(yyvsp[(2) - (2)].UInt64Val) != (yyvsp[(2) - (2)].UInt64Val)) GEN_ERROR("Calling conv too large"); @@ -4002,176 +4006,176 @@ yyreduce: break; case 107: -#line 1257 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1261 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::ZExt; ;} break; case 108: -#line 1258 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1262 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::ZExt; ;} break; case 109: -#line 1259 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1263 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::SExt; ;} break; case 110: -#line 1260 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1264 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::SExt; ;} break; case 111: -#line 1261 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1265 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::InReg; ;} break; case 112: -#line 1262 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1266 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::StructRet; ;} break; case 113: -#line 1263 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1267 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::NoAlias; ;} break; case 114: -#line 1264 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1268 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::ByVal; ;} break; case 115: -#line 1265 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1269 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::Nest; ;} break; case 116: -#line 1266 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1270 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::constructAlignmentFromInt((yyvsp[(2) - (2)].UInt64Val)); ;} break; case 117: -#line 1270 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1274 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::None; ;} break; case 118: -#line 1271 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1275 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = (yyvsp[(1) - (2)].Attributes) | (yyvsp[(2) - (2)].Attributes); ;} break; case 119: -#line 1276 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1280 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::InReg; ;} break; case 120: -#line 1277 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1281 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::ZExt; ;} break; case 121: -#line 1278 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1282 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::SExt; ;} break; case 122: -#line 1281 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1285 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::None; ;} break; case 123: -#line 1282 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1286 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = (yyvsp[(1) - (2)].Attributes) | (yyvsp[(2) - (2)].Attributes); ;} break; case 124: -#line 1288 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1292 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::NoReturn; ;} break; case 125: -#line 1289 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1293 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::NoUnwind; ;} break; case 126: -#line 1290 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1294 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::InReg; ;} break; case 127: -#line 1291 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1295 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::ZExt; ;} break; case 128: -#line 1292 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1296 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::SExt; ;} break; case 129: -#line 1293 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1297 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::ReadNone; ;} break; case 130: -#line 1294 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1298 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::ReadOnly; ;} break; case 131: -#line 1295 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1299 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::NoInline ;} break; case 132: -#line 1296 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1300 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::AlwaysInline ;} break; case 133: -#line 1297 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1301 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::OptimizeForSize ;} break; case 134: -#line 1300 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1304 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = Attribute::None; ;} break; case 135: -#line 1301 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1305 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.Attributes) = (yyvsp[(1) - (2)].Attributes) | (yyvsp[(2) - (2)].Attributes); ;} break; case 136: -#line 1307 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1311 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.StrVal) = 0; ;} break; case 137: -#line 1308 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1312 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.StrVal) = (yyvsp[(2) - (2)].StrVal); ;} break; case 138: -#line 1315 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1319 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = 0; ;} break; case 139: -#line 1316 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1320 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = (yyvsp[(2) - (2)].UInt64Val); if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal))) @@ -4181,12 +4185,12 @@ yyreduce: break; case 140: -#line 1322 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1326 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = 0; ;} break; case 141: -#line 1323 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1327 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.UIntVal) = (yyvsp[(3) - (3)].UInt64Val); if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal))) @@ -4196,7 +4200,7 @@ yyreduce: break; case 142: -#line 1332 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1336 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { for (unsigned i = 0, e = (yyvsp[(2) - (2)].StrVal)->length(); i != e; ++i) if ((*(yyvsp[(2) - (2)].StrVal))[i] == '"' || (*(yyvsp[(2) - (2)].StrVal))[i] == '\\') @@ -4207,27 +4211,27 @@ yyreduce: break; case 143: -#line 1340 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1344 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.StrVal) = 0; ;} break; case 144: -#line 1341 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1345 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.StrVal) = (yyvsp[(1) - (1)].StrVal); ;} break; case 145: -#line 1346 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1350 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" {;} break; case 146: -#line 1347 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1351 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" {;} break; case 147: -#line 1348 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1352 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV->setSection(*(yyvsp[(1) - (1)].StrVal)); delete (yyvsp[(1) - (1)].StrVal); @@ -4236,7 +4240,7 @@ yyreduce: break; case 148: -#line 1353 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1357 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((yyvsp[(2) - (2)].UInt64Val) != 0 && !isPowerOf2_32((yyvsp[(2) - (2)].UInt64Val))) GEN_ERROR("Alignment must be a power of two"); @@ -4246,7 +4250,7 @@ yyreduce: break; case 156: -#line 1369 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1373 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeVal) = new PATypeHolder(OpaqueType::get()); CHECK_FOR_ERROR @@ -4254,7 +4258,7 @@ yyreduce: break; case 157: -#line 1373 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1377 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeVal) = new PATypeHolder((yyvsp[(1) - (1)].PrimType)); CHECK_FOR_ERROR @@ -4262,7 +4266,7 @@ yyreduce: break; case 158: -#line 1377 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1381 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Pointer type? if (*(yyvsp[(1) - (3)].TypeVal) == Type::LabelTy) GEN_ERROR("Cannot form a pointer to a basic block"); @@ -4273,7 +4277,7 @@ yyreduce: break; case 159: -#line 1384 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1388 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Named types are also simple types... const Type* tmp = getTypeVal((yyvsp[(1) - (1)].ValIDVal)); CHECK_FOR_ERROR @@ -4282,7 +4286,7 @@ yyreduce: break; case 160: -#line 1389 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1393 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Type UpReference if ((yyvsp[(2) - (2)].UInt64Val) > (uint64_t)~0U) GEN_ERROR("Value out of range"); OpaqueType *OT = OpaqueType::get(); // Use temporary placeholder @@ -4294,7 +4298,7 @@ yyreduce: break; case 161: -#line 1397 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1401 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Allow but ignore attributes on function types; this permits auto-upgrade. // FIXME: remove in LLVM 3.0. @@ -4327,7 +4331,7 @@ yyreduce: break; case 162: -#line 1426 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1430 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Allow but ignore attributes on function types; this permits auto-upgrade. // FIXME: remove in LLVM 3.0. @@ -4355,7 +4359,7 @@ yyreduce: break; case 163: -#line 1451 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1455 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Sized array type? (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(ArrayType::get(*(yyvsp[(4) - (5)].TypeVal), (yyvsp[(2) - (5)].UInt64Val)))); delete (yyvsp[(4) - (5)].TypeVal); @@ -4364,7 +4368,7 @@ yyreduce: break; case 164: -#line 1456 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1460 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Vector type? const llvm::Type* ElemTy = (yyvsp[(4) - (5)].TypeVal)->get(); if ((unsigned)(yyvsp[(2) - (5)].UInt64Val) != (yyvsp[(2) - (5)].UInt64Val)) @@ -4378,7 +4382,7 @@ yyreduce: break; case 165: -#line 1466 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1470 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Structure type? std::vector Elements; for (std::list::iterator I = (yyvsp[(2) - (3)].TypeList)->begin(), @@ -4392,7 +4396,7 @@ yyreduce: break; case 166: -#line 1476 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1480 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Empty structure type? (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector())); CHECK_FOR_ERROR @@ -4400,7 +4404,7 @@ yyreduce: break; case 167: -#line 1480 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1484 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { std::vector Elements; for (std::list::iterator I = (yyvsp[(3) - (5)].TypeList)->begin(), @@ -4414,7 +4418,7 @@ yyreduce: break; case 168: -#line 1490 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1494 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Empty structure type? (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector(), true)); CHECK_FOR_ERROR @@ -4422,7 +4426,7 @@ yyreduce: break; case 169: -#line 1497 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1501 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Allow but ignore attributes on function types; this permits auto-upgrade. // FIXME: remove in LLVM 3.0. @@ -4432,7 +4436,7 @@ yyreduce: break; case 170: -#line 1506 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1510 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (1)].TypeVal))->getDescription()); @@ -4443,14 +4447,14 @@ yyreduce: break; case 171: -#line 1513 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1517 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeVal) = new PATypeHolder(Type::VoidTy); ;} break; case 172: -#line 1518 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1522 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeWithAttrsList) = new TypeWithAttrsList(); (yyval.TypeWithAttrsList)->push_back((yyvsp[(1) - (1)].TypeWithAttrs)); @@ -4459,7 +4463,7 @@ yyreduce: break; case 173: -#line 1523 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1527 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ((yyval.TypeWithAttrsList)=(yyvsp[(1) - (3)].TypeWithAttrsList))->push_back((yyvsp[(3) - (3)].TypeWithAttrs)); CHECK_FOR_ERROR @@ -4467,7 +4471,7 @@ yyreduce: break; case 175: -#line 1531 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1535 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeWithAttrsList)=(yyvsp[(1) - (3)].TypeWithAttrsList); TypeWithAttrs TWA; TWA.Attrs = Attribute::None; @@ -4478,7 +4482,7 @@ yyreduce: break; case 176: -#line 1538 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1542 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeWithAttrsList) = new TypeWithAttrsList; TypeWithAttrs TWA; TWA.Attrs = Attribute::None; @@ -4489,7 +4493,7 @@ yyreduce: break; case 177: -#line 1545 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1549 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeWithAttrsList) = new TypeWithAttrsList(); CHECK_FOR_ERROR @@ -4497,7 +4501,7 @@ yyreduce: break; case 178: -#line 1553 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1557 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TypeList) = new std::list(); (yyval.TypeList)->push_back(*(yyvsp[(1) - (1)].TypeVal)); @@ -4507,7 +4511,7 @@ yyreduce: break; case 179: -#line 1559 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1563 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ((yyval.TypeList)=(yyvsp[(1) - (3)].TypeList))->push_back(*(yyvsp[(3) - (3)].TypeVal)); delete (yyvsp[(3) - (3)].TypeVal); @@ -4516,7 +4520,7 @@ yyreduce: break; case 180: -#line 1571 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1575 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (4)].TypeVal))->getDescription()); @@ -4548,7 +4552,7 @@ yyreduce: break; case 181: -#line 1599 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1603 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription()); @@ -4568,7 +4572,7 @@ yyreduce: break; case 182: -#line 1615 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1619 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription()); @@ -4599,7 +4603,7 @@ yyreduce: break; case 183: -#line 1642 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1646 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (4)].TypeVal))->getDescription()); @@ -4631,7 +4635,7 @@ yyreduce: break; case 184: -#line 1670 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1674 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast((yyvsp[(1) - (4)].TypeVal)->get()); if (STy == 0) @@ -4661,7 +4665,7 @@ yyreduce: break; case 185: -#line 1696 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1700 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription()); @@ -4685,7 +4689,7 @@ yyreduce: break; case 186: -#line 1716 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1720 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = dyn_cast((yyvsp[(1) - (6)].TypeVal)->get()); if (STy == 0) @@ -4715,7 +4719,7 @@ yyreduce: break; case 187: -#line 1742 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1746 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (5)].TypeVal))->getDescription()); @@ -4739,7 +4743,7 @@ yyreduce: break; case 188: -#line 1762 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1766 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); @@ -4755,7 +4759,7 @@ yyreduce: break; case 189: -#line 1774 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1778 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); @@ -4766,7 +4770,7 @@ yyreduce: break; case 190: -#line 1781 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1785 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); @@ -4836,7 +4840,7 @@ yyreduce: break; case 191: -#line 1847 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1851 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); @@ -4850,7 +4854,7 @@ yyreduce: break; case 192: -#line 1857 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1861 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); @@ -4864,7 +4868,7 @@ yyreduce: break; case 193: -#line 1867 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1871 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // integral constants if (!ConstantInt::isValueValidForType((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].SInt64Val))) GEN_ERROR("Constant value doesn't fit in type"); @@ -4874,7 +4878,7 @@ yyreduce: break; case 194: -#line 1873 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1877 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // arbitrary precision integer constants uint32_t BitWidth = cast((yyvsp[(1) - (2)].PrimType))->getBitWidth(); if ((yyvsp[(2) - (2)].APIntVal)->getBitWidth() > BitWidth) { @@ -4888,7 +4892,7 @@ yyreduce: break; case 195: -#line 1883 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1887 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // integral constants if (!ConstantInt::isValueValidForType((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].UInt64Val))) GEN_ERROR("Constant value doesn't fit in type"); @@ -4898,7 +4902,7 @@ yyreduce: break; case 196: -#line 1889 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1893 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // arbitrary precision integer constants uint32_t BitWidth = cast((yyvsp[(1) - (2)].PrimType))->getBitWidth(); if ((yyvsp[(2) - (2)].APIntVal)->getBitWidth() > BitWidth) { @@ -4912,7 +4916,7 @@ yyreduce: break; case 197: -#line 1899 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1903 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants if (cast((yyvsp[(1) - (2)].PrimType))->getBitWidth() != 1) GEN_ERROR("Constant true must have type i1"); @@ -4922,7 +4926,7 @@ yyreduce: break; case 198: -#line 1905 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1909 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Boolean constants if (cast((yyvsp[(1) - (2)].PrimType))->getBitWidth() != 1) GEN_ERROR("Constant false must have type i1"); @@ -4932,7 +4936,7 @@ yyreduce: break; case 199: -#line 1911 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1915 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Floating point constants if (!ConstantFP::isValueValidForType((yyvsp[(1) - (2)].PrimType), *(yyvsp[(2) - (2)].FPVal))) GEN_ERROR("Floating point constant invalid for type"); @@ -4947,7 +4951,7 @@ yyreduce: break; case 200: -#line 1924 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1928 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(5) - (6)].TypeVal))->getDescription()); @@ -4963,7 +4967,7 @@ yyreduce: break; case 201: -#line 1936 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1940 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa((yyvsp[(3) - (5)].ConstVal)->getType())) GEN_ERROR("GetElementPtr requires a pointer operand"); @@ -4988,7 +4992,7 @@ yyreduce: break; case 202: -#line 1957 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1961 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((yyvsp[(3) - (8)].ConstVal)->getType() != Type::Int1Ty) GEN_ERROR("Select condition must be of boolean type"); @@ -5000,7 +5004,7 @@ yyreduce: break; case 203: -#line 1965 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1969 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((yyvsp[(3) - (6)].ConstVal)->getType() != (yyvsp[(5) - (6)].ConstVal)->getType()) GEN_ERROR("Binary operator types must match"); @@ -5010,7 +5014,7 @@ yyreduce: break; case 204: -#line 1971 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1975 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((yyvsp[(3) - (6)].ConstVal)->getType() != (yyvsp[(5) - (6)].ConstVal)->getType()) GEN_ERROR("Logical operator types must match"); @@ -5025,7 +5029,7 @@ yyreduce: break; case 205: -#line 1982 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1986 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType()) GEN_ERROR("icmp operand types must match"); @@ -5034,7 +5038,7 @@ yyreduce: break; case 206: -#line 1987 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1991 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType()) GEN_ERROR("fcmp operand types must match"); @@ -5043,7 +5047,7 @@ yyreduce: break; case 207: -#line 1992 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 1996 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType()) GEN_ERROR("vicmp operand types must match"); @@ -5052,7 +5056,7 @@ yyreduce: break; case 208: -#line 1997 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2001 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType()) GEN_ERROR("vfcmp operand types must match"); @@ -5061,7 +5065,7 @@ yyreduce: break; case 209: -#line 2002 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2006 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!ExtractElementInst::isValidOperands((yyvsp[(3) - (6)].ConstVal), (yyvsp[(5) - (6)].ConstVal))) GEN_ERROR("Invalid extractelement operands"); @@ -5071,7 +5075,7 @@ yyreduce: break; case 210: -#line 2008 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2012 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!InsertElementInst::isValidOperands((yyvsp[(3) - (8)].ConstVal), (yyvsp[(5) - (8)].ConstVal), (yyvsp[(7) - (8)].ConstVal))) GEN_ERROR("Invalid insertelement operands"); @@ -5081,7 +5085,7 @@ yyreduce: break; case 211: -#line 2014 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2018 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!ShuffleVectorInst::isValidOperands((yyvsp[(3) - (8)].ConstVal), (yyvsp[(5) - (8)].ConstVal), (yyvsp[(7) - (8)].ConstVal))) GEN_ERROR("Invalid shufflevector operands"); @@ -5091,7 +5095,7 @@ yyreduce: break; case 212: -#line 2020 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2024 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa((yyvsp[(3) - (5)].ConstVal)->getType()) && !isa((yyvsp[(3) - (5)].ConstVal)->getType())) GEN_ERROR("ExtractValue requires an aggregate operand"); @@ -5103,7 +5107,7 @@ yyreduce: break; case 213: -#line 2028 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2032 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa((yyvsp[(3) - (7)].ConstVal)->getType()) && !isa((yyvsp[(3) - (7)].ConstVal)->getType())) GEN_ERROR("InsertValue requires an aggregate operand"); @@ -5115,7 +5119,7 @@ yyreduce: break; case 214: -#line 2039 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2043 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ((yyval.ConstVector) = (yyvsp[(1) - (3)].ConstVector))->push_back((yyvsp[(3) - (3)].ConstVal)); CHECK_FOR_ERROR @@ -5123,7 +5127,7 @@ yyreduce: break; case 215: -#line 2043 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2047 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ConstVector) = new std::vector(); (yyval.ConstVector)->push_back((yyvsp[(1) - (1)].ConstVal)); @@ -5132,27 +5136,27 @@ yyreduce: break; case 216: -#line 2051 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2055 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = false; ;} break; case 217: -#line 2051 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2055 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = true; ;} break; case 218: -#line 2054 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2058 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = true; ;} break; case 219: -#line 2054 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2058 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = false; ;} break; case 220: -#line 2057 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2061 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const Type* VTy = (yyvsp[(1) - (2)].TypeVal)->get(); Value *V = getVal(VTy, (yyvsp[(2) - (2)].ValIDVal)); @@ -5168,7 +5172,7 @@ yyreduce: break; case 221: -#line 2069 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2073 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { Constant *Val = (yyvsp[(3) - (6)].ConstVal); const Type *DestTy = (yyvsp[(5) - (6)].TypeVal)->get(); @@ -5184,7 +5188,7 @@ yyreduce: break; case 222: -#line 2090 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2094 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule; CurModule.ModuleDone(); @@ -5193,7 +5197,7 @@ yyreduce: break; case 223: -#line 2095 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2099 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule; CurModule.ModuleDone(); @@ -5202,12 +5206,12 @@ yyreduce: break; case 226: -#line 2108 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2112 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.isDeclare = false; ;} break; case 227: -#line 2108 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2112 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.FunctionDone(); CHECK_FOR_ERROR @@ -5215,26 +5219,26 @@ yyreduce: break; case 228: -#line 2112 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2116 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.isDeclare = true; ;} break; case 229: -#line 2112 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2116 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ;} break; case 230: -#line 2115 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2119 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ;} break; case 231: -#line 2118 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2122 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (3)].TypeVal))->getDescription()); @@ -5262,7 +5266,7 @@ yyreduce: break; case 232: -#line 2142 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2146 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ResolveTypeTo((yyvsp[(1) - (3)].StrVal), (yyvsp[(3) - (3)].PrimType)); @@ -5277,7 +5281,7 @@ yyreduce: break; case 233: -#line 2154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2158 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { /* "Externally Visible" Linkage */ if ((yyvsp[(5) - (6)].ConstVal) == 0) @@ -5289,14 +5293,14 @@ yyreduce: break; case 234: -#line 2161 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2165 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; ;} break; case 235: -#line 2165 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2169 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if ((yyvsp[(6) - (7)].ConstVal) == 0) GEN_ERROR("Global value initializer is not a constant"); @@ -5306,14 +5310,14 @@ yyreduce: break; case 236: -#line 2170 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2174 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; ;} break; case 237: -#line 2174 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2178 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(6) - (7)].TypeVal))->getDescription()); @@ -5324,7 +5328,7 @@ yyreduce: break; case 238: -#line 2180 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2184 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurGV = 0; CHECK_FOR_ERROR @@ -5332,7 +5336,7 @@ yyreduce: break; case 239: -#line 2184 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2188 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { std::string Name; if ((yyvsp[(1) - (5)].StrVal)) { @@ -5376,21 +5380,21 @@ yyreduce: break; case 240: -#line 2224 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2228 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ;} break; case 241: -#line 2227 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2231 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ;} break; case 242: -#line 2233 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2237 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm(); if (AsmSoFar.empty()) @@ -5403,7 +5407,7 @@ yyreduce: break; case 243: -#line 2243 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2247 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setTargetTriple(*(yyvsp[(3) - (3)].StrVal)); delete (yyvsp[(3) - (3)].StrVal); @@ -5411,7 +5415,7 @@ yyreduce: break; case 244: -#line 2247 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2251 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->setDataLayout(*(yyvsp[(3) - (3)].StrVal)); delete (yyvsp[(3) - (3)].StrVal); @@ -5419,7 +5423,7 @@ yyreduce: break; case 246: -#line 2254 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2258 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(*(yyvsp[(3) - (3)].StrVal)); delete (yyvsp[(3) - (3)].StrVal); @@ -5428,7 +5432,7 @@ yyreduce: break; case 247: -#line 2259 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2263 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurModule.CurrentModule->addLibrary(*(yyvsp[(1) - (1)].StrVal)); delete (yyvsp[(1) - (1)].StrVal); @@ -5437,14 +5441,14 @@ yyreduce: break; case 248: -#line 2264 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2268 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR ;} break; case 249: -#line 2273 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2277 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (5)].TypeVal))->getDescription()); @@ -5458,7 +5462,7 @@ yyreduce: break; case 250: -#line 2283 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2287 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription()); @@ -5472,7 +5476,7 @@ yyreduce: break; case 251: -#line 2294 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2298 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ArgList) = (yyvsp[(1) - (1)].ArgList); CHECK_FOR_ERROR @@ -5480,7 +5484,7 @@ yyreduce: break; case 252: -#line 2298 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2302 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ArgList) = (yyvsp[(1) - (3)].ArgList); struct ArgListEntry E; @@ -5493,7 +5497,7 @@ yyreduce: break; case 253: -#line 2307 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2311 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ArgList) = new ArgListType; struct ArgListEntry E; @@ -5506,7 +5510,7 @@ yyreduce: break; case 254: -#line 2316 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2320 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ArgList) = 0; CHECK_FOR_ERROR @@ -5514,7 +5518,7 @@ yyreduce: break; case 255: -#line 2322 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2326 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { std::string FunctionName(*(yyvsp[(4) - (11)].StrVal)); delete (yyvsp[(4) - (11)].StrVal); // Free strdup'd memory! @@ -5665,7 +5669,7 @@ yyreduce: break; case 258: -#line 2472 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2476 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FunctionVal) = CurFun.CurrentFunction; @@ -5677,7 +5681,7 @@ yyreduce: break; case 261: -#line 2483 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2487 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FunctionVal) = (yyvsp[(1) - (2)].FunctionVal); CHECK_FOR_ERROR @@ -5685,7 +5689,7 @@ yyreduce: break; case 262: -#line 2488 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2492 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CurFun.CurrentFunction->setLinkage((yyvsp[(1) - (3)].Linkage)); CurFun.CurrentFunction->setVisibility((yyvsp[(2) - (3)].Visibility)); @@ -5696,7 +5700,7 @@ yyreduce: break; case 263: -#line 2500 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2504 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = false; CHECK_FOR_ERROR @@ -5704,7 +5708,7 @@ yyreduce: break; case 264: -#line 2504 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2508 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = true; CHECK_FOR_ERROR @@ -5712,7 +5716,7 @@ yyreduce: break; case 265: -#line 2509 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2513 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // A reference to a direct constant (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].SInt64Val)); CHECK_FOR_ERROR @@ -5720,7 +5724,7 @@ yyreduce: break; case 266: -#line 2513 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2517 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].UInt64Val)); CHECK_FOR_ERROR @@ -5728,7 +5732,7 @@ yyreduce: break; case 267: -#line 2517 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2521 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // arbitrary precision integer constants (yyval.ValIDVal) = ValID::create(*(yyvsp[(1) - (1)].APIntVal), true); delete (yyvsp[(1) - (1)].APIntVal); @@ -5737,7 +5741,7 @@ yyreduce: break; case 268: -#line 2522 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2526 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // arbitrary precision integer constants (yyval.ValIDVal) = ValID::create(*(yyvsp[(1) - (1)].APIntVal), false); delete (yyvsp[(1) - (1)].APIntVal); @@ -5746,7 +5750,7 @@ yyreduce: break; case 269: -#line 2527 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2531 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Perhaps it's an FP constant? (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].FPVal)); CHECK_FOR_ERROR @@ -5754,7 +5758,7 @@ yyreduce: break; case 270: -#line 2531 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2535 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValIDVal) = ValID::create(ConstantInt::getTrue()); CHECK_FOR_ERROR @@ -5762,7 +5766,7 @@ yyreduce: break; case 271: -#line 2535 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2539 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValIDVal) = ValID::create(ConstantInt::getFalse()); CHECK_FOR_ERROR @@ -5770,7 +5774,7 @@ yyreduce: break; case 272: -#line 2539 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2543 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValIDVal) = ValID::createNull(); CHECK_FOR_ERROR @@ -5778,7 +5782,7 @@ yyreduce: break; case 273: -#line 2543 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2547 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValIDVal) = ValID::createUndef(); CHECK_FOR_ERROR @@ -5786,7 +5790,7 @@ yyreduce: break; case 274: -#line 2547 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2551 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // A vector zero constant. (yyval.ValIDVal) = ValID::createZeroInit(); CHECK_FOR_ERROR @@ -5794,7 +5798,7 @@ yyreduce: break; case 275: -#line 2551 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2555 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized packed vector const Type *ETy = (*(yyvsp[(2) - (3)].ConstVector))[0]->getType(); unsigned NumElements = (yyvsp[(2) - (3)].ConstVector)->size(); @@ -5820,7 +5824,7 @@ yyreduce: break; case 276: -#line 2573 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2577 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Nonempty unsized arr const Type *ETy = (*(yyvsp[(2) - (3)].ConstVector))[0]->getType(); uint64_t NumElements = (yyvsp[(2) - (3)].ConstVector)->size(); @@ -5846,7 +5850,7 @@ yyreduce: break; case 277: -#line 2595 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2599 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Use undef instead of an array because it's inconvenient to determine // the element type at this point, there being no elements to examine. @@ -5856,7 +5860,7 @@ yyreduce: break; case 278: -#line 2601 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2605 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { uint64_t NumElements = (yyvsp[(2) - (2)].StrVal)->length(); const Type *ETy = Type::Int8Ty; @@ -5873,7 +5877,7 @@ yyreduce: break; case 279: -#line 2614 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2618 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { std::vector Elements((yyvsp[(2) - (3)].ConstVector)->size()); for (unsigned i = 0, e = (yyvsp[(2) - (3)].ConstVector)->size(); i != e; ++i) @@ -5889,7 +5893,7 @@ yyreduce: break; case 280: -#line 2626 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2630 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = StructType::get(std::vector()); (yyval.ValIDVal) = ValID::create(ConstantStruct::get(STy, std::vector())); @@ -5898,7 +5902,7 @@ yyreduce: break; case 281: -#line 2631 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2635 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { std::vector Elements((yyvsp[(3) - (5)].ConstVector)->size()); for (unsigned i = 0, e = (yyvsp[(3) - (5)].ConstVector)->size(); i != e; ++i) @@ -5914,7 +5918,7 @@ yyreduce: break; case 282: -#line 2643 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2647 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const StructType *STy = StructType::get(std::vector(), /*isPacked=*/true); @@ -5924,7 +5928,7 @@ yyreduce: break; case 283: -#line 2649 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2653 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].ConstVal)); CHECK_FOR_ERROR @@ -5932,7 +5936,7 @@ yyreduce: break; case 284: -#line 2653 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2657 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValIDVal) = ValID::createInlineAsm(*(yyvsp[(3) - (5)].StrVal), *(yyvsp[(5) - (5)].StrVal), (yyvsp[(2) - (5)].BoolVal)); delete (yyvsp[(3) - (5)].StrVal); @@ -5942,7 +5946,7 @@ yyreduce: break; case 285: -#line 2663 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2667 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it an integer reference...? (yyval.ValIDVal) = ValID::createLocalID((yyvsp[(1) - (1)].UIntVal)); CHECK_FOR_ERROR @@ -5950,7 +5954,7 @@ yyreduce: break; case 286: -#line 2667 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2671 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValIDVal) = ValID::createGlobalID((yyvsp[(1) - (1)].UIntVal)); CHECK_FOR_ERROR @@ -5958,7 +5962,7 @@ yyreduce: break; case 287: -#line 2671 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2675 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it a named reference...? (yyval.ValIDVal) = ValID::createLocalName(*(yyvsp[(1) - (1)].StrVal)); delete (yyvsp[(1) - (1)].StrVal); @@ -5967,7 +5971,7 @@ yyreduce: break; case 288: -#line 2676 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2680 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is it a named reference...? (yyval.ValIDVal) = ValID::createGlobalName(*(yyvsp[(1) - (1)].StrVal)); delete (yyvsp[(1) - (1)].StrVal); @@ -5976,7 +5980,7 @@ yyreduce: break; case 291: -#line 2689 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2693 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); @@ -5987,7 +5991,7 @@ yyreduce: break; case 292: -#line 2698 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2702 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValueList) = new std::vector(); (yyval.ValueList)->push_back((yyvsp[(1) - (1)].ValueVal)); @@ -5996,7 +6000,7 @@ yyreduce: break; case 293: -#line 2703 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2707 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { ((yyval.ValueList)=(yyvsp[(1) - (3)].ValueList))->push_back((yyvsp[(3) - (3)].ValueVal)); CHECK_FOR_ERROR @@ -6004,7 +6008,7 @@ yyreduce: break; case 294: -#line 2708 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2712 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.FunctionVal) = (yyvsp[(1) - (2)].FunctionVal); CHECK_FOR_ERROR @@ -6012,7 +6016,7 @@ yyreduce: break; case 295: -#line 2712 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2716 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Do not allow functions with 0 basic blocks (yyval.FunctionVal) = (yyvsp[(1) - (2)].FunctionVal); CHECK_FOR_ERROR @@ -6020,7 +6024,7 @@ yyreduce: break; case 296: -#line 2721 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2725 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { setValueName((yyvsp[(3) - (3)].TermInstVal), (yyvsp[(2) - (3)].StrVal)); CHECK_FOR_ERROR @@ -6032,7 +6036,7 @@ yyreduce: break; case 297: -#line 2730 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2734 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR int ValNum = InsertValue((yyvsp[(3) - (3)].TermInstVal)); @@ -6047,7 +6051,7 @@ yyreduce: break; case 298: -#line 2743 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2747 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (CastInst *CI1 = dyn_cast((yyvsp[(2) - (2)].InstVal))) if (CastInst *CI2 = dyn_cast(CI1->getOperand(0))) @@ -6060,7 +6064,7 @@ yyreduce: break; case 299: -#line 2752 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2756 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Empty space between instruction lists (yyval.BasicBlockVal) = defineBBVal(ValID::createLocalID(CurFun.NextValNum)); CHECK_FOR_ERROR @@ -6068,7 +6072,7 @@ yyreduce: break; case 300: -#line 2756 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2760 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Labelled (named) basic block (yyval.BasicBlockVal) = defineBBVal(ValID::createLocalName(*(yyvsp[(1) - (1)].StrVal))); delete (yyvsp[(1) - (1)].StrVal); @@ -6078,7 +6082,7 @@ yyreduce: break; case 301: -#line 2764 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2768 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with a result... ValueList &VL = *(yyvsp[(2) - (2)].ValueList); assert(!VL.empty() && "Invalid ret operands!"); @@ -6102,7 +6106,7 @@ yyreduce: break; case 302: -#line 2784 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2788 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Return with no result... (yyval.TermInstVal) = ReturnInst::Create(); CHECK_FOR_ERROR @@ -6110,7 +6114,7 @@ yyreduce: break; case 303: -#line 2788 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2792 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Unconditional Branch... BasicBlock* tmpBB = getBBVal((yyvsp[(3) - (3)].ValIDVal)); CHECK_FOR_ERROR @@ -6119,7 +6123,7 @@ yyreduce: break; case 304: -#line 2793 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2797 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (cast((yyvsp[(2) - (9)].PrimType))->getBitWidth() != 1) GEN_ERROR("Branch condition must have type i1"); @@ -6134,7 +6138,7 @@ yyreduce: break; case 305: -#line 2804 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2808 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { Value* tmpVal = getVal((yyvsp[(2) - (9)].PrimType), (yyvsp[(3) - (9)].ValIDVal)); CHECK_FOR_ERROR @@ -6157,7 +6161,7 @@ yyreduce: break; case 306: -#line 2823 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2827 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { Value* tmpVal = getVal((yyvsp[(2) - (8)].PrimType), (yyvsp[(3) - (8)].ValIDVal)); CHECK_FOR_ERROR @@ -6170,7 +6174,7 @@ yyreduce: break; case 307: -#line 2833 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2837 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Handle the short syntax @@ -6277,7 +6281,7 @@ yyreduce: break; case 308: -#line 2936 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2940 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TermInstVal) = new UnwindInst(); CHECK_FOR_ERROR @@ -6285,7 +6289,7 @@ yyreduce: break; case 309: -#line 2940 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2944 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.TermInstVal) = new UnreachableInst(); CHECK_FOR_ERROR @@ -6293,7 +6297,7 @@ yyreduce: break; case 310: -#line 2947 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2951 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.JumpTable) = (yyvsp[(1) - (6)].JumpTable); Constant *V = cast(getExistingVal((yyvsp[(2) - (6)].PrimType), (yyvsp[(3) - (6)].ValIDVal))); @@ -6308,7 +6312,7 @@ yyreduce: break; case 311: -#line 2958 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2962 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.JumpTable) = new std::vector >(); Constant *V = cast(getExistingVal((yyvsp[(1) - (5)].PrimType), (yyvsp[(2) - (5)].ValIDVal))); @@ -6324,7 +6328,7 @@ yyreduce: break; case 312: -#line 2971 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2975 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Is this definition named?? if so, assign the name... setValueName((yyvsp[(2) - (2)].InstVal), (yyvsp[(1) - (2)].StrVal)); @@ -6336,7 +6340,7 @@ yyreduce: break; case 313: -#line 2980 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2984 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { CHECK_FOR_ERROR int ValNum = InsertValue((yyvsp[(2) - (2)].InstVal)); @@ -6351,7 +6355,7 @@ yyreduce: break; case 314: -#line 2993 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 2997 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Used for PHI nodes if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (6)].TypeVal))->getDescription()); @@ -6366,7 +6370,7 @@ yyreduce: break; case 315: -#line 3004 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3008 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.PHIList) = (yyvsp[(1) - (7)].PHIList); Value* tmpVal = getVal((yyvsp[(1) - (7)].PHIList)->front().first->getType(), (yyvsp[(4) - (7)].ValIDVal)); @@ -6378,7 +6382,7 @@ yyreduce: break; case 316: -#line 3014 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3018 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // FIXME: Remove trailing OptAttributes in LLVM 3.0, it was a mistake in 2.0 if (!UpRefs.empty()) @@ -6393,7 +6397,7 @@ yyreduce: break; case 317: -#line 3025 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3029 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // FIXME: Remove trailing OptAttributes in LLVM 3.0, it was a mistake in 2.0 // Labels are only valid in ASMs @@ -6405,7 +6409,7 @@ yyreduce: break; case 318: -#line 3033 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3037 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // FIXME: Remove trailing OptAttributes in LLVM 3.0, it was a mistake in 2.0 if (!UpRefs.empty()) @@ -6419,7 +6423,7 @@ yyreduce: break; case 319: -#line 3043 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3047 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // FIXME: Remove trailing OptAttributes in LLVM 3.0, it was a mistake in 2.0 (yyval.ParamList) = (yyvsp[(1) - (6)].ParamList); @@ -6430,17 +6434,17 @@ yyreduce: break; case 320: -#line 3050 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3054 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ParamList) = new ParamList(); ;} break; case 321: -#line 3053 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3057 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValueList) = new std::vector(); ;} break; case 322: -#line 3054 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3058 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ValueList) = (yyvsp[(1) - (3)].ValueList); (yyval.ValueList)->push_back((yyvsp[(3) - (3)].ValueVal)); @@ -6449,7 +6453,7 @@ yyreduce: break; case 323: -#line 3062 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3066 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ConstantList) = new std::vector(); if ((unsigned)(yyvsp[(2) - (2)].UInt64Val) != (yyvsp[(2) - (2)].UInt64Val)) @@ -6459,7 +6463,7 @@ yyreduce: break; case 324: -#line 3068 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3072 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.ConstantList) = (yyvsp[(1) - (3)].ConstantList); if ((unsigned)(yyvsp[(3) - (3)].UInt64Val) != (yyvsp[(3) - (3)].UInt64Val)) @@ -6470,7 +6474,7 @@ yyreduce: break; case 325: -#line 3077 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3081 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = true; CHECK_FOR_ERROR @@ -6478,7 +6482,7 @@ yyreduce: break; case 326: -#line 3081 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3085 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = false; CHECK_FOR_ERROR @@ -6486,7 +6490,7 @@ yyreduce: break; case 327: -#line 3086 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3090 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (5)].TypeVal))->getDescription()); @@ -6506,7 +6510,7 @@ yyreduce: break; case 328: -#line 3102 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3106 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (5)].TypeVal))->getDescription()); @@ -6527,7 +6531,7 @@ yyreduce: break; case 329: -#line 3119 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3123 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription()); @@ -6543,7 +6547,7 @@ yyreduce: break; case 330: -#line 3131 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3135 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription()); @@ -6559,7 +6563,7 @@ yyreduce: break; case 331: -#line 3143 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3147 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription()); @@ -6577,7 +6581,7 @@ yyreduce: break; case 332: -#line 3157 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3161 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription()); @@ -6595,7 +6599,7 @@ yyreduce: break; case 333: -#line 3171 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3175 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(4) - (4)].TypeVal))->getDescription()); @@ -6611,7 +6615,7 @@ yyreduce: break; case 334: -#line 3183 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3187 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (isa((yyvsp[(2) - (6)].ValueVal)->getType())) { // vector select @@ -6636,7 +6640,7 @@ yyreduce: break; case 335: -#line 3204 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3208 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(4) - (4)].TypeVal))->getDescription()); @@ -6647,7 +6651,7 @@ yyreduce: break; case 336: -#line 3211 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3215 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!ExtractElementInst::isValidOperands((yyvsp[(2) - (4)].ValueVal), (yyvsp[(4) - (4)].ValueVal))) GEN_ERROR("Invalid extractelement operands"); @@ -6657,7 +6661,7 @@ yyreduce: break; case 337: -#line 3217 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3221 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!InsertElementInst::isValidOperands((yyvsp[(2) - (6)].ValueVal), (yyvsp[(4) - (6)].ValueVal), (yyvsp[(6) - (6)].ValueVal))) GEN_ERROR("Invalid insertelement operands"); @@ -6667,7 +6671,7 @@ yyreduce: break; case 338: -#line 3223 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3227 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!ShuffleVectorInst::isValidOperands((yyvsp[(2) - (6)].ValueVal), (yyvsp[(4) - (6)].ValueVal), (yyvsp[(6) - (6)].ValueVal))) GEN_ERROR("Invalid shufflevector operands"); @@ -6677,7 +6681,7 @@ yyreduce: break; case 339: -#line 3229 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3233 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { const Type *Ty = (yyvsp[(2) - (2)].PHIList)->front().first->getType(); if (!Ty->isFirstClassType()) @@ -6696,7 +6700,7 @@ yyreduce: break; case 340: -#line 3245 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3249 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { // Handle the short syntax @@ -6809,7 +6813,7 @@ yyreduce: break; case 341: -#line 3354 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3358 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.InstVal) = (yyvsp[(1) - (1)].InstVal); CHECK_FOR_ERROR @@ -6817,7 +6821,7 @@ yyreduce: break; case 342: -#line 3359 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3363 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = true; CHECK_FOR_ERROR @@ -6825,7 +6829,7 @@ yyreduce: break; case 343: -#line 3363 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3367 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { (yyval.BoolVal) = false; CHECK_FOR_ERROR @@ -6833,7 +6837,7 @@ yyreduce: break; case 344: -#line 3370 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3374 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (3)].TypeVal))->getDescription()); @@ -6844,7 +6848,7 @@ yyreduce: break; case 345: -#line 3377 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3381 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (6)].TypeVal))->getDescription()); @@ -6858,7 +6862,7 @@ yyreduce: break; case 346: -#line 3387 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3391 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (3)].TypeVal))->getDescription()); @@ -6869,7 +6873,7 @@ yyreduce: break; case 347: -#line 3394 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3398 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (6)].TypeVal))->getDescription()); @@ -6883,7 +6887,7 @@ yyreduce: break; case 348: -#line 3404 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3408 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!isa((yyvsp[(2) - (2)].ValueVal)->getType())) GEN_ERROR("Trying to free nonpointer type " + @@ -6894,7 +6898,7 @@ yyreduce: break; case 349: -#line 3412 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3416 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (5)].TypeVal))->getDescription()); @@ -6912,7 +6916,7 @@ yyreduce: break; case 350: -#line 3426 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3430 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(5) - (7)].TypeVal))->getDescription()); @@ -6933,7 +6937,7 @@ yyreduce: break; case 351: -#line 3443 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3447 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (5)].TypeVal))->getDescription()); @@ -6951,7 +6955,7 @@ yyreduce: break; case 352: -#line 3457 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3461 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (4)].TypeVal))->getDescription()); @@ -6970,7 +6974,7 @@ yyreduce: break; case 353: -#line 3472 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3476 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (4)].TypeVal))->getDescription()); @@ -6989,7 +6993,7 @@ yyreduce: break; case 354: -#line 3487 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3491 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { if (!UpRefs.empty()) GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (7)].TypeVal))->getDescription()); @@ -7011,7 +7015,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 7015 "llvmAsmParser.tab.c" +#line 7019 "llvmAsmParser.tab.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -7225,7 +7229,7 @@ yyreturn: } -#line 3506 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 3510 "/cvs/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 885cbeee5fe..30518ab559a 100644 --- a/lib/AsmParser/llvmAsmParser.h.cvs +++ b/lib/AsmParser/llvmAsmParser.h.cvs @@ -360,7 +360,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 970 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" +#line 974 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y" { llvm::Module *ModuleVal; llvm::Function *FunctionVal; diff --git a/lib/AsmParser/llvmAsmParser.y.cvs b/lib/AsmParser/llvmAsmParser.y.cvs index 1a8458409b4..608ed721f71 100644 --- a/lib/AsmParser/llvmAsmParser.y.cvs +++ b/lib/AsmParser/llvmAsmParser.y.cvs @@ -707,6 +707,7 @@ static void ResolveTypeTo(std::string *Name, const Type *ToTy) { ((DerivedType*)I->second.get())->refineAbstractTypeTo(ToTy); CurModule.LateResolveTypes.erase(I); } + D.destroy(); } // setValueName - Set the specified value to the name given. The name may be @@ -782,9 +783,12 @@ ParseGlobalVariable(std::string *NameStr, GV->setConstant(isConstantGlobal); GV->setThreadLocal(IsThreadLocal); InsertValue(GV, CurModule.Values); + ID.destroy(); return GV; } + ID.destroy(); + // If this global has a name if (!Name.empty()) { // if the global we're parsing has an initializer (is a definition) and -- 2.11.0