27void AIXException::emitExceptionInfoTable(
const MCSymbol *LSDA,
50 EHInfo->getCsectProp());
53 MCSymbol *EHInfoLabel =
61 const unsigned PointerSize =
DL.getPointerSize();
86 "Landingpads are presented, but no personality routine is found.");
88 cast<GlobalValue>(
F.getPersonalityFn()->stripPointerCasts());
91 emitExceptionInfoTable(LSDALabel, PerSym);
MachineBasicBlock MachineBasicBlock::iterator DebugLoc DL
static GCRegistry::Add< ErlangGC > A("erlang", "erlang-compatible garbage collector")
Module.h This file contains the declarations for the Module class.
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
void endFunction(const MachineFunction *MF) override
Gather post-function debug information.
AIXException(AsmPrinter *A)
This class is intended to be used as a driving class for all asm writers.
const TargetLoweringObjectFile & getObjFileLowering() const
Return information about object file lowering.
TargetMachine & TM
Target machine description.
MachineFunction * MF
The current machine function.
MCContext & OutContext
This is the context for the output file that we are streaming.
void emitInt32(int Value) const
Emit a long directive and value.
std::unique_ptr< MCStreamer > OutStreamer
This is the MCStreamer object for the file we are generating.
Emits exception handling directives.
AsmPrinter * Asm
Target of directive emission.
MCSymbol * emitExceptionTable()
Emit landing pads and actions.
MachineModuleInfo * MMI
Collected machine module information.
MCSectionXCOFF * getXCOFFSection(StringRef Section, SectionKind K, std::optional< XCOFF::CsectProperties > CsectProp=std::nullopt, bool MultiSymbolsAllowed=false, std::optional< XCOFF::DwarfSectionSubtypeFlags > DwarfSubtypeFlags=std::nullopt)
MCSection * getCompactUnwindSection() const
static const MCSymbolRefExpr * create(const MCSymbol *Symbol, MCContext &Ctx)
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
Function & getFunction()
Return the LLVM function that this machine code represents.
const Module * getModule() const
const DataLayout & getDataLayout() const
Get the data layout for the module's target platform.
SmallString - A SmallString is just a SmallVector with methods and accessors that make it work better...
static MCSymbol * getEHInfoTableSymbol(const MachineFunction *MF)
static bool ShouldEmitEHBlock(const MachineFunction *MF)
MCSymbol * getSymbol(const GlobalValue *GV) const
bool getFunctionSections() const
Return true if functions should be emitted into their own section, corresponding to -ffunction-sectio...
StringRef getName() const
Return a constant reference to the value's name.
A raw_ostream that writes to an SmallVector or SmallString.
This is an optimization pass for GlobalISel generic memory operations.