diff options
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp | 5 | ||||
| -rw-r--r-- | llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp | 3 | 
2 files changed, 7 insertions, 1 deletions
| diff --git a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp index efd6d10c336..c3ae5c8bbf0 100644 --- a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp +++ b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp @@ -436,7 +436,10 @@ bool PPCAsmPrinter::PrintAsmMemoryOperand(const MachineInstr *MI, unsigned OpNo,                                            const char *ExtraCode) {    if (ExtraCode && ExtraCode[0])      return true; // Unknown modifier. -  printMemRegReg(MI, OpNo); +  if (MI->getOperand(OpNo).isRegister()) +    printMemRegReg(MI, OpNo); +  else +    printMemRegImm(MI, OpNo);    return false;  } diff --git a/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp b/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp index 4324b9d598e..fb80350c557 100644 --- a/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp +++ b/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp @@ -522,6 +522,9 @@ PPCRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II) const {    }    // Take into account whether it's an add or mem instruction    unsigned OffIdx = (i == 2) ? 1 : 2; +  if (MI.getOpcode() == TargetInstrInfo::INLINEASM) +    OffIdx = i-1; +          // Get the frame index.    int FrameIndex = MI.getOperand(i).getFrameIndex(); | 

