[X86] Enable printAliasInstr for the Intel assembly printer so that AAM and AAD will print without an immediate when the immediate is 10.
llvm-svn: 355997
This commit is contained in:
parent
8b49b6bed6
commit
750efba67c
|
|
@ -28,6 +28,8 @@ using namespace llvm;
|
||||||
|
|
||||||
#define DEBUG_TYPE "asm-printer"
|
#define DEBUG_TYPE "asm-printer"
|
||||||
|
|
||||||
|
// Include the auto-generated portion of the assembly writer.
|
||||||
|
#define PRINT_ALIAS_INSTR
|
||||||
#include "X86GenAsmWriter1.inc"
|
#include "X86GenAsmWriter1.inc"
|
||||||
|
|
||||||
void X86IntelInstPrinter::printRegName(raw_ostream &OS, unsigned RegNo) const {
|
void X86IntelInstPrinter::printRegName(raw_ostream &OS, unsigned RegNo) const {
|
||||||
|
|
@ -43,7 +45,7 @@ void X86IntelInstPrinter::printInst(const MCInst *MI, raw_ostream &OS,
|
||||||
if (MI->getOpcode() == X86::DATA16_PREFIX &&
|
if (MI->getOpcode() == X86::DATA16_PREFIX &&
|
||||||
STI.getFeatureBits()[X86::Mode16Bit]) {
|
STI.getFeatureBits()[X86::Mode16Bit]) {
|
||||||
OS << "\tdata32";
|
OS << "\tdata32";
|
||||||
} else
|
} else if (!printAliasInstr(MI, OS))
|
||||||
printInstruction(MI, OS);
|
printInstruction(MI, OS);
|
||||||
|
|
||||||
// Next always print the annotation.
|
// Next always print the annotation.
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,12 @@ public:
|
||||||
void printInst(const MCInst *MI, raw_ostream &OS, StringRef Annot,
|
void printInst(const MCInst *MI, raw_ostream &OS, StringRef Annot,
|
||||||
const MCSubtargetInfo &STI) override;
|
const MCSubtargetInfo &STI) override;
|
||||||
|
|
||||||
|
// Autogenerated by tblgen, returns true if we successfully printed an
|
||||||
|
// alias.
|
||||||
|
bool printAliasInstr(const MCInst *MI, raw_ostream &OS);
|
||||||
|
void printCustomAliasOperand(const MCInst *MI, unsigned OpIdx,
|
||||||
|
unsigned PrintMethodIdx, raw_ostream &O);
|
||||||
|
|
||||||
// Autogenerated by tblgen.
|
// Autogenerated by tblgen.
|
||||||
void printInstruction(const MCInst *MI, raw_ostream &O);
|
void printInstruction(const MCInst *MI, raw_ostream &O);
|
||||||
static const char *getRegisterName(unsigned RegNo);
|
static const char *getRegisterName(unsigned RegNo);
|
||||||
|
|
|
||||||
|
|
@ -10808,3 +10808,11 @@ enclu
|
||||||
// CHECK: enclv
|
// CHECK: enclv
|
||||||
// CHECK: encoding: [0x0f,0x01,0xc0]
|
// CHECK: encoding: [0x0f,0x01,0xc0]
|
||||||
enclv
|
enclv
|
||||||
|
|
||||||
|
// CHECK: aam # encoding: [0xd4,0x0a]
|
||||||
|
// INTEL: aam{{$}}
|
||||||
|
aam $10
|
||||||
|
|
||||||
|
// CHECK: aad # encoding: [0xd5,0x0a]
|
||||||
|
// INTEL: aad{{$}}
|
||||||
|
aad $10
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue