From 805543068eb7407d718b0359f54b342d7094d0ea Mon Sep 17 00:00:00 2001 From: Jakob Stoklund Olesen Date: Tue, 27 Mar 2012 17:33:52 +0000 Subject: [PATCH] ARMLoadStoreOptimizer invalidates register liveness. This pass tries to update kill flags, but there are still many bugs. Passes after the load/store optimizer don't need accurate liveness, so don't even try. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153519 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/ARM/ARMLoadStoreOptimizer.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/Target/ARM/ARMLoadStoreOptimizer.cpp b/lib/Target/ARM/ARMLoadStoreOptimizer.cpp index 51dfa65da62..5b729a642b7 100644 --- a/lib/Target/ARM/ARMLoadStoreOptimizer.cpp +++ b/lib/Target/ARM/ARMLoadStoreOptimizer.cpp @@ -1411,6 +1411,10 @@ bool ARMLoadStoreOpt::runOnMachineFunction(MachineFunction &Fn) { } delete RS; + + // Kill flags aren't updated accurately by this pass. + Fn.getRegInfo().invalidateLiveness(); + return Modified; }