diff --git a/include/llvm/CodeGen/ValueTypes.h b/include/llvm/CodeGen/ValueTypes.h index 4f6dee40297..57ca285fac4 100644 --- a/include/llvm/CodeGen/ValueTypes.h +++ b/include/llvm/CodeGen/ValueTypes.h @@ -60,24 +60,22 @@ namespace llvm { v8i16 = 21, // 8 x i16 v16i16 = 22, // 16 x i16 v2i32 = 23, // 2 x i32 - v3i32 = 24, // 3 x i32 - v4i32 = 25, // 4 x i32 - v8i32 = 26, // 8 x i32 - v1i64 = 27, // 1 x i64 - v2i64 = 28, // 2 x i64 - v4i64 = 29, // 4 x i64 + v4i32 = 24, // 4 x i32 + v8i32 = 25, // 8 x i32 + v1i64 = 26, // 1 x i64 + v2i64 = 27, // 2 x i64 + v4i64 = 28, // 4 x i64 - v2f32 = 30, // 2 x f32 - v3f32 = 31, // 3 x f32 - v4f32 = 32, // 4 x f32 - v8f32 = 33, // 8 x f32 - v2f64 = 34, // 2 x f64 - v4f64 = 35, // 4 x f64 + v2f32 = 29, // 2 x f32 + v4f32 = 30, // 4 x f32 + v8f32 = 31, // 8 x f32 + v2f64 = 32, // 2 x f64 + v4f64 = 33, // 4 x f64 FIRST_VECTOR_VALUETYPE = v2i8, LAST_VECTOR_VALUETYPE = v4f64, - LAST_VALUETYPE = 36, // This always remains at the end of the list. + LAST_VALUETYPE = 34, // This always remains at the end of the list. // This is the current maximum for LAST_VALUETYPE. // MVT::MAX_ALLOWED_VALUETYPE is used for asserts and to size bit vectors @@ -197,7 +195,6 @@ namespace llvm { break; case i32: if (NumElements == 2) return v2i32; - if (NumElements == 3) return v3i32; if (NumElements == 4) return v4i32; if (NumElements == 8) return v8i32; break; @@ -208,7 +205,6 @@ namespace llvm { break; case f32: if (NumElements == 2) return v2f32; - if (NumElements == 3) return v3f32; if (NumElements == 4) return v4f32; if (NumElements == 8) return v8f32; break; @@ -227,7 +223,6 @@ namespace llvm { default: return getVectorVT(i8, NumElts); case 1: return v1i64; case 2: return v2i32; - case 3: return v3i32; case 4: return v4i16; case 8: return v8i8; case 16: return v16i8; @@ -350,14 +345,12 @@ namespace llvm { case v8i16: case v16i16: return i16; case v2i32: - case v3i32: case v4i32: case v8i32: return i32; case v1i64: case v2i64: case v4i64: return i64; case v2f32: - case v3f32: case v4f32: case v8f32: return f32; case v2f64: @@ -385,8 +378,6 @@ namespace llvm { case v4i64: case v4f32: case v4f64: return 4; - case v3i32: - case v3f32: return 3; case v2i8: case v2i16: case v2i32: @@ -424,8 +415,6 @@ namespace llvm { case v1i64: case v2f32: return 64; case f80 : return 80; - case v3i32: - case v3f32: return 96; case f128: case ppcf128: case i128: diff --git a/include/llvm/CodeGen/ValueTypes.td b/include/llvm/CodeGen/ValueTypes.td index 8b404fb1cc7..596da059c95 100644 --- a/include/llvm/CodeGen/ValueTypes.td +++ b/include/llvm/CodeGen/ValueTypes.td @@ -44,19 +44,17 @@ def v4i16 : ValueType<64 , 20>; // 4 x i16 vector value def v8i16 : ValueType<128, 21>; // 8 x i16 vector value def v16i16 : ValueType<256, 22>; // 16 x i16 vector value def v2i32 : ValueType<64 , 23>; // 2 x i32 vector value -def v3i32 : ValueType<96 , 24>; // 3 x i32 vector value -def v4i32 : ValueType<128, 25>; // 4 x i32 vector value -def v8i32 : ValueType<256, 26>; // 8 x i32 vector value -def v1i64 : ValueType<64 , 27>; // 1 x i64 vector value -def v2i64 : ValueType<128, 28>; // 2 x i64 vector value -def v4i64 : ValueType<256, 29>; // 4 x f64 vector value +def v4i32 : ValueType<128, 24>; // 4 x i32 vector value +def v8i32 : ValueType<256, 25>; // 8 x i32 vector value +def v1i64 : ValueType<64 , 26>; // 1 x i64 vector value +def v2i64 : ValueType<128, 27>; // 2 x i64 vector value +def v4i64 : ValueType<256, 28>; // 4 x f64 vector value -def v2f32 : ValueType<64, 30>; // 2 x f32 vector value -def v3f32 : ValueType<96 , 31>; // 3 x f32 vector value -def v4f32 : ValueType<128, 32>; // 4 x f32 vector value -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 v2f32 : ValueType<64, 29>; // 2 x f32 vector value +def v4f32 : ValueType<128, 30>; // 4 x f32 vector value +def v8f32 : ValueType<256, 31>; // 8 x f32 vector value +def v2f64 : ValueType<128, 32>; // 2 x f64 vector value +def v4f64 : ValueType<256, 33>; // 4 x f64 vector value def MetadataVT: ValueType<0, 251>; // Metadata diff --git a/include/llvm/Intrinsics.td b/include/llvm/Intrinsics.td index 9febb408652..6d0a563b3e0 100644 --- a/include/llvm/Intrinsics.td +++ b/include/llvm/Intrinsics.td @@ -127,7 +127,6 @@ def llvm_v2i64_ty : LLVMType; // 2 x i64 def llvm_v4i64_ty : LLVMType; // 4 x i64 def llvm_v2f32_ty : LLVMType; // 2 x float -def llvm_v3f32_ty : LLVMType; // 3 x float def llvm_v4f32_ty : LLVMType; // 4 x float def llvm_v8f32_ty : LLVMType; // 8 x float def llvm_v2f64_ty : LLVMType; // 2 x double diff --git a/lib/VMCore/ValueTypes.cpp b/lib/VMCore/ValueTypes.cpp index 6e2917b6e72..5badffc82c3 100644 --- a/lib/VMCore/ValueTypes.cpp +++ b/lib/VMCore/ValueTypes.cpp @@ -117,14 +117,12 @@ std::string MVT::getMVTString() const { case MVT::v8i16: return "v8i16"; case MVT::v16i16: return "v16i16"; case MVT::v2i32: return "v2i32"; - case MVT::v3i32: return "v3i32"; case MVT::v4i32: return "v4i32"; case MVT::v8i32: return "v8i32"; case MVT::v1i64: return "v1i64"; case MVT::v2i64: return "v2i64"; case MVT::v4i64: return "v4i64"; case MVT::v2f32: return "v2f32"; - case MVT::v3f32: return "v3f32"; case MVT::v4f32: return "v4f32"; case MVT::v8f32: return "v8f32"; case MVT::v2f64: return "v2f64"; @@ -162,14 +160,12 @@ const Type *MVT::getTypeForMVT(LLVMContext &Context) const { case MVT::v8i16: return Context.getVectorType(Type::Int16Ty, 8); case MVT::v16i16: return Context.getVectorType(Type::Int16Ty, 16); case MVT::v2i32: return Context.getVectorType(Type::Int32Ty, 2); - case MVT::v3i32: return Context.getVectorType(Type::Int32Ty, 3); case MVT::v4i32: return Context.getVectorType(Type::Int32Ty, 4); case MVT::v8i32: return Context.getVectorType(Type::Int32Ty, 8); case MVT::v1i64: return Context.getVectorType(Type::Int64Ty, 1); case MVT::v2i64: return Context.getVectorType(Type::Int64Ty, 2); case MVT::v4i64: return Context.getVectorType(Type::Int64Ty, 4); case MVT::v2f32: return Context.getVectorType(Type::FloatTy, 2); - case MVT::v3f32: return Context.getVectorType(Type::FloatTy, 3); case MVT::v4f32: return Context.getVectorType(Type::FloatTy, 4); case MVT::v8f32: return Context.getVectorType(Type::FloatTy, 8); case MVT::v2f64: return Context.getVectorType(Type::DoubleTy, 2); diff --git a/utils/TableGen/CodeGenTarget.cpp b/utils/TableGen/CodeGenTarget.cpp index b0e896b7e84..ed703be944a 100644 --- a/utils/TableGen/CodeGenTarget.cpp +++ b/utils/TableGen/CodeGenTarget.cpp @@ -79,8 +79,6 @@ std::string llvm::getEnumName(MVT::SimpleValueType T) { case MVT::v8f32: return "MVT::v8f32"; case MVT::v2f64: return "MVT::v2f64"; 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";