aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/LoopUnroll.cpp
diff options
context:
space:
mode:
authorPhilip Reames <listmail@philipreames.com>2022-01-03 11:56:02 -0800
committerPhilip Reames <listmail@philipreames.com>2022-01-03 11:57:35 -0800
commit7203140748cec7185479cc413ea68f34d2eced99 (patch)
tree7ffe9b271df0049afb6207a798170154dbb10e14 /llvm/lib/Transforms/Utils/LoopUnroll.cpp
parentcbcbbd6ac8ece43eaff65d40401c75144bf2631f (diff)
downloadllvm-7203140748cec7185479cc413ea68f34d2eced99.zip
llvm-7203140748cec7185479cc413ea68f34d2eced99.tar.gz
llvm-7203140748cec7185479cc413ea68f34d2eced99.tar.bz2
Revert "[unroll] Prune all but first copy of invariant exit"
This reverts commit 9bd22595bad36cd19f5e7ae18ccd9f41cba29dc5. Seeing some bot failures which look plausibly connected. Revert while investigating/waiting for bots to stablize. e.g. https://lab.llvm.org/buildbot#builders/36/builds/15933
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUnroll.cpp')
-rw-r--r--llvm/lib/Transforms/Utils/LoopUnroll.cpp5
1 files changed, 0 insertions, 5 deletions
diff --git a/llvm/lib/Transforms/Utils/LoopUnroll.cpp b/llvm/lib/Transforms/Utils/LoopUnroll.cpp
index 0a530f5..b0c622b 100644
--- a/llvm/lib/Transforms/Utils/LoopUnroll.cpp
+++ b/llvm/lib/Transforms/Utils/LoopUnroll.cpp
@@ -310,7 +310,6 @@ LoopUnrollResult llvm::UnrollLoop(Loop *L, UnrollLoopOptions ULO, LoopInfo *LI,
unsigned TripMultiple;
unsigned BreakoutTrip;
bool ExitOnTrue;
- bool InvariantExit;
SmallVector<BasicBlock *> ExitingBlocks;
};
DenseMap<BasicBlock *, ExitInfo> ExitInfos;
@@ -334,8 +333,6 @@ LoopUnrollResult llvm::UnrollLoop(Loop *L, UnrollLoopOptions ULO, LoopInfo *LI,
(unsigned)GreatestCommonDivisor64(ULO.Count, Info.TripMultiple);
}
Info.ExitOnTrue = !L->contains(BI->getSuccessor(0));
- Info.InvariantExit = L->isLoopInvariant(BI->getCondition()) &&
- DT->dominates(ExitingBlock, LatchBlock);
Info.ExitingBlocks.push_back(ExitingBlock);
LLVM_DEBUG(dbgs() << " Exiting block %" << ExitingBlock->getName()
<< ": TripCount=" << Info.TripCount
@@ -688,8 +685,6 @@ LoopUnrollResult llvm::UnrollLoop(Loop *L, UnrollLoopOptions ULO, LoopInfo *LI,
auto WillExit = [&](const ExitInfo &Info, unsigned i, unsigned j,
bool IsLatch) -> Optional<bool> {
- if (Info.InvariantExit && i != 0)
- return false;
if (CompletelyUnroll) {
if (PreserveOnlyFirst) {
if (i == 0)