llvm-ar: Clean up memory management with OwningPtr.
[oota-llvm.git] / lib / Analysis / RegionPass.cpp
index a4145e15e4314182859b0b0542e447bc55a20ab0..9208fa21d7ecbe8b531070aabd5108b8771ad2dd 100644 (file)
@@ -27,8 +27,8 @@ using namespace llvm;
 
 char RGPassManager::ID = 0;
 
-RGPassManager::RGPassManager(int Depth)
-  : FunctionPass(ID), PMDataManager(Depth) {
+RGPassManager::RGPassManager()
+  : FunctionPass(ID), PMDataManager() {
   skipThisRegion = false;
   redoThisRegion = false;
   RI = NULL;
@@ -197,7 +197,7 @@ public:
     Out << Banner;
     for (Region::block_iterator I = R->block_begin(), E = R->block_end();
          I != E; ++I)
-      (*I)->getEntry()->print(Out);
+      (*I)->print(Out);
 
     return false;
   }
@@ -249,8 +249,8 @@ void RegionPass::assignPassManager(PMStack &PMS,
     assert (!PMS.empty() && "Unable to create Region Pass Manager");
     PMDataManager *PMD = PMS.top();
 
-    // [1] Create new Call Graph Pass Manager
-    RGPM = new RGPassManager(PMD->getDepth() + 1);
+    // [1] Create new Region Pass Manager
+    RGPM = new RGPassManager();
     RGPM->populateInheritedAnalysis(PMS);
 
     // [2] Set up new manager's top level manager
@@ -259,8 +259,7 @@ void RegionPass::assignPassManager(PMStack &PMS,
 
     // [3] Assign manager to manage this new manager. This may create
     // and push new managers into PMS
-    Pass *P = dynamic_cast<Pass *>(RGPM);
-    TPM->schedulePass(P);
+    TPM->schedulePass(RGPM);
 
     // [4] Push new manager into PMS
     PMS.push(RGPM);