Changes in directory llvm/include/llvm/CodeGen:
ValueTypes.h updated: 1.29 -> 1.30 ValueTypes.td updated: 1.2 -> 1.3 --- Log message: add a valuetype for v1i64, which is needed by mmx. --- Diffs of the changes: (+34 -27) ValueTypes.h | 45 +++++++++++++++++++++++++-------------------- ValueTypes.td | 16 +++++++++------- 2 files changed, 34 insertions(+), 27 deletions(-) Index: llvm/include/llvm/CodeGen/ValueTypes.h diff -u llvm/include/llvm/CodeGen/ValueTypes.h:1.29 llvm/include/llvm/CodeGen/ValueTypes.h:1.30 --- llvm/include/llvm/CodeGen/ValueTypes.h:1.29 Tue Jul 18 19:40:45 2006 +++ llvm/include/llvm/CodeGen/ValueTypes.h Sat Mar 24 12:36:26 2007 @@ -52,18 +52,19 @@ v8i8 = 14, // 8 x i8 v4i16 = 15, // 4 x i16 v2i32 = 16, // 2 x i32 - v16i8 = 17, // 16 x i8 - v8i16 = 18, // 8 x i16 - v4i32 = 19, // 4 x i32 - v2i64 = 20, // 2 x i64 - - v2f32 = 21, // 2 x f32 - v4f32 = 22, // 4 x f32 - v2f64 = 23, // 2 x f64 + v1i64 = 17, // 1 x i64 + v16i8 = 18, // 16 x i8 + v8i16 = 19, // 8 x i16 + v4i32 = 20, // 4 x i32 + v2i64 = 21, // 2 x i64 + + v2f32 = 22, // 2 x f32 + v4f32 = 23, // 4 x f32 + v2f64 = 24, // 2 x f64 FIRST_VECTOR_VALUETYPE = v8i8, LAST_VECTOR_VALUETYPE = v2f64, - LAST_VALUETYPE = 24, // This always remains at the end of the list. + LAST_VALUETYPE = 25, // This always remains at the end of the list. // iPTR - An int value the size of the pointer of the current // target. This should only be used internal to tblgen! @@ -103,6 +104,7 @@ case MVT::v8i8: case MVT::v4i16: case MVT::v2i32: + case MVT::v1i64: case MVT::v2f32: return 64; case MVT::f80 : return 80; case MVT::f128: @@ -133,6 +135,7 @@ case v8i16: return i16; case v2i32: case v4i32: return i32; + case v1i64: case v2i64: return i64; case v2f32: case v4f32: return f32; @@ -144,17 +147,18 @@ /// of elements it contains. static inline unsigned getVectorNumElements(ValueType VT) { switch (VT) { - default: assert(0 && "Invalid vector type!"); - case v16i8: return 16; - case v8i8 : - case v8i16: return 8; - case v4i16: - case v4i32: - case v4f32: return 4; - case v2i32: - case v2i64: - case v2f32: - case v2f64: return 2; + default: assert(0 && "Invalid vector type!"); + case v16i8: return 16; + case v8i8 : + case v8i16: return 8; + case v4i16: + case v4i32: + case v4f32: return 4; + case v2i32: + case v2i64: + case v2f32: + case v2f64: return 2; + case v1i64: return 1; } } @@ -163,6 +167,7 @@ static inline ValueType getIntVectorWithNumElements(unsigned NumElts) { switch (NumElts) { default: assert(0 && "Invalid vector type!"); + case 1: return v1i64; case 2: return v2i32; case 4: return v4i16; case 8: return v8i8; Index: llvm/include/llvm/CodeGen/ValueTypes.td diff -u llvm/include/llvm/CodeGen/ValueTypes.td:1.2 llvm/include/llvm/CodeGen/ValueTypes.td:1.3 --- llvm/include/llvm/CodeGen/ValueTypes.td:1.2 Mon Mar 27 16:48:00 2006 +++ llvm/include/llvm/CodeGen/ValueTypes.td Sat Mar 24 12:36:26 2007 @@ -36,13 +36,15 @@ def v8i8 : ValueType<64 , 14>; // 8 x i8 vector value def v4i16 : ValueType<64 , 15>; // 4 x i16 vector value def v2i32 : ValueType<64 , 16>; // 2 x i32 vector value -def v16i8 : ValueType<128, 17>; // 16 x i8 vector value -def v8i16 : ValueType<128, 18>; // 8 x i16 vector value -def v4i32 : ValueType<128, 19>; // 4 x i32 vector value -def v2i64 : ValueType<128, 20>; // 2 x i64 vector value -def v2f32 : ValueType<64, 21>; // 2 x f32 vector value -def v4f32 : ValueType<128, 22>; // 4 x f32 vector value -def v2f64 : ValueType<128, 23>; // 2 x f64 vector value +def v1i64 : ValueType<64 , 17>; // 1 x i64 vector value + +def v16i8 : ValueType<128, 18>; // 16 x i8 vector value +def v8i16 : ValueType<128, 19>; // 8 x i16 vector value +def v4i32 : ValueType<128, 20>; // 4 x i32 vector value +def v2i64 : ValueType<128, 21>; // 2 x i64 vector value +def v2f32 : ValueType<64, 22>; // 2 x f32 vector value +def v4f32 : ValueType<128, 23>; // 4 x f32 vector value +def v2f64 : ValueType<128, 24>; // 2 x f64 vector value // Pseudo valuetype mapped to the current pointer size. _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits