[llvm-commits] CVS: llvm/lib/VMCore/PassManager.cpp

Devang Patel dpatel at apple.com
Fri Dec 15 11:39:45 PST 2006



Changes in directory llvm/lib/VMCore:

PassManager.cpp updated: 1.103 -> 1.104
---
Log message:

Move PMTopLevelManager and TImingInfo into anon namespace.


---
Diffs of the changes:  (+15 -8)

 PassManager.cpp |   23 +++++++++++++++--------
 1 files changed, 15 insertions(+), 8 deletions(-)


Index: llvm/lib/VMCore/PassManager.cpp
diff -u llvm/lib/VMCore/PassManager.cpp:1.103 llvm/lib/VMCore/PassManager.cpp:1.104
--- llvm/lib/VMCore/PassManager.cpp:1.103	Thu Dec 14 18:08:26 2006
+++ llvm/lib/VMCore/PassManager.cpp	Fri Dec 15 13:39:30 2006
@@ -21,7 +21,9 @@
 #include "llvm/Support/ManagedStatic.h"
 #include <vector>
 #include <map>
+
 using namespace llvm;
+class llvm::PMDataManager;
 
 //===----------------------------------------------------------------------===//
 // Overview:
@@ -114,16 +116,14 @@
 } // End of llvm namespace
 
 #ifndef USE_OLD_PASSMANAGER
-namespace llvm {
-
-class PMDataManager;
+namespace {
 
 //===----------------------------------------------------------------------===//
 // PMTopLevelManager
 //
 /// PMTopLevelManager manages LastUser info and collects common APIs used by
 /// top level pass managers.
-class PMTopLevelManager {
+class VISIBILITY_HIDDEN PMTopLevelManager {
 public:
 
   inline std::vector<Pass *>::iterator passManagersBegin() { 
@@ -210,10 +210,13 @@
   /// Immutable passes are managed by top level manager.
   std::vector<ImmutablePass *> ImmutablePasses;
 };
+
+} // End of anon namespace
   
 //===----------------------------------------------------------------------===//
 // PMDataManager
 
+namespace llvm {
 /// PMDataManager provides the common place to manage the analysis data
 /// used by pass managers.
 class PMDataManager {
@@ -365,7 +368,7 @@
 /// BasicBlockPassManager manages BasicBlockPass. It batches all the
 /// pass together and sequence them to process one basic block before
 /// processing next basic block.
-class BasicBlockPassManager : public PMDataManager, 
+class VISIBILITY_HIDDEN BasicBlockPassManager : public PMDataManager, 
                               public FunctionPass {
 
 public:
@@ -390,7 +393,7 @@
 
   // Print passes managed by this manager
   void dumpPassStructure(unsigned Offset) {
-    llvm::cerr << std::string(Offset*2, ' ') << "BasicBLockPass Manager\n";
+    llvm::cerr << std::string(Offset*2, ' ') << "BasicBlockPass Manager\n";
     for (std::vector<Pass *>::iterator I = passVectorBegin(),
            E = passVectorEnd(); I != E; ++I)  {
       (*I)->dumpPassStructure(Offset + 1);
@@ -574,13 +577,17 @@
   ModulePassManager *activeManager;
 };
 
+} // End of llvm namespace
+
+namespace {
+
 //===----------------------------------------------------------------------===//
 // TimingInfo Class - This class is used to calculate information about the
 // amount of time each pass takes to execute.  This only happens when
 // -time-passes is enabled on the command line.
 //
 
-class TimingInfo {
+class VISIBILITY_HIDDEN TimingInfo {
   std::map<Pass*, Timer> TimingData;
   TimerGroup TG;
 
@@ -623,7 +630,7 @@
 
 static TimingInfo *TheTimeInfo;
 
-} // End of llvm namespace
+} // End of anon namespace
 
 //===----------------------------------------------------------------------===//
 // PMTopLevelManager implementation






More information about the llvm-commits mailing list