struct CodeGenFunction::OMPBuilderCBHelpers
Declaration
struct CodeGenFunction::OMPBuilderCBHelpers { /* full declaration omitted */ };
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1728
Method Overview
- public static void EmitCaptureStmt(clang::CodeGen::CodeGenFunction & CGF, clang::CodeGen::CodeGenFunction::OMPBuilderCBHelpers::InsertPointTy CodeGenIP, llvm::BasicBlock & FiniBB, llvm::Function * Fn, ArrayRef<llvm::Value *> Args)
- public static void EmitOMPInlinedRegionBody(clang::CodeGen::CodeGenFunction & CGF, const clang::Stmt * RegionBodyStmt, clang::CodeGen::CodeGenFunction::OMPBuilderCBHelpers::InsertPointTy AllocaIP, clang::CodeGen::CodeGenFunction::OMPBuilderCBHelpers::InsertPointTy CodeGenIP, llvm::Twine RegionName)
- public static void EmitOMPOutlinedRegionBody(clang::CodeGen::CodeGenFunction & CGF, const clang::Stmt * RegionBodyStmt, clang::CodeGen::CodeGenFunction::OMPBuilderCBHelpers::InsertPointTy AllocaIP, clang::CodeGen::CodeGenFunction::OMPBuilderCBHelpers::InsertPointTy CodeGenIP, llvm::Twine RegionName)
- public static void FinalizeOMPRegion(clang::CodeGen::CodeGenFunction & CGF, clang::CodeGen::CodeGenFunction::OMPBuilderCBHelpers::InsertPointTy IP)
- public OMPBuilderCBHelpers()
- public OMPBuilderCBHelpers(const clang::CodeGen::CodeGenFunction::OMPBuilderCBHelpers &)
- public static clang::CodeGen::Address getAddrOfThreadPrivate(clang::CodeGen::CodeGenFunction & CGF, const clang::VarDecl * VD, clang::CodeGen::Address VDAddr, clang::SourceLocation Loc)
- public static clang::CodeGen::Address getAddressOfLocalVariable(clang::CodeGen::CodeGenFunction & CGF, const clang::VarDecl * VD)
- public static std::string getNameWithSeparators(ArrayRef<llvm::StringRef> Parts, llvm::StringRef FirstSeparator = ".", llvm::StringRef Separator = ".")
Methods
¶static void EmitCaptureStmt(
clang::CodeGen::CodeGenFunction& CGF,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
CodeGenIP,
llvm::BasicBlock& FiniBB,
llvm::Function* Fn,
ArrayRef<llvm::Value*> Args)
static void EmitCaptureStmt(
clang::CodeGen::CodeGenFunction& CGF,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
CodeGenIP,
llvm::BasicBlock& FiniBB,
llvm::Function* Fn,
ArrayRef<llvm::Value*> Args)
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1808
Parameters
- clang::CodeGen::CodeGenFunction& CGF
- clang::CodeGen::CodeGenFunction:: OMPBuilderCBHelpers::InsertPointTy CodeGenIP
- llvm::BasicBlock& FiniBB
- llvm::Function* Fn
- ArrayRef<llvm::Value*> Args
¶static void EmitOMPInlinedRegionBody(
clang::CodeGen::CodeGenFunction& CGF,
const clang::Stmt* RegionBodyStmt,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
AllocaIP,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
CodeGenIP,
llvm::Twine RegionName)
static void EmitOMPInlinedRegionBody(
clang::CodeGen::CodeGenFunction& CGF,
const clang::Stmt* RegionBodyStmt,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
AllocaIP,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
CodeGenIP,
llvm::Twine RegionName)
Description
Emit the body of an OMP region
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1802
Parameters
- clang::CodeGen::CodeGenFunction& CGF
- The Codegen function this belongs to
- const clang::Stmt* RegionBodyStmt
- The body statement for the OpenMP region being generated
- clang::CodeGen::CodeGenFunction:: OMPBuilderCBHelpers::InsertPointTy AllocaIP
- Where to insert alloca instructions
- clang::CodeGen::CodeGenFunction:: OMPBuilderCBHelpers::InsertPointTy CodeGenIP
- Where to insert the region code
- llvm::Twine RegionName
- Name to be used for new blocks
¶static void EmitOMPOutlinedRegionBody(
clang::CodeGen::CodeGenFunction& CGF,
const clang::Stmt* RegionBodyStmt,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
AllocaIP,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
CodeGenIP,
llvm::Twine RegionName)
static void EmitOMPOutlinedRegionBody(
clang::CodeGen::CodeGenFunction& CGF,
const clang::Stmt* RegionBodyStmt,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
AllocaIP,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy
CodeGenIP,
llvm::Twine RegionName)
Description
Emit the body of an OMP region that will be outlined in OpenMPIRBuilder::finalize().
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1834
Parameters
- clang::CodeGen::CodeGenFunction& CGF
- The Codegen function this belongs to
- const clang::Stmt* RegionBodyStmt
- The body statement for the OpenMP region being generated
- clang::CodeGen::CodeGenFunction:: OMPBuilderCBHelpers::InsertPointTy AllocaIP
- Where to insert alloca instructions
- clang::CodeGen::CodeGenFunction:: OMPBuilderCBHelpers::InsertPointTy CodeGenIP
- Where to insert the region code
- llvm::Twine RegionName
- Name to be used for new blocks
¶static void FinalizeOMPRegion(
clang::CodeGen::CodeGenFunction& CGF,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy IP)
static void FinalizeOMPRegion(
clang::CodeGen::CodeGenFunction& CGF,
clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers::InsertPointTy IP)
Description
Emit the Finalization for an OMP region
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1779
Parameters
- clang::CodeGen::CodeGenFunction& CGF
- The Codegen function this belongs to
- clang::CodeGen::CodeGenFunction:: OMPBuilderCBHelpers::InsertPointTy IP
- Insertion point for generating the finalization code.
¶OMPBuilderCBHelpers()
OMPBuilderCBHelpers()
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1730
¶OMPBuilderCBHelpers(
const clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers&)
OMPBuilderCBHelpers(
const clang::CodeGen::CodeGenFunction::
OMPBuilderCBHelpers&)
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1731
Parameters
- const clang::CodeGen::CodeGenFunction:: OMPBuilderCBHelpers&
¶static clang::CodeGen::Address
getAddrOfThreadPrivate(
clang::CodeGen::CodeGenFunction& CGF,
const clang::VarDecl* VD,
clang::CodeGen::Address VDAddr,
clang::SourceLocation Loc)
static clang::CodeGen::Address
getAddrOfThreadPrivate(
clang::CodeGen::CodeGenFunction& CGF,
const clang::VarDecl* VD,
clang::CodeGen::Address VDAddr,
clang::SourceLocation Loc)
Description
Returns address of the threadprivate variable for the current thread. This Also create any necessary OMP runtime calls.
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1760
Parameters
- clang::CodeGen::CodeGenFunction& CGF
- const clang::VarDecl* VD
- VarDecl for Threadprivate variable.
- clang::CodeGen::Address VDAddr
- Address of the Vardecl
- clang::SourceLocation Loc
- The location where the barrier directive was encountered
¶static clang::CodeGen::Address
getAddressOfLocalVariable(
clang::CodeGen::CodeGenFunction& CGF,
const clang::VarDecl* VD)
static clang::CodeGen::Address
getAddressOfLocalVariable(
clang::CodeGen::CodeGenFunction& CGF,
const clang::VarDecl* VD)
Description
Gets the OpenMP-specific address of the local variable /p VD.
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1765
Parameters
- clang::CodeGen::CodeGenFunction& CGF
- const clang::VarDecl* VD
¶static std::string getNameWithSeparators(
ArrayRef<llvm::StringRef> Parts,
llvm::StringRef FirstSeparator = ".",
llvm::StringRef Separator = ".")
static std::string getNameWithSeparators(
ArrayRef<llvm::StringRef> Parts,
llvm::StringRef FirstSeparator = ".",
llvm::StringRef Separator = ".")
Description
Get the platform-specific name separator.
Declared at: clang/lib/CodeGen/CodeGenFunction.h:1773
Parameters
- ArrayRef<llvm::StringRef> Parts
- different parts of the final name that needs separation
- llvm::StringRef FirstSeparator = "."
- First separator used between the initial two parts of the name.
- llvm::StringRef Separator = "."
- separator used between all of the rest consecutinve parts of the name