summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kazantsev <max.kazantsev@azul.com>2019-02-19 11:13:58 +0000
committerMax Kazantsev <max.kazantsev@azul.com>2019-02-19 11:13:58 +0000
commit30095d97955cb2996d3d50a5d0c711ab67043e61 (patch)
treecc2ad06b074c617e86ad9255e16a3ff44707960d
parenta6012a65d47dc6f63fa36b5f04b7d410ff4d612e (diff)
downloadbcm5719-llvm-30095d97955cb2996d3d50a5d0c711ab67043e61.tar.gz
bcm5719-llvm-30095d97955cb2996d3d50a5d0c711ab67043e61.zip
[NFC] Store loop header in a local to keep it available after the loop is deleted
llvm-svn: 354313
-rw-r--r--llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp20
1 files changed, 9 insertions, 11 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp b/llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp
index eb8de34c3af..fd417055f9c 100644
--- a/llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp
@@ -526,8 +526,10 @@ public:
// Collect all available information about status of blocks after constant
// folding.
analyze();
+ BasicBlock *Header = L.getHeader();
+ (void)Header;
- LLVM_DEBUG(dbgs() << "In function " << L.getHeader()->getParent()->getName()
+ LLVM_DEBUG(dbgs() << "In function " << Header->getParent()->getName()
<< ": ");
if (HasIrreducibleCFG) {
@@ -539,7 +541,7 @@ public:
if (FoldCandidates.empty()) {
LLVM_DEBUG(
dbgs() << "No constant terminator folding candidates found in loop "
- << L.getHeader()->getName() << "\n");
+ << Header->getName() << "\n");
return false;
}
@@ -547,8 +549,7 @@ public:
if (DeleteCurrentLoop) {
LLVM_DEBUG(
dbgs()
- << "Give up constant terminator folding in loop "
- << L.getHeader()->getName()
+ << "Give up constant terminator folding in loop " << Header->getName()
<< ": we don't currently support deletion of the current loop.\n");
return false;
}
@@ -559,8 +560,7 @@ public:
L.getNumBlocks()) {
LLVM_DEBUG(
dbgs() << "Give up constant terminator folding in loop "
- << L.getHeader()->getName()
- << ": we don't currently"
+ << Header->getName() << ": we don't currently"
" support blocks that are not dead, but will stop "
"being a part of the loop after constant-folding.\n");
return false;
@@ -571,8 +571,7 @@ public:
LLVM_DEBUG(dump());
LLVM_DEBUG(dbgs() << "Constant-folding " << FoldCandidates.size()
- << " terminators in loop " << L.getHeader()->getName()
- << "\n");
+ << " terminators in loop " << Header->getName() << "\n");
// Make the actual transforms.
handleDeadExits();
@@ -580,8 +579,7 @@ public:
if (!DeadLoopBlocks.empty()) {
LLVM_DEBUG(dbgs() << "Deleting " << DeadLoopBlocks.size()
- << " dead blocks in loop " << L.getHeader()->getName()
- << "\n");
+ << " dead blocks in loop " << Header->getName() << "\n");
deleteDeadLoopBlocks();
} else {
// If we didn't do updates inside deleteDeadLoopBlocks, do them here.
@@ -592,7 +590,7 @@ public:
#ifndef NDEBUG
// Make sure that we have preserved all data structures after the transform.
assert(DT.verify() && "DT broken after transform!");
- assert(DT.isReachableFromEntry(L.getHeader()));
+ assert(DT.isReachableFromEntry(Header));
LI.verify(DT);
#endif
OpenPOWER on IntegriCloud