aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/AsmParser/llvmAsmParser.cpp.cvs676
-rw-r--r--lib/AsmParser/llvmAsmParser.h.cvs2
-rw-r--r--lib/AsmParser/llvmAsmParser.y.cvs4
3 files changed, 343 insertions, 339 deletions
diff --git a/lib/AsmParser/llvmAsmParser.cpp.cvs b/lib/AsmParser/llvmAsmParser.cpp.cvs
index 7335011..eb6f6d7 100644
--- a/lib/AsmParser/llvmAsmParser.cpp.cvs
+++ b/lib/AsmParser/llvmAsmParser.cpp.cvs
@@ -691,8 +691,10 @@ static const Type *getTypeVal(const ValID &D, bool DoNotImprovise = false) {
}
std::map<ValID, PATypeHolder>::iterator I =CurModule.LateResolveTypes.find(D);
- if (I != CurModule.LateResolveTypes.end())
+ if (I != CurModule.LateResolveTypes.end()) {
+ D.destroy();
return I->second;
+ }
Type *Typ = OpaqueType::get();
CurModule.LateResolveTypes.insert(std::make_pair(D, Typ));
@@ -1379,7 +1381,7 @@ Module *llvm::RunVMAsmParser(llvm::MemoryBuffer *MB) {
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE
-#line 978 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 980 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
llvm::Module *ModuleVal;
llvm::Function *FunctionVal;
@@ -1428,7 +1430,7 @@ typedef union YYSTYPE
llvm::FCmpInst::Predicate FPredicate;
}
/* Line 187 of yacc.c. */
-#line 1432 "llvmAsmParser.tab.c"
+#line 1434 "llvmAsmParser.tab.c"
YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
@@ -1441,7 +1443,7 @@ typedef union YYSTYPE
/* Line 216 of yacc.c. */
-#line 1445 "llvmAsmParser.tab.c"
+#line 1447 "llvmAsmParser.tab.c"
#ifdef short
# undef short
@@ -1885,41 +1887,41 @@ static const yytype_int16 yyrhs[] =
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144,
- 1144, 1145, 1145, 1145, 1145, 1145, 1145, 1146, 1146, 1146,
- 1146, 1146, 1146, 1147, 1147, 1147, 1147, 1147, 1147, 1150,
- 1150, 1151, 1151, 1152, 1152, 1153, 1153, 1154, 1154, 1158,
- 1158, 1159, 1159, 1160, 1160, 1161, 1161, 1162, 1162, 1163,
- 1163, 1164, 1164, 1165, 1166, 1169, 1169, 1169, 1170, 1170,
- 1172, 1173, 1177, 1181, 1186, 1192, 1192, 1194, 1195, 1200,
- 1206, 1207, 1208, 1209, 1210, 1211, 1215, 1216, 1217, 1221,
- 1222, 1223, 1224, 1228, 1229, 1230, 1234, 1235, 1236, 1237,
- 1238, 1242, 1243, 1244, 1247, 1248, 1249, 1250, 1251, 1252,
- 1253, 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 1268,
- 1269, 1273, 1274, 1279, 1280, 1281, 1284, 1285, 1291, 1292,
- 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1303, 1304,
- 1310, 1311, 1318, 1319, 1325, 1326, 1335, 1343, 1344, 1349,
- 1350, 1351, 1356, 1369, 1369, 1369, 1369, 1369, 1369, 1369,
- 1372, 1376, 1380, 1387, 1392, 1400, 1435, 1466, 1471, 1481,
- 1491, 1495, 1505, 1512, 1521, 1528, 1533, 1538, 1545, 1546,
- 1553, 1560, 1568, 1574, 1586, 1614, 1630, 1657, 1685, 1711,
- 1731, 1757, 1777, 1789, 1796, 1862, 1872, 1882, 1893, 1906,
- 1917, 1931, 1938, 1945, 1963, 1975, 1996, 2004, 2010, 2021,
- 2026, 2031, 2036, 2041, 2047, 2053, 2059, 2067, 2078, 2082,
- 2090, 2090, 2093, 2093, 2096, 2108, 2129, 2134, 2142, 2143,
- 2147, 2147, 2151, 2151, 2154, 2157, 2181, 2193, 2192, 2204,
- 2203, 2213, 2212, 2223, 2263, 2266, 2272, 2282, 2286, 2291,
- 2293, 2298, 2303, 2312, 2322, 2333, 2337, 2346, 2355, 2360,
- 2509, 2509, 2511, 2520, 2520, 2522, 2527, 2539, 2543, 2548,
- 2552, 2556, 2561, 2566, 2570, 2574, 2578, 2582, 2586, 2590,
- 2612, 2634, 2640, 2653, 2665, 2670, 2682, 2688, 2692, 2702,
- 2706, 2710, 2715, 2722, 2722, 2728, 2737, 2742, 2747, 2751,
- 2760, 2769, 2782, 2791, 2795, 2803, 2823, 2827, 2832, 2843,
- 2862, 2871, 2975, 2979, 2986, 2997, 3010, 3019, 3032, 3043,
- 3053, 3064, 3072, 3082, 3089, 3092, 3093, 3101, 3107, 3116,
- 3120, 3125, 3141, 3158, 3170, 3182, 3196, 3210, 3222, 3243,
- 3250, 3256, 3262, 3268, 3283, 3393, 3398, 3402, 3409, 3416,
- 3426, 3433, 3443, 3451, 3465, 3482, 3496, 3511, 3526
+ 0, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
+ 1146, 1147, 1147, 1147, 1147, 1147, 1147, 1148, 1148, 1148,
+ 1148, 1148, 1148, 1149, 1149, 1149, 1149, 1149, 1149, 1152,
+ 1152, 1153, 1153, 1154, 1154, 1155, 1155, 1156, 1156, 1160,
+ 1160, 1161, 1161, 1162, 1162, 1163, 1163, 1164, 1164, 1165,
+ 1165, 1166, 1166, 1167, 1168, 1171, 1171, 1171, 1172, 1172,
+ 1174, 1175, 1179, 1183, 1188, 1194, 1194, 1196, 1197, 1202,
+ 1208, 1209, 1210, 1211, 1212, 1213, 1217, 1218, 1219, 1223,
+ 1224, 1225, 1226, 1230, 1231, 1232, 1236, 1237, 1238, 1239,
+ 1240, 1244, 1245, 1246, 1249, 1250, 1251, 1252, 1253, 1254,
+ 1255, 1262, 1263, 1264, 1265, 1266, 1267, 1268, 1269, 1270,
+ 1271, 1275, 1276, 1281, 1282, 1283, 1286, 1287, 1293, 1294,
+ 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 1305, 1306,
+ 1312, 1313, 1320, 1321, 1327, 1328, 1337, 1345, 1346, 1351,
+ 1352, 1353, 1358, 1371, 1371, 1371, 1371, 1371, 1371, 1371,
+ 1374, 1378, 1382, 1389, 1394, 1402, 1437, 1468, 1473, 1483,
+ 1493, 1497, 1507, 1514, 1523, 1530, 1535, 1540, 1547, 1548,
+ 1555, 1562, 1570, 1576, 1588, 1616, 1632, 1659, 1687, 1713,
+ 1733, 1759, 1779, 1791, 1798, 1864, 1874, 1884, 1895, 1908,
+ 1919, 1933, 1940, 1947, 1965, 1977, 1998, 2006, 2012, 2023,
+ 2028, 2033, 2038, 2043, 2049, 2055, 2061, 2069, 2080, 2084,
+ 2092, 2092, 2095, 2095, 2098, 2110, 2131, 2136, 2144, 2145,
+ 2149, 2149, 2153, 2153, 2156, 2159, 2183, 2195, 2194, 2206,
+ 2205, 2215, 2214, 2225, 2265, 2268, 2274, 2284, 2288, 2293,
+ 2295, 2300, 2305, 2314, 2324, 2335, 2339, 2348, 2357, 2362,
+ 2511, 2511, 2513, 2522, 2522, 2524, 2529, 2541, 2545, 2550,
+ 2554, 2558, 2563, 2568, 2572, 2576, 2580, 2584, 2588, 2592,
+ 2614, 2636, 2642, 2655, 2667, 2672, 2684, 2690, 2694, 2704,
+ 2708, 2712, 2717, 2724, 2724, 2730, 2739, 2744, 2749, 2753,
+ 2762, 2771, 2784, 2793, 2797, 2805, 2825, 2829, 2834, 2845,
+ 2864, 2873, 2977, 2981, 2988, 2999, 3012, 3021, 3034, 3045,
+ 3055, 3066, 3074, 3084, 3091, 3094, 3095, 3103, 3109, 3118,
+ 3122, 3127, 3143, 3160, 3172, 3184, 3198, 3212, 3224, 3245,
+ 3252, 3258, 3264, 3270, 3285, 3395, 3400, 3404, 3411, 3418,
+ 3428, 3435, 3445, 3453, 3467, 3484, 3498, 3513, 3528
};
#endif
@@ -3645,152 +3647,152 @@ yyreduce:
switch (yyn)
{
case 29:
-#line 1150 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1152 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_EQ; ;}
break;
case 30:
-#line 1150 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1152 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_NE; ;}
break;
case 31:
-#line 1151 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1153 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_SLT; ;}
break;
case 32:
-#line 1151 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1153 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_SGT; ;}
break;
case 33:
-#line 1152 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_SLE; ;}
break;
case 34:
-#line 1152 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_SGE; ;}
break;
case 35:
-#line 1153 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1155 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_ULT; ;}
break;
case 36:
-#line 1153 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1155 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_UGT; ;}
break;
case 37:
-#line 1154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1156 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_ULE; ;}
break;
case 38:
-#line 1154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1156 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.IPredicate) = ICmpInst::ICMP_UGE; ;}
break;
case 39:
-#line 1158 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1160 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OEQ; ;}
break;
case 40:
-#line 1158 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1160 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_ONE; ;}
break;
case 41:
-#line 1159 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1161 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OLT; ;}
break;
case 42:
-#line 1159 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1161 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OGT; ;}
break;
case 43:
-#line 1160 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1162 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OLE; ;}
break;
case 44:
-#line 1160 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1162 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_OGE; ;}
break;
case 45:
-#line 1161 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1163 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_ORD; ;}
break;
case 46:
-#line 1161 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1163 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_UNO; ;}
break;
case 47:
-#line 1162 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1164 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_UEQ; ;}
break;
case 48:
-#line 1162 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1164 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_UNE; ;}
break;
case 49:
-#line 1163 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1165 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_ULT; ;}
break;
case 50:
-#line 1163 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1165 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_UGT; ;}
break;
case 51:
-#line 1164 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1166 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_ULE; ;}
break;
case 52:
-#line 1164 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1166 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_UGE; ;}
break;
case 53:
-#line 1165 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1167 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_TRUE; ;}
break;
case 54:
-#line 1166 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1168 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.FPredicate) = FCmpInst::FCMP_FALSE; ;}
break;
case 59:
-#line 1170 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1172 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.StrVal) = 0; ;}
break;
case 60:
-#line 1172 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1174 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal)=(yyvsp[(3) - (4)].UInt64Val); ;}
break;
case 61:
-#line 1173 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1175 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal)=0; ;}
break;
case 62:
-#line 1177 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1179 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.StrVal) = (yyvsp[(1) - (2)].StrVal);
CHECK_FOR_ERROR
@@ -3798,7 +3800,7 @@ yyreduce:
break;
case 63:
-#line 1181 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1183 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.StrVal) = 0;
CHECK_FOR_ERROR
@@ -3806,7 +3808,7 @@ yyreduce:
break;
case 64:
-#line 1186 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1188 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.UIntVal) = (yyvsp[(1) - (2)].UIntVal);
CHECK_FOR_ERROR
@@ -3814,7 +3816,7 @@ yyreduce:
break;
case 68:
-#line 1195 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1197 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.StrVal) = 0;
CHECK_FOR_ERROR
@@ -3822,7 +3824,7 @@ yyreduce:
break;
case 69:
-#line 1200 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1202 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.StrVal) = (yyvsp[(1) - (2)].StrVal);
CHECK_FOR_ERROR
@@ -3830,157 +3832,157 @@ yyreduce:
break;
case 70:
-#line 1206 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1208 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
break;
case 71:
-#line 1207 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1209 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
break;
case 72:
-#line 1208 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1210 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}
break;
case 73:
-#line 1209 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1211 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::AppendingLinkage; ;}
break;
case 74:
-#line 1210 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1212 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}
break;
case 75:
-#line 1211 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1213 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::CommonLinkage; ;}
break;
case 76:
-#line 1215 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1217 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}
break;
case 77:
-#line 1216 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1218 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}
break;
case 78:
-#line 1217 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1219 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
break;
case 79:
-#line 1221 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1223 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Visibility) = GlobalValue::DefaultVisibility; ;}
break;
case 80:
-#line 1222 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1224 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Visibility) = GlobalValue::DefaultVisibility; ;}
break;
case 81:
-#line 1223 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1225 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Visibility) = GlobalValue::HiddenVisibility; ;}
break;
case 82:
-#line 1224 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1226 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Visibility) = GlobalValue::ProtectedVisibility; ;}
break;
case 83:
-#line 1228 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1230 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
break;
case 84:
-#line 1229 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1231 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}
break;
case 85:
-#line 1230 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1232 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}
break;
case 86:
-#line 1234 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1236 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
break;
case 87:
-#line 1235 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1237 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
break;
case 88:
-#line 1236 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1238 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}
break;
case 89:
-#line 1237 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1239 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
break;
case 90:
-#line 1238 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1240 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}
break;
case 91:
-#line 1242 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1244 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
break;
case 92:
-#line 1243 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1245 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
break;
case 93:
-#line 1244 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1246 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
break;
case 94:
-#line 1247 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1249 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal) = CallingConv::C; ;}
break;
case 95:
-#line 1248 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1250 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal) = CallingConv::C; ;}
break;
case 96:
-#line 1249 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1251 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal) = CallingConv::Fast; ;}
break;
case 97:
-#line 1250 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1252 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal) = CallingConv::Cold; ;}
break;
case 98:
-#line 1251 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1253 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal) = CallingConv::X86_StdCall; ;}
break;
case 99:
-#line 1252 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1254 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal) = CallingConv::X86_FastCall; ;}
break;
case 100:
-#line 1253 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1255 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if ((unsigned)(yyvsp[(2) - (2)].UInt64Val) != (yyvsp[(2) - (2)].UInt64Val))
GEN_ERROR("Calling conv too large");
@@ -3990,176 +3992,176 @@ yyreduce:
break;
case 101:
-#line 1260 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1262 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::ZExt; ;}
break;
case 102:
-#line 1261 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1263 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::ZExt; ;}
break;
case 103:
-#line 1262 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1264 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::SExt; ;}
break;
case 104:
-#line 1263 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1265 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::SExt; ;}
break;
case 105:
-#line 1264 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1266 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::InReg; ;}
break;
case 106:
-#line 1265 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1267 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::StructRet; ;}
break;
case 107:
-#line 1266 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1268 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::NoAlias; ;}
break;
case 108:
-#line 1267 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1269 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::ByVal; ;}
break;
case 109:
-#line 1268 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1270 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::Nest; ;}
break;
case 110:
-#line 1269 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1271 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) =
Attribute::constructAlignmentFromInt((yyvsp[(2) - (2)].UInt64Val)); ;}
break;
case 111:
-#line 1273 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1275 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::None; ;}
break;
case 112:
-#line 1274 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1276 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.Attributes) = (yyvsp[(1) - (2)].Attributes) | (yyvsp[(2) - (2)].Attributes);
;}
break;
case 113:
-#line 1279 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1281 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::InReg; ;}
break;
case 114:
-#line 1280 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1282 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::ZExt; ;}
break;
case 115:
-#line 1281 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1283 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::SExt; ;}
break;
case 116:
-#line 1284 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1286 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::None; ;}
break;
case 117:
-#line 1285 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1287 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.Attributes) = (yyvsp[(1) - (2)].Attributes) | (yyvsp[(2) - (2)].Attributes);
;}
break;
case 118:
-#line 1291 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1293 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::NoReturn; ;}
break;
case 119:
-#line 1292 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1294 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::NoUnwind; ;}
break;
case 120:
-#line 1293 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1295 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::InReg; ;}
break;
case 121:
-#line 1294 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1296 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::ZExt; ;}
break;
case 122:
-#line 1295 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1297 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::SExt; ;}
break;
case 123:
-#line 1296 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1298 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::ReadNone; ;}
break;
case 124:
-#line 1297 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1299 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::ReadOnly; ;}
break;
case 125:
-#line 1298 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1300 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::NoInline; ;}
break;
case 126:
-#line 1299 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1301 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::AlwaysInline; ;}
break;
case 127:
-#line 1300 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1302 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::OptimizeForSize; ;}
break;
case 128:
-#line 1303 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1305 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.Attributes) = Attribute::None; ;}
break;
case 129:
-#line 1304 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1306 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.Attributes) = (yyvsp[(1) - (2)].Attributes) | (yyvsp[(2) - (2)].Attributes);
;}
break;
case 130:
-#line 1310 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1312 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.StrVal) = 0; ;}
break;
case 131:
-#line 1311 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1313 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.StrVal) = (yyvsp[(2) - (2)].StrVal);
;}
break;
case 132:
-#line 1318 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1320 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal) = 0; ;}
break;
case 133:
-#line 1319 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1321 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.UIntVal) = (yyvsp[(2) - (2)].UInt64Val);
if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
@@ -4169,12 +4171,12 @@ yyreduce:
break;
case 134:
-#line 1325 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1327 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.UIntVal) = 0; ;}
break;
case 135:
-#line 1326 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1328 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.UIntVal) = (yyvsp[(3) - (3)].UInt64Val);
if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
@@ -4184,7 +4186,7 @@ yyreduce:
break;
case 136:
-#line 1335 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1337 "/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] == '\\')
@@ -4195,27 +4197,27 @@ yyreduce:
break;
case 137:
-#line 1343 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1345 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.StrVal) = 0; ;}
break;
case 138:
-#line 1344 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1346 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.StrVal) = (yyvsp[(1) - (1)].StrVal); ;}
break;
case 139:
-#line 1349 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1351 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{;}
break;
case 140:
-#line 1350 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1352 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{;}
break;
case 141:
-#line 1351 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1353 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurGV->setSection(*(yyvsp[(1) - (1)].StrVal));
delete (yyvsp[(1) - (1)].StrVal);
@@ -4224,7 +4226,7 @@ yyreduce:
break;
case 142:
-#line 1356 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1358 "/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");
@@ -4234,7 +4236,7 @@ yyreduce:
break;
case 150:
-#line 1372 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1374 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TypeVal) = new PATypeHolder(OpaqueType::get());
CHECK_FOR_ERROR
@@ -4242,7 +4244,7 @@ yyreduce:
break;
case 151:
-#line 1376 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1378 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TypeVal) = new PATypeHolder((yyvsp[(1) - (1)].PrimType));
CHECK_FOR_ERROR
@@ -4250,7 +4252,7 @@ yyreduce:
break;
case 152:
-#line 1380 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1382 "/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");
@@ -4261,7 +4263,7 @@ yyreduce:
break;
case 153:
-#line 1387 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1389 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Named types are also simple types...
const Type* tmp = getTypeVal((yyvsp[(1) - (1)].ValIDVal));
CHECK_FOR_ERROR
@@ -4270,7 +4272,7 @@ yyreduce:
break;
case 154:
-#line 1392 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1394 "/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
@@ -4282,7 +4284,7 @@ yyreduce:
break;
case 155:
-#line 1400 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1402 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
// Allow but ignore attributes on function types; this permits auto-upgrade.
// FIXME: remove in LLVM 3.0.
@@ -4321,7 +4323,7 @@ yyreduce:
break;
case 156:
-#line 1435 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1437 "/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 +4357,7 @@ yyreduce:
break;
case 157:
-#line 1466 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1468 "/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 +4366,7 @@ yyreduce:
break;
case 158:
-#line 1471 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1473 "/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 +4380,7 @@ yyreduce:
break;
case 159:
-#line 1481 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1483 "/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 +4394,7 @@ yyreduce:
break;
case 160:
-#line 1491 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1493 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Empty structure type?
(yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>()));
CHECK_FOR_ERROR
@@ -4400,7 +4402,7 @@ yyreduce:
break;
case 161:
-#line 1495 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1497 "/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 +4416,7 @@ yyreduce:
break;
case 162:
-#line 1505 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1507 "/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 +4424,7 @@ yyreduce:
break;
case 163:
-#line 1512 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1514 "/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 +4434,7 @@ yyreduce:
break;
case 164:
-#line 1521 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1523 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (1)].TypeVal))->getDescription());
@@ -4443,14 +4445,14 @@ yyreduce:
break;
case 165:
-#line 1528 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1530 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TypeVal) = new PATypeHolder(Type::VoidTy);
;}
break;
case 166:
-#line 1533 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1535 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TypeWithAttrsList) = new TypeWithAttrsList();
(yyval.TypeWithAttrsList)->push_back((yyvsp[(1) - (1)].TypeWithAttrs));
@@ -4459,7 +4461,7 @@ yyreduce:
break;
case 167:
-#line 1538 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1540 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
((yyval.TypeWithAttrsList)=(yyvsp[(1) - (3)].TypeWithAttrsList))->push_back((yyvsp[(3) - (3)].TypeWithAttrs));
CHECK_FOR_ERROR
@@ -4467,7 +4469,7 @@ yyreduce:
break;
case 169:
-#line 1546 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1548 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TypeWithAttrsList)=(yyvsp[(1) - (3)].TypeWithAttrsList);
TypeWithAttrs TWA; TWA.Attrs = Attribute::None;
@@ -4478,7 +4480,7 @@ yyreduce:
break;
case 170:
-#line 1553 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1555 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TypeWithAttrsList) = new TypeWithAttrsList;
TypeWithAttrs TWA; TWA.Attrs = Attribute::None;
@@ -4489,7 +4491,7 @@ yyreduce:
break;
case 171:
-#line 1560 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1562 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TypeWithAttrsList) = new TypeWithAttrsList();
CHECK_FOR_ERROR
@@ -4497,7 +4499,7 @@ yyreduce:
break;
case 172:
-#line 1568 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1570 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TypeList) = new std::list<PATypeHolder>();
(yyval.TypeList)->push_back(*(yyvsp[(1) - (1)].TypeVal));
@@ -4507,7 +4509,7 @@ yyreduce:
break;
case 173:
-#line 1574 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1576 "/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 +4518,7 @@ yyreduce:
break;
case 174:
-#line 1586 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1588 "/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 +4550,7 @@ yyreduce:
break;
case 175:
-#line 1614 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1616 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription());
@@ -4568,7 +4570,7 @@ yyreduce:
break;
case 176:
-#line 1630 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1632 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription());
@@ -4599,7 +4601,7 @@ yyreduce:
break;
case 177:
-#line 1657 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1659 "/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 +4633,7 @@ yyreduce:
break;
case 178:
-#line 1685 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1687 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
const StructType *STy = dyn_cast<StructType>((yyvsp[(1) - (4)].TypeVal)->get());
if (STy == 0)
@@ -4661,7 +4663,7 @@ yyreduce:
break;
case 179:
-#line 1711 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1713 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription());
@@ -4685,7 +4687,7 @@ yyreduce:
break;
case 180:
-#line 1731 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1733 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
const StructType *STy = dyn_cast<StructType>((yyvsp[(1) - (6)].TypeVal)->get());
if (STy == 0)
@@ -4715,7 +4717,7 @@ yyreduce:
break;
case 181:
-#line 1757 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1759 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (5)].TypeVal))->getDescription());
@@ -4739,7 +4741,7 @@ yyreduce:
break;
case 182:
-#line 1777 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1779 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
@@ -4755,7 +4757,7 @@ yyreduce:
break;
case 183:
-#line 1789 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1791 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
@@ -4766,7 +4768,7 @@ yyreduce:
break;
case 184:
-#line 1796 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1798 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
@@ -4836,7 +4838,7 @@ yyreduce:
break;
case 185:
-#line 1862 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1864 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
@@ -4850,7 +4852,7 @@ yyreduce:
break;
case 186:
-#line 1872 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1874 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
@@ -4864,7 +4866,7 @@ yyreduce:
break;
case 187:
-#line 1882 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1884 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // integral constants
if (IntegerType *IT = dyn_cast<IntegerType>((yyvsp[(1) - (2)].TypeVal)->get())) {
if (!ConstantInt::isValueValidForType(IT, (yyvsp[(2) - (2)].SInt64Val)))
@@ -4879,7 +4881,7 @@ yyreduce:
break;
case 188:
-#line 1893 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1895 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // arbitrary precision integer constants
if (IntegerType *IT = dyn_cast<IntegerType>((yyvsp[(1) - (2)].TypeVal)->get())) {
if ((yyvsp[(2) - (2)].APIntVal)->getBitWidth() > IT->getBitWidth())
@@ -4896,7 +4898,7 @@ yyreduce:
break;
case 189:
-#line 1906 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1908 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // integral constants
if (IntegerType *IT = dyn_cast<IntegerType>((yyvsp[(1) - (2)].TypeVal)->get())) {
if (!ConstantInt::isValueValidForType(IT, (yyvsp[(2) - (2)].UInt64Val)))
@@ -4911,7 +4913,7 @@ yyreduce:
break;
case 190:
-#line 1917 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1919 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // arbitrary precision integer constants
if (IntegerType *IT = dyn_cast<IntegerType>((yyvsp[(1) - (2)].TypeVal)->get())) {
if ((yyvsp[(2) - (2)].APIntVal)->getBitWidth() > IT->getBitWidth())
@@ -4929,7 +4931,7 @@ yyreduce:
break;
case 191:
-#line 1931 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1933 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Boolean constants
if ((yyvsp[(1) - (2)].TypeVal)->get() != Type::Int1Ty)
GEN_ERROR("Constant true must have type i1");
@@ -4940,7 +4942,7 @@ yyreduce:
break;
case 192:
-#line 1938 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1940 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Boolean constants
if ((yyvsp[(1) - (2)].TypeVal)->get() != Type::Int1Ty)
GEN_ERROR("Constant false must have type i1");
@@ -4951,7 +4953,7 @@ yyreduce:
break;
case 193:
-#line 1945 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1947 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Floating point constants
if (!ConstantFP::isValueValidForType((yyvsp[(1) - (2)].TypeVal)->get(), *(yyvsp[(2) - (2)].FPVal)))
GEN_ERROR("Floating point constant invalid for type");
@@ -4971,7 +4973,7 @@ yyreduce:
break;
case 194:
-#line 1963 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1965 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(5) - (6)].TypeVal))->getDescription());
@@ -4987,7 +4989,7 @@ yyreduce:
break;
case 195:
-#line 1975 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1977 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!isa<PointerType>((yyvsp[(3) - (5)].ConstVal)->getType()))
GEN_ERROR("GetElementPtr requires a pointer operand");
@@ -5012,7 +5014,7 @@ yyreduce:
break;
case 196:
-#line 1996 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1998 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if ((yyvsp[(3) - (8)].ConstVal)->getType() != Type::Int1Ty)
GEN_ERROR("Select condition must be of boolean type");
@@ -5024,7 +5026,7 @@ yyreduce:
break;
case 197:
-#line 2004 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2006 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if ((yyvsp[(3) - (6)].ConstVal)->getType() != (yyvsp[(5) - (6)].ConstVal)->getType())
GEN_ERROR("Binary operator types must match");
@@ -5034,7 +5036,7 @@ yyreduce:
break;
case 198:
-#line 2010 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2012 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if ((yyvsp[(3) - (6)].ConstVal)->getType() != (yyvsp[(5) - (6)].ConstVal)->getType())
GEN_ERROR("Logical operator types must match");
@@ -5049,7 +5051,7 @@ yyreduce:
break;
case 199:
-#line 2021 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2023 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType())
GEN_ERROR("icmp operand types must match");
@@ -5058,7 +5060,7 @@ yyreduce:
break;
case 200:
-#line 2026 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2028 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType())
GEN_ERROR("fcmp operand types must match");
@@ -5067,7 +5069,7 @@ yyreduce:
break;
case 201:
-#line 2031 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2033 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType())
GEN_ERROR("vicmp operand types must match");
@@ -5076,7 +5078,7 @@ yyreduce:
break;
case 202:
-#line 2036 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2038 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType())
GEN_ERROR("vfcmp operand types must match");
@@ -5085,7 +5087,7 @@ yyreduce:
break;
case 203:
-#line 2041 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2043 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!ExtractElementInst::isValidOperands((yyvsp[(3) - (6)].ConstVal), (yyvsp[(5) - (6)].ConstVal)))
GEN_ERROR("Invalid extractelement operands");
@@ -5095,7 +5097,7 @@ yyreduce:
break;
case 204:
-#line 2047 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2049 "/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");
@@ -5105,7 +5107,7 @@ yyreduce:
break;
case 205:
-#line 2053 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2055 "/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");
@@ -5115,7 +5117,7 @@ yyreduce:
break;
case 206:
-#line 2059 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2061 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!isa<StructType>((yyvsp[(3) - (5)].ConstVal)->getType()) && !isa<ArrayType>((yyvsp[(3) - (5)].ConstVal)->getType()))
GEN_ERROR("ExtractValue requires an aggregate operand");
@@ -5127,7 +5129,7 @@ yyreduce:
break;
case 207:
-#line 2067 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2069 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!isa<StructType>((yyvsp[(3) - (7)].ConstVal)->getType()) && !isa<ArrayType>((yyvsp[(3) - (7)].ConstVal)->getType()))
GEN_ERROR("InsertValue requires an aggregate operand");
@@ -5139,7 +5141,7 @@ yyreduce:
break;
case 208:
-#line 2078 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2080 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
((yyval.ConstVector) = (yyvsp[(1) - (3)].ConstVector))->push_back((yyvsp[(3) - (3)].ConstVal));
CHECK_FOR_ERROR
@@ -5147,7 +5149,7 @@ yyreduce:
break;
case 209:
-#line 2082 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2084 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ConstVector) = new std::vector<Constant*>();
(yyval.ConstVector)->push_back((yyvsp[(1) - (1)].ConstVal));
@@ -5156,27 +5158,27 @@ yyreduce:
break;
case 210:
-#line 2090 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2092 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.BoolVal) = false; ;}
break;
case 211:
-#line 2090 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2092 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.BoolVal) = true; ;}
break;
case 212:
-#line 2093 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2095 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.BoolVal) = true; ;}
break;
case 213:
-#line 2093 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2095 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.BoolVal) = false; ;}
break;
case 214:
-#line 2096 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2098 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
const Type* VTy = (yyvsp[(1) - (2)].TypeVal)->get();
Value *V = getVal(VTy, (yyvsp[(2) - (2)].ValIDVal));
@@ -5192,7 +5194,7 @@ yyreduce:
break;
case 215:
-#line 2108 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2110 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
Constant *Val = (yyvsp[(3) - (6)].ConstVal);
const Type *DestTy = (yyvsp[(5) - (6)].TypeVal)->get();
@@ -5208,7 +5210,7 @@ yyreduce:
break;
case 216:
-#line 2129 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2131 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;
CurModule.ModuleDone();
@@ -5217,7 +5219,7 @@ yyreduce:
break;
case 217:
-#line 2134 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2136 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;
CurModule.ModuleDone();
@@ -5226,12 +5228,12 @@ yyreduce:
break;
case 220:
-#line 2147 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2149 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ CurFun.isDeclare = false; ;}
break;
case 221:
-#line 2147 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2149 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurFun.FunctionDone();
CHECK_FOR_ERROR
@@ -5239,26 +5241,26 @@ yyreduce:
break;
case 222:
-#line 2151 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2153 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ CurFun.isDeclare = true; ;}
break;
case 223:
-#line 2151 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2153 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CHECK_FOR_ERROR
;}
break;
case 224:
-#line 2154 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2156 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CHECK_FOR_ERROR
;}
break;
case 225:
-#line 2157 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2159 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (3)].TypeVal))->getDescription());
@@ -5286,7 +5288,7 @@ yyreduce:
break;
case 226:
-#line 2181 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2183 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
ResolveTypeTo((yyvsp[(1) - (3)].StrVal), (yyvsp[(3) - (3)].PrimType));
@@ -5301,7 +5303,7 @@ yyreduce:
break;
case 227:
-#line 2193 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2195 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
/* "Externally Visible" Linkage */
if ((yyvsp[(5) - (6)].ConstVal) == 0)
@@ -5313,14 +5315,14 @@ yyreduce:
break;
case 228:
-#line 2200 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2202 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurGV = 0;
;}
break;
case 229:
-#line 2204 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2206 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if ((yyvsp[(6) - (7)].ConstVal) == 0)
GEN_ERROR("Global value initializer is not a constant");
@@ -5330,14 +5332,14 @@ yyreduce:
break;
case 230:
-#line 2209 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2211 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurGV = 0;
;}
break;
case 231:
-#line 2213 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2215 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(6) - (7)].TypeVal))->getDescription());
@@ -5348,7 +5350,7 @@ yyreduce:
break;
case 232:
-#line 2219 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2221 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurGV = 0;
CHECK_FOR_ERROR
@@ -5356,7 +5358,7 @@ yyreduce:
break;
case 233:
-#line 2223 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2225 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
std::string Name;
if ((yyvsp[(1) - (5)].StrVal)) {
@@ -5400,21 +5402,21 @@ yyreduce:
break;
case 234:
-#line 2263 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2265 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CHECK_FOR_ERROR
;}
break;
case 235:
-#line 2266 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2268 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CHECK_FOR_ERROR
;}
break;
case 236:
-#line 2272 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2274 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm();
if (AsmSoFar.empty())
@@ -5427,7 +5429,7 @@ yyreduce:
break;
case 237:
-#line 2282 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2284 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurModule.CurrentModule->setTargetTriple(*(yyvsp[(3) - (3)].StrVal));
delete (yyvsp[(3) - (3)].StrVal);
@@ -5435,7 +5437,7 @@ yyreduce:
break;
case 238:
-#line 2286 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2288 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurModule.CurrentModule->setDataLayout(*(yyvsp[(3) - (3)].StrVal));
delete (yyvsp[(3) - (3)].StrVal);
@@ -5443,7 +5445,7 @@ yyreduce:
break;
case 240:
-#line 2293 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2295 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurModule.CurrentModule->addLibrary(*(yyvsp[(3) - (3)].StrVal));
delete (yyvsp[(3) - (3)].StrVal);
@@ -5452,7 +5454,7 @@ yyreduce:
break;
case 241:
-#line 2298 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2300 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurModule.CurrentModule->addLibrary(*(yyvsp[(1) - (1)].StrVal));
delete (yyvsp[(1) - (1)].StrVal);
@@ -5461,14 +5463,14 @@ yyreduce:
break;
case 242:
-#line 2303 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2305 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CHECK_FOR_ERROR
;}
break;
case 243:
-#line 2312 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2314 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (5)].TypeVal))->getDescription());
@@ -5482,7 +5484,7 @@ yyreduce:
break;
case 244:
-#line 2322 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2324 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription());
@@ -5496,7 +5498,7 @@ yyreduce:
break;
case 245:
-#line 2333 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2335 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ArgList) = (yyvsp[(1) - (1)].ArgList);
CHECK_FOR_ERROR
@@ -5504,7 +5506,7 @@ yyreduce:
break;
case 246:
-#line 2337 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2339 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ArgList) = (yyvsp[(1) - (3)].ArgList);
struct ArgListEntry E;
@@ -5517,7 +5519,7 @@ yyreduce:
break;
case 247:
-#line 2346 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2348 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ArgList) = new ArgListType;
struct ArgListEntry E;
@@ -5530,7 +5532,7 @@ yyreduce:
break;
case 248:
-#line 2355 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2357 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ArgList) = 0;
CHECK_FOR_ERROR
@@ -5538,7 +5540,7 @@ yyreduce:
break;
case 249:
-#line 2361 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2363 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
std::string FunctionName(*(yyvsp[(4) - (11)].StrVal));
delete (yyvsp[(4) - (11)].StrVal); // Free strdup'd memory!
@@ -5689,7 +5691,7 @@ yyreduce:
break;
case 252:
-#line 2511 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2513 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.FunctionVal) = CurFun.CurrentFunction;
@@ -5701,7 +5703,7 @@ yyreduce:
break;
case 255:
-#line 2522 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2524 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.FunctionVal) = (yyvsp[(1) - (2)].FunctionVal);
CHECK_FOR_ERROR
@@ -5709,7 +5711,7 @@ yyreduce:
break;
case 256:
-#line 2527 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2529 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CurFun.CurrentFunction->setLinkage((yyvsp[(1) - (3)].Linkage));
CurFun.CurrentFunction->setVisibility((yyvsp[(2) - (3)].Visibility));
@@ -5720,7 +5722,7 @@ yyreduce:
break;
case 257:
-#line 2539 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2541 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.BoolVal) = false;
CHECK_FOR_ERROR
@@ -5728,7 +5730,7 @@ yyreduce:
break;
case 258:
-#line 2543 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2545 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.BoolVal) = true;
CHECK_FOR_ERROR
@@ -5736,7 +5738,7 @@ yyreduce:
break;
case 259:
-#line 2548 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2550 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // A reference to a direct constant
(yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].SInt64Val));
CHECK_FOR_ERROR
@@ -5744,7 +5746,7 @@ yyreduce:
break;
case 260:
-#line 2552 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2554 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].UInt64Val));
CHECK_FOR_ERROR
@@ -5752,7 +5754,7 @@ yyreduce:
break;
case 261:
-#line 2556 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2558 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // arbitrary precision integer constants
(yyval.ValIDVal) = ValID::create(*(yyvsp[(1) - (1)].APIntVal), true);
delete (yyvsp[(1) - (1)].APIntVal);
@@ -5761,7 +5763,7 @@ yyreduce:
break;
case 262:
-#line 2561 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2563 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // arbitrary precision integer constants
(yyval.ValIDVal) = ValID::create(*(yyvsp[(1) - (1)].APIntVal), false);
delete (yyvsp[(1) - (1)].APIntVal);
@@ -5770,7 +5772,7 @@ yyreduce:
break;
case 263:
-#line 2566 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2568 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Perhaps it's an FP constant?
(yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].FPVal));
CHECK_FOR_ERROR
@@ -5778,7 +5780,7 @@ yyreduce:
break;
case 264:
-#line 2570 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2572 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ValIDVal) = ValID::create(ConstantInt::getTrue());
CHECK_FOR_ERROR
@@ -5786,7 +5788,7 @@ yyreduce:
break;
case 265:
-#line 2574 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2576 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ValIDVal) = ValID::create(ConstantInt::getFalse());
CHECK_FOR_ERROR
@@ -5794,7 +5796,7 @@ yyreduce:
break;
case 266:
-#line 2578 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2580 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ValIDVal) = ValID::createNull();
CHECK_FOR_ERROR
@@ -5802,7 +5804,7 @@ yyreduce:
break;
case 267:
-#line 2582 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2584 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ValIDVal) = ValID::createUndef();
CHECK_FOR_ERROR
@@ -5810,7 +5812,7 @@ yyreduce:
break;
case 268:
-#line 2586 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2588 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // A vector zero constant.
(yyval.ValIDVal) = ValID::createZeroInit();
CHECK_FOR_ERROR
@@ -5818,7 +5820,7 @@ yyreduce:
break;
case 269:
-#line 2590 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2592 "/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();
@@ -5844,7 +5846,7 @@ yyreduce:
break;
case 270:
-#line 2612 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2614 "/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();
@@ -5870,7 +5872,7 @@ yyreduce:
break;
case 271:
-#line 2634 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2636 "/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.
@@ -5880,7 +5882,7 @@ yyreduce:
break;
case 272:
-#line 2640 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2642 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
uint64_t NumElements = (yyvsp[(2) - (2)].StrVal)->length();
const Type *ETy = Type::Int8Ty;
@@ -5897,7 +5899,7 @@ yyreduce:
break;
case 273:
-#line 2653 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2655 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
std::vector<const Type*> Elements((yyvsp[(2) - (3)].ConstVector)->size());
for (unsigned i = 0, e = (yyvsp[(2) - (3)].ConstVector)->size(); i != e; ++i)
@@ -5913,7 +5915,7 @@ yyreduce:
break;
case 274:
-#line 2665 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2667 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
const StructType *STy = StructType::get(std::vector<const Type*>());
(yyval.ValIDVal) = ValID::create(ConstantStruct::get(STy, std::vector<Constant*>()));
@@ -5922,7 +5924,7 @@ yyreduce:
break;
case 275:
-#line 2670 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2672 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
std::vector<const Type*> Elements((yyvsp[(3) - (5)].ConstVector)->size());
for (unsigned i = 0, e = (yyvsp[(3) - (5)].ConstVector)->size(); i != e; ++i)
@@ -5938,7 +5940,7 @@ yyreduce:
break;
case 276:
-#line 2682 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2684 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
const StructType *STy = StructType::get(std::vector<const Type*>(),
/*isPacked=*/true);
@@ -5948,7 +5950,7 @@ yyreduce:
break;
case 277:
-#line 2688 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2690 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].ConstVal));
CHECK_FOR_ERROR
@@ -5956,7 +5958,7 @@ yyreduce:
break;
case 278:
-#line 2692 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2694 "/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);
@@ -5966,7 +5968,7 @@ yyreduce:
break;
case 279:
-#line 2702 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2704 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Is it an integer reference...?
(yyval.ValIDVal) = ValID::createLocalID((yyvsp[(1) - (1)].UIntVal));
CHECK_FOR_ERROR
@@ -5974,7 +5976,7 @@ yyreduce:
break;
case 280:
-#line 2706 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2708 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ValIDVal) = ValID::createGlobalID((yyvsp[(1) - (1)].UIntVal));
CHECK_FOR_ERROR
@@ -5982,7 +5984,7 @@ yyreduce:
break;
case 281:
-#line 2710 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2712 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Is it a named reference...?
(yyval.ValIDVal) = ValID::createLocalName(*(yyvsp[(1) - (1)].StrVal));
delete (yyvsp[(1) - (1)].StrVal);
@@ -5991,7 +5993,7 @@ yyreduce:
break;
case 282:
-#line 2715 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2717 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Is it a named reference...?
(yyval.ValIDVal) = ValID::createGlobalName(*(yyvsp[(1) - (1)].StrVal));
delete (yyvsp[(1) - (1)].StrVal);
@@ -6000,7 +6002,7 @@ yyreduce:
break;
case 285:
-#line 2728 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2730 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription());
@@ -6011,7 +6013,7 @@ yyreduce:
break;
case 286:
-#line 2737 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2739 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ValueList) = new std::vector<Value *>();
(yyval.ValueList)->push_back((yyvsp[(1) - (1)].ValueVal));
@@ -6020,7 +6022,7 @@ yyreduce:
break;
case 287:
-#line 2742 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2744 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
((yyval.ValueList)=(yyvsp[(1) - (3)].ValueList))->push_back((yyvsp[(3) - (3)].ValueVal));
CHECK_FOR_ERROR
@@ -6028,7 +6030,7 @@ yyreduce:
break;
case 288:
-#line 2747 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2749 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.FunctionVal) = (yyvsp[(1) - (2)].FunctionVal);
CHECK_FOR_ERROR
@@ -6036,7 +6038,7 @@ yyreduce:
break;
case 289:
-#line 2751 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2753 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Do not allow functions with 0 basic blocks
(yyval.FunctionVal) = (yyvsp[(1) - (2)].FunctionVal);
CHECK_FOR_ERROR
@@ -6044,7 +6046,7 @@ yyreduce:
break;
case 290:
-#line 2760 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2762 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
setValueName((yyvsp[(3) - (3)].TermInstVal), (yyvsp[(2) - (3)].StrVal));
CHECK_FOR_ERROR
@@ -6056,7 +6058,7 @@ yyreduce:
break;
case 291:
-#line 2769 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2771 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CHECK_FOR_ERROR
int ValNum = InsertValue((yyvsp[(3) - (3)].TermInstVal));
@@ -6071,7 +6073,7 @@ yyreduce:
break;
case 292:
-#line 2782 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2784 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (CastInst *CI1 = dyn_cast<CastInst>((yyvsp[(2) - (2)].InstVal)))
if (CastInst *CI2 = dyn_cast<CastInst>(CI1->getOperand(0)))
@@ -6084,7 +6086,7 @@ yyreduce:
break;
case 293:
-#line 2791 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2793 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Empty space between instruction lists
(yyval.BasicBlockVal) = defineBBVal(ValID::createLocalID(CurFun.NextValNum));
CHECK_FOR_ERROR
@@ -6092,7 +6094,7 @@ yyreduce:
break;
case 294:
-#line 2795 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2797 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Labelled (named) basic block
(yyval.BasicBlockVal) = defineBBVal(ValID::createLocalName(*(yyvsp[(1) - (1)].StrVal)));
delete (yyvsp[(1) - (1)].StrVal);
@@ -6102,7 +6104,7 @@ yyreduce:
break;
case 295:
-#line 2803 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2805 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Return with a result...
ValueList &VL = *(yyvsp[(2) - (2)].ValueList);
assert(!VL.empty() && "Invalid ret operands!");
@@ -6126,7 +6128,7 @@ yyreduce:
break;
case 296:
-#line 2823 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2825 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Return with no result...
(yyval.TermInstVal) = ReturnInst::Create();
CHECK_FOR_ERROR
@@ -6134,7 +6136,7 @@ yyreduce:
break;
case 297:
-#line 2827 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2829 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Unconditional Branch...
BasicBlock* tmpBB = getBBVal((yyvsp[(3) - (3)].ValIDVal));
CHECK_FOR_ERROR
@@ -6143,7 +6145,7 @@ yyreduce:
break;
case 298:
-#line 2832 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2834 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (cast<IntegerType>((yyvsp[(2) - (9)].PrimType))->getBitWidth() != 1)
GEN_ERROR("Branch condition must have type i1");
@@ -6158,7 +6160,7 @@ yyreduce:
break;
case 299:
-#line 2843 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2845 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
Value* tmpVal = getVal((yyvsp[(2) - (9)].PrimType), (yyvsp[(3) - (9)].ValIDVal));
CHECK_FOR_ERROR
@@ -6181,7 +6183,7 @@ yyreduce:
break;
case 300:
-#line 2862 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2864 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
Value* tmpVal = getVal((yyvsp[(2) - (8)].PrimType), (yyvsp[(3) - (8)].ValIDVal));
CHECK_FOR_ERROR
@@ -6194,7 +6196,7 @@ yyreduce:
break;
case 301:
-#line 2872 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2874 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
// Handle the short syntax
@@ -6301,7 +6303,7 @@ yyreduce:
break;
case 302:
-#line 2975 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2977 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TermInstVal) = new UnwindInst();
CHECK_FOR_ERROR
@@ -6309,7 +6311,7 @@ yyreduce:
break;
case 303:
-#line 2979 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2981 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.TermInstVal) = new UnreachableInst();
CHECK_FOR_ERROR
@@ -6317,7 +6319,7 @@ yyreduce:
break;
case 304:
-#line 2986 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2988 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.JumpTable) = (yyvsp[(1) - (6)].JumpTable);
Constant *V = cast<Constant>(getExistingVal((yyvsp[(2) - (6)].PrimType), (yyvsp[(3) - (6)].ValIDVal)));
@@ -6332,7 +6334,7 @@ yyreduce:
break;
case 305:
-#line 2997 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2999 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.JumpTable) = new std::vector<std::pair<Constant*, BasicBlock*> >();
Constant *V = cast<Constant>(getExistingVal((yyvsp[(1) - (5)].PrimType), (yyvsp[(2) - (5)].ValIDVal)));
@@ -6348,7 +6350,7 @@ yyreduce:
break;
case 306:
-#line 3010 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3012 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
// Is this definition named?? if so, assign the name...
setValueName((yyvsp[(2) - (2)].InstVal), (yyvsp[(1) - (2)].StrVal));
@@ -6360,7 +6362,7 @@ yyreduce:
break;
case 307:
-#line 3019 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3021 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
CHECK_FOR_ERROR
int ValNum = InsertValue((yyvsp[(2) - (2)].InstVal));
@@ -6375,7 +6377,7 @@ yyreduce:
break;
case 308:
-#line 3032 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3034 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ // Used for PHI nodes
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (6)].TypeVal))->getDescription());
@@ -6390,7 +6392,7 @@ yyreduce:
break;
case 309:
-#line 3043 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3045 "/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));
@@ -6402,7 +6404,7 @@ yyreduce:
break;
case 310:
-#line 3053 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3055 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
// FIXME: Remove trailing OptAttributes in LLVM 3.0, it was a mistake in 2.0
if (!UpRefs.empty())
@@ -6417,7 +6419,7 @@ yyreduce:
break;
case 311:
-#line 3064 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3066 "/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
@@ -6429,7 +6431,7 @@ yyreduce:
break;
case 312:
-#line 3072 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3074 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
// FIXME: Remove trailing OptAttributes in LLVM 3.0, it was a mistake in 2.0
if (!UpRefs.empty())
@@ -6443,7 +6445,7 @@ yyreduce:
break;
case 313:
-#line 3082 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3084 "/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);
@@ -6454,17 +6456,17 @@ yyreduce:
break;
case 314:
-#line 3089 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3091 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.ParamList) = new ParamList(); ;}
break;
case 315:
-#line 3092 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3094 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{ (yyval.ValueList) = new std::vector<Value*>(); ;}
break;
case 316:
-#line 3093 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3095 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ValueList) = (yyvsp[(1) - (3)].ValueList);
(yyval.ValueList)->push_back((yyvsp[(3) - (3)].ValueVal));
@@ -6473,7 +6475,7 @@ yyreduce:
break;
case 317:
-#line 3101 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3103 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ConstantList) = new std::vector<unsigned>();
if ((unsigned)(yyvsp[(2) - (2)].UInt64Val) != (yyvsp[(2) - (2)].UInt64Val))
@@ -6483,7 +6485,7 @@ yyreduce:
break;
case 318:
-#line 3107 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3109 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.ConstantList) = (yyvsp[(1) - (3)].ConstantList);
if ((unsigned)(yyvsp[(3) - (3)].UInt64Val) != (yyvsp[(3) - (3)].UInt64Val))
@@ -6494,7 +6496,7 @@ yyreduce:
break;
case 319:
-#line 3116 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3118 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.BoolVal) = true;
CHECK_FOR_ERROR
@@ -6502,7 +6504,7 @@ yyreduce:
break;
case 320:
-#line 3120 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3122 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.BoolVal) = false;
CHECK_FOR_ERROR
@@ -6510,7 +6512,7 @@ yyreduce:
break;
case 321:
-#line 3125 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3127 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (5)].TypeVal))->getDescription());
@@ -6530,7 +6532,7 @@ yyreduce:
break;
case 322:
-#line 3141 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3143 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (5)].TypeVal))->getDescription());
@@ -6551,7 +6553,7 @@ yyreduce:
break;
case 323:
-#line 3158 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3160 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription());
@@ -6567,7 +6569,7 @@ yyreduce:
break;
case 324:
-#line 3170 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3172 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription());
@@ -6583,7 +6585,7 @@ yyreduce:
break;
case 325:
-#line 3182 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3184 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription());
@@ -6601,7 +6603,7 @@ yyreduce:
break;
case 326:
-#line 3196 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3198 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription());
@@ -6619,7 +6621,7 @@ yyreduce:
break;
case 327:
-#line 3210 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3212 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(4) - (4)].TypeVal))->getDescription());
@@ -6635,7 +6637,7 @@ yyreduce:
break;
case 328:
-#line 3222 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3224 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (isa<VectorType>((yyvsp[(2) - (6)].ValueVal)->getType())) {
// vector select
@@ -6660,7 +6662,7 @@ yyreduce:
break;
case 329:
-#line 3243 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3245 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(4) - (4)].TypeVal))->getDescription());
@@ -6671,7 +6673,7 @@ yyreduce:
break;
case 330:
-#line 3250 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3252 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!ExtractElementInst::isValidOperands((yyvsp[(2) - (4)].ValueVal), (yyvsp[(4) - (4)].ValueVal)))
GEN_ERROR("Invalid extractelement operands");
@@ -6681,7 +6683,7 @@ yyreduce:
break;
case 331:
-#line 3256 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3258 "/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");
@@ -6691,7 +6693,7 @@ yyreduce:
break;
case 332:
-#line 3262 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3264 "/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");
@@ -6701,7 +6703,7 @@ yyreduce:
break;
case 333:
-#line 3268 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3270 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
const Type *Ty = (yyvsp[(2) - (2)].PHIList)->front().first->getType();
if (!Ty->isFirstClassType())
@@ -6720,7 +6722,7 @@ yyreduce:
break;
case 334:
-#line 3284 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3286 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
// Handle the short syntax
@@ -6833,7 +6835,7 @@ yyreduce:
break;
case 335:
-#line 3393 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3395 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.InstVal) = (yyvsp[(1) - (1)].InstVal);
CHECK_FOR_ERROR
@@ -6841,7 +6843,7 @@ yyreduce:
break;
case 336:
-#line 3398 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3400 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.BoolVal) = true;
CHECK_FOR_ERROR
@@ -6849,7 +6851,7 @@ yyreduce:
break;
case 337:
-#line 3402 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3404 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
(yyval.BoolVal) = false;
CHECK_FOR_ERROR
@@ -6857,7 +6859,7 @@ yyreduce:
break;
case 338:
-#line 3409 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3411 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (3)].TypeVal))->getDescription());
@@ -6868,7 +6870,7 @@ yyreduce:
break;
case 339:
-#line 3416 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3418 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (6)].TypeVal))->getDescription());
@@ -6882,7 +6884,7 @@ yyreduce:
break;
case 340:
-#line 3426 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3428 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (3)].TypeVal))->getDescription());
@@ -6893,7 +6895,7 @@ yyreduce:
break;
case 341:
-#line 3433 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3435 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (6)].TypeVal))->getDescription());
@@ -6907,7 +6909,7 @@ yyreduce:
break;
case 342:
-#line 3443 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3445 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!isa<PointerType>((yyvsp[(2) - (2)].ValueVal)->getType()))
GEN_ERROR("Trying to free nonpointer type " +
@@ -6918,7 +6920,7 @@ yyreduce:
break;
case 343:
-#line 3451 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3453 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (5)].TypeVal))->getDescription());
@@ -6936,7 +6938,7 @@ yyreduce:
break;
case 344:
-#line 3465 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3467 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(5) - (7)].TypeVal))->getDescription());
@@ -6957,7 +6959,7 @@ yyreduce:
break;
case 345:
-#line 3482 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3484 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (5)].TypeVal))->getDescription());
@@ -6975,7 +6977,7 @@ yyreduce:
break;
case 346:
-#line 3496 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3498 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (4)].TypeVal))->getDescription());
@@ -6994,7 +6996,7 @@ yyreduce:
break;
case 347:
-#line 3511 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3513 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (4)].TypeVal))->getDescription());
@@ -7013,7 +7015,7 @@ yyreduce:
break;
case 348:
-#line 3526 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3528 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
{
if (!UpRefs.empty())
GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (7)].TypeVal))->getDescription());
@@ -7035,7 +7037,7 @@ yyreduce:
/* Line 1267 of yacc.c. */
-#line 7039 "llvmAsmParser.tab.c"
+#line 7041 "llvmAsmParser.tab.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@@ -7249,7 +7251,7 @@ yyreturn:
}
-#line 3545 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 3547 "/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 89f2c4c..eb34cc0 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 978 "/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 980 "/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 9b29cdd..54694d7 100644
--- a/lib/AsmParser/llvmAsmParser.y.cvs
+++ b/lib/AsmParser/llvmAsmParser.y.cvs
@@ -307,8 +307,10 @@ static const Type *getTypeVal(const ValID &D, bool DoNotImprovise = false) {
}
std::map<ValID, PATypeHolder>::iterator I =CurModule.LateResolveTypes.find(D);
- if (I != CurModule.LateResolveTypes.end())
+ if (I != CurModule.LateResolveTypes.end()) {
+ D.destroy();
return I->second;
+ }
Type *Typ = OpaqueType::get();
CurModule.LateResolveTypes.insert(std::make_pair(D, Typ));