class PseudoProbeHandler
Declaration
class PseudoProbeHandler : public AsmPrinterHandler { /* full declaration omitted */ };
Description
Collects and handles AsmPrinter objects required to build debug or EH information.
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:24
Inherits from: AsmPrinterHandler
Member Variables
- private llvm::AsmPrinter* Asm
- private DenseMap<llvm::StringRef, uint64_t> NameGuidMap
Method Overview
- public PseudoProbeHandler(llvm::AsmPrinter * A)
- public void beginFunction(const llvm::MachineFunction * MF)
- public void beginInstruction(const llvm::MachineInstr * MI)
- public void emitPseudoProbe(uint64_t Guid, uint64_t Index, uint64_t Type, uint64_t Attr, const llvm::DILocation * DebugLoc)
- public void endFunction(const llvm::MachineFunction * MF)
- public void endInstruction()
- public void endModule()
- public void setSymbolSize(const llvm::MCSymbol * Sym, uint64_t Size)
- public ~PseudoProbeHandler()
Inherited from AsmPrinterHandler:
- public beginBasicBlock
- public beginFragment
- public beginFunclet
- public beginFunction
- public beginInstruction
- public beginModule
- public endBasicBlock
- public endFragment
- public endFunclet
- public endFunction
- public endInstruction
- public endModule
- public markFunctionEnd
- public setSymbolSize
Methods
¶PseudoProbeHandler(llvm::AsmPrinter* A)
PseudoProbeHandler(llvm::AsmPrinter* A)
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:31
Parameters
¶void beginFunction(
const llvm::MachineFunction* MF)
void beginFunction(
const llvm::MachineFunction* MF)
Description
Gather pre-function debug information. Every beginFunction(MF) call should be followed by an endFunction(MF) call.
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:40
Parameters
- const llvm::MachineFunction* MF
¶void beginInstruction(
const llvm::MachineInstr* MI)
void beginInstruction(
const llvm::MachineInstr* MI)
Description
Process beginning of an instruction.
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:42
Parameters
- const llvm::MachineInstr* MI
¶void emitPseudoProbe(
uint64_t Guid,
uint64_t Index,
uint64_t Type,
uint64_t Attr,
const llvm::DILocation* DebugLoc)
void emitPseudoProbe(
uint64_t Guid,
uint64_t Index,
uint64_t Type,
uint64_t Attr,
const llvm::DILocation* DebugLoc)
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:34
Parameters
- uint64_t Guid
- uint64_t Index
- uint64_t Type
- uint64_t Attr
- const llvm::DILocation* DebugLoc
¶void endFunction(const llvm::MachineFunction* MF)
void endFunction(const llvm::MachineFunction* MF)
Description
Gather post-function debug information. Please note that some AsmPrinter implementations may not call beginFunction at all.
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:41
Parameters
- const llvm::MachineFunction* MF
¶void endInstruction()
void endInstruction()
Description
Process end of an instruction.
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:43
¶void endModule()
void endModule()
Description
Emit all sections that should come after the content.
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:39
¶void setSymbolSize(const llvm::MCSymbol* Sym,
uint64_t Size)
void setSymbolSize(const llvm::MCSymbol* Sym,
uint64_t Size)
Description
For symbols that have a size designated (e.g. common symbols), this tracks that size.
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:38
Parameters
- const llvm::MCSymbol* Sym
- uint64_t Size
¶~PseudoProbeHandler()
~PseudoProbeHandler()
Description
Pin vtable to this file.
Declared at: llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.h:32