blob: bbc4b51d47a6518004298865b8aa2e64cd63ec09 [file] [edit]
<?xml version="1.0" encoding="UTF-8"?>
<registry>
<comment>
Copyright (c) 2013-2018 The Khronos Group Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
---- Exceptions to the Apache 2.0 License: ----
As an exception, if you use this Software to generate code and portions of
this Software are embedded into the generated code as a result, you may
redistribute such product without providing attribution as would otherwise
be required by Sections 4(a), 4(b) and 4(d) of the License.
In addition, if you combine or link code generated by this Software with
software that is licensed under the GPLv2 or the LGPL v2.0 or 2.1
("`Combined Software`") and if a court of competent jurisdiction determines
that the patent provision (Section 3), the indemnity provision (Section 9)
or other Section of the License conflicts with the conditions of the
applicable GPL or LGPL license, you may retroactively and prospectively
choose to deem waived or otherwise exclude such Section(s) of the License,
but only in their entirety and only with respect to the Combined Software.
</comment>
<comment>
This file, cl.xml, is the OpenCL API Registry. It is a critically important
and normative part of the OpenCL API Specification, including a canonical
machine-readable definition of the API, parameter and member validation
language incorporated into the Specification and reference pages, and other
material which is registered by Khronos.
The authoritative public version of ck.xml is maintained in the master
branch of the Khronos OpenCL-API GitHub repository. The authoritative
private version is maintained in the master branch of the member gitlab
server's OpenCL/api-docs repository.
</comment>
<types comment="OpenCL type definitions">
<comment>These are dependencies CL types require to be declared legally</comment>
<type category="include" name="stdint">#include &lt;stdint.h&gt;</type>
<comment>Windows headers and types</comment>
<type category="include" name="d3d10.h">#include &lt;d3d10.h&gt;</type>
<type category="include" name="d3d11.h">#include &lt;d3d11.h&gt;</type>
<type category="include" name="d3d9.h">#include &lt;d3d9.h&gt;</type>
<type category="include" name="d3d9types.h">#include &lt;d3d9types.h&gt;</type>
<type category="include" name="dxvahd.h">#include &lt;dxvahd.h&gt;</type>
<type category="include" name="wtypes.h">#include &lt;wtypes.h&gt;</type>
<type category="include" name="ID3D10Buffer" requires="d3d10.h"/>
<type category="include" name="ID3D10Texture2D" requires="d3d10.h"/>
<type category="include" name="ID3D10Texture3D" requires="d3d10.h"/>
<type category="include" name="ID3D11Buffer" requires="d3d11.h"/>
<type category="include" name="ID3D11Texture2D" requires="d3d11.h"/>
<type category="include" name="ID3D11Texture3D" requires="d3d11.h"/>
<type category="include" name="IDirect3DSurface9" requires="d3d9.h"/>
<type category="include" name="HANDLE" requires="d3d9types.h"/>
<type category="include" name="UINT" comment="Requires one of the D3D headers, which in turn probably pulls in windows.h"/>
<comment>Non-CL headers and types</comment>
<type category="include" name="va/va.h">#include &lt;va/va.h&gt;</type>
<type category="include" name="VASurfaceID" requires="va/va.h"/>
<comment>CL headers and types</comment>
<type category="include" name="CL/cl.h">#include &lt;CL/cl.h&gt;</type>
<type category="include" name="CL/cl_platform.h">#include &lt;CL/cl_platform.h&gt;</type>
<type category="include" name="CL/cl_gl.h">#include &lt;CL/cl_gl.h&gt;</type>
<type category="include" name="CL/cl_version.h">#include &lt;CL/cl_version.h&gt;</type>
<comment>Basic C types, pulled in via platform header in some cases</comment>
<type category="basetype" requires="CL/cl_platform.h" name="void"/>
<type category="basetype" requires="CL/cl_platform.h" name="char"/>
<type category="basetype" requires="CL/cl_platform.h" name="int"/>
<type category="basetype" requires="CL/cl_platform.h" name="unsigned char"/>
<type category="basetype" requires="CL/cl_platform.h" name="intptr_t"/>
<type category="basetype" requires="CL/cl_platform.h" name="size_t"/>
<comment>Scalar types</comment>
<type category="define" requires="stdint">typedef double <name>cl_double</name> __attribute__((aligned(8)));</type>
<type category="define" requires="stdint">typedef float <name>cl_float</name> __attribute__((aligned(4)));</type>
<type category="define" requires="stdint">typedef int16_t <name>cl_short</name> __attribute__((aligned(2)));</type>
<type category="define" requires="stdint">typedef int32_t <name>cl_int</name> __attribute__((aligned(4)));</type>
<type category="define" requires="stdint">typedef int64_t <name>cl_long</name> __attribute__((aligned(8)));</type>
<type category="define" requires="stdint">typedef int8_t <name>cl_char</name>;</type>
<type category="define" requires="stdint">typedef uint16_t <name>cl_half</name> __attribute__((aligned(2)));</type>
<type category="define" requires="stdint">typedef uint16_t <name>cl_ushort</name> __attribute__((aligned(2)));</type>
<type category="define" requires="stdint">typedef uint32_t <name>cl_uint</name> __attribute__((aligned(4)));</type>
<type category="define" requires="stdint">typedef uint64_t <name>cl_ulong</name> __attribute__((aligned(8)));</type>
<type category="define" >typedef int <name>cl_GLint</name>;</type>
<type category="define" >typedef unsigned int <name>cl_GLenum</name>;</type>
<type category="define" >typedef unsigned int <name>cl_GLuint</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_d3d11_device_source_khr</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_d3d11_device_set_khr</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_dx9_media_adapter_type_khr</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_dx9_media_adapter_set_khr</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_d3d10_device_source_khr</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_d3d10_device_set_khr</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_dx9_device_source_intel</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_dx9_device_set_intel</name>;</type>
<type category="define">typedef struct _cl_accelerator_intel* <name>cl_accelerator_intel</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_accelerator_type_intel</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_accelerator_info_intel</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_diagnostics_verbose_level</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_va_api_device_source_intel</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_va_api_device_set_intel</name>;</type>
<type category="define">typedef struct __GLsync * <name>cl_GLsync</name>;</type>
<type category="define">typedef void * <name>CLeglImageKHR</name>;</type>
<type category="define">typedef void * <name>CLeglDisplayKHR</name>;</type>
<type category="define">typedef void * <name>CLeglSyncKHR</name>;</type>
<type category="define">typedef <type>intptr_t</type> <name>cl_egl_image_properties_khr</name>;</type>
<type category="define">typedef <type>cl_ulong</type> <name>cl_device_partition_property_ext</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_mem_migration_flags_ext</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_image_pitch_info_qcom</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_queue_priority_khr</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_queue_throttle_khr</name>;</type>
<type category="define">typedef <type>intptr_t</type> <name>cl_import_properties_arm</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_svm_mem_flags_arm</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_kernel_exec_info_arm</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_device_svm_capabilities_arm</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_gl_context_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_gl_object_type</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_gl_texture_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_gl_platform_info</name>;</type>
<type category="define">typedef struct _cl_platform_id * <name>cl_platform_id</name>;</type>
<type category="define">typedef struct _cl_device_id * <name>cl_device_id</name>;</type>
<type category="define">typedef struct _cl_context * <name>cl_context</name>;</type>
<type category="define">typedef struct _cl_command_queue * <name>cl_command_queue</name>;</type>
<type category="define">typedef struct _cl_mem * <name>cl_mem</name>;</type>
<type category="define">typedef struct _cl_program * <name>cl_program</name>;</type>
<type category="define">typedef struct _cl_kernel * <name>cl_kernel</name>;</type>
<type category="define">typedef struct _cl_event * <name>cl_event</name>;</type>
<type category="define">typedef struct _cl_sampler * <name>cl_sampler</name>;</type>
<type category="define" comment="Unlike cl_platform.h types, not guaranteed to be the same size as kernel bool">typedef <type>cl_uint</type> <name>cl_bool</name>;</type>
<type category="define">typedef <type>cl_ulong</type> <name>cl_bitfield</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_device_type</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_platform_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_device_info</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_device_fp_config</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_device_mem_cache_type</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_device_local_mem_type</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_device_exec_capabilities</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_device_svm_capabilities</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_command_queue_properties</name>;</type>
<type category="define">typedef <type>intptr_t</type> <name>cl_device_partition_property</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_device_affinity_domain</name>;</type>
<type category="define">typedef <type>intptr_t</type> <name>cl_context_properties</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_context_info</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_queue_properties</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_queue_properties_khr</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_command_queue_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_channel_order</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_channel_type</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_mem_flags</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_svm_mem_flags</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_mem_object_type</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_mem_info</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_mem_migration_flags</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_image_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_buffer_create_type</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_addressing_mode</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_filter_mode</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_sampler_info</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_map_flags</name>;</type>
<type category="define">typedef <type>intptr_t</type> <name>cl_pipe_properties</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_pipe_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_program_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_program_build_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_program_binary_type</name>;</type>
<type category="define">typedef <type>cl_int</type> <name>cl_build_status</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_kernel_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_kernel_arg_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_kernel_arg_address_qualifier</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_kernel_arg_access_qualifier</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_kernel_arg_type_qualifier</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_kernel_work_group_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_kernel_sub_group_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_event_info</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_command_type</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_profiling_info</name>;</type>
<type category="define">typedef <type>cl_bitfield</type> <name>cl_sampler_properties</name>;</type>
<type category="define">typedef <type>cl_uint</type> <name>cl_kernel_exec_info</name>;</type>
<comment>Structure types</comment>
<type category="struct" name="cl_dx9_surface_info_khr">
<member><type>IDirect3DSurface9</type>* <name>resource</name></member>
<member><type>HANDLE</type> <name>shared_handle</name></member>
</type>
<type category="struct" name="cl_motion_estimation_desc_intel">
<member><type>cl_uint</type> <name>mb_block_type</name></member>
<member><type>cl_uint</type> <name>subpixel_mode</name></member>
<member><type>cl_uint</type> <name>sad_adjust_mode</name></member>
<member><type>cl_uint</type> <name>search_path_type</name></member>
</type>
<type category="struct" name="cl_mem_ext_host_ptr">
<member><type>cl_uint</type> <name>allocation_type</name></member>
<member><type>cl_uint</type> <name>host_cache_policy</name></member>
</type>
<type category="struct" name="cl_mem_ion_host_ptr">
<member><type>cl_mem_ext_host_ptr</type> <name>ext_host_ptr</name></member>
<member><type>int</type> <name>ion_filedesc</name></member>
<member><type>void</type>* <name>ion_hostptr</name></member>
</type>
<type category="struct" name="cl_mem_android_native_buffer_host_ptr">
<member><type>cl_mem_ext_host_ptr</type> <name>ext_host_ptr</name></member>
<member><type>void</type>* <name>anb_ptr</name></member>
</type>
<type category="struct" name="cl_image_format">
<member><type>cl_channel_order</type> <name>image_channel_order</name></member>
<member><type>cl_channel_type</type> <name>image_channel_data_type</name></member>
</type>
<type category="struct" name="cl_image_desc">
<member><type>cl_mem_object_type</type> <name>image_type</name></member>
<member><type>size_t</type> <name>image_width</name></member>
<member><type>size_t</type> <name>image_height</name></member>
<member><type>size_t</type> <name>image_depth</name></member>
<member><type>size_t</type> <name>image_array_size</name></member>
<member><type>size_t</type> <name>image_row_pitch</name></member>
<member><type>size_t</type> <name>image_slice_pitch</name></member>
<member><type>cl_uint</type> <name>num_mip_levels</name></member>
<member><type>cl_uint</type> <name>num_samples</name></member>
<!-- Can't properly express this in XML schema yet - use name/ tag to align? -->
<member>#ifdef __GNUC__
__extension__ /* Prevents warnings about anonymous union in -pedantic builds */
#endif
union {
cl_mem buffer;
cl_mem mem_object;
}</member>
</type>
<type category="struct" name="cl_buffer_region">
<member><type>size_t</type> <name>origin</name></member>
<member><type>size_t</type> <name>size</name></member>
</type>
</types>
<!-- SECTION: OpenCL enumerant (token) definitions. -->
<!-- There are a variety of namespaces corresponding to different
parameter types, including bitmasks in their own namespaces -->
<enums name="Constants" vendor="Khronos" comment="Miscellaneous API constants, in cl_platform.h">
<enum value="8" name="CL_CHAR_BIT"/>
<enum value="127" name="CL_SCHAR_MAX"/>
<enum value="(-127-1)" name="CL_SCHAR_MIN"/>
<enum value="CL_SCHAR_MAX" name="CL_CHAR_MAX"/>
<enum value="CL_SCHAR_MIN" name="CL_CHAR_MIN"/>
<enum value="255" name="CL_UCHAR_MAX"/>
<enum value="32767" name="CL_SHRT_MAX"/>
<enum value="(-32767-1)" name="CL_SHRT_MIN"/>
<enum value="65535" name="CL_USHRT_MAX"/>
<enum value="2147483647" name="CL_INT_MAX"/>
<enum value="(-2147483647-1)" name="CL_INT_MIN"/>
<enum value="0xffffffffU" name="CL_UINT_MAX"/>
<enum value="((cl_long) 0x7FFFFFFFFFFFFFFFLL)" name="CL_LONG_MAX"/>
<enum value="((cl_long) -0x7FFFFFFFFFFFFFFFLL - 1LL)" name="CL_LONG_MIN"/>
<enum value="((cl_ulong) 0xFFFFFFFFFFFFFFFFULL)" name="CL_ULONG_MAX"/>
<enum value="6" name="CL_FLT_DIG"/>
<enum value="24" name="CL_FLT_MANT_DIG"/>
<enum value="+38" name="CL_FLT_MAX_10_EXP"/>
<enum value="+128" name="CL_FLT_MAX_EXP"/>
<enum value="-37" name="CL_FLT_MIN_10_EXP"/>
<enum value="-125" name="CL_FLT_MIN_EXP"/>
<enum value="2" name="CL_FLT_RADIX"/>
<enum value="340282346638528859811704183484516925440.0f" name="CL_FLT_MAX"/>
<enum value="1.175494350822287507969e-38f" name="CL_FLT_MIN"/>
<enum value="1.1920928955078125e-7f" name="CL_FLT_EPSILON"/>
<enum value="3" name="CL_HALF_DIG"/>
<enum value="11" name="CL_HALF_MANT_DIG"/>
<enum value="+4" name="CL_HALF_MAX_10_EXP"/>
<enum value="+16" name="CL_HALF_MAX_EXP"/>
<enum value="-4" name="CL_HALF_MIN_10_EXP"/>
<enum value="-13" name="CL_HALF_MIN_EXP"/>
<enum value="2" name="CL_HALF_RADIX"/>
<enum value="65504.0f" name="CL_HALF_MAX"/>
<enum value="6.103515625e-05f" name="CL_HALF_MIN"/>
<enum value="9.765625e-04f" name="CL_HALF_EPSILON"/>
<enum value="15" name="CL_DBL_DIG"/>
<enum value="53" name="CL_DBL_MANT_DIG"/>
<enum value="+308" name="CL_DBL_MAX_10_EXP"/>
<enum value="+1024" name="CL_DBL_MAX_EXP"/>
<enum value="-307" name="CL_DBL_MIN_10_EXP"/>
<enum value="-1021" name="CL_DBL_MIN_EXP"/>
<enum value="2" name="CL_DBL_RADIX"/>
<enum value="1.7976931348623158e+308" name="CL_DBL_MAX"/>
<enum value="2.225073858507201383090e-308" name="CL_DBL_MIN"/>
<enum value="2.220446049250313080847e-16" name="CL_DBL_EPSILON"/>
<enum value="2.7182818284590452354" name="CL_M_E"/>
<enum value="1.4426950408889634074" name="CL_M_LOG2E"/>
<enum value="0.43429448190325182765" name="CL_M_LOG10E"/>
<enum value="0.69314718055994530942" name="CL_M_LN2"/>
<enum value="2.30258509299404568402" name="CL_M_LN10"/>
<enum value="3.14159265358979323846" name="CL_M_PI"/>
<enum value="1.57079632679489661923" name="CL_M_PI_2"/>
<enum value="0.78539816339744830962" name="CL_M_PI_4"/>
<enum value="0.31830988618379067154" name="CL_M_1_PI"/>
<enum value="0.63661977236758134308" name="CL_M_2_PI"/>
<enum value="1.12837916709551257390" name="CL_M_2_SQRTPI"/>
<enum value="1.41421356237309504880" name="CL_M_SQRT2"/>
<enum value="0.70710678118654752440" name="CL_M_SQRT1_2"/>
<enum value="2.718281828f" name="CL_M_E_F"/>
<enum value="1.442695041f" name="CL_M_LOG2E_F"/>
<enum value="0.434294482f" name="CL_M_LOG10E_F"/>
<enum value="0.693147181f" name="CL_M_LN2_F"/>
<enum value="2.302585093f" name="CL_M_LN10_F"/>
<enum value="3.141592654f" name="CL_M_PI_F"/>
<enum value="1.570796327f" name="CL_M_PI_2_F"/>
<enum value="0.785398163f" name="CL_M_PI_4_F"/>
<enum value="0.318309886f" name="CL_M_1_PI_F"/>
<enum value="0.636619772f" name="CL_M_2_PI_F"/>
<enum value="1.128379167f" name="CL_M_2_SQRTPI_F"/>
<enum value="1.414213562f" name="CL_M_SQRT2_F"/>
<enum value="0.707106781f" name="CL_M_SQRT1_2_F"/>
<enum value="(CL_INFINITY - CL_INFINITY)" name="CL_NAN"/>
<enum value="((cl_float) 1e50)" name="CL_HUGE_VALF"/>
<enum value="((cl_double) 1e500)" name="CL_HUGE_VAL"/>
<enum value="CL_FLT_MAX" name="CL_MAXFLOAT"/>
<enum value="CL_HUGE_VALF" name="CL_INFINITY"/>
<comment> These values are defined differently along the
#if (defined (_WIN32) &amp;&amp; defined(_MSC_VER))
compilation path, as follows:
&lt;enum value="179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.0" name="CL_DBL_MAX"/>
#if defined( __GNUC__ )
#define CL_HUGE_VALF __builtin_huge_valf()
#define CL_HUGE_VAL __builtin_huge_val()
#define CL_NAN __builtin_nanf( "" )
#else
#define CL_HUGE_VALF ((cl_float) 1e50)
#define CL_HUGE_VAL ((cl_double) 1e500)
float nanf( const char * );
#define CL_NAN nanf( "" )
#endif
</comment>
</enums>
<enums start="0" end="-999" name="ErrorCodes.0" vendor="Khronos" comment="Error codes start at 0 and decrease">
<enum value="0" name="CL_SUCCESS"/>
<enum value="-1" name="CL_DEVICE_NOT_FOUND"/>
<enum value="-2" name="CL_DEVICE_NOT_AVAILABLE"/>
<enum value="-3" name="CL_COMPILER_NOT_AVAILABLE"/>
<enum value="-4" name="CL_MEM_OBJECT_ALLOCATION_FAILURE"/>
<enum value="-5" name="CL_OUT_OF_RESOURCES"/>
<enum value="-6" name="CL_OUT_OF_HOST_MEMORY"/>
<enum value="-7" name="CL_PROFILING_INFO_NOT_AVAILABLE"/>
<enum value="-8" name="CL_MEM_COPY_OVERLAP"/>
<enum value="-9" name="CL_IMAGE_FORMAT_MISMATCH"/>
<enum value="-10" name="CL_IMAGE_FORMAT_NOT_SUPPORTED"/>
<enum value="-11" name="CL_BUILD_PROGRAM_FAILURE"/>
<enum value="-12" name="CL_MAP_FAILURE"/>
<enum value="-13" name="CL_MISALIGNED_SUB_BUFFER_OFFSET"/>
<enum value="-14" name="CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST"/>
<enum value="-15" name="CL_COMPILE_PROGRAM_FAILURE"/>
<enum value="-16" name="CL_LINKER_NOT_AVAILABLE"/>
<enum value="-17" name="CL_LINK_PROGRAM_FAILURE"/>
<enum value="-18" name="CL_DEVICE_PARTITION_FAILED"/>
<enum value="-19" name="CL_KERNEL_ARG_INFO_NOT_AVAILABLE"/>
<unused start="-20" end="-29" comment="Reserved for Khronos"/>
<enum value="-30" name="CL_INVALID_VALUE"/>
<enum value="-31" name="CL_INVALID_DEVICE_TYPE"/>
<enum value="-32" name="CL_INVALID_PLATFORM"/>
<enum value="-33" name="CL_INVALID_DEVICE"/>
<enum value="-34" name="CL_INVALID_CONTEXT"/>
<enum value="-35" name="CL_INVALID_QUEUE_PROPERTIES"/>
<enum value="-36" name="CL_INVALID_COMMAND_QUEUE"/>
<enum value="-37" name="CL_INVALID_HOST_PTR"/>
<enum value="-38" name="CL_INVALID_MEM_OBJECT"/>
<enum value="-39" name="CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"/>
<enum value="-40" name="CL_INVALID_IMAGE_SIZE"/>
<enum value="-41" name="CL_INVALID_SAMPLER"/>
<enum value="-42" name="CL_INVALID_BINARY"/>
<enum value="-43" name="CL_INVALID_BUILD_OPTIONS"/>
<enum value="-44" name="CL_INVALID_PROGRAM"/>
<enum value="-45" name="CL_INVALID_PROGRAM_EXECUTABLE"/>
<enum value="-46" name="CL_INVALID_KERNEL_NAME"/>
<enum value="-47" name="CL_INVALID_KERNEL_DEFINITION"/>
<enum value="-48" name="CL_INVALID_KERNEL"/>
<enum value="-49" name="CL_INVALID_ARG_INDEX"/>
<enum value="-50" name="CL_INVALID_ARG_VALUE"/>
<enum value="-51" name="CL_INVALID_ARG_SIZE"/>
<enum value="-52" name="CL_INVALID_KERNEL_ARGS"/>
<enum value="-53" name="CL_INVALID_WORK_DIMENSION"/>
<enum value="-54" name="CL_INVALID_WORK_GROUP_SIZE"/>
<enum value="-55" name="CL_INVALID_WORK_ITEM_SIZE"/>
<enum value="-56" name="CL_INVALID_GLOBAL_OFFSET"/>
<enum value="-57" name="CL_INVALID_EVENT_WAIT_LIST"/>
<enum value="-58" name="CL_INVALID_EVENT"/>
<enum value="-59" name="CL_INVALID_OPERATION"/>
<enum value="-60" name="CL_INVALID_GL_OBJECT"/>
<enum value="-61" name="CL_INVALID_BUFFER_SIZE"/>
<enum value="-62" name="CL_INVALID_MIP_LEVEL"/>
<enum value="-63" name="CL_INVALID_GLOBAL_WORK_SIZE"/>
<enum value="-64" name="CL_INVALID_PROPERTY"/>
<enum value="-65" name="CL_INVALID_IMAGE_DESCRIPTOR"/>
<enum value="-66" name="CL_INVALID_COMPILER_OPTIONS"/>
<enum value="-67" name="CL_INVALID_LINKER_OPTIONS"/>
<enum value="-68" name="CL_INVALID_DEVICE_PARTITION_COUNT"/>
<enum value="-69" name="CL_INVALID_PIPE_SIZE"/>
<enum value="-70" name="CL_INVALID_DEVICE_QUEUE"/>
<enum value="-71" name="CL_INVALID_SPEC_ID"/>
<enum value="-72" name="CL_MAX_SIZE_RESTRICTION_EXCEEDED"/>
<unused start="-73" end="-999" comment="Reserved for Khronos"/>
</enums>
<enums start="-1000" end="-1001" name="ErrorCodes.1000" vendor="Khronos" comment="Extension error codes start at -1000 and decrease">
<enum value="-1000" name="CL_INVALID_GL_SHAREGROUP_REFERENCE_KHR"/>
<enum value="-1001" name="CL_PLATFORM_NOT_FOUND_KHR"/>
</enums>
<enums start="-1002" end="-1017" name="ErrorCodes.1002" vendor="NVIDIA" comment="Allocated per Bug 5782">
<enum value="-1002" name="CL_INVALID_D3D10_DEVICE_KHR"/>
<!-- unused <enum value="-1002" name="CL_INVALID_D3D10_DEVICE_NV"/> -->
<enum value="-1003" name="CL_INVALID_D3D10_RESOURCE_KHR"/>
<!-- unused <enum value="-1003" name="CL_INVALID_D3D10_RESOURCE_NV"/> -->
<enum value="-1004" name="CL_D3D10_RESOURCE_ALREADY_ACQUIRED_KHR"/>
<!-- unused <enum value="-1004" name="CL_D3D10_RESOURCE_ALREADY_ACQUIRED_NV"/> -->
<enum value="-1005" name="CL_D3D10_RESOURCE_NOT_ACQUIRED_KHR"/>
<!-- unused <enum value="-1005" name="CL_D3D10_RESOURCE_NOT_ACQUIRED_NV"/> -->
<enum value="-1006" name="CL_INVALID_D3D11_DEVICE_KHR"/>
<!-- unused <enum value="-1006" name="CL_INVALID_D3D11_DEVICE_NV"/> -->
<enum value="-1007" name="CL_INVALID_D3D11_RESOURCE_KHR"/>
<!-- unused <enum value="-1007" name="CL_INVALID_D3D11_RESOURCE_NV"/> -->
<enum value="-1008" name="CL_D3D11_RESOURCE_ALREADY_ACQUIRED_KHR"/>
<!-- unused <enum value="-1008" name="CL_D3D11_RESOURCE_ALREADY_ACQUIRED_NV"/> -->
<enum value="-1009" name="CL_D3D11_RESOURCE_NOT_ACQUIRED_KHR"/>
<!-- unused <enum value="-1009" name="CL_D3D11_RESOURCE_NOT_ACQUIRED_NV"/> -->
<!-- unused <enum value="-1010" name="CL_INVALID_D3D9_DEVICE_NV"/> -->
<enum value="-1010" name="CL_INVALID_DX9_DEVICE_INTEL"/>
<enum value="-1010" name="CL_INVALID_DX9_MEDIA_ADAPTER_KHR"/>
<!-- unused <enum value="-1011" name="CL_INVALID_D3D9_RESOURCE_NV"/> -->
<enum value="-1011" name="CL_INVALID_DX9_MEDIA_SURFACE_KHR"/>
<enum value="-1011" name="CL_INVALID_DX9_RESOURCE_INTEL"/>
<!-- unused <enum value="-1012" name="CL_D3D9_RESOURCE_ALREADY_ACQUIRED_NV"/> -->
<enum value="-1012" name="CL_DX9_MEDIA_SURFACE_ALREADY_ACQUIRED_KHR"/>
<enum value="-1012" name="CL_DX9_RESOURCE_ALREADY_ACQUIRED_INTEL"/>
<!-- unused <enum value="-1013" name="CL_D3D9_RESOURCE_NOT_ACQUIRED_NV"/> -->
<enum value="-1013" name="CL_DX9_MEDIA_SURFACE_NOT_ACQUIRED_KHR"/>
<enum value="-1013" name="CL_DX9_RESOURCE_NOT_ACQUIRED_INTEL"/>
<unused start="-1014" end="-1017"/>
</enums>
<enums start="-1018" end="-1024" name="ErrorCodes.1018" vendor="AMD" comment="Allocated per Bugs 6071,6075">
<!-- To be named AMD atomic counters extension - see bug 6071/6075 -->
<!-- unused <enum value="-1018" name="CL_INVALID_PROPERTY_EXT"/> -->
<!-- unused <enum value="-1019" name="CL_DEVICE_PARTITION_FAILED_EXT"/> -->
<!-- unused <enum value="-1020" name="CL_INVALID_PARTITION_COUNT_EXT"/> -->
<!-- To be named AMD D3D9 extension - see bug 6071 -->
<!-- unused <enum value="-1021" name="CL_INVALID_D3D9_DEVICE_AMD"/> -->
<!-- unused <enum value="-1022" name="CL_INVALID_D3D9_RESOURCE_AMD"/> -->
<!-- unused <enum value="-1023" name="CL_D3D9_RESOURCE_ALREADY_ACQUIRED_AMD"/> -->
<!-- unused <enum value="-1024" name="CL_D3D9_RESOURCE_NOT_ACQUIRED_AMD"/> -->
</enums>
<enums start="-1025" end="-1056" name="ErrorCodes.1025" vendor="IBM" comment="Allocated per Bug 6261">
<unused start="-1025" end="-1056"/>
</enums>
<enums start="-1057" end="-1091" name="ErrorCodes.1057" vendor="Apple" comment="Allocated for cl_ext_device_fission and by email request from Ian Ollman 2010/07/08">
<enum value="-1057" name="CL_DEVICE_PARTITION_FAILED_EXT"/>
<enum value="-1058" name="CL_INVALID_PARTITION_COUNT_EXT"/>
<enum value="-1059" name="CL_INVALID_PARTITION_NAME_EXT"/>
<unused start="-1060" end="-1091"/>
</enums>
<enums start="-1092" end="-1093" name="ErrorCodes.1092" vendor="Khronos" comment="Allocated per Bug 10490">
<enum value="-1092" name="CL_EGL_RESOURCE_NOT_ACQUIRED_KHR"/>
<enum value="-1093" name="CL_INVALID_EGL_OBJECT_KHR"/>
</enums>
<enums start="-1094" end="-1101" name="ErrorCodes.1094" vendor="Intel" comment="Allocated per Bug 11132">
<enum value="-1094" name="CL_INVALID_ACCELERATOR_INTEL"/>
<enum value="-1095" name="CL_INVALID_ACCELERATOR_TYPE_INTEL"/>
<enum value="-1096" name="CL_INVALID_ACCELERATOR_DESCRIPTOR_INTEL"/>
<enum value="-1097" name="CL_ACCELERATOR_TYPE_NOT_SUPPORTED_INTEL"/>
<enum value="-1098" name="CL_INVALID_VA_API_MEDIA_ADAPTER_INTEL"/>
<enum value="-1099" name="CL_INVALID_VA_API_MEDIA_SURFACE_INTEL"/>
<enum value="-1100" name="CL_VA_API_MEDIA_SURFACE_ALREADY_ACQUIRED_INTEL"/>
<enum value="-1101" name="CL_VA_API_MEDIA_SURFACE_NOT_ACQUIRED_INTEL"/>
</enums>
<enums start="-1102" end="-9999" name="ErrorCodes.1102" vendor="Khronos" comment="RESERVED FOR FUTURE ALLOCATIONS BY KHRONOS">
<unused start="-1102" end="-9999"/>
</enums>
<enums name="cl_bool" vendor="Khronos" comment="Boolean values">
<enum value="0" name="CL_FALSE"/>
<enum value="1" name="CL_TRUE"/>
<!-- Should be alias= -->
<enum value="CL_TRUE" name="CL_BLOCKING"/>
<enum value="CL_FALSE" name="CL_NON_BLOCKING"/>
</enums>
<enums name="MiscNumbers" vendor="Multiple" comment="Tokens whose numeric value is intrinsically meaningful">
<enum value="((cl_device_partition_property_ext)0)" name="CL_PROPERTIES_LIST_END_EXT"/>
<enum value="((cl_device_partition_property_ext)0)" name="CL_PARTITION_BY_COUNTS_LIST_END_EXT"/>
<enum value="0x0" name="CL_DEVICE_PARTITION_BY_COUNTS_LIST_END"/>
<enum value="((cl_device_partition_property_ext)0 - 1)" name="CL_PARTITION_BY_NAMES_LIST_END_EXT"/>
<enum value="-1" name="CL_PARTITION_BY_NAMES_LIST_END_INTEL"/>
</enums>
<enums name="cl_affinity_domain_ext" vendor="IBM" comment="Property names for CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN_EXT. This is not a bitfield.">
<enum value="0x1" name="CL_AFFINITY_DOMAIN_L1_CACHE_EXT"/>
<enum value="0x2" name="CL_AFFINITY_DOMAIN_L2_CACHE_EXT"/>
<enum value="0x3" name="CL_AFFINITY_DOMAIN_L3_CACHE_EXT"/>
<enum value="0x4" name="CL_AFFINITY_DOMAIN_L4_CACHE_EXT"/>
<enum value="0x10" name="CL_AFFINITY_DOMAIN_NUMA_EXT"/>
<enum value="0x100" name="CL_AFFINITY_DOMAIN_NEXT_FISSIONABLE_EXT"/>
</enums>
<enums name="cl_build_status" vendor="Khronos" comment="New values decrease">
<enum value="0" name="CL_BUILD_SUCCESS"/>
<enum value="-1" name="CL_BUILD_NONE"/>
<enum value="-2" name="CL_BUILD_ERROR"/>
<enum value="-3" name="CL_BUILD_IN_PROGRESS"/>
<unused start="-4" end="-9999"/>
</enums>
<enums name="clCommandExecutionStatus" vendor="Khronos">
<enum value="0x0" name="CL_COMPLETE"/>
<enum value="0x1" name="CL_RUNNING"/>
<enum value="0x2" name="CL_SUBMITTED"/>
<enum value="0x3" name="CL_QUEUED"/>
<unused start="0x4" end="9999"/>
</enums>
<enums name="cl_device_mem_cache_type" vendor="Khronos">
<enum value="0x0" name="CL_NONE"/>
<enum value="0x1" name="CL_READ_ONLY_CACHE"/>
<enum value="0x2" name="CL_READ_WRITE_CACHE"/>
<unused start="0x3" end="9999"/>
</enums>
<enums name="cl_compiler_mode_altera" vendor="Altera">
<!-- unused <enum value="0x0" name="CL_CONTEXT_COMPILER_MODE_OFFLINE_ALTERA"/> -->
<!-- unused <enum value="0x1" name="CL_CONTEXT_COMPILER_MODE_OFFLINE_CREATE_EXE_LIBRARY_ALTERA"/> -->
<!-- unused <enum value="0x2" name="CL_CONTEXT_COMPILER_MODE_OFFLINE_USE_EXE_LIBRARY_ALTERA"/> -->
<!-- unused <enum value="0x3" name="CL_CONTEXT_COMPILER_MODE_PRELOADED_BINARY_ONLY_ALTERA"/> -->
<unused start="0x4" end="9999"/>
</enums>
<enums name="cl_device_local_mem_type" vendor="Khronos">
<enum value="0x1" name="CL_LOCAL"/>
<enum value="0x2" name="CL_GLOBAL"/>
<unused start="0x3" end="9999"/>
</enums>
<enums name="cl_program_binary_type" vendor="Khronos">
<enum value="0x0" name="CL_PROGRAM_BINARY_TYPE_NONE"/>
<enum value="0x1" name="CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT"/>
<enum value="0x2" name="CL_PROGRAM_BINARY_TYPE_LIBRARY"/>
<enum value="0x4" name="CL_PROGRAM_BINARY_TYPE_EXECUTABLE"/>
<unused start="0x5" end="9999"/>
</enums>
<enums name="cl_accelerator_type_intel" vendor="Intel" comment="cl_intel_motion_estimation extension">
<enum value="0x0" name="CL_ACCELERATOR_TYPE_MOTION_ESTIMATION_INTEL"/>
<unused start="0x1" end="9999"/>
</enums>
<enums name="cl_device_type" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_DEVICE_TYPE_DEFAULT"/>
<enum bitpos="1" name="CL_DEVICE_TYPE_CPU"/>
<enum bitpos="2" name="CL_DEVICE_TYPE_GPU"/>
<enum bitpos="3" name="CL_DEVICE_TYPE_ACCELERATOR"/>
<enum bitpos="4" name="CL_DEVICE_TYPE_CUSTOM"/>
<unused start="5" end="31"/>
<enum value="0xFFFFFFFF" name="CL_DEVICE_TYPE_ALL"/>
</enums>
<enums name="cl_device_fp_config" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_FP_DENORM"/>
<enum bitpos="1" name="CL_FP_INF_NAN"/>
<enum bitpos="2" name="CL_FP_ROUND_TO_NEAREST"/>
<enum bitpos="3" name="CL_FP_ROUND_TO_ZERO"/>
<enum bitpos="4" name="CL_FP_ROUND_TO_INF"/>
<enum bitpos="5" name="CL_FP_FMA"/>
<enum bitpos="6" name="CL_FP_SOFT_FLOAT"/>
<enum bitpos="7" name="CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT"/>
<unused start="8" end="31"/>
</enums>
<enums name="cl_device_exec_capabilities" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_EXEC_KERNEL"/>
<enum bitpos="1" name="CL_EXEC_NATIVE_KERNEL"/>
<unused start="2" end="31"/>
</enums>
<enums name="cl_device_svm_capabilities" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_DEVICE_SVM_COARSE_GRAIN_BUFFER"/>
<enum bitpos="1" name="CL_DEVICE_SVM_FINE_GRAIN_BUFFER"/>
<enum bitpos="2" name="CL_DEVICE_SVM_FINE_GRAIN_SYSTEM"/>
<enum bitpos="3" name="CL_DEVICE_SVM_ATOMICS"/>
<unused start="4" end="31"/>
</enums>
<enums name="cl_command_queue_properties" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"/>
<enum bitpos="1" name="CL_QUEUE_PROFILING_ENABLE"/>
<enum bitpos="2" name="CL_QUEUE_ON_DEVICE"/>
<enum bitpos="3" name="CL_QUEUE_ON_DEVICE_DEFAULT"/>
<unused start="4" end="30"/>
<enum bitpos="31" name="CL_QUEUE_THREAD_LOCAL_EXEC_ENABLE_INTEL"/>
</enums>
<enums name="cl_queue_priority_khr" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_QUEUE_PRIORITY_HIGH_KHR"/>
<enum bitpos="1" name="CL_QUEUE_PRIORITY_MED_KHR"/>
<enum bitpos="2" name="CL_QUEUE_PRIORITY_LOW_KHR"/>
<unused start="3" end="31"/>
</enums>
<enums name="cl_queue_throttle_khr" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_QUEUE_THROTTLE_HIGH_KHR"/>
<enum bitpos="1" name="CL_QUEUE_THROTTLE_MED_KHR"/>
<enum bitpos="2" name="CL_QUEUE_THROTTLE_LOW_KHR"/>
<unused start="3" end="31"/>
</enums>
<enums name="cl_mem_flags" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_MEM_READ_WRITE"/>
<enum bitpos="1" name="CL_MEM_WRITE_ONLY"/>
<enum bitpos="2" name="CL_MEM_READ_ONLY"/>
<enum bitpos="3" name="CL_MEM_USE_HOST_PTR"/>
<enum bitpos="4" name="CL_MEM_ALLOC_HOST_PTR"/>
<enum bitpos="5" name="CL_MEM_COPY_HOST_PTR"/>
<unused start="6" comment="reserved"/>
<enum bitpos="7" name="CL_MEM_HOST_WRITE_ONLY"/>
<enum bitpos="8" name="CL_MEM_HOST_READ_ONLY"/>
<enum bitpos="9" name="CL_MEM_HOST_NO_ACCESS"/>
<enum bitpos="10" name="CL_MEM_SVM_FINE_GRAIN_BUFFER"/>
<enum bitpos="11" name="CL_MEM_SVM_ATOMICS"/>
<enum bitpos="12" name="CL_MEM_KERNEL_READ_AND_WRITE"/>
<unused start="13" end="23"/>
<enum bitpos="24" name="CL_MEM_NO_ACCESS_INTEL"/>
<enum bitpos="25" name="CL_MEM_ACCESS_FLAGS_UNRESTRICTED_INTEL"/>
<enum bitpos="26" name="CL_MEM_USE_UNCACHED_CPU_MEMORY_IMG"/>
<enum bitpos="27" name="CL_MEM_USE_CACHED_CPU_MEMORY_IMG"/>
<enum bitpos="28" name="CL_MEM_USE_GRALLOC_PTR_IMG"/>
<enum bitpos="29" name="CL_MEM_EXT_HOST_PTR_QCOM"/>
<!-- unused <enum bitpos="30" name="CL_MEM_BUS_ADDRESSABLE_AMD"/> -->
<!-- unused <enum bitpos="31" name="CL_MEM_EXTERNAL_MEMORY_AMD"/> -->
</enums>
<enums name="cl_map_flags" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_MAP_READ"/>
<enum bitpos="1" name="CL_MAP_WRITE"/>
<enum bitpos="2" name="CL_MAP_WRITE_INVALIDATE_REGION"/>
<unused start="3" end="31"/>
</enums>
<enums name="cl_mem_migration_flags" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_MIGRATE_MEM_OBJECT_HOST_EXT"/>
<enum bitpos="0" name="CL_MIGRATE_MEM_OBJECT_HOST"/>
<enum bitpos="1" name="CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED"/>
<unused start="2" end="31"/>
</enums>
<enums name="cl_device_affinity_domain" vendor="Khronos" type="bitmask">
<enum bitpos="0" name="CL_DEVICE_AFFINITY_DOMAIN_NUMA"/>
<enum bitpos="1" name="CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"/>
<enum bitpos="2" name="CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"/>
<enum bitpos="3" name="CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"/>
<enum bitpos="4" name="CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"/>
<enum bitpos="5" name="CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"/>
<unused start="6" end="31"/>
</enums>
<enums name="cl_kernel_arg_type_qualifer" vendor="Khronos" type="bitmask">
<enum value="0" name="CL_KERNEL_ARG_TYPE_NONE"/>
<enum bitpos="0" name="CL_KERNEL_ARG_TYPE_CONST"/>
<enum bitpos="1" name="CL_KERNEL_ARG_TYPE_RESTRICT"/>
<enum bitpos="2" name="CL_KERNEL_ARG_TYPE_VOLATILE"/>
<enum bitpos="3" name="CL_KERNEL_ARG_TYPE_PIPE"/>
<unused start="4" end="31"/>
</enums>
<enums name="cl_motion_estimation_desc_intel.mb_block_type" vendor="Intel" type="bitmask">
<enum value="0x0" name="CL_ME_MB_TYPE_16x16_INTEL"/>
<enum value="0x1" name="CL_ME_MB_TYPE_8x8_INTEL"/>
<enum value="0x2" name="CL_ME_MB_TYPE_4x4_INTEL"/>
<unused start="0x4" end="0x80000000"/>
</enums>
<enums name="cl_motion_estimation_desc_intel.subpixel_mode" vendor="Intel" type="bitmask">
<enum value="0x0" name="CL_ME_SUBPIXEL_MODE_INTEGER_INTEL"/>
<enum value="0x1" name="CL_ME_SUBPIXEL_MODE_HPEL_INTEL"/>
<enum value="0x2" name="CL_ME_SUBPIXEL_MODE_QPEL_INTEL"/>
<unused start="0x4" end="0x80000000"/>
</enums>
<enums name="cl_motion_estimation_desc_intel.sad_adjust_mode" vendor="Intel" type="bitmask">
<enum value="0x0" name="CL_ME_SAD_ADJUST_MODE_NONE_INTEL"/>
<enum value="0x1" name="CL_ME_SAD_ADJUST_MODE_HAAR_INTEL"/>
<unused start="0x2" end="0x80000000"/>
</enums>
<enums name="cl_motion_estimation_desc_intel.search_path_type" vendor="Intel" type="bitmask">
<enum value="0x0" name="CL_ME_SEARCH_PATH_RADIUS_2_2_INTEL"/>
<enum value="0x1" name="CL_ME_SEARCH_PATH_RADIUS_4_4_INTEL"/>
<unused start="0x2"/>
<enum value="0x5" name="CL_ME_SEARCH_PATH_RADIUS_16_12_INTEL"/>
<unused start="0x8" end="0x80000000"/>
</enums>
<enums name="cl_arm_device_svm_capabilities.flags" vendor="ARM" type="bitmask">
<enum bitpos="0" name="CL_DEVICE_SVM_COARSE_GRAIN_BUFFER_ARM"/>
<enum bitpos="1" name="CL_DEVICE_SVM_FINE_GRAIN_BUFFER_ARM"/>
<enum bitpos="2" name="CL_DEVICE_SVM_FINE_GRAIN_SYSTEM_ARM"/>
<enum bitpos="3" name="CL_DEVICE_SVM_ATOMICS_ARM"/>
<unused start="0x10" end="0x80000000"/>
</enums>
<enums name="cl_arm_svm_alloc.flags" vendor="ARM" type="bitmask">
<enum bitpos="10" name="CL_MEM_SVM_FINE_GRAIN_BUFFER_ARM"/>
<enum bitpos="11" name="CL_MEM_SVM_ATOMICS_ARM"/>
<unused start="0x4" end="0x80000000"/>
</enums>
<enums name="cl_intel_driver_diagnostics" vendor="Intel" type="bitmask">
<enum value="0xff" name="CL_CONTEXT_DIAGNOSTICS_LEVEL_ALL_INTEL"/>
<enum bitpos="0" name="CL_CONTEXT_DIAGNOSTICS_LEVEL_GOOD_INTEL"/>
<enum bitpos="1" name="CL_CONTEXT_DIAGNOSTICS_LEVEL_BAD_INTEL"/>
<enum bitpos="2" name="CL_CONTEXT_DIAGNOSTICS_LEVEL_NEUTRAL_INTEL"/>
</enums>
<enums name="cl_intel_advanced_motion_estimation.flags" vendor="Intel" type="bitmask">
<enum value="0x1" name="CL_ME_CHROMA_INTRA_PREDICT_ENABLED_INTEL"/>
<enum value="0x2" name="CL_ME_LUMA_INTRA_PREDICT_ENABLED_INTEL"/>
</enums>
<enums name="cl_intel_advanced_motion_estimation.search_cost_penalty" vendor="Intel">
<enum value="0x0" name="CL_ME_COST_PENALTY_NONE_INTEL"/>
<enum value="0x1" name="CL_ME_COST_PENALTY_LOW_INTEL"/>
<enum value="0x2" name="CL_ME_COST_PENALTY_NORMAL_INTEL"/>
<enum value="0x3" name="CL_ME_COST_PENALTY_HIGH_INTEL"/>
</enums>
<enums name="cl_intel_advanced_motion_estimation.search_cost_precision" vendor="Intel">
<enum value="0x0" name="CL_ME_COST_PRECISION_QPEL_INTEL"/>
<enum value="0x1" name="CL_ME_COST_PRECISION_HPEL_INTEL"/>
<enum value="0x2" name="CL_ME_COST_PRECISION_PEL_INTEL"/>
<enum value="0x3" name="CL_ME_COST_PRECISION_DPEL_INTEL"/>
</enums>
<enums name="cl_intel_advanced_motion_estimation.intra_search_prediction_modes_buffer.luma_block" vendor="Intel">
<enum value="0x0" name="CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_INTEL"/>
<enum value="0x1" name="CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_INTEL"/>
<enum value="0x2" name="CL_ME_LUMA_PREDICTOR_MODE_DC_INTEL"/>
<enum value="0x3" name="CL_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_LEFT_INTEL"/>
<enum value="0x4" name="CL_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_RIGHT_INTEL"/>
<enum value="0x4" name="CL_ME_LUMA_PREDICTOR_MODE_PLANE_INTEL"/>
<enum value="0x5" name="CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_RIGHT_INTEL"/>
<enum value="0x6" name="CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_DOWN_INTEL"/>
<enum value="0x7" name="CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_LEFT_INTEL"/>
<enum value="0x8" name="CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_UP_INTEL"/>
</enums>
<enums name="cl_intel_advanced_motion_estimation.intra_search_prediction_modes_buffer.chroma_block" vendor="Intel">
<enum value="0x0" name="CL_ME_CHROMA_PREDICTOR_MODE_DC_INTEL"/>
<enum value="0x1" name="CL_ME_CHROMA_PREDICTOR_MODE_HORIZONTAL_INTEL"/>
<enum value="0x2" name="CL_ME_CHROMA_PREDICTOR_MODE_VERTICAL_INTEL"/>
<enum value="0x3" name="CL_ME_CHROMA_PREDICTOR_MODE_PLANE_INTEL"/>
</enums>
<enums name="cl_intel_advanced_motion_estimation.skip_block_type" vendor="Intel">
<enum value="0x0" name="CL_ME_SKIP_BLOCK_TYPE_16x16_INTEL"/>
<enum value="0x1" name="CL_ME_SKIP_BLOCK_TYPE_8x8_INTEL"/>
<!-- unused <enum value="0x2" name="CL_ME_SKIP_BLOCK_TYPE_4x4_INTEL"/> -->
</enums>
<enums name="cl_intel_advanced_motion_estimation.device_me_version" vendor="Intel">
<enum value="0x0" name="CL_ME_VERSION_LEGACY_INTEL"/>
<enum value="0x1" name="CL_ME_VERSION_ADVANCED_VER_1_INTEL"/>
<enum value="0x2" name="CL_ME_VERSION_ADVANCED_VER_2_INTEL"/>
</enums>
<enums name="cl_intel_advanced_motion_estimation.cl_motion_detect_desc_intel" vendor="Intel">
<enum value="0x1" name="CL_ME_FORWARD_INPUT_MODE_INTEL"/>
<enum value="0x2" name="CL_ME_BACKWARD_INPUT_MODE_INTEL"/>
<enum value="0x3" name="CL_ME_BIDIRECTION_INPUT_MODE_INTEL"/>
</enums>
<enums name="cl_intel_advanced_motion_estimation.cl_motion_detect_desc_intel.2" comment="Part of previous block?" vendor="Intel">
<enum value="16" name="CL_ME_BIDIR_WEIGHT_QUARTER_INTEL"/>
<enum value="21" name="CL_ME_BIDIR_WEIGHT_THIRD_INTEL"/>
<enum value="32" name="CL_ME_BIDIR_WEIGHT_HALF_INTEL"/>
<enum value="43" name="CL_ME_BIDIR_WEIGHT_TWO_THIRD_INTEL"/>
<enum value="48" name="CL_ME_BIDIR_WEIGHT_THREE_QUARTER_INTEL"/>
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.version" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_VERSION_0_INTEL" />
<enum value="0x1" name="CL_AVC_ME_VERSION_1_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.major" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_MAJOR_16x16_INTEL" />
<enum value="0x1" name="CL_AVC_ME_MAJOR_16x8_INTEL" />
<enum value="0x2" name="CL_AVC_ME_MAJOR_8x16_INTEL" />
<enum value="0x3" name="CL_AVC_ME_MAJOR_8x8_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.minor" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_MINOR_8x8_INTEL" />
<enum value="0x1" name="CL_AVC_ME_MINOR_8x4_INTEL" />
<enum value="0x2" name="CL_AVC_ME_MINOR_4x8_INTEL" />
<enum value="0x3" name="CL_AVC_ME_MINOR_4x4_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.major.dir" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_MAJOR_FORWARD_INTEL" />
<enum value="0x1" name="CL_AVC_ME_MAJOR_BACKWARD_INTEL" />
<enum value="0x2" name="CL_AVC_ME_MAJOR_BIDIRECTIONAL_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.partition" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_PARTITION_MASK_ALL_INTEL" />
<enum value="0x7E" name="CL_AVC_ME_PARTITION_MASK_16x16_INTEL" />
<enum value="0x7D" name="CL_AVC_ME_PARTITION_MASK_16x8_INTEL" />
<enum value="0x7B" name="CL_AVC_ME_PARTITION_MASK_8x16_INTEL" />
<enum value="0x77" name="CL_AVC_ME_PARTITION_MASK_8x8_INTEL" />
<enum value="0x6F" name="CL_AVC_ME_PARTITION_MASK_8x4_INTEL" />
<enum value="0x5F" name="CL_AVC_ME_PARTITION_MASK_4x8_INTEL" />
<enum value="0x3F" name="CL_AVC_ME_PARTITION_MASK_4x4_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.window" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_SEARCH_WINDOW_EXHAUSTIVE_INTEL" />
<enum value="0x1" name="CL_AVC_ME_SEARCH_WINDOW_SMALL_INTEL" />
<enum value="0x2" name="CL_AVC_ME_SEARCH_WINDOW_TINY_INTEL" />
<enum value="0x3" name="CL_AVC_ME_SEARCH_WINDOW_EXTRA_TINY_INTEL" />
<enum value="0x4" name="CL_AVC_ME_SEARCH_WINDOW_DIAMOND_INTEL" />
<enum value="0x5" name="CL_AVC_ME_SEARCH_WINDOW_LARGE_DIAMOND_INTEL" />
<enum value="0x6" name="CL_AVC_ME_SEARCH_WINDOW_RESERVED0_INTEL" />
<enum value="0x7" name="CL_AVC_ME_SEARCH_WINDOW_RESERVED1_INTEL" />
<enum value="0x8" name="CL_AVC_ME_SEARCH_WINDOW_CUSTOM_INTEL" />
<enum value="0x9" name="CL_AVC_ME_SEARCH_WINDOW_16x12_RADIUS_INTEL" />
<enum value="0x2" name="CL_AVC_ME_SEARCH_WINDOW_4x4_RADIUS_INTEL" />
<enum value="0xa" name="CL_AVC_ME_SEARCH_WINDOW_2x2_RADIUS_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.adjust" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_SAD_ADJUST_MODE_NONE_INTEL" />
<enum value="0x2" name="CL_AVC_ME_SAD_ADJUST_MODE_HAAR_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.subpixel" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_SUBPIXEL_MODE_INTEGER_INTEL" />
<enum value="0x1" name="CL_AVC_ME_SUBPIXEL_MODE_HPEL_INTEL" />
<enum value="0x3" name="CL_AVC_ME_SUBPIXEL_MODE_QPEL_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.cost.precision" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_COST_PRECISION_QPEL_INTEL" />
<enum value="0x1" name="CL_AVC_ME_COST_PRECISION_HPEL_INTEL" />
<enum value="0x2" name="CL_AVC_ME_COST_PRECISION_PEL_INTEL" />
<enum value="0x3" name="CL_AVC_ME_COST_PRECISION_DPEL_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.weight" vendor="Intel">
<enum value="0x10" name="CL_AVC_ME_BIDIR_WEIGHT_QUARTER_INTEL" />
<enum value="0x15" name="CL_AVC_ME_BIDIR_WEIGHT_THIRD_INTEL" />
<enum value="0x20" name="CL_AVC_ME_BIDIR_WEIGHT_HALF_INTEL" />
<enum value="0x2B" name="CL_AVC_ME_BIDIR_WEIGHT_TWO_THIRD_INTEL" />
<enum value="0x30" name="CL_AVC_ME_BIDIR_WEIGHT_THREE_QUARTER_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.border" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_BORDER_REACHED_LEFT_INTEL" />
<enum value="0x2" name="CL_AVC_ME_BORDER_REACHED_RIGHT_INTEL" />
<enum value="0x4" name="CL_AVC_ME_BORDER_REACHED_TOP_INTEL" />
<enum value="0x8" name="CL_AVC_ME_BORDER_REACHED_BOTTOM_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.skip" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_SKIP_BLOCK_PARTITION_16x16_INTEL" />
<enum value="0x4000" name="CL_AVC_ME_SKIP_BLOCK_PARTITION_8x8_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.skip.dir" vendor="Intel">
<enum value="(0x1 &lt;&lt; 24)" name="CL_AVC_ME_SKIP_BLOCK_16x16_FORWARD_ENABLE_INTEL" />
<enum value="(0x2 &lt;&lt; 24)" name="CL_AVC_ME_SKIP_BLOCK_16x16_BACKWARD_ENABLE_INTEL" />
<enum value="(0x3 &lt;&lt; 24)" name="CL_AVC_ME_SKIP_BLOCK_16x16_DUAL_ENABLE_INTEL" />
<enum value="(0x55 &lt;&lt; 24)" name="CL_AVC_ME_SKIP_BLOCK_8x8_FORWARD_ENABLE_INTEL" />
<enum value="(0xAA &lt;&lt; 24)" name="CL_AVC_ME_SKIP_BLOCK_8x8_BACKWARD_ENABLE_INTEL" />
<enum value="(0xFF &lt;&lt; 24)" name="CL_AVC_ME_SKIP_BLOCK_8x8_DUAL_ENABLE_INTEL" />
<enum value="(0x1 &lt;&lt; 24)" name="CL_AVC_ME_SKIP_BLOCK_8x8_0_FORWARD_ENABLE_INTEL" />
<enum value="(0x2 &lt;&lt; 24)" name="CL_AVC_ME_SKIP_BLOCK_8x8_0_BACKWARD_ENABLE_INTEL" />
<enum value="(0x1 &lt;&lt; 26)" name="CL_AVC_ME_SKIP_BLOCK_8x8_1_FORWARD_ENABLE_INTEL" />
<enum value="(0x2 &lt;&lt; 26)" name="CL_AVC_ME_SKIP_BLOCK_8x8_1_BACKWARD_ENABLE_INTEL" />
<enum value="(0x1 &lt;&lt; 28)" name="CL_AVC_ME_SKIP_BLOCK_8x8_2_FORWARD_ENABLE_INTEL" />
<enum value="(0x2 &lt;&lt; 28)" name="CL_AVC_ME_SKIP_BLOCK_8x8_2_BACKWARD_ENABLE_INTEL" />
<enum value="(0x1 &lt;&lt; 30)" name="CL_AVC_ME_SKIP_BLOCK_8x8_3_FORWARD_ENABLE_INTEL" />
<enum value="(0x2 &lt;&lt; 30)" name="CL_AVC_ME_SKIP_BLOCK_8x8_3_BACKWARD_ENABLE_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.skip.block.based" vendor="Intel">
<enum value="0x00" name="CL_AVC_ME_BLOCK_BASED_SKIP_4x4_INTEL" />
<enum value="0x80" name="CL_AVC_ME_BLOCK_BASED_SKIP_8x8_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.intra" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_INTRA_16x16_INTEL" />
<enum value="0x1" name="CL_AVC_ME_INTRA_8x8_INTEL" />
<enum value="0x2" name="CL_AVC_ME_INTRA_4x4_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.intra.luma" vendor="Intel">
<enum value="0x6" name="CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_16x16_INTEL" />
<enum value="0x5" name="CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_8x8_INTEL" />
<enum value="0x3" name="CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_4x4_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.intra.neighbor" vendor="Intel">
<enum value="0x60" name="CL_AVC_ME_INTRA_NEIGHBOR_LEFT_MASK_ENABLE_INTEL" />
<enum value="0x10" name="CL_AVC_ME_INTRA_NEIGHBOR_UPPER_MASK_ENABLE_INTEL" />
<enum value="0x8" name="CL_AVC_ME_INTRA_NEIGHBOR_UPPER_RIGHT_MASK_ENABLE_INTEL" />
<enum value="0x4" name="CL_AVC_ME_INTRA_NEIGHBOR_UPPER_LEFT_MASK_ENABLE_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.luma.predictor" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_INTEL" />
<enum value="0x1" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_INTEL" />
<enum value="0x2" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_DC_INTEL" />
<enum value="0x3" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_LEFT_INTEL" />
<enum value="0x4" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_RIGHT_INTEL"/>
<enum value="0x4" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_PLANE_INTEL" />
<enum value="0x5" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_RIGHT_INTEL" />
<enum value="0x6" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_DOWN_INTEL" />
<enum value="0x7" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_LEFT_INTEL" />
<enum value="0x8" name="CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_UP_INTEL" />
<enum value="0x0" name="CL_AVC_ME_CHROMA_PREDICTOR_MODE_DC_INTEL" />
<enum value="0x1" name="CL_AVC_ME_CHROMA_PREDICTOR_MODE_HORIZONTAL_INTEL" />
<enum value="0x2" name="CL_AVC_ME_CHROMA_PREDICTOR_MODE_VERTICAL_INTEL" />
<enum value="0x3" name="CL_AVC_ME_CHROMA_PREDICTOR_MODE_PLANE_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.frame.dir" vendor="Intel">
<enum value="0x1" name="CL_AVC_ME_FRAME_FORWARD_INTEL" />
<enum value="0x2" name="CL_AVC_ME_FRAME_BACKWARD_INTEL" />
<enum value="0x3" name="CL_AVC_ME_FRAME_DUAL_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.slice" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_SLICE_TYPE_PRED_INTEL" />
<enum value="0x1" name="CL_AVC_ME_SLICE_TYPE_BPRED_INTEL" />
<enum value="0x2" name="CL_AVC_ME_SLICE_TYPE_INTRA_INTEL" />
</enums>
<enums name="cl_intel_device_side_avc_motion_estimation.scan.dir" vendor="Intel">
<enum value="0x0" name="CL_AVC_ME_INTERLACED_SCAN_TOP_FIELD_INTEL" />
<enum value="0x1" name="CL_AVC_ME_INTERLACED_SCAN_BOTTOM_FIELD_INTEL" />
</enums>
<enums start="0x0900" end="0x09FF" name="cl_platform_info" vendor="Khronos">
<enum value="0x0900" name="CL_PLATFORM_PROFILE"/>
<enum value="0x0901" name="CL_PLATFORM_VERSION"/>
<enum value="0x0902" name="CL_PLATFORM_NAME"/>
<enum value="0x0903" name="CL_PLATFORM_VENDOR"/>
<enum value="0x0904" name="CL_PLATFORM_EXTENSIONS"/>
<enum value="0x0905" name="CL_PLATFORM_HOST_TIMER_RESOLUTION"/>
<unused start="0x0906" end="0x091F" comment="Reserved to Khronos"/>
<enum value="0x0920" name="CL_PLATFORM_ICD_SUFFIX_KHR"/>
<unused start="0x0921" end="0x09FF" comment="Vendor extensions"/>
</enums>
<enums start="0x1000" end="0x107F" name="cl_device_info" vendor="Khronos">
<enum value="0x1000" name="CL_DEVICE_TYPE"/>
<enum value="0x1001" name="CL_DEVICE_VENDOR_ID"/>
<enum value="0x1002" name="CL_DEVICE_MAX_COMPUTE_UNITS"/>
<enum value="0x1003" name="CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS"/>
<enum value="0x1004" name="CL_DEVICE_MAX_WORK_GROUP_SIZE"/>
<enum value="0x1005" name="CL_DEVICE_MAX_WORK_ITEM_SIZES"/>
<enum value="0x1006" name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR"/>
<enum value="0x1007" name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT"/>
<enum value="0x1008" name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT"/>
<enum value="0x1009" name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG"/>
<enum value="0x100A" name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT"/>
<enum value="0x100B" name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE"/>
<enum value="0x100C" name="CL_DEVICE_MAX_CLOCK_FREQUENCY"/>
<enum value="0x100D" name="CL_DEVICE_ADDRESS_BITS"/>
<enum value="0x100E" name="CL_DEVICE_MAX_READ_IMAGE_ARGS"/>
<enum value="0x100F" name="CL_DEVICE_MAX_WRITE_IMAGE_ARGS"/>
<enum value="0x1010" name="CL_DEVICE_MAX_MEM_ALLOC_SIZE"/>
<enum value="0x1011" name="CL_DEVICE_IMAGE2D_MAX_WIDTH"/>
<enum value="0x1012" name="CL_DEVICE_IMAGE2D_MAX_HEIGHT"/>
<enum value="0x1013" name="CL_DEVICE_IMAGE3D_MAX_WIDTH"/>
<enum value="0x1014" name="CL_DEVICE_IMAGE3D_MAX_HEIGHT"/>
<enum value="0x1015" name="CL_DEVICE_IMAGE3D_MAX_DEPTH"/>
<enum value="0x1016" name="CL_DEVICE_IMAGE_SUPPORT"/>
<enum value="0x1017" name="CL_DEVICE_MAX_PARAMETER_SIZE"/>
<enum value="0x1018" name="CL_DEVICE_MAX_SAMPLERS"/>
<enum value="0x1019" name="CL_DEVICE_MEM_BASE_ADDR_ALIGN"/>
<enum value="0x101A" name="CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE"/>
<enum value="0x101B" name="CL_DEVICE_SINGLE_FP_CONFIG"/>
<enum value="0x101C" name="CL_DEVICE_GLOBAL_MEM_CACHE_TYPE"/>
<enum value="0x101D" name="CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE"/>
<enum value="0x101E" name="CL_DEVICE_GLOBAL_MEM_CACHE_SIZE"/>
<enum value="0x101F" name="CL_DEVICE_GLOBAL_MEM_SIZE"/>
<enum value="0x1020" name="CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE"/>
<enum value="0x1021" name="CL_DEVICE_MAX_CONSTANT_ARGS"/>
<enum value="0x1022" name="CL_DEVICE_LOCAL_MEM_TYPE"/>
<enum value="0x1023" name="CL_DEVICE_LOCAL_MEM_SIZE"/>
<enum value="0x1024" name="CL_DEVICE_ERROR_CORRECTION_SUPPORT"/>
<enum value="0x1025" name="CL_DEVICE_PROFILING_TIMER_RESOLUTION"/>
<enum value="0x1026" name="CL_DEVICE_ENDIAN_LITTLE"/>
<enum value="0x1027" name="CL_DEVICE_AVAILABLE"/>
<enum value="0x1028" name="CL_DEVICE_COMPILER_AVAILABLE"/>
<enum value="0x1029" name="CL_DEVICE_EXECUTION_CAPABILITIES"/>
<enum value="0x102A" name="CL_DEVICE_QUEUE_PROPERTIES"/>
<enum value="0x102A" name="CL_DEVICE_QUEUE_ON_HOST_PROPERTIES"/>
<enum value="0x102B" name="CL_DEVICE_NAME"/>
<enum value="0x102C" name="CL_DEVICE_VENDOR"/>
<enum value="0x102D" name="CL_DRIVER_VERSION"/>
<enum value="0x102E" name="CL_DEVICE_PROFILE"/>
<enum value="0x102F" name="CL_DEVICE_VERSION"/>
<enum value="0x1030" name="CL_DEVICE_EXTENSIONS"/>
<enum value="0x1031" name="CL_DEVICE_PLATFORM"/>
<enum value="0x1032" name="CL_DEVICE_DOUBLE_FP_CONFIG"/>
<enum value="0x1033" name="CL_DEVICE_HALF_FP_CONFIG"/>
<enum value="0x1034" name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"/>
<enum value="0x1035" name="CL_DEVICE_HOST_UNIFIED_MEMORY"/>
<enum value="0x1036" name="CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR"/>
<enum value="0x1037" name="CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT"/>
<enum value="0x1038" name="CL_DEVICE_NATIVE_VECTOR_WIDTH_INT"/>
<enum value="0x1039" name="CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG"/>
<enum value="0x103A" name="CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT"/>
<enum value="0x103B" name="CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE"/>
<enum value="0x103C" name="CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF"/>
<enum value="0x103D" name="CL_DEVICE_OPENCL_C_VERSION"/>
<enum value="0x103E" name="CL_DEVICE_LINKER_AVAILABLE"/>
<enum value="0x103F" name="CL_DEVICE_BUILT_IN_KERNELS"/>
<enum value="0x1040" name="CL_DEVICE_IMAGE_MAX_BUFFER_SIZE"/>
<enum value="0x1041" name="CL_DEVICE_IMAGE_MAX_ARRAY_SIZE"/>
<enum value="0x1042" name="CL_DEVICE_PARENT_DEVICE"/>
<enum value="0x1043" name="CL_DEVICE_PARTITION_MAX_SUB_DEVICES"/>
<enum value="0x1044" name="CL_DEVICE_PARTITION_PROPERTIES"/>
<enum value="0x1045" name="CL_DEVICE_PARTITION_AFFINITY_DOMAIN"/>
<enum value="0x1046" name="CL_DEVICE_PARTITION_TYPE"/>
<enum value="0x1047" name="CL_DEVICE_REFERENCE_COUNT"/>
<enum value="0x1048" name="CL_DEVICE_PREFERRED_INTEROP_USER_SYNC"/>
<enum value="0x1049" name="CL_DEVICE_PRINTF_BUFFER_SIZE"/>
<enum value="0x104A" name="CL_DEVICE_IMAGE_PITCH_ALIGNMENT"/>
<enum value="0x104B" name="CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT"/>
<enum value="0x104C" name="CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS"/>
<enum value="0x104D" name="CL_DEVICE_MAX_GLOBAL_VARIABLE_SIZE"/>
<enum value="0x104E" name="CL_DEVICE_QUEUE_ON_DEVICE_PROPERTIES"/>
<enum value="0x104F" name="CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"/>
<enum value="0x1050" name="CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE"/>
<enum value="0x1051" name="CL_DEVICE_MAX_ON_DEVICE_QUEUES"/>
<enum value="0x1052" name="CL_DEVICE_MAX_ON_DEVICE_EVENTS"/>
<enum value="0x1053" name="CL_DEVICE_SVM_CAPABILITIES"/>
<enum value="0x1054" name="CL_DEVICE_GLOBAL_VARIABLE_PREFERRED_TOTAL_SIZE"/>
<enum value="0x1055" name="CL_DEVICE_MAX_PIPE_ARGS"/>
<enum value="0x1056" name="CL_DEVICE_PIPE_MAX_ACTIVE_RESERVATIONS"/>
<enum value="0x1057" name="CL_DEVICE_PIPE_MAX_PACKET_SIZE"/>
<enum value="0x1058" name="CL_DEVICE_PREFERRED_PLATFORM_ATOMIC_ALIGNMENT"/>
<enum value="0x1059" name="CL_DEVICE_PREFERRED_GLOBAL_ATOMIC_ALIGNMENT"/>
<enum value="0x105A" name="CL_DEVICE_PREFERRED_LOCAL_ATOMIC_ALIGNMENT"/>
<enum value="0x105B" name="CL_DEVICE_IL_VERSION"/>
<enum value="0x105B" name="CL_DEVICE_IL_VERSION_KHR"/>
<enum value="0x105C" name="CL_DEVICE_MAX_NUM_SUB_GROUPS"/>
<enum value="0x105D" name="CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS"/>
<unused start="0x105E" end="0x107F" comment="Reserved for cl_device_info"/>
<enum value="0x1080" name="CL_CONTEXT_REFERENCE_COUNT"/>
<enum value="0x1081" name="CL_CONTEXT_DEVICES"/>
<enum value="0x1082" name="CL_CONTEXT_PROPERTIES"/>
<enum value="0x1083" name="CL_CONTEXT_NUM_DEVICES"/>
<enum value="0x1084" name="CL_CONTEXT_PLATFORM"/>
<enum value="0x1085" name="CL_CONTEXT_INTEROP_USER_SYNC"/>
<enum value="0x1086" name="CL_DEVICE_PARTITION_EQUALLY"/>
<enum value="0x1087" name="CL_DEVICE_PARTITION_BY_COUNTS"/>
<enum value="0x1088" name="CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"/>
<unused start="0x1089" end="0x108F" comment="Reserved for cl_device_partition_property"/>
<enum value="0x1090" name="CL_QUEUE_CONTEXT"/>
<enum value="0x1091" name="CL_QUEUE_DEVICE"/>
<enum value="0x1092" name="CL_QUEUE_REFERENCE_COUNT"/>
<enum value="0x1093" name="CL_QUEUE_PROPERTIES"/>
<enum value="0x1094" name="CL_QUEUE_SIZE"/>
<enum value="0x1095" name="CL_QUEUE_DEVICE_DEFAULT"/>
<enum value="0x1096" name="CL_QUEUE_PRIORITY_KHR"/>
<enum value="0x1097" name="CL_QUEUE_THROTTLE_KHR"/>
<unused start="0x1098" end="0x109F" comment="Reserved for cl_command_queue_info"/>
<unused start="0x10A0" end="0x10AF" comment="Reserved for core API tokens"/>
<enum value="0x10B0" name="CL_R"/>
<enum value="0x10B1" name="CL_A"/>
<enum value="0x10B2" name="CL_RG"/>
<enum value="0x10B3" name="CL_RA"/>
<enum value="0x10B4" name="CL_RGB"/>
<enum value="0x10B5" name="CL_RGBA"/>
<enum value="0x10B6" name="CL_BGRA"/>
<enum value="0x10B7" name="CL_ARGB"/>
<enum value="0x10B8" name="CL_INTENSITY"/>
<enum value="0x10B9" name="CL_LUMINANCE"/>
<enum value="0x10BA" name="CL_Rx"/>
<enum value="0x10BB" name="CL_RGx"/>
<enum value="0x10BC" name="CL_RGBx"/>
<enum value="0x10BD" name="CL_DEPTH"/>
<enum value="0x10BE" name="CL_DEPTH_STENCIL"/>
<enum value="0x10BF" name="CL_sRGB"/>
<enum value="0x10C0" name="CL_sRGBx"/>
<enum value="0x10C1" name="CL_sRGBA"/>
<enum value="0x10C2" name="CL_sBGRA"/>
<enum value="0x10C3" name="CL_ABGR"/>
<unused start="0x10C4" end="0x10CF" comment="Reserved for cl_channel_order"/>
<enum value="0x10D0" name="CL_SNORM_INT8"/>
<enum value="0x10D1" name="CL_SNORM_INT16"/>
<enum value="0x10D2" name="CL_UNORM_INT8"/>
<enum value="0x10D3" name="CL_UNORM_INT16"/>
<enum value="0x10D4" name="CL_UNORM_SHORT_565"/>
<enum value="0x10D5" name="CL_UNORM_SHORT_555"/>
<enum value="0x10D6" name="CL_UNORM_INT_101010"/>
<enum value="0x10D7" name="CL_SIGNED_INT8"/>
<enum value="0x10D8" name="CL_SIGNED_INT16"/>
<enum value="0x10D9" name="CL_SIGNED_INT32"/>
<enum value="0x10DA" name="CL_UNSIGNED_INT8"/>
<enum value="0x10DB" name="CL_UNSIGNED_INT16"/>
<enum value="0x10DC" name="CL_UNSIGNED_INT32"/>
<enum value="0x10DD" name="CL_HALF_FLOAT"/>
<enum value="0x10DE" name="CL_FLOAT"/>
<enum value="0x10DF" name="CL_UNORM_INT24"/>
<enum value="0x10E0" name="CL_UNORM_INT_101010_2"/>
<unused start="0x10E1" end="0x10EF" comment="Reserved for cl_channel_type"/>
<enum value="0x10F0" name="CL_MEM_OBJECT_BUFFER"/>
<enum value="0x10F1" name="CL_MEM_OBJECT_IMAGE2D"/>
<enum value="0x10F2" name="CL_MEM_OBJECT_IMAGE3D"/>
<enum value="0x10F3" name="CL_MEM_OBJECT_IMAGE2D_ARRAY"/>
<enum value="0x10F4" name="CL_MEM_OBJECT_IMAGE1D"/>
<enum value="0x10F5" name="CL_MEM_OBJECT_IMAGE1D_ARRAY"/>
<enum value="0x10F6" name="CL_MEM_OBJECT_IMAGE1D_BUFFER"/>
<enum value="0x10F7" name="CL_MEM_OBJECT_PIPE"/>
<unused start="0x10F8" end="0x10FF" comment="Reserved for cl_mem_object_type"/>
<enum value="0x1100" name="CL_MEM_TYPE"/>
<enum value="0x1101" name="CL_MEM_FLAGS"/>
<enum value="0x1102" name="CL_MEM_SIZE"/>
<enum value="0x1103" name="CL_MEM_HOST_PTR"/>
<enum value="0x1104" name="CL_MEM_MAP_COUNT"/>
<enum value="0x1105" name="CL_MEM_REFERENCE_COUNT"/>
<enum value="0x1106" name="CL_MEM_CONTEXT"/>
<enum value="0x1107" name="CL_MEM_ASSOCIATED_MEMOBJECT"/>
<enum value="0x1108" name="CL_MEM_OFFSET"/>
<enum value="0x1109" name="CL_MEM_USES_SVM_POINTER"/>
<unused start="0x110A" end="0x110F" comment="Reserved for cl_mem_info"/>
<enum value="0x1110" name="CL_IMAGE_FORMAT"/>
<enum value="0x1111" name="CL_IMAGE_ELEMENT_SIZE"/>
<enum value="0x1112" name="CL_IMAGE_ROW_PITCH"/>
<enum value="0x1113" name="CL_IMAGE_SLICE_PITCH"/>
<enum value="0x1114" name="CL_IMAGE_WIDTH"/>
<enum value="0x1115" name="CL_IMAGE_HEIGHT"/>
<enum value="0x1116" name="CL_IMAGE_DEPTH"/>
<enum value="0x1117" name="CL_IMAGE_ARRAY_SIZE"/>
<enum value="0x1118" name="CL_IMAGE_BUFFER"/>
<enum value="0x1119" name="CL_IMAGE_NUM_MIP_LEVELS"/>
<enum value="0x111A" name="CL_IMAGE_NUM_SAMPLES"/>
<unused start="0x111B" end="0x111F" comment="Reserved for cl_image_info"/>
<enum value="0x1120" name="CL_PIPE_PACKET_SIZE"/>
<enum value="0x1121" name="CL_PIPE_MAX_PACKETS"/>
<unused start="0x1122" end="0x112F" comment="Reserved for cl_pipe_info"/>
<enum value="0x1130" name="CL_ADDRESS_NONE"/>
<enum value="0x1131" name="CL_ADDRESS_CLAMP_TO_EDGE"/>
<enum value="0x1132" name="CL_ADDRESS_CLAMP"/>
<enum value="0x1133" name="CL_ADDRESS_REPEAT"/>
<enum value="0x1134" name="CL_ADDRESS_MIRRORED_REPEAT"/>
<unused start="0x1135" end="0x113F" comment="Reserved for cl_addressing_mode"/>
<enum value="0x1140" name="CL_FILTER_NEAREST"/>
<enum value="0x1141" name="CL_FILTER_LINEAR"/>
<unused start="0x1142" end="0x114F" comment="Reserved for cl_filter_mode"/>
<enum value="0x1150" name="CL_SAMPLER_REFERENCE_COUNT"/>
<enum value="0x1151" name="CL_SAMPLER_CONTEXT"/>
<enum value="0x1152" name="CL_SAMPLER_NORMALIZED_COORDS"/>
<enum value="0x1153" name="CL_SAMPLER_ADDRESSING_MODE"/>
<enum value="0x1154" name="CL_SAMPLER_FILTER_MODE"/>
<enum value="0x1155" name="CL_SAMPLER_MIP_FILTER_MODE"/>
<enum value="0x1156" name="CL_SAMPLER_LOD_MIN"/>
<enum value="0x1157" name="CL_SAMPLER_LOD_MAX"/>
<unused start="0x1158" end="0x115F" comment="Reserved for cl_sampler_info"/>
<enum value="0x1160" name="CL_PROGRAM_REFERENCE_COUNT"/>
<enum value="0x1161" name="CL_PROGRAM_CONTEXT"/>
<enum value="0x1162" name="CL_PROGRAM_NUM_DEVICES"/>
<enum value="0x1163" name="CL_PROGRAM_DEVICES"/>
<enum value="0x1164" name="CL_PROGRAM_SOURCE"/>
<enum value="0x1165" name="CL_PROGRAM_BINARY_SIZES"/>
<enum value="0x1166" name="CL_PROGRAM_BINARIES"/>
<enum value="0x1167" name="CL_PROGRAM_NUM_KERNELS"/>
<enum value="0x1168" name="CL_PROGRAM_KERNEL_NAMES"/>
<enum value="0x1169" name="CL_PROGRAM_IL"/>
<enum value="0x1169" name="CL_PROGRAM_IL_KHR"/>
<enum value="0x116A" name="CL_PROGRAM_SCOPE_GLOBAL_CTORS_PRESENT"/>
<enum value="0x116B" name="CL_PROGRAM_SCOPE_GLOBAL_DTORS_PRESENT"/>
<unused start="0x116C" end="0x117F" comment="Reserved for cl_program_info"/>
<unused start="0x1180" comment="Reserved for cl_program_build_info"/>
<enum value="0x1181" name="CL_PROGRAM_BUILD_STATUS"/>
<enum value="0x1182" name="CL_PROGRAM_BUILD_OPTIONS"/>
<enum value="0x1183" name="CL_PROGRAM_BUILD_LOG"/>
<enum value="0x1184" name="CL_PROGRAM_BINARY_TYPE"/>
<enum value="0x1185" name="CL_PROGRAM_BUILD_GLOBAL_VARIABLE_TOTAL_SIZE"/>
<unused start="0x1186" end="0x118F" comment="Reserved for cl_program_build_info"/>
<enum value="0x1190" name="CL_KERNEL_FUNCTION_NAME"/>
<enum value="0x1191" name="CL_KERNEL_NUM_ARGS"/>
<enum value="0x1192" name="CL_KERNEL_REFERENCE_COUNT"/>
<enum value="0x1193" name="CL_KERNEL_CONTEXT"/>
<enum value="0x1194" name="CL_KERNEL_PROGRAM"/>
<enum value="0x1195" name="CL_KERNEL_ATTRIBUTES"/>
<enum value="0x1196" name="CL_KERNEL_ARG_ADDRESS_QUALIFIER"/>
<enum value="0x1197" name="CL_KERNEL_ARG_ACCESS_QUALIFIER"/>
<enum value="0x1198" name="CL_KERNEL_ARG_TYPE_NAME"/>
<enum value="0x1199" name="CL_KERNEL_ARG_TYPE_QUALIFIER"/>
<enum value="0x119A" name="CL_KERNEL_ARG_NAME"/>
<enum value="0x119B" name="CL_KERNEL_ARG_ADDRESS_GLOBAL"/>
<enum value="0x119C" name="CL_KERNEL_ARG_ADDRESS_LOCAL"/>
<enum value="0x119D" name="CL_KERNEL_ARG_ADDRESS_CONSTANT"/>
<enum value="0x119E" name="CL_KERNEL_ARG_ADDRESS_PRIVATE"/>
<unused start="0x119F" comment="Reserved for cl_kernel_arg_address_qualifier"/>
<enum value="0x11A0" name="CL_KERNEL_ARG_ACCESS_READ_ONLY"/>
<enum value="0x11A1" name="CL_KERNEL_ARG_ACCESS_WRITE_ONLY"/>
<enum value="0x11A2" name="CL_KERNEL_ARG_ACCESS_READ_WRITE"/>
<enum value="0x11A3" name="CL_KERNEL_ARG_ACCESS_NONE"/>
<unused start="0x11A4" end="0x11AF" comment="Reserved for cl_kernel_arg_access_qualifier"/>
<enum value="0x11B0" name="CL_KERNEL_WORK_GROUP_SIZE"/>
<enum value="0x11B1" name="CL_KERNEL_COMPILE_WORK_GROUP_SIZE"/>
<enum value="0x11B2" name="CL_KERNEL_LOCAL_MEM_SIZE"/>
<enum value="0x11B3" name="CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"/>
<enum value="0x11B4" name="CL_KERNEL_PRIVATE_MEM_SIZE"/>
<enum value="0x11B5" name="CL_KERNEL_GLOBAL_WORK_SIZE"/>
<enum value="0x11B6" name="CL_KERNEL_EXEC_INFO_SVM_PTRS"/>
<enum value="0x11B7" name="CL_KERNEL_EXEC_INFO_SVM_FINE_GRAIN_SYSTEM"/>
<enum value="0x11B8" name="CL_KERNEL_LOCAL_SIZE_FOR_SUB_GROUP_COUNT"/>
<enum value="0x11B9" name="CL_KERNEL_MAX_NUM_SUB_GROUPS"/>
<enum value="0x11BA" name="CL_KERNEL_COMPILE_NUM_SUB_GROUPS"/>
<unused start="0x11BB" end="0x11CF" comment="Reserved for cl_kernel_info / cl_kernel_work_group_info / cl_kernel_exec_info / cl_kernel_sub_group_info"/>
<enum value="0x11D0" name="CL_EVENT_COMMAND_QUEUE"/>
<enum value="0x11D1" name="CL_EVENT_COMMAND_TYPE"/>
<enum value="0x11D2" name="CL_EVENT_REFERENCE_COUNT"/>
<enum value="0x11D3" name="CL_EVENT_COMMAND_EXECUTION_STATUS"/>
<enum value="0x11D4" name="CL_EVENT_CONTEXT"/>
<unused start="0x11D5" end="0x11EF" comment="Reserved for cl_event_info"/>
<enum value="0x11F0" name="CL_COMMAND_NDRANGE_KERNEL"/>
<enum value="0x11F1" name="CL_COMMAND_TASK"/>
<enum value="0x11F2" name="CL_COMMAND_NATIVE_KERNEL"/>
<enum value="0x11F3" name="CL_COMMAND_READ_BUFFER"/>
<enum value="0x11F4" name="CL_COMMAND_WRITE_BUFFER"/>
<enum value="0x11F5" name="CL_COMMAND_COPY_BUFFER"/>
<enum value="0x11F6" name="CL_COMMAND_READ_IMAGE"/>
<enum value="0x11F7" name="CL_COMMAND_WRITE_IMAGE"/>
<enum value="0x11F8" name="CL_COMMAND_COPY_IMAGE"/>
<enum value="0x11F9" name="CL_COMMAND_COPY_IMAGE_TO_BUFFER"/>
<enum value="0x11FA" name="CL_COMMAND_COPY_BUFFER_TO_IMAGE"/>
<enum value="0x11FB" name="CL_COMMAND_MAP_BUFFER"/>
<enum value="0x11FC" name="CL_COMMAND_MAP_IMAGE"/>
<enum value="0x11FD" name="CL_COMMAND_UNMAP_MEM_OBJECT"/>
<enum value="0x11FE" name="CL_COMMAND_MARKER"/>
<enum value="0x11FF" name="CL_COMMAND_ACQUIRE_GL_OBJECTS"/>
<enum value="0x1200" name="CL_COMMAND_RELEASE_GL_OBJECTS"/>
<enum value="0x1201" name="CL_COMMAND_READ_BUFFER_RECT"/>
<enum value="0x1202" name="CL_COMMAND_WRITE_BUFFER_RECT"/>
<enum value="0x1203" name="CL_COMMAND_COPY_BUFFER_RECT"/>
<enum value="0x1204" name="CL_COMMAND_USER"/>
<enum value="0x1205" name="CL_COMMAND_BARRIER"/>
<enum value="0x1206" name="CL_COMMAND_MIGRATE_MEM_OBJECTS"/>
<enum value="0x1207" name="CL_COMMAND_FILL_BUFFER"/>
<enum value="0x1208" name="CL_COMMAND_FILL_IMAGE"/>
<enum value="0x1209" name="CL_COMMAND_SVM_FREE"/>
<enum value="0x120A" name="CL_COMMAND_SVM_MEMCPY"/>
<enum value="0x120B" name="CL_COMMAND_SVM_MEMFILL"/>
<enum value="0x120C" name="CL_COMMAND_SVM_MAP"/>
<enum value="0x120D" name="CL_COMMAND_SVM_UNMAP"/>
<unused start="0x120E" end="0x121A" comment="Reserved for cl_command_types"/>
<enum value="0x1220" name="CL_BUFFER_CREATE_TYPE_REGION"/>
<unused start="0x1221" end="0x127F" comment="Reserved for cl_buffer_create_type"/>
<enum value="0x1280" name="CL_PROFILING_COMMAND_QUEUED"/>
<enum value="0x1281" name="CL_PROFILING_COMMAND_SUBMIT"/>
<enum value="0x1282" name="CL_PROFILING_COMMAND_START"/>
<enum value="0x1283" name="CL_PROFILING_COMMAND_END"/>
<enum value="0x1284" name="CL_PROFILING_COMMAND_COMPLETE"/>
<unused start="0x1285" end="0x128F" comment="Reserved for cl_profiling_info"/>
<unused start="0x1290" end="0x1FFF" comment="Reserved for core API tokens"/>
</enums>
<enums start="0x2000" end="0x201F" name="enums.2000" vendor="Khronos" comment="Reserved for interop with other APIs">
<enum value="0x2000" name="CL_GL_OBJECT_BUFFER"/>
<enum value="0x2001" name="CL_GL_OBJECT_TEXTURE2D"/>
<enum value="0x2002" name="CL_GL_OBJECT_TEXTURE3D"/>
<enum value="0x2003" name="CL_GL_OBJECT_RENDERBUFFER"/>
<enum value="0x2004" name="CL_GL_TEXTURE_TARGET"/>
<enum value="0x2005" name="CL_GL_MIPMAP_LEVEL"/>
<enum value="0x2006" name="CL_CURRENT_DEVICE_FOR_GL_CONTEXT_KHR"/>
<enum value="0x2007" name="CL_DEVICES_FOR_GL_CONTEXT_KHR"/>
<enum value="0x2008" name="CL_GL_CONTEXT_KHR"/>
<enum value="0x2009" name="CL_EGL_DISPLAY_KHR"/>
<enum value="0x200A" name="CL_GLX_DISPLAY_KHR"/>
<enum value="0x200B" name="CL_WGL_HDC_KHR"/>
<enum value="0x200C" name="CL_CGL_SHAREGROUP_KHR"/>
<enum value="0x200D" name="CL_COMMAND_GL_FENCE_SYNC_OBJECT_KHR"/>
<enum value="0x200E" name="CL_GL_OBJECT_TEXTURE2D_ARRAY"/>
<enum value="0x200F" name="CL_GL_OBJECT_TEXTURE1D"/>
<enum value="0x2010" name="CL_GL_OBJECT_TEXTURE1D_ARRAY"/>
<enum value="0x2011" name="CL_GL_OBJECT_TEXTURE_BUFFER"/>
<enum value="0x2012" name="CL_GL_NUM_SAMPLES"/>
<unused start="0x2013" end="0x201F" comment="Reserved for OpenGL interop"/>
<enum value="0x2020" name="CL_ADAPTER_D3D9_KHR"/>
<enum value="0x2021" name="CL_ADAPTER_D3D9EX_KHR"/>
<enum value="0x2022" name="CL_ADAPTER_DXVA_KHR"/>
<enum value="0x2023" name="CL_PREFERRED_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR"/>
<enum value="0x2024" name="CL_ALL_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR"/>
<enum value="0x2025" name="CL_CONTEXT_ADAPTER_D3D9_KHR"/>
<enum value="0x2026" name="CL_CONTEXT_ADAPTER_D3D9EX_KHR"/>
<enum value="0x2027" name="CL_CONTEXT_ADAPTER_DXVA_KHR"/>
<enum value="0x2028" name="CL_MEM_DX9_MEDIA_ADAPTER_TYPE_KHR"/>
<enum value="0x2029" name="CL_MEM_DX9_MEDIA_SURFACE_INFO_KHR"/>
<enum value="0x202A" name="CL_IMAGE_DX9_MEDIA_PLANE_KHR"/>
<enum value="0x202B" name="CL_COMMAND_ACQUIRE_DX9_MEDIA_SURFACES_KHR"/>
<enum value="0x202C" name="CL_COMMAND_RELEASE_DX9_MEDIA_SURFACES_KHR"/>
<enum value="0x202D" name="CL_COMMAND_ACQUIRE_EGL_OBJECTS_KHR"/>
<enum value="0x202E" name="CL_COMMAND_RELEASE_EGL_OBJECTS_KHR"/>
<enum value="0x202F" name="CL_COMMAND_EGL_FENCE_SYNC_OBJECT_KHR"/>
<enum value="0x2030" name="CL_CONTEXT_MEMORY_INITIALIZE_KHR"/>
<enum value="0x2031" name="CL_DEVICE_TERMINATE_CAPABILITY_KHR"/>
<enum value="0x2032" name="CL_CONTEXT_TERMINATE_KHR"/>
<enum value="0x2033" name="CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE"/>
<enum value="0x2033" name="CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE_KHR"/>
<enum value="0x2034" name="CL_KERNEL_SUB_GROUP_COUNT_FOR_NDRANGE"/>
<enum value="0x2034" name="CL_KERNEL_SUB_GROUP_COUNT_FOR_NDRANGE_KHR"/>
<enum value="0x2035" name="CL_DEVICE_MAX_NAMED_BARRIER_COUNT_KHR"/>
<unused start="0x2036" end="0x2FFF" comment="Reserved to Khronos for interop"/>
</enums>
<enums start="0x3000" end="0x3FFF" name="enums.3000" vendor="Khronos" comment="Platform IDs. Allocate individually.">
<unused start="0x3000"/>
<!-- unused <enum value="0x3001" name="CL_PLATFORM_NVIDIA" comment="Allocated to NVIDIA per clamb@nvidia.com 2009/05/26"/> -->
<unused start="0x3002" end="0x3FFF"/>
</enums>
<enums start="0x4000" end="0x400F" name="enums.4000" vendor="NVIDIA" comment="Per Bug 5673">
<enum value="0x4000" name="CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV"/>
<enum value="0x4001" name="CL_DEVICE_COMPUTE_CAPABILITY_MINOR_NV"/>
<enum value="0x4002" name="CL_DEVICE_REGISTERS_PER_BLOCK_NV"/>
<enum value="0x4003" name="CL_DEVICE_WARP_SIZE_NV"/>
<enum value="0x4004" name="CL_DEVICE_GPU_OVERLAP_NV"/>
<enum value="0x4005" name="CL_DEVICE_KERNEL_EXEC_TIMEOUT_NV"/>
<enum value="0x4006" name="CL_DEVICE_INTEGRATED_MEMORY_NV"/>
<unused start="0x4007" end="0x400F"/>
</enums>
<enums start="0x4010" end="0x402F" name="enums.4010" vendor="NVIDIA" comment="Per Bug 5782">
<enum value="0x4010" name="CL_D3D10_DEVICE_KHR"/>
<enum value="0x4011" name="CL_D3D10_DXGI_ADAPTER_KHR"/>
<enum value="0x4012" name="CL_PREFERRED_DEVICES_FOR_D3D10_KHR"/>
<enum value="0x4013" name="CL_ALL_DEVICES_FOR_D3D10_KHR"/>
<enum value="0x4014" name="CL_CONTEXT_D3D10_DEVICE_KHR"/>
<enum value="0x4015" name="CL_MEM_D3D10_RESOURCE_KHR"/>
<enum value="0x4016" name="CL_IMAGE_D3D10_SUBRESOURCE_KHR"/>
<enum value="0x4017" name="CL_COMMAND_ACQUIRE_D3D10_OBJECTS_KHR"/>
<enum value="0x4018" name="CL_COMMAND_RELEASE_D3D10_OBJECTS_KHR"/>
<!-- unused <enum value="0x4010" name="CL_D3D10_DEVICE_NV"/> -->
<!-- unused <enum value="0x4011" name="CL_D3D10_DXGI_ADAPTER_NV"/> -->
<!-- unused <enum value="0x4012" name="CL_PREFERRED_DEVICES_FOR_D3D10_NV"/> -->
<!-- unused <enum value="0x4013" name="CL_ALL_DEVICES_FOR_D3D10_NV"/> -->
<!-- unused <enum value="0x4014" name="CL_CONTEXT_D3D10_DEVICE_NV"/> -->
<!-- unused <enum value="0x4015" name="CL_MEM_D3D10_RESOURCE_NV"/> -->
<!-- unused <enum value="0x4016" name="CL_IMAGE_D3D10_SUBRESOURCE_NV"/> -->
<!-- unused <enum value="0x4017" name="CL_COMMAND_ACQUIRE_D3D10_OBJECTS_NV"/> -->
<!-- unused <enum value="0x4018" name="CL_COMMAND_RELEASE_D3D10_OBJECTS_NV"/> -->
<enum value="0x4019" name="CL_D3D11_DEVICE_KHR"/>
<enum value="0x401A" name="CL_D3D11_DXGI_ADAPTER_KHR"/>
<enum value="0x401B" name="CL_PREFERRED_DEVICES_FOR_D3D11_KHR"/>
<enum value="0x401C" name="CL_ALL_DEVICES_FOR_D3D11_KHR"/>
<enum value="0x401D" name="CL_CONTEXT_D3D11_DEVICE_KHR"/>
<enum value="0x401E" name="CL_MEM_D3D11_RESOURCE_KHR"/>
<enum value="0x401F" name="CL_IMAGE_D3D11_SUBRESOURCE_KHR"/>
<enum value="0x4020" name="CL_COMMAND_ACQUIRE_D3D11_OBJECTS_KHR"/>
<enum value="0x4021" name="CL_COMMAND_RELEASE_D3D11_OBJECTS_KHR"/>
<!-- unused <enum value="0x4019" name="CL_D3D11_DEVICE_NV"/> -->
<!-- unused <enum value="0x401A" name="CL_D3D11_DXGI_ADAPTER_NV"/> -->
<!-- unused <enum value="0x401B" name="CL_PREFERRED_DEVICES_FOR_D3D11_NV"/> -->
<!-- unused <enum value="0x401C" name="CL_ALL_DEVICES_FOR_D3D11_NV"/> -->
<!-- unused <enum value="0x401D" name="CL_CONTEXT_D3D11_DEVICE_NV"/> -->
<!-- unused <enum value="0x401E" name="CL_MEM_D3D11_RESOURCE_NV"/> -->
<!-- unused <enum value="0x401F" name="CL_IMAGE_D3D11_SUBRESOURCE_NV"/> -->
<!-- unused <enum value="0x4020" name="CL_COMMAND_ACQUIRE_D3D11_OBJECTS_NV"/> -->
<!-- unused <enum value="0x4021" name="CL_COMMAND_RELEASE_D3D11_OBJECTS_NV"/> -->
<enum value="0x4022" name="CL_D3D9_DEVICE_INTEL"/>
<enum value="0x4024" name="CL_PREFERRED_DEVICES_FOR_DX9_INTEL"/>
<enum value="0x4025" name="CL_ALL_DEVICES_FOR_DX9_INTEL"/>
<enum value="0x4026" name="CL_CONTEXT_D3D9_DEVICE_INTEL"/>
<enum value="0x4027" name="CL_MEM_DX9_RESOURCE_INTEL"/>
<enum value="0x402A" name="CL_COMMAND_ACQUIRE_DX9_OBJECTS_INTEL"/>
<enum value="0x402B" name="CL_COMMAND_RELEASE_DX9_OBJECTS_INTEL"/>
<!-- unused <enum value="0x4022" name="CL_D3D9_DEVICE_NV"/> -->
<!-- unused <enum value="0x4023" name="CL_D3D9_ADAPTER_NAME_NV"/> -->
<!-- unused <enum value="0x4024" name="CL_PREFERRED_DEVICES_FOR_D3D9_NV"/> -->
<!-- unused <enum value="0x4025" name="CL_ALL_DEVICES_FOR_D3D9_NV"/> -->
<!-- unused <enum value="0x4026" name="CL_CONTEXT_D3D9_DEVICE_NV"/> -->
<!-- unused <enum value="0x4027" name="CL_MEM_D3D9_RESOURCE_NV"/> -->
<!-- unused <enum value="0x4028" name="CL_IMAGE_D3D9_FACE_NV"/> -->
<!-- unused <enum value="0x4029" name="CL_IMAGE_D3D9_LEVEL_NV"/> -->
<enum value="0x402A" name="CL_COMMAND_ACQUIRE_D3D9_OBJECTS_INTEL"/>
<!-- unused <enum value="0x402A" name="CL_COMMAND_ACQUIRE_D3D9_OBJECTS_NV"/> -->
<enum value="0x402B" name="CL_COMMAND_RELEASE_D3D9_OBJECTS_INTEL"/>
<!-- unused <enum value="0x402B" name="CL_COMMAND_RELEASE_D3D9_OBJECTS_NV"/> -->
<enum value="0x402C" name="CL_CONTEXT_D3D10_PREFER_SHARED_RESOURCES_KHR"/>
<enum value="0x402D" name="CL_CONTEXT_D3D11_PREFER_SHARED_RESOURCES_KHR"/>
<unused start="0x402D" end="0x402F"/>
</enums>
<enums start="0x4030" end="0x403F" name="enums.4030" vendor="AMD" comment="Per Bug 6075">
<!-- Note that an unnamed AMD D3D9 extension was intended to use some enums in this range, but was never shipped or published. See bug 6071. -->
<!-- To be named AMD atomic counters extension - see bug 6071/6075 -->
<!-- <enum value="0x4030" name="CL_DEVICE_PARENT_DEVICE_EXT"/> -->
<!-- <enum value="0x4031" name="CL_DEVICE_PARTITION_STYLE_EXT"/> -->
<!-- <enum value="0x4032" name="CL_DEVICE_MAX_ATOMIC_COUNTERS_EXT"/> -->
<unused start="0x4033" end="0x4035"/>
<enum value="0x4036" name="CL_DEVICE_PROFILING_TIMER_OFFSET_AMD"/>
<!-- unused <enum value="0x4037" name="CL_DEVICE_TOPOLOGY_AMD"/> -->
<!-- unused <enum value="0x4038" name="CL_DEVICE_BOARD_NAME_AMD"/> -->
<!-- unused <enum value="0x4039" name="CL_DEVICE_GLOBAL_FREE_MEMORY_AMD"/> -->
<unused start="0x403A" end="0x403F"/>
</enums>
<enums start="0x4040" end="0x404F" name="enums.4040" vendor="AMD" comment="Per Bug 6261 (IBM), then Bug 13603 giving control to AMD">
<enum value="0x4040" name="CL_COMMAND_MIGRATE_MEM_OBJECT_EXT" comment="From cl_ext_migrate_memobject. Benign collision with the following enum."/>
<!-- unused <enum value="0x4040" name="CL_DEVICE_SIMD_PER_COMPUTE_UNIT_AMD"/> -->
<!-- unused <enum value="0x4041" name="CL_DEVICE_SIMD_WIDTH_AMD"/> -->
<!-- unused <enum value="0x4042" name="CL_DEVICE_SIMD_INSTRUCTION_WIDTH_AMD"/> -->
<!-- unused <enum value="0x4043" name="CL_DEVICE_WAVEFRONT_WIDTH_AMD"/> -->
<!-- unused <enum value="0x4044" name="CL_DEVICE_GLOBAL_MEM_CHANNELS_AMD"/> -->
<!-- unused <enum value="0x4045" name="CL_DEVICE_GLOBAL_MEM_CHANNEL_BANKS_AMD"/> -->
<!-- unused <enum value="0x4046" name="CL_DEVICE_GLOBAL_MEM_CHANNEL_BANK_WIDTH_AMD"/> -->
<!-- unused <enum value="0x4047" name="CL_DEVICE_LOCAL_MEM_SIZE_PER_COMPUTE_UNIT_AMD"/> -->
<!-- unused <enum value="0x4048" name="CL_DEVICE_LOCAL_MEM_BANKS_AMD"/> -->
<!-- unused <enum value="0x4049" name="CL_DEVICE_THREAD_TRACE_SUPPORTED_AMD"/> -->
<!-- unused <enum value="0x404A" name="CL_DEVICE_GFXIP_MAJOR_AMD"/> -->
<!-- unused <enum value="0x404B" name="CL_DEVICE_GFXIP_MINOR_AMD"/> -->
<!-- unused <enum value="0x404C" name="CL_DEVICE_AVAILABLE_ASYNC_QUEUES_AMD"/> -->
<unused start="0x404D" end="0x404F"/>
</enums>
<enums start="0x4050" end="0x405F" name="enums.4050" vendor="Apple">
<enum value="0x4050" name="CL_DEVICE_PARTITION_EQUALLY_EXT"/>
<enum value="0x4051" name="CL_DEVICE_PARTITION_BY_COUNTS_EXT"/>
<enum value="0x4052" name="CL_DEVICE_PARTITION_BY_NAMES_EXT"/>
<enum value="0x4052" name="CL_DEVICE_PARTITION_BY_NAMES_INTEL"/>
<enum value="0x4053" name="CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN_EXT"/>
<enum value="0x4054" name="CL_DEVICE_PARENT_DEVICE_EXT"/>
<enum value="0x4055" name="CL_DEVICE_PARTITION_TYPES_EXT"/>
<enum value="0x4056" name="CL_DEVICE_AFFINITY_DOMAINS_EXT"/>
<enum value="0x4057" name="CL_DEVICE_REFERENCE_COUNT_EXT"/>
<enum value="0x4058" name="CL_DEVICE_PARTITION_STYLE_EXT"/>
<unused start="0x4059" end="0x405F"/>
</enums>
<enums start="0x4060" end="0x406F" name="enums.4060" vendor="IBM" comment="Per Bug 6470">
<unused start="0x4060" end="0x406F"/>
</enums>
<enums start="0x4070" end="0x407F" name="enums.4070" vendor="Intel" comment="Per Bug 7836">
<enum value="0x4070" name="CL_D3D9EX_DEVICE_INTEL"/>
<enum value="0x4071" name="CL_DXVA_DEVICE_INTEL"/>
<enum value="0x4072" name="CL_CONTEXT_D3D9EX_DEVICE_INTEL"/>
<enum value="0x4073" name="CL_CONTEXT_DXVA_DEVICE_INTEL"/>
<enum value="0x4074" name="CL_MEM_DX9_SHARED_HANDLE_INTEL"/>
<enum value="0x4075" name="CL_IMAGE_DX9_PLANE_INTEL"/>
<enum value="0x4076" name="CL_YUYV_INTEL"/>
<enum value="0x4077" name="CL_UYVY_INTEL"/>
<enum value="0x4078" name="CL_YVYU_INTEL"/>
<enum value="0x4079" name="CL_VYUY_INTEL"/>
<unused start="0x407A" end="0x407D"/>
<enum value="0x407E" name="CL_DEVICE_ME_VERSION_INTEL"/>
<unused start="0x407F"/>
</enums>
<enums start="0x4080" end="0x408F" name="enums.4080" vendor="AMD" comment="Per Bug 8211">
<!-- unused <enum value="0x4080" name="CL_COMMAND_WAIT_SIGNAL_AMD"/> -->
<!-- unused <enum value="0x4081" name="CL_COMMAND_WRITE_SIGNAL_AMD"/> -->
<!-- unused <enum value="0x4082" name="CL_COMMAND_MAKE_BUFFERS_RESIDENT_AMD"/> -->
<unused start="0x4083" end="0x408F"/>
</enums>
<enums start="0x4090" end="0x409F" name="enums.4090" vendor="Intel" comment="Per kevin.smith@intel.com 2013/04/11">
<enum value="0x4090" name="CL_ACCELERATOR_DESCRIPTOR_INTEL"/>
<enum value="0x4091" name="CL_ACCELERATOR_REFERENCE_COUNT_INTEL"/>
<enum value="0x4092" name="CL_ACCELERATOR_CONTEXT_INTEL"/>
<enum value="0x4093" name="CL_ACCELERATOR_TYPE_INTEL"/>
<enum value="0x4094" name="CL_VA_API_DISPLAY_INTEL"/>
<enum value="0x4095" name="CL_PREFERRED_DEVICES_FOR_VA_API_INTEL"/>
<enum value="0x4096" name="CL_ALL_DEVICES_FOR_VA_API_INTEL"/>
<enum value="0x4097" name="CL_CONTEXT_VA_API_DISPLAY_INTEL"/>
<enum value="0x4098" name="CL_MEM_VA_API_MEDIA_SURFACE_INTEL"/>
<enum value="0x4099" name="CL_IMAGE_VA_API_PLANE_INTEL"/>
<enum value="0x409A" name="CL_COMMAND_ACQUIRE_VA_API_MEDIA_SURFACES_INTEL"/>
<enum value="0x409B" name="CL_COMMAND_RELEASE_VA_API_MEDIA_SURFACES_INTEL"/>
<unused start="0x409C" end="0x409F"/>
</enums>
<enums start="0x40A0" end="0x40AF" name="enums.40A0" vendor="Qualcomm" comment="Per Bug 10214">
<enum value="0x40A0" name="CL_DEVICE_EXT_MEM_PADDING_IN_BYTES_QCOM"/>
<enum value="0x40A1" name="CL_DEVICE_PAGE_SIZE_QCOM"/>
<enum value="0x40A2" name="CL_IMAGE_ROW_ALIGNMENT_QCOM"/>
<enum value="0x40A3" name="CL_IMAGE_SLICE_ALIGNMENT_QCOM"/>
<enum value="0x40A4" name="CL_MEM_HOST_UNCACHED_QCOM"/>
<enum value="0x40A5" name="CL_MEM_HOST_WRITEBACK_QCOM"/>
<enum value="0x40A6" name="CL_MEM_HOST_WRITETHROUGH_QCOM"/>
<enum value="0x40A7" name="CL_MEM_HOST_WRITE_COMBINING_QCOM"/>
<enum value="0x40A8" name="CL_MEM_ION_HOST_PTR_QCOM"/>
<enum value="0x40A9" name="CL_MEM_HOST_IOCOHERENT_QCOM"/>
<unused start="0x40AA" end="0x40AF"/>
</enums>
<enums start="0x40B0" end="0x40BF" name="enums.40B0" vendor="ARM" comment="Per Bug 10337">
<enum value="0x40B0" name="CL_PRINTF_CALLBACK_ARM"/>
<enum value="0x40B1" name="CL_PRINTF_BUFFERSIZE_ARM"/>
<enum value="0x40B2" name="CL_IMPORT_TYPE_ARM"/>
<enum value="0x40B3" name="CL_IMPORT_TYPE_HOST_ARM"/>
<enum value="0x40B4" name="CL_IMPORT_TYPE_DMA_BUF_ARM"/>
<enum value="0x40B5" name="CL_IMPORT_TYPE_PROTECTED_ARM"/>
<enum value="0x40B6" name="CL_DEVICE_SVM_CAPABILITIES_ARM"/>
<enum value="0x40B7" name="CL_MEM_USES_SVM_POINTER_ARM"/>
<enum value="0x40B8" name="CL_KERNEL_EXEC_INFO_SVM_PTRS_ARM"/>
<enum value="0x40B9" name="CL_KERNEL_EXEC_INFO_SVM_FINE_GRAIN_SYSTEM_ARM"/>
<enum value="0x40BA" name="CL_COMMAND_SVM_FREE_ARM"/>
<enum value="0x40BB" name="CL_COMMAND_SVM_MEMCPY_ARM"/>
<enum value="0x40BC" name="CL_COMMAND_SVM_MEMFILL_ARM"/>
<enum value="0x40BD" name="CL_COMMAND_SVM_MAP_ARM"/>
<enum value="0x40BE" name="CL_COMMAND_SVM_UNMAP_ARM"/>
<enum value="0x40BF" name="CL_DEVICE_COMPUTE_UNITS_BITFIELD_ARM"/>
</enums>
<enums start="0x40C0" end="0x40CF" name="enums.40C0" vendor="Qualcomm" comment="Per Bug 10726">
<unused start="0x40C0" end="0x40C5"/>
<enum value="0x40C6" name="CL_MEM_ANDROID_NATIVE_BUFFER_HOST_PTR_QCOM"/>
<unused start="0x40C7" end="0x40CF"/>
</enums>
<enums start="0x40D0" end="0x40DF" name="enums.40D0" vendor="IMG" comment="Per Bug 11287">
<enum value="0x40D0" name="CL_NV21"/>
<enum value="0x40D0" name="CL_NV21_IMG"/>
<enum value="0x40D1" name="CL_YV12"/>
<enum value="0x40D1" name="CL_YV12_IMG"/>
<enum value="0x40D2" name="CL_COMMAND_ACQUIRE_GRALLOC_OBJECTS_IMG"/>
<enum value="0x40D3" name="CL_COMMAND_RELEASE_GRALLOC_OBJECTS_IMG"/>
<enum value="0x40D4" name="CL_GRALLOC_RESOURCE_NOT_ACQUIRED_IMG"/>
<!-- unused <enum value="0x40D5" name="CL_INVALID_GRALLOC_OBJECT_IMG"/> -->
<unused start="0x40D6" end="0x40DF"/>
</enums>
<enums start="0x40E0" end="0x40EF" name="enums.40E0" vendor="Khronos SPIR WG" comment="Per Bugs 11309,11310">
<enum value="0x40E0" name="CL_DEVICE_SPIR_VERSIONS"/>
<enum value="0x40E1" name="CL_PROGRAM_BINARY_TYPE_INTERMEDIATE"/>
<unused start="0x40E2" end="0x40EF"/>
</enums>
<enums start="0x40F0" end="0x40FF" name="enums.40F0" vendor="Altera" comment="Per Bug 11642">
<!-- unused <enum value="0x40F0" name="CL_CONTEXT_COMPILER_MODE_ALTERA"/> -->
<!-- unused <enum value="0x40F1" name="CL_CONTEXT_PROGRAM_EXE_LIBRARY_ROOT_ALTERA"/> -->
<!-- unused <enum value="0x40F2" name="CL_CONTEXT_OFFLINE_DEVICE_ALTERA"/> -->
<!-- unused <enum value="0x40F3" name="CL_DEVICE_CORE_TEMPERATURE_ALTERA"/> -->
<unused start="0x40F4" end="0x40FF"/>
</enums>
<enums start="0x4100" end="0x410F" name="enums.4100" vendor="Intel" comment="Per bug 12258.">
<unused start="0x4100" end="0x4103"/>
<enum value="0x4104" name="CL_DEVICE_SIMULTANEOUS_INTEROPS_INTEL"/>
<enum value="0x4105" name="CL_DEVICE_NUM_SIMULTANEOUS_INTEROPS_INTEL"/>
<enum value="0x4106" name="CL_CONTEXT_SHOW_DIAGNOSTICS_INTEL"/>
<enum value="0x4107" name="CL_EGL_YUV_PLANE_INTEL"/>
<enum value="0x4108" name="CL_DEVICE_SUB_GROUP_SIZES_INTEL"/>
<enum value="0x4109" name="CL_KERNEL_SPILL_MEM_SIZE_INTEL"/>
<enum value="0x410A" name="CL_KERNEL_COMPILE_SUB_GROUP_SIZE_INTEL"/>
<enum value="0x410B" name="CL_DEVICE_AVC_ME_VERSION_INTEL"/>
<enum value="0x410C" name="CL_DEVICE_AVC_ME_SUPPORTS_TEXTURE_SAMPLER_USE_INTEL"/>
<enum value="0x410D" name="CL_DEVICE_AVC_ME_SUPPORTS_PREEMPTION_INTEL"/>
<enum value="0x410E" name="CL_NV12_INTEL"/>
<unused start="0x410F"/>
</enums>
<enums start="0x4110" end="0x411F" name="enums.4110" vendor="Qualcomm" comment="Per Bug 13929">
<unused start="0x4110" end="0x411F"/>
</enums>
<enums start="0x4120" end="0x412F" name="enums.4120" vendor="AMD" comment="Per Bug 14890">
<unused start="0x4120" end="0x412F"/>
</enums>
<enums start="0x4130" end="0x415F" name="enums.4130" vendor="Qualcomm" comment="Per Bugs 15602,15760">
<unused start="0x4130" end="0x415F"/>
</enums>
<enums start="0x4160" end="0x416F" name="enums.4160" vendor="Intel" comment="Per bug 16049.">
<unused start="0x4160" end="0x416F"/>
</enums>
<enums start="0x4170" end="0x417F" name="enums.4170" vendor="Intel" comment="Per bug 16067.">
<unused start="0x4170" end="0x417F"/>
<enum value="0x417E" name="CL_DEVICE_PLANAR_YUV_MAX_WIDTH_INTEL"/>
<enum value="0x417F" name="CL_DEVICE_PLANAR_YUV_MAX_HEIGHT_INTEL"/>
</enums>
<enums start="0x4180" end="0x418F" name="enums.4180" vendor="Intel" comment="Per OpenCL-Registry #22">
<unused start="0x4180" end="0x418F"/>
</enums>
<enums start="0x4190" end="0x419F" name="enums.4190" vendor="Intel">
<unused start="0x4190" end="0x419F"/>
</enums>
<enums start="0x41A0" end="0x41DF" name="enums.41A0" vendor="Qualcomm">
<unused start="0x41A0" end="0x41DF"/>
</enums>
<enums start="0x41E0" end="0x41FF" name="enums.41E0" vendor="Arm">
<enum value="0x41E0" name="CL_DEVICE_JOB_SLOTS_ARM"/>
<enum value="0x41E1" name="CL_QUEUE_JOB_SLOT_ARM"/>
<unused start="0x41E2" end="0x41FF"/>
</enums>
<enums start="0x4200" end="0x420F" name="enums.4200" vendor="Intel">
<unused start="0x4200" end="0x420F"/>
</enums>
<enums start="0x420F" end="0x4FFF" name="enums.420F" comment="Reserved for vendor extensions. Allocate in groups of 16.">
<unused start="0x420F" end="0x4FFF"/>
</enums>
<enums start="0x10000" end="0x10FFF" name="enums.10000" vendor="Khronos" comment="Experimental range for internal development only. Do not allocate.">
<!-- Khronos will never assign values in this range, and vendors
should never ship using values in this range. It is intended
purely for internal development. -->
<unused start="0x10000" end="0x10FFF" comment="Reserved"/>
</enums>
<enums start="0x10000000" end="0x100000FF" name="enums.10000000" vendor="Apple" comment="Legacy assignment before current enum allocation policy">
<unused start="0x10000000" end="0x100000FF"/>
</enums>
<!-- SECTION: CL command definitions. (TBD) -->
<commands>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type>* <name>clGetDeviceIDsFromD3D10KHR</name></proto>
<param><type>cl_platform_id</type> <name>platform</name></param>
<param><type>cl_d3d10_device_source_khr</type> <name>d3d_device_source</name></param>
<param>void* <name>d3d_object</name></param>
<param><type>cl_d3d10_device_set_khr</type> <name>d3d_device_set</name></param>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_device_id</type>* <name>devices</name></param>
<param><type>cl_uint</type>* <name>num_devices</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_mem</type>* <name>clCreateFromD3D10BufferKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>ID3D10Buffer</type>* <name>resource</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_mem</type>* <name>clCreateFromD3D10Texture2DKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>ID3D10Texture2D</type>* <name>resource</name></param>
<param><type>UINT</type> <name>subresource</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_mem</type>* <name>clCreateFromD3D10Texture3DKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>ID3D10Texture3D</type>* <name>resource</name></param>
<param><type>UINT</type> <name>subresource</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type>* <name>clEnqueueAcquireD3D10ObjectsKHR</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type>* <name>clEnqueueReleaseD3D10ObjectsKHR</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type>* <name>clGetDeviceIDsFromD3D11KHR</name></proto>
<param><type>cl_platform_id</type> <name>platform</name></param>
<param><type>cl_d3d11_device_source_khr</type> <name>d3d_device_source</name></param>
<param>void* <name>d3d_object</name></param>
<param><type>cl_d3d11_device_set_khr</type> <name>d3d_device_set</name></param>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_device_id</type>* <name>devices</name></param>
<param><type>cl_uint</type>* <name>num_devices</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_mem</type>* <name>clCreateFromD3D11BufferKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>ID3D11Buffer</type>* <name>resource</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_mem</type>* <name>clCreateFromD3D11Texture2DKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>ID3D11Texture2D</type>* <name>resource</name></param>
<param><type>UINT</type> <name>subresource</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_mem</type>* <name>clCreateFromD3D11Texture3DKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>ID3D11Texture3D</type>* <name>resource</name></param>
<param><type>UINT</type> <name>subresource</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type>* <name>clEnqueueAcquireD3D11ObjectsKHR</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type>* <name>clEnqueueReleaseD3D11ObjectsKHR</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type>* <name>clGetDeviceIDsFromDX9MediaAdapterKHR</name></proto>
<param><type>cl_platform_id</type> <name>platform</name></param>
<param><type>cl_uint</type> <name>num_media_adapters</name></param>
<param><type>cl_dx9_media_adapter_type_khr</type>* <name>media_adapter_type</name></param>
<param>void* <name>media_adapters</name></param>
<param><type>cl_dx9_media_adapter_set_khr</type> <name>media_adapter_set</name></param>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_device_id</type>* <name>devices</name></param>
<param><type>cl_uint</type>* <name>num_devices</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_mem</type>* <name>clCreateFromDX9MediaSurfaceKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>cl_dx9_media_adapter_type_khr</type> <name>adapter_type</name></param>
<param>void* <name>surface_info</name></param>
<param><type>cl_uint</type> <name>plane</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type>* <name>clEnqueueAcquireDX9MediaSurfacesKHR</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type>* <name>clEnqueueReleaseDX9MediaSurfacesKHR</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clGetDeviceIDsFromDX9INTEL</name></proto>
<param><type>cl_platform_id</type> <name>platform</name></param>
<param><type>cl_dx9_device_source_intel</type> <name>dx9_device_source</name></param>
<param>void* <name>dx9_object</name></param>
<param><type>cl_dx9_device_set_intel</type> <name>dx9_device_set</name></param>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_device_id</type>* <name>devices</name></param>
<param><type>cl_uint</type>* <name>num_devices</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_1">
<proto><type>cl_mem</type>* <name>clCreateFromDX9MediaSurfaceINTEL</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>IDirect3DSurface9</type>* <name>resource</name></param>
<param><type>HANDLE</type> <name>sharedHandle</name></param>
<param><type>UINT</type> <name>plane</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type>* <name>clEnqueueAcquireDX9ObjectsINTEL</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type>* <name>clEnqueueReleaseDX9ObjectsINTEL</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param><type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_event</type> <name>clCreateEventFromEGLSyncKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>CLeglSyncKHR</type> <name>sync</name></param>
<param><type>CLeglDisplayKHR</type> <name>display</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_mem</type> <name>clCreateFromEGLImageKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>CLeglDisplayKHR</type> <name>egldisplay</name></param>
<param><type>CLeglImageKHR</type> <name>eglimage</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param>const <type>cl_egl_image_properties_khr</type>* <name>properties</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueAcquireEGLObjectsKHR</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueReleaseEGLObjectsKHR</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_0">
<proto>void <name>clLogMessagesToSystemLogAPPLE</name></proto>
<param>const char* <name>errstr</name></param>
<param>const void* <name>private_info</name></param>
<param><type>size_t</type> <name>cb</name></param>
<param>void* <name>user_data</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_0">
<proto>void <name>clLogMessagesToStdoutAPPLE</name></proto>
<param>const char* <name>errstr</name></param>
<param>const void* <name>private_info</name></param>
<param><type>size_t</type> <name>cb</name></param>
<param>void* <name>user_data</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_0">
<proto>void <name>clLogMessagesToStderrAPPLE</name></proto>
<param>const char* <name>errstr</name></param>
<param>const void* <name>private_info</name></param>
<param><type>size_t</type> <name>cb</name></param>
<param>void* <name>user_data</name></param>
</command>
<command>
<proto><type>cl_int</type> <name>clIcdGetPlatformIDsKHR</name></proto>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_platform_id</type>* <name>platforms</name></param>
<param><type>cl_uint</type>* <name>num_platforms</name></param>
</command>
<command>
<proto><type>cl_program</type> <name>clCreateProgramWithILKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param>const void* <name>il</name></param>
<param><type>size_t</type> <name>length</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clTerminateContextKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_command_queue</type> <name>clCreateCommandQueueWithPropertiesKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_device_id</type> <name>device</name></param>
<param>const <type>cl_queue_properties_khr</type> <name>*properties</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clReleaseDeviceEXT</name></proto>
<param><type>cl_device_id</type> <name>device</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clRetainDeviceEXT</name></proto>
<param><type>cl_device_id</type> <name>device</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clCreateSubDevicesEXT</name></proto>
<param><type>cl_device_id</type> <name>in_device</name></param>
<param>const <type>cl_device_partition_property_ext</type>* <name>properties</name></param>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_device_id</type>* <name>out_devices</name></param>
<param><type>cl_uint</type>* <name>num_devices</name></param>
</command>
<command>
<proto><type>cl_int</type> <name>clEnqueueMigrateMemObjectEXT</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_mem_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_mem_migration_flags_ext</type> <name>flags</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command>
<proto><type>cl_int</type> <name>clGetDeviceImageInfoQCOM</name></proto>
<param><type>cl_device_id</type> <name>device</name></param>
<param><type>size_t</type> <name>image_width</name></param>
<param><type>size_t</type> <name>image_height</name></param>
<param>const <type>cl_image_format</type> <name>*image_format</name></param>
<param><type>cl_image_pitch_info_qcom</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueAcquireGrallocObjectsIMG</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueReleaseGrallocObjectsIMG</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_2_0_DEPRECATED">
<proto><type>cl_int</type> <name>clGetKernelSubGroupInfoKHR</name></proto>
<param><type>cl_kernel</type> <name>in_kernel</name></param>
<param><type>cl_device_id</type> <name>in_device</name></param>
<param><type>cl_kernel_sub_group_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>input_value_size</name></param>
<param>const void* <name>input_value</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_0">
<proto><type>cl_mem</type> <name>clImportMemoryARM</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param>const <type>cl_import_properties_arm</type> <name>*properties</name></param>
<param>void* <name>memory</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto>void* <name>clSVMAllocARM</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_svm_mem_flags_arm</type> <name>flags</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>alignment</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto>void <name>clSVMFreeARM</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param>void* <name>svm_pointer</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueSVMFreeARM</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_svm_pointers</name></param>
<param>void* <name>svm_pointers</name>[]</param>
<param>void (CL_CALLBACK* <name>pfn_free_func</name>)(cl_command_queue, cl_uint, void *[], void *)</param>
<param>void* <name>user_data</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueSVMMemcpyARM</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_bool</type> <name>blocking_copy</name></param>
<param>void* <name>dst_ptr</name></param>
<param>const void* <name>src_ptr</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueSVMMemFillARM</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param>void* <name>svm_ptr</name></param>
<param>const void* <name>pattern</name></param>
<param><type>size_t</type> <name>pattern_size</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueSVMMapARM</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_bool</type> <name>blocking_map</name></param>
<param><type>cl_map_flags</type> <name>flags</name></param>
<param>void* <name>svm_ptr</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueSVMUnmapARM</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param>void* <name>svm_ptr</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clSetKernelArgSVMPointerARM</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_uint</type> <name>arg_index</name></param>
<param>const void* <name>arg_value</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clSetKernelExecInfoARM</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_kernel_exec_info_arm</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>const void* <name>param_value</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_accelerator_intel</type> <name>clCreateAcceleratorINTEL</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_accelerator_type_intel</type> <name>accelerator_type</name></param>
<param><type>size_t</type> <name>descriptor_size</name></param>
<param>const void* <name>descriptor</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clGetAcceleratorInfoINTEL</name></proto>
<param><type>cl_accelerator_intel</type> <name>accelerator</name></param>
<param><type>cl_accelerator_info_intel</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clRetainAcceleratorINTEL</name></proto>
<param><type>cl_accelerator_intel</type> <name>accelerator</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clReleaseAcceleratorINTEL</name></proto>
<param><type>cl_accelerator_intel</type> <name>accelerator</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_1">
<proto><type>cl_event</type> <name>clCreateEventFromGLsyncKHR</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_GLsync</type> <name>cl_GLsync</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetGLContextInfoKHR</name></proto>
<param>const <type>cl_context_properties</type>* <name>properties</name></param>
<param><type>cl_gl_context_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_mem</type> <name>clCreateFromGLBuffer</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>cl_GLuint</type> <name>bufobj</name></param>
<param><type>int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_mem</type> <name>clCreateFromGLTexture</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>cl_GLenum</type> <name>target</name></param>
<param><type>cl_GLint</type> <name>miplevel</name></param>
<param><type>cl_GLuint</type> <name>texture</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_mem</type> <name>clCreateFromGLRenderbuffer</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>cl_GLuint</type> <name>renderbuffer</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetGLObjectInfo</name></proto>
<param><type>cl_mem</type> <name>memobj</name></param>
<param><type>cl_gl_object_type</type>* <name>gl_object_type</name></param>
<param><type>cl_GLuint</type>* <name>gl_object_name</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetGLTextureInfo</name></proto>
<param><type>cl_mem</type> <name>memobj</name></param>
<param><type>cl_gl_texture_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueAcquireGLObjects</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueReleaseGLObjects</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED">
<proto><type>cl_mem</type> <name>clCreateFromGLTexture2D</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>cl_GLenum</type> <name>target</name></param>
<param><type>cl_GLint</type> <name>miplevel</name></param>
<param><type>cl_GLuint</type> <name>texture</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED">
<proto><type>cl_mem</type> <name>clCreateFromGLTexture3D</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>cl_GLenum</type> <name>target</name></param>
<param><type>cl_GLint</type> <name>miplevel</name></param>
<param><type>cl_GLuint</type> <name>texture</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clGetDeviceIDsFromVA_APIMediaAdapterINTEL</name></proto>
<param><type>cl_platform_id</type> <name>platform</name></param>
<param><type>cl_va_api_device_source_intel</type> <name>media_adapter_type</name></param>
<param>void* <name>media_adapter</name></param>
<param><type>cl_va_api_device_set_intel</type> <name>media_adapter_set</name></param>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_device_id</type>* <name>devices</name></param>
<param><type>cl_uint</type>* <name>num_devices</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_mem</type> <name>clCreateFromVA_APIMediaSurfaceINTEL</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>VASurfaceID</type>* <name>surface</name></param>
<param><type>cl_uint</type> <name>plane</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueAcquireVA_APIMediaSurfacesINTEL</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueReleaseVA_APIMediaSurfacesINTEL</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetPlatformIDs</name></proto>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_platform_id</type>* <name>platforms</name></param>
<param><type>cl_uint</type>* <name>num_platforms</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetPlatformInfo</name></proto>
<param><type>cl_platform_id</type> <name>platform</name></param>
<param><type>cl_platform_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetDeviceIDs</name></proto>
<param><type>cl_platform_id</type> <name>platform</name></param>
<param><type>cl_device_type</type> <name>device_type</name></param>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_device_id</type>* <name>devices</name></param>
<param><type>cl_uint</type>* <name>num_devices</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetDeviceInfo</name></proto>
<param><type>cl_device_id</type> <name>device</name></param>
<param><type>cl_device_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clCreateSubDevices</name></proto>
<param><type>cl_device_id</type> <name>in_device</name></param>
<param>const <type>cl_device_partition_property</type>* <name>properties</name></param>
<param><type>cl_uint</type> <name>num_devices</name></param>
<param><type>cl_device_id</type>* <name>out_devices</name></param>
<param><type>cl_uint</type>* <name>num_devices_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clRetainDevice</name></proto>
<param><type>cl_device_id</type> <name>device</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clReleaseDevice</name></proto>
<param><type>cl_device_id</type> <name>device</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_1">
<proto><type>cl_int</type> <name>clSetDefaultDeviceCommandQueue</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_device_id</type> <name>device</name></param>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_1">
<proto><type>cl_int</type> <name>clGetDeviceAndHostTimer</name></proto>
<param><type>cl_device_id</type> <name>device</name></param>
<param><type>cl_ulong</type>* <name>device_timestamp</name></param>
<param><type>cl_ulong</type>* <name>host_timestamp</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_1">
<proto><type>cl_int</type> <name>clGetHostTimer</name></proto>
<param><type>cl_device_id</type> <name>device</name></param>
<param><type>cl_ulong</type>* <name>host_timestamp</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_context</type> <name>clCreateContext</name></proto>
<param>const <type>cl_context_properties</type>* <name>properties</name></param>
<param><type>cl_uint</type> <name>num_devices</name></param>
<param>const <type>cl_device_id</type>* <name>devices</name></param>
<param>void (CL_CALLBACK* <name>pfn_notify</name>)(const char*, const void*, size_t, void*)</param>
<param>void* <name>user_data</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_context</type> <name>clCreateContextFromType</name></proto>
<param>const <type>cl_context_properties</type>* <name>properties</name></param>
<param><type>cl_device_type</type> <name>device_type</name></param>
<param>void (CL_CALLBACK* <name>pfn_notify</name>)(const char*, const void*, size_t, void*)</param>
<param>void* <name>user_data</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clRetainContext</name></proto>
<param><type>cl_context</type> <name>context</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clReleaseContext</name></proto>
<param><type>cl_context</type> <name>context</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetContextInfo</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_context_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_command_queue</type> <name>clCreateCommandQueueWithProperties</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_device_id</type> <name>device</name></param>
<param>const <type>cl_queue_properties</type>* <name>properties</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clRetainCommandQueue</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clReleaseCommandQueue</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetCommandQueueInfo</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_command_queue_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_mem</type> <name>clCreateBuffer</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>size_t</type> <name>size</name></param>
<param>void* <name>host_ptr</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_1">
<proto><type>cl_mem</type> <name>clCreateSubBuffer</name></proto>
<param><type>cl_mem</type> <name>buffer</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>cl_buffer_create_type</type> <name>buffer_create_type</name></param>
<param>const void* <name>buffer_create_info</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_mem</type> <name>clCreateImage</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param>const <type>cl_image_format</type>* <name>image_format</name></param>
<param>const <type>cl_image_desc</type>* <name>image_desc</name></param>
<param>void* <name>host_ptr</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_mem</type> <name>clCreatePipe</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>cl_uint</type> <name>pipe_packet_size</name></param>
<param><type>cl_uint</type> <name>pipe_max_packets</name></param>
<param>const <type>cl_pipe_properties</type>* <name>properties</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clRetainMemObject</name></proto>
<param><type>cl_mem</type> <name>memobj</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clReleaseMemObject</name></proto>
<param><type>cl_mem</type> <name>memobj</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetSupportedImageFormats</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param><type>cl_mem_object_type</type> <name>image_type</name></param>
<param><type>cl_uint</type> <name>num_entries</name></param>
<param><type>cl_image_format</type>* <name>image_formats</name></param>
<param><type>cl_uint</type>* <name>num_image_formats</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetMemObjectInfo</name></proto>
<param><type>cl_mem</type> <name>memobj</name></param>
<param><type>cl_mem_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetImageInfo</name></proto>
<param><type>cl_mem</type> <name>image</name></param>
<param><type>cl_image_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_int</type> <name>clGetPipeInfo</name></proto>
<param><type>cl_mem</type> <name>pipe</name></param>
<param><type>cl_pipe_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clSetMemObjectDestructorCallback</name></proto>
<param><type>cl_mem</type> <name>memobj</name></param>
<param>void (CL_CALLBACK* <name>pfn_notify</name>)(cl_mem memobj, void* user_data)</param>
<param>void* <name>user_data</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clSetMemObjectDestructorAPPLE</name></proto>
<param><type>cl_mem</type> <name>memobj</name></param>
<param>void (CL_CALLBACK* <name>pfn_notify</name>)(cl_mem memobj, void* user_data)</param>
<param>void* <name>user_data</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto>void* <name>clSVMAlloc</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_svm_mem_flags</type> <name>flags</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>alignment</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto>void <name>clSVMFree</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param>void* <name>svm_pointer</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_sampler</type> <name>clCreateSamplerWithProperties</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param>const <type>cl_sampler_properties</type>* <name>sampler_properties</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clRetainSampler</name></proto>
<param><type>cl_sampler</type> <name>sampler</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clReleaseSampler</name></proto>
<param><type>cl_sampler</type> <name>sampler</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetSamplerInfo</name></proto>
<param><type>cl_sampler</type> <name>sampler</name></param>
<param><type>cl_sampler_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_program</type> <name>clCreateProgramWithSource</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_uint</type> <name>count</name></param>
<param>const <type>char</type>** <name>strings</name></param>
<param>const <type>size_t</type>* <name>lengths</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_program</type> <name>clCreateProgramWithBinary</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_uint</type> <name>num_devices</name></param>
<param>const <type>cl_device_id</type>* <name>device_list</name></param>
<param>const <type>size_t</type>* <name>lengths</name></param>
<param>const <type>unsigned char</type>** <name>binaries</name></param>
<param><type>cl_int</type>* <name>binary_status</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_program</type> <name>clCreateProgramWithBuiltInKernels</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_uint</type> <name>num_devices</name></param>
<param>const <type>cl_device_id</type>* <name>device_list</name></param>
<param>const <type>char</type>* <name>kernel_names</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_1">
<proto><type>cl_program</type> <name>clCreateProgramWithIL</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param>const void* <name>il</name></param>
<param><type>size_t</type> <name>length</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clRetainProgram</name></proto>
<param><type>cl_program</type> <name>program</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clReleaseProgram</name></proto>
<param><type>cl_program</type> <name>program</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clBuildProgram</name></proto>
<param><type>cl_program</type> <name>program</name></param>
<param><type>cl_uint</type> <name>num_devices</name></param>
<param>const <type>cl_device_id</type>* <name>device_list</name></param>
<param>const <type>char</type>* <name>options</name></param>
<param>void (CL_CALLBACK* <name>pfn_notify</name>)(cl_program program, void* user_data)</param>
<param>void* <name>user_data</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clCompileProgram</name></proto>
<param><type>cl_program</type> <name>program</name></param>
<param><type>cl_uint</type> <name>num_devices</name></param>
<param>const <type>cl_device_id</type>* <name>device_list</name></param>
<param>const <type>char</type>* <name>options</name></param>
<param><type>cl_uint</type> <name>num_input_headers</name></param>
<param>const <type>cl_program</type>* <name>input_headers</name></param>
<param>const <type>char</type>** <name>header_include_names</name></param>
<param>void (CL_CALLBACK* <name>pfn_notify</name>)(cl_program program, void* user_data)</param>
<param>void* <name>user_data</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_program</type> <name>clLinkProgram</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_uint</type> <name>num_devices</name></param>
<param>const <type>cl_device_id</type>* <name>device_list</name></param>
<param>const <type>char</type>* <name>options</name></param>
<param><type>cl_uint</type> <name>num_input_programs</name></param>
<param>const <type>cl_program</type>* <name>input_programs</name></param>
<param>void (CL_CALLBACK* <name>pfn_notify</name>)(cl_program program, void* user_data)</param>
<param>void* <name>user_data</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_2">
<proto><type>cl_int</type> <name>clSetProgramReleaseCallback</name></proto>
<param><type>cl_program</type> <name>program</name></param>
<param>void (CL_CALLBACK* <name>pfn_notify</name>)(cl_program program, void* user_data)</param>
<param>void* <name>user_data</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_2">
<proto><type>cl_int</type> <name>clSetProgramSpecializationConstant</name></proto>
<param><type>cl_program</type> <name>program</name></param>
<param><type>cl_uint</type> <name>spec_id</name></param>
<param><type>size_t</type> <name>spec_size</name></param>
<param>const void* <name>spec_value</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clUnloadPlatformCompiler</name></proto>
<param><type>cl_platform_id</type> <name>platform</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetProgramInfo</name></proto>
<param><type>cl_program</type> <name>program</name></param>
<param><type>cl_program_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetProgramBuildInfo</name></proto>
<param><type>cl_program</type> <name>program</name></param>
<param><type>cl_device_id</type> <name>device</name></param>
<param><type>cl_program_build_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_kernel</type> <name>clCreateKernel</name></proto>
<param><type>cl_program</type> <name>program</name></param>
<param>const <type>char</type>* <name>kernel_name</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clCreateKernelsInProgram</name></proto>
<param><type>cl_program</type> <name>program</name></param>
<param><type>cl_uint</type> <name>num_kernels</name></param>
<param><type>cl_kernel</type>* <name>kernels</name></param>
<param><type>cl_uint</type>* <name>num_kernels_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_1">
<proto><type>cl_kernel</type> <name>clCloneKernel</name></proto>
<param><type>cl_kernel</type> <name>source_kernel</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clRetainKernel</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clReleaseKernel</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clSetKernelArg</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_uint</type> <name>arg_index</name></param>
<param><type>size_t</type> <name>arg_size</name></param>
<param>const void* <name>arg_value</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_int</type> <name>clSetKernelArgSVMPointer</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_uint</type> <name>arg_index</name></param>
<param>const void* <name>arg_value</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_int</type> <name>clSetKernelExecInfo</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_kernel_exec_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>const void* <name>param_value</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetKernelInfo</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_kernel_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clGetKernelArgInfo</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_uint</type> <name>arg_indx</name></param>
<param><type>cl_kernel_arg_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetKernelWorkGroupInfo</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_device_id</type> <name>device</name></param>
<param><type>cl_kernel_work_group_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_1">
<proto><type>cl_int</type> <name>clGetKernelSubGroupInfo</name></proto>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_device_id</type> <name>device</name></param>
<param><type>cl_kernel_sub_group_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>input_value_size</name></param>
<param>const void* <name>input_value</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clWaitForEvents</name></proto>
<param><type>cl_uint</type> <name>num_events</name></param>
<param>const <type>cl_event</type>* <name>event_list</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetEventInfo</name></proto>
<param><type>cl_event</type> <name>event</name></param>
<param><type>cl_event_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_1">
<proto><type>cl_event</type> <name>clCreateUserEvent</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clRetainEvent</name></proto>
<param><type>cl_event</type> <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clReleaseEvent</name></proto>
<param><type>cl_event</type> <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clSetUserEventStatus</name></proto>
<param><type>cl_event</type> <name>event</name></param>
<param><type>cl_int</type> <name>execution_status</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clSetEventCallback</name></proto>
<param><type>cl_event</type> <name>event</name></param>
<param><type>cl_int</type> <name>command_exec_callback_type</name></param>
<param>void (CL_CALLBACK* <name>pfn_notify</name>)(cl_event event, cl_int type, void *user_data)</param>
<param>void* <name>user_data</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clGetEventProfilingInfo</name></proto>
<param><type>cl_event</type> <name>event</name></param>
<param><type>cl_profiling_info</type> <name>param_name</name></param>
<param><type>size_t</type> <name>param_value_size</name></param>
<param>void* <name>param_value</name></param>
<param><type>size_t</type>* <name>param_value_size_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clFlush</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clFinish</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueReadBuffer</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>buffer</name></param>
<param><type>cl_bool</type> <name>blocking_read</name></param>
<param><type>size_t</type> <name>offset</name></param>
<param><type>size_t</type> <name>size</name></param>
<param>void* <name>ptr</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clEnqueueReadBufferRect</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>buffer</name></param>
<param><type>cl_bool</type> <name>blocking_read</name></param>
<param>const <type>size_t</type>* <name>buffer_offset</name></param>
<param>const <type>size_t</type>* <name>host_offset</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>size_t</type> <name>buffer_row_pitch</name></param>
<param><type>size_t</type> <name>buffer_slice_pitch</name></param>
<param><type>size_t</type> <name>host_row_pitch</name></param>
<param><type>size_t</type> <name>host_slice_pitch</name></param>
<param>void* <name>ptr</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueWriteBuffer</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>buffer</name></param>
<param><type>cl_bool</type> <name>blocking_write</name></param>
<param><type>size_t</type> <name>offset</name></param>
<param><type>size_t</type> <name>size</name></param>
<param>const void* <name>ptr</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clEnqueueWriteBufferRect</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>buffer</name></param>
<param><type>cl_bool</type> <name>blocking_write</name></param>
<param>const <type>size_t</type>* <name>buffer_offset</name></param>
<param>const <type>size_t</type>* <name>host_offset</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>size_t</type> <name>buffer_row_pitch</name></param>
<param><type>size_t</type> <name>buffer_slice_pitch</name></param>
<param><type>size_t</type> <name>host_row_pitch</name></param>
<param><type>size_t</type> <name>host_slice_pitch</name></param>
<param>const void* <name>ptr</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueFillBuffer</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>buffer</name></param>
<param>const void* <name>pattern</name></param>
<param><type>size_t</type> <name>pattern_size</name></param>
<param><type>size_t</type> <name>offset</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueCopyBuffer</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>src_buffer</name></param>
<param><type>cl_mem</type> <name>dst_buffer</name></param>
<param><type>size_t</type> <name>src_offset</name></param>
<param><type>size_t</type> <name>dst_offset</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_1">
<proto><type>cl_int</type> <name>clEnqueueCopyBufferRect</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>src_buffer</name></param>
<param><type>cl_mem</type> <name>dst_buffer</name></param>
<param>const <type>size_t</type>* <name>src_origin</name></param>
<param>const <type>size_t</type>* <name>dst_origin</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>size_t</type> <name>src_row_pitch</name></param>
<param><type>size_t</type> <name>src_slice_pitch</name></param>
<param><type>size_t</type> <name>dst_row_pitch</name></param>
<param><type>size_t</type> <name>dst_slice_pitch</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueReadImage</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>image</name></param>
<param><type>cl_bool</type> <name>blocking_read</name></param>
<param>const <type>size_t</type>* <name>origin</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>size_t</type> <name>row_pitch</name></param>
<param><type>size_t</type> <name>slice_pitch</name></param>
<param>void* <name>ptr</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueWriteImage</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>image</name></param>
<param><type>cl_bool</type> <name>blocking_write</name></param>
<param>const <type>size_t</type>* <name>origin</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>size_t</type> <name>input_row_pitch</name></param>
<param><type>size_t</type> <name>input_slice_pitch</name></param>
<param>const void* <name>ptr</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueFillImage</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>image</name></param>
<param>const void* <name>fill_color</name></param>
<param>const <type>size_t</type>* <name>origin</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueCopyImage</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>src_image</name></param>
<param><type>cl_mem</type> <name>dst_image</name></param>
<param>const <type>size_t</type>* <name>src_origin</name></param>
<param>const <type>size_t</type>* <name>dst_origin</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueCopyImageToBuffer</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>src_image</name></param>
<param><type>cl_mem</type> <name>dst_buffer</name></param>
<param>const <type>size_t</type>* <name>src_origin</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>size_t</type> <name>dst_offset</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueCopyBufferToImage</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>src_buffer</name></param>
<param><type>cl_mem</type> <name>dst_image</name></param>
<param><type>size_t</type> <name>src_offset</name></param>
<param>const <type>size_t</type>* <name>dst_origin</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto>void* <name>clEnqueueMapBuffer</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>buffer</name></param>
<param><type>cl_bool</type> <name>blocking_map</name></param>
<param><type>cl_map_flags</type> <name>map_flags</name></param>
<param><type>size_t</type> <name>offset</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto>void* <name>clEnqueueMapImage</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>image</name></param>
<param><type>cl_bool</type> <name>blocking_map</name></param>
<param><type>cl_map_flags</type> <name>map_flags</name></param>
<param>const <type>size_t</type>* <name>origin</name></param>
<param>const <type>size_t</type>* <name>region</name></param>
<param><type>size_t</type>* <name>image_row_pitch</name></param>
<param><type>size_t</type>* <name>image_slice_pitch</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueUnmapMemObject</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_mem</type> <name>memobj</name></param>
<param>void* <name>mapped_ptr</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueMigrateMemObjects</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_mem_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_objects</name></param>
<param><type>cl_mem_migration_flags</type> <name>flags</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueNDRangeKernel</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_uint</type> <name>work_dim</name></param>
<param>const <type>size_t</type>* <name>global_work_offset</name></param>
<param>const <type>size_t</type>* <name>global_work_size</name></param>
<param>const <type>size_t</type>* <name>local_work_size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_0">
<proto><type>cl_int</type> <name>clEnqueueNativeKernel</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param>void (CL_CALLBACK* <name>user_func</name>)(void*)</param>
<param>void* <name>args</name></param>
<param><type>size_t</type> <name>cb_args</name></param>
<param><type>cl_uint</type> <name>num_mem_objects</name></param>
<param>const <type>cl_mem</type>* <name>mem_list</name></param>
<param>const void** <name>args_mem_loc</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueMarkerWithWaitList</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto><type>cl_int</type> <name>clEnqueueBarrierWithWaitList</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_int</type> <name>clEnqueueSVMFree</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_svm_pointers</name></param>
<param>void* <name>svm_pointers</name>[]</param>
<param>void (CL_CALLBACK* <name>pfn_free_func</name>)(cl_command_queue queue, cl_uint num_svm_pointers, void* svm_pointers[], void* user_data)</param>
<param>void* <name>user_data</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_int</type> <name>clEnqueueSVMMemcpy</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_bool</type> <name>blocking_copy</name></param>
<param>void* <name>dst_ptr</name></param>
<param>const void* <name>src_ptr</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_int</type> <name>clEnqueueSVMMemFill</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param>void* <name>svm_ptr</name></param>
<param>const void* <name>pattern</name></param>
<param><type>size_t</type> <name>pattern_size</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_int</type> <name>clEnqueueSVMMap</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_bool</type> <name>blocking_map</name></param>
<param><type>cl_map_flags</type> <name>flags</name></param>
<param>void* <name>svm_ptr</name></param>
<param><type>size_t</type> <name>size</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_0">
<proto><type>cl_int</type> <name>clEnqueueSVMUnmap</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param>void* <name>svm_ptr</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_2_1">
<proto><type>cl_int</type> <name>clEnqueueSVMMigrateMem</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_svm_pointers</name></param>
<param>const void** <name>svm_pointers</name></param>
<param>const <type>size_t</type>* <name>sizes</name></param>
<param><type>cl_mem_migration_flags</type> <name>flags</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command suffix="CL_API_SUFFIX__VERSION_1_2">
<proto>void* <name>clGetExtensionFunctionAddressForPlatform</name></proto>
<param><type>cl_platform_id</type> <name>platform</name></param>
<param>const <type>char</type>* <name>func_name</name></param>
</command>
<command suffix="CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED">
<proto><type>cl_int</type> <name>clSetCommandQueueProperty</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_command_queue_properties</type> <name>properties</name></param>
<param><type>cl_bool</type> <name>enable</name></param>
<param><type>cl_command_queue_properties</type>* <name>old_properties</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED">
<proto><type>cl_mem</type> <name>clCreateImage2D</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param>const <type>cl_image_format</type>* <name>image_format</name></param>
<param><type>size_t</type> <name>image_width</name></param>
<param><type>size_t</type> <name>image_height</name></param>
<param><type>size_t</type> <name>image_row_pitch</name></param>
<param>void* <name>host_ptr</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED">
<proto><type>cl_mem</type> <name>clCreateImage3D</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_mem_flags</type> <name>flags</name></param>
<param>const <type>cl_image_format</type>* <name>image_format</name></param>
<param><type>size_t</type> <name>image_width</name></param>
<param><type>size_t</type> <name>image_height</name></param>
<param><type>size_t</type> <name>image_depth</name></param>
<param><type>size_t</type> <name>image_row_pitch</name></param>
<param><type>size_t</type> <name>image_slice_pitch</name></param>
<param>void* <name>host_ptr</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED">
<proto><type>cl_int</type> <name>clEnqueueMarker</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED">
<proto><type>cl_int</type> <name>clEnqueueWaitForEvents</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_uint</type> <name>num_events</name></param>
<param>const <type>cl_event</type>* <name>event_list</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED">
<proto><type>cl_int</type> <name>clEnqueueBarrier</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED">
<proto><type>cl_int</type> <name>clUnloadCompiler</name></proto>
<param>void </param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED">
<proto>void* <name>clGetExtensionFunctionAddress</name></proto>
<param>const <type>char</type>* <name>func_name</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED">
<proto><type>cl_command_queue</type> <name>clCreateCommandQueue</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_device_id</type> <name>device</name></param>
<param><type>cl_command_queue_properties</type> <name>properties</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED">
<proto><type>cl_sampler</type> <name>clCreateSampler</name></proto>
<param><type>cl_context</type> <name>context</name></param>
<param><type>cl_bool</type> <name>normalized_coords</name></param>
<param><type>cl_addressing_mode</type> <name>addressing_mode</name></param>
<param><type>cl_filter_mode</type> <name>filter_mode</name></param>
<param><type>cl_int</type>* <name>errcode_ret</name></param>
</command>
<command prefix="CL_EXT_PREFIX__VERSION_1_1_DEPRECATED" suffix="CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED">
<proto><type>cl_int</type> <name>clEnqueueTask</name></proto>
<param><type>cl_command_queue</type> <name>command_queue</name></param>
<param><type>cl_kernel</type> <name>kernel</name></param>
<param><type>cl_uint</type> <name>num_events_in_wait_list</name></param>
<param>const <type>cl_event</type>* <name>event_wait_list</name></param>
<param><type>cl_event</type>* <name>event</name></param>
</command>
</commands>
<!-- SECTION: OpenCL API interface definitions -->
<feature api="opencl" name="CL_VERSION_1_0" number="1.0" comment="OpenCL core API interface definitions">
<require comment="Header boilerplate">
<type name="CL/cl_version.h"/>
<type name="CL/cl_platform.h"/>
</require>
<require comment="API types">
<type name="cl_platform_id"/>
<type name="cl_device_id"/>
<type name="cl_context"/>
<type name="cl_command_queue"/>
<type name="cl_mem"/>
<type name="cl_program"/>
<type name="cl_kernel"/>
<type name="cl_event"/>
<type name="cl_sampler"/>
<type name="cl_bool" comment="WARNING! Unlike cl_ types in cl_platform.h, cl_bool is not guaranteed to be the same size as the bool in kernels."/>
<type name="cl_bitfield"/>
<type name="cl_device_type"/>
<type name="cl_platform_info"/>
<type name="cl_device_info"/>
<type name="cl_device_fp_config"/>
<type name="cl_device_mem_cache_type"/>
<type name="cl_device_local_mem_type"/>
<type name="cl_device_exec_capabilities"/>
<type name="cl_command_queue_properties"/>
<type name="cl_context_properties"/>
<type name="cl_context_info"/>
<type name="cl_command_queue_info"/>
<type name="cl_channel_order"/>
<type name="cl_channel_type"/>
<type name="cl_mem_flags"/>
<type name="cl_mem_object_type"/>
<type name="cl_mem_info"/>
<type name="cl_image_info"/>
<type name="cl_addressing_mode"/>
<type name="cl_filter_mode"/>
<type name="cl_sampler_info"/>
<type name="cl_map_flags"/>
<type name="cl_program_info"/>
<type name="cl_program_build_info"/>
<type name="cl_build_status"/>
<type name="cl_kernel_info"/>
<type name="cl_kernel_work_group_info"/>
<type name="cl_event_info"/>
<type name="cl_command_type"/>
<type name="cl_profiling_info"/>
<type name="cl_image_format"/>
<type name="cl_buffer_region"/>
</require>
<require comment="Error codes">
<enum name="CL_SUCCESS"/>
<enum name="CL_DEVICE_NOT_FOUND"/>
<enum name="CL_DEVICE_NOT_AVAILABLE"/>
<enum name="CL_COMPILER_NOT_AVAILABLE"/>
<enum name="CL_MEM_OBJECT_ALLOCATION_FAILURE"/>
<enum name="CL_OUT_OF_RESOURCES"/>
<enum name="CL_OUT_OF_HOST_MEMORY"/>
<enum name="CL_PROFILING_INFO_NOT_AVAILABLE"/>
<enum name="CL_MEM_COPY_OVERLAP"/>
<enum name="CL_IMAGE_FORMAT_MISMATCH"/>
<enum name="CL_IMAGE_FORMAT_NOT_SUPPORTED"/>
<enum name="CL_BUILD_PROGRAM_FAILURE"/>
<enum name="CL_MAP_FAILURE"/>
<enum name="CL_INVALID_VALUE"/>
<enum name="CL_INVALID_DEVICE_TYPE"/>
<enum name="CL_INVALID_PLATFORM"/>
<enum name="CL_INVALID_DEVICE"/>
<enum name="CL_INVALID_CONTEXT"/>
<enum name="CL_INVALID_QUEUE_PROPERTIES"/>
<enum name="CL_INVALID_COMMAND_QUEUE"/>
<enum name="CL_INVALID_HOST_PTR"/>
<enum name="CL_INVALID_MEM_OBJECT"/>
<enum name="CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"/>
<enum name="CL_INVALID_IMAGE_SIZE"/>
<enum name="CL_INVALID_SAMPLER"/>
<enum name="CL_INVALID_BINARY"/>
<enum name="CL_INVALID_BUILD_OPTIONS"/>
<enum name="CL_INVALID_PROGRAM"/>
<enum name="CL_INVALID_PROGRAM_EXECUTABLE"/>
<enum name="CL_INVALID_KERNEL_NAME"/>
<enum name="CL_INVALID_KERNEL_DEFINITION"/>
<enum name="CL_INVALID_KERNEL"/>
<enum name="CL_INVALID_ARG_INDEX"/>
<enum name="CL_INVALID_ARG_VALUE"/>
<enum name="CL_INVALID_ARG_SIZE"/>
<enum name="CL_INVALID_KERNEL_ARGS"/>
<enum name="CL_INVALID_WORK_DIMENSION"/>
<enum name="CL_INVALID_WORK_GROUP_SIZE"/>
<enum name="CL_INVALID_WORK_ITEM_SIZE"/>
<enum name="CL_INVALID_GLOBAL_OFFSET"/>
<enum name="CL_INVALID_EVENT_WAIT_LIST"/>
<enum name="CL_INVALID_EVENT"/>
<enum name="CL_INVALID_OPERATION"/>
<enum name="CL_INVALID_GL_OBJECT"/>
<enum name="CL_INVALID_BUFFER_SIZE"/>
<enum name="CL_INVALID_MIP_LEVEL"/>
<enum name="CL_INVALID_GLOBAL_WORK_SIZE"/>
</require>
<require comment="cl_bool">
<enum name="CL_FALSE"/>
<enum name="CL_TRUE"/>
</require>
<require comment="cl_platform_info">
<enum name="CL_PLATFORM_PROFILE"/>
<enum name="CL_PLATFORM_VERSION"/>
<enum name="CL_PLATFORM_NAME"/>
<enum name="CL_PLATFORM_VENDOR"/>
<enum name="CL_PLATFORM_EXTENSIONS"/>
</require>
<require comment="cl_device_type - bitfield">
<enum name="CL_DEVICE_TYPE_DEFAULT"/>
<enum name="CL_DEVICE_TYPE_CPU"/>
<enum name="CL_DEVICE_TYPE_GPU"/>
<enum name="CL_DEVICE_TYPE_ACCELERATOR"/>
<enum name="CL_DEVICE_TYPE_ALL"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_TYPE"/>
<enum name="CL_DEVICE_VENDOR_ID"/>
<enum name="CL_DEVICE_MAX_COMPUTE_UNITS"/>
<enum name="CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS"/>
<enum name="CL_DEVICE_MAX_WORK_GROUP_SIZE"/>
<enum name="CL_DEVICE_MAX_WORK_ITEM_SIZES"/>
<enum name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR"/>
<enum name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT"/>
<enum name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT"/>
<enum name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_LONG"/>
<enum name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_FLOAT"/>
<enum name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_DOUBLE"/>
<enum name="CL_DEVICE_MAX_CLOCK_FREQUENCY"/>
<enum name="CL_DEVICE_ADDRESS_BITS"/>
<enum name="CL_DEVICE_MAX_READ_IMAGE_ARGS"/>
<enum name="CL_DEVICE_MAX_WRITE_IMAGE_ARGS"/>
<enum name="CL_DEVICE_MAX_MEM_ALLOC_SIZE"/>
<enum name="CL_DEVICE_IMAGE2D_MAX_WIDTH"/>
<enum name="CL_DEVICE_IMAGE2D_MAX_HEIGHT"/>
<enum name="CL_DEVICE_IMAGE3D_MAX_WIDTH"/>
<enum name="CL_DEVICE_IMAGE3D_MAX_HEIGHT"/>
<enum name="CL_DEVICE_IMAGE3D_MAX_DEPTH"/>
<enum name="CL_DEVICE_IMAGE_SUPPORT"/>
<enum name="CL_DEVICE_MAX_PARAMETER_SIZE"/>
<enum name="CL_DEVICE_MAX_SAMPLERS"/>
<enum name="CL_DEVICE_MEM_BASE_ADDR_ALIGN"/>
<enum name="CL_DEVICE_MIN_DATA_TYPE_ALIGN_SIZE"/>
<enum name="CL_DEVICE_SINGLE_FP_CONFIG"/>
<enum name="CL_DEVICE_GLOBAL_MEM_CACHE_TYPE"/>
<enum name="CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE"/>
<enum name="CL_DEVICE_GLOBAL_MEM_CACHE_SIZE"/>
<enum name="CL_DEVICE_GLOBAL_MEM_SIZE"/>
<enum name="CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE"/>
<enum name="CL_DEVICE_MAX_CONSTANT_ARGS"/>
<enum name="CL_DEVICE_LOCAL_MEM_TYPE"/>
<enum name="CL_DEVICE_LOCAL_MEM_SIZE"/>
<enum name="CL_DEVICE_ERROR_CORRECTION_SUPPORT"/>
<enum name="CL_DEVICE_PROFILING_TIMER_RESOLUTION"/>
<enum name="CL_DEVICE_ENDIAN_LITTLE"/>
<enum name="CL_DEVICE_AVAILABLE"/>
<enum name="CL_DEVICE_COMPILER_AVAILABLE"/>
<enum name="CL_DEVICE_EXECUTION_CAPABILITIES"/>
<enum name="CL_DEVICE_QUEUE_PROPERTIES"/>
<enum name="CL_DEVICE_NAME"/>
<enum name="CL_DEVICE_VENDOR"/>
<enum name="CL_DRIVER_VERSION"/>
<enum name="CL_DEVICE_PROFILE"/>
<enum name="CL_DEVICE_VERSION"/>
<enum name="CL_DEVICE_EXTENSIONS"/>
<enum name="CL_DEVICE_PLATFORM"/>
</require>
<require comment="cl_device_fp_config - bitfield">
<enum name="CL_FP_DENORM"/>
<enum name="CL_FP_INF_NAN"/>
<enum name="CL_FP_ROUND_TO_NEAREST"/>
<enum name="CL_FP_ROUND_TO_ZERO"/>
<enum name="CL_FP_ROUND_TO_INF"/>
<enum name="CL_FP_FMA"/>
</require>
<require comment="cl_device_mem_cache_type">
<enum name="CL_NONE"/>
<enum name="CL_READ_ONLY_CACHE"/>
<enum name="CL_READ_WRITE_CACHE"/>
</require>
<require comment="cl_device_local_mem_type">
<enum name="CL_LOCAL"/>
<enum name="CL_GLOBAL"/>
</require>
<require comment="cl_device_exec_capabilities - bitfield">
<enum name="CL_EXEC_KERNEL"/>
<enum name="CL_EXEC_NATIVE_KERNEL"/>
</require>
<require comment="cl_command_queue_properties - bitfield">
<enum name="CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE"/>
<enum name="CL_QUEUE_PROFILING_ENABLE"/>
</require>
<require comment="cl_context_info">
<enum name="CL_CONTEXT_REFERENCE_COUNT"/>
<enum name="CL_CONTEXT_DEVICES"/>
<enum name="CL_CONTEXT_PROPERTIES"/>
</require>
<require comment="cl_context_properties">
<enum name="CL_CONTEXT_PLATFORM"/>
</require>
<require comment="cl_command_queue_info">
<enum name="CL_QUEUE_CONTEXT"/>
<enum name="CL_QUEUE_DEVICE"/>
<enum name="CL_QUEUE_REFERENCE_COUNT"/>
<enum name="CL_QUEUE_PROPERTIES"/>
</require>
<require comment="cl_mem_flags and cl_svm_mem_flags - bitfield">
<enum name="CL_MEM_READ_WRITE"/>
<enum name="CL_MEM_WRITE_ONLY"/>
<enum name="CL_MEM_READ_ONLY"/>
<enum name="CL_MEM_USE_HOST_PTR"/>
<enum name="CL_MEM_ALLOC_HOST_PTR"/>
<enum name="CL_MEM_COPY_HOST_PTR"/>
</require>
<require comment="cl_profiling_info">
<enum name="CL_PROFILING_COMMAND_QUEUED"/>
<enum name="CL_PROFILING_COMMAND_SUBMIT"/>
<enum name="CL_PROFILING_COMMAND_START"/>
<enum name="CL_PROFILING_COMMAND_END"/>
</require>
<require comment="cl_channel_order">
<enum name="CL_R"/>
<enum name="CL_A"/>
<enum name="CL_RG"/>
<enum name="CL_RA"/>
<enum name="CL_RGB"/>
<enum name="CL_RGBA"/>
<enum name="CL_BGRA"/>
<enum name="CL_ARGB"/>
<enum name="CL_INTENSITY"/>
<enum name="CL_LUMINANCE"/>
</require>
<require comment="cl_channel_type">
<enum name="CL_SNORM_INT8"/>
<enum name="CL_SNORM_INT16"/>
<enum name="CL_UNORM_INT8"/>
<enum name="CL_UNORM_INT16"/>
<enum name="CL_UNORM_SHORT_565"/>
<enum name="CL_UNORM_SHORT_555"/>
<enum name="CL_UNORM_INT_101010"/>
<enum name="CL_SIGNED_INT8"/>
<enum name="CL_SIGNED_INT16"/>
<enum name="CL_SIGNED_INT32"/>
<enum name="CL_UNSIGNED_INT8"/>
<enum name="CL_UNSIGNED_INT16"/>
<enum name="CL_UNSIGNED_INT32"/>
<enum name="CL_HALF_FLOAT"/>
<enum name="CL_FLOAT"/>
</require>
<require comment="cl_mem_object_type">
<enum name="CL_MEM_OBJECT_BUFFER"/>
<enum name="CL_MEM_OBJECT_IMAGE2D"/>
<enum name="CL_MEM_OBJECT_IMAGE3D"/>
</require>
<require comment="cl_mem_info">
<enum name="CL_MEM_TYPE"/>
<enum name="CL_MEM_FLAGS"/>
<enum name="CL_MEM_SIZE"/>
<enum name="CL_MEM_HOST_PTR"/>
<enum name="CL_MEM_MAP_COUNT"/>
<enum name="CL_MEM_REFERENCE_COUNT"/>
<enum name="CL_MEM_CONTEXT"/>
</require>
<require comment="cl_image_info">
<enum name="CL_IMAGE_FORMAT"/>
<enum name="CL_IMAGE_ELEMENT_SIZE"/>
<enum name="CL_IMAGE_ROW_PITCH"/>
<enum name="CL_IMAGE_SLICE_PITCH"/>
<enum name="CL_IMAGE_WIDTH"/>
<enum name="CL_IMAGE_HEIGHT"/>
<enum name="CL_IMAGE_DEPTH"/>
</require>
<require comment="cl_addressing_mode">
<enum name="CL_ADDRESS_NONE"/>
<enum name="CL_ADDRESS_CLAMP_TO_EDGE"/>
<enum name="CL_ADDRESS_CLAMP"/>
<enum name="CL_ADDRESS_REPEAT"/>
</require>
<require comment="cl_filter_mode">
<enum name="CL_FILTER_NEAREST"/>
<enum name="CL_FILTER_LINEAR"/>
</require>
<require comment="cl_sampler_info">
<enum name="CL_SAMPLER_REFERENCE_COUNT"/>
<enum name="CL_SAMPLER_CONTEXT"/>
<enum name="CL_SAMPLER_NORMALIZED_COORDS"/>
<enum name="CL_SAMPLER_ADDRESSING_MODE"/>
<enum name="CL_SAMPLER_FILTER_MODE"/>
</require>
<require comment="cl_map_flags - bitfield">
<enum name="CL_MAP_READ"/>
<enum name="CL_MAP_WRITE"/>
</require>
<require comment="cl_program_info">
<enum name="CL_PROGRAM_REFERENCE_COUNT"/>
<enum name="CL_PROGRAM_CONTEXT"/>
<enum name="CL_PROGRAM_NUM_DEVICES"/>
<enum name="CL_PROGRAM_DEVICES"/>
<enum name="CL_PROGRAM_SOURCE"/>
<enum name="CL_PROGRAM_BINARY_SIZES"/>
<enum name="CL_PROGRAM_BINARIES"/>
</require>
<require comment="cl_program_build_info">
<enum name="CL_PROGRAM_BUILD_STATUS"/>
<enum name="CL_PROGRAM_BUILD_OPTIONS"/>
<enum name="CL_PROGRAM_BUILD_LOG"/>
</require>
<require comment="cl_build_status">
<enum name="CL_BUILD_SUCCESS"/>
<enum name="CL_BUILD_NONE"/>
<enum name="CL_BUILD_ERROR"/>
<enum name="CL_BUILD_IN_PROGRESS"/>
</require>
<require comment="cl_kernel_info">
<enum name="CL_KERNEL_FUNCTION_NAME"/>
<enum name="CL_KERNEL_NUM_ARGS"/>
<enum name="CL_KERNEL_REFERENCE_COUNT"/>
<enum name="CL_KERNEL_CONTEXT"/>
<enum name="CL_KERNEL_PROGRAM"/>
</require>
<require comment="cl_kernel_work_group_info">
<enum name="CL_KERNEL_WORK_GROUP_SIZE"/>
<enum name="CL_KERNEL_COMPILE_WORK_GROUP_SIZE"/>
<enum name="CL_KERNEL_LOCAL_MEM_SIZE"/>
<enum name="CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE"/>
<enum name="CL_KERNEL_PRIVATE_MEM_SIZE"/>
</require>
<require comment="cl_event_info">
<enum name="CL_EVENT_COMMAND_QUEUE"/>
<enum name="CL_EVENT_COMMAND_TYPE"/>
<enum name="CL_EVENT_REFERENCE_COUNT"/>
<enum name="CL_EVENT_COMMAND_EXECUTION_STATUS"/>
</require>
<require comment="cl_command_type">
<enum name="CL_COMMAND_NDRANGE_KERNEL"/>
<enum name="CL_COMMAND_TASK"/>
<enum name="CL_COMMAND_NATIVE_KERNEL"/>
<enum name="CL_COMMAND_READ_BUFFER"/>
<enum name="CL_COMMAND_WRITE_BUFFER"/>
<enum name="CL_COMMAND_COPY_BUFFER"/>
<enum name="CL_COMMAND_READ_IMAGE"/>
<enum name="CL_COMMAND_WRITE_IMAGE"/>
<enum name="CL_COMMAND_COPY_IMAGE"/>
<enum name="CL_COMMAND_COPY_IMAGE_TO_BUFFER"/>
<enum name="CL_COMMAND_COPY_BUFFER_TO_IMAGE"/>
<enum name="CL_COMMAND_MAP_BUFFER"/>
<enum name="CL_COMMAND_MAP_IMAGE"/>
<enum name="CL_COMMAND_UNMAP_MEM_OBJECT"/>
<enum name="CL_COMMAND_MARKER"/>
<enum name="CL_COMMAND_ACQUIRE_GL_OBJECTS"/>
<enum name="CL_COMMAND_RELEASE_GL_OBJECTS"/>
</require>
<require comment="command execution status">
<enum name="CL_COMPLETE"/>
<enum name="CL_RUNNING"/>
<enum name="CL_SUBMITTED"/>
<enum name="CL_QUEUED"/>
</require>
<require comment="Platform APIs">
<command name="clGetPlatformIDs"/>
<command name="clGetPlatformInfo"/>
</require>
<require comment="Device APIs">
<command name="clGetDeviceIDs"/>
<command name="clGetDeviceInfo"/>
</require>
<require comment="Context APIs">
<command name="clCreateContext"/>
<command name="clCreateContextFromType"/>
<command name="clRetainContext"/>
<command name="clReleaseContext"/>
<command name="clGetContextInfo"/>
</require>
<require comment="Command Queue APIs">
<command name="clRetainCommandQueue"/>
<command name="clReleaseCommandQueue"/>
<command name="clGetCommandQueueInfo"/>
</require>
<require comment="Memory Object APIs">
<command name="clCreateBuffer"/>
<command name="clRetainMemObject"/>
<command name="clReleaseMemObject"/>
<command name="clGetSupportedImageFormats"/>
<command name="clGetMemObjectInfo"/>
<command name="clGetImageInfo"/>
</require>
<require comment="Sampler APIs">
<command name="clRetainSampler"/>
<command name="clReleaseSampler"/>
<command name="clGetSamplerInfo"/>
</require>
<require comment="Program Object APIs">
<command name="clCreateProgramWithSource"/>
<command name="clCreateProgramWithBinary"/>
<command name="clRetainProgram"/>
<command name="clReleaseProgram"/>
<command name="clBuildProgram"/>
<command name="clGetProgramInfo"/>
<command name="clGetProgramBuildInfo"/>
</require>
<require comment="Kernel Object APIs">
<command name="clCreateKernel"/>
<command name="clCreateKernelsInProgram"/>
<command name="clRetainKernel"/>
<command name="clReleaseKernel"/>
<command name="clSetKernelArg"/>
<command name="clGetKernelInfo"/>
<command name="clGetKernelWorkGroupInfo"/>
</require>
<require comment="Event Object APIs">
<command name="clWaitForEvents"/>
<command name="clGetEventInfo"/>
<command name="clRetainEvent"/>
<command name="clReleaseEvent"/>
</require>
<require comment="Profiling APIs">
<command name="clGetEventProfilingInfo"/>
</require>
<require comment="Flush and Finish APIs">
<command name="clFlush"/>
<command name="clFinish"/>
</require>
<require comment="Enqueued Commands APIs">
<command name="clEnqueueReadBuffer"/>
<command name="clEnqueueWriteBuffer"/>
<command name="clEnqueueCopyBuffer"/>
<command name="clEnqueueReadImage"/>
<command name="clEnqueueWriteImage"/>
<command name="clEnqueueCopyImage"/>
<command name="clEnqueueCopyImageToBuffer"/>
<command name="clEnqueueCopyBufferToImage"/>
<command name="clEnqueueMapBuffer"/>
<command name="clEnqueueMapImage"/>
<command name="clEnqueueUnmapMemObject"/>
<command name="clEnqueueNDRangeKernel"/>
<command name="clEnqueueNativeKernel"/>
</require>
<require comment="OpenCL 1.0 APIs that were deprecated in OpenCL 1.1">
<comment>
#ifdef CL_USE_DEPRECATED_OPENCL_1_0_APIS
/*
* WARNING:
* This API introduces mutable state into the OpenCL implementation. It has been REMOVED
* to better facilitate thread safety. The 1.0 API is not thread safe. It is not tested by the
* OpenCL 1.1 conformance test, and consequently may not work or may not work dependably.
* It is likely to be non-performant. Use of this API is not advised. Use at your own risk.
*
* Software developers previously relying on this API are instructed to set the command queue
* properties when creating the queue, instead.
*/
#endif /* CL_USE_DEPRECATED_OPENCL_1_0_APIS */
</comment>
<command name="clSetCommandQueueProperty"/>
</require>
<require comment="OpenCL 1.0 APIs that were deprecated in OpenCL 1.2">
<command name="clCreateImage2D"/>
<command name="clCreateImage3D"/>
<command name="clEnqueueMarker"/>
<command name="clEnqueueWaitForEvents"/>
<command name="clEnqueueBarrier"/>
<command name="clUnloadCompiler"/>
<command name="clGetExtensionFunctionAddress"/>
</require>
<require comment="OpenCL 1.0 APIs that were deprecated in OpenCL 2.0">
<command name="clCreateCommandQueue"/>
<command name="clCreateSampler"/>
<command name="clEnqueueTask"/>
</require>
</feature>
<feature api="opencl" name="CL_VERSION_1_1" number="1.1" comment="OpenCL core API interface definitions">
<require>
<type name="cl_buffer_create_type"/>
</require>
<require comment="Error codes">
<enum name="CL_MISALIGNED_SUB_BUFFER_OFFSET"/>
<enum name="CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST"/>
<enum name="CL_INVALID_PROPERTY"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF"/>
<enum name="CL_DEVICE_HOST_UNIFIED_MEMORY"/>
<enum name="CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR"/>
<enum name="CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT"/>
<enum name="CL_DEVICE_NATIVE_VECTOR_WIDTH_INT"/>
<enum name="CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG"/>
<enum name="CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT"/>
<enum name="CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE"/>
<enum name="CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF"/>
<enum name="CL_DEVICE_OPENCL_C_VERSION"/>
</require>
<require comment="cl_device_fp_config - bitfield">
<enum name="CL_FP_SOFT_FLOAT"/>
</require>
<require comment="cl_context_info">
<enum name="CL_CONTEXT_NUM_DEVICES"/>
</require>
<require comment="cl_channel_order">
<enum name="CL_Rx"/>
<enum name="CL_RGx"/>
<enum name="CL_RGBx"/>
</require>
<require comment="cl_mem_info">
<enum name="CL_MEM_ASSOCIATED_MEMOBJECT"/>
<enum name="CL_MEM_OFFSET"/>
</require>
<require comment="cl_addressing_mode">
<enum name="CL_ADDRESS_MIRRORED_REPEAT"/>
</require>
<require comment="cl_event_info">
<enum name="CL_EVENT_CONTEXT"/>
</require>
<require comment="cl_command_type">
<enum name="CL_COMMAND_READ_BUFFER_RECT"/>
<enum name="CL_COMMAND_WRITE_BUFFER_RECT"/>
<enum name="CL_COMMAND_COPY_BUFFER_RECT"/>
<enum name="CL_COMMAND_USER"/>
</require>
<require comment="cl_buffer_create_type">
<enum name="CL_BUFFER_CREATE_TYPE_REGION"/>
</require>
<require comment="Memory Object APIs">
<command name="clCreateSubBuffer"/>
<command name="clSetMemObjectDestructorCallback"/>
</require>
<require comment="Event Object APIs">
<command name="clCreateUserEvent"/>
<command name="clSetUserEventStatus"/>
<command name="clSetEventCallback"/>
</require>
<require comment="Enqueued Commands APIs">
<command name="clEnqueueReadBufferRect"/>
<command name="clEnqueueWriteBufferRect"/>
<command name="clEnqueueCopyBufferRect"/>
</require>
</feature>
<feature api="opencl" name="CL_VERSION_1_2" number="1.2" comment="OpenCL core API interface definitions">
<require>
<type name="cl_device_partition_property"/>
<type name="cl_device_affinity_domain"/>
<type name="cl_mem_migration_flags"/>
<type name="cl_program_binary_type"/>
<type name="cl_kernel_arg_info"/>
<type name="cl_kernel_arg_address_qualifier"/>
<type name="cl_kernel_arg_access_qualifier"/>
<type name="cl_kernel_arg_type_qualifier"/>
<type name="cl_image_desc"/>
</require>
<require comment="Error codes">
<enum name="CL_COMPILE_PROGRAM_FAILURE"/>
<enum name="CL_LINKER_NOT_AVAILABLE"/>
<enum name="CL_LINK_PROGRAM_FAILURE"/>
<enum name="CL_DEVICE_PARTITION_FAILED"/>
<enum name="CL_KERNEL_ARG_INFO_NOT_AVAILABLE"/>
<enum name="CL_INVALID_IMAGE_DESCRIPTOR"/>
<enum name="CL_INVALID_COMPILER_OPTIONS"/>
<enum name="CL_INVALID_LINKER_OPTIONS"/>
<enum name="CL_INVALID_DEVICE_PARTITION_COUNT"/>
</require>
<require comment="cl_command_type">
<enum name="CL_COMMAND_BARRIER"/>
<enum name="CL_COMMAND_MIGRATE_MEM_OBJECTS"/>
<enum name="CL_COMMAND_FILL_BUFFER"/>
<enum name="CL_COMMAND_FILL_IMAGE"/>
</require>
<require comment="cl_bool">
<enum name="CL_BLOCKING"/>
<enum name="CL_NON_BLOCKING"/>
</require>
<require comment="cl_device_type - bitfield">
<enum name="CL_DEVICE_TYPE_CUSTOM"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_DOUBLE_FP_CONFIG"/>
<enum name="CL_DEVICE_LINKER_AVAILABLE"/>
<enum name="CL_DEVICE_BUILT_IN_KERNELS"/>
<enum name="CL_DEVICE_IMAGE_MAX_BUFFER_SIZE"/>
<enum name="CL_DEVICE_IMAGE_MAX_ARRAY_SIZE"/>
<enum name="CL_DEVICE_PARENT_DEVICE"/>
<enum name="CL_DEVICE_PARTITION_MAX_SUB_DEVICES"/>
<enum name="CL_DEVICE_PARTITION_PROPERTIES"/>
<enum name="CL_DEVICE_PARTITION_AFFINITY_DOMAIN"/>
<enum name="CL_DEVICE_PARTITION_TYPE"/>
<enum name="CL_DEVICE_REFERENCE_COUNT"/>
<enum name="CL_DEVICE_PREFERRED_INTEROP_USER_SYNC"/>
<enum name="CL_DEVICE_PRINTF_BUFFER_SIZE"/>
</require>
<require comment="cl_device_fp_config - bitfield">
<enum name="CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT"/>
</require>
<require comment="cl_context_properties">
<enum name="CL_CONTEXT_INTEROP_USER_SYNC"/>
</require>
<require comment="cl_device_partition_property">
<enum name="CL_DEVICE_PARTITION_EQUALLY"/>
<enum name="CL_DEVICE_PARTITION_BY_COUNTS"/>
<enum name="CL_DEVICE_PARTITION_BY_COUNTS_LIST_END"/>
<enum name="CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN"/>
</require>
<require comment="cl_device_affinity_domain">
<enum name="CL_DEVICE_AFFINITY_DOMAIN_NUMA"/>
<enum name="CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE"/>
<enum name="CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE"/>
<enum name="CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE"/>
<enum name="CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE"/>
<enum name="CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE"/>
</require>
<require comment="cl_mem_flags and cl_svm_mem_flags - bitfield">
<enum name="CL_MEM_HOST_WRITE_ONLY"/>
<enum name="CL_MEM_HOST_READ_ONLY"/>
<enum name="CL_MEM_HOST_NO_ACCESS"/>
</require>
<require comment="cl_mem_migration_flags - bitfield">
<enum name="CL_MIGRATE_MEM_OBJECT_HOST"/>
<enum name="CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED"/>
</require>
<require comment="cl_channel_order">
<enum name="CL_DEPTH"/>
<enum name="CL_DEPTH_STENCIL"/>
</require>
<require comment="cl_channel_type">
<enum name="CL_UNORM_INT24"/>
</require>
<require comment="cl_mem_object_type">
<enum name="CL_MEM_OBJECT_IMAGE2D_ARRAY"/>
<enum name="CL_MEM_OBJECT_IMAGE1D"/>
<enum name="CL_MEM_OBJECT_IMAGE1D_ARRAY"/>
<enum name="CL_MEM_OBJECT_IMAGE1D_BUFFER"/>
</require>
<require comment="cl_image_info">
<enum name="CL_IMAGE_ARRAY_SIZE"/>
<enum name="CL_IMAGE_BUFFER"/>
<enum name="CL_IMAGE_NUM_MIP_LEVELS"/>
<enum name="CL_IMAGE_NUM_SAMPLES"/>
</require>
<require comment="cl_map_flags - bitfield">
<enum name="CL_MAP_WRITE_INVALIDATE_REGION"/>
</require>
<require comment="cl_program_info">
<enum name="CL_PROGRAM_NUM_KERNELS"/>
<enum name="CL_PROGRAM_KERNEL_NAMES"/>
</require>
<require comment="cl_program_build_info">
<enum name="CL_PROGRAM_BINARY_TYPE"/>
</require>
<require comment="cl_program_binary_type">
<enum name="CL_PROGRAM_BINARY_TYPE_NONE"/>
<enum name="CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT"/>
<enum name="CL_PROGRAM_BINARY_TYPE_LIBRARY"/>
<enum name="CL_PROGRAM_BINARY_TYPE_EXECUTABLE"/>
</require>
<require comment="cl_kernel_info">
<enum name="CL_KERNEL_ATTRIBUTES"/>
</require>
<require comment="cl_kernel_arg_info">
<enum name="CL_KERNEL_ARG_ADDRESS_QUALIFIER"/>
<enum name="CL_KERNEL_ARG_ACCESS_QUALIFIER"/>
<enum name="CL_KERNEL_ARG_TYPE_NAME"/>
<enum name="CL_KERNEL_ARG_TYPE_QUALIFIER"/>
<enum name="CL_KERNEL_ARG_NAME"/>
</require>
<require comment="cl_kernel_arg_address_qualifier">
<enum name="CL_KERNEL_ARG_ADDRESS_GLOBAL"/>
<enum name="CL_KERNEL_ARG_ADDRESS_LOCAL"/>
<enum name="CL_KERNEL_ARG_ADDRESS_CONSTANT"/>
<enum name="CL_KERNEL_ARG_ADDRESS_PRIVATE"/>
</require>
<require comment="cl_kernel_arg_access_qualifier">
<enum name="CL_KERNEL_ARG_ACCESS_READ_ONLY"/>
<enum name="CL_KERNEL_ARG_ACCESS_WRITE_ONLY"/>
<enum name="CL_KERNEL_ARG_ACCESS_READ_WRITE"/>
<enum name="CL_KERNEL_ARG_ACCESS_NONE"/>
</require>
<require comment="cl_kernel_arg_type_qualifier">
<enum name="CL_KERNEL_ARG_TYPE_NONE"/>
<enum name="CL_KERNEL_ARG_TYPE_CONST"/>
<enum name="CL_KERNEL_ARG_TYPE_RESTRICT"/>
<enum name="CL_KERNEL_ARG_TYPE_VOLATILE"/>
</require>
<require comment="cl_kernel_work_group_info">
<enum name="CL_KERNEL_GLOBAL_WORK_SIZE"/>
</require>
<require comment="Platform APIs">
<command name="clCreateSubDevices"/>
<command name="clRetainDevice"/>
<command name="clReleaseDevice"/>
</require>
<require comment="Memory Object APIs">
<command name="clCreateImage"/>
</require>
<require comment="Program Object APIs">
<command name="clCreateProgramWithBuiltInKernels"/>
<command name="clCompileProgram"/>
<command name="clLinkProgram"/>
<command name="clUnloadPlatformCompiler"/>
</require>
<require comment="Kernel Object APIs">
<command name="clGetKernelArgInfo"/>
</require>
<require comment="Enqueued Commands APIs">
<command name="clEnqueueFillBuffer"/>
<command name="clEnqueueFillImage"/>
<command name="clEnqueueMigrateMemObjects"/>
<command name="clEnqueueMarkerWithWaitList"/>
<command name="clEnqueueBarrierWithWaitList"/>
</require>
<require comment="Extension function access">
<command name="clGetExtensionFunctionAddressForPlatform"/>
</require>
</feature>
<feature api="opencl" name="CL_VERSION_2_0" number="2.0" comment="OpenCL core API interface definitions">
<require>
<type name="cl_device_svm_capabilities"/>
<type name="cl_queue_properties"/>
<type name="cl_svm_mem_flags"/>
<type name="cl_pipe_properties"/>
<type name="cl_pipe_info"/>
<type name="cl_sampler_properties"/>
<type name="cl_kernel_exec_info"/>
</require>
<require comment="Error codes">
<enum name="CL_INVALID_PIPE_SIZE"/>
<enum name="CL_INVALID_DEVICE_QUEUE"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_QUEUE_ON_HOST_PROPERTIES"/>
<enum name="CL_DEVICE_IMAGE_PITCH_ALIGNMENT"/>
<enum name="CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT"/>
<enum name="CL_DEVICE_MAX_READ_WRITE_IMAGE_ARGS"/>
<enum name="CL_DEVICE_MAX_GLOBAL_VARIABLE_SIZE"/>
<enum name="CL_DEVICE_QUEUE_ON_DEVICE_PROPERTIES"/>
<enum name="CL_DEVICE_QUEUE_ON_DEVICE_PREFERRED_SIZE"/>
<enum name="CL_DEVICE_QUEUE_ON_DEVICE_MAX_SIZE"/>
<enum name="CL_DEVICE_MAX_ON_DEVICE_QUEUES"/>
<enum name="CL_DEVICE_MAX_ON_DEVICE_EVENTS"/>
<enum name="CL_DEVICE_SVM_CAPABILITIES"/>
<enum name="CL_DEVICE_GLOBAL_VARIABLE_PREFERRED_TOTAL_SIZE"/>
<enum name="CL_DEVICE_MAX_PIPE_ARGS"/>
<enum name="CL_DEVICE_PIPE_MAX_ACTIVE_RESERVATIONS"/>
<enum name="CL_DEVICE_PIPE_MAX_PACKET_SIZE"/>
<enum name="CL_DEVICE_PREFERRED_PLATFORM_ATOMIC_ALIGNMENT"/>
<enum name="CL_DEVICE_PREFERRED_GLOBAL_ATOMIC_ALIGNMENT"/>
<enum name="CL_DEVICE_PREFERRED_LOCAL_ATOMIC_ALIGNMENT"/>
</require>
<require comment="cl_command_queue_properties - bitfield">
<enum name="CL_QUEUE_ON_DEVICE"/>
<enum name="CL_QUEUE_ON_DEVICE_DEFAULT"/>
</require>
<require comment="cl_device_svm_capabilities">
<enum name="CL_DEVICE_SVM_COARSE_GRAIN_BUFFER"/>
<enum name="CL_DEVICE_SVM_FINE_GRAIN_BUFFER"/>
<enum name="CL_DEVICE_SVM_FINE_GRAIN_SYSTEM"/>
<enum name="CL_DEVICE_SVM_ATOMICS"/>
</require>
<require comment="cl_command_queue_info">
<enum name="CL_QUEUE_SIZE"/>
</require>
<require comment="cl_mem_flags and cl_svm_mem_flags - bitfield">
<enum name="CL_MEM_SVM_FINE_GRAIN_BUFFER"/>
<enum name="CL_MEM_SVM_ATOMICS"/>
<enum name="CL_MEM_KERNEL_READ_AND_WRITE"/>
</require>
<require comment="cl_channel_order">
<enum name="CL_sRGB"/>
<enum name="CL_sRGBx"/>
<enum name="CL_sRGBA"/>
<enum name="CL_sBGRA"/>
<enum name="CL_ABGR"/>
</require>
<require comment="cl_mem_object_type">
<enum name="CL_MEM_OBJECT_PIPE"/>
</require>
<require comment="cl_mem_info">
<enum name="CL_MEM_USES_SVM_POINTER"/>
</require>
<require comment="cl_pipe_info">
<enum name="CL_PIPE_PACKET_SIZE"/>
<enum name="CL_PIPE_MAX_PACKETS"/>
</require>
<require comment="cl_sampler_info">
<enum name="CL_SAMPLER_MIP_FILTER_MODE"/>
<enum name="CL_SAMPLER_LOD_MIN"/>
<enum name="CL_SAMPLER_LOD_MAX"/>
</require>
<require comment="cl_program_build_info">
<enum name="CL_PROGRAM_BUILD_GLOBAL_VARIABLE_TOTAL_SIZE"/>
</require>
<require comment="cl_kernel_arg_type_qualifier">
<enum name="CL_KERNEL_ARG_TYPE_PIPE"/>
</require>
<require comment="cl_kernel_exec_info">
<enum name="CL_KERNEL_EXEC_INFO_SVM_PTRS"/>
<enum name="CL_KERNEL_EXEC_INFO_SVM_FINE_GRAIN_SYSTEM"/>
</require>
<require comment="cl_command_type">
<enum name="CL_COMMAND_SVM_FREE"/>
<enum name="CL_COMMAND_SVM_MEMCPY"/>
<enum name="CL_COMMAND_SVM_MEMFILL"/>
<enum name="CL_COMMAND_SVM_MAP"/>
<enum name="CL_COMMAND_SVM_UNMAP"/>
</require>
<require comment="cl_profiling_info">
<enum name="CL_PROFILING_COMMAND_COMPLETE"/>
</require>
<require comment="Context APIs">
<command name="clCreateCommandQueueWithProperties"/>
</require>
<require comment="Command Queue APIs">
<command name="clCreatePipe"/>
<command name="clGetPipeInfo"/>
</require>
<require comment="SVM Allocation APIs">
<command name="clSVMAlloc"/>
<command name="clSVMFree"/>
</require>
<require comment="Sampler APIs">
<command name="clCreateSamplerWithProperties"/>
</require>
<require comment="Kernel Object APIs">
<command name="clSetKernelArgSVMPointer"/>
<command name="clSetKernelExecInfo"/>
</require>
<require comment="Enqueued Commands APIs">
<command name="clEnqueueSVMFree"/>
<command name="clEnqueueSVMMemcpy"/>
<command name="clEnqueueSVMMemFill"/>
<command name="clEnqueueSVMMap"/>
<command name="clEnqueueSVMUnmap"/>
</require>
</feature>
<feature api="opencl" name="CL_VERSION_2_1" number="2.1" comment="OpenCL core API interface definitions">
<require>
<type name="cl_kernel_sub_group_info"/>
</require>
<require comment="cl_platform_info">
<enum name="CL_PLATFORM_HOST_TIMER_RESOLUTION"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_IL_VERSION"/>
<enum name="CL_DEVICE_MAX_NUM_SUB_GROUPS"/>
<enum name="CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS"/>
</require>
<require comment="cl_command_queue_info">
<enum name="CL_QUEUE_DEVICE_DEFAULT"/>
</require>
<require comment="cl_channel_type">
<enum name="CL_UNORM_INT_101010_2"/>
</require>
<require comment="cl_program_info">
<enum name="CL_PROGRAM_IL"/>
</require>
<require comment="cl_kernel_info">
<enum name="CL_KERNEL_MAX_NUM_SUB_GROUPS"/>
<enum name="CL_KERNEL_COMPILE_NUM_SUB_GROUPS"/>
</require>
<require comment="cl_kernel_sub_group_info">
<enum name="CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE"/>
<enum name="CL_KERNEL_SUB_GROUP_COUNT_FOR_NDRANGE"/>
<enum name="CL_KERNEL_LOCAL_SIZE_FOR_SUB_GROUP_COUNT"/>
</require>
<require comment="Platform APIs">
<command name="clSetDefaultDeviceCommandQueue"/>
</require>
<require comment="Device APIs">
<command name="clGetDeviceAndHostTimer"/>
<command name="clGetHostTimer"/>
</require>
<require comment="Program Object APIs">
<command name="clCreateProgramWithIL"/>
</require>
<require comment="Kernel Object APIs">
<command name="clCloneKernel"/>
<command name="clGetKernelSubGroupInfo"/>
</require>
<require comment="Enqueued Commands APIs">
<command name="clEnqueueSVMMigrateMem"/>
</require>
</feature>
<feature api="opencl" name="CL_VERSION_2_2" number="2.2" comment="OpenCL core API interface definitions">
<require comment="Error codes">
<enum name="CL_INVALID_SPEC_ID"/>
<enum name="CL_MAX_SIZE_RESTRICTION_EXCEEDED"/>
</require>
<require comment="cl_program_info">
<enum name="CL_PROGRAM_SCOPE_GLOBAL_CTORS_PRESENT"/>
<enum name="CL_PROGRAM_SCOPE_GLOBAL_DTORS_PRESENT"/>
</require>
<require comment="Program Object APIs">
<command name="clSetProgramReleaseCallback"/>
<command name="clSetProgramSpecializationConstant"/>
</require>
</feature>
<!-- SECTION: OpenCL extension interface definitions -->
<extensions>
<extension name="cl_khr_d3d10_sharing" supported="opencl">
<require>
<type name="d3d10.h"/>
<type name="CL/cl.h"/>
<type name="CL/cl_platform.h"/>
</require>
<require>
<type name="cl_d3d10_device_source_khr"/>
<type name="cl_d3d10_device_set_khr"/>
</require>
<require comment="Error codes">
<enum name="CL_INVALID_D3D10_DEVICE_KHR"/>
<enum name="CL_INVALID_D3D10_RESOURCE_KHR"/>
<enum name="CL_D3D10_RESOURCE_ALREADY_ACQUIRED_KHR"/>
<enum name="CL_D3D10_RESOURCE_NOT_ACQUIRED_KHR"/>
</require>
<require comment="cl_d3d10_device_source_nv">
<enum name="CL_D3D10_DEVICE_KHR"/>
<enum name="CL_D3D10_DXGI_ADAPTER_KHR"/>
</require>
<require comment="cl_d3d10_device_set_nv">
<enum name="CL_PREFERRED_DEVICES_FOR_D3D10_KHR"/>
<enum name="CL_ALL_DEVICES_FOR_D3D10_KHR"/>
</require>
<require comment="cl_context_info">
<enum name="CL_CONTEXT_D3D10_DEVICE_KHR"/>
<enum name="CL_CONTEXT_D3D10_PREFER_SHARED_RESOURCES_KHR"/>
</require>
<require comment="cl_mem_info">
<enum name="CL_MEM_D3D10_RESOURCE_KHR"/>
</require>
<require comment="cl_image_info">
<enum name="CL_IMAGE_D3D10_SUBRESOURCE_KHR"/>
</require>
<require comment="cl_command_type">
<enum name="CL_COMMAND_ACQUIRE_D3D10_OBJECTS_KHR"/>
<enum name="CL_COMMAND_RELEASE_D3D10_OBJECTS_KHR"/>
</require>
<require comment="All are CL_API_SUFFIX__VERSION_1_0">
<command name="clGetDeviceIDsFromD3D10KHR"/>
<command name="clCreateFromD3D10BufferKHR"/>
<command name="clCreateFromD3D10Texture2DKHR"/>
<command name="clCreateFromD3D10Texture3DKHR"/>
<command name="clEnqueueAcquireD3D10ObjectsKHR"/>
<command name="clEnqueueReleaseD3D10ObjectsKHR"/>
</require>
</extension>
<extension name="cl_khr_d3d11_sharing" supported="opencl">
<require>
<type name="d3d11.h"/>
<type name="CL/cl.h"/>
<type name="CL/cl_platform.h"/>
</require>
<require>
<type name="cl_d3d11_device_source_khr"/>
<type name="cl_d3d11_device_set_khr"/>
</require>
<require comment="Error codes">
<enum name="CL_INVALID_D3D11_DEVICE_KHR"/>
<enum name="CL_INVALID_D3D11_RESOURCE_KHR"/>
<enum name="CL_D3D11_RESOURCE_ALREADY_ACQUIRED_KHR"/>
<enum name="CL_D3D11_RESOURCE_NOT_ACQUIRED_KHR"/>
</require>
<require comment="cl_d3d11_device_source">
<enum name="CL_D3D11_DEVICE_KHR"/>
<enum name="CL_D3D11_DXGI_ADAPTER_KHR"/>
</require>
<require comment="cl_d3d11_device_set">
<enum name="CL_PREFERRED_DEVICES_FOR_D3D11_KHR"/>
<enum name="CL_ALL_DEVICES_FOR_D3D11_KHR"/>
</require>
<require comment="cl_context_info">
<enum name="CL_CONTEXT_D3D11_DEVICE_KHR"/>
<enum name="CL_CONTEXT_D3D11_PREFER_SHARED_RESOURCES_KHR"/>
</require>
<require comment="cl_mem_info">
<enum name="CL_MEM_D3D11_RESOURCE_KHR"/>
</require>
<require comment="cl_image_info">
<enum name="CL_IMAGE_D3D11_SUBRESOURCE_KHR"/>
</require>
<require comment="cl_command_type">
<enum name="CL_COMMAND_ACQUIRE_D3D11_OBJECTS_KHR"/>
<enum name="CL_COMMAND_RELEASE_D3D11_OBJECTS_KHR"/>
</require>
<require>
<command name="clGetDeviceIDsFromD3D11KHR"/>
<command name="clCreateFromD3D11BufferKHR"/>
<command name="clCreateFromD3D11Texture2DKHR"/>
<command name="clCreateFromD3D11Texture3DKHR"/>
<command name="clEnqueueAcquireD3D11ObjectsKHR"/>
<command name="clEnqueueReleaseD3D11ObjectsKHR"/>
</require>
</extension>
<extension name="cl_khr_dx9_media_sharing" supported="opencl">
<require>
<type name="CL/cl.h"/>
<type name="CL/cl_platform.h"/>
</require>
<require>
<type name="cl_dx9_media_adapter_type_khr"/>
<type name="cl_dx9_media_adapter_set_khr"/>
<type name="cl_dx9_surface_info_khr" comment="if defined(_WIN32)"/>
</require>
<require comment="Error codes">
<enum name="CL_INVALID_DX9_MEDIA_ADAPTER_KHR"/>
<enum name="CL_INVALID_DX9_MEDIA_SURFACE_KHR"/>
<enum name="CL_DX9_MEDIA_SURFACE_ALREADY_ACQUIRED_KHR"/>
<enum name="CL_DX9_MEDIA_SURFACE_NOT_ACQUIRED_KHR"/>
</require>
<require comment="cl_media_adapter_type_khr">
<enum name="CL_ADAPTER_D3D9_KHR"/>
<enum name="CL_ADAPTER_D3D9EX_KHR"/>
<enum name="CL_ADAPTER_DXVA_KHR"/>
</require>
<require comment="cl_media_adapter_set_khr">
<enum name="CL_PREFERRED_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR"/>
<enum name="CL_ALL_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR"/>
</require>
<require comment="cl_context_info">
<enum name="CL_CONTEXT_ADAPTER_D3D9_KHR"/>
<enum name="CL_CONTEXT_ADAPTER_D3D9EX_KHR"/>
<enum name="CL_CONTEXT_ADAPTER_DXVA_KHR"/>
</require>
<require comment="cl_mem_info">
<enum name="CL_MEM_DX9_MEDIA_ADAPTER_TYPE_KHR"/>
<enum name="CL_MEM_DX9_MEDIA_SURFACE_INFO_KHR"/>
</require>
<require comment="cl_image_info">
<enum name="CL_IMAGE_DX9_MEDIA_PLANE_KHR"/>
</require>
<require comment="cl_command_type">
<enum name="CL_COMMAND_ACQUIRE_DX9_MEDIA_SURFACES_KHR"/>
<enum name="CL_COMMAND_RELEASE_DX9_MEDIA_SURFACES_KHR"/>
</require>
<require>
<command name="clGetDeviceIDsFromDX9MediaAdapterKHR"/>
<command name="clCreateFromDX9MediaSurfaceKHR"/>
<command name="clEnqueueAcquireDX9MediaSurfacesKHR"/>
<command name="clEnqueueReleaseDX9MediaSurfacesKHR"/>
</require>
</extension>
<extension name="cl_khr_egl_image" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="Command type for events created with clEnqueueAcquireEGLObjectsKHR">
<enum name="CL_COMMAND_EGL_FENCE_SYNC_OBJECT_KHR"/>
<enum name="CL_COMMAND_ACQUIRE_EGL_OBJECTS_KHR"/>
<enum name="CL_COMMAND_RELEASE_EGL_OBJECTS_KHR"/>
</require>
<require comment="Error type for clCreateFromEGLImageKHR">
<enum name="CL_INVALID_EGL_OBJECT_KHR"/>
<enum name="CL_EGL_RESOURCE_NOT_ACQUIRED_KHR"/>
</require>
<require comment="CLeglImageKHR is an opaque handle to an EGLImage">
<type name="CLeglImageKHR"/>
</require>
<require comment="CLeglDisplayKHR is an opaque handle to an EGLDisplay">
<type name="CLeglDisplayKHR"/>
</require>
<require comment="CLeglSyncKHR is an opaque handle to an EGLSync object">
<type name="CLeglSyncKHR"/>
</require>
<require comment="properties passed to clCreateFromEGLImageKHR">
<type name="cl_egl_image_properties_khr"/>
</require>
<require>
<command name="clCreateFromEGLImageKHR"/>
<command name="clEnqueueAcquireEGLObjectsKHR"/>
<command name="clEnqueueReleaseEGLObjectsKHR"/>
</require>
</extension>
<extension name="cl_khr_egl_event" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<command name="clCreateEventFromEGLSyncKHR"/>
</require>
</extension>
<extension name="cl_khr_fp64" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="cl_device_info">
<comment>#if CL_TARGET_OPENCL_VERSION &lt;= 110 -- defined in CL.h for OpenCL &gt;= 120</comment>
<enum name="CL_DEVICE_DOUBLE_FP_CONFIG"/>
</require>
</extension>
<extension name="cl_khr_fp16" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_HALF_FP_CONFIG"/>
</require>
</extension>
<extension name="cl_APPLE_SetMemObjectDestructor" comment="not registered" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<command name="clSetMemObjectDestructorAPPLE"/>
</require>
</extension>
<extension name="cl_APPLE_ContextLoggingFunctions" comment="not registered" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<command name="clLogMessagesToSystemLogAPPLE"/>
<command name="clLogMessagesToStdoutAPPLE"/>
<command name="clLogMessagesToStderrAPPLE"/>
</require>
</extension>
<extension name="cl_khr_icd" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="cl_platform_info">
<enum name="CL_PLATFORM_ICD_SUFFIX_KHR"/>
</require>
<require comment="Error codes">
<enum name="CL_PLATFORM_NOT_FOUND_KHR"/>
</require>
<require>
<command name="clIcdGetPlatformIDsKHR"/>
</require>
</extension>
<extension name="cl_khr_il_program" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_IL_VERSION_KHR"/>
</require>
<require comment="Program Object APIs">
<enum name="CL_PROGRAM_IL_KHR"/>
<command name="clCreateProgramWithILKHR" comment="No EXT_SUFFIX?"/>
</require>
</extension>
<extension name="cl_khr_image2D_buffer" supported="opencl">
<require>
</require>
</extension>
<extension name="cl_khr_initialize_memory" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="Interop tokens">
<enum name="CL_CONTEXT_MEMORY_INITIALIZE_KHR"/>
</require>
</extension>
<extension name="cl_khr_terminate_context" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="Interop tokens">
<enum name="CL_DEVICE_TERMINATE_CAPABILITY_KHR"/>
<enum name="CL_CONTEXT_TERMINATE_KHR"/>
</require>
<require>
<command name="clTerminateContextKHR"/>
</require>
</extension>
<extension name="cl_khr_spir" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_DEVICE_SPIR_VERSIONS"/>
<enum name="CL_PROGRAM_BINARY_TYPE_INTERMEDIATE"/>
</require>
</extension>
<extension name="cl_khr_create_command_queue" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<type name="cl_queue_properties_khr"/>
</require>
<require comment="Context APIs">
<command name="clCreateCommandQueueWithPropertiesKHR"/>
</require>
</extension>
<extension name="cl_nv_device_attribute_query" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV"/>
<enum name="CL_DEVICE_COMPUTE_CAPABILITY_MINOR_NV"/>
<enum name="CL_DEVICE_REGISTERS_PER_BLOCK_NV"/>
<enum name="CL_DEVICE_WARP_SIZE_NV"/>
<enum name="CL_DEVICE_GPU_OVERLAP_NV"/>
<enum name="CL_DEVICE_KERNEL_EXEC_TIMEOUT_NV"/>
<enum name="CL_DEVICE_INTEGRATED_MEMORY_NV"/>
</require>
</extension>
<extension name="cl_amd_device_attribute_query" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_DEVICE_PROFILING_TIMER_OFFSET_AMD"/>
</require>
</extension>
<extension name="cl_arm_printf" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_PRINTF_CALLBACK_ARM"/>
<enum name="CL_PRINTF_BUFFERSIZE_ARM"/>
</require>
</extension>
<extension name="cl_ext_device_fission" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<type name="cl_device_partition_property_ext"/>
<command name="clReleaseDeviceEXT"/>
<command name="clRetainDeviceEXT"/>
<command name="clCreateSubDevicesEXT"/>
</require>
</extension>
<extension name="cl_device_partition_property_ext" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_PARTITION_EQUALLY_EXT"/>
<enum name="CL_DEVICE_PARTITION_BY_COUNTS_EXT"/>
<enum name="CL_DEVICE_PARTITION_BY_NAMES_EXT"/>
<enum name="CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN_EXT"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_PARENT_DEVICE_EXT"/>
<enum name="CL_DEVICE_PARTITION_TYPES_EXT"/>
<enum name="CL_DEVICE_AFFINITY_DOMAINS_EXT"/>
<enum name="CL_DEVICE_REFERENCE_COUNT_EXT"/>
<enum name="CL_DEVICE_PARTITION_STYLE_EXT"/>
</require>
<require comment="Error codes">
<enum name="CL_DEVICE_PARTITION_FAILED_EXT"/>
<enum name="CL_INVALID_PARTITION_COUNT_EXT"/>
<enum name="CL_INVALID_PARTITION_NAME_EXT"/>
</require>
<require comment="cl_device_affinity_domain_ext">
<enum name="CL_AFFINITY_DOMAIN_L1_CACHE_EXT"/>
<enum name="CL_AFFINITY_DOMAIN_L2_CACHE_EXT"/>
<enum name="CL_AFFINITY_DOMAIN_L3_CACHE_EXT"/>
<enum name="CL_AFFINITY_DOMAIN_L4_CACHE_EXT"/>
<enum name="CL_AFFINITY_DOMAIN_NUMA_EXT"/>
<enum name="CL_AFFINITY_DOMAIN_NEXT_FISSIONABLE_EXT"/>
</require>
<require comment="cl_device_partition_property_ext">
<enum name="CL_PROPERTIES_LIST_END_EXT"/>
<enum name="CL_PARTITION_BY_COUNTS_LIST_END_EXT"/>
<enum name="CL_PARTITION_BY_NAMES_LIST_END_EXT"/>
</require>
</extension>
<extension name="cl_ext_migrate_memobject" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="cl_device_partition_property_ext">
<type name="cl_mem_migration_flags_ext"/>
</require>
<require comment="cl_mem_migration_flags_ext">
<enum name="CL_MIGRATE_MEM_OBJECT_HOST_EXT"/>
<enum name="CL_COMMAND_MIGRATE_MEM_OBJECT_EXT"/>
</require>
<require>
<command name="clEnqueueMigrateMemObjectEXT"/>
</require>
</extension>
<extension name="cl_qcom_ext_host_ptr" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="At this point, I stopped tagging the different groups used in the extension API">
<type name="cl_mem_ext_host_ptr"/>
<enum name="CL_MEM_EXT_HOST_PTR_QCOM"/>
<enum name="CL_DEVICE_EXT_MEM_PADDING_IN_BYTES_QCOM"/>
<enum name="CL_DEVICE_PAGE_SIZE_QCOM"/>
<enum name="CL_IMAGE_ROW_ALIGNMENT_QCOM"/>
<enum name="CL_IMAGE_SLICE_ALIGNMENT_QCOM"/>
<enum name="CL_MEM_HOST_UNCACHED_QCOM"/>
<enum name="CL_MEM_HOST_WRITEBACK_QCOM"/>
<enum name="CL_MEM_HOST_WRITETHROUGH_QCOM"/>
<enum name="CL_MEM_HOST_WRITE_COMBINING_QCOM"/>
<type name="cl_image_pitch_info_qcom"/>
<command name="clGetDeviceImageInfoQCOM"/>
</require>
</extension>
<extension name="cl_qcom_ext_host_ptr_iocoherent" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_MEM_HOST_IOCOHERENT_QCOM"/>
</require>
</extension>
<extension name="cl_qcom_ion_host_ptr" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_MEM_ION_HOST_PTR_QCOM"/>
<type name="cl_mem_ion_host_ptr"/>
</require>
</extension>
<extension name="cl_qcom_android_native_buffer_host_ptr" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_MEM_ANDROID_NATIVE_BUFFER_HOST_PTR_QCOM"/>
<type name="cl_mem_android_native_buffer_host_ptr"/>
</require>
</extension>
<extension name="cl_img_yuv_image" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_NV21_IMG"/>
<enum name="CL_YV12_IMG"/>
</require>
</extension>
<extension name="cl_img_cached_allocations" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_MEM_USE_UNCACHED_CPU_MEMORY_IMG"/>
<enum name="CL_MEM_USE_CACHED_CPU_MEMORY_IMG"/>
</require>
</extension>
<extension name="ck_khr_mipmap_image" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="cl_sampler_properties">
<enum name="CL_SAMPLER_MIP_FILTER_MODE"/>
<enum name="CL_SAMPLER_LOD_MIN"/>
<enum name="CL_SAMPLER_LOD_MAX"/>
</require>
</extension>
<extension name="cl_img_use_gralloc_ptr" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="Flag values used by clCreateBuffer">
<enum name="CL_MEM_USE_GRALLOC_PTR_IMG"/>
</require>
<require comment="To be used by clGetEventInfo">
<enum name="CL_COMMAND_ACQUIRE_GRALLOC_OBJECTS_IMG"/>
<enum name="CL_COMMAND_RELEASE_GRALLOC_OBJECTS_IMG"/>
</require>
<require comment="Error codes">
<enum name="CL_GRALLOC_RESOURCE_NOT_ACQUIRED_IMG"/>
<command name="clEnqueueAcquireGrallocObjectsIMG"/>
<command name="clEnqueueReleaseGrallocObjectsIMG"/>
</require>
</extension>
<extension name="cl_khr_subgroups" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="Also defined in cl.h for OpenCL 2.1 and later - should have been a khr suffix">
<type name="cl_kernel_sub_group_info"/>
</require>
<require comment="cl_kernel_sub_group_info">
<enum name="CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE_KHR"/>
<enum name="CL_KERNEL_SUB_GROUP_COUNT_FOR_NDRANGE_KHR"/>
<command name="clGetKernelSubGroupInfoKHR"/>
</require>
</extension>
<extension name="cl_khr_priority_hints" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="To be used by clGetEventInfo">
<type name="cl_queue_priority_khr"/>
</require>
<require comment="cl_command_queue_properties">
<enum name="CL_QUEUE_PRIORITY_KHR"/>
</require>
<require comment="cl_queue_priority_khr">
<enum name="CL_QUEUE_PRIORITY_HIGH_KHR"/>
<enum name="CL_QUEUE_PRIORITY_MED_KHR"/>
<enum name="CL_QUEUE_PRIORITY_LOW_KHR"/>
</require>
</extension>
<extension name="cl_khr_throttle_hints" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="To be used by clGetEventInfo">
<type name="cl_queue_throttle_khr"/>
</require>
<require comment="cl_command_queue_properties">
<enum name="CL_QUEUE_THROTTLE_KHR"/>
</require>
<require comment="cl_queue_throttle_khr">
<enum name="CL_QUEUE_THROTTLE_HIGH_KHR"/>
<enum name="CL_QUEUE_THROTTLE_MED_KHR"/>
<enum name="CL_QUEUE_THROTTLE_LOW_KHR"/>
</require>
</extension>
<extension name="cl_khr_subgroup_named_barrier" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_MAX_NAMED_BARRIER_COUNT_KHR"/>
</require>
</extension>
<extension name="cl_arm_import_memory" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="To be used by clGetEventInfo">
<type name="cl_import_properties_arm"/>
</require>
<require comment="default and valid properties name for cl_arm_import_memory">
<enum name="CL_IMPORT_TYPE_ARM"/>
<enum name="CL_IMPORT_TYPE_HOST_ARM"/>
<enum name="CL_IMPORT_TYPE_DMA_BUF_ARM"/>
<enum name="CL_IMPORT_TYPE_PROTECTED_ARM"/>
</require>
<require>
<comment>
Allows for direct memory import into OpenCL via the clImportMemoryARM function.
Memory imported through this interface will be mapped into the device's page
tables directly, providing zero copy access. It will never fall back to copy
operations and aliased buffers.
Types of memory supported for import are specified as additional extension
strings.
This extension produces cl_mem allocations which are compatible with all other
users of cl_mem in the standard API.
This extension maps pages with the same properties as the normal buffer creation
function clCreateBuffer.
</comment>
<command name="clImportMemoryARM"/>
</require>
</extension>
<extension name="cl_arm_shared_virtual_memory" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<type name="cl_svm_mem_flags_arm"/>
<type name="cl_kernel_exec_info_arm"/>
<type name="cl_device_svm_capabilities_arm"/>
</require>
<require comment="Used by clGetEventInfo">
<enum name="CL_DEVICE_SVM_CAPABILITIES_ARM"/>
</require>
<require comment="Used by clGetMemObjectInfo">
<enum name="CL_MEM_USES_SVM_POINTER_ARM"/>
</require>
<require comment="Used by clSetKernelExecInfoARM">
<enum name="CL_KERNEL_EXEC_INFO_SVM_PTRS_ARM"/>
<enum name="CL_KERNEL_EXEC_INFO_SVM_FINE_GRAIN_SYSTEM_ARM"/>
</require>
<require comment="Used by clGetEventInfo">
<enum name="CL_COMMAND_SVM_FREE_ARM"/>
<enum name="CL_COMMAND_SVM_MEMCPY_ARM"/>
<enum name="CL_COMMAND_SVM_MEMFILL_ARM"/>
<enum name="CL_COMMAND_SVM_MAP_ARM"/>
<enum name="CL_COMMAND_SVM_UNMAP_ARM"/>
</require>
<require comment="Returned by clGetDeviceInfo with CL_DEVICE_SVM_CAPABILITIES_ARM">
<enum name="CL_DEVICE_SVM_COARSE_GRAIN_BUFFER_ARM"/>
<enum name="CL_DEVICE_SVM_FINE_GRAIN_BUFFER_ARM"/>
<enum name="CL_DEVICE_SVM_FINE_GRAIN_SYSTEM_ARM"/>
<enum name="CL_DEVICE_SVM_ATOMICS_ARM"/>
</require>
<require comment="Flag values used by clSVMAllocARM">
<enum name="CL_MEM_SVM_FINE_GRAIN_BUFFER_ARM"/>
<enum name="CL_MEM_SVM_ATOMICS_ARM"/>
</require>
<require>
<command name="clSVMAllocARM"/>
<command name="clSVMFreeARM"/>
<command name="clEnqueueSVMFreeARM"/>
<command name="clEnqueueSVMMemcpyARM"/>
<command name="clEnqueueSVMMemFillARM"/>
<command name="clEnqueueSVMMapARM"/>
<command name="clEnqueueSVMUnmapARM"/>
<command name="clSetKernelArgSVMPointerARM"/>
<command name="clSetKernelExecInfoARM"/>
</require>
</extension>
<extension name="cl_arm_get_core_id" requires="CL_VERSION_1_2" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require comment="cl_device_info">
<enum name="CL_DEVICE_COMPUTE_UNITS_BITFIELD_ARM"/>
</require>
</extension>
<extension name="cl_intel_thread_local_exec" supported="opencl">
<require>
<type name="CL/cl.h"/>
<type name="CL/cl_platform.h"/>
</require>
<require>
<enum name="CL_QUEUE_THREAD_LOCAL_EXEC_ENABLE_INTEL"/>
</require>
</extension>
<extension name="cl_intel_device_partition_by_names" supported="opencl">
<require>
<enum name="CL_DEVICE_PARTITION_BY_NAMES_INTEL"/>
<enum name="CL_PARTITION_BY_NAMES_LIST_END_INTEL"/>
</require>
</extension>
<extension name="cl_intel_accelerator" supported="opencl">
<require>
<type name="cl_accelerator_intel"/>
<type name="cl_accelerator_type_intel"/>
<type name="cl_accelerator_info_intel"/>
</require>
<require comment="cl_accelerator_info_intel">
<enum name="CL_ACCELERATOR_DESCRIPTOR_INTEL"/>
<enum name="CL_ACCELERATOR_REFERENCE_COUNT_INTEL"/>
<enum name="CL_ACCELERATOR_CONTEXT_INTEL"/>
<enum name="CL_ACCELERATOR_TYPE_INTEL"/>
</require>
<require comment="error codes">
<enum name="CL_INVALID_ACCELERATOR_INTEL"/>
<enum name="CL_INVALID_ACCELERATOR_TYPE_INTEL"/>
<enum name="CL_INVALID_ACCELERATOR_DESCRIPTOR_INTEL"/>
<enum name="CL_ACCELERATOR_TYPE_NOT_SUPPORTED_INTEL"/>
</require>
<require>
<command name="clCreateAcceleratorINTEL"/>
<command name="clGetAcceleratorInfoINTEL"/>
<command name="clRetainAcceleratorINTEL"/>
<command name="clReleaseAcceleratorINTEL"/>
</require>
</extension>
<extension name="cl_intel_motion_estimation" supported="opencl">
<require>
<type name="cl_motion_estimation_desc_intel"/>
</require>
<require comment="cl_accelerator_type_intel">
<enum name="CL_ACCELERATOR_TYPE_MOTION_ESTIMATION_INTEL"/>
</require>
<require comment="cl_motion_detect_desc_intel flags">
<enum name="CL_ME_MB_TYPE_16x16_INTEL"/>
<enum name="CL_ME_MB_TYPE_8x8_INTEL"/>
<enum name="CL_ME_MB_TYPE_4x4_INTEL"/>
<enum name="CL_ME_SUBPIXEL_MODE_INTEGER_INTEL"/>
<enum name="CL_ME_SUBPIXEL_MODE_HPEL_INTEL"/>
<enum name="CL_ME_SUBPIXEL_MODE_QPEL_INTEL"/>
<enum name="CL_ME_SAD_ADJUST_MODE_NONE_INTEL"/>
<enum name="CL_ME_SAD_ADJUST_MODE_HAAR_INTEL"/>
<enum name="CL_ME_SEARCH_PATH_RADIUS_2_2_INTEL"/>
<enum name="CL_ME_SEARCH_PATH_RADIUS_4_4_INTEL"/>
<enum name="CL_ME_SEARCH_PATH_RADIUS_16_12_INTEL"/>
</require>
</extension>
<extension name="cl_intel_advanced_motion_estimation" supported="opencl">
<require comment="cl_device_info">
<enum name="CL_DEVICE_ME_VERSION_INTEL"/>
</require>
<require>
<enum name="CL_ME_SKIP_BLOCK_TYPE_16x16_INTEL"/>
<enum name="CL_ME_CHROMA_INTRA_PREDICT_ENABLED_INTEL"/>
<enum name="CL_ME_LUMA_INTRA_PREDICT_ENABLED_INTEL"/>
<enum name="CL_ME_SKIP_BLOCK_TYPE_8x8_INTEL"/>
<enum name="CL_ME_COST_PENALTY_NONE_INTEL"/>
<enum name="CL_ME_COST_PENALTY_LOW_INTEL"/>
<enum name="CL_ME_COST_PENALTY_NORMAL_INTEL"/>
<enum name="CL_ME_COST_PENALTY_HIGH_INTEL"/>
<enum name="CL_ME_COST_PRECISION_QPEL_INTEL"/>
<enum name="CL_ME_COST_PRECISION_HPEL_INTEL"/>
<enum name="CL_ME_COST_PRECISION_PEL_INTEL"/>
<enum name="CL_ME_COST_PRECISION_DPEL_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_DC_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_LEFT_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_RIGHT_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_PLANE_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_RIGHT_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_DOWN_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_LEFT_INTEL"/>
<enum name="CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_UP_INTEL"/>
<enum name="CL_ME_CHROMA_PREDICTOR_MODE_DC_INTEL"/>
<enum name="CL_ME_CHROMA_PREDICTOR_MODE_HORIZONTAL_INTEL"/>
<enum name="CL_ME_CHROMA_PREDICTOR_MODE_VERTICAL_INTEL"/>
<enum name="CL_ME_CHROMA_PREDICTOR_MODE_PLANE_INTEL"/>
<enum name="CL_ME_VERSION_LEGACY_INTEL"/>
<enum name="CL_ME_VERSION_ADVANCED_VER_1_INTEL"/>
<enum name="CL_ME_VERSION_ADVANCED_VER_2_INTEL"/>
</require>
<require comment="cl_motion_detect_desc_intel flags (duplicated above)">
<enum name="CL_ME_MB_TYPE_16x16_INTEL"/>
<enum name="CL_ME_MB_TYPE_8x8_INTEL"/>
<enum name="CL_ME_MB_TYPE_4x4_INTEL"/>
<enum name="CL_ME_FORWARD_INPUT_MODE_INTEL"/>
<enum name="CL_ME_BACKWARD_INPUT_MODE_INTEL"/>
<enum name="CL_ME_BIDIRECTION_INPUT_MODE_INTEL"/>
<enum name="CL_ME_BIDIR_WEIGHT_QUARTER_INTEL"/>
<enum name="CL_ME_BIDIR_WEIGHT_THIRD_INTEL"/>
<enum name="CL_ME_BIDIR_WEIGHT_HALF_INTEL"/>
<enum name="CL_ME_BIDIR_WEIGHT_TWO_THIRD_INTEL"/>
<enum name="CL_ME_BIDIR_WEIGHT_THREE_QUARTER_INTEL"/>
</require>
</extension>
<extension name="cl_intel_simultaneous_sharing" supported="opencl">
<require>
<enum name="CL_DEVICE_SIMULTANEOUS_INTEROPS_INTEL"/>
<enum name="CL_DEVICE_NUM_SIMULTANEOUS_INTEROPS_INTEL"/>
</require>
</extension>
<extension name="cl_intel_egl_image_yuv" supported="opencl">
<require>
<enum name="CL_EGL_YUV_PLANE_INTEL"/>
</require>
</extension>
<extension name="cl_intel_packed_yuv" supported="opencl">
<require>
<enum name="CL_YUYV_INTEL"/>
<enum name="CL_UYVY_INTEL"/>
<enum name="CL_YVYU_INTEL"/>
<enum name="CL_VYUY_INTEL"/>
</require>
</extension>
<extension name="cl_intel_required_subgroup_size" supported="opencl">
<require>
<enum name="CL_DEVICE_SUB_GROUP_SIZES_INTEL"/>
<enum name="CL_KERNEL_SPILL_MEM_SIZE_INTEL"/>
<enum name="CL_KERNEL_COMPILE_SUB_GROUP_SIZE_INTEL"/>
</require>
</extension>
<extension name="cl_intel_driver_diagnostics" supported="opencl">
<require>
<type name="cl_diagnostics_verbose_level"/>
<enum name="CL_CONTEXT_SHOW_DIAGNOSTICS_INTEL"/>
<enum name="CL_CONTEXT_DIAGNOSTICS_LEVEL_ALL_INTEL"/>
<enum name="CL_CONTEXT_DIAGNOSTICS_LEVEL_GOOD_INTEL"/>
<enum name="CL_CONTEXT_DIAGNOSTICS_LEVEL_BAD_INTEL"/>
<enum name="CL_CONTEXT_DIAGNOSTICS_LEVEL_NEUTRAL_INTEL"/>
</require>
</extension>
<extension name="cl_intel_planar_yuv" supported="opencl">
<require>
<enum name="CL_NV12_INTEL"/>
<enum name="CL_MEM_NO_ACCESS_INTEL"/>
<enum name="CL_MEM_ACCESS_FLAGS_UNRESTRICTED_INTEL"/>
<enum name="CL_DEVICE_PLANAR_YUV_MAX_WIDTH_INTEL"/>
<enum name="CL_DEVICE_PLANAR_YUV_MAX_HEIGHT_INTEL"/>
</require>
</extension>
<extension name="cl_intel_device_side_avc_motion_estimation" supported="opencl">
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_DEVICE_AVC_ME_VERSION_INTEL"/>
<enum name="CL_DEVICE_AVC_ME_SUPPORTS_TEXTURE_SAMPLER_USE_INTEL"/>
<enum name="CL_DEVICE_AVC_ME_SUPPORTS_PREEMPTION_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_VERSION_0_INTEL"/>
<enum name="CL_AVC_ME_VERSION_1_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_MAJOR_16x16_INTEL"/>
<enum name="CL_AVC_ME_MAJOR_16x8_INTEL"/>
<enum name="CL_AVC_ME_MAJOR_8x16_INTEL"/>
<enum name="CL_AVC_ME_MAJOR_8x8_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_MINOR_8x8_INTEL"/>
<enum name="CL_AVC_ME_MINOR_8x4_INTEL"/>
<enum name="CL_AVC_ME_MINOR_4x8_INTEL"/>
<enum name="CL_AVC_ME_MINOR_4x4_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_MAJOR_FORWARD_INTEL"/>
<enum name="CL_AVC_ME_MAJOR_BACKWARD_INTEL"/>
<enum name="CL_AVC_ME_MAJOR_BIDIRECTIONAL_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_PARTITION_MASK_ALL_INTEL"/>
<enum name="CL_AVC_ME_PARTITION_MASK_16x16_INTEL"/>
<enum name="CL_AVC_ME_PARTITION_MASK_16x8_INTEL"/>
<enum name="CL_AVC_ME_PARTITION_MASK_8x16_INTEL"/>
<enum name="CL_AVC_ME_PARTITION_MASK_8x8_INTEL"/>
<enum name="CL_AVC_ME_PARTITION_MASK_8x4_INTEL"/>
<enum name="CL_AVC_ME_PARTITION_MASK_4x8_INTEL"/>
<enum name="CL_AVC_ME_PARTITION_MASK_4x4_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_SEARCH_WINDOW_EXHAUSTIVE_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_SMALL_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_TINY_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_EXTRA_TINY_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_DIAMOND_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_LARGE_DIAMOND_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_RESERVED0_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_RESERVED1_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_CUSTOM_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_16x12_RADIUS_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_4x4_RADIUS_INTEL"/>
<enum name="CL_AVC_ME_SEARCH_WINDOW_2x2_RADIUS_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_SAD_ADJUST_MODE_NONE_INTEL"/>
<enum name="CL_AVC_ME_SAD_ADJUST_MODE_HAAR_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_SUBPIXEL_MODE_INTEGER_INTEL"/>
<enum name="CL_AVC_ME_SUBPIXEL_MODE_HPEL_INTEL"/>
<enum name="CL_AVC_ME_SUBPIXEL_MODE_QPEL_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_COST_PRECISION_QPEL_INTEL"/>
<enum name="CL_AVC_ME_COST_PRECISION_HPEL_INTEL"/>
<enum name="CL_AVC_ME_COST_PRECISION_PEL_INTEL"/>
<enum name="CL_AVC_ME_COST_PRECISION_DPEL_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_BIDIR_WEIGHT_QUARTER_INTEL"/>
<enum name="CL_AVC_ME_BIDIR_WEIGHT_THIRD_INTEL"/>
<enum name="CL_AVC_ME_BIDIR_WEIGHT_HALF_INTEL"/>
<enum name="CL_AVC_ME_BIDIR_WEIGHT_TWO_THIRD_INTEL"/>
<enum name="CL_AVC_ME_BIDIR_WEIGHT_THREE_QUARTER_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_BORDER_REACHED_LEFT_INTEL"/>
<enum name="CL_AVC_ME_BORDER_REACHED_RIGHT_INTEL"/>
<enum name="CL_AVC_ME_BORDER_REACHED_TOP_INTEL"/>
<enum name="CL_AVC_ME_BORDER_REACHED_BOTTOM_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_SKIP_BLOCK_PARTITION_16x16_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_PARTITION_8x8_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_SKIP_BLOCK_16x16_FORWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_16x16_BACKWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_16x16_DUAL_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_FORWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_BACKWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_DUAL_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_0_FORWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_0_BACKWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_1_FORWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_1_BACKWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_2_FORWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_2_BACKWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_3_FORWARD_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_SKIP_BLOCK_8x8_3_BACKWARD_ENABLE_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_BLOCK_BASED_SKIP_4x4_INTEL"/>
<enum name="CL_AVC_ME_BLOCK_BASED_SKIP_8x8_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_INTRA_16x16_INTEL"/>
<enum name="CL_AVC_ME_INTRA_8x8_INTEL"/>
<enum name="CL_AVC_ME_INTRA_4x4_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_16x16_INTEL"/>
<enum name="CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_8x8_INTEL"/>
<enum name="CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_4x4_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_INTRA_NEIGHBOR_LEFT_MASK_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_INTRA_NEIGHBOR_UPPER_MASK_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_INTRA_NEIGHBOR_UPPER_RIGHT_MASK_ENABLE_INTEL"/>
<enum name="CL_AVC_ME_INTRA_NEIGHBOR_UPPER_LEFT_MASK_ENABLE_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_INTEL"/>
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_INTEL"/>
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_DC_INTEL"/>
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_LEFT_INTEL"/>
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_RIGHT_INTEL"/>
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_PLANE_INTEL"/>
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_RIGHT_INTEL"/>
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_DOWN_INTEL"/>
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_LEFT_INTEL"/>
<enum name="CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_UP_INTEL"/>
<enum name="CL_AVC_ME_CHROMA_PREDICTOR_MODE_DC_INTEL"/>
<enum name="CL_AVC_ME_CHROMA_PREDICTOR_MODE_HORIZONTAL_INTEL"/>
<enum name="CL_AVC_ME_CHROMA_PREDICTOR_MODE_VERTICAL_INTEL"/>
<enum name="CL_AVC_ME_CHROMA_PREDICTOR_MODE_PLANE_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_FRAME_FORWARD_INTEL"/>
<enum name="CL_AVC_ME_FRAME_BACKWARD_INTEL"/>
<enum name="CL_AVC_ME_FRAME_DUAL_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_SLICE_TYPE_PRED_INTEL"/>
<enum name="CL_AVC_ME_SLICE_TYPE_BPRED_INTEL"/>
<enum name="CL_AVC_ME_SLICE_TYPE_INTRA_INTEL"/>
</require>
<require comment="cl_intel_device_side_avc_motion_estimation.??">
<enum name="CL_AVC_ME_INTERLACED_SCAN_TOP_FIELD_INTEL"/>
<enum name="CL_AVC_ME_INTERLACED_SCAN_BOTTOM_FIELD_INTEL"/>
</require>
</extension>
<extension name="cl_khr_gl_event" supported="opencl">
<require>
<type name="CL/cl_gl.h"/>
<type name="cl_GLsync"/>
</require>
<require>
<enum name="CL_COMMAND_GL_FENCE_SYNC_OBJECT_KHR"/>
</require>
<require>
<command name="clCreateEventFromGLsyncKHR"/>
</require>
</extension>
<extension name="cl_intel_va_api_media_sharing" supported="opencl">
<require>
<type name="CL/cl.h"/>
<type name="CL/cl_platform.h"/>
<type name="va/va.h"/>
<type name="cl_va_api_device_source_intel"/>
<type name="cl_va_api_device_set_intel"/>
</require>
<require comment="Error codes">
<enum name="CL_INVALID_VA_API_MEDIA_ADAPTER_INTEL"/>
<enum name="CL_INVALID_VA_API_MEDIA_SURFACE_INTEL"/>
<enum name="CL_VA_API_MEDIA_SURFACE_ALREADY_ACQUIRED_INTEL"/>
<enum name="CL_VA_API_MEDIA_SURFACE_NOT_ACQUIRED_INTEL"/>
</require>
<require comment="cl_va_api_device_source_intel">
<enum name="CL_VA_API_DISPLAY_INTEL"/>
</require>
<require comment="cl_va_api_device_set_intel">
<enum name="CL_PREFERRED_DEVICES_FOR_VA_API_INTEL"/>
<enum name="CL_ALL_DEVICES_FOR_VA_API_INTEL"/>
</require>
<require comment="cl_context_info">
<enum name="CL_CONTEXT_VA_API_DISPLAY_INTEL"/>
</require>
<require comment="cl_mem_info">
<enum name="CL_MEM_VA_API_MEDIA_SURFACE_INTEL"/>
</require>
<require comment="cl_image_info">
<enum name="CL_IMAGE_VA_API_PLANE_INTEL"/>
</require>
<require comment="cl_command_type">
<enum name="CL_COMMAND_ACQUIRE_VA_API_MEDIA_SURFACES_INTEL"/>
<enum name="CL_COMMAND_RELEASE_VA_API_MEDIA_SURFACES_INTEL"/>
</require>
<require>
<command name="clGetDeviceIDsFromVA_APIMediaAdapterINTEL"/>
<command name="clCreateFromVA_APIMediaSurfaceINTEL"/>
<command name="clEnqueueAcquireVA_APIMediaSurfacesINTEL"/>
<command name="clEnqueueReleaseVA_APIMediaSurfacesINTEL"/>
</require>
</extension>
<extension name="cl_intel_dx9_media_sharing" supported="opencl">
<require>
<type name="CL/cl.h"/>
<type name="CL/cl_platform.h"/>
<type name="d3d9.h"/>
<type name="dxvahd.h"/>
<type name="wtypes.h"/>
<type name="d3d9types.h"/>
<type name="cl_dx9_device_source_intel"/>
<type name="cl_dx9_device_set_intel"/>
</require>
<require comment="Error codes">
<enum name="CL_INVALID_DX9_DEVICE_INTEL"/>
<enum name="CL_INVALID_DX9_RESOURCE_INTEL"/>
<enum name="CL_DX9_RESOURCE_ALREADY_ACQUIRED_INTEL"/>
<enum name="CL_DX9_RESOURCE_NOT_ACQUIRED_INTEL"/>
</require>
<require comment="cl_dx9_device_source_intel">
<enum name="CL_D3D9_DEVICE_INTEL"/>
<enum name="CL_D3D9EX_DEVICE_INTEL"/>
<enum name="CL_DXVA_DEVICE_INTEL"/>
</require>
<require comment="cl_dx9_device_set_intel">
<enum name="CL_PREFERRED_DEVICES_FOR_DX9_INTEL"/>
<enum name="CL_ALL_DEVICES_FOR_DX9_INTEL"/>
</require>
<require comment="cl_context_info">
<enum name="CL_CONTEXT_D3D9_DEVICE_INTEL"/>
<enum name="CL_CONTEXT_D3D9EX_DEVICE_INTEL"/>
<enum name="CL_CONTEXT_DXVA_DEVICE_INTEL"/>
</require>
<require comment="cl_mem_info">
<enum name="CL_MEM_DX9_RESOURCE_INTEL"/>
<enum name="CL_MEM_DX9_SHARED_HANDLE_INTEL"/>
</require>
<require comment="cl_image_info">
<enum name="CL_IMAGE_DX9_PLANE_INTEL"/>
</require>
<require comment="cl_command_type">
<enum name="CL_COMMAND_ACQUIRE_DX9_OBJECTS_INTEL"/>
<enum name="CL_COMMAND_RELEASE_DX9_OBJECTS_INTEL"/>
</require>
<require>
<command name="clGetDeviceIDsFromDX9INTEL"/>
<command name="clCreateFromDX9MediaSurfaceINTEL"/>
<command name="clEnqueueAcquireDX9ObjectsINTEL"/>
<command name="clEnqueueReleaseDX9ObjectsINTEL"/>
</require>
</extension>
<extension name="cl_khr_gl_depth_images" requires="cl_khr_gl_sharing" comment="no API - reuses tokens from core API" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<enum name="CL_DEPTH_STENCIL"/>
<enum name="CL_UNORM_INT24"/>
<enum name="CL_FLOAT"/>
</require>
</extension>
<extension name="cl_khr_gl_msaa_sharing" requires="cl_khr_gl_depth_images" comment="no API - reuses tokens from core API" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<!-- <enum name="GL_TEXTURE_2D_MULTISAMPLE"/> -->
<!-- <enum name="GL_TEXTURE_2D_MULTISAMPLE_ARRAY"/> -->
<enum name="CL_GL_NUM_SAMPLES"/>
</require>
</extension>
<extension name="cl_khr_gl_sharing" supported="opencl">
<require>
<type name="CL/cl.h"/>
</require>
<require>
<type name="cl_gl_context_info"/>
</require>
<require comment="Error codes">
<enum name="CL_INVALID_GL_SHAREGROUP_REFERENCE_KHR"/>
</require>
<require comment="cl_gl_context_info">
<enum name="CL_CURRENT_DEVICE_FOR_GL_CONTEXT_KHR"/>
<enum name="CL_DEVICES_FOR_GL_CONTEXT_KHR"/>
</require>
<require comment="Additional cl_context_properties">
<enum name="CL_GL_CONTEXT_KHR"/>
<enum name="CL_EGL_DISPLAY_KHR"/>
<enum name="CL_GLX_DISPLAY_KHR"/>
<enum name="CL_WGL_HDC_KHR"/>
<enum name="CL_CGL_SHAREGROUP_KHR"/>
</require>
<require>
<command name="clGetGLContextInfoKHR"/>
</require>
<require comment="Mislabelled as cl_khr_gl_sharing__memobjs in header">
<type name="CL/cl.h"/>
</require>
<require>
<type name="cl_gl_object_type"/>
<type name="cl_gl_texture_info"/>
<type name="cl_gl_platform_info" comment="Unused"/>
</require>
<require comment="cl_gl_object_type">
<enum name="CL_GL_OBJECT_BUFFER"/>
<enum name="CL_GL_OBJECT_TEXTURE2D"/>
<enum name="CL_GL_OBJECT_TEXTURE3D"/>
<enum name="CL_GL_OBJECT_RENDERBUFFER"/>
</require>
<require feature="CL_VERSION_1_2">
<enum name="CL_GL_OBJECT_TEXTURE2D_ARRAY"/>
<enum name="CL_GL_OBJECT_TEXTURE1D"/>
<enum name="CL_GL_OBJECT_TEXTURE1D_ARRAY"/>
<enum name="CL_GL_OBJECT_TEXTURE_BUFFER"/>
</require>
<require comment="cl_gl_texture_info">
<enum name="CL_GL_TEXTURE_TARGET"/>
<enum name="CL_GL_MIPMAP_LEVEL"/>
</require>
<require feature="CL_VERSION_1_2">
<enum name="CL_GL_NUM_SAMPLES"/>
</require>
<require>
<enum name="CL_INVALID_GL_OBJECT"/>
<enum name="CL_INVALID_MIP_LEVEL"/>
</require>
<require>
<command name="clCreateFromGLBuffer"/>
</require>
<require feature="CL_VERSION_1_2">
<command name="clCreateFromGLTexture"/>
</require>
<require comment="OpenCL 1.0 APIs that were deprecated in OpenCL 1.2">
<command name="clCreateFromGLTexture2D"/>
<command name="clCreateFromGLTexture3D"/>
</require>
<require>
<command name="clCreateFromGLRenderbuffer"/>
<command name="clGetGLObjectInfo"/>
<command name="clGetGLTextureInfo"/>
<command name="clEnqueueAcquireGLObjects"/>
<command name="clEnqueueReleaseGLObjects"/>
</require>
</extension>
</extensions>
</registry>