diff options
-rw-r--r-- | llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp index a8d4303939a..568ad3b6018 100644 --- a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp +++ b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp @@ -96,6 +96,9 @@ public: void EmitInstruction(const MachineInstr *MI) override; + /// This function is for PrintAsmOperand and PrintAsmMemoryOperand, + /// invoked by EmitMSInlineAsmStr and EmitGCCInlineAsmStr only. + /// The \p MI would be INLINEASM ONLY. void printOperand(const MachineInstr *MI, unsigned OpNo, raw_ostream &O); bool PrintAsmOperand(const MachineInstr *MI, unsigned OpNo, @@ -164,8 +167,9 @@ void PPCAsmPrinter::printOperand(const MachineInstr *MI, unsigned OpNo, switch (MO.getType()) { case MachineOperand::MO_Register: { - unsigned Reg = PPCInstrInfo::getRegNumForOperand(MI->getDesc(), - MO.getReg(), OpNo); + // The MI is INLINEASM ONLY and UseVSXReg is always false. + unsigned Reg = + PPCInstrInfo::getRegNumForOperand(MI->getDesc(), MO.getReg(), OpNo); const char *RegName = PPCInstPrinter::getRegisterName(Reg); |