[llvm-commits] CVS: llvm/lib/Transforms/IPO/ArgumentPromotion.cpp ConstantMerge.cpp DeadArgumentElimination.cpp DeadTypeElimination.cpp FunctionResolution.cpp GlobalDCE.cpp GlobalOpt.cpp IPConstantPropagation.cpp IndMemRemoval.cpp Inliner.cpp Internalize.cpp LoopExtractor.cpp LowerSetJmp.cpp PruneEH.cpp RaiseAllocations.cpp SimplifyLibCalls.cpp

Chris Lattner sabre at nondot.org
Tue Dec 19 14:09:33 PST 2006



Changes in directory llvm/lib/Transforms/IPO:

ArgumentPromotion.cpp updated: 1.31 -> 1.32
ConstantMerge.cpp updated: 1.33 -> 1.34
DeadArgumentElimination.cpp updated: 1.32 -> 1.33
DeadTypeElimination.cpp updated: 1.57 -> 1.58
FunctionResolution.cpp updated: 1.64 -> 1.65
GlobalDCE.cpp updated: 1.39 -> 1.40
GlobalOpt.cpp updated: 1.79 -> 1.80
IPConstantPropagation.cpp updated: 1.20 -> 1.21
IndMemRemoval.cpp updated: 1.8 -> 1.9
Inliner.cpp updated: 1.34 -> 1.35
Internalize.cpp updated: 1.39 -> 1.40
LoopExtractor.cpp updated: 1.20 -> 1.21
LowerSetJmp.cpp updated: 1.33 -> 1.34
PruneEH.cpp updated: 1.25 -> 1.26
RaiseAllocations.cpp updated: 1.33 -> 1.34
SimplifyLibCalls.cpp updated: 1.76 -> 1.77
---
Log message:

Eliminate static ctors due to Statistic objects


---
Diffs of the changes:  (+71 -85)

 ArgumentPromotion.cpp       |   11 ++++-------
 ConstantMerge.cpp           |    5 +++--
 DeadArgumentElimination.cpp |    8 +++-----
 DeadTypeElimination.cpp     |    5 +++--
 FunctionResolution.cpp      |    7 ++++---
 GlobalDCE.cpp               |    7 ++++---
 GlobalOpt.cpp               |   28 ++++++++++++----------------
 IPConstantPropagation.cpp   |    9 ++++-----
 IndMemRemoval.cpp           |   17 ++++-------------
 Inliner.cpp                 |    7 ++++---
 Internalize.cpp             |    6 ++++--
 LoopExtractor.cpp           |    5 +++--
 LowerSetJmp.cpp             |   15 ++++++---------
 PruneEH.cpp                 |    7 ++++---
 RaiseAllocations.cpp        |    5 +++--
 SimplifyLibCalls.cpp        |   14 ++++++--------
 16 files changed, 71 insertions(+), 85 deletions(-)


Index: llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
diff -u llvm/lib/Transforms/IPO/ArgumentPromotion.cpp:1.31 llvm/lib/Transforms/IPO/ArgumentPromotion.cpp:1.32
--- llvm/lib/Transforms/IPO/ArgumentPromotion.cpp:1.31	Wed Dec  6 11:46:32 2006
+++ llvm/lib/Transforms/IPO/ArgumentPromotion.cpp	Tue Dec 19 16:09:18 2006
@@ -47,14 +47,11 @@
 #include <set>
 using namespace llvm;
 
-namespace {
-  Statistic NumArgumentsPromoted("argpromotion",
-                                   "Number of pointer arguments promoted");
-  Statistic NumAggregatesPromoted("argpromotion",
-                                    "Number of aggregate arguments promoted");
-  Statistic NumArgumentsDead("argpromotion",
-                               "Number of dead pointer args eliminated");
+STATISTIC(NumArgumentsPromoted , "Number of pointer arguments promoted");
+STATISTIC(NumAggregatesPromoted, "Number of aggregate arguments promoted");
+STATISTIC(NumArgumentsDead     , "Number of dead pointer args eliminated");
 
+namespace {
   /// ArgPromotion - The 'by reference' to 'by value' argument promotion pass.
   ///
   struct ArgPromotion : public CallGraphSCCPass {


Index: llvm/lib/Transforms/IPO/ConstantMerge.cpp
diff -u llvm/lib/Transforms/IPO/ConstantMerge.cpp:1.33 llvm/lib/Transforms/IPO/ConstantMerge.cpp:1.34
--- llvm/lib/Transforms/IPO/ConstantMerge.cpp:1.33	Wed Dec  6 11:46:32 2006
+++ llvm/lib/Transforms/IPO/ConstantMerge.cpp	Tue Dec 19 16:09:18 2006
@@ -17,15 +17,16 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "constmerge"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Module.h"
 #include "llvm/Pass.h"
 #include "llvm/ADT/Statistic.h"
 using namespace llvm;
 
-namespace {
-  Statistic NumMerged("constmerge", "Number of global constants merged");
+STATISTIC(NumMerged, "Number of global constants merged");
 
+namespace {
   struct ConstantMerge : public ModulePass {
     // run - For this pass, process all of the globals in the module,
     // eliminating duplicate constants.


Index: llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
diff -u llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp:1.32 llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp:1.33
--- llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp:1.32	Sat Dec 16 15:21:53 2006
+++ llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp	Tue Dec 19 16:09:18 2006
@@ -32,12 +32,10 @@
 #include <set>
 using namespace llvm;
 
-namespace {
-  Statistic NumArgumentsEliminated("deadargelim",
-                                     "Number of unread args removed");
-  Statistic NumRetValsEliminated("deadargelim",
-                                   "Number of unused return values removed");
+STATISTIC(NumArgumentsEliminated, "Number of unread args removed");
+STATISTIC(NumRetValsEliminated  , "Number of unused return values removed");
 
+namespace {
   /// DAE - The dead argument elimination pass.
   ///
   class DAE : public ModulePass {


Index: llvm/lib/Transforms/IPO/DeadTypeElimination.cpp
diff -u llvm/lib/Transforms/IPO/DeadTypeElimination.cpp:1.57 llvm/lib/Transforms/IPO/DeadTypeElimination.cpp:1.58
--- llvm/lib/Transforms/IPO/DeadTypeElimination.cpp:1.57	Wed Dec  6 11:46:32 2006
+++ llvm/lib/Transforms/IPO/DeadTypeElimination.cpp	Tue Dec 19 16:09:18 2006
@@ -12,6 +12,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "deadtypeelim"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Analysis/FindUsedTypes.h"
 #include "llvm/Module.h"
@@ -20,6 +21,8 @@
 #include "llvm/ADT/Statistic.h"
 using namespace llvm;
 
+STATISTIC(NumKilled, "Number of unused typenames removed from symtab");
+
 namespace {
   struct DTE : public ModulePass {
     // doPassInitialization - For this pass, it removes global symbol table
@@ -37,8 +40,6 @@
     }
   };
   RegisterPass<DTE> X("deadtypeelim", "Dead Type Elimination");
-  Statistic
-  NumKilled("deadtypeelim", "Number of unused typenames removed from symtab");
 }
 
 ModulePass *llvm::createDeadTypeEliminationPass() {


Index: llvm/lib/Transforms/IPO/FunctionResolution.cpp
diff -u llvm/lib/Transforms/IPO/FunctionResolution.cpp:1.64 llvm/lib/Transforms/IPO/FunctionResolution.cpp:1.65
--- llvm/lib/Transforms/IPO/FunctionResolution.cpp:1.64	Mon Dec 11 23:04:59 2006
+++ llvm/lib/Transforms/IPO/FunctionResolution.cpp	Tue Dec 19 16:09:18 2006
@@ -18,6 +18,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "funcresolve"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Module.h"
 #include "llvm/DerivedTypes.h"
@@ -31,10 +32,10 @@
 #include <algorithm>
 using namespace llvm;
 
-namespace {
-  Statistic NumResolved("funcresolve", "Number of varargs functions resolved");
-  Statistic NumGlobals("funcresolve", "Number of global variables resolved");
+STATISTIC(NumResolved, "Number of varargs functions resolved");
+STATISTIC(NumGlobals, "Number of global variables resolved");
 
+namespace {
   struct FunctionResolvingPass : public ModulePass {
     virtual void getAnalysisUsage(AnalysisUsage &AU) const {
       AU.addRequired<TargetData>();


Index: llvm/lib/Transforms/IPO/GlobalDCE.cpp
diff -u llvm/lib/Transforms/IPO/GlobalDCE.cpp:1.39 llvm/lib/Transforms/IPO/GlobalDCE.cpp:1.40
--- llvm/lib/Transforms/IPO/GlobalDCE.cpp:1.39	Wed Dec  6 11:46:32 2006
+++ llvm/lib/Transforms/IPO/GlobalDCE.cpp	Tue Dec 19 16:09:18 2006
@@ -15,6 +15,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "globaldce"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Constants.h"
 #include "llvm/Module.h"
@@ -23,10 +24,10 @@
 #include <set>
 using namespace llvm;
 
-namespace {
-  Statistic NumFunctions("globaldce","Number of functions removed");
-  Statistic NumVariables("globaldce","Number of global variables removed");
+STATISTIC(NumFunctions, "Number of functions removed");
+STATISTIC(NumVariables, "Number of global variables removed");
 
+namespace {
   struct GlobalDCE : public ModulePass {
     // run - Do the GlobalDCE pass on the specified module, optionally updating
     // the specified callgraph to reflect the changes.


Index: llvm/lib/Transforms/IPO/GlobalOpt.cpp
diff -u llvm/lib/Transforms/IPO/GlobalOpt.cpp:1.79 llvm/lib/Transforms/IPO/GlobalOpt.cpp:1.80
--- llvm/lib/Transforms/IPO/GlobalOpt.cpp:1.79	Tue Dec 12 17:36:14 2006
+++ llvm/lib/Transforms/IPO/GlobalOpt.cpp	Tue Dec 19 16:09:18 2006
@@ -31,23 +31,19 @@
 #include <set>
 using namespace llvm;
 
-namespace {
-  Statistic NumMarked   ("globalopt", "Number of globals marked constant");
-  Statistic NumSRA      ("globalopt", "Number of aggregate globals broken "
-                           "into scalars");
-  Statistic NumHeapSRA  ("globalopt", "Number of heap objects SRA'd");
-  Statistic NumSubstitute("globalopt",
-                        "Number of globals with initializers stored into them");
-  Statistic NumDeleted  ("globalopt", "Number of globals deleted");
-  Statistic NumFnDeleted("globalopt", "Number of functions deleted");
-  Statistic NumGlobUses ("globalopt", "Number of global uses devirtualized");
-  Statistic NumLocalized("globalopt", "Number of globals localized");
-  Statistic NumShrunkToBool("globalopt",
-                              "Number of global vars shrunk to booleans");
-  Statistic NumFastCallFns("globalopt",
-                             "Number of functions converted to fastcc");
-  Statistic NumCtorsEvaluated("globalopt","Number of static ctors evaluated");
+STATISTIC(NumMarked    , "Number of globals marked constant");
+STATISTIC(NumSRA       , "Number of aggregate globals broken into scalars");
+STATISTIC(NumHeapSRA   , "Number of heap objects SRA'd");
+STATISTIC(NumSubstitute,"Number of globals with initializers stored into them");
+STATISTIC(NumDeleted   , "Number of globals deleted");
+STATISTIC(NumFnDeleted , "Number of functions deleted");
+STATISTIC(NumGlobUses  , "Number of global uses devirtualized");
+STATISTIC(NumLocalized , "Number of globals localized");
+STATISTIC(NumShrunkToBool  , "Number of global vars shrunk to booleans");
+STATISTIC(NumFastCallFns   , "Number of functions converted to fastcc");
+STATISTIC(NumCtorsEvaluated, "Number of static ctors evaluated");
 
+namespace {
   struct GlobalOpt : public ModulePass {
     virtual void getAnalysisUsage(AnalysisUsage &AU) const {
       AU.addRequired<TargetData>();


Index: llvm/lib/Transforms/IPO/IPConstantPropagation.cpp
diff -u llvm/lib/Transforms/IPO/IPConstantPropagation.cpp:1.20 llvm/lib/Transforms/IPO/IPConstantPropagation.cpp:1.21
--- llvm/lib/Transforms/IPO/IPConstantPropagation.cpp:1.20	Wed Dec  6 11:46:32 2006
+++ llvm/lib/Transforms/IPO/IPConstantPropagation.cpp	Tue Dec 19 16:09:18 2006
@@ -15,6 +15,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "ipconstprop"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Constants.h"
 #include "llvm/Instructions.h"
@@ -24,12 +25,10 @@
 #include "llvm/ADT/Statistic.h"
 using namespace llvm;
 
-namespace {
-  Statistic NumArgumentsProped("ipconstprop",
-                                 "Number of args turned into constants");
-  Statistic NumReturnValProped("ipconstprop",
-                              "Number of return values turned into constants");
+STATISTIC(NumArgumentsProped, "Number of args turned into constants");
+STATISTIC(NumReturnValProped, "Number of return values turned into constants");
 
+namespace {
   /// IPCP - The interprocedural constant propagation pass
   ///
   struct IPCP : public ModulePass {


Index: llvm/lib/Transforms/IPO/IndMemRemoval.cpp
diff -u llvm/lib/Transforms/IPO/IndMemRemoval.cpp:1.8 llvm/lib/Transforms/IPO/IndMemRemoval.cpp:1.9
--- llvm/lib/Transforms/IPO/IndMemRemoval.cpp:1.8	Tue Dec 12 18:50:17 2006
+++ llvm/lib/Transforms/IPO/IndMemRemoval.cpp	Tue Dec 19 16:09:18 2006
@@ -15,36 +15,27 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "indmemrem"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Pass.h"
 #include "llvm/Module.h"
-#include "llvm/Function.h"
 #include "llvm/Instructions.h"
 #include "llvm/Type.h"
-#include "llvm/Support/Debug.h"
 #include "llvm/ADT/Statistic.h"
-#include <fstream>
-#include <set>
 using namespace llvm;
 
-namespace {
-  Statistic NumBounceSites("indmemrem", "Number of sites modified");
-  Statistic NumBounce  ("indmemrem", "Number of bounce functions created");
+STATISTIC(NumBounceSites, "Number of sites modified");
+STATISTIC(NumBounce     , "Number of bounce functions created");
 
+namespace {
   class IndMemRemPass : public ModulePass {
-
   public:
-    IndMemRemPass();
     virtual bool runOnModule(Module &M);
   };
   RegisterPass<IndMemRemPass> X("indmemrem","Indirect Malloc and Free Removal");
 } // end anonymous namespace
 
 
-IndMemRemPass::IndMemRemPass()
-{
-}
-
 bool IndMemRemPass::runOnModule(Module &M) {
   //in Theory, all direct calls of malloc and free should be promoted
   //to intrinsics.  Therefor, this goes through and finds where the


Index: llvm/lib/Transforms/IPO/Inliner.cpp
diff -u llvm/lib/Transforms/IPO/Inliner.cpp:1.34 llvm/lib/Transforms/IPO/Inliner.cpp:1.35
--- llvm/lib/Transforms/IPO/Inliner.cpp:1.34	Wed Dec  6 11:46:32 2006
+++ llvm/lib/Transforms/IPO/Inliner.cpp	Tue Dec 19 16:09:18 2006
@@ -13,6 +13,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "inline"
 #include "Inliner.h"
 #include "llvm/Module.h"
 #include "llvm/Instructions.h"
@@ -25,10 +26,10 @@
 #include <set>
 using namespace llvm;
 
+STATISTIC(NumInlined, "Number of functions inlined");
+STATISTIC(NumDeleted, "Number of functions deleted because all callers found");
+
 namespace {
-  Statistic NumInlined("inline", "Number of functions inlined");
-  Statistic NumDeleted("inline",
-                       "Number of functions deleted because all callers found");
   cl::opt<unsigned>             // FIXME: 200 is VERY conservative
   InlineLimit("inline-threshold", cl::Hidden, cl::init(200),
         cl::desc("Control the amount of inlining to perform (default = 200)"));


Index: llvm/lib/Transforms/IPO/Internalize.cpp
diff -u llvm/lib/Transforms/IPO/Internalize.cpp:1.39 llvm/lib/Transforms/IPO/Internalize.cpp:1.40
--- llvm/lib/Transforms/IPO/Internalize.cpp:1.39	Wed Dec  6 19:30:31 2006
+++ llvm/lib/Transforms/IPO/Internalize.cpp	Tue Dec 19 16:09:18 2006
@@ -13,6 +13,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "internalize"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Pass.h"
 #include "llvm/Module.h"
@@ -23,9 +24,10 @@
 #include <set>
 using namespace llvm;
 
+STATISTIC(NumFunctions, "Number of functions internalized");
+STATISTIC(NumGlobals  , "Number of global vars internalized");
+
 namespace {
-  Statistic NumFunctions("internalize", "Number of functions internalized");
-  Statistic NumGlobals  ("internalize", "Number of global vars internalized");
 
   // APIFile - A file which contains a list of symbols that should not be marked
   // external.


Index: llvm/lib/Transforms/IPO/LoopExtractor.cpp
diff -u llvm/lib/Transforms/IPO/LoopExtractor.cpp:1.20 llvm/lib/Transforms/IPO/LoopExtractor.cpp:1.21
--- llvm/lib/Transforms/IPO/LoopExtractor.cpp:1.20	Wed Dec  6 11:46:32 2006
+++ llvm/lib/Transforms/IPO/LoopExtractor.cpp	Tue Dec 19 16:09:18 2006
@@ -14,6 +14,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "loop-extract"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Instructions.h"
 #include "llvm/Module.h"
@@ -25,9 +26,9 @@
 #include "llvm/ADT/Statistic.h"
 using namespace llvm;
 
-namespace {
-  Statistic NumExtracted("loop-extract", "Number of loops extracted");
+STATISTIC(NumExtracted, "Number of loops extracted");
 
+namespace {
   // FIXME: This is not a function pass, but the PassManager doesn't allow
   // Module passes to require FunctionPasses, so we can't get loop info if we're
   // not a function pass.


Index: llvm/lib/Transforms/IPO/LowerSetJmp.cpp
diff -u llvm/lib/Transforms/IPO/LowerSetJmp.cpp:1.33 llvm/lib/Transforms/IPO/LowerSetJmp.cpp:1.34
--- llvm/lib/Transforms/IPO/LowerSetJmp.cpp:1.33	Wed Dec  6 11:46:32 2006
+++ llvm/lib/Transforms/IPO/LowerSetJmp.cpp	Tue Dec 19 16:09:18 2006
@@ -33,6 +33,7 @@
 // pass invokable via the "opt" command at will.
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "lowersetjmp"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Constants.h"
 #include "llvm/DerivedTypes.h"
@@ -49,16 +50,12 @@
 #include "llvm/ADT/VectorExtras.h"
 using namespace llvm;
 
-namespace {
-  Statistic LongJmpsTransformed("lowersetjmp",
-                                  "Number of longjmps transformed");
-  Statistic SetJmpsTransformed("lowersetjmp",
-                                 "Number of setjmps transformed");
-  Statistic CallsTransformed("lowersetjmp",
-                               "Number of calls invokified");
-  Statistic InvokesTransformed("lowersetjmp",
-                                 "Number of invokes modified");
+STATISTIC(LongJmpsTransformed, "Number of longjmps transformed");
+STATISTIC(SetJmpsTransformed , "Number of setjmps transformed");
+STATISTIC(CallsTransformed   , "Number of calls invokified");
+STATISTIC(InvokesTransformed , "Number of invokes modified");
 
+namespace {
   //===--------------------------------------------------------------------===//
   // LowerSetJmp pass implementation.
   class LowerSetJmp : public ModulePass,


Index: llvm/lib/Transforms/IPO/PruneEH.cpp
diff -u llvm/lib/Transforms/IPO/PruneEH.cpp:1.25 llvm/lib/Transforms/IPO/PruneEH.cpp:1.26
--- llvm/lib/Transforms/IPO/PruneEH.cpp:1.25	Wed Dec  6 11:46:32 2006
+++ llvm/lib/Transforms/IPO/PruneEH.cpp	Tue Dec 19 16:09:18 2006
@@ -14,6 +14,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "prune-eh"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/CallGraphSCCPass.h"
 #include "llvm/Constants.h"
@@ -27,10 +28,10 @@
 #include <algorithm>
 using namespace llvm;
 
-namespace {
-  Statistic NumRemoved("prune-eh", "Number of invokes removed");
-  Statistic NumUnreach("prune-eh", "Number of noreturn calls optimized");
+STATISTIC(NumRemoved, "Number of invokes removed");
+STATISTIC(NumUnreach, "Number of noreturn calls optimized");
 
+namespace {
   struct PruneEH : public CallGraphSCCPass {
     /// DoesNotUnwind - This set contains all of the functions which we have
     /// determined cannot unwind.


Index: llvm/lib/Transforms/IPO/RaiseAllocations.cpp
diff -u llvm/lib/Transforms/IPO/RaiseAllocations.cpp:1.33 llvm/lib/Transforms/IPO/RaiseAllocations.cpp:1.34
--- llvm/lib/Transforms/IPO/RaiseAllocations.cpp:1.33	Tue Dec 12 18:50:17 2006
+++ llvm/lib/Transforms/IPO/RaiseAllocations.cpp	Tue Dec 19 16:09:18 2006
@@ -12,6 +12,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#define DEBUG_TYPE "raiseallocs"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Constants.h"
 #include "llvm/DerivedTypes.h"
@@ -22,9 +23,9 @@
 #include "llvm/ADT/Statistic.h"
 using namespace llvm;
 
-namespace {
-  Statistic NumRaised("raiseallocs", "Number of allocations raised");
+STATISTIC(NumRaised, "Number of allocations raised");
 
+namespace {
   // RaiseAllocations - Turn %malloc and %free calls into the appropriate
   // instruction.
   //


Index: llvm/lib/Transforms/IPO/SimplifyLibCalls.cpp
diff -u llvm/lib/Transforms/IPO/SimplifyLibCalls.cpp:1.76 llvm/lib/Transforms/IPO/SimplifyLibCalls.cpp:1.77
--- llvm/lib/Transforms/IPO/SimplifyLibCalls.cpp:1.76	Wed Dec 13 02:04:32 2006
+++ llvm/lib/Transforms/IPO/SimplifyLibCalls.cpp	Tue Dec 19 16:09:18 2006
@@ -31,17 +31,15 @@
 #include "llvm/Transforms/IPO.h"
 using namespace llvm;
 
-namespace {
-
 /// This statistic keeps track of the total number of library calls that have
 /// been simplified regardless of which call it is.
-Statistic SimplifiedLibCalls("simplify-libcalls",
-  "Number of library calls simplified");
-
-// Forward declarations
-class LibCallOptimization;
-class SimplifyLibCalls;
+STATISTIC(SimplifiedLibCalls, "Number of library calls simplified");
 
+namespace {
+  // Forward declarations
+  class LibCallOptimization;
+  class SimplifyLibCalls;
+  
 /// This list is populated by the constructor for LibCallOptimization class.
 /// Therefore all subclasses are registered here at static initialization time
 /// and this list is what the SimplifyLibCalls pass uses to apply the individual






More information about the llvm-commits mailing list