{
{
#define DECL_EXT(name) \
- {(struct cl_extension_base){.ext_id = name##_ext_id, .ext_name = #name, .ext_enabled = 0}},
+ {(struct cl_extension_base){.ext_id = cl_##name##_ext_id, .ext_name = "cl_" #name, .ext_enabled = 0}},
DECL_ALL_EXTENSIONS
},
#undef DECL_EXT
int id;
for(id = BASE_EXT_START_ID; id <= BASE_EXT_END_ID; id++)
//It seems we only support this mandatory extension.
- if (id == EXT_ID(cl_khr_byte_addressable_store))
+ if (id == EXT_ID(khr_byte_addressable_store))
extensions->extensions[id].base.ext_enabled = 1;
}
&& egl_funcs.eglDestroyImageKHR_func != NULL) {
/* For now, we only support cl_khr_gl_sharing. */
for(id = GL_EXT_START_ID; id <= GL_EXT_END_ID; id++)
- if (id == EXT_ID(cl_khr_gl_sharing)) {
+ if (id == EXT_ID(khr_gl_sharing)) {
extensions->extensions[id].base.ext_enabled = 1;
- extensions->extensions[id].EXT_STRUCT_NAME(cl_khr_gl_sharing).gl_ext_deps = &egl_funcs;
+ extensions->extensions[id].EXT_STRUCT_NAME(khr_gl_sharing).gl_ext_deps = &egl_funcs;
}
}
#endif
* names must be returned by all device that
* support OpenCL C 1.2. */
#define DECL_BASE_EXTENSIONS \
- DECL_EXT(cl_khr_global_int32_base_atomics) \
- DECL_EXT(cl_khr_global_int32_extended_atomics) \
- DECL_EXT(cl_khr_local_int32_base_atomics) \
- DECL_EXT(cl_khr_local_int32_extended_atomics) \
- DECL_EXT(cl_khr_byte_addressable_store) \
- DECL_EXT(cl_khr_fp64)
+ DECL_EXT(khr_global_int32_base_atomics) \
+ DECL_EXT(khr_global_int32_extended_atomics) \
+ DECL_EXT(khr_local_int32_base_atomics) \
+ DECL_EXT(khr_local_int32_extended_atomics) \
+ DECL_EXT(khr_byte_addressable_store) \
+ DECL_EXT(khr_fp64)
/* The OPT1 extensions are those optional extensions
* which don't have external dependecies*/
#define DECL_OPT1_EXTENSIONS \
- DECL_EXT(cl_khr_int64_base_atomics)\
- DECL_EXT(cl_khr_int64_extended_atomics)\
- DECL_EXT(cl_khr_3d_image_writes)\
- DECL_EXT(cl_khr_fp16)\
- DECL_EXT(cl_khr_image2d_from_buffer)\
- DECL_EXT(cl_khr_initialize_memory)\
- DECL_EXT(cl_khr_context_abort)\
- DECL_EXT(cl_khr_depth_images)\
- DECL_EXT(cl_khr_spir)
+ DECL_EXT(khr_int64_base_atomics)\
+ DECL_EXT(khr_int64_extended_atomics)\
+ DECL_EXT(khr_3d_image_writes)\
+ DECL_EXT(khr_fp16)\
+ DECL_EXT(khr_image2d_from_buffer)\
+ DECL_EXT(khr_initialize_memory)\
+ DECL_EXT(khr_context_abort)\
+ DECL_EXT(khr_depth_images)\
+ DECL_EXT(khr_spir) \
+ DECL_EXT(khr_icd)
#define DECL_GL_EXTENSIONS \
- DECL_EXT(cl_khr_gl_sharing)\
- DECL_EXT(cl_khr_gl_event)\
- DECL_EXT(cl_khr_gl_depth_images)\
- DECL_EXT(cl_khr_gl_msaa_sharing)
+ DECL_EXT(khr_gl_sharing)\
+ DECL_EXT(khr_gl_event)\
+ DECL_EXT(khr_gl_depth_images)\
+ DECL_EXT(khr_gl_msaa_sharing)
#define DECL_D3D_EXTENSIONS \
- DECL_EXT(cl_khr_d3d10_sharing)\
- DECL_EXT(cl_khr_dx9_media_sharing)\
- DECL_EXT(cl_khr_d3d11_sharing)\
+ DECL_EXT(khr_d3d10_sharing)\
+ DECL_EXT(khr_dx9_media_sharing)\
+ DECL_EXT(khr_d3d11_sharing)\
#define DECL_ALL_EXTENSIONS \
DECL_BASE_EXTENSIONS \
DECL_GL_EXTENSIONS \
DECL_D3D_EXTENSIONS
-#define EXT_ID(name) name ## _ext_id
-#define EXT_STRUCT_NAME(name) name ##ext
+#define EXT_ID(name) cl_ ## name ## _ext_id
+#define EXT_STRUCT_NAME(name) cl_ ## name ## ext
/*Declare enum ids */
typedef enum {
#define DECL_EXT(name) EXT_ID(name),
cl_khr_extension_id_max
}cl_extension_enum;
-#define BASE_EXT_START_ID EXT_ID(cl_khr_global_int32_base_atomics)
-#define BASE_EXT_END_ID EXT_ID(cl_khr_fp64)
-#define GL_EXT_START_ID EXT_ID(cl_khr_gl_sharing)
-#define GL_EXT_END_ID EXT_ID(cl_khr_gl_msaa_sharing)
+#define BASE_EXT_START_ID EXT_ID(khr_global_int32_base_atomics)
+#define BASE_EXT_END_ID EXT_ID(khr_fp64)
+#define GL_EXT_START_ID EXT_ID(khr_gl_sharing)
+#define GL_EXT_END_ID EXT_ID(khr_gl_msaa_sharing)
#define IS_BASE_EXTENSION(id) (id >= BASE_EXT_START_ID && id <= BASE_EXT_END_ID)
#define IS_GL_EXTENSION(id) (id >= GL_EXT_START_ID && id <= GL_EXT_END_ID)
EGLint egl_attribs[] = { EGL_GL_TEXTURE_LEVEL_KHR, miplevel, EGL_NONE};
assert(ctx->props.gl_type == CL_GL_EGL_DISPLAY);
-/* cl.h defined cl_khr_gl_sharing to 1. we have to undefine it here.*/
-#ifdef cl_khr_gl_sharing
-#undef cl_khr_gl_sharing
-#endif
- egl_funcs = CL_EXTENSION_GET_FUNCS(ctx, cl_khr_gl_sharing, gl_ext_deps);
+ egl_funcs = CL_EXTENSION_GET_FUNCS(ctx, khr_gl_sharing, gl_ext_deps);
assert(egl_funcs != NULL);
egl_display = (EGLDisplay)ctx->props.egl_display;
egl_context = (EGLDisplay)ctx->props.gl_context;