clang
17.0.0git
|
#include "CGCleanup.h"
#include "CodeGenFunction.h"
#include "llvm/ADT/ScopeExit.h"
#include "clang/AST/StmtCXX.h"
#include "clang/AST/StmtVisitor.h"
Go to the source code of this file.
Classes | |
struct | clang::CodeGen::CGCoroData |
Functions | |
static void | createCoroData (CodeGenFunction &CGF, CodeGenFunction::CGCoroInfo &CurCoro, llvm::CallInst *CoroId, CallExpr const *CoroIdExpr=nullptr) |
static SmallString< 32 > | buildSuspendPrefixStr (CGCoroData &Coro, AwaitKind Kind) |
static bool | memberCallExpressionCanThrow (const Expr *E) |
static LValueOrRValue | emitSuspendExpression (CodeGenFunction &CGF, CGCoroData &Coro, CoroutineSuspendExpr const &S, AwaitKind Kind, AggValueSlot aggSlot, bool ignoreResult, bool forLValue) |
static QualType | getCoroutineSuspendExprReturnType (const ASTContext &Ctx, const CoroutineSuspendExpr *E) |
static SmallVector< llvm::OperandBundleDef, 1 > | getBundlesForCoroEnd (CodeGenFunction &CGF) |
static void | emitBodyAndFallthrough (CodeGenFunction &CGF, const CoroutineBodyStmt &S, Stmt *Body) |
|
static |
Definition at line 112 of file CGCoroutine.cpp.
References clang::CodeGen::CGCoroData::AwaitNum, clang::No, and clang::CodeGen::CGCoroData::YieldNum.
|
static |
Definition at line 89 of file CGCoroutine.cpp.
References clang::CodeGen::CodeGenFunction::CGM, clang::CodeGen::CodeGenFunction::CurCoro, clang::CodeGen::CodeGenFunction::CGCoroInfo::Data, and clang::CodeGen::CodeGenModule::Error().
Referenced by clang::CodeGen::CodeGenFunction::EmitCoroutineIntrinsic().
|
static |
Definition at line 468 of file CGCoroutine.cpp.
|
static |
|
static |
Definition at line 383 of file CGCoroutine.cpp.
References clang::CodeGen::CodeGenFunction::CurrentFuncletPad.
|
static |
Definition at line 290 of file CGCoroutine.cpp.
References clang::CoroutineSuspendExpr::getResumeExpr().
Referenced by clang::CodeGen::CodeGenFunction::EmitCoawaitLValue(), and clang::CodeGen::CodeGenFunction::EmitCoyieldLValue().
Definition at line 132 of file CGCoroutine.cpp.
References clang::CT_Cannot, and clang::isNoexceptExceptionSpec().