mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-30 04:35:00 +00:00
Fix a serious brain-o. Obviously no-one reviewed my patch :(
This fixes PR2359 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51536 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
60301608f8
commit
393f7eb60a
@ -5571,7 +5571,8 @@ Instruction *InstCombiner::FoldFCmp_IntToFP_Cst(FCmpInst &I,
|
|||||||
SMax.convertFromAPInt(APInt::getSignedMaxValue(IntWidth), true,
|
SMax.convertFromAPInt(APInt::getSignedMaxValue(IntWidth), true,
|
||||||
APFloat::rmNearestTiesToEven);
|
APFloat::rmNearestTiesToEven);
|
||||||
if (SMax.compare(RHS) == APFloat::cmpLessThan) { // smax < 13123.0
|
if (SMax.compare(RHS) == APFloat::cmpLessThan) { // smax < 13123.0
|
||||||
if (ICmpInst::ICMP_NE || ICmpInst::ICMP_SLT || Pred == ICmpInst::ICMP_SLE)
|
if (Pred == ICmpInst::ICMP_NE || Pred == ICmpInst::ICMP_SLT ||
|
||||||
|
Pred == ICmpInst::ICMP_SLE)
|
||||||
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 1));
|
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 1));
|
||||||
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 0));
|
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 0));
|
||||||
}
|
}
|
||||||
@ -5581,7 +5582,8 @@ Instruction *InstCombiner::FoldFCmp_IntToFP_Cst(FCmpInst &I,
|
|||||||
SMin.convertFromAPInt(APInt::getSignedMinValue(IntWidth), true,
|
SMin.convertFromAPInt(APInt::getSignedMinValue(IntWidth), true,
|
||||||
APFloat::rmNearestTiesToEven);
|
APFloat::rmNearestTiesToEven);
|
||||||
if (SMin.compare(RHS) == APFloat::cmpGreaterThan) { // smin > 12312.0
|
if (SMin.compare(RHS) == APFloat::cmpGreaterThan) { // smin > 12312.0
|
||||||
if (ICmpInst::ICMP_NE || ICmpInst::ICMP_SGT || Pred == ICmpInst::ICMP_SGE)
|
if (Pred == ICmpInst::ICMP_NE || Pred == ICmpInst::ICMP_SGT ||
|
||||||
|
Pred == ICmpInst::ICMP_SGE)
|
||||||
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 1));
|
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 1));
|
||||||
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 0));
|
return ReplaceInstUsesWith(I, ConstantInt::get(Type::Int1Ty, 0));
|
||||||
}
|
}
|
||||||
|
11
test/Transforms/InstCombine/2008-05-23-CompareFold.ll
Normal file
11
test/Transforms/InstCombine/2008-05-23-CompareFold.ll
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep {ret i1 false}
|
||||||
|
; PR2359
|
||||||
|
define i1 @f(i8* %x) {
|
||||||
|
entry:
|
||||||
|
%tmp462 = load i8* %x, align 1 ; <i8> [#uses=1]
|
||||||
|
%tmp462463 = sitofp i8 %tmp462 to float ; <float> [#uses=1]
|
||||||
|
%tmp464 = fcmp ugt float %tmp462463, 0x47EFFFFFE0000000 ; <i1>
|
||||||
|
ret i1 %tmp464
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user