LLVM 20.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>

Go to the source code of this file.

Classes

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
 

Namespaces

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

Typedefs

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

Enumerations

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

Functions

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)