diff options
Diffstat (limited to 'llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp b/llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp index ff9d32c316d..125b0760954 100644 --- a/llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp +++ b/llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp @@ -125,12 +125,13 @@ void CodeGenPrepare::findLoopBackEdges(Function &F) { bool CodeGenPrepare::runOnFunction(Function &F) { bool EverMadeChange = false; - findLoopBackEdges(F); - // First pass, eliminate blocks that contain only PHI nodes and an // unconditional branch. EverMadeChange |= EliminateMostlyEmptyBlocks(F); + // Now find loop back edges. + findLoopBackEdges(F); + bool MadeChange = true; while (MadeChange) { MadeChange = false; |

