Skip to content

Commit 1067a13

Browse files
committed
[NFC] Use evaluatePredicate in eliminateComparison
Just makes code simpler.
1 parent b3a1500 commit 1067a13

File tree

1 file changed

+2
-6
lines changed

1 file changed

+2
-6
lines changed

llvm/lib/Transforms/Utils/SimplifyIndVar.cpp

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -263,12 +263,8 @@ void SimplifyIndvar::eliminateIVComparison(ICmpInst *ICmp, Value *IVOperand) {
263263

264264
// If the condition is always true or always false, replace it with
265265
// a constant value.
266-
if (SE->isKnownPredicate(Pred, S, X)) {
267-
ICmp->replaceAllUsesWith(ConstantInt::getTrue(ICmp->getContext()));
268-
DeadInsts.emplace_back(ICmp);
269-
LLVM_DEBUG(dbgs() << "INDVARS: Eliminated comparison: " << *ICmp << '\n');
270-
} else if (SE->isKnownPredicate(ICmpInst::getInversePredicate(Pred), S, X)) {
271-
ICmp->replaceAllUsesWith(ConstantInt::getFalse(ICmp->getContext()));
266+
if (auto Ev = SE->evaluatePredicate(Pred, S, X)) {
267+
ICmp->replaceAllUsesWith(ConstantInt::getBool(ICmp->getContext(), *Ev));
272268
DeadInsts.emplace_back(ICmp);
273269
LLVM_DEBUG(dbgs() << "INDVARS: Eliminated comparison: " << *ICmp << '\n');
274270
} else if (makeIVComparisonInvariant(ICmp, IVOperand)) {

0 commit comments

Comments
 (0)