clang 20.0.0git
|
#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CodeGen/CodeGenFunction.h"
Public Member Functions | |
LexicalScope (CodeGenFunction &CGF, SourceRange Range) | |
Enter a new cleanup scope. | |
void | addLabel (const LabelDecl *label) |
~LexicalScope () | |
Exit this cleanup scope, emitting any accumulated cleanups. | |
void | ForceCleanup () |
Force the emission of cleanups now, instead of waiting until this object is destroyed. | |
bool | hasLabels () const |
void | rescopeLabels () |
Change the cleanup scope of the labels in this lexical scope to match the scope of the enclosing context. | |
Public Member Functions inherited from clang::CodeGen::CodeGenFunction::RunCleanupsScope | |
RunCleanupsScope (CodeGenFunction &CGF) | |
Enter a new cleanup scope. | |
~RunCleanupsScope () | |
Exit this cleanup scope, emitting any accumulated cleanups. | |
bool | requiresCleanups () const |
Determine whether this scope requires any cleanups. | |
void | ForceCleanup (std::initializer_list< llvm::Value ** > ValuesToReload={}) |
Force the emission of cleanups now, instead of waiting until this object is destroyed. | |
Additional Inherited Members | |
Protected Attributes inherited from clang::CodeGen::CodeGenFunction::RunCleanupsScope | |
bool | PerformCleanup |
CodeGenFunction & | CGF |
Definition at line 1029 of file CodeGenFunction.h.
|
inlineexplicit |
Enter a new cleanup scope.
Definition at line 1039 of file CodeGenFunction.h.
References clang::CodeGen::CodeGenFunction::Builder, clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF, clang::CodeGen::CodeGenFunction::getDebugInfo(), and Range.
|
inline |
Exit this cleanup scope, emitting any accumulated cleanups.
Definition at line 1053 of file CodeGenFunction.h.
References clang::CodeGen::CodeGenFunction::Builder, clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF, ForceCleanup(), clang::CodeGen::CodeGenFunction::getDebugInfo(), clang::CodeGen::CodeGenFunction::RunCleanupsScope::PerformCleanup, and Range.
|
inline |
Definition at line 1046 of file CodeGenFunction.h.
References clang::CodeGen::CodeGenFunction::RunCleanupsScope::PerformCleanup.
|
inline |
Force the emission of cleanups now, instead of waiting until this object is destroyed.
Definition at line 1067 of file CodeGenFunction.h.
References clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF, clang::CodeGen::CodeGenFunction::RunCleanupsScope::ForceCleanup(), and rescopeLabels().
Referenced by clang::CodeGen::CGObjCRuntime::EmitTryCatchStmt(), and ~LexicalScope().
|
inline |
Definition at line 1075 of file CodeGenFunction.h.
Referenced by clang::CodeGen::CodeGenFunction::hasLabelBeenSeenInCurrentScope().
void CodeGenFunction::LexicalScope::rescopeLabels | ( | ) |
Change the cleanup scope of the labels in this lexical scope to match the scope of the enclosing context.
Definition at line 693 of file CGStmt.cpp.
References clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF, clang::CodeGen::CodeGenFunction::EHStack, clang::CodeGen::EHScopeStack::stable_iterator::encloses(), clang::CodeGen::EHScopeStack::getInnermostNormalCleanup(), clang::CodeGen::CodeGenFunction::JumpDest::getScopeDepth(), clang::CodeGen::EHScopeStack::stable_iterator::isValid(), clang::CodeGen::CodeGenFunction::JumpDest::setScopeDepth(), and clang::CodeGen::EHScopeStack::stable_end().
Referenced by ForceCleanup().