LLVM API Documentation
#include <AArch64InstPrinter.h>
Static Public Member Functions | |
static const char * | getRegisterName (unsigned RegNo) |
static const char * | getInstructionName (unsigned Opcode) |
Additional Inherited Members | |
![]() | |
void | printAnnotation (raw_ostream &OS, StringRef Annot) |
Utility function for printing annotations. More... | |
![]() | |
raw_ostream * | CommentStream |
const MCAsmInfo & | MAI |
const MCInstrInfo & | MII |
const MCRegisterInfo & | MRI |
uint64_t | AvailableFeatures |
The current set of available features. More... | |
bool | UseMarkup |
True if we are printing marked up assembly. More... | |
bool | PrintImmHex |
True if we are printing immediates as hex. More... | |
HexStyle::Style | PrintHexStyle |
Which style to use for printing hexadecimal values. More... | |
Definition at line 26 of file AArch64InstPrinter.h.
AArch64InstPrinter::AArch64InstPrinter | ( | const MCAsmInfo & | MAI, |
const MCInstrInfo & | MII, | ||
const MCRegisterInfo & | MRI, | ||
const MCSubtargetInfo & | STI | ||
) |
Definition at line 39 of file AArch64InstPrinter.cpp.
References llvm::MCSubtargetInfo::getFeatureBits(), and llvm::MCInstPrinter::setAvailableFeatures().
|
static |
|
static |
Definition at line 164 of file AArch64InstPrinter.h.
Referenced by printRegExtendOperand().
|
inline |
Definition at line 40 of file AArch64InstPrinter.h.
void AArch64InstPrinter::printAddrRegExtendOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O, | ||
unsigned | MemSize, | ||
unsigned | RmSize | ||
) |
Definition at line 62 of file AArch64InstPrinter.cpp.
References llvm::MipsISD::Ext, llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm_unreachable, and llvm::Log2_32().
void AArch64InstPrinter::printAddSubImmLSL0Operand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 92 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getExpr(), llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::isExpr(), and llvm::MCOperand::isImm().
Referenced by printAddSubImmLSL12Operand().
void AArch64InstPrinter::printAddSubImmLSL12Operand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 107 of file AArch64InstPrinter.cpp.
References printAddSubImmLSL0Operand().
bool llvm::AArch64InstPrinter::printAliasInstr | ( | const MCInst * | MI, |
raw_ostream & | O | ||
) |
Referenced by printInst().
|
inline |
Definition at line 124 of file AArch64InstPrinter.h.
References printShiftOperand().
void AArch64InstPrinter::printBareImmOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 116 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), and llvm::MCInst::getOperand().
void AArch64InstPrinter::printBFILSBOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 123 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), and llvm::MCInst::getOperand().
void AArch64InstPrinter::printBFIWidthOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 131 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), and llvm::MCInst::getOperand().
void AArch64InstPrinter::printBFXWidthOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 140 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), and llvm::MCInst::getOperand().
void AArch64InstPrinter::printCondCodeOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 205 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), and llvm::MCInst::getOperand().
void AArch64InstPrinter::printCRxOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 154 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), and llvm::MCInst::getOperand().
void AArch64InstPrinter::printCVTFixedPosOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 163 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), and llvm::MCInst::getOperand().
void AArch64InstPrinter::printFPImmOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | o | ||
) |
Definition at line 171 of file AArch64InstPrinter.cpp.
References llvm::format(), llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::X86II::Imm8, and llvm::MCOperand::isImm().
void AArch64InstPrinter::printFPZeroOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | o | ||
) |
Definition at line 199 of file AArch64InstPrinter.cpp.
|
virtual |
printInst - Print the specified MCInst to the specified raw_ostream.
Implements llvm::MCInstPrinter.
Definition at line 405 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getExpr(), llvm::MCInst::getOpcode(), llvm::MCInst::getOperand(), printAliasInstr(), llvm::MCInstPrinter::printAnnotation(), printInstruction(), and llvm::AArch64ISD::TLSDESCCALL.
void llvm::AArch64InstPrinter::printInstruction | ( | const MCInst * | MI, |
raw_ostream & | O | ||
) |
Referenced by printInst().
void AArch64InstPrinter::printLabelOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 213 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::isImm(), and printOperand().
void AArch64InstPrinter::printLogicalImmOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 232 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::A64Imms::isLogicalImmBits(), and llvm::raw_ostream::write_hex().
void llvm::AArch64InstPrinter::printLSLOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
|
inline |
Definition at line 121 of file AArch64InstPrinter.h.
References printShiftOperand().
void AArch64InstPrinter::printMoveWideImmOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 277 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getExpr(), llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), and llvm::MCOperand::isImm().
|
inline |
Definition at line 106 of file AArch64InstPrinter.h.
References printSysRegOperand().
|
inline |
Definition at line 111 of file AArch64InstPrinter.h.
References printSysRegOperand().
|
inline |
Definition at line 93 of file AArch64InstPrinter.h.
void AArch64InstPrinter::printNamedImmOperand | ( | const NamedImmMapper & | Mapper, |
const MCInst * | MI, | ||
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 294 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), and llvm::NamedImmMapper::toString().
void AArch64InstPrinter::printNeonMovImmShiftOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 419 of file AArch64InstPrinter.cpp.
References llvm::MipsISD::Ext, llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::isImm(), llvm_unreachable, llvm::A64SE::LSL, and llvm::A64SE::MSL.
void AArch64InstPrinter::printNeonUImm0Operand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 460 of file AArch64InstPrinter.cpp.
void AArch64InstPrinter::printNeonUImm64MaskOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 490 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::isImm(), and llvm::raw_ostream::write_hex().
void AArch64InstPrinter::printOffsetSImm9Operand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 53 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), and unpackSignedImm().
|
inline |
Definition at line 77 of file AArch64InstPrinter.h.
void AArch64InstPrinter::printOffsetUImm12Operand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | o, | ||
int | MemScale | ||
) |
Definition at line 242 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getExpr(), llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), and llvm::MCOperand::isImm().
void AArch64InstPrinter::printOperand | ( | const MCInst * | MI, |
unsigned | OpNo, | ||
raw_ostream & | O | ||
) |
Definition at line 379 of file AArch64InstPrinter.cpp.
References llvm::dyn_cast(), llvm::MCOperand::getExpr(), llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::getReg(), getRegisterName(), llvm::MCOperand::isExpr(), llvm::MCOperand::isImm(), llvm::MCOperand::isReg(), and llvm::raw_ostream::write_hex().
Referenced by printLabelOperand().
void llvm::AArch64InstPrinter::printPRFMOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
|
inline |
Definition at line 152 of file AArch64InstPrinter.h.
void AArch64InstPrinter::printRegExtendOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O, | ||
A64SE::ShiftExtSpecifiers | Ext | ||
) |
Definition at line 322 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::getReg(), isStackReg(), llvm_unreachable, llvm::A64SE::SXTB, llvm::A64SE::SXTH, llvm::A64SE::SXTW, llvm::A64SE::SXTX, llvm::A64SE::UXTB, llvm::A64SE::UXTH, llvm::A64SE::UXTW, and llvm::A64SE::UXTX.
|
virtual |
printRegName - Print the assembler register name.
Reimplemented from llvm::MCInstPrinter.
Definition at line 48 of file AArch64InstPrinter.cpp.
References getRegisterName().
|
inline |
Definition at line 127 of file AArch64InstPrinter.h.
References printShiftOperand().
void llvm::AArch64InstPrinter::printShiftOperand | ( | const char * | name, |
const MCInst * | MI, | ||
unsigned | OpIdx, | ||
raw_ostream & | O | ||
) |
Referenced by printASROperand(), printLSROperand(), printROROperand(), and printShiftOperand().
|
inline |
Definition at line 132 of file AArch64InstPrinter.h.
References printShiftOperand().
void AArch64InstPrinter::printShiftOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O, | ||
A64SE::ShiftExtSpecifiers | Sh | ||
) |
Definition at line 256 of file AArch64InstPrinter.cpp.
References llvm::A64SE::ASR, llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::isImm(), llvm_unreachable, llvm::A64SE::LSL, llvm::A64SE::LSR, and llvm::A64SE::ROR.
void AArch64InstPrinter::printSImm7ScaledOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 363 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), and unpackSignedImm().
void AArch64InstPrinter::printSysRegOperand | ( | const A64SysReg::SysRegMapper & | Mapper, |
const MCInst * | MI, | ||
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 308 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), and llvm::A64SysReg::SysRegMapper::toString().
Referenced by printMRSOperand(), and printMSROperand().
void AArch64InstPrinter::printUImmBareOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 478 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), and llvm::MCOperand::isImm().
void AArch64InstPrinter::printUImmHexOperand | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 465 of file AArch64InstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::isImm(), and llvm::raw_ostream::write_hex().
void AArch64InstPrinter::printVectorList | ( | const MCInst * | MI, |
unsigned | OpNum, | ||
raw_ostream & | O | ||
) |
Definition at line 516 of file AArch64InstPrinter.cpp.
References llvm::A64VectorLayoutToString(), llvm::MCInst::getOperand(), llvm::MCOperand::getReg(), getRegisterName(), llvm::MCRegisterInfo::getSubReg(), I, llvm::MCInstPrinter::MRI, and llvm::A64Layout::VL_16B.
void AArch64InstPrinter::printVPRRegister | ( | const MCInst * | MI, |
unsigned | OpNo, | ||
raw_ostream & | O | ||
) |
Definition at line 371 of file AArch64InstPrinter.cpp.
References llvm::MCInst::getOperand(), llvm::MCOperand::getReg(), and getRegisterName().