clover: Implement clGetExtensionFunctionAddressForPlatform.

Add clGetExtensionFunctionAddressForPlatform (CL 1.2).

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
This commit is contained in:
Serge Martin 2015-09-27 11:15:14 +02:00 committed by Francisco Jerez
parent 2fba72046d
commit cb0879985a
3 changed files with 21 additions and 1 deletions

View File

@ -131,7 +131,7 @@ namespace clover {
clEnqueueMigrateMemObjects,
clEnqueueMarkerWithWaitList,
clEnqueueBarrierWithWaitList,
NULL, // clGetExtensionFunctionAddressForPlatform
GetExtensionFunctionAddressForPlatform,
NULL, // clCreateFromGLTexture
NULL, // clGetDeviceIDsFromD3D11KHR
NULL, // clCreateFromD3D11BufferKHR

View File

@ -777,6 +777,10 @@ namespace clover {
void *
GetExtensionFunctionAddress(const char *p_name);
void *
GetExtensionFunctionAddressForPlatform(cl_platform_id d_platform,
const char *p_name);
cl_int
IcdGetPlatformIDsKHR(cl_uint num_entries, cl_platform_id *rd_platforms,
cl_uint *rnum_platforms);

View File

@ -91,6 +91,16 @@ clover::GetPlatformInfo(cl_platform_id d_platform, cl_platform_info param,
return e.get();
}
void *
clover::GetExtensionFunctionAddressForPlatform(cl_platform_id d_platform,
const char *p_name) try {
obj(d_platform);
return GetExtensionFunctionAddress(p_name);
} catch (error &e) {
return NULL;
}
void *
clover::GetExtensionFunctionAddress(const char *p_name) {
std::string name { p_name };
@ -118,6 +128,12 @@ clGetExtensionFunctionAddress(const char *p_name) {
return GetExtensionFunctionAddress(p_name);
}
CLOVER_ICD_API void *
clGetExtensionFunctionAddressForPlatform(cl_platform_id d_platform,
const char *p_name) {
return GetExtensionFunctionAddressForPlatform(d_platform, p_name);
}
CLOVER_ICD_API cl_int
clIcdGetPlatformIDsKHR(cl_uint num_entries, cl_platform_id *rd_platforms,
cl_uint *rnum_platforms) {