fix PR6761, a miscompilation due to the fp->int IV conversion
stuff. More bugs remain though.
llvm-svn: 100282
diff --git a/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp b/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
index da99890..70be671 100644
--- a/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
+++ b/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
@@ -709,9 +709,9 @@
case CmpInst::FCMP_OGE:
case CmpInst::FCMP_UGE: NewPred = CmpInst::ICMP_SGE; break;
case CmpInst::FCMP_OLT:
- case CmpInst::FCMP_ULT: NewPred = CmpInst::ICMP_ULT; break;
+ case CmpInst::FCMP_ULT: NewPred = CmpInst::ICMP_SLT; break;
case CmpInst::FCMP_OLE:
- case CmpInst::FCMP_ULE: NewPred = CmpInst::ICMP_ULE; break;
+ case CmpInst::FCMP_ULE: NewPred = CmpInst::ICMP_SLE; break;
}
const IntegerType *Int32Ty = Type::getInt32Ty(PN->getContext());