aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp')
-rw-r--r--llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
index 20aa801..72779ab 100644
--- a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
@@ -6620,17 +6620,17 @@ canFoldTermCondOfLoop(Loop *L, ScalarEvolution &SE, DominatorTree &DT,
const LoopInfo &LI) {
if (!L->isInnermost()) {
LLVM_DEBUG(dbgs() << "Cannot fold on non-innermost loop\n");
- return None;
+ return std::nullopt;
}
// Only inspect on simple loop structure
if (!L->isLoopSimplifyForm()) {
LLVM_DEBUG(dbgs() << "Cannot fold on non-simple loop\n");
- return None;
+ return std::nullopt;
}
if (!SE.hasLoopInvariantBackedgeTakenCount(L)) {
LLVM_DEBUG(dbgs() << "Cannot fold on backedge that is loop variant\n");
- return None;
+ return std::nullopt;
}
BasicBlock *LoopPreheader = L->getLoopPreheader();
@@ -6640,18 +6640,18 @@ canFoldTermCondOfLoop(Loop *L, ScalarEvolution &SE, DominatorTree &DT,
// Terminating condition is foldable when it is an eq/ne icmp
BranchInst *BI = cast<BranchInst>(LoopLatch->getTerminator());
if (BI->isUnconditional())
- return None;
+ return std::nullopt;
Value *TermCond = BI->getCondition();
if (!isa<ICmpInst>(TermCond) || !cast<ICmpInst>(TermCond)->isEquality()) {
LLVM_DEBUG(dbgs() << "Cannot fold on branching condition that is not an "
"ICmpInst::eq / ICmpInst::ne\n");
- return None;
+ return std::nullopt;
}
if (!TermCond->hasOneUse()) {
LLVM_DEBUG(
dbgs()
<< "Cannot replace terminating condition with more than one use\n");
- return None;
+ return std::nullopt;
}
// For `IsToFold`, a primary IV can be replaced by other affine AddRec when it
@@ -6769,7 +6769,7 @@ canFoldTermCondOfLoop(Loop *L, ScalarEvolution &SE, DominatorTree &DT,
<< " ToHelpFold: " << *ToHelpFold << "\n");
if (!ToFold || !ToHelpFold)
- return None;
+ return std::nullopt;
return {{ToFold, {ToHelpFold, TermValueS}}};
}