clang  19.0.0git
Public Types | Public Member Functions | List of all members
clang::CodeGen::TargetCodeGenInfo::TargetOpenCLBlockHelper Class Referenceabstract

Interface class for filling custom fields of a block literal for OpenCL. More...

#include "/home/runner/work/llvm/llvm/repo/clang/lib/CodeGen/TargetInfo.h"

Public Types

typedef std::pair< llvm::Value *, StringRef > ValueTy
 

Public Member Functions

 TargetOpenCLBlockHelper ()
 
virtual ~TargetOpenCLBlockHelper ()
 
virtual llvm::SmallVector< llvm::Type *, 1 > getCustomFieldTypes ()=0
 Get the custom field types for OpenCL blocks. More...
 
virtual llvm::SmallVector< ValueTy, 1 > getCustomFieldValues (CodeGenFunction &CGF, const CGBlockInfo &Info)=0
 Get the custom field values for OpenCL blocks. More...
 
virtual bool areAllCustomFieldValuesConstant (const CGBlockInfo &Info)=0
 
virtual llvm::SmallVector< llvm::Constant *, 1 > getCustomFieldValues (CodeGenModule &CGM, const CGBlockInfo &Info)=0
 Get the custom field values for OpenCL blocks if all values are LLVM constants. More...
 

Detailed Description

Interface class for filling custom fields of a block literal for OpenCL.

Definition at line 337 of file TargetInfo.h.

Member Typedef Documentation

◆ ValueTy

typedef std::pair<llvm::Value *, StringRef> clang::CodeGen::TargetCodeGenInfo::TargetOpenCLBlockHelper::ValueTy

Definition at line 339 of file TargetInfo.h.

Constructor & Destructor Documentation

◆ TargetOpenCLBlockHelper()

clang::CodeGen::TargetCodeGenInfo::TargetOpenCLBlockHelper::TargetOpenCLBlockHelper ( )
inline

Definition at line 340 of file TargetInfo.h.

◆ ~TargetOpenCLBlockHelper()

virtual clang::CodeGen::TargetCodeGenInfo::TargetOpenCLBlockHelper::~TargetOpenCLBlockHelper ( )
inlinevirtual

Definition at line 341 of file TargetInfo.h.

Member Function Documentation

◆ areAllCustomFieldValuesConstant()

virtual bool clang::CodeGen::TargetCodeGenInfo::TargetOpenCLBlockHelper::areAllCustomFieldValuesConstant ( const CGBlockInfo Info)
pure virtual

◆ getCustomFieldTypes()

virtual llvm::SmallVector<llvm::Type *, 1> clang::CodeGen::TargetCodeGenInfo::TargetOpenCLBlockHelper::getCustomFieldTypes ( )
pure virtual

Get the custom field types for OpenCL blocks.

◆ getCustomFieldValues() [1/2]

virtual llvm::SmallVector<ValueTy, 1> clang::CodeGen::TargetCodeGenInfo::TargetOpenCLBlockHelper::getCustomFieldValues ( CodeGenFunction CGF,
const CGBlockInfo Info 
)
pure virtual

Get the custom field values for OpenCL blocks.

◆ getCustomFieldValues() [2/2]

virtual llvm::SmallVector<llvm::Constant *, 1> clang::CodeGen::TargetCodeGenInfo::TargetOpenCLBlockHelper::getCustomFieldValues ( CodeGenModule CGM,
const CGBlockInfo Info 
)
pure virtual

Get the custom field values for OpenCL blocks if all values are LLVM constants.


The documentation for this class was generated from the following file: