|
clang 22.0.0git
|
#include "/work/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 1088 of file CodeGenFunction.h.
|
explicit |
Enter a new cleanup scope.
Definition at line 6567 of file CGDebugInfo.cpp.
References clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF.
| CodeGenFunction::LexicalScope::~LexicalScope | ( | ) |
Exit this cleanup scope, emitting any accumulated cleanups.
Definition at line 6575 of file CGDebugInfo.cpp.
References clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF, ForceCleanup(), and clang::CodeGen::CodeGenFunction::RunCleanupsScope::PerformCleanup.
|
inline |
Definition at line 1100 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 1111 of file CodeGenFunction.h.
References clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF, clang::CodeGen::CodeGenFunction::RunCleanupsScope::ForceCleanup(), and rescopeLabels().
Referenced by clang::CodeGen::CodeGenFunction::EmitCXXForRangeStmt(), clang::CodeGen::CodeGenFunction::EmitForStmt(), clang::CodeGen::CodeGenFunction::EmitOMPCanonicalLoop(), clang::CodeGen::CGObjCRuntime::EmitTryCatchStmt(), and ~LexicalScope().
|
inline |
Definition at line 1119 of file CodeGenFunction.h.
| 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 757 of file CGStmt.cpp.
References clang::CodeGen::CodeGenFunction::RunCleanupsScope::CGF, clang::CodeGen::EHScopeStack::stable_iterator::encloses(), 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().