summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp
diff options
context:
space:
mode:
authorSean Fertile <sfertile@ca.ibm.com>2017-07-05 17:57:57 +0000
committerSean Fertile <sfertile@ca.ibm.com>2017-07-05 17:57:57 +0000
commitd44cb1838f848370fc8894ad461f3935e4b22a06 (patch)
treebc2a6b4c73af29c184c7dc6d34163266602f0ab4 /llvm/lib/Target/PowerPC/PPCCTRLoops.cpp
parent45d192823ec0bc5ea40cd6af8e1ac00393cc0e21 (diff)
downloadbcm5719-llvm-d44cb1838f848370fc8894ad461f3935e4b22a06.tar.gz
bcm5719-llvm-d44cb1838f848370fc8894ad461f3935e4b22a06.zip
[PowerPC] Make sure that we remove dead PHI nodes after the PPCCTRLoops pass.
Commiting on behalf of Stefan Pintilie. Differential Revision: https://reviews.llvm.org/D34829 llvm-svn: 307180
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCCTRLoops.cpp')
-rw-r--r--llvm/lib/Target/PowerPC/PPCCTRLoops.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp b/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp
index 094d3e6a61b..53f33ac1fc0 100644
--- a/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp
+++ b/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp
@@ -607,7 +607,10 @@ bool PPCCTRLoops::convertToCTRLoop(Loop *L) {
// The old condition may be dead now, and may have even created a dead PHI
// (the original induction variable).
RecursivelyDeleteTriviallyDeadInstructions(OldCond);
- DeleteDeadPHIs(CountedExitBlock);
+ // Run through the basic blocks of the loop and see if any of them have dead
+ // PHIs that can be removed.
+ for (auto I : L->blocks())
+ DeleteDeadPHIs(I);
++NumCTRLoops;
return MadeChange;
OpenPOWER on IntegriCloud