1414#include " X86IntelInstPrinter.h"
1515#include " X86BaseInfo.h"
1616#include " X86InstComments.h"
17+ #include " llvm/MC/MCAsmInfo.h"
1718#include " llvm/MC/MCExpr.h"
1819#include " llvm/MC/MCInst.h"
1920#include " llvm/MC/MCInstrAnalysis.h"
@@ -372,7 +373,7 @@ void X86IntelInstPrinter::printOperand(const MCInst *MI, unsigned OpNo,
372373 } else {
373374 assert (Op.isExpr () && " unknown operand kind in printOperand" );
374375 O << " offset " ;
375- Op. getExpr ()-> print ( O, &MAI );
376+ MAI. printExpr ( O, *Op. getExpr () );
376377 }
377378}
378379
@@ -415,7 +416,7 @@ void X86IntelInstPrinter::printMemReference(const MCInst *MI, unsigned Op,
415416 if (!DispSpec.isImm ()) {
416417 if (NeedPlus) O << " + " ;
417418 assert (DispSpec.isExpr () && " non-immediate displacement for LEA?" );
418- DispSpec. getExpr ()-> print ( O, &MAI );
419+ MAI. printExpr ( O, *DispSpec. getExpr () );
419420 } else {
420421 int64_t DispVal = DispSpec.getImm ();
421422 if (DispVal || (!IndexReg.getReg () && !BaseReg.getReg ())) {
@@ -470,7 +471,7 @@ void X86IntelInstPrinter::printMemOffset(const MCInst *MI, unsigned Op,
470471 markup (O, Markup::Immediate) << formatImm (DispSpec.getImm ());
471472 } else {
472473 assert (DispSpec.isExpr () && " non-immediate displacement?" );
473- DispSpec. getExpr ()-> print ( O, &MAI );
474+ MAI. printExpr ( O, *DispSpec. getExpr () );
474475 }
475476
476477 O << ' ]' ;
@@ -479,7 +480,7 @@ void X86IntelInstPrinter::printMemOffset(const MCInst *MI, unsigned Op,
479480void X86IntelInstPrinter::printU8Imm (const MCInst *MI, unsigned Op,
480481 raw_ostream &O) {
481482 if (MI->getOperand (Op).isExpr ())
482- return MI->getOperand (Op).getExpr ()-> print (O, &MAI );
483+ return MAI. printExpr (O, * MI->getOperand (Op).getExpr ());
483484
484485 markup (O, Markup::Immediate) << formatImm (MI->getOperand (Op).getImm () & 0xff );
485486}
0 commit comments