LLVM API Documentation
#include <NVPTXInstPrinter.h>
Public Member Functions | |
NVPTXInstPrinter (const MCAsmInfo &MAI, const MCInstrInfo &MII, const MCRegisterInfo &MRI, const MCSubtargetInfo &STI) | |
virtual void | printRegName (raw_ostream &OS, unsigned RegNo) const |
printRegName - Print the assembler register name. More... | |
virtual void | printInst (const MCInst *MI, raw_ostream &OS, StringRef Annot) |
void | printInstruction (const MCInst *MI, raw_ostream &O) |
void | printOperand (const MCInst *MI, unsigned OpNo, raw_ostream &O) |
void | printCvtMode (const MCInst *MI, int OpNum, raw_ostream &O, const char *Modifier=0) |
void | printCmpMode (const MCInst *MI, int OpNum, raw_ostream &O, const char *Modifier=0) |
void | printLdStCode (const MCInst *MI, int OpNum, raw_ostream &O, const char *Modifier=0) |
void | printMemOperand (const MCInst *MI, int OpNum, raw_ostream &O, const char *Modifier=0) |
void | printProtoIdent (const MCInst *MI, int OpNum, raw_ostream &O, const char *Modifier=0) |
![]() | |
MCInstPrinter (const MCAsmInfo &mai, const MCInstrInfo &mii, const MCRegisterInfo &mri) | |
virtual | ~MCInstPrinter () |
void | setCommentStream (raw_ostream &OS) |
setCommentStream - Specify a stream to emit comments to. More... | |
StringRef | getOpcodeName (unsigned Opcode) const |
uint64_t | getAvailableFeatures () const |
void | setAvailableFeatures (uint64_t Value) |
bool | getUseMarkup () const |
void | setUseMarkup (bool Value) |
StringRef | markup (StringRef s) const |
Utility functions to make adding mark ups simpler. More... | |
StringRef | markup (StringRef a, StringRef b) const |
bool | getPrintImmHex () const |
void | setPrintImmHex (bool Value) |
HexStyle::Style | getPrintHexStyleHex () const |
void | setPrintImmHex (HexStyle::Style Value) |
format_object1< int64_t > | formatImm (const int64_t Value) const |
Utility function to print immediates in decimal or hex. More... | |
format_object1< int64_t > | formatDec (const int64_t Value) const |
Utility functions to print decimal/hexadecimal values. More... | |
format_object1< int64_t > | formatHex (const int64_t Value) const |
format_object1< uint64_t > | formatHex (const uint64_t Value) const |
Static Public Member Functions | |
static const char * | getRegisterName (unsigned RegNo) |
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 25 of file NVPTXInstPrinter.h.
NVPTXInstPrinter::NVPTXInstPrinter | ( | const MCAsmInfo & | MAI, |
const MCInstrInfo & | MII, | ||
const MCRegisterInfo & | MRI, | ||
const MCSubtargetInfo & | STI | ||
) |
Definition at line 31 of file NVPTXInstPrinter.cpp.
References llvm::MCSubtargetInfo::getFeatureBits(), and llvm::MCInstPrinter::setAvailableFeatures().
|
static |
Referenced by printRegName().
void NVPTXInstPrinter::printCmpMode | ( | const MCInst * | MI, |
int | OpNum, | ||
raw_ostream & | O, | ||
const char * | Modifier = 0 |
||
) |
Definition at line 145 of file NVPTXInstPrinter.cpp.
References llvm::NVPTX::PTXCmpMode::BASE_MASK, llvm::NVPTX::PTXCmpMode::EQ, llvm::NVPTX::PTXCmpMode::EQU, llvm::NVPTX::PTXCmpMode::FTZ_FLAG, llvm::NVPTX::PTXCmpMode::GE, llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::NVPTX::PTXCmpMode::GEU, llvm::NVPTX::PTXCmpMode::GT, llvm::NVPTX::PTXCmpMode::GTU, llvm::NVPTX::PTXCmpMode::HI, llvm::NVPTX::PTXCmpMode::HS, llvm::NVPTX::PTXCmpMode::LE, llvm::NVPTX::PTXCmpMode::LEU, llvm_unreachable, llvm::NVPTX::PTXCmpMode::LO, llvm::NVPTX::PTXCmpMode::LS, llvm::NVPTX::PTXCmpMode::LT, llvm::NVPTX::PTXCmpMode::LTU, llvm::NVPTX::PTXCmpMode::NE, llvm::NVPTX::PTXCmpMode::NEU, llvm::NVPTX::PTXCmpMode::NotANumber, llvm::NVPTX::PTXCmpMode::NUM, and llvm::LibFunc::strcmp.
void NVPTXInstPrinter::printCvtMode | ( | const MCInst * | MI, |
int | OpNum, | ||
raw_ostream & | O, | ||
const char * | Modifier = 0 |
||
) |
Definition at line 95 of file NVPTXInstPrinter.cpp.
References llvm::NVPTX::PTXCvtMode::BASE_MASK, llvm::NVPTX::PTXCvtMode::FTZ_FLAG, llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm_unreachable, llvm::NVPTX::PTXCvtMode::NONE, llvm::NVPTX::PTXCvtMode::RM, llvm::NVPTX::PTXCvtMode::RMI, llvm::NVPTX::PTXCvtMode::RN, llvm::NVPTX::PTXCvtMode::RNI, llvm::NVPTX::PTXCvtMode::RP, llvm::NVPTX::PTXCvtMode::RPI, llvm::NVPTX::PTXCvtMode::RZ, llvm::NVPTX::PTXCvtMode::RZI, llvm::NVPTX::PTXCvtMode::SAT_FLAG, and llvm::LibFunc::strcmp.
|
virtual |
printInst - Print the specified MCInst to the specified raw_ostream.
Implements llvm::MCInstPrinter.
Definition at line 73 of file NVPTXInstPrinter.cpp.
References llvm::MCInstPrinter::printAnnotation(), and printInstruction().
void llvm::NVPTXInstPrinter::printInstruction | ( | const MCInst * | MI, |
raw_ostream & | O | ||
) |
Referenced by printInst().
void NVPTXInstPrinter::printLdStCode | ( | const MCInst * | MI, |
int | OpNum, | ||
raw_ostream & | O, | ||
const char * | Modifier = 0 |
||
) |
Definition at line 218 of file NVPTXInstPrinter.cpp.
References llvm::NVPTX::PTXLdStInstCode::CONSTANT, llvm::NVPTX::PTXLdStInstCode::GENERIC, llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::NVPTX::PTXLdStInstCode::GLOBAL, llvm_unreachable, llvm::NVPTX::PTXLdStInstCode::LOCAL, llvm::NVPTX::PTXLdStInstCode::PARAM, llvm::NVPTX::PTXLdStInstCode::SHARED, llvm::NVPTX::PTXLdStInstCode::Signed, llvm::LibFunc::strcmp, llvm::NVPTX::PTXLdStInstCode::Unsigned, llvm::NVPTX::PTXLdStInstCode::V2, and llvm::NVPTX::PTXLdStInstCode::V4.
void NVPTXInstPrinter::printMemOperand | ( | const MCInst * | MI, |
int | OpNum, | ||
raw_ostream & | O, | ||
const char * | Modifier = 0 |
||
) |
Definition at line 266 of file NVPTXInstPrinter.cpp.
References llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::isImm(), printOperand(), and llvm::LibFunc::strcmp.
void NVPTXInstPrinter::printOperand | ( | const MCInst * | MI, |
unsigned | OpNo, | ||
raw_ostream & | O | ||
) |
Definition at line 81 of file NVPTXInstPrinter.cpp.
References llvm::MCInstPrinter::formatImm(), llvm::MCOperand::getExpr(), llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::getReg(), llvm::MCOperand::isExpr(), llvm::MCOperand::isImm(), llvm::MCOperand::isReg(), llvm::MCInstPrinter::markup(), and printRegName().
Referenced by printMemOperand().
void NVPTXInstPrinter::printProtoIdent | ( | const MCInst * | MI, |
int | OpNum, | ||
raw_ostream & | O, | ||
const char * | Modifier = 0 |
||
) |
Definition at line 282 of file NVPTXInstPrinter.cpp.
References llvm::MCOperand::getExpr(), llvm::MCSymbol::getName(), llvm::MCInst::getOperand(), and llvm::MCOperand::isExpr().
|
virtual |
printRegName - Print the assembler register name.
Reimplemented from llvm::MCInstPrinter.
Definition at line 38 of file NVPTXInstPrinter.cpp.
References getRegisterName(), and llvm::report_fatal_error().
Referenced by printOperand().