Teach the type lowering code about turning packed types into vector types.
authorNate Begeman <natebegeman@mac.com>
Thu, 17 Nov 2005 21:44:42 +0000 (21:44 +0000)
committerNate Begeman <natebegeman@mac.com>
Thu, 17 Nov 2005 21:44:42 +0000 (21:44 +0000)
Next step: generating vector dag nodes, and legalizing them into scalar
code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24404 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/CodeGen/ValueTypes.h
include/llvm/Target/TargetLowering.h

index 91c3526f0db1dad2e06707f5459fd650b1575de8..600c188868cb41466e0d4f7bce6352f1de8cf833 100644 (file)
@@ -36,13 +36,17 @@ namespace MVT {  // MVT = Machine Value Types
     i64            =   5,   // This is a 64 bit integer value
     i128           =   6,   // This is a 128 bit integer value
 
-    f32             =  7,   // This is a 32 bit floating point value
-    f64             =  8,   // This is a 64 bit floating point value
-    f80             =  9,   // This is a 80 bit floating point value
-    f128            = 10,   // This is a 128 bit floating point value
+    f32              7,   // This is a 32 bit floating point value
+    f64              8,   // This is a 64 bit floating point value
+    f80              9,   // This is a 80 bit floating point value
+    f128            10,   // This is a 128 bit floating point value
     Flag           =  11,   // This is a condition code or machine flag.
 
-    isVoid          = 12,   // This has no value
+    isVoid         =  12,   // This has no value
+    
+    Vector         =  13,   // This is an abstract vector type, which will
+                            // be refined into a target vector type, or
+                            // scalarized.
 
     LAST_VALUETYPE,         // This always remains at the end of the list.
   };
index 734eda042b8452a7da4f6b8af3c56a7c1ae39b04..08865e09272072b8906edaaf8c52ef871f7651ca 100644 (file)
@@ -189,6 +189,7 @@ public:
     case Type::FloatTyID:   return MVT::f32;
     case Type::DoubleTyID:  return MVT::f64;
     case Type::PointerTyID: return PointerTy;
+    case Type::PackedTyID:  return MVT::Vector;
     }
   }