LLVM 20.0.0git
|
#include "llvm/CodeGen/WinEHFuncInfo.h"
Public Member Functions | |
int | getLastStateNumber () const |
void | addIPToStateRange (const InvokeInst *II, MCSymbol *InvokeBegin, MCSymbol *InvokeEnd) |
void | addIPToStateRange (int State, MCSymbol *InvokeBegin, MCSymbol *InvokeEnd) |
WinEHFuncInfo () | |
Public Attributes | |
DenseMap< const Instruction *, int > | EHPadStateMap |
DenseMap< const FuncletPadInst *, int > | FuncletBaseStateMap |
DenseMap< const InvokeInst *, int > | InvokeStateMap |
DenseMap< MCSymbol *, std::pair< int, MCSymbol * > > | LabelToStateMap |
DenseMap< const BasicBlock *, int > | BlockToStateMap |
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() |
Definition at line 90 of file WinEHFuncInfo.h.
|
default |
void WinEHFuncInfo::addIPToStateRange | ( | const InvokeInst * | II, |
MCSymbol * | InvokeBegin, | ||
MCSymbol * | InvokeEnd | ||
) |
Definition at line 1394 of file WinEHPrepare.cpp.
References assert(), II, InvokeStateMap, and LabelToStateMap.
Definition at line 1402 of file WinEHPrepare.cpp.
References LabelToStateMap.
|
inline |
Definition at line 103 of file WinEHFuncInfo.h.
References CxxUnwindMap.
Referenced by addUnwindMapEntry(), and calculateCXXStateNumbers().
DenseMap<const BasicBlock *, int> llvm::WinEHFuncInfo::BlockToStateMap |
Definition at line 95 of file WinEHFuncInfo.h.
Referenced by llvm::calculateCXXStateForAsynchEH(), and llvm::calculateSEHStateForAsynchEH().
SmallVector<ClrEHUnwindMapEntry, 4> llvm::WinEHFuncInfo::ClrEHUnwindMap |
Definition at line 99 of file WinEHFuncInfo.h.
Referenced by addClrEHHandler(), llvm::calculateClrEHStateNumbers(), getTryAncestor(), getTryRank(), and llvm::FunctionLoweringInfo::set().
SmallVector<CxxUnwindMapEntry, 4> llvm::WinEHFuncInfo::CxxUnwindMap |
Definition at line 96 of file WinEHFuncInfo.h.
Referenced by addUnwindMapEntry(), llvm::calculateCXXStateForAsynchEH(), getLastStateNumber(), and llvm::FunctionLoweringInfo::set().
int llvm::WinEHFuncInfo::EHGuardFrameIndex = std::numeric_limits<int>::max() |
Definition at line 112 of file WinEHFuncInfo.h.
Referenced by MarkEHGuard().
DenseMap<const Instruction *, int> llvm::WinEHFuncInfo::EHPadStateMap |
Definition at line 91 of file WinEHFuncInfo.h.
Referenced by llvm::calculateClrEHStateNumbers(), llvm::calculateCXXStateForAsynchEH(), calculateCXXStateNumbers(), llvm::calculateSEHStateForAsynchEH(), calculateSEHStateNumbers(), calculateStateNumbersForInvokes(), and llvm::calculateWinCXXEHStateNumbers().
int llvm::WinEHFuncInfo::EHRegNodeEndOffset = std::numeric_limits<int>::max() |
Definition at line 111 of file WinEHFuncInfo.h.
Referenced by llvm::X86FrameLowering::restoreWin32EHStackPointers().
int llvm::WinEHFuncInfo::EHRegNodeFrameIndex = std::numeric_limits<int>::max() |
Definition at line 110 of file WinEHFuncInfo.h.
Referenced by llvm::X86FrameLowering::emitPrologue(), MarkEHRegistrationNode(), and llvm::X86FrameLowering::restoreWin32EHStackPointers().
DenseMap<const FuncletPadInst *, int> llvm::WinEHFuncInfo::FuncletBaseStateMap |
Definition at line 92 of file WinEHFuncInfo.h.
Referenced by calculateCXXStateNumbers(), and calculateStateNumbersForInvokes().
DenseMap<const InvokeInst *, int> llvm::WinEHFuncInfo::InvokeStateMap |
Definition at line 93 of file WinEHFuncInfo.h.
Referenced by addIPToStateRange(), llvm::calculateCXXStateForAsynchEH(), llvm::calculateSEHStateForAsynchEH(), and calculateStateNumbersForInvokes().
Definition at line 94 of file WinEHFuncInfo.h.
Referenced by addIPToStateRange().
int llvm::WinEHFuncInfo::PSPSymFrameIdx = std::numeric_limits<int>::max() |
Definition at line 101 of file WinEHFuncInfo.h.
Referenced by llvm::X86FrameLowering::emitPrologue().
int llvm::WinEHFuncInfo::SEHSetFrameOffset = std::numeric_limits<int>::max() |
Definition at line 113 of file WinEHFuncInfo.h.
Referenced by llvm::X86FrameLowering::emitPrologue().
SmallVector<SEHUnwindMapEntry, 4> llvm::WinEHFuncInfo::SEHUnwindMap |
Definition at line 98 of file WinEHFuncInfo.h.
Referenced by addSEHExcept(), addSEHFinally(), llvm::calculateSEHStateForAsynchEH(), llvm::calculateSEHStateNumbers(), and llvm::FunctionLoweringInfo::set().
SmallVector<WinEHTryBlockMapEntry, 4> llvm::WinEHFuncInfo::TryBlockMap |
Definition at line 97 of file WinEHFuncInfo.h.
Referenced by addTryBlockMapEntry(), calculateCXXStateNumbers(), and llvm::FunctionLoweringInfo::set().
int llvm::WinEHFuncInfo::UnwindHelpFrameIdx = std::numeric_limits<int>::max() |
Definition at line 100 of file WinEHFuncInfo.h.
Referenced by llvm::AArch64FrameLowering::processFunctionBeforeFrameFinalized().