13#ifndef LLVM_LIB_TARGET_NVPTX_MCTARGETDESC_NVPTXINSTPRINTER_H
14#define LLVM_LIB_TARGET_NVPTX_MCTARGETDESC_NVPTXINSTPRINTER_H
32 std::pair<const char *, uint64_t>
46 const MCSubtargetInfo &STI, raw_ostream &O);
48 raw_ostream &O, StringRef Modifier = {});
50 const MCSubtargetInfo &STI, raw_ostream &O,
51 StringRef Modifier = {});
54 void printMmaCode(
const MCInst *
MI,
int OpNum,
const MCSubtargetInfo &STI,
55 raw_ostream &O, StringRef Modifier = {});
57 raw_ostream &O, StringRef Modifier = {});
59 const MCSubtargetInfo &STI, raw_ostream &O);
61 const MCSubtargetInfo &STI, raw_ostream &O);
64 void printPrmtMode(
const MCInst *
MI,
int OpNum,
const MCSubtargetInfo &STI,
67 const MCSubtargetInfo &STI, raw_ostream &O);
68 void printCTAGroup(
const MCInst *
MI,
int OpNum,
const MCSubtargetInfo &STI,
71 const MCSubtargetInfo &STI, raw_ostream &O);
73 raw_ostream &O, StringRef Modifier = {});
75 raw_ostream &O, StringRef Modifier = {});
76 void printFTZFlag(
const MCInst *
MI,
int OpNum,
const MCSubtargetInfo &STI,
78 void printMultimem(
const MCInst *
MI,
int OpNum,
const MCSubtargetInfo &STI,
81 const MCSubtargetInfo &STI, raw_ostream &O);
83 template <
unsigned Bits>
84 void printHexUImm(
const MCInst *
MI,
int OpNum,
const MCSubtargetInfo &STI,
This class is intended to be used as a base class for asm properties and features specific to the tar...
const MCRegisterInfo & MRI
MCInstPrinter(const MCAsmInfo &mai, const MCInstrInfo &mii, const MCRegisterInfo &mri)
Instances of this class represent a single low-level machine instruction.
Interface to description of machine instruction set.
MCRegisterInfo base class - We assume that the target defines a static array of MCRegisterDesc object...
Wrapper class representing physical registers. Should be passed by value.
Generic base class for all target subtargets.
void printFPRoundingMode(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printRegName(raw_ostream &OS, MCRegister Reg) override
Print the assembler register name.
void printMemOperand(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O, StringRef Modifier={})
void printAtomicCode(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O, StringRef Modifier={})
void printInstruction(const MCInst *MI, uint64_t Address, const MCSubtargetInfo &STI, raw_ostream &O)
void printCachePolicy(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printMmaCode(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O, StringRef Modifier={})
void printTmaReductionMode(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printMultimem(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printCallOperand(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O, StringRef Modifier={})
void printCmpMode(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O, StringRef Modifier={})
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 p...
static const char * getRegisterName(MCRegister Reg)
void printEvictPolicy(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O, StringRef Modifier={})
void printPrmtMode(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printUsedBytesMaskPragma(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printRegisterOrSinkSymbol(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printHexu32imm(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printEvictionAndPrefetchHint(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O, StringRef Modifier={})
void printCvtMode(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O, StringRef Modifier={})
void printFTZFlag(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
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 printCTAGroup(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
NVPTXInstPrinter(const MCAsmInfo &MAI, const MCInstrInfo &MII, const MCRegisterInfo &MRI)
void printTMAValidateDataFlags(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printNegatedPredicate(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printHexUImm(const MCInst *MI, int OpNum, const MCSubtargetInfo &STI, raw_ostream &O)
void printOperand(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
Represent a constant reference to a string, i.e.
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.