clang 22.0.0git
clang::CodeGen::EHScope Class Reference

A protected scope for zero-cost EH handling. More...

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CodeGen/CGCleanup.h"

Inheritance diagram for clang::CodeGen::EHScope:
[legend]

Classes

class  CatchBitFields
class  CleanupBitFields
class  FilterBitFields

Public Types

enum  Kind { Cleanup , Catch , Terminate , Filter }

Public Member Functions

 EHScope (Kind kind, EHScopeStack::stable_iterator enclosingEHScope)
Kind getKind () const
llvm::BasicBlock * getCachedLandingPad () const
void setCachedLandingPad (llvm::BasicBlock *block)
llvm::BasicBlock * getCachedEHDispatchBlock () const
void setCachedEHDispatchBlock (llvm::BasicBlock *block)
bool hasEHBranches () const
EHScopeStack::stable_iterator getEnclosingEHScope () const

Protected Attributes

union { 
   CommonBitFields   CommonBits 
   CatchBitFields   CatchBits 
   CleanupBitFields   CleanupBits 
   FilterBitFields   FilterBits 
}; 

Detailed Description

A protected scope for zero-cost EH handling.

Definition at line 45 of file CGCleanup.h.

Member Enumeration Documentation

◆ Kind

Enumerator
Cleanup 
Catch 
Terminate 
Filter 

Definition at line 47 of file CGCleanup.h.

Constructor & Destructor Documentation

◆ EHScope()

Member Function Documentation

◆ getCachedEHDispatchBlock()

◆ getCachedLandingPad()

llvm::BasicBlock * clang::CodeGen::EHScope::getCachedLandingPad ( ) const
inline

Definition at line 130 of file CGCleanup.h.

Referenced by clang::CodeGen::CodeGenFunction::EmitLandingPad().

◆ getEnclosingEHScope()

◆ getKind()

◆ hasEHBranches()

◆ setCachedEHDispatchBlock()

void clang::CodeGen::EHScope::setCachedEHDispatchBlock ( llvm::BasicBlock * block)
inline

◆ setCachedLandingPad()

void clang::CodeGen::EHScope::setCachedLandingPad ( llvm::BasicBlock * block)
inline

Definition at line 134 of file CGCleanup.h.

Member Data Documentation

◆ [union]

union { ... } clang::CodeGen::EHScope

◆ CatchBits

CatchBitFields clang::CodeGen::EHScope::CatchBits

◆ CleanupBits

◆ CommonBits

CommonBitFields clang::CodeGen::EHScope::CommonBits

Definition at line 115 of file CGCleanup.h.

Referenced by EHScope(), and getKind().

◆ FilterBits

FilterBitFields clang::CodeGen::EHScope::FilterBits

The documentation for this class was generated from the following file: