23 #ifndef __CLRX_CLHELPER_H__ 24 #define __CLRX_CLHELPER_H__ 50 explicit CLError(
const char* _description);
53 CLError(cl_int _error,
const char* _description);
59 const char*
what()
const noexcept;
93 const char* sourceCode,
size_t sourceCodeLen = 0);
97 const std::vector<std::pair<CString, uint64_t> >& defSymbols,
98 const char* sourceCode,
size_t sourceCodeLen = 0);
107 const CLAsmSetup& asmSetup,
const char* sourceCode,
size_t sourceCodeLen = 0,
113 const std::vector<std::pair<CString, uint64_t> >& defSymbols,
114 const char* sourceCode,
size_t sourceCodeLen = 0,
cl_program createProgramForCLDevice(cl_context clContext, cl_device_id clDevice, const CLAsmSetup &asmSetup, const Array< cxbyte > &binary, CString *buildLog=nullptr)
create (build program) binary for OpenCL device
common definitions for assembler and disassembler
int code() const
get OpenCL error code
Definition: CLHelper.h:62
uint32_t Flags
type for declaring various flags
Definition: Utilities.h:97
BinaryFormat
binary for Disassembler
Definition: Commons.h:33
structure that holds assembler setup for OpenCL programs
Definition: CLHelper.h:76
an array class
Definition: Containers.h:38
CLAsmSetup assemblerSetupForCLDevice(cl_device_id clDevice, Flags flags=0, Flags asmFlags=0)
get assembler setup(compile assembler code) binary for OpenCL device
Array< cxbyte > createBinaryForOpenCL(const CLAsmSetup &asmSetup, const char *sourceCode, size_t sourceCodeLen=0)
create program binary for OpenCL
bool is64Bit
if binary is 64-bit
Definition: CLHelper.h:82
force using AMD OpenCL 2.0 binary format
Definition: CLHelper.h:71
virtual ~CLError() noexcept
destructor
BinaryFormat binaryFormat
binary format
Definition: CLHelper.h:79
main namespace
Definition: AsmDefs.h:38
error class based on std::exception
Definition: CLHelper.h:41
unsigned int cxuint
unsigned int
Definition: Config.h:223
const char * what() const noexcept
get what
GPUDeviceType
type of GPU device
Definition: GPUId.h:51
CString options
OpenCL base options.
Definition: CLHelper.h:83
utilities for other libraries and programs
exception class
Definition: Utilities.h:58
Flags asmFlags
assembler flags
Definition: CLHelper.h:84
force using AMD OpenCL 1.2 binary format
Definition: CLHelper.h:72
GPU identification utilities.
cxuint driverVersion
driver version
Definition: CLHelper.h:80
cl_platform_id chooseCLPlatformForCLRX()
choose suitable OpenCL platform for CLRX assembler programs
GPUDeviceType deviceType
device typ
Definition: CLHelper.h:78
cxuint llvmVersion
LLVM version.
Definition: CLHelper.h:81
simple C-string container
Definition: CString.h:38
containers and other utils for other libraries and programs