[llvm-commits] [llvm] r112534 - /llvm/trunk/lib/Target/ARM/ARMLoadStoreOptimizer.cpp

Jakob Stoklund Olesen stoklund at 2pi.dk
Mon Aug 30 14:52:40 PDT 2010


Author: stoklund
Date: Mon Aug 30 16:52:40 2010
New Revision: 112534

URL: http://llvm.org/viewvc/llvm-project?rev=112534&view=rev
Log:
Remember to clear the shadow kill flag at the same time as clearing the real
kill flag.

This could cause duplicate kill flags when the same register was used twice in a
continuous sequence of STRs.

There is no small test case. <rdar://problem/8218046>

Modified:
    llvm/trunk/lib/Target/ARM/ARMLoadStoreOptimizer.cpp

Modified: llvm/trunk/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMLoadStoreOptimizer.cpp?rev=112534&r1=112533&r2=112534&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMLoadStoreOptimizer.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMLoadStoreOptimizer.cpp Mon Aug 30 16:52:40 2010
@@ -324,6 +324,7 @@
       if (KilledRegs.count(Reg)) {
         unsigned j = Killer[Reg];
         memOps[j].MBBI->getOperand(0).setIsKill(false);
+        memOps[j].isKill = false;
       }
     }
     MBB.erase(memOps[i].MBBI);





More information about the llvm-commits mailing list