// This value must be a multiple of 32.
MAX_ALLOWED_VALUETYPE = 64,
+ // Metadata - This is MDNode or MDString.
+ Metadata = 251,
+
// iPTRAny - An int value the size of the pointer of the current
// target to any address space. This must only be used internal to
// tblgen. Other than for overloading, we treat iPTRAny the same as iPTR.
def v8f32 : ValueType<256, 33>; // 8 x f32 vector value
def v2f64 : ValueType<128, 34>; // 2 x f64 vector value
def v4f64 : ValueType<256, 35>; // 4 x f64 vector value
-
+
+def MetadataVT: ValueType<0, 251>; // Metadata
+
// Pseudo valuetype mapped to the current pointer size to any address space.
// Should only be used in TableGen.
def iPTRAny : ValueType<0, 252>;
case MVT::v4f64: return "MVT::v4f64";
case MVT::v3i32: return "MVT::v3i32";
case MVT::v3f32: return "MVT::v3f32";
+ case MVT::Metadata: return "MVT::Metadata";
case MVT::iPTR: return "MVT::iPTR";
case MVT::iPTRAny: return "MVT::iPTRAny";
default: assert(0 && "ILLEGAL VALUE TYPE!"); return "";
OS << "Type::PPC_FP128Ty";
} else if (VT == MVT::isVoid) {
OS << "Type::VoidTy";
+ } else if (VT == MVT::Metadata) {
+ OS << "Type::MetadataTy";
} else {
assert(false && "Unsupported ValueType!");
}