diff options
author | Chris Lattner <sabre@nondot.org> | 2004-04-18 22:14:10 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-04-18 22:14:10 +0000 |
commit | f1ab4b4eac5603d19c20f4a508f93a118a52bdd5 (patch) | |
tree | c9d06cae7fa1fa63934b7b22a2a0ea3a83eba636 /lib/Transforms/IPO/LoopExtractor.cpp | |
parent | 7c8781e71f8f9fa6956a7de056fc8a4e5c172c86 (diff) | |
download | external_llvm-f1ab4b4eac5603d19c20f4a508f93a118a52bdd5.zip external_llvm-f1ab4b4eac5603d19c20f4a508f93a118a52bdd5.tar.gz external_llvm-f1ab4b4eac5603d19c20f4a508f93a118a52bdd5.tar.bz2 |
Change the ExitBlocks list from being explicitly contained in the Loop
structure to being dynamically computed on demand. This makes updating
loop information MUCH easier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13045 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/IPO/LoopExtractor.cpp')
-rw-r--r-- | lib/Transforms/IPO/LoopExtractor.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/Transforms/IPO/LoopExtractor.cpp b/lib/Transforms/IPO/LoopExtractor.cpp index 6b033b4..65f9514 100644 --- a/lib/Transforms/IPO/LoopExtractor.cpp +++ b/lib/Transforms/IPO/LoopExtractor.cpp @@ -92,8 +92,10 @@ bool LoopExtractor::runOnFunction(Function &F) { else { // Check to see if any exits from the loop are more than just return // blocks. - for (unsigned i = 0, e = TLL->getExitBlocks().size(); i != e; ++i) - if (!isa<ReturnInst>(TLL->getExitBlocks()[i]->getTerminator())) { + std::vector<BasicBlock*> ExitBlocks; + TLL->getExitBlocks(ExitBlocks); + for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) + if (!isa<ReturnInst>(ExitBlocks[i]->getTerminator())) { ShouldExtractLoop = true; break; } |