Enable improved spilling costs by default. This speeds up viterbi on x86
authorChris Lattner <sabre@nondot.org>
Tue, 7 Nov 2006 18:04:58 +0000 (18:04 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 7 Nov 2006 18:04:58 +0000 (18:04 +0000)
by 40%, FreeBench/fourinarow by 20%, and many other programs 10-25%.

On PPC, this speeds up fourinarow by 18%, and probably other things as well.

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

lib/CodeGen/LiveIntervalAnalysis.cpp

index 8b534af74b3c38c196a1cee761acc15ba951f78b..e1cd741d7a886a17ce64d42176dcf3bde86df15a 100644 (file)
@@ -59,9 +59,6 @@ namespace {
   EnableJoining("join-liveintervals",
                 cl::desc("Coallesce copies (default=true)"),
                 cl::init(true));
-  static cl::opt<bool>
-  EnableReweight("enable-majik-f00");
-  
 }
 
 void LiveIntervals::getAnalysisUsage(AnalysisUsage &AU) const {
@@ -221,16 +218,14 @@ bool LiveIntervals::runOnMachineFunction(MachineFunction &fn) {
       if (isZeroLengthInterval(&LI))
         LI.weight = HUGE_VALF;
       
-      if (EnableReweight) {
-        // Divide the weight of the interval by its size.  This encourages 
-        // spilling of intervals that are large and have few uses, and
-        // discourages spilling of small intervals with many uses.
-        unsigned Size = 0;
-        for (LiveInterval::iterator II = LI.begin(), E = LI.end(); II != E;++II)
-          Size += II->end - II->start;
+      // Divide the weight of the interval by its size.  This encourages 
+      // spilling of intervals that are large and have few uses, and
+      // discourages spilling of small intervals with many uses.
+      unsigned Size = 0;
+      for (LiveInterval::iterator II = LI.begin(), E = LI.end(); II != E;++II)
+        Size += II->end - II->start;
       
-        LI.weight /= Size;
-      }
+      LI.weight /= Size;
     }
   }