From: Reid Spencer Date: Mon, 11 Dec 2006 21:27:28 +0000 (+0000) Subject: Fix constant folding of FP->int due to cut & paste error in last commit. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=8c4fed50e3f4318baadf88bbbaa9313a6616493b;p=oota-llvm.git Fix constant folding of FP->int due to cut & paste error in last commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32447 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/VMCore/ConstantFold.cpp b/lib/VMCore/ConstantFold.cpp index 7eb7d4d8f8b..bad774e67fd 100644 --- a/lib/VMCore/ConstantFold.cpp +++ b/lib/VMCore/ConstantFold.cpp @@ -983,9 +983,10 @@ Constant *llvm::ConstantFoldCastInstruction(unsigned opc, const Constant *V, if (const ConstantFP *FP = dyn_cast(V)) { // FP -> Integral. if (DestTy->isIntegral()) { - if (DestTy == Type::FloatTy) + if (DestTy == Type::IntTy || DestTy == Type::UIntTy) return ConstantInt::get(DestTy, FloatToBits(FP->getValue())); - assert(DestTy == Type::DoubleTy && "Unknown FP type!"); + assert((DestTy == Type::LongTy || DestTy == Type::ULongTy) + && "Incorrect integer type for bitcast!"); return ConstantInt::get(DestTy, DoubleToBits(FP->getValue())); } }