Make some of PMTopLevelManager's members non-public. In particular,
authorDan Gohman <gohman@apple.com>
Mon, 16 Aug 2010 22:03:47 +0000 (22:03 +0000)
committerDan Gohman <gohman@apple.com>
Mon, 16 Aug 2010 22:03:47 +0000 (22:03 +0000)
make its constructor protected.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111193 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/PassManagers.h

index e918091b4a06597aab65bcccf04fc1643f4f9f76..17f4a0592fbbef2cdf5decfdc1527050da31f05f 100644 (file)
@@ -163,21 +163,26 @@ private:
 /// PMTopLevelManager manages LastUser info and collects common APIs used by
 /// top level pass managers.
 class PMTopLevelManager {
-public:
+protected:
+  explicit PMTopLevelManager(PMDataManager *PMDM);
 
   virtual unsigned getNumContainedManagers() const {
     return (unsigned)PassManagers.size();
   }
 
-  /// Schedule pass P for execution. Make sure that passes required by
-  /// P are run before P is run. Update analysis info maintained by
-  /// the manager. Remove dead passes. This is a recursive function.
-  void schedulePass(Pass *P);
+  void initializeAllAnalysisInfo();
 
+private:
   /// This is implemented by top level pass manager and used by 
   /// schedulePass() to add analysis info passes that are not available.
   virtual void addTopLevelPass(Pass  *P) = 0;
 
+public:
+  /// Schedule pass P for execution. Make sure that passes required by
+  /// P are run before P is run. Update analysis info maintained by
+  /// the manager. Remove dead passes. This is a recursive function.
+  void schedulePass(Pass *P);
+
   /// Set pass P as the last user of the given analysis passes.
   void setLastUser(SmallVector<Pass *, 12> &AnalysisPasses, Pass *P);
 
@@ -192,7 +197,6 @@ public:
   /// Find analysis usage information for the pass P.
   AnalysisUsage *findAnalysisUsage(Pass *P);
 
-  explicit PMTopLevelManager(PMDataManager *PMDM);
   virtual ~PMTopLevelManager(); 
 
   /// Add immutable pass and initialize it.
@@ -219,8 +223,6 @@ public:
   void dumpPasses() const;
   void dumpArguments() const;
 
-  void initializeAllAnalysisInfo();
-
   // Active Pass Managers
   PMStack activeStack;