diff options
-rw-r--r-- | lib/AsmParser/llvmAsmParser.cpp.cvs | 678 | ||||
-rw-r--r-- | lib/AsmParser/llvmAsmParser.h.cvs | 2 | ||||
-rw-r--r-- | 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 04ea826844..581cd7c0f6 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<const Type*> Elements; for (std::list<llvm::PATypeHolder>::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<const Type*>())); 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<const Type*> Elements; for (std::list<llvm::PATypeHolder>::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<const Type*>(), 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<PATypeHolder>(); (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" |