Go to the documentation of this file.
13 #ifndef LLVM_CODEGEN_WINEHFUNCINFO_H
14 #define LLVM_CODEGEN_WINEHFUNCINFO_H
32 class MachineBasicBlock;
128 #endif // LLVM_CODEGEN_WINEHFUNCINFO_H
ClrHandlerType HandlerType
This is an optimization pass for GlobalISel generic memory operations.
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
SmallVector< CxxUnwindMapEntry, 4 > CxxUnwindMap
SmallVector< ClrEHUnwindMapEntry, 4 > ClrEHUnwindMap
DenseMap< const InvokeInst *, int > InvokeStateMap
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
void addIPToStateRange(const InvokeInst *II, MCSymbol *InvokeBegin, MCSymbol *InvokeEnd)
SmallVector< WinEHTryBlockMapEntry, 4 > TryBlockMap
DenseMap< const FuncletPadInst *, int > FuncletBaseStateMap
int getLastStateNumber() const
int TryParentState
Outer try region enclosing this entry's try region, treating later catches on same try as "outer".
const Function * Filter
Holds the filter expression function.
const AllocaInst * Alloca
GlobalVariable * TypeDescriptor
int HandlerParentState
Outer handler enclosing this entry's handler.
SmallVector< WinEHHandlerType, 1 > HandlerArray
union llvm::WinEHHandlerType::@234 CatchObj
The CatchObj starts out life as an LLVM alloca and is eventually turned frame index.
DenseMap< MCSymbol *, std::pair< int, MCSymbol * > > LabelToStateMap
@ BasicBlock
Various leaf nodes.
Similar to CxxUnwindMapEntry, but supports SEH filters.
int ToState
If unwinding continues through this handler, transition to the handler at this state.
MBBOrBasicBlock Handler
Holds the __except or __finally basic block.
SmallVector< SEHUnwindMapEntry, 4 > SEHUnwindMap
DenseMap< const Instruction *, int > EHPadStateMap
Align max(MaybeAlign Lhs, Align Rhs)
an instruction to allocate memory on the stack
void calculateSEHStateNumbers(const Function *ParentFn, WinEHFuncInfo &FuncInfo)
void calculateWinCXXEHStateNumbers(const Function *ParentFn, WinEHFuncInfo &FuncInfo)
Analyze the IR in ParentFn and it's handlers to build WinEHFuncInfo, which describes the state number...
void calculateClrEHStateNumbers(const Function *Fn, WinEHFuncInfo &FuncInfo)