LLVM API Documentation
#include <AMDGPUAsmPrinter.h>
Classes | |
struct | SIProgramInfo |
Public Member Functions | |
AMDGPUAsmPrinter (TargetMachine &TM, MCStreamer &Streamer) | |
bool | runOnMachineFunction (MachineFunction &MF) override |
Emit the specified function out to the OutStreamer. | |
const char * | getPassName () const override |
void | EmitInstruction (const MachineInstr *MI) override |
Implemented in AMDGPUMCInstLower.cpp. | |
void | EmitEndOfAsmFile (Module &M) override |
Protected Attributes | |
bool | DisasmEnabled |
std::vector< std::string > | DisasmLines |
std::vector< std::string > | HexLines |
size_t | DisasmLineMaxLen |
Definition at line 23 of file AMDGPUAsmPrinter.h.
AMDGPUAsmPrinter::AMDGPUAsmPrinter | ( | TargetMachine & | TM, |
MCStreamer & | Streamer | ||
) | [explicit] |
Definition at line 84 of file AMDGPUAsmPrinter.cpp.
References DisasmEnabled, and llvm::TargetMachine::getSubtarget().
void AMDGPUAsmPrinter::EmitEndOfAsmFile | ( | Module & | ) | [override, virtual] |
This virtual method can be overridden by targets that want to emit something at the end of their file.
Reimplemented from llvm::AsmPrinter.
Definition at line 89 of file AMDGPUAsmPrinter.cpp.
References llvm::MCStreamer::EmitLabel(), END_OF_TEXT_LABEL_NAME, llvm::AsmPrinter::getObjFileLowering(), llvm::MCContext::GetOrCreateSymbol(), llvm::MCObjectFileInfo::getTextSection(), llvm::AsmPrinter::OutContext, llvm::AsmPrinter::OutStreamer, and llvm::MCStreamer::SwitchSection().
void AMDGPUAsmPrinter::EmitInstruction | ( | const MachineInstr * | MI | ) | [override, virtual] |
Implemented in AMDGPUMCInstLower.cpp.
Reimplemented from llvm::AsmPrinter.
Definition at line 101 of file AMDGPUMCInstLower.cpp.
References DisasmEnabled, DisasmLineMaxLen, DisasmLines, llvm::MachineInstr::dump(), llvm::AsmPrinter::EmitToStreamer(), llvm::MCCodeEmitter::EncodeInstruction(), llvm::MachineBasicBlock::end(), llvm::errs(), llvm::raw_ostream::flush(), llvm::format(), llvm::MCObjectStreamer::getAssembler(), llvm::MCAssembler::getEmitter(), llvm::TargetSubtargetInfo::getInstrInfo(), llvm::TargetMachine::getMCAsmInfo(), llvm::MachineInstr::getParent(), llvm::TargetSubtargetInfo::getRegisterInfo(), llvm::TargetMachine::getSubtarget(), llvm::TargetMachine::getSubtargetImpl(), llvm::MachineFunction::getTarget(), HexLines, I, llvm::MachineInstr::isBundle(), llvm::AMDGPUMCInstLower::lower(), llvm::AsmPrinter::MF, llvm::AArch64CC::MI, llvm::AsmPrinter::OutContext, llvm::AsmPrinter::OutStreamer, llvm::AMDGPUInstPrinter::printInst(), llvm::SmallVectorTemplateCommon< T >::size(), llvm::AsmPrinter::TM, and llvm::TargetInstrInfo::verifyInstruction().
const char* llvm::AMDGPUAsmPrinter::getPassName | ( | ) | const [inline, override, virtual] |
getPassName - Return a nice clean name for a pass. This usually implemented in terms of the name that is registered by one of the Registration templates, but can be overloaded directly.
Reimplemented from llvm::Pass.
Definition at line 73 of file AMDGPUAsmPrinter.h.
bool AMDGPUAsmPrinter::runOnMachineFunction | ( | MachineFunction & | MF | ) | [override, virtual] |
Emit the specified function out to the OutStreamer.
Reimplemented from llvm::AsmPrinter.
Definition at line 99 of file AMDGPUAsmPrinter.cpp.
References DisasmEnabled, DisasmLineMaxLen, DisasmLines, llvm::MachineFunction::dump(), llvm::AMDGPUSubtarget::dumpCode(), llvm::MCStreamer::EmitBytes(), llvm::AsmPrinter::EmitFunctionBody(), llvm::MCStreamer::emitRawComment(), llvm::TargetLoweringObjectFile::getContext(), llvm::MCContext::getELFSection(), llvm::AMDGPUSubtarget::getGeneration(), llvm::MachineFunction::getInfo(), llvm::MachineFunction::getName(), llvm::AsmPrinter::getObjFileLowering(), llvm::SectionKind::getReadOnly(), llvm::TargetMachine::getSubtarget(), HexLines, llvm::AsmPrinter::isVerbose(), llvm::AMDGPUSubtarget::NORTHERN_ISLANDS, llvm::AsmPrinter::OutStreamer, llvm::AsmPrinter::SetupMachineFunction(), llvm::ELF::SHT_NOTE, llvm::ELF::SHT_PROGBITS, llvm::AMDGPUSubtarget::SOUTHERN_ISLANDS, llvm::R600MachineFunctionInfo::StackSize, llvm::MCStreamer::SwitchSection(), and llvm::AsmPrinter::TM.
bool llvm::AMDGPUAsmPrinter::DisasmEnabled [protected] |
Definition at line 83 of file AMDGPUAsmPrinter.h.
Referenced by AMDGPUAsmPrinter(), EmitInstruction(), and runOnMachineFunction().
size_t llvm::AMDGPUAsmPrinter::DisasmLineMaxLen [protected] |
Definition at line 85 of file AMDGPUAsmPrinter.h.
Referenced by EmitInstruction(), and runOnMachineFunction().
std::vector<std::string> llvm::AMDGPUAsmPrinter::DisasmLines [protected] |
Definition at line 84 of file AMDGPUAsmPrinter.h.
Referenced by EmitInstruction(), and runOnMachineFunction().
std::vector<std::string> llvm::AMDGPUAsmPrinter::HexLines [protected] |
Definition at line 84 of file AMDGPUAsmPrinter.h.
Referenced by EmitInstruction(), and runOnMachineFunction().