LLVM 22.0.0git
SystemZAsmPrinter.cpp File Reference

Go to the source code of this file.

Macros

#define LOWER_LOW(NAME)
#define LOWER_HIGH(NAME)
#define EMIT_COMMENT(Str)

Functions

static MCInst lowerRILow (const MachineInstr *MI, unsigned Opcode)
static MCInst lowerRIHigh (const MachineInstr *MI, unsigned Opcode)
static MCInst lowerRIEfLow (const MachineInstr *MI, unsigned Opcode)
static const MCSymbolRefExprgetTLSGetOffset (MCContext &Context)
static const MCSymbolRefExprgetGlobalOffsetTable (MCContext &Context)
static void lowerAlignmentHint (const MachineInstr *MI, MCInst &LoweredMI, unsigned Opcode)
static MCInst lowerSubvectorLoad (const MachineInstr *MI, unsigned Opcode)
static MCInst lowerSubvectorStore (const MachineInstr *MI, unsigned Opcode)
static MCInst lowerVecEltExtraction (const MachineInstr *MI, unsigned Opcode)
static MCInst lowerVecEltInsertion (const MachineInstr *MI, unsigned Opcode)
static unsigned EmitNop (MCContext &OutContext, MCStreamer &OutStreamer, unsigned NumBytes, const MCSubtargetInfo &STI)
static uint8_t getSpecifierFromModifier (SystemZCP::SystemZCPModifier Modifier)
static void printFormattedRegName (const MCAsmInfo *MAI, unsigned RegNo, raw_ostream &OS)
static void printReg (unsigned Reg, const MCAsmInfo *MAI, raw_ostream &OS)
static void printOperand (const MCOperand &MCOp, const MCAsmInfo *MAI, raw_ostream &OS)
static void printAddress (const MCAsmInfo *MAI, unsigned Base, const MCOperand &DispMO, unsigned Index, raw_ostream &OS)
static std::string getProductID (Module &M)
static uint32_t getProductVersion (Module &M)
static uint32_t getProductRelease (Module &M)
static uint32_t getProductPatch (Module &M)
static time_t getTranslationTime (Module &M)
static void emitPPA1Flags (std::unique_ptr< MCStreamer > &OutStreamer, bool VarArg, bool StackProtector, bool FPRMask, bool VRMask, bool EHBlock, bool HasName)
static void emitPPA1Name (std::unique_ptr< MCStreamer > &OutStreamer, StringRef OutName)
 INITIALIZE_PASS (SystemZAsmPrinter, "systemz-asm-printer", "SystemZ Assembly Printer", false, false) extern "C" LLVM_ABI LLVM_EXTERNAL_VISIBILITY void LLVMInitializeSystemZAsmPrinter()

Macro Definition Documentation

◆ EMIT_COMMENT

#define EMIT_COMMENT ( Str)
Value:
OutStreamer->AddComment(Twine("Offset ") \
.concat(" " Str " ") \
.concat(Sym->getName()));
Twine - A lightweight data structure for efficiently representing the concatenation of temporary valu...
Definition Twine.h:82
@ Offset
Definition DWP.cpp:477
std::string utostr(uint64_t X, bool isNeg=false)
detail::concat_range< ValueT, RangeTs... > concat(RangeTs &&...Ranges)
Returns a concatenated range across two or more ranges.
Definition STLExtras.h:1180

◆ LOWER_HIGH

#define LOWER_HIGH ( NAME)
Value:
case SystemZ::NAME##64: LoweredMI = lowerRIHigh(MI, SystemZ::NAME); break
IRTranslator LLVM IR MI
static MCInst lowerRIHigh(const MachineInstr *MI, unsigned Opcode)

Referenced by llvm::SystemZAsmPrinter::emitInstruction().

◆ LOWER_LOW

#define LOWER_LOW ( NAME)
Value:
case SystemZ::NAME##64: LoweredMI = lowerRILow(MI, SystemZ::NAME); break
static MCInst lowerRILow(const MachineInstr *MI, unsigned Opcode)

Referenced by llvm::SystemZAsmPrinter::emitInstruction().

Function Documentation

◆ EmitNop()

◆ emitPPA1Flags()

void emitPPA1Flags ( std::unique_ptr< MCStreamer > & OutStreamer,
bool VarArg,
bool StackProtector,
bool FPRMask,
bool VRMask,
bool EHBlock,
bool HasName )
static

◆ emitPPA1Name()

◆ getGlobalOffsetTable()

const MCSymbolRefExpr * getGlobalOffsetTable ( MCContext & Context)
static

◆ getProductID()

std::string getProductID ( Module & M)
static

Definition at line 1187 of file SystemZAsmPrinter.cpp.

References llvm::cast().

◆ getProductPatch()

uint32_t getProductPatch ( Module & M)
static

Definition at line 1210 of file SystemZAsmPrinter.cpp.

References llvm::mdconst::extract_or_null().

◆ getProductRelease()

uint32_t getProductRelease ( Module & M)
static

Definition at line 1203 of file SystemZAsmPrinter.cpp.

References llvm::mdconst::extract_or_null().

◆ getProductVersion()

uint32_t getProductVersion ( Module & M)
static

Definition at line 1196 of file SystemZAsmPrinter.cpp.

References llvm::mdconst::extract_or_null().

◆ getSpecifierFromModifier()

◆ getTLSGetOffset()

const MCSymbolRefExpr * getTLSGetOffset ( MCContext & Context)
static

◆ getTranslationTime()

time_t getTranslationTime ( Module & M)
static

Definition at line 1217 of file SystemZAsmPrinter.cpp.

References llvm::mdconst::extract_or_null().

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( SystemZAsmPrinter ,
"systemz-asm-printer" ,
"SystemZ Assembly Printer" ,
false ,
false  )

◆ lowerAlignmentHint()

void lowerAlignmentHint ( const MachineInstr * MI,
MCInst & LoweredMI,
unsigned Opcode )
static

◆ lowerRIEfLow()

◆ lowerRIHigh()

◆ lowerRILow()

◆ lowerSubvectorLoad()

◆ lowerSubvectorStore()

◆ lowerVecEltExtraction()

◆ lowerVecEltInsertion()

◆ printAddress()

void printAddress ( const MCAsmInfo * MAI,
unsigned Base,
const MCOperand & DispMO,
unsigned Index,
raw_ostream & OS )
static

◆ printFormattedRegName()

◆ printOperand()

◆ printReg()

void printReg ( unsigned Reg,
const MCAsmInfo * MAI,
raw_ostream & OS )
static

Definition at line 1028 of file SystemZAsmPrinter.cpp.

References llvm::AsmPrinter::MAI, printFormattedRegName(), and Reg.