forked from OSchip/llvm-project
Follow up on new support for memory operands in ARM inline assembly.
This fixes pr4233. llvm-svn: 72115
This commit is contained in:
parent
670da9a22a
commit
840e3281ff
|
@ -688,6 +688,10 @@ void ARMRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
|
||||||
unsigned AddrMode = (Desc.TSFlags & ARMII::AddrModeMask);
|
unsigned AddrMode = (Desc.TSFlags & ARMII::AddrModeMask);
|
||||||
bool isSub = false;
|
bool isSub = false;
|
||||||
|
|
||||||
|
// Memory operands in inline assembly always use AddrMode2.
|
||||||
|
if (Opcode == ARM::INLINEASM)
|
||||||
|
AddrMode = ARMII::AddrMode2;
|
||||||
|
|
||||||
if (Opcode == ARM::ADDri) {
|
if (Opcode == ARM::ADDri) {
|
||||||
Offset += MI.getOperand(i+1).getImm();
|
Offset += MI.getOperand(i+1).getImm();
|
||||||
if (Offset == 0) {
|
if (Offset == 0) {
|
||||||
|
|
Loading…
Reference in New Issue