14 #ifndef LLVM_LIB_CODEGEN_ASMPRINTER_EHSTREAMER_H 15 #define LLVM_LIB_CODEGEN_ASMPRINTER_EHSTREAMER_H 24 struct LandingPadInfo;
26 class MachineModuleInfo;
28 template <
typename T>
class SmallVectorImpl;
88 virtual void computeCallSiteTable(
116 virtual void emitTypeInfos(
unsigned TTypeEncoding,
MCSymbol *TTBaseLabel);
141 #endif // LLVM_LIB_CODEGEN_ASMPRINTER_EHSTREAMER_H Structure describing an entry in the call-site table.
This class represents lattice values for constants.
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
void setSymbolSize(const MCSymbol *Sym, uint64_t Size) override
For symbols that have a size designated (e.g.
Collects and handles AsmPrinter objects required to build debug or EH information.
Structure describing an entry in the actions table.
static bool isFilterEHSelector(int Selector)
const LandingPadInfo * LPad
MachineModuleInfo * MMI
Collected machine module information.
Emits exception handling directives.
This class consists of common code factored out of the SmallVector class to reduce code duplication b...
This structure is used to retain landing pad info for the current function.
void beginInstruction(const MachineInstr *MI) override
Process beginning of an instruction.
static bool isCatchEHSelector(int Selector)
static bool isCleanupEHSelector(int Selector)
This class is intended to be used as a driving class for all asm writers.
AsmPrinter * Asm
Target of directive emission.
void endInstruction() override
Process end of an instruction.
Representation of each machine instruction.
#define LLVM_LIBRARY_VISIBILITY
LLVM_LIBRARY_VISIBILITY - If a class marked with this attribute is linked into a shared library...
Structure holding a try-range and the associated landing pad.
This class contains meta information specific to a module.