LLVM 17.0.0git
Classes | Namespaces | Typedefs | Enumerations | Functions
WinEHFuncInfo.h File Reference
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/PointerUnion.h"
#include "llvm/ADT/SmallVector.h"
#include <cstdint>
#include <limits>
#include <utility>
Include dependency graph for WinEHFuncInfo.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


struct  llvm::CxxUnwindMapEntry
struct  llvm::SEHUnwindMapEntry
 Similar to CxxUnwindMapEntry, but supports SEH filters. More...
struct  llvm::WinEHHandlerType
struct  llvm::WinEHTryBlockMapEntry
struct  llvm::ClrEHUnwindMapEntry
struct  llvm::WinEHFuncInfo


namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.


using llvm::MBBOrBasicBlock = PointerUnion< const BasicBlock *, MachineBasicBlock * >


enum class  llvm::ClrHandlerType { llvm::Catch , llvm::Finally , llvm::Fault , llvm::Filter }


void llvm::calculateWinCXXEHStateNumbers (const Function *ParentFn, WinEHFuncInfo &FuncInfo)
 Analyze the IR in ParentFn and it's handlers to build WinEHFuncInfo, which describes the state numbers and tables used by __CxxFrameHandler3.
void llvm::calculateSEHStateNumbers (const Function *ParentFn, WinEHFuncInfo &FuncInfo)
void llvm::calculateClrEHStateNumbers (const Function *Fn, WinEHFuncInfo &FuncInfo)
void llvm::calculateCXXStateForAsynchEH (const BasicBlock *BB, int State, WinEHFuncInfo &FuncInfo)
void llvm::calculateSEHStateForAsynchEH (const BasicBlock *BB, int State, WinEHFuncInfo &FuncInfo)