[llvm-commits] [llvm] r116591 - /llvm/trunk/lib/Target/ARM/ARMExpandPseudoInsts.cpp

Jim Grosbach grosbach at apple.com
Fri Oct 15 10:35:17 PDT 2010


Author: grosbach
Date: Fri Oct 15 12:35:17 2010
New Revision: 116591

URL: http://llvm.org/viewvc/llvm-project?rev=116591&view=rev
Log:
When expanding the MOVsr[la]_flag pseudos, the CPSR implicit def becomes
an explicit def. Make sure to capture that properly. rdar://8556556

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

Modified: llvm/trunk/lib/Target/ARM/ARMExpandPseudoInsts.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMExpandPseudoInsts.cpp?rev=116591&r1=116590&r2=116591&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMExpandPseudoInsts.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMExpandPseudoInsts.cpp Fri Oct 15 12:35:17 2010
@@ -586,8 +586,7 @@
         .addReg(0)
         .addImm(ARM_AM::getSORegOpc((Opcode == ARM::MOVsrl_flag ? ARM_AM::lsr
                                      : ARM_AM::asr), 1)))
-        .addReg(ARM::CPSR);
-      TransferImpOps(MI, MIB, MIB);
+        .addReg(ARM::CPSR, getDefRegState(true));
       MI.eraseFromParent();
       break;
     }





More information about the llvm-commits mailing list