diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Transforms/Scalar/InstructionCombining.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Transforms/Scalar/InstructionCombining.cpp b/lib/Transforms/Scalar/InstructionCombining.cpp index 9db10340a1..58eb3bc275 100644 --- a/lib/Transforms/Scalar/InstructionCombining.cpp +++ b/lib/Transforms/Scalar/InstructionCombining.cpp @@ -4563,7 +4563,9 @@ Instruction *InstCombiner::FoldGEPICmp(User *GEPLHS, Value *RHS, if (NumDifferences == 0) // SAME GEP? return ReplaceInstUsesWith(I, // No comparison is needed here. ConstantInt::get(Type::Int1Ty, - Cond == ICmpInst::ICMP_EQ)); + Cond == ICmpInst::ICMP_EQ || + Cond == ICmpInst::ICMP_ULE || Cond == ICmpInst::ICMP_UGE || + Cond == ICmpInst::ICMP_SLE || Cond == ICmpInst::ICMP_SGE)); else if (NumDifferences == 1) { Value *LHSV = GEPLHS->getOperand(DiffOperand); Value *RHSV = GEPRHS->getOperand(DiffOperand); |