|
clang
3.8.0
|
A protected scope for zero-cost EH handling. More...
#include <CGCleanup.h>
Classes | |
| class | CatchBitFields |
| class | CleanupBitFields |
| class | FilterBitFields |
Public Types | |
| enum | Kind { Cleanup, Catch, Terminate, Filter, PadEnd } |
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 44 of file CGCleanup.h.
| Enumerator | |
|---|---|
| Cleanup | |
| Catch | |
| Terminate | |
| Filter | |
| PadEnd | |
Definition at line 111 of file CGCleanup.h.
|
inline |
Definition at line 113 of file CGCleanup.h.
References CommonBits.
|
inline |
Definition at line 129 of file CGCleanup.h.
Referenced by emitCatchDispatchBlock(), emitCatchPadBlock(), emitFilterDispatchBlock(), clang::CodeGen::CodeGenFunction::getEHDispatchBlock(), clang::CodeGen::CodeGenFunction::getMSVCDispatchBlock(), and hasEHBranches().
|
inline |
Definition at line 121 of file CGCleanup.h.
Referenced by clang::CodeGen::CodeGenFunction::getInvokeDestImpl().
|
inline |
Definition at line 143 of file CGCleanup.h.
Referenced by emitCatchDispatchBlock(), emitCatchPadBlock(), clang::CodeGen::EHScopeStack::popCatch(), clang::CodeGen::EHScopeStack::popFilter(), and clang::CodeGen::EHScopeStack::popTerminate().
|
inline |
Definition at line 119 of file CGCleanup.h.
References CommonBits.
Referenced by clang::CodeGen::EHCatchScope::classof(), clang::CodeGen::classof(), clang::CodeGen::EHFilterScope::classof(), clang::CodeGen::EHTerminateScope::classof(), clang::CodeGen::EHPadEndScope::classof(), clang::CodeGen::CodeGenFunction::getEHDispatchBlock(), clang::CodeGen::CodeGenFunction::getMSVCDispatchBlock(), and isNonEHScope().
|
inline |
Definition at line 137 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 133 of file CGCleanup.h.
Referenced by clang::CodeGen::CodeGenFunction::getEHDispatchBlock(), and clang::CodeGen::CodeGenFunction::getMSVCDispatchBlock().
|
inline |
Definition at line 125 of file CGCleanup.h.
| union { ... } |
| CatchBitFields clang::CodeGen::EHScope::CatchBits |
Definition at line 105 of file CGCleanup.h.
Referenced by clang::CodeGen::EHCatchScope::EHCatchScope(), and clang::CodeGen::EHCatchScope::getNumHandlers().
| CleanupBitFields clang::CodeGen::EHScope::CleanupBits |
Definition at line 106 of file CGCleanup.h.
| CommonBitFields clang::CodeGen::EHScope::CommonBits |
Definition at line 104 of file CGCleanup.h.
| FilterBitFields clang::CodeGen::EHScope::FilterBits |
Definition at line 107 of file CGCleanup.h.
Referenced by clang::CodeGen::EHFilterScope::EHFilterScope(), and clang::CodeGen::EHFilterScope::getNumFilters().
1.8.6