Move a function out of line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33158 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/SelectionDAG/TargetLowering.cpp b/lib/CodeGen/SelectionDAG/TargetLowering.cpp
index d780dd2..9174570 100644
--- a/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+++ b/lib/CodeGen/SelectionDAG/TargetLowering.cpp
@@ -1741,3 +1741,24 @@
                        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;
+  }
+}