diff options
Diffstat (limited to 'contrib/llvm-project/llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp')
| -rw-r--r-- | contrib/llvm-project/llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp | 34 |
1 files changed, 13 insertions, 21 deletions
diff --git a/contrib/llvm-project/llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp b/contrib/llvm-project/llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp index 4b36135da352..e96f9279826b 100644 --- a/contrib/llvm-project/llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp +++ b/contrib/llvm-project/llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp @@ -36,7 +36,7 @@ using namespace llvm; #include "X86GenAsmWriter.inc" void X86ATTInstPrinter::printRegName(raw_ostream &OS, MCRegister Reg) const { - OS << markup("<reg:") << '%' << getRegisterName(Reg) << markup(">"); + markup(OS, Markup::Register) << '%' << getRegisterName(Reg); } void X86ATTInstPrinter::printInst(const MCInst *MI, uint64_t Address, @@ -386,7 +386,7 @@ void X86ATTInstPrinter::printOperand(const MCInst *MI, unsigned OpNo, } else if (Op.isImm()) { // Print immediates as signed values. int64_t Imm = Op.getImm(); - O << markup("<imm:") << '$' << formatImm(Imm) << markup(">"); + markup(O, Markup::Immediate) << '$' << formatImm(Imm); // TODO: This should be in a helper function in the base class, so it can // be used by other printers. @@ -405,9 +405,9 @@ void X86ATTInstPrinter::printOperand(const MCInst *MI, unsigned OpNo, } } else { assert(Op.isExpr() && "unknown operand kind in printOperand"); - O << markup("<imm:") << '$'; + WithMarkup M = markup(O, Markup::Immediate); + O << '$'; Op.getExpr()->print(O, &MAI); - O << markup(">"); } } @@ -427,7 +427,7 @@ void X86ATTInstPrinter::printMemReference(const MCInst *MI, unsigned Op, const MCOperand &IndexReg = MI->getOperand(Op + X86::AddrIndexReg); const MCOperand &DispSpec = MI->getOperand(Op + X86::AddrDisp); - O << markup("<mem:"); + WithMarkup M = markup(O, Markup::Memory); // If this has a segment register, print it. printOptionalSegReg(MI, Op + X86::AddrSegmentReg, O); @@ -451,19 +451,17 @@ void X86ATTInstPrinter::printMemReference(const MCInst *MI, unsigned Op, printOperand(MI, Op + X86::AddrIndexReg, O); unsigned ScaleVal = MI->getOperand(Op + X86::AddrScaleAmt).getImm(); if (ScaleVal != 1) { - O << ',' << markup("<imm:") << ScaleVal // never printed in hex. - << markup(">"); + O << ','; + markup(O, Markup::Immediate) << ScaleVal; // never printed in hex. } } O << ')'; } - - O << markup(">"); } void X86ATTInstPrinter::printSrcIdx(const MCInst *MI, unsigned Op, raw_ostream &O) { - O << markup("<mem:"); + WithMarkup M = markup(O, Markup::Memory); // If this has a segment register, print it. printOptionalSegReg(MI, Op + 1, O); @@ -471,26 +469,22 @@ void X86ATTInstPrinter::printSrcIdx(const MCInst *MI, unsigned Op, O << "("; printOperand(MI, Op, O); O << ")"; - - O << markup(">"); } void X86ATTInstPrinter::printDstIdx(const MCInst *MI, unsigned Op, raw_ostream &O) { - O << markup("<mem:"); + WithMarkup M = markup(O, Markup::Memory); O << "%es:("; printOperand(MI, Op, O); O << ")"; - - O << markup(">"); } void X86ATTInstPrinter::printMemOffset(const MCInst *MI, unsigned Op, raw_ostream &O) { const MCOperand &DispSpec = MI->getOperand(Op); - O << markup("<mem:"); + WithMarkup M = markup(O, Markup::Memory); // If this has a segment register, print it. printOptionalSegReg(MI, Op + 1, O); @@ -501,8 +495,6 @@ void X86ATTInstPrinter::printMemOffset(const MCInst *MI, unsigned Op, assert(DispSpec.isExpr() && "non-immediate displacement?"); DispSpec.getExpr()->print(O, &MAI); } - - O << markup(">"); } void X86ATTInstPrinter::printU8Imm(const MCInst *MI, unsigned Op, @@ -510,8 +502,8 @@ void X86ATTInstPrinter::printU8Imm(const MCInst *MI, unsigned Op, if (MI->getOperand(Op).isExpr()) return printOperand(MI, Op, O); - O << markup("<imm:") << '$' << formatImm(MI->getOperand(Op).getImm() & 0xff) - << markup(">"); + markup(O, Markup::Immediate) + << '$' << formatImm(MI->getOperand(Op).getImm() & 0xff); } void X86ATTInstPrinter::printSTiRegOperand(const MCInst *MI, unsigned OpNo, @@ -520,7 +512,7 @@ void X86ATTInstPrinter::printSTiRegOperand(const MCInst *MI, unsigned OpNo, unsigned Reg = Op.getReg(); // Override the default printing to print st(0) instead st. if (Reg == X86::ST0) - OS << markup("<reg:") << "%st(0)" << markup(">"); + markup(OS, Markup::Register) << "%st(0)"; else printRegName(OS, Reg); } |
