class CodeGenFunction::CGCapturedStmtInfo

Declaration

class CodeGenFunction::CGCapturedStmtInfo { /* full declaration omitted */ };

Description

API for captured statement code generation.

Declared at: clang/lib/CodeGen/CodeGenFunction.h:406

Member Variables

private clang::CapturedRegionKind Kind
The kind of captured statement being generated.
private llvm::SmallDenseMap<const VarDecl*, FieldDecl*> CaptureFields
Keep the map between VarDecl and FieldDecl.
private llvm::Value* ThisValue
The base address of the captured record, passed in as the first argument of the parallel region function.
private clang::FieldDecl* CXXThisFieldDecl
Captured 'this' type.

Method Overview

Methods

CGCapturedStmtInfo(
    clang::CapturedRegionKind K = CR_Default)

Declared at: clang/lib/CodeGen/CodeGenFunction.h:408

Parameters

clang::CapturedRegionKind K = CR_Default

CGCapturedStmtInfo(
    const clang::CapturedStmt& S,
    clang::CapturedRegionKind K = CR_Default)

Declared at: clang/lib/CodeGen/CodeGenFunction.h:410

Parameters

const clang::CapturedStmt& S
clang::CapturedRegionKind K = CR_Default

virtual void EmitBody(
    clang::CodeGen::CodeGenFunction& CGF,
    const clang::Stmt* S)

Description

Emit the captured statement body.

Declared at: clang/lib/CodeGen/CodeGenFunction.h:449

Parameters

clang::CodeGen::CodeGenFunction& CGF
const clang::Stmt* S

static bool classof(
    const clang::CodeGen::CodeGenFunction::
        CGCapturedStmtInfo*)

Declared at: clang/lib/CodeGen/CodeGenFunction.h:444

Parameters

const clang::CodeGen::CodeGenFunction:: CGCapturedStmtInfo*

llvm::SmallDenseMap<const VarDecl*, FieldDecl*>
getCaptureFields()

Description

Get the CaptureFields

Declared at: clang/lib/CodeGen/CodeGenFunction.h:458

virtual llvm::Value* getContextValue() const

Declared at: clang/lib/CodeGen/CodeGenFunction.h:434

virtual llvm::StringRef getHelperName() const

Description

Get the name of the capture helper.

Declared at: clang/lib/CodeGen/CodeGenFunction.h:455

clang::CapturedRegionKind getKind() const

Declared at: clang/lib/CodeGen/CodeGenFunction.h:430

virtual clang::FieldDecl* getThisFieldDecl() const

Declared at: clang/lib/CodeGen/CodeGenFunction.h:442

bool isCXXThisExprCaptured() const

Declared at: clang/lib/CodeGen/CodeGenFunction.h:441

virtual const clang::FieldDecl* lookup(
    const clang::VarDecl* VD) const

Description

Lookup the captured field decl for a variable.

Declared at: clang/lib/CodeGen/CodeGenFunction.h:437

Parameters

const clang::VarDecl* VD

virtual void setContextValue(llvm::Value* V)

Declared at: clang/lib/CodeGen/CodeGenFunction.h:432

Parameters

llvm::Value* V

virtual ~CGCapturedStmtInfo()

Declared at: clang/lib/CodeGen/CodeGenFunction.h:428