summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/RegionPass.cpp
diff options
context:
space:
mode:
authorDavid Blaikie <dblaikie@gmail.com>2014-04-15 18:32:43 +0000
committerDavid Blaikie <dblaikie@gmail.com>2014-04-15 18:32:43 +0000
commitec649acb82e58d7dcb1644fa5df41caae4fb90ac (patch)
treef9b18d627c21fe1eb7d62ebccc1d3ca3b87e2a0c /llvm/lib/Analysis/RegionPass.cpp
parent8832c066a23eb7df33b025bcf7e8fe7199ad3aae (diff)
downloadbcm5719-llvm-ec649acb82e58d7dcb1644fa5df41caae4fb90ac.tar.gz
bcm5719-llvm-ec649acb82e58d7dcb1644fa5df41caae4fb90ac.zip
Use unique_ptr to manage ownership of child Regions within llvm::Region
llvm-svn: 206310
Diffstat (limited to 'llvm/lib/Analysis/RegionPass.cpp')
-rw-r--r--llvm/lib/Analysis/RegionPass.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/llvm/lib/Analysis/RegionPass.cpp b/llvm/lib/Analysis/RegionPass.cpp
index b29070a4fbf..1798c36fc13 100644
--- a/llvm/lib/Analysis/RegionPass.cpp
+++ b/llvm/lib/Analysis/RegionPass.cpp
@@ -36,10 +36,10 @@ RGPassManager::RGPassManager()
}
// Recurse through all subregions and all regions into RQ.
-static void addRegionIntoQueue(Region *R, std::deque<Region *> &RQ) {
- RQ.push_back(R);
- for (Region::iterator I = R->begin(), E = R->end(); I != E; ++I)
- addRegionIntoQueue(*I, RQ);
+static void addRegionIntoQueue(Region &R, std::deque<Region *> &RQ) {
+ RQ.push_back(&R);
+ for (const auto &E : R)
+ addRegionIntoQueue(*E, RQ);
}
/// Pass Manager itself does not invalidate any analysis info.
@@ -57,7 +57,7 @@ bool RGPassManager::runOnFunction(Function &F) {
// Collect inherited analysis from Module level pass manager.
populateInheritedAnalysis(TPM->activeStack);
- addRegionIntoQueue(RI->getTopLevelRegion(), RQ);
+ addRegionIntoQueue(*RI->getTopLevelRegion(), RQ);
if (RQ.empty()) // No regions, skip calling finalizers
return false;
OpenPOWER on IntegriCloud