diff --git a/lib/CodeGen/LiveIntervalAnalysis.cpp b/lib/CodeGen/LiveIntervalAnalysis.cpp
index 8c6a7b5..fba0467 100644
--- a/lib/CodeGen/LiveIntervalAnalysis.cpp
+++ b/lib/CodeGen/LiveIntervalAnalysis.cpp
@@ -40,22 +40,22 @@
 namespace {
   RegisterAnalysis<LiveIntervals> X("liveintervals", "Live Interval Analysis");
 
-  Statistic<> numIntervals
+  static Statistic<> numIntervals
   ("liveintervals", "Number of original intervals");
 
-  Statistic<> numIntervalsAfter
+  static Statistic<> numIntervalsAfter
   ("liveintervals", "Number of intervals after coalescing");
 
-  Statistic<> numJoins
+  static Statistic<> numJoins
   ("liveintervals", "Number of interval joins performed");
 
-  Statistic<> numPeep
+  static Statistic<> numPeep
   ("liveintervals", "Number of identity moves eliminated after coalescing");
 
-  Statistic<> numFolded
+  static Statistic<> numFolded
   ("liveintervals", "Number of loads/stores folded into instructions");
 
-  cl::opt<bool>
+  static cl::opt<bool>
   EnableJoining("join-liveintervals",
                 cl::desc("Join compatible live intervals"),
                 cl::init(true));
diff --git a/lib/CodeGen/PHIElimination.cpp b/lib/CodeGen/PHIElimination.cpp
index 5b8798f..ffbae2a 100644
--- a/lib/CodeGen/PHIElimination.cpp
+++ b/lib/CodeGen/PHIElimination.cpp
@@ -29,8 +29,8 @@
 using namespace llvm;
 
 namespace {
-  Statistic<> NumAtomic("phielim", "Number of atomic phis lowered");
-  Statistic<> NumSimple("phielim", "Number of simple phis lowered");
+  static Statistic<> NumAtomic("phielim", "Number of atomic phis lowered");
+  static Statistic<> NumSimple("phielim", "Number of simple phis lowered");
   
   struct VISIBILITY_HIDDEN PNE : public MachineFunctionPass {
     bool runOnMachineFunction(MachineFunction &Fn) {
diff --git a/lib/CodeGen/Passes.cpp b/lib/CodeGen/Passes.cpp
index a6ba120..435d6b5 100644
--- a/lib/CodeGen/Passes.cpp
+++ b/lib/CodeGen/Passes.cpp
@@ -20,7 +20,7 @@
 namespace {
   enum RegAllocName { simple, local, linearscan };
 
-  cl::opt<RegAllocName>
+  static cl::opt<RegAllocName>
   RegAlloc(
     "regalloc",
     cl::desc("Register allocator to use: (default = linearscan)"),
diff --git a/lib/CodeGen/RegAllocLinearScan.cpp b/lib/CodeGen/RegAllocLinearScan.cpp
index f12424c..550d2a4 100644
--- a/lib/CodeGen/RegAllocLinearScan.cpp
+++ b/lib/CodeGen/RegAllocLinearScan.cpp
@@ -37,9 +37,10 @@
 
 namespace {
 
-  Statistic<double> efficiency
+  static Statistic<double> efficiency
   ("regalloc", "Ratio of intervals processed over total intervals");
-  Statistic<> NumBacktracks("regalloc", "Number of times we had to backtrack");
+  static Statistic<> NumBacktracks
+  ("regalloc", "Number of times we had to backtrack");
 
   static unsigned numIterations = 0;
   static unsigned numIntervals = 0;
diff --git a/lib/CodeGen/RegAllocLocal.cpp b/lib/CodeGen/RegAllocLocal.cpp
index 891ee3c..1c90ae1 100644
--- a/lib/CodeGen/RegAllocLocal.cpp
+++ b/lib/CodeGen/RegAllocLocal.cpp
@@ -31,10 +31,10 @@
 using namespace llvm;
 
 namespace {
-  Statistic<> NumStores("ra-local", "Number of stores added");
-  Statistic<> NumLoads ("ra-local", "Number of loads added");
-  Statistic<> NumFolded("ra-local", "Number of loads/stores folded into "
-                        "instructions");
+  static Statistic<> NumStores("ra-local", "Number of stores added");
+  static Statistic<> NumLoads ("ra-local", "Number of loads added");
+  static Statistic<> NumFolded("ra-local", "Number of loads/stores folded into "
+                               "instructions");
   class VISIBILITY_HIDDEN RA : public MachineFunctionPass {
     const TargetMachine *TM;
     MachineFunction *MF;
diff --git a/lib/CodeGen/RegAllocSimple.cpp b/lib/CodeGen/RegAllocSimple.cpp
index fc90dd1..5d94f0a 100644
--- a/lib/CodeGen/RegAllocSimple.cpp
+++ b/lib/CodeGen/RegAllocSimple.cpp
@@ -30,8 +30,8 @@
 using namespace llvm;
 
 namespace {
-  Statistic<> NumStores("ra-simple", "Number of stores added");
-  Statistic<> NumLoads ("ra-simple", "Number of loads added");
+  static Statistic<> NumStores("ra-simple", "Number of stores added");
+  static Statistic<> NumLoads ("ra-simple", "Number of loads added");
 
   class VISIBILITY_HIDDEN RegAllocSimple : public MachineFunctionPass {
     MachineFunction *MF;
diff --git a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
index 241801c..a46ad1a 100644
--- a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+++ b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
@@ -42,7 +42,7 @@
 using namespace llvm;
 
 namespace {
-  Statistic<> NodesCombined ("dagcombiner", "Number of dag nodes combined");
+  static Statistic<> NodesCombined ("dagcombiner", "Number of dag nodes combined");
 
   class VISIBILITY_HIDDEN DAGCombiner {
     SelectionDAG &DAG;
diff --git a/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp b/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp
index a0858d9..ee01370 100644
--- a/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp
+++ b/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp
@@ -34,8 +34,8 @@
 using namespace llvm;
 
 namespace {
-  Statistic<> NumNoops ("scheduler", "Number of noops inserted");
-  Statistic<> NumStalls("scheduler", "Number of pipeline stalls");
+  static Statistic<> NumNoops ("scheduler", "Number of noops inserted");
+  static Statistic<> NumStalls("scheduler", "Number of pipeline stalls");
 }
 
 namespace {
diff --git a/lib/CodeGen/TwoAddressInstructionPass.cpp b/lib/CodeGen/TwoAddressInstructionPass.cpp
index fa3ceff..c778a92 100644
--- a/lib/CodeGen/TwoAddressInstructionPass.cpp
+++ b/lib/CodeGen/TwoAddressInstructionPass.cpp
@@ -45,11 +45,11 @@
 using namespace llvm;
 
 namespace {
-  Statistic<> NumTwoAddressInstrs("twoaddressinstruction",
+  static Statistic<> NumTwoAddressInstrs("twoaddressinstruction",
                                   "Number of two-address instructions");
-  Statistic<> NumCommuted("twoaddressinstruction",
+  static Statistic<> NumCommuted("twoaddressinstruction",
                           "Number of instructions commuted to coalesce");
-  Statistic<> NumConvertedTo3Addr("twoaddressinstruction",
+  static Statistic<> NumConvertedTo3Addr("twoaddressinstruction",
                                 "Number of instructions promoted to 3-address");
 
   struct VISIBILITY_HIDDEN TwoAddressInstructionPass
diff --git a/lib/CodeGen/VirtRegMap.cpp b/lib/CodeGen/VirtRegMap.cpp
index 5263f88..86fef3e 100644
--- a/lib/CodeGen/VirtRegMap.cpp
+++ b/lib/CodeGen/VirtRegMap.cpp
@@ -34,16 +34,16 @@
 using namespace llvm;
 
 namespace {
-  Statistic<> NumSpills("spiller", "Number of register spills");
-  Statistic<> NumStores("spiller", "Number of stores added");
-  Statistic<> NumLoads ("spiller", "Number of loads added");
-  Statistic<> NumReused("spiller", "Number of values reused");
-  Statistic<> NumDSE   ("spiller", "Number of dead stores elided");
-  Statistic<> NumDCE   ("spiller", "Number of copies elided");
+  static Statistic<> NumSpills("spiller", "Number of register spills");
+  static Statistic<> NumStores("spiller", "Number of stores added");
+  static Statistic<> NumLoads ("spiller", "Number of loads added");
+  static Statistic<> NumReused("spiller", "Number of values reused");
+  static Statistic<> NumDSE   ("spiller", "Number of dead stores elided");
+  static Statistic<> NumDCE   ("spiller", "Number of copies elided");
 
   enum SpillerName { simple, local };
 
-  cl::opt<SpillerName>
+  static cl::opt<SpillerName>
   SpillerOpt("spiller",
              cl::desc("Spiller to use: (default: local)"),
              cl::Prefix,
