fix two issues Neil noticed, thanks!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51296 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2008-05-20 03:50:52 +00:00
parent 28a8dbc35f
commit 851627892d

View File

@ -5435,7 +5435,7 @@ Instruction *InstCombiner::FoldFCmp_IntToFP_Cst(FCmpInst &I,
// Now we know that the APFloat is a normal number, zero or inf.
// See if the FP constant is top large for the integer. For example,
// See if the FP constant is too large for the integer. For example,
// comparing an i8 to 300.0.
unsigned IntWidth = IntTy->getPrimitiveSizeInBits();
@ -5561,10 +5561,10 @@ Instruction *InstCombiner::visitFCmpInst(FCmpInst &I) {
if (CFP->getValueAPF().isNaN()) {
if (FCmpInst::isOrdered(I.getPredicate())) // True if ordered and...
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 0));
if (FCmpInst::isUnordered(I.getPredicate())) // True if unordered or...
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 1));
if (FCmpInst::isUnordered(I.getPredicate())) // Undef on unordered.
return ReplaceInstUsesWith(I, UndefValue::get(Type::Int1Ty));
assert(FCmpInst::isUnordered(I.getPredicate()) &&
"Comparison must be either ordered or unordered!");
// True if unordered.
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 1));
}
}