diff options
author | Jim Grosbach <grosbach@apple.com> | 2010-10-15 17:35:17 +0000 |
---|---|---|
committer | Jim Grosbach <grosbach@apple.com> | 2010-10-15 17:35:17 +0000 |
commit | d15723c22aa3df75174f77f9d3059efc4dc0f9c5 (patch) | |
tree | 76b489a8d2786a2c3c8373f29dda453406d63cfb | |
parent | 68a335e1856f6daeb8710ff34e852c9d8506b5d7 (diff) | |
download | bcm5719-llvm-d15723c22aa3df75174f77f9d3059efc4dc0f9c5.tar.gz bcm5719-llvm-d15723c22aa3df75174f77f9d3059efc4dc0f9c5.zip |
When expanding the MOVsr[la]_flag pseudos, the CPSR implicit def becomes
an explicit def. Make sure to capture that properly. rdar://8556556
llvm-svn: 116591
-rw-r--r-- | llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp b/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp index 5dceeb1967f..836f69d6137 100644 --- a/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp +++ b/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp @@ -586,8 +586,7 @@ bool ARMExpandPseudo::ExpandMBB(MachineBasicBlock &MBB) { .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; } |