Move a function out of line.
authorReid Spencer <rspencer@reidspencer.com>
Fri, 12 Jan 2007 23:30:31 +0000 (23:30 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Fri, 12 Jan 2007 23:30:31 +0000 (23:30 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33158 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/TargetLowering.cpp

index d780dd28c93379ee16d7b271e32c39e82639df1b..91745705fc706ce2a303addaf44e2b325aba85fa 100644 (file)
@@ -1741,3 +1741,24 @@ SDOperand TargetLowering::BuildUDIV(SDNode *N, SelectionDAG &DAG,
                        DAG.getConstant(magics.s-1, getShiftAmountTy()));
   }
 }
+
+MVT::ValueType TargetLowering::getValueType(const Type *Ty) const {
+  switch (Ty->getTypeID()) {
+  default: assert(0 && "Unknown type!");
+  case Type::VoidTyID:    return MVT::isVoid;
+  case Type::IntegerTyID:
+    switch (cast<IntegerType>(Ty)->getBitWidth()) {
+      default: assert(0 && "Invalid width for value type");
+      case 1:    return MVT::i1;
+      case 8:    return MVT::i8;
+      case 16:   return MVT::i16;
+      case 32:   return MVT::i32;
+      case 64:   return MVT::i64;
+    }
+    break;
+  case Type::FloatTyID:   return MVT::f32;
+  case Type::DoubleTyID:  return MVT::f64;
+  case Type::PointerTyID: return PointerTy;
+  case Type::PackedTyID:  return MVT::Vector;
+  }
+}