LLVM  8.0.1
Protected Member Functions | Protected Attributes | List of all members
llvm::DwarfCFIExceptionBase Class Reference

#include "CodeGen/AsmPrinter/DwarfException.h"

Inheritance diagram for llvm::DwarfCFIExceptionBase:
Inheritance graph
[legend]
Collaboration diagram for llvm::DwarfCFIExceptionBase:
Collaboration graph
[legend]

Protected Member Functions

 DwarfCFIExceptionBase (AsmPrinter *A)
 
void markFunctionEnd () override
 
void endFragment () override
 
- Protected Member Functions inherited from llvm::EHStreamer
void computeActionsTable (const SmallVectorImpl< const LandingPadInfo *> &LandingPads, SmallVectorImpl< ActionEntry > &Actions, SmallVectorImpl< unsigned > &FirstActions)
 Compute the actions table and gather the first action index for each landing pad site. More...
 
void computePadMap (const SmallVectorImpl< const LandingPadInfo *> &LandingPads, RangeMapType &PadMap)
 
virtual void computeCallSiteTable (SmallVectorImpl< CallSiteEntry > &CallSites, const SmallVectorImpl< const LandingPadInfo *> &LandingPads, const SmallVectorImpl< unsigned > &FirstActions)
 Compute the call-site table. More...
 
MCSymbolemitExceptionTable ()
 Emit landing pads and actions. More...
 
virtual void emitTypeInfos (unsigned TTypeEncoding, MCSymbol *TTBaseLabel)
 

Protected Attributes

bool shouldEmitCFI
 Per-function flag to indicate if frame CFI info should be emitted. More...
 
bool hasEmittedCFISections
 Per-module flag to indicate if .cfi_section has beeen emitted. More...
 
- Protected Attributes inherited from llvm::EHStreamer
AsmPrinterAsm
 Target of directive emission. More...
 
MachineModuleInfoMMI
 Collected machine module information. More...
 

Additional Inherited Members

- Public Member Functions inherited from llvm::EHStreamer
 EHStreamer (AsmPrinter *A)
 
 ~EHStreamer () override
 
void setSymbolSize (const MCSymbol *Sym, uint64_t Size) override
 For symbols that have a size designated (e.g. More...
 
void beginInstruction (const MachineInstr *MI) override
 Process beginning of an instruction. More...
 
void endInstruction () override
 Process end of an instruction. More...
 
- Public Member Functions inherited from llvm::AsmPrinterHandler
virtual ~AsmPrinterHandler ()
 Pin vtable to this file. More...
 
virtual void endModule ()=0
 Emit all sections that should come after the content. More...
 
virtual void beginFunction (const MachineFunction *MF)=0
 Gather pre-function debug information. More...
 
virtual void endFunction (const MachineFunction *MF)=0
 Gather post-function debug information. More...
 
virtual void beginFragment (const MachineBasicBlock *MBB, ExceptionSymbolProvider ESP)
 
virtual void beginFunclet (const MachineBasicBlock &MBB, MCSymbol *Sym=nullptr)
 Emit target-specific EH funclet machinery. More...
 
virtual void endFunclet ()
 
- Static Public Member Functions inherited from llvm::EHStreamer
static bool callToNoUnwindFunction (const MachineInstr *MI)
 Return `true' if this is a call to a function marked `nounwind'. More...
 
- Protected Types inherited from llvm::EHStreamer
using RangeMapType = DenseMap< MCSymbol *, PadRange >
 
- Static Protected Member Functions inherited from llvm::EHStreamer
static unsigned sharedTypeIDs (const LandingPadInfo *L, const LandingPadInfo *R)
 How many leading type ids two landing pads have in common. More...
 
static bool isFilterEHSelector (int Selector)
 
static bool isCleanupEHSelector (int Selector)
 
static bool isCatchEHSelector (int Selector)
 

Detailed Description

Definition at line 25 of file DwarfException.h.

Constructor & Destructor Documentation

◆ DwarfCFIExceptionBase()

DwarfCFIExceptionBase::DwarfCFIExceptionBase ( AsmPrinter A)
protected

Definition at line 36 of file DwarfCFIException.cpp.

Member Function Documentation

◆ endFragment()

void DwarfCFIExceptionBase::endFragment ( )
overrideprotectedvirtual

Reimplemented from llvm::AsmPrinterHandler.

Definition at line 49 of file DwarfCFIException.cpp.

References llvm::EHStreamer::Asm, llvm::AsmPrinter::OutStreamer, and shouldEmitCFI.

Referenced by markFunctionEnd().

◆ markFunctionEnd()

void DwarfCFIExceptionBase::markFunctionEnd ( )
overrideprotectedvirtual

Member Data Documentation

◆ hasEmittedCFISections

bool llvm::DwarfCFIExceptionBase::hasEmittedCFISections
protected

Per-module flag to indicate if .cfi_section has beeen emitted.

Definition at line 32 of file DwarfException.h.

Referenced by llvm::DwarfCFIException::beginFragment(), and llvm::ARMException::beginFunction().

◆ shouldEmitCFI

bool llvm::DwarfCFIExceptionBase::shouldEmitCFI
protected

Per-function flag to indicate if frame CFI info should be emitted.

Definition at line 30 of file DwarfException.h.

Referenced by llvm::DwarfCFIException::beginFragment(), llvm::DwarfCFIException::beginFunction(), llvm::ARMException::beginFunction(), and endFragment().


The documentation for this class was generated from the following files: