diff options
author | Chad Rosier <mcrosier@apple.com> | 2011-10-10 01:03:35 +0000 |
---|---|---|
committer | Chad Rosier <mcrosier@apple.com> | 2011-10-10 01:03:35 +0000 |
commit | 29b9d7e4ea7521be25bccdb66ecd9c9df5ed8b4b (patch) | |
tree | c0eaaef1e75d79ee4f5568e096fb228a50662066 /lib/Target/ARM/Thumb1RegisterInfo.cpp | |
parent | 68226a4d4627804c594d31344901455eb95ec93c (diff) | |
download | llvm-29b9d7e4ea7521be25bccdb66ecd9c9df5ed8b4b.tar.gz llvm-29b9d7e4ea7521be25bccdb66ecd9c9df5ed8b4b.tar.bz2 llvm-29b9d7e4ea7521be25bccdb66ecd9c9df5ed8b4b.tar.xz |
Fix a regression from r138445. If we're loading from the frame/base pointer
the tADDrSPi instruction can't be used. Make sure we're updating the opcode
to tADDi3 in all cases.
rdar://10254707
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141523 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/Thumb1RegisterInfo.cpp')
-rw-r--r-- | lib/Target/ARM/Thumb1RegisterInfo.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/Target/ARM/Thumb1RegisterInfo.cpp b/lib/Target/ARM/Thumb1RegisterInfo.cpp index d6b0377809..e8ed482a66 100644 --- a/lib/Target/ARM/Thumb1RegisterInfo.cpp +++ b/lib/Target/ARM/Thumb1RegisterInfo.cpp @@ -454,6 +454,7 @@ rewriteFrameIndex(MachineBasicBlock::iterator II, unsigned FrameRegIdx, // r0 = add sp, 255*4 // r0 = add r0, (imm - 255*4) if (Opcode == ARM::tADDi3) { + MI.setDesc(TII.get(Opcode)); removeOperands(MI, FrameRegIdx); MachineInstrBuilder MIB(&MI); AddDefaultPred(AddDefaultT1CC(MIB).addReg(FrameReg).addImm(Mask)); |