[Beignet] [PATCH 1/4] [opencl-2.0] icd API update for opencl 2.0.

xionghu.luo at intel.com xionghu.luo at intel.com
Wed Apr 29 01:03:59 PDT 2015


From: Luo Xionghu <xionghu.luo at intel.com>

v2: add this icd entry for opencl 2.0 special API.

Signed-off-by: Luo Xionghu <xionghu.luo at intel.com>
---
 src/cl_khr_icd.c | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 80 insertions(+), 1 deletion(-)

diff --git a/src/cl_khr_icd.c b/src/cl_khr_icd.c
index 8715bbd..febb93e 100644
--- a/src/cl_khr_icd.c
+++ b/src/cl_khr_icd.c
@@ -22,6 +22,7 @@
 #define CL_GL_INTEROP(x) NULL
 /* OpenCL 1.2 is not implemented in Beignet */
 #define CL_1_2_NOTYET(x) NULL
+#define CL_2_0_NOTYET(x) NULL
 
 /** Return platform list through ICD interface
  * This code is used only if a client is linked directly against the library
@@ -156,6 +157,12 @@ struct _cl_icd_dispatch const cl_khr_icd_dispatch = {
   clEnqueueBarrierWithWaitList,
   clGetExtensionFunctionAddressForPlatform,
   CL_GL_INTEROP(clCreateFromGLTexture),
+#else
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
   (void *) NULL,
   (void *) NULL,
   (void *) NULL,
@@ -168,7 +175,79 @@ struct _cl_icd_dispatch const cl_khr_icd_dispatch = {
   (void *) NULL,
   (void *) NULL,
   (void *) NULL,
-  (void *) NULL
 #endif
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+#ifdef CL_VERSION_2_0
+  CL_2_0_NOTYET(clCreateCommandQueueWithProperties),
+  CL_2_0_NOTYET(clCreatePipe),
+  CL_2_0_NOTYET(clGetPipeInfo),
+  CL_2_0_NOTYET(clSVMAlloc),
+  CL_2_0_NOTYET(clSVMFree),
+  CL_2_0_NOTYET(clEnqueueSVMFree),
+  CL_2_0_NOTYET(clEnqueueSVMMemcpy),
+  CL_2_0_NOTYET(clEnqueueSVMMemFill),
+  CL_2_0_NOTYET(clEnqueueSVMMap),
+  CL_2_0_NOTYET(clEnqueueSVMUnmap),
+  CL_2_0_NOTYET(clCreateSamplerWithProperties),
+  CL_2_0_NOTYET(clSetKernelArgSVMPointer),
+  CL_2_0_NOTYET(clSetKernelExecInfo),
+#else
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+#endif
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
+  (void *) NULL,
 };
 
-- 
1.9.1



More information about the Beignet mailing list