simplify some code that was not llvm_shutdown safe
authorChris Lattner <sabre@nondot.org>
Tue, 20 Feb 2007 05:46:39 +0000 (05:46 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 20 Feb 2007 05:46:39 +0000 (05:46 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34440 91177308-0d34-0410-b5e6-96231b3b80d8

lib/VMCore/Constants.cpp

index c89609ec9fd962f22b76bdf33021329b9ed4567d..58fe8882c8afd4e1c74881657301c873d138ac0c 100644 (file)
@@ -89,45 +89,14 @@ bool Constant::canTrap() const {
   }
 }
 
-
 // Static constructor to create a '0' constant of arbitrary type...
 Constant *Constant::getNullValue(const Type *Ty) {
   switch (Ty->getTypeID()) {
-  case Type::IntegerTyID: {
-    const IntegerType *ITy = dyn_cast<IntegerType>(Ty);
-    switch (ITy->getBitWidth()) {
-    case 1: {
-      static Constant *NullBool = ConstantInt::get(Ty, false);
-      return NullBool;
-    } 
-    case 8: {
-      static Constant *NullInt8 = ConstantInt::get(Ty, 0);
-      return NullInt8;
-    } 
-    case 16: {
-      static Constant *NullInt16 = ConstantInt::get(Ty, 0);
-      return NullInt16;
-    } 
-    case 32: {
-      static Constant *NullInt32 = ConstantInt::get(Ty, 0);
-      return NullInt32;
-    } 
-    case 64: {
-      static Constant *NullInt64 = ConstantInt::get(Ty, 0);
-      return NullInt64;
-    }
-    default:
-      return ConstantInt::get(Ty, 0);
-    }
-  }
-  case Type::FloatTyID: {
-    static Constant *NullFloat = ConstantFP::get(Type::FloatTy, 0);
-    return NullFloat;
-  }
-  case Type::DoubleTyID: {
-    static Constant *NullDouble = ConstantFP::get(Type::DoubleTy, 0);
-    return NullDouble;
-  }
+  case Type::IntegerTyID:
+    return ConstantInt::get(Ty, 0);
+  case Type::FloatTyID:
+  case Type::DoubleTyID:
+    return ConstantFP::get(Ty, 0.0);
   case Type::PointerTyID:
     return ConstantPointerNull::get(cast<PointerType>(Ty));
   case Type::StructTyID: