LLVM: llvm::SPIRVInstPrinter Class Reference (original) (raw)

#include "[Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.h](SPIRVInstPrinter%5F8h%5Fsource.html)"

Public Member Functions
void printInst (const MCInst *MI, uint64_t Address, StringRef Annot, const MCSubtargetInfo &STI, raw_ostream &OS) override
Print the specified MCInst to the specified raw_ostream.
void printOperand (const MCInst *MI, unsigned OpNo, raw_ostream &O)
void printStringImm (const MCInst *MI, unsigned OpNo, raw_ostream &O)
void printOpDecorate (const MCInst *MI, raw_ostream &O)
void printOpExtInst (const MCInst *MI, raw_ostream &O)
void printUnknownType (const MCInst *MI, raw_ostream &O)
void printRemainingVariableOps (const MCInst *MI, unsigned StartIndex, raw_ostream &O, bool SkipFirstSpace=false, bool SkipImmediates=false)
void printOpConstantVarOps (const MCInst *MI, unsigned StartIndex, raw_ostream &O)
void printExtension (const MCInst *MI, unsigned OpNo, raw_ostream &O)
template<SPIRV::OperandCategory::OperandCategory category>
void printSymbolicOperand (const MCInst *MI, unsigned OpNo, raw_ostream &O)
std::pair< const char *, uint64_t > getMnemonic (const MCInst &MI) const override
Returns a pair containing the mnemonic for MI and the number of bits left for further processing by printInstruction (generated by tablegen).
void printInstruction (const MCInst *MI, uint64_t Address, raw_ostream &O)
MCInstPrinter (const MCAsmInfo &mai, const MCInstrInfo &mii, const MCRegisterInfo &mri)
Public Member Functions inherited from llvm::MCInstPrinter
MCInstPrinter (const MCAsmInfo &mai, const MCInstrInfo &mii, const MCRegisterInfo &mri)
virtual ~MCInstPrinter ()
virtual bool applyTargetSpecificCLOption (StringRef Opt)
Customize the printer according to a command line option.
void setCommentStream (raw_ostream &OS)
Specify a stream to emit comments to.
StringRef getOpcodeName (unsigned Opcode) const
Return the name of the specified opcode enum (e.g.
virtual void printRegName (raw_ostream &OS, MCRegister Reg)
Print the assembler register name.
bool getUseMarkup () const
void setUseMarkup (bool Value)
bool getUseColor () const
void setUseColor (bool Value)
WithMarkup markup (raw_ostream &OS, Markup M)
bool getPrintImmHex () const
void setPrintImmHex (bool Value)
void setPrintHexStyle (HexStyle::Style Value)
void setPrintBranchImmAsAddress (bool Value)
void setSymbolizeOperands (bool Value)
void setMCInstrAnalysis (const MCInstrAnalysis *Value)
format_object< int64_t > formatImm (int64_t Value) const
Utility function to print immediates in decimal or hex.
format_object< int64_t > formatDec (int64_t Value) const
Utility functions to print decimal/hexadecimal values.
format_object< int64_t > formatHex (int64_t Value) const
format_object< uint64_t > formatHex (uint64_t Value) const
Additional Inherited Members
Public Types inherited from llvm::MCInstPrinter
enum class Markup { Immediate, Register, Target, Memory }
Protected Member Functions inherited from llvm::MCInstPrinter
void printAnnotation (raw_ostream &OS, StringRef Annot)
Utility function for printing annotations.
const char * matchAliasPatterns (const MCInst *MI, const MCSubtargetInfo *STI, const AliasMatchingData &M)
Helper for matching MCInsts to alias patterns when printing instructions.
Protected Attributes inherited from llvm::MCInstPrinter
raw_ostream * CommentStream = nullptr
A stream that comments can be emitted to if desired.
const MCAsmInfo & MAI
const MCInstrInfo & MII
const MCRegisterInfo & MRI
const MCInstrAnalysis * MIA = nullptr
bool UseMarkup = false
True if we are printing marked up assembly.
bool UseColor = false
True if we are printing colored assembly.
bool PrintAliases = true
True if we prefer aliases (e.g. nop) to raw mnemonics.
bool PrintImmHex = false
True if we are printing immediates as hex.
HexStyle::Style PrintHexStyle = HexStyle::C
Which style to use for printing hexadecimal values.
bool PrintBranchImmAsAddress = false
If true, a branch immediate (e.g.
bool SymbolizeOperands = false
If true, symbolize branch target and memory reference operands.
SmallVector< raw_ostream::Colors, 4 > ColorStack {raw_ostream::Colors::RESET}

Definition at line 22 of file SPIRVInstPrinter.h.

getMnemonic()

Returns a pair containing the mnemonic for MI and the number of bits left for further processing by printInstruction (generated by tablegen).

Implements llvm::MCInstPrinter.

References MI.

getRegisterName()

MCInstPrinter()

printExtension()

printInst()

Print the specified MCInst to the specified raw_ostream.

Address the address of current instruction on most targets, used to print a PC relative immediate as the target address. On targets where a PC relative immediate is relative to the next instruction and the length of a MCInst is difficult to measure (e.g. x86), this is the address of the next instruction. If Address is 0, the immediate will be printed.

Implements llvm::MCInstPrinter.

Definition at line 111 of file SPIRVInstPrinter.cpp.

References AbstractManglingParser< Derived, Alloc >::NumOps, llvm::Address, assert(), llvm::MCInstPrinter::formatImm(), llvm::MCInstrDesc::getNumOperands(), llvm::getSymbolicOperandMnemonic(), llvm::SPIRV::INST_PRINTER_WIDTH64, llvm::MCInstrDesc::isVariadic(), llvm_unreachable, MI, llvm::MCInstPrinter::MII, llvm::MCOI::OPERAND_UNKNOWN, llvm::MCInstrDesc::operands(), OpIdx, llvm::MCInstPrinter::printAnnotation(), printInstruction(), printOpConstantVarOps(), printOpDecorate(), printOperand(), printOpExtInst(), printRemainingVariableOps(), printSymbolicOperand(), and printUnknownType().

printInstruction()

printOpConstantVarOps()

printOpDecorate()

printOperand()

printOpExtInst()

printRemainingVariableOps()

printStringImm()

printSymbolicOperand()

printUnknownType()


The documentation for this class was generated from the following files: