LLVM  14.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::WinEHFuncInfo Struct Reference

#include "llvm/CodeGen/WinEHFuncInfo.h"

Collaboration diagram for llvm::WinEHFuncInfo:
Collaboration graph
[legend]

Public Member Functions

int getLastStateNumber () const
 
void addIPToStateRange (const InvokeInst *II, MCSymbol *InvokeBegin, MCSymbol *InvokeEnd)
 
 WinEHFuncInfo ()
 

Public Attributes

DenseMap< const Instruction *, intEHPadStateMap
 
DenseMap< const FuncletPadInst *, intFuncletBaseStateMap
 
DenseMap< const InvokeInst *, intInvokeStateMap
 
DenseMap< MCSymbol *, std::pair< int, MCSymbol * > > LabelToStateMap
 
SmallVector< CxxUnwindMapEntry, 4 > CxxUnwindMap
 
SmallVector< WinEHTryBlockMapEntry, 4 > TryBlockMap
 
SmallVector< SEHUnwindMapEntry, 4 > SEHUnwindMap
 
SmallVector< ClrEHUnwindMapEntry, 4 > ClrEHUnwindMap
 
int UnwindHelpFrameIdx = std::numeric_limits<int>::max()
 
int PSPSymFrameIdx = std::numeric_limits<int>::max()
 
int EHRegNodeFrameIndex = std::numeric_limits<int>::max()
 
int EHRegNodeEndOffset = std::numeric_limits<int>::max()
 
int EHGuardFrameIndex = std::numeric_limits<int>::max()
 
int SEHSetFrameOffset = std::numeric_limits<int>::max()
 

Detailed Description

Definition at line 90 of file WinEHFuncInfo.h.

Constructor & Destructor Documentation

◆ WinEHFuncInfo()

WinEHFuncInfo::WinEHFuncInfo ( )

Definition at line 1262 of file WinEHPrepare.cpp.

Member Function Documentation

◆ addIPToStateRange()

void WinEHFuncInfo::addIPToStateRange ( const InvokeInst II,
MCSymbol InvokeBegin,
MCSymbol InvokeEnd 
)

Definition at line 1254 of file WinEHPrepare.cpp.

References assert(), InvokeStateMap, and LabelToStateMap.

◆ getLastStateNumber()

int llvm::WinEHFuncInfo::getLastStateNumber ( ) const
inline

Definition at line 102 of file WinEHFuncInfo.h.

References CxxUnwindMap.

Referenced by addUnwindMapEntry(), and calculateCXXStateNumbers().

Member Data Documentation

◆ ClrEHUnwindMap

SmallVector<ClrEHUnwindMapEntry, 4> llvm::WinEHFuncInfo::ClrEHUnwindMap

Definition at line 98 of file WinEHFuncInfo.h.

Referenced by getTryAncestor(), getTryRank(), and llvm::FunctionLoweringInfo::set().

◆ CxxUnwindMap

SmallVector<CxxUnwindMapEntry, 4> llvm::WinEHFuncInfo::CxxUnwindMap

◆ EHGuardFrameIndex

int llvm::WinEHFuncInfo::EHGuardFrameIndex = std::numeric_limits<int>::max()

Definition at line 109 of file WinEHFuncInfo.h.

Referenced by MarkEHGuard().

◆ EHPadStateMap

DenseMap<const Instruction *, int> llvm::WinEHFuncInfo::EHPadStateMap

◆ EHRegNodeEndOffset

int llvm::WinEHFuncInfo::EHRegNodeEndOffset = std::numeric_limits<int>::max()

◆ EHRegNodeFrameIndex

int llvm::WinEHFuncInfo::EHRegNodeFrameIndex = std::numeric_limits<int>::max()

◆ FuncletBaseStateMap

DenseMap<const FuncletPadInst *, int> llvm::WinEHFuncInfo::FuncletBaseStateMap

Definition at line 92 of file WinEHFuncInfo.h.

Referenced by calculateCXXStateNumbers(), and calculateStateNumbersForInvokes().

◆ InvokeStateMap

DenseMap<const InvokeInst *, int> llvm::WinEHFuncInfo::InvokeStateMap

Definition at line 93 of file WinEHFuncInfo.h.

Referenced by addIPToStateRange(), and calculateStateNumbersForInvokes().

◆ LabelToStateMap

DenseMap<MCSymbol *, std::pair<int, MCSymbol *> > llvm::WinEHFuncInfo::LabelToStateMap

Definition at line 94 of file WinEHFuncInfo.h.

Referenced by addIPToStateRange().

◆ PSPSymFrameIdx

int llvm::WinEHFuncInfo::PSPSymFrameIdx = std::numeric_limits<int>::max()

Definition at line 100 of file WinEHFuncInfo.h.

◆ SEHSetFrameOffset

int llvm::WinEHFuncInfo::SEHSetFrameOffset = std::numeric_limits<int>::max()

Definition at line 110 of file WinEHFuncInfo.h.

◆ SEHUnwindMap

SmallVector<SEHUnwindMapEntry, 4> llvm::WinEHFuncInfo::SEHUnwindMap

◆ TryBlockMap

SmallVector<WinEHTryBlockMapEntry, 4> llvm::WinEHFuncInfo::TryBlockMap

◆ UnwindHelpFrameIdx

int llvm::WinEHFuncInfo::UnwindHelpFrameIdx = std::numeric_limits<int>::max()

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