[llvm-commits] [llvm] r59086 - /llvm/trunk/lib/CodeGen/PreAllocSplitting.cpp

Owen Anderson resistor at mac.com
Tue Nov 11 14:11:27 PST 2008


Author: resistor
Date: Tue Nov 11 16:11:27 2008
New Revision: 59086

URL: http://llvm.org/viewvc/llvm-project?rev=59086&view=rev
Log:
Don't walk into predecessors in which the vreg is not live when doing shrinkwrapping.
This lets several failing tests get farther along, but doesn't completely fix any of them.

Modified:
    llvm/trunk/lib/CodeGen/PreAllocSplitting.cpp

Modified: llvm/trunk/lib/CodeGen/PreAllocSplitting.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/PreAllocSplitting.cpp?rev=59086&r1=59085&r2=59086&view=diff

==============================================================================
--- llvm/trunk/lib/CodeGen/PreAllocSplitting.cpp (original)
+++ llvm/trunk/lib/CodeGen/PreAllocSplitting.cpp Tue Nov 11 16:11:27 2008
@@ -618,6 +618,8 @@
       // Pred is the def bb and the def reaches other val#s, we must
       // allow the value to be live out of the bb.
       continue;
+    if (!CurrLI->liveAt(LIs->getMBBEndIdx(Pred)-1))
+      return;
     ShrinkWrapLiveInterval(ValNo, Pred, MBB, DefMBB, Visited,
                            Uses, UseMIs, UseMBBs);
   }





More information about the llvm-commits mailing list