|
clang 22.0.0git
|
Represents a scope, including function bodies, compound statements, and the substatements of if/while/do/for/switch/try statements. More...
#include "/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CIR/CodeGen/CIRGenFunction.h"
Public Member Functions | |
| LexicalScope (CIRGenFunction &cgf, mlir::Location loc, mlir::Block *eb) | |
| void | setRetVal (mlir::Value v) |
| void | cleanup () |
| void | restore () |
| ~LexicalScope () | |
| bool | isGlobalInit () |
| bool | isRegular () |
| bool | isSwitch () |
| bool | isTernary () |
| bool | isTry () |
| void | setAsGlobalInit () |
| void | setAsSwitch () |
| void | setAsTernary () |
| void | setAsTry (cir::TryOp op) |
| mlir::Block * | getOrCreateCleanupBlock (mlir::OpBuilder &builder) |
| cir::TryOp | getTry () |
| mlir::Block * | getCleanupBlock (mlir::OpBuilder &builder) |
| mlir::Block * | createCleanupBlock (mlir::OpBuilder &builder) |
| llvm::ArrayRef< mlir::Block * > | getRetBlocks () |
| mlir::Location | getRetLoc (mlir::Block *b) |
| void | updateRetLoc (mlir::Block *b, mlir::Location loc) |
| mlir::Block * | getOrCreateRetBlock (CIRGenFunction &cgf, mlir::Location loc) |
| mlir::Block * | getEntryBlock () |
| Public Member Functions inherited from clang::CIRGen::CIRGenFunction::RunCleanupsScope | |
| RunCleanupsScope (CIRGenFunction &cgf) | |
| Enter a new cleanup scope. | |
| ~RunCleanupsScope () | |
| Exit this cleanup scope, emitting any accumulated cleanups. | |
| void | forceCleanup () |
| Force the emission of cleanups now, instead of waiting until this object is destroyed. | |
Public Attributes | |
| unsigned | depth = 0 |
Additional Inherited Members | |
| Protected Attributes inherited from clang::CIRGen::CIRGenFunction::RunCleanupsScope | |
| bool | performCleanup |
| bool | oldDidCallStackSave |
| CIRGenFunction & | cgf |
Represents a scope, including function bodies, compound statements, and the substatements of if/while/do/for/switch/try statements.
This class handles any automatic cleanup, along with the return value.
Definition at line 995 of file CIRGenFunction.h.
|
inline |
Definition at line 1031 of file CIRGenFunction.h.
References clang::CIRGen::CIRGenFunction::RunCleanupsScope::cgf, clang::CIRGen::CIRGenFunction::CIRGenFunction(), clang::CIRGen::CIRGenFunction::curLexScope, and depth.
Referenced by cleanup().
|
inline |
Definition at line 1052 of file CIRGenFunction.h.
References cleanup(), cir::MissingFeatures::generateDebugInfo(), and restore().
| void clang::CIRGen::CIRGenFunction::LexicalScope::cleanup | ( | ) |
Definition at line 233 of file CIRGenFunction.cpp.
References clang::CIRGen::CIRGenFunction::RunCleanupsScope::cgf, depth, clang::CIRGen::CIRGenFunction::RunCleanupsScope::forceCleanup(), cir::MissingFeatures::generateDebugInfo(), getCleanupBlock(), getRetBlocks(), getRetLoc(), isGlobalInit(), isTernary(), LexicalScope(), and clang::CIRGen::CIRGenFunction::RunCleanupsScope::performCleanup.
Referenced by ~LexicalScope().
|
inline |
Definition at line 1092 of file CIRGenFunction.h.
References clang::CIRGen::CIRGenFunction::RunCleanupsScope::cgf.
Referenced by getOrCreateCleanupBlock().
|
inline |
Definition at line 1088 of file CIRGenFunction.h.
Referenced by cleanup().
|
inline |
Definition at line 1171 of file CIRGenFunction.h.
|
inline |
Definition at line 1076 of file CIRGenFunction.h.
References createCleanupBlock().
Referenced by createNormalEntry().
|
inline |
Definition at line 1143 of file CIRGenFunction.h.
References clang::CIRGen::CIRGenFunction::RunCleanupsScope::cgf, clang::CIRGen::CIRGenFunction::CIRGenFunction(), and updateRetLoc().
|
inline |
Definition at line 1137 of file CIRGenFunction.h.
Referenced by cleanup().
|
inline |
|
inline |
Definition at line 1083 of file CIRGenFunction.h.
References isTry().
|
inline |
Definition at line 1061 of file CIRGenFunction.h.
Referenced by cleanup().
|
inline |
Definition at line 1062 of file CIRGenFunction.h.
|
inline |
Definition at line 1063 of file CIRGenFunction.h.
|
inline |
Definition at line 1064 of file CIRGenFunction.h.
Referenced by cleanup().
|
inline |
Definition at line 1065 of file CIRGenFunction.h.
Referenced by getTry().
|
inline |
Definition at line 1050 of file CIRGenFunction.h.
References clang::CIRGen::CIRGenFunction::RunCleanupsScope::cgf.
Referenced by ~LexicalScope().
|
inline |
Definition at line 1067 of file CIRGenFunction.h.
Referenced by emitDeclDestroy(), and emitDeclInit().
|
inline |
Definition at line 1068 of file CIRGenFunction.h.
|
inline |
Definition at line 1069 of file CIRGenFunction.h.
|
inline |
Definition at line 1070 of file CIRGenFunction.h.
Referenced by clang::CIRGen::CIRGenFunction::emitCXXTryStmtUnderScope().
|
inline |
Definition at line 1047 of file CIRGenFunction.h.
|
inline |
Definition at line 1139 of file CIRGenFunction.h.
References b.
Referenced by getOrCreateRetBlock().
| unsigned clang::CIRGen::CIRGenFunction::LexicalScope::depth = 0 |
Definition at line 1029 of file CIRGenFunction.h.
Referenced by cleanup(), and LexicalScope().