forked from OSchip/llvm-project
If we're not using reg+reg offset we're using reg+imm, set the opcode
to be the one we want to use. bugpoint reduced testcase is a little large, I'll see if I can simplify it down more. Fixes part of rdar://8782207 llvm-svn: 122307
This commit is contained in:
parent
0b0c57806b
commit
6df5ff8ce6
|
@ -656,7 +656,7 @@ Thumb1RegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
|
|||
*this, dl);
|
||||
}
|
||||
|
||||
MI.setDesc(TII.get(ARM::tLDRr));
|
||||
MI.setDesc(TII.get(UseRR ? ARM::tLDRr : ARM::tLDRi));
|
||||
MI.getOperand(i).ChangeToRegister(TmpReg, false, false, true);
|
||||
if (UseRR)
|
||||
// Use [reg, reg] addrmode.
|
||||
|
@ -676,7 +676,7 @@ Thumb1RegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
|
|||
} else
|
||||
emitThumbRegPlusImmediate(MBB, II, VReg, FrameReg, Offset, TII,
|
||||
*this, dl);
|
||||
MI.setDesc(TII.get(ARM::tSTRr));
|
||||
MI.setDesc(TII.get(UseRR ? ARM::tSTRr : ARM::tSTRi));
|
||||
MI.getOperand(i).ChangeToRegister(VReg, false, false, true);
|
||||
if (UseRR) // Use [reg, reg] addrmode.
|
||||
MI.addOperand(MachineOperand::CreateReg(FrameReg, false));
|
||||
|
|
Loading…
Reference in New Issue