ARM: Transfer kill flag when lowering VSTMQIA to VSTMDIA.
authorMatthias Braun <matze@braunis.de>
Mon, 16 Feb 2015 19:34:30 +0000 (19:34 +0000)
committerMatthias Braun <matze@braunis.de>
Mon, 16 Feb 2015 19:34:30 +0000 (19:34 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229425 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMExpandPseudoInsts.cpp

index fb98a4d5f962df45d49363e3719174c574a8c71c..4438f50758dc7fc1f902072a495b68f202874d75 100644 (file)
@@ -1132,7 +1132,8 @@ bool ARMExpandPseudo::ExpandMI(MachineBasicBlock &MBB,
       // Add the source operands (D subregs).
       unsigned D0 = TRI->getSubReg(SrcReg, ARM::dsub_0);
       unsigned D1 = TRI->getSubReg(SrcReg, ARM::dsub_1);
-      MIB.addReg(D0).addReg(D1);
+      MIB.addReg(D0, SrcIsKill ? RegState::Kill : 0)
+         .addReg(D1, SrcIsKill ? RegState::Kill : 0);
 
       if (SrcIsKill)      // Add an implicit kill for the Q register.
         MIB->addRegisterKilled(SrcReg, TRI, true);