|
clang 22.0.0git
|
A protected scope for zero-cost EH handling. More...
#include "/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CodeGen/CGCleanup.h"
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 | |
| }; | |
A protected scope for zero-cost EH handling.
Definition at line 45 of file CGCleanup.h.
| Enumerator | |
|---|---|
| Cleanup | |
| Catch | |
| Terminate | |
| Filter | |
Definition at line 47 of file CGCleanup.h.
|
inline |
Definition at line 122 of file CGCleanup.h.
References CommonBits, and clang::nullptr.
Referenced by clang::CodeGen::EHCatchScope::classof(), clang::CodeGen::EHCleanupScope::classof(), clang::CodeGen::EHFilterScope::classof(), clang::CodeGen::EHTerminateScope::classof(), clang::CodeGen::EHCatchScope::EHCatchScope(), clang::CodeGen::EHCleanupScope::EHCleanupScope(), clang::CodeGen::EHFilterScope::EHFilterScope(), and clang::CodeGen::EHTerminateScope::EHTerminateScope().
|
inline |
Definition at line 138 of file CGCleanup.h.
Referenced by emitCatchDispatchBlock(), emitCatchPadBlock(), emitFilterDispatchBlock(), emitWasmCatchPadBlock(), clang::CodeGen::CodeGenFunction::ExitCXXTryStmt(), clang::CodeGen::CodeGenFunction::getEHDispatchBlock(), clang::CodeGen::CodeGenFunction::getFuncletEHDispatchBlock(), and hasEHBranches().
|
inline |
Definition at line 130 of file CGCleanup.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitLandingPad().
|
inline |
Definition at line 152 of file CGCleanup.h.
Referenced by emitCatchDispatchBlock(), emitCatchPadBlock(), emitWasmCatchPadBlock(), IsUsedAsEHCleanup(), clang::CodeGen::EHScopeStack::popCatch(), and clang::CodeGen::EHScopeStack::popTerminate().
|
inline |
Definition at line 128 of file CGCleanup.h.
References CommonBits.
Referenced by clang::CodeGen::EHFilterScope::classof(), clang::CodeGen::EHTerminateScope::classof(), clang::CodeGen::CodeGenFunction::EmitLandingPad(), clang::CodeGen::CodeGenFunction::getEHDispatchBlock(), clang::CodeGen::CodeGenFunction::getFuncletEHDispatchBlock(), and isNonEHScope().
|
inline |
Definition at line 146 of file CGCleanup.h.
References getCachedEHDispatchBlock().
Referenced by clang::CodeGen::CodeGenFunction::ExitCXXTryStmt(), clang::CodeGen::CodeGenFunction::ExitSEHTryStmt(), IsUsedAsEHCleanup(), and clang::CodeGen::CodeGenFunction::popCatchScope().
|
inline |
Definition at line 142 of file CGCleanup.h.
Referenced by clang::CodeGen::CodeGenFunction::getEHDispatchBlock(), and clang::CodeGen::CodeGenFunction::getFuncletEHDispatchBlock().
|
inline |
Definition at line 134 of file CGCleanup.h.
| union { ... } clang::CodeGen::EHScope |
| CatchBitFields clang::CodeGen::EHScope::CatchBits |
Definition at line 116 of file CGCleanup.h.
Referenced by clang::CodeGen::EHCatchScope::EHCatchScope(), and clang::CodeGen::EHCatchScope::getNumHandlers().
| CleanupBitFields clang::CodeGen::EHScope::CleanupBits |
Definition at line 117 of file CGCleanup.h.
Referenced by clang::CodeGen::EHCleanupScope::EHCleanupScope(), clang::CodeGen::EHCleanupScope::getAllocatedSize(), clang::CodeGen::EHCleanupScope::getCleanupSize(), clang::CodeGen::EHCleanupScope::isActive(), clang::CodeGen::EHCleanupScope::isEHCleanup(), clang::CodeGen::EHCleanupScope::isFakeUse(), clang::CodeGen::EHCleanupScope::isLifetimeMarker(), clang::CodeGen::EHCleanupScope::isNormalCleanup(), clang::CodeGen::EHCleanupScope::setActive(), clang::CodeGen::EHCleanupScope::setFakeUse(), clang::CodeGen::EHCleanupScope::setLifetimeMarker(), clang::CodeGen::EHCleanupScope::setTestFlagInEHCleanup(), clang::CodeGen::EHCleanupScope::setTestFlagInNormalCleanup(), clang::CodeGen::EHCleanupScope::shouldTestFlagInEHCleanup(), and clang::CodeGen::EHCleanupScope::shouldTestFlagInNormalCleanup().
| CommonBitFields clang::CodeGen::EHScope::CommonBits |
Definition at line 115 of file CGCleanup.h.
| FilterBitFields clang::CodeGen::EHScope::FilterBits |
Definition at line 118 of file CGCleanup.h.
Referenced by clang::CodeGen::EHFilterScope::EHFilterScope(), and clang::CodeGen::EHFilterScope::getNumFilters().