mirror of
https://gitee.com/openharmony/third_party_opencl-headers
synced 2024-11-22 22:51:18 +00:00
update opencl header version to v2022.05.18
Signed-off-by: lengyang3 <lengyang3@hisilicon.com>
This commit is contained in:
parent
e10eed7e1b
commit
1b3af3f750
8
BUILD.gn
8
BUILD.gn
@ -40,6 +40,14 @@ ohos_shared_library("libcl") {
|
||||
subsystem_name = "thirdparty"
|
||||
}
|
||||
|
||||
config("opencl_headers_public_config") {
|
||||
include_dirs = ["./"]
|
||||
}
|
||||
|
||||
source_set("opencl_headers") {
|
||||
public_configs = [ ":opencl_headers_public_config"]
|
||||
}
|
||||
|
||||
group("cl_tests") {
|
||||
deps = [ "tests:tests" ]
|
||||
}
|
||||
|
53
CL/cl.h
53
CL/cl.h
@ -141,6 +141,10 @@ typedef struct _cl_image_desc {
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 ) /* Prevents warning about nameless struct/union in /W4 builds */
|
||||
#endif
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wc11-extensions" /* Prevents warning about nameless union being C11 extension*/
|
||||
#endif
|
||||
#if defined(_MSC_VER) && defined(__STDC__)
|
||||
/* Anonymous unions are not supported in /Za builds */
|
||||
#else
|
||||
@ -158,6 +162,9 @@ typedef struct _cl_image_desc {
|
||||
#if defined(_MSC_VER) && !defined(__STDC__)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic pop
|
||||
#endif
|
||||
#endif
|
||||
} cl_image_desc;
|
||||
|
||||
@ -1311,11 +1318,11 @@ clLinkProgram(cl_context context,
|
||||
|
||||
#ifdef CL_VERSION_2_2
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_2_2_DEPRECATED cl_int CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_2_2_DEPRECATED cl_int CL_API_CALL
|
||||
clSetProgramReleaseCallback(cl_program program,
|
||||
void (CL_CALLBACK * pfn_notify)(cl_program program,
|
||||
void * user_data),
|
||||
void * user_data) CL_EXT_SUFFIX__VERSION_2_2_DEPRECATED;
|
||||
void * user_data) CL_API_SUFFIX__VERSION_2_2_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clSetProgramSpecializationConstant(cl_program program,
|
||||
@ -1857,11 +1864,11 @@ clGetExtensionFunctionAddressForPlatform(cl_platform_id platform,
|
||||
clSetCommandQueueProperty(cl_command_queue command_queue,
|
||||
cl_command_queue_properties properties,
|
||||
cl_bool enable,
|
||||
cl_command_queue_properties * old_properties) CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED;
|
||||
cl_command_queue_properties * old_properties) CL_API_SUFFIX__VERSION_1_0_DEPRECATED;
|
||||
#endif /* CL_USE_DEPRECATED_OPENCL_1_0_APIS */
|
||||
|
||||
/* Deprecated OpenCL 1.1 APIs */
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
clCreateImage2D(cl_context context,
|
||||
cl_mem_flags flags,
|
||||
const cl_image_format * image_format,
|
||||
@ -1869,9 +1876,9 @@ clCreateImage2D(cl_context context,
|
||||
size_t image_height,
|
||||
size_t image_row_pitch,
|
||||
void * host_ptr,
|
||||
cl_int * errcode_ret) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
clCreateImage3D(cl_context context,
|
||||
cl_mem_flags flags,
|
||||
const cl_image_format * image_format,
|
||||
@ -1881,46 +1888,46 @@ clCreateImage3D(cl_context context,
|
||||
size_t image_row_pitch,
|
||||
size_t image_slice_pitch,
|
||||
void * host_ptr,
|
||||
cl_int * errcode_ret) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clEnqueueMarker(cl_command_queue command_queue,
|
||||
cl_event * event) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clEnqueueWaitForEvents(cl_command_queue command_queue,
|
||||
cl_uint num_events,
|
||||
const cl_event * event_list) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
const cl_event * event_list) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clEnqueueBarrier(cl_command_queue command_queue) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clEnqueueBarrier(cl_command_queue command_queue) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clUnloadCompiler(void) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clUnloadCompiler(void) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED void * CL_API_CALL
|
||||
clGetExtensionFunctionAddress(const char * func_name) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_1_DEPRECATED void * CL_API_CALL
|
||||
clGetExtensionFunctionAddress(const char * func_name) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
/* Deprecated OpenCL 2.0 APIs */
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_2_DEPRECATED cl_command_queue CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_2_DEPRECATED cl_command_queue CL_API_CALL
|
||||
clCreateCommandQueue(cl_context context,
|
||||
cl_device_id device,
|
||||
cl_command_queue_properties properties,
|
||||
cl_int * errcode_ret) CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED;
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_2_DEPRECATED cl_sampler CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_2_DEPRECATED cl_sampler CL_API_CALL
|
||||
clCreateSampler(cl_context context,
|
||||
cl_bool normalized_coords,
|
||||
cl_addressing_mode addressing_mode,
|
||||
cl_filter_mode filter_mode,
|
||||
cl_int * errcode_ret) CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED;
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_2_DEPRECATED cl_int CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_2_DEPRECATED cl_int CL_API_CALL
|
||||
clEnqueueTask(cl_command_queue command_queue,
|
||||
cl_kernel kernel,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED;
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_2_DEPRECATED;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -21,6 +21,7 @@
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 )
|
||||
#pragma warning( disable : 5105 )
|
||||
#endif
|
||||
#endif
|
||||
#include <d3d10.h>
|
||||
@ -75,7 +76,7 @@ typedef cl_uint cl_d3d10_device_set_khr;
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetDeviceIDsFromD3D10KHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clGetDeviceIDsFromD3D10KHR_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_d3d10_device_source_khr d3d_device_source,
|
||||
void * d3d_object,
|
||||
@ -84,27 +85,27 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetDeviceIDsFromD3D10KHR_fn)(
|
||||
cl_device_id * devices,
|
||||
cl_uint * num_devices) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D10BufferKHR_fn)(
|
||||
typedef cl_mem (CL_API_CALL *clCreateFromD3D10BufferKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Buffer * resource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D10Texture2DKHR_fn)(
|
||||
typedef cl_mem (CL_API_CALL *clCreateFromD3D10Texture2DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Texture2D * resource,
|
||||
UINT subresource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D10Texture3DKHR_fn)(
|
||||
typedef cl_mem (CL_API_CALL *clCreateFromD3D10Texture3DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Texture3D * resource,
|
||||
UINT subresource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireD3D10ObjectsKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueAcquireD3D10ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
@ -112,7 +113,7 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireD3D10ObjectsKHR_fn)(
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseD3D10ObjectsKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueReleaseD3D10ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
@ -120,6 +121,31 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseD3D10ObjectsKHR_fn)(
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_d3d10
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_d3d10 1
|
||||
|
||||
/* when cl_khr_d3d10_sharing is supported */
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedD3D10TextureFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint num_entries,
|
||||
DXGI_FORMAT* d3d10_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedD3D10TextureFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint num_entries,
|
||||
DXGI_FORMAT* d3d10_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
@ -21,6 +21,7 @@
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 )
|
||||
#pragma warning( disable : 5105 )
|
||||
#endif
|
||||
#endif
|
||||
#include <d3d11.h>
|
||||
@ -75,7 +76,7 @@ typedef cl_uint cl_d3d11_device_set_khr;
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetDeviceIDsFromD3D11KHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clGetDeviceIDsFromD3D11KHR_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_d3d11_device_source_khr d3d_device_source,
|
||||
void * d3d_object,
|
||||
@ -84,27 +85,27 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetDeviceIDsFromD3D11KHR_fn)(
|
||||
cl_device_id * devices,
|
||||
cl_uint * num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D11BufferKHR_fn)(
|
||||
typedef cl_mem (CL_API_CALL *clCreateFromD3D11BufferKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Buffer * resource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D11Texture2DKHR_fn)(
|
||||
typedef cl_mem (CL_API_CALL *clCreateFromD3D11Texture2DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Texture2D * resource,
|
||||
UINT subresource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D11Texture3DKHR_fn)(
|
||||
typedef cl_mem (CL_API_CALL *clCreateFromD3D11Texture3DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Texture3D * resource,
|
||||
UINT subresource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireD3D11ObjectsKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueAcquireD3D11ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
@ -112,7 +113,7 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireD3D11ObjectsKHR_fn)(
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseD3D11ObjectsKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueReleaseD3D11ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
@ -120,6 +121,33 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseD3D11ObjectsKHR_fn)(
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_d3d11
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_d3d11 1
|
||||
|
||||
/* when cl_khr_d3d11_sharing is supported */
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedD3D11TextureFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
DXGI_FORMAT* d3d11_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedD3D11TextureFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
DXGI_FORMAT* d3d11_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
@ -32,7 +32,19 @@ typedef cl_uint cl_dx9_media_adapter_type_khr;
|
||||
typedef cl_uint cl_dx9_media_adapter_set_khr;
|
||||
|
||||
#if defined(_WIN32)
|
||||
#if defined(_MSC_VER)
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 )
|
||||
#pragma warning( disable : 5105 )
|
||||
#endif
|
||||
#endif
|
||||
#include <d3d9.h>
|
||||
#if defined(_MSC_VER)
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
#endif
|
||||
typedef struct _cl_dx9_surface_info_khr
|
||||
{
|
||||
IDirect3DSurface9 *resource;
|
||||
@ -76,7 +88,7 @@ typedef struct _cl_dx9_surface_info_khr
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetDeviceIDsFromDX9MediaAdapterKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clGetDeviceIDsFromDX9MediaAdapterKHR_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_uint num_media_adapters,
|
||||
cl_dx9_media_adapter_type_khr * media_adapter_type,
|
||||
@ -86,7 +98,7 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetDeviceIDsFromDX9MediaAdapterKHR_f
|
||||
cl_device_id * devices,
|
||||
cl_uint * num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromDX9MediaSurfaceKHR_fn)(
|
||||
typedef cl_mem (CL_API_CALL *clCreateFromDX9MediaSurfaceKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_dx9_media_adapter_type_khr adapter_type,
|
||||
@ -94,7 +106,7 @@ typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromDX9MediaSurfaceKHR_fn)(
|
||||
cl_uint plane,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireDX9MediaSurfacesKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueAcquireDX9MediaSurfacesKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
@ -102,7 +114,7 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireDX9MediaSurfacesKHR_fn
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseDX9MediaSurfacesKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueReleaseDX9MediaSurfacesKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
@ -110,6 +122,144 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseDX9MediaSurfacesKHR_fn
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
/***************************************
|
||||
* cl_intel_dx9_media_sharing extension *
|
||||
****************************************/
|
||||
|
||||
#define cl_intel_dx9_media_sharing 1
|
||||
|
||||
typedef cl_uint cl_dx9_device_source_intel;
|
||||
typedef cl_uint cl_dx9_device_set_intel;
|
||||
|
||||
/* error codes */
|
||||
#define CL_INVALID_DX9_DEVICE_INTEL -1010
|
||||
#define CL_INVALID_DX9_RESOURCE_INTEL -1011
|
||||
#define CL_DX9_RESOURCE_ALREADY_ACQUIRED_INTEL -1012
|
||||
#define CL_DX9_RESOURCE_NOT_ACQUIRED_INTEL -1013
|
||||
|
||||
/* cl_dx9_device_source_intel */
|
||||
#define CL_D3D9_DEVICE_INTEL 0x4022
|
||||
#define CL_D3D9EX_DEVICE_INTEL 0x4070
|
||||
#define CL_DXVA_DEVICE_INTEL 0x4071
|
||||
|
||||
/* cl_dx9_device_set_intel */
|
||||
#define CL_PREFERRED_DEVICES_FOR_DX9_INTEL 0x4024
|
||||
#define CL_ALL_DEVICES_FOR_DX9_INTEL 0x4025
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_D3D9_DEVICE_INTEL 0x4026
|
||||
#define CL_CONTEXT_D3D9EX_DEVICE_INTEL 0x4072
|
||||
#define CL_CONTEXT_DXVA_DEVICE_INTEL 0x4073
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_DX9_RESOURCE_INTEL 0x4027
|
||||
#define CL_MEM_DX9_SHARED_HANDLE_INTEL 0x4074
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_DX9_PLANE_INTEL 0x4075
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_DX9_OBJECTS_INTEL 0x402A
|
||||
#define CL_COMMAND_RELEASE_DX9_OBJECTS_INTEL 0x402B
|
||||
/******************************************************************************/
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetDeviceIDsFromDX9INTEL(
|
||||
cl_platform_id platform,
|
||||
cl_dx9_device_source_intel dx9_device_source,
|
||||
void* dx9_object,
|
||||
cl_dx9_device_set_intel dx9_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef cl_int (CL_API_CALL* clGetDeviceIDsFromDX9INTEL_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_dx9_device_source_intel dx9_device_source,
|
||||
void* dx9_object,
|
||||
cl_dx9_device_set_intel dx9_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromDX9MediaSurfaceINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
IDirect3DSurface9* resource,
|
||||
HANDLE sharedHandle,
|
||||
UINT plane,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *clCreateFromDX9MediaSurfaceINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
IDirect3DSurface9* resource,
|
||||
HANDLE sharedHandle,
|
||||
UINT plane,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireDX9ObjectsINTEL(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef cl_int (CL_API_CALL *clEnqueueAcquireDX9ObjectsINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseDX9ObjectsINTEL(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef cl_int (CL_API_CALL *clEnqueueReleaseDX9ObjectsINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_dx9
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_dx9 1
|
||||
|
||||
/* when cl_khr_dx9_media_sharing or cl_intel_dx9_media_sharing is supported */
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedDX9MediaSurfaceFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
D3DFORMAT* dx9_formats,
|
||||
cl_uint* num_surface_formats) ;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedDX9MediaSurfaceFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
D3DFORMAT* dx9_formats,
|
||||
cl_uint* num_surface_formats) ;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
@ -13,158 +13,6 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
/*****************************************************************************\
|
||||
|
||||
Copyright (c) 2013-2019 Intel Corporation All Rights Reserved.
|
||||
|
||||
THESE MATERIALS ARE PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR ITS
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
|
||||
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THESE
|
||||
MATERIALS, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
File Name: cl_dx9_media_sharing_intel.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Notes:
|
||||
|
||||
\*****************************************************************************/
|
||||
|
||||
#ifndef __OPENCL_CL_DX9_MEDIA_SHARING_INTEL_H
|
||||
#define __OPENCL_CL_DX9_MEDIA_SHARING_INTEL_H
|
||||
|
||||
#include <CL/cl.h>
|
||||
#include <CL/cl_platform.h>
|
||||
#include <d3d9.h>
|
||||
#include <dxvahd.h>
|
||||
#include <wtypes.h>
|
||||
#include <d3d9types.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************
|
||||
* cl_intel_dx9_media_sharing extension *
|
||||
****************************************/
|
||||
|
||||
#define cl_intel_dx9_media_sharing 1
|
||||
|
||||
typedef cl_uint cl_dx9_device_source_intel;
|
||||
typedef cl_uint cl_dx9_device_set_intel;
|
||||
|
||||
/* error codes */
|
||||
#define CL_INVALID_DX9_DEVICE_INTEL -1010
|
||||
#define CL_INVALID_DX9_RESOURCE_INTEL -1011
|
||||
#define CL_DX9_RESOURCE_ALREADY_ACQUIRED_INTEL -1012
|
||||
#define CL_DX9_RESOURCE_NOT_ACQUIRED_INTEL -1013
|
||||
|
||||
/* cl_dx9_device_source_intel */
|
||||
#define CL_D3D9_DEVICE_INTEL 0x4022
|
||||
#define CL_D3D9EX_DEVICE_INTEL 0x4070
|
||||
#define CL_DXVA_DEVICE_INTEL 0x4071
|
||||
|
||||
/* cl_dx9_device_set_intel */
|
||||
#define CL_PREFERRED_DEVICES_FOR_DX9_INTEL 0x4024
|
||||
#define CL_ALL_DEVICES_FOR_DX9_INTEL 0x4025
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_D3D9_DEVICE_INTEL 0x4026
|
||||
#define CL_CONTEXT_D3D9EX_DEVICE_INTEL 0x4072
|
||||
#define CL_CONTEXT_DXVA_DEVICE_INTEL 0x4073
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_DX9_RESOURCE_INTEL 0x4027
|
||||
#define CL_MEM_DX9_SHARED_HANDLE_INTEL 0x4074
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_DX9_PLANE_INTEL 0x4075
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_DX9_OBJECTS_INTEL 0x402A
|
||||
#define CL_COMMAND_RELEASE_DX9_OBJECTS_INTEL 0x402B
|
||||
/******************************************************************************/
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetDeviceIDsFromDX9INTEL(
|
||||
cl_platform_id platform,
|
||||
cl_dx9_device_source_intel dx9_device_source,
|
||||
void* dx9_object,
|
||||
cl_dx9_device_set_intel dx9_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_EXT_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL* clGetDeviceIDsFromDX9INTEL_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_dx9_device_source_intel dx9_device_source,
|
||||
void* dx9_object,
|
||||
cl_dx9_device_set_intel dx9_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_EXT_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromDX9MediaSurfaceINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
IDirect3DSurface9* resource,
|
||||
HANDLE sharedHandle,
|
||||
UINT plane,
|
||||
cl_int* errcode_ret) CL_EXT_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromDX9MediaSurfaceINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
IDirect3DSurface9* resource,
|
||||
HANDLE sharedHandle,
|
||||
UINT plane,
|
||||
cl_int* errcode_ret) CL_EXT_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireDX9ObjectsINTEL(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_EXT_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireDX9ObjectsINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_EXT_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseDX9ObjectsINTEL(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_EXT_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseDX9ObjectsINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_EXT_SUFFIX__VERSION_1_1;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __OPENCL_CL_DX9_MEDIA_SHARING_INTEL_H */
|
||||
|
||||
#include <CL/cl_dx9_media_sharing.h>
|
||||
#pragma message("The Intel DX9 media sharing extensions have been moved into cl_dx9_media_sharing.h. Please include cl_dx9_media_sharing.h directly.")
|
||||
|
@ -56,7 +56,7 @@ clCreateFromEGLImageKHR(cl_context context,
|
||||
const cl_egl_image_properties_khr * properties,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromEGLImageKHR_fn)(
|
||||
typedef cl_mem (CL_API_CALL *clCreateFromEGLImageKHR_fn)(
|
||||
cl_context context,
|
||||
CLeglDisplayKHR egldisplay,
|
||||
CLeglImageKHR eglimage,
|
||||
@ -73,7 +73,7 @@ clEnqueueAcquireEGLObjectsKHR(cl_command_queue command_queue,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireEGLObjectsKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueAcquireEGLObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
@ -90,7 +90,7 @@ clEnqueueReleaseEGLObjectsKHR(cl_command_queue command_queue,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseEGLObjectsKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueReleaseEGLObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
@ -107,7 +107,7 @@ clCreateEventFromEGLSyncKHR(cl_context context,
|
||||
CLeglDisplayKHR display,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_event (CL_API_CALL *clCreateEventFromEGLSyncKHR_fn)(
|
||||
typedef cl_event (CL_API_CALL *clCreateEventFromEGLSyncKHR_fn)(
|
||||
cl_context context,
|
||||
CLeglSyncKHR sync,
|
||||
CLeglDisplayKHR display,
|
||||
|
1689
CL/cl_ext.h
1689
CL/cl_ext.h
File diff suppressed because it is too large
Load Diff
@ -14,718 +14,6 @@
|
||||
* limitations under the License.
|
||||
*
|
||||
******************************************************************************/
|
||||
/*****************************************************************************\
|
||||
|
||||
Copyright (c) 2013-2020 Intel Corporation All Rights Reserved.
|
||||
|
||||
THESE MATERIALS ARE PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR ITS
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
|
||||
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THESE
|
||||
MATERIALS, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
File Name: cl_ext_intel.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Notes:
|
||||
|
||||
\*****************************************************************************/
|
||||
|
||||
#ifndef __CL_EXT_INTEL_H
|
||||
#define __CL_EXT_INTEL_H
|
||||
|
||||
#include <CL/cl.h>
|
||||
#include <CL/cl_platform.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************
|
||||
* cl_intel_thread_local_exec extension *
|
||||
****************************************/
|
||||
|
||||
#define cl_intel_thread_local_exec 1
|
||||
|
||||
#define CL_QUEUE_THREAD_LOCAL_EXEC_ENABLE_INTEL (((cl_bitfield)1) << 31)
|
||||
|
||||
/***********************************************
|
||||
* cl_intel_device_partition_by_names extension *
|
||||
************************************************/
|
||||
|
||||
#define cl_intel_device_partition_by_names 1
|
||||
|
||||
#define CL_DEVICE_PARTITION_BY_NAMES_INTEL 0x4052
|
||||
#define CL_PARTITION_BY_NAMES_LIST_END_INTEL -1
|
||||
|
||||
/************************************************
|
||||
* cl_intel_accelerator extension *
|
||||
* cl_intel_motion_estimation extension *
|
||||
* cl_intel_advanced_motion_estimation extension *
|
||||
*************************************************/
|
||||
|
||||
#define cl_intel_accelerator 1
|
||||
#define cl_intel_motion_estimation 1
|
||||
#define cl_intel_advanced_motion_estimation 1
|
||||
|
||||
typedef struct _cl_accelerator_intel* cl_accelerator_intel;
|
||||
typedef cl_uint cl_accelerator_type_intel;
|
||||
typedef cl_uint cl_accelerator_info_intel;
|
||||
|
||||
typedef struct _cl_motion_estimation_desc_intel {
|
||||
cl_uint mb_block_type;
|
||||
cl_uint subpixel_mode;
|
||||
cl_uint sad_adjust_mode;
|
||||
cl_uint search_path_type;
|
||||
} cl_motion_estimation_desc_intel;
|
||||
|
||||
/* error codes */
|
||||
#define CL_INVALID_ACCELERATOR_INTEL -1094
|
||||
#define CL_INVALID_ACCELERATOR_TYPE_INTEL -1095
|
||||
#define CL_INVALID_ACCELERATOR_DESCRIPTOR_INTEL -1096
|
||||
#define CL_ACCELERATOR_TYPE_NOT_SUPPORTED_INTEL -1097
|
||||
|
||||
/* cl_accelerator_type_intel */
|
||||
#define CL_ACCELERATOR_TYPE_MOTION_ESTIMATION_INTEL 0x0
|
||||
|
||||
/* cl_accelerator_info_intel */
|
||||
#define CL_ACCELERATOR_DESCRIPTOR_INTEL 0x4090
|
||||
#define CL_ACCELERATOR_REFERENCE_COUNT_INTEL 0x4091
|
||||
#define CL_ACCELERATOR_CONTEXT_INTEL 0x4092
|
||||
#define CL_ACCELERATOR_TYPE_INTEL 0x4093
|
||||
|
||||
/* cl_motion_detect_desc_intel flags */
|
||||
#define CL_ME_MB_TYPE_16x16_INTEL 0x0
|
||||
#define CL_ME_MB_TYPE_8x8_INTEL 0x1
|
||||
#define CL_ME_MB_TYPE_4x4_INTEL 0x2
|
||||
|
||||
#define CL_ME_SUBPIXEL_MODE_INTEGER_INTEL 0x0
|
||||
#define CL_ME_SUBPIXEL_MODE_HPEL_INTEL 0x1
|
||||
#define CL_ME_SUBPIXEL_MODE_QPEL_INTEL 0x2
|
||||
|
||||
#define CL_ME_SAD_ADJUST_MODE_NONE_INTEL 0x0
|
||||
#define CL_ME_SAD_ADJUST_MODE_HAAR_INTEL 0x1
|
||||
|
||||
#define CL_ME_SEARCH_PATH_RADIUS_2_2_INTEL 0x0
|
||||
#define CL_ME_SEARCH_PATH_RADIUS_4_4_INTEL 0x1
|
||||
#define CL_ME_SEARCH_PATH_RADIUS_16_12_INTEL 0x5
|
||||
|
||||
#define CL_ME_SKIP_BLOCK_TYPE_16x16_INTEL 0x0
|
||||
#define CL_ME_CHROMA_INTRA_PREDICT_ENABLED_INTEL 0x1
|
||||
#define CL_ME_LUMA_INTRA_PREDICT_ENABLED_INTEL 0x2
|
||||
#define CL_ME_SKIP_BLOCK_TYPE_8x8_INTEL 0x4
|
||||
|
||||
#define CL_ME_FORWARD_INPUT_MODE_INTEL 0x1
|
||||
#define CL_ME_BACKWARD_INPUT_MODE_INTEL 0x2
|
||||
#define CL_ME_BIDIRECTION_INPUT_MODE_INTEL 0x3
|
||||
|
||||
#define CL_ME_BIDIR_WEIGHT_QUARTER_INTEL 16
|
||||
#define CL_ME_BIDIR_WEIGHT_THIRD_INTEL 21
|
||||
#define CL_ME_BIDIR_WEIGHT_HALF_INTEL 32
|
||||
#define CL_ME_BIDIR_WEIGHT_TWO_THIRD_INTEL 43
|
||||
#define CL_ME_BIDIR_WEIGHT_THREE_QUARTER_INTEL 48
|
||||
|
||||
#define CL_ME_COST_PENALTY_NONE_INTEL 0x0
|
||||
#define CL_ME_COST_PENALTY_LOW_INTEL 0x1
|
||||
#define CL_ME_COST_PENALTY_NORMAL_INTEL 0x2
|
||||
#define CL_ME_COST_PENALTY_HIGH_INTEL 0x3
|
||||
|
||||
#define CL_ME_COST_PRECISION_QPEL_INTEL 0x0
|
||||
#define CL_ME_COST_PRECISION_HPEL_INTEL 0x1
|
||||
#define CL_ME_COST_PRECISION_PEL_INTEL 0x2
|
||||
#define CL_ME_COST_PRECISION_DPEL_INTEL 0x3
|
||||
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_INTEL 0x0
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_INTEL 0x1
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_DC_INTEL 0x2
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_LEFT_INTEL 0x3
|
||||
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_RIGHT_INTEL 0x4
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_PLANE_INTEL 0x4
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_RIGHT_INTEL 0x5
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_DOWN_INTEL 0x6
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_VERTICAL_LEFT_INTEL 0x7
|
||||
#define CL_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_UP_INTEL 0x8
|
||||
|
||||
#define CL_ME_CHROMA_PREDICTOR_MODE_DC_INTEL 0x0
|
||||
#define CL_ME_CHROMA_PREDICTOR_MODE_HORIZONTAL_INTEL 0x1
|
||||
#define CL_ME_CHROMA_PREDICTOR_MODE_VERTICAL_INTEL 0x2
|
||||
#define CL_ME_CHROMA_PREDICTOR_MODE_PLANE_INTEL 0x3
|
||||
|
||||
/* cl_device_info */
|
||||
#define CL_DEVICE_ME_VERSION_INTEL 0x407E
|
||||
|
||||
#define CL_ME_VERSION_LEGACY_INTEL 0x0
|
||||
#define CL_ME_VERSION_ADVANCED_VER_1_INTEL 0x1
|
||||
#define CL_ME_VERSION_ADVANCED_VER_2_INTEL 0x2
|
||||
|
||||
extern CL_API_ENTRY cl_accelerator_intel CL_API_CALL
|
||||
clCreateAcceleratorINTEL(
|
||||
cl_context context,
|
||||
cl_accelerator_type_intel accelerator_type,
|
||||
size_t descriptor_size,
|
||||
const void* descriptor,
|
||||
cl_int* errcode_ret) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_accelerator_intel (CL_API_CALL *clCreateAcceleratorINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_accelerator_type_intel accelerator_type,
|
||||
size_t descriptor_size,
|
||||
const void* descriptor,
|
||||
cl_int* errcode_ret) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetAcceleratorInfoINTEL(
|
||||
cl_accelerator_intel accelerator,
|
||||
cl_accelerator_info_intel param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetAcceleratorInfoINTEL_fn)(
|
||||
cl_accelerator_intel accelerator,
|
||||
cl_accelerator_info_intel param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clRetainAcceleratorINTEL(
|
||||
cl_accelerator_intel accelerator) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clRetainAcceleratorINTEL_fn)(
|
||||
cl_accelerator_intel accelerator) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clReleaseAcceleratorINTEL(
|
||||
cl_accelerator_intel accelerator) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clReleaseAcceleratorINTEL_fn)(
|
||||
cl_accelerator_intel accelerator) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
/******************************************
|
||||
* cl_intel_simultaneous_sharing extension *
|
||||
*******************************************/
|
||||
|
||||
#define cl_intel_simultaneous_sharing 1
|
||||
|
||||
#define CL_DEVICE_SIMULTANEOUS_INTEROPS_INTEL 0x4104
|
||||
#define CL_DEVICE_NUM_SIMULTANEOUS_INTEROPS_INTEL 0x4105
|
||||
|
||||
/***********************************
|
||||
* cl_intel_egl_image_yuv extension *
|
||||
************************************/
|
||||
|
||||
#define cl_intel_egl_image_yuv 1
|
||||
|
||||
#define CL_EGL_YUV_PLANE_INTEL 0x4107
|
||||
|
||||
/********************************
|
||||
* cl_intel_packed_yuv extension *
|
||||
*********************************/
|
||||
|
||||
#define cl_intel_packed_yuv 1
|
||||
|
||||
#define CL_YUYV_INTEL 0x4076
|
||||
#define CL_UYVY_INTEL 0x4077
|
||||
#define CL_YVYU_INTEL 0x4078
|
||||
#define CL_VYUY_INTEL 0x4079
|
||||
|
||||
/********************************************
|
||||
* cl_intel_required_subgroup_size extension *
|
||||
*********************************************/
|
||||
|
||||
#define cl_intel_required_subgroup_size 1
|
||||
|
||||
#define CL_DEVICE_SUB_GROUP_SIZES_INTEL 0x4108
|
||||
#define CL_KERNEL_SPILL_MEM_SIZE_INTEL 0x4109
|
||||
#define CL_KERNEL_COMPILE_SUB_GROUP_SIZE_INTEL 0x410A
|
||||
|
||||
/****************************************
|
||||
* cl_intel_driver_diagnostics extension *
|
||||
*****************************************/
|
||||
|
||||
#define cl_intel_driver_diagnostics 1
|
||||
|
||||
typedef cl_uint cl_diagnostics_verbose_level;
|
||||
|
||||
#define CL_CONTEXT_SHOW_DIAGNOSTICS_INTEL 0x4106
|
||||
|
||||
#define CL_CONTEXT_DIAGNOSTICS_LEVEL_ALL_INTEL ( 0xff )
|
||||
#define CL_CONTEXT_DIAGNOSTICS_LEVEL_GOOD_INTEL ( 1 )
|
||||
#define CL_CONTEXT_DIAGNOSTICS_LEVEL_BAD_INTEL ( 1 << 1 )
|
||||
#define CL_CONTEXT_DIAGNOSTICS_LEVEL_NEUTRAL_INTEL ( 1 << 2 )
|
||||
|
||||
/********************************
|
||||
* cl_intel_planar_yuv extension *
|
||||
*********************************/
|
||||
|
||||
#define CL_NV12_INTEL 0x410E
|
||||
|
||||
#define CL_MEM_NO_ACCESS_INTEL ( 1 << 24 )
|
||||
#define CL_MEM_ACCESS_FLAGS_UNRESTRICTED_INTEL ( 1 << 25 )
|
||||
|
||||
#define CL_DEVICE_PLANAR_YUV_MAX_WIDTH_INTEL 0x417E
|
||||
#define CL_DEVICE_PLANAR_YUV_MAX_HEIGHT_INTEL 0x417F
|
||||
|
||||
/*******************************************************
|
||||
* cl_intel_device_side_avc_motion_estimation extension *
|
||||
********************************************************/
|
||||
|
||||
#define CL_DEVICE_AVC_ME_VERSION_INTEL 0x410B
|
||||
#define CL_DEVICE_AVC_ME_SUPPORTS_TEXTURE_SAMPLER_USE_INTEL 0x410C
|
||||
#define CL_DEVICE_AVC_ME_SUPPORTS_PREEMPTION_INTEL 0x410D
|
||||
|
||||
#define CL_AVC_ME_VERSION_0_INTEL 0x0 /* No support. */
|
||||
#define CL_AVC_ME_VERSION_1_INTEL 0x1 /* First supported version. */
|
||||
|
||||
#define CL_AVC_ME_MAJOR_16x16_INTEL 0x0
|
||||
#define CL_AVC_ME_MAJOR_16x8_INTEL 0x1
|
||||
#define CL_AVC_ME_MAJOR_8x16_INTEL 0x2
|
||||
#define CL_AVC_ME_MAJOR_8x8_INTEL 0x3
|
||||
|
||||
#define CL_AVC_ME_MINOR_8x8_INTEL 0x0
|
||||
#define CL_AVC_ME_MINOR_8x4_INTEL 0x1
|
||||
#define CL_AVC_ME_MINOR_4x8_INTEL 0x2
|
||||
#define CL_AVC_ME_MINOR_4x4_INTEL 0x3
|
||||
|
||||
#define CL_AVC_ME_MAJOR_FORWARD_INTEL 0x0
|
||||
#define CL_AVC_ME_MAJOR_BACKWARD_INTEL 0x1
|
||||
#define CL_AVC_ME_MAJOR_BIDIRECTIONAL_INTEL 0x2
|
||||
|
||||
#define CL_AVC_ME_PARTITION_MASK_ALL_INTEL 0x0
|
||||
#define CL_AVC_ME_PARTITION_MASK_16x16_INTEL 0x7E
|
||||
#define CL_AVC_ME_PARTITION_MASK_16x8_INTEL 0x7D
|
||||
#define CL_AVC_ME_PARTITION_MASK_8x16_INTEL 0x7B
|
||||
#define CL_AVC_ME_PARTITION_MASK_8x8_INTEL 0x77
|
||||
#define CL_AVC_ME_PARTITION_MASK_8x4_INTEL 0x6F
|
||||
#define CL_AVC_ME_PARTITION_MASK_4x8_INTEL 0x5F
|
||||
#define CL_AVC_ME_PARTITION_MASK_4x4_INTEL 0x3F
|
||||
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_EXHAUSTIVE_INTEL 0x0
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_SMALL_INTEL 0x1
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_TINY_INTEL 0x2
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_EXTRA_TINY_INTEL 0x3
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_DIAMOND_INTEL 0x4
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_LARGE_DIAMOND_INTEL 0x5
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_RESERVED0_INTEL 0x6
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_RESERVED1_INTEL 0x7
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_CUSTOM_INTEL 0x8
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_16x12_RADIUS_INTEL 0x9
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_4x4_RADIUS_INTEL 0x2
|
||||
#define CL_AVC_ME_SEARCH_WINDOW_2x2_RADIUS_INTEL 0xa
|
||||
|
||||
#define CL_AVC_ME_SAD_ADJUST_MODE_NONE_INTEL 0x0
|
||||
#define CL_AVC_ME_SAD_ADJUST_MODE_HAAR_INTEL 0x2
|
||||
|
||||
#define CL_AVC_ME_SUBPIXEL_MODE_INTEGER_INTEL 0x0
|
||||
#define CL_AVC_ME_SUBPIXEL_MODE_HPEL_INTEL 0x1
|
||||
#define CL_AVC_ME_SUBPIXEL_MODE_QPEL_INTEL 0x3
|
||||
|
||||
#define CL_AVC_ME_COST_PRECISION_QPEL_INTEL 0x0
|
||||
#define CL_AVC_ME_COST_PRECISION_HPEL_INTEL 0x1
|
||||
#define CL_AVC_ME_COST_PRECISION_PEL_INTEL 0x2
|
||||
#define CL_AVC_ME_COST_PRECISION_DPEL_INTEL 0x3
|
||||
|
||||
#define CL_AVC_ME_BIDIR_WEIGHT_QUARTER_INTEL 0x10
|
||||
#define CL_AVC_ME_BIDIR_WEIGHT_THIRD_INTEL 0x15
|
||||
#define CL_AVC_ME_BIDIR_WEIGHT_HALF_INTEL 0x20
|
||||
#define CL_AVC_ME_BIDIR_WEIGHT_TWO_THIRD_INTEL 0x2B
|
||||
#define CL_AVC_ME_BIDIR_WEIGHT_THREE_QUARTER_INTEL 0x30
|
||||
|
||||
#define CL_AVC_ME_BORDER_REACHED_LEFT_INTEL 0x0
|
||||
#define CL_AVC_ME_BORDER_REACHED_RIGHT_INTEL 0x2
|
||||
#define CL_AVC_ME_BORDER_REACHED_TOP_INTEL 0x4
|
||||
#define CL_AVC_ME_BORDER_REACHED_BOTTOM_INTEL 0x8
|
||||
|
||||
#define CL_AVC_ME_SKIP_BLOCK_PARTITION_16x16_INTEL 0x0
|
||||
#define CL_AVC_ME_SKIP_BLOCK_PARTITION_8x8_INTEL 0x4000
|
||||
|
||||
#define CL_AVC_ME_SKIP_BLOCK_16x16_FORWARD_ENABLE_INTEL ( 0x1 << 24 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_16x16_BACKWARD_ENABLE_INTEL ( 0x2 << 24 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_16x16_DUAL_ENABLE_INTEL ( 0x3 << 24 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_FORWARD_ENABLE_INTEL ( 0x55 << 24 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_BACKWARD_ENABLE_INTEL ( 0xAA << 24 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_DUAL_ENABLE_INTEL ( 0xFF << 24 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_0_FORWARD_ENABLE_INTEL ( 0x1 << 24 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_0_BACKWARD_ENABLE_INTEL ( 0x2 << 24 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_1_FORWARD_ENABLE_INTEL ( 0x1 << 26 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_1_BACKWARD_ENABLE_INTEL ( 0x2 << 26 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_2_FORWARD_ENABLE_INTEL ( 0x1 << 28 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_2_BACKWARD_ENABLE_INTEL ( 0x2 << 28 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_3_FORWARD_ENABLE_INTEL ( 0x1 << 30 )
|
||||
#define CL_AVC_ME_SKIP_BLOCK_8x8_3_BACKWARD_ENABLE_INTEL ( 0x2 << 30 )
|
||||
|
||||
#define CL_AVC_ME_BLOCK_BASED_SKIP_4x4_INTEL 0x00
|
||||
#define CL_AVC_ME_BLOCK_BASED_SKIP_8x8_INTEL 0x80
|
||||
|
||||
#define CL_AVC_ME_INTRA_16x16_INTEL 0x0
|
||||
#define CL_AVC_ME_INTRA_8x8_INTEL 0x1
|
||||
#define CL_AVC_ME_INTRA_4x4_INTEL 0x2
|
||||
|
||||
#define CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_16x16_INTEL 0x6
|
||||
#define CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_8x8_INTEL 0x5
|
||||
#define CL_AVC_ME_INTRA_LUMA_PARTITION_MASK_4x4_INTEL 0x3
|
||||
|
||||
#define CL_AVC_ME_INTRA_NEIGHBOR_LEFT_MASK_ENABLE_INTEL 0x60
|
||||
#define CL_AVC_ME_INTRA_NEIGHBOR_UPPER_MASK_ENABLE_INTEL 0x10
|
||||
#define CL_AVC_ME_INTRA_NEIGHBOR_UPPER_RIGHT_MASK_ENABLE_INTEL 0x8
|
||||
#define CL_AVC_ME_INTRA_NEIGHBOR_UPPER_LEFT_MASK_ENABLE_INTEL 0x4
|
||||
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_INTEL 0x0
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_INTEL 0x1
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_DC_INTEL 0x2
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_LEFT_INTEL 0x3
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_DIAGONAL_DOWN_RIGHT_INTEL 0x4
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_PLANE_INTEL 0x4
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_RIGHT_INTEL 0x5
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_DOWN_INTEL 0x6
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_VERTICAL_LEFT_INTEL 0x7
|
||||
#define CL_AVC_ME_LUMA_PREDICTOR_MODE_HORIZONTAL_UP_INTEL 0x8
|
||||
#define CL_AVC_ME_CHROMA_PREDICTOR_MODE_DC_INTEL 0x0
|
||||
#define CL_AVC_ME_CHROMA_PREDICTOR_MODE_HORIZONTAL_INTEL 0x1
|
||||
#define CL_AVC_ME_CHROMA_PREDICTOR_MODE_VERTICAL_INTEL 0x2
|
||||
#define CL_AVC_ME_CHROMA_PREDICTOR_MODE_PLANE_INTEL 0x3
|
||||
|
||||
#define CL_AVC_ME_FRAME_FORWARD_INTEL 0x1
|
||||
#define CL_AVC_ME_FRAME_BACKWARD_INTEL 0x2
|
||||
#define CL_AVC_ME_FRAME_DUAL_INTEL 0x3
|
||||
|
||||
#define CL_AVC_ME_SLICE_TYPE_PRED_INTEL 0x0
|
||||
#define CL_AVC_ME_SLICE_TYPE_BPRED_INTEL 0x1
|
||||
#define CL_AVC_ME_SLICE_TYPE_INTRA_INTEL 0x2
|
||||
|
||||
#define CL_AVC_ME_INTERLACED_SCAN_TOP_FIELD_INTEL 0x0
|
||||
#define CL_AVC_ME_INTERLACED_SCAN_BOTTOM_FIELD_INTEL 0x1
|
||||
|
||||
/*******************************************
|
||||
* cl_intel_unified_shared_memory extension *
|
||||
********************************************/
|
||||
|
||||
/* These APIs are in sync with Revision Q of the cl_intel_unified_shared_memory spec! */
|
||||
|
||||
#define cl_intel_unified_shared_memory 1
|
||||
|
||||
/* cl_device_info */
|
||||
#define CL_DEVICE_HOST_MEM_CAPABILITIES_INTEL 0x4190
|
||||
#define CL_DEVICE_DEVICE_MEM_CAPABILITIES_INTEL 0x4191
|
||||
#define CL_DEVICE_SINGLE_DEVICE_SHARED_MEM_CAPABILITIES_INTEL 0x4192
|
||||
#define CL_DEVICE_CROSS_DEVICE_SHARED_MEM_CAPABILITIES_INTEL 0x4193
|
||||
#define CL_DEVICE_SHARED_SYSTEM_MEM_CAPABILITIES_INTEL 0x4194
|
||||
|
||||
typedef cl_bitfield cl_device_unified_shared_memory_capabilities_intel;
|
||||
|
||||
/* cl_device_unified_shared_memory_capabilities_intel - bitfield */
|
||||
#define CL_UNIFIED_SHARED_MEMORY_ACCESS_INTEL (1 << 0)
|
||||
#define CL_UNIFIED_SHARED_MEMORY_ATOMIC_ACCESS_INTEL (1 << 1)
|
||||
#define CL_UNIFIED_SHARED_MEMORY_CONCURRENT_ACCESS_INTEL (1 << 2)
|
||||
#define CL_UNIFIED_SHARED_MEMORY_CONCURRENT_ATOMIC_ACCESS_INTEL (1 << 3)
|
||||
|
||||
typedef cl_properties cl_mem_properties_intel;
|
||||
|
||||
/* cl_mem_properties_intel */
|
||||
#define CL_MEM_ALLOC_FLAGS_INTEL 0x4195
|
||||
|
||||
typedef cl_bitfield cl_mem_alloc_flags_intel;
|
||||
|
||||
/* cl_mem_alloc_flags_intel - bitfield */
|
||||
#define CL_MEM_ALLOC_WRITE_COMBINED_INTEL (1 << 0)
|
||||
|
||||
typedef cl_uint cl_mem_info_intel;
|
||||
|
||||
/* cl_mem_alloc_info_intel */
|
||||
#define CL_MEM_ALLOC_TYPE_INTEL 0x419A
|
||||
#define CL_MEM_ALLOC_BASE_PTR_INTEL 0x419B
|
||||
#define CL_MEM_ALLOC_SIZE_INTEL 0x419C
|
||||
#define CL_MEM_ALLOC_DEVICE_INTEL 0x419D
|
||||
/* Enum values 0x419E-0x419F are reserved for future queries. */
|
||||
|
||||
typedef cl_uint cl_unified_shared_memory_type_intel;
|
||||
|
||||
/* cl_unified_shared_memory_type_intel */
|
||||
#define CL_MEM_TYPE_UNKNOWN_INTEL 0x4196
|
||||
#define CL_MEM_TYPE_HOST_INTEL 0x4197
|
||||
#define CL_MEM_TYPE_DEVICE_INTEL 0x4198
|
||||
#define CL_MEM_TYPE_SHARED_INTEL 0x4199
|
||||
|
||||
typedef cl_uint cl_mem_advice_intel;
|
||||
|
||||
/* cl_mem_advice_intel */
|
||||
/* Enum values 0x4208-0x420F are reserved for future memory advices. */
|
||||
|
||||
/* cl_kernel_exec_info */
|
||||
#define CL_KERNEL_EXEC_INFO_INDIRECT_HOST_ACCESS_INTEL 0x4200
|
||||
#define CL_KERNEL_EXEC_INFO_INDIRECT_DEVICE_ACCESS_INTEL 0x4201
|
||||
#define CL_KERNEL_EXEC_INFO_INDIRECT_SHARED_ACCESS_INTEL 0x4202
|
||||
#define CL_KERNEL_EXEC_INFO_USM_PTRS_INTEL 0x4203
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_MEMFILL_INTEL 0x4204
|
||||
#define CL_COMMAND_MEMCPY_INTEL 0x4205
|
||||
#define CL_COMMAND_MIGRATEMEM_INTEL 0x4206
|
||||
#define CL_COMMAND_MEMADVISE_INTEL 0x4207
|
||||
|
||||
extern CL_API_ENTRY void* CL_API_CALL
|
||||
clHostMemAllocINTEL(
|
||||
cl_context context,
|
||||
const cl_mem_properties_intel* properties,
|
||||
size_t size,
|
||||
cl_uint alignment,
|
||||
cl_int* errcode_ret);
|
||||
|
||||
typedef CL_API_ENTRY void* (CL_API_CALL *
|
||||
clHostMemAllocINTEL_fn)(
|
||||
cl_context context,
|
||||
const cl_mem_properties_intel* properties,
|
||||
size_t size,
|
||||
cl_uint alignment,
|
||||
cl_int* errcode_ret);
|
||||
|
||||
extern CL_API_ENTRY void* CL_API_CALL
|
||||
clDeviceMemAllocINTEL(
|
||||
cl_context context,
|
||||
cl_device_id device,
|
||||
const cl_mem_properties_intel* properties,
|
||||
size_t size,
|
||||
cl_uint alignment,
|
||||
cl_int* errcode_ret);
|
||||
|
||||
typedef CL_API_ENTRY void* (CL_API_CALL *
|
||||
clDeviceMemAllocINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_device_id device,
|
||||
const cl_mem_properties_intel* properties,
|
||||
size_t size,
|
||||
cl_uint alignment,
|
||||
cl_int* errcode_ret);
|
||||
|
||||
extern CL_API_ENTRY void* CL_API_CALL
|
||||
clSharedMemAllocINTEL(
|
||||
cl_context context,
|
||||
cl_device_id device,
|
||||
const cl_mem_properties_intel* properties,
|
||||
size_t size,
|
||||
cl_uint alignment,
|
||||
cl_int* errcode_ret);
|
||||
|
||||
typedef CL_API_ENTRY void* (CL_API_CALL *
|
||||
clSharedMemAllocINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_device_id device,
|
||||
const cl_mem_properties_intel* properties,
|
||||
size_t size,
|
||||
cl_uint alignment,
|
||||
cl_int* errcode_ret);
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clMemFreeINTEL(
|
||||
cl_context context,
|
||||
void* ptr);
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *
|
||||
clMemFreeINTEL_fn)(
|
||||
cl_context context,
|
||||
void* ptr);
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clMemBlockingFreeINTEL(
|
||||
cl_context context,
|
||||
void* ptr);
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *
|
||||
clMemBlockingFreeINTEL_fn)(
|
||||
cl_context context,
|
||||
void* ptr);
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetMemAllocInfoINTEL(
|
||||
cl_context context,
|
||||
const void* ptr,
|
||||
cl_mem_info_intel param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret);
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *
|
||||
clGetMemAllocInfoINTEL_fn)(
|
||||
cl_context context,
|
||||
const void* ptr,
|
||||
cl_mem_info_intel param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret);
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clSetKernelArgMemPointerINTEL(
|
||||
cl_kernel kernel,
|
||||
cl_uint arg_index,
|
||||
const void* arg_value);
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *
|
||||
clSetKernelArgMemPointerINTEL_fn)(
|
||||
cl_kernel kernel,
|
||||
cl_uint arg_index,
|
||||
const void* arg_value);
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueMemsetINTEL( /* Deprecated */
|
||||
cl_command_queue command_queue,
|
||||
void* dst_ptr,
|
||||
cl_int value,
|
||||
size_t size,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *
|
||||
clEnqueueMemsetINTEL_fn)( /* Deprecated */
|
||||
cl_command_queue command_queue,
|
||||
void* dst_ptr,
|
||||
cl_int value,
|
||||
size_t size,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueMemFillINTEL(
|
||||
cl_command_queue command_queue,
|
||||
void* dst_ptr,
|
||||
const void* pattern,
|
||||
size_t pattern_size,
|
||||
size_t size,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *
|
||||
clEnqueueMemFillINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
void* dst_ptr,
|
||||
const void* pattern,
|
||||
size_t pattern_size,
|
||||
size_t size,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueMemcpyINTEL(
|
||||
cl_command_queue command_queue,
|
||||
cl_bool blocking,
|
||||
void* dst_ptr,
|
||||
const void* src_ptr,
|
||||
size_t size,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *
|
||||
clEnqueueMemcpyINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_bool blocking,
|
||||
void* dst_ptr,
|
||||
const void* src_ptr,
|
||||
size_t size,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
/* Because these APIs use cl_mem_migration_flags, they require
|
||||
OpenCL 1.2: */
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueMigrateMemINTEL(
|
||||
cl_command_queue command_queue,
|
||||
const void* ptr,
|
||||
size_t size,
|
||||
cl_mem_migration_flags flags,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *
|
||||
clEnqueueMigrateMemINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
const void* ptr,
|
||||
size_t size,
|
||||
cl_mem_migration_flags flags,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
#endif
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueMemAdviseINTEL(
|
||||
cl_command_queue command_queue,
|
||||
const void* ptr,
|
||||
size_t size,
|
||||
cl_mem_advice_intel advice,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *
|
||||
clEnqueueMemAdviseINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
const void* ptr,
|
||||
size_t size,
|
||||
cl_mem_advice_intel advice,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event);
|
||||
|
||||
/***************************************************
|
||||
* cl_intel_create_buffer_with_properties extension *
|
||||
****************************************************/
|
||||
|
||||
#define cl_intel_create_buffer_with_properties 1
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateBufferWithPropertiesINTEL(
|
||||
cl_context context,
|
||||
const cl_mem_properties_intel* properties,
|
||||
cl_mem_flags flags,
|
||||
size_t size,
|
||||
void * host_ptr,
|
||||
cl_int * errcode_ret) CL_EXT_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *
|
||||
clCreateBufferWithPropertiesINTEL_fn)(
|
||||
cl_context context,
|
||||
const cl_mem_properties_intel* properties,
|
||||
cl_mem_flags flags,
|
||||
size_t size,
|
||||
void * host_ptr,
|
||||
cl_int * errcode_ret) CL_EXT_SUFFIX__VERSION_1_0;
|
||||
|
||||
/******************************************
|
||||
* cl_intel_mem_channel_property extension *
|
||||
*******************************************/
|
||||
|
||||
#define CL_MEM_CHANNEL_INTEL 0x4213
|
||||
|
||||
/*********************************
|
||||
* cl_intel_mem_force_host_memory *
|
||||
**********************************/
|
||||
|
||||
#define cl_intel_mem_force_host_memory 1
|
||||
|
||||
/* cl_mem_flags */
|
||||
#define CL_MEM_FORCE_HOST_MEMORY_INTEL (1 << 20)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __CL_EXT_INTEL_H */
|
||||
#include <CL/cl_ext.h>
|
||||
#pragma message("The Intel extensions have been moved into cl_ext.h. Please include cl_ext.h directly.")
|
||||
|
1184
CL/cl_function_types.h
Normal file
1184
CL/cl_function_types.h
Normal file
File diff suppressed because it is too large
Load Diff
47
CL/cl_gl.h
47
CL/cl_gl.h
@ -1,5 +1,5 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2020 The Khronos Group Inc.
|
||||
* Copyright (c) 2008-2021 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.
|
||||
@ -102,21 +102,21 @@ clEnqueueReleaseGLObjects(cl_command_queue command_queue,
|
||||
|
||||
|
||||
/* Deprecated OpenCL 1.1 APIs */
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
clCreateFromGLTexture2D(cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLenum target,
|
||||
cl_GLint miplevel,
|
||||
cl_GLuint texture,
|
||||
cl_int * errcode_ret) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
extern CL_API_ENTRY CL_API_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
clCreateFromGLTexture3D(cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLenum target,
|
||||
cl_GLint miplevel,
|
||||
cl_GLuint texture,
|
||||
cl_int * errcode_ret) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
/* cl_khr_gl_sharing extension */
|
||||
|
||||
@ -145,13 +145,48 @@ clGetGLContextInfoKHR(const cl_context_properties * properties,
|
||||
void * param_value,
|
||||
size_t * param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetGLContextInfoKHR_fn)(
|
||||
typedef cl_int (CL_API_CALL *clGetGLContextInfoKHR_fn)(
|
||||
const cl_context_properties * properties,
|
||||
cl_gl_context_info param_name,
|
||||
size_t param_value_size,
|
||||
void * param_value,
|
||||
size_t * param_value_size_ret);
|
||||
|
||||
/*
|
||||
* cl_khr_gl_event extension
|
||||
*/
|
||||
#define CL_COMMAND_GL_FENCE_SYNC_OBJECT_KHR 0x200D
|
||||
|
||||
extern CL_API_ENTRY cl_event CL_API_CALL
|
||||
clCreateEventFromGLsyncKHR(cl_context context,
|
||||
cl_GLsync sync,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_gl
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_gl 1
|
||||
|
||||
/* when cl_khr_gl_sharing is supported */
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedGLTextureFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint num_entries,
|
||||
cl_GLenum* gl_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedGLTextureFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint num_entries,
|
||||
cl_GLenum* gl_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2020 The Khronos Group Inc.
|
||||
* Copyright (c) 2008-2021 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.
|
||||
@ -14,27 +14,5 @@
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef __OPENCL_CL_GL_EXT_H
|
||||
#define __OPENCL_CL_GL_EXT_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <CL/cl_gl.h>
|
||||
|
||||
/*
|
||||
* cl_khr_gl_event extension
|
||||
*/
|
||||
#define CL_COMMAND_GL_FENCE_SYNC_OBJECT_KHR 0x200D
|
||||
|
||||
extern CL_API_ENTRY cl_event CL_API_CALL
|
||||
clCreateEventFromGLsyncKHR(cl_context context,
|
||||
cl_GLsync sync,
|
||||
cl_int * errcode_ret) CL_EXT_SUFFIX__VERSION_1_1;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __OPENCL_CL_GL_EXT_H */
|
||||
#pragma message("All OpenGL-related extensions have been moved into cl_gl.h. Please include cl_gl.h directly.")
|
||||
|
316
CL/cl_icd.h
316
CL/cl_icd.h
@ -41,35 +41,35 @@ extern "C" {
|
||||
/* API function pointer definitions */
|
||||
|
||||
// Platform APIs
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetPlatformIDs)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetPlatformIDs)(
|
||||
cl_uint num_entries, cl_platform_id *platforms,
|
||||
cl_uint *num_platforms) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetPlatformInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetPlatformInfo)(
|
||||
cl_platform_id platform, cl_platform_info param_name,
|
||||
size_t param_value_size, void *param_value,
|
||||
size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
// Device APIs
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetDeviceIDs)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetDeviceIDs)(
|
||||
cl_platform_id platform, cl_device_type device_type, cl_uint num_entries,
|
||||
cl_device_id *devices, cl_uint *num_devices) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetDeviceInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetDeviceInfo)(
|
||||
cl_device_id device, cl_device_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clCreateSubDevices)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clCreateSubDevices)(
|
||||
cl_device_id in_device,
|
||||
const cl_device_partition_property *partition_properties,
|
||||
cl_uint num_entries, cl_device_id *out_devices, cl_uint *num_devices);
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clRetainDevice)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clRetainDevice)(
|
||||
cl_device_id device) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clReleaseDevice)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clReleaseDevice)(
|
||||
cl_device_id device) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#else
|
||||
@ -81,36 +81,36 @@ typedef void *cl_api_clReleaseDevice;
|
||||
#endif
|
||||
|
||||
// Context APIs
|
||||
typedef CL_API_ENTRY cl_context(CL_API_CALL *cl_api_clCreateContext)(
|
||||
typedef cl_context(CL_API_CALL *cl_api_clCreateContext)(
|
||||
const cl_context_properties *properties, cl_uint num_devices,
|
||||
const cl_device_id *devices,
|
||||
void(CL_CALLBACK *pfn_notify)(const char *, const void *, size_t, void *),
|
||||
void *user_data, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_context(CL_API_CALL *cl_api_clCreateContextFromType)(
|
||||
typedef cl_context(CL_API_CALL *cl_api_clCreateContextFromType)(
|
||||
const cl_context_properties *properties, cl_device_type device_type,
|
||||
void(CL_CALLBACK *pfn_notify)(const char *, const void *, size_t, void *),
|
||||
void *user_data, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clRetainContext)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clRetainContext)(
|
||||
cl_context context) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clReleaseContext)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clReleaseContext)(
|
||||
cl_context context) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetContextInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetContextInfo)(
|
||||
cl_context context, cl_context_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
// Command Queue APIs
|
||||
typedef CL_API_ENTRY cl_command_queue(CL_API_CALL *cl_api_clCreateCommandQueue)(
|
||||
typedef cl_command_queue(CL_API_CALL *cl_api_clCreateCommandQueue)(
|
||||
cl_context context, cl_device_id device,
|
||||
cl_command_queue_properties properties,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_VERSION_2_0
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_command_queue(CL_API_CALL *cl_api_clCreateCommandQueueWithProperties)(
|
||||
cl_context /* context */, cl_device_id /* device */,
|
||||
const cl_queue_properties * /* properties */,
|
||||
@ -122,25 +122,25 @@ typedef void *cl_api_clCreateCommandQueueWithProperties;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clRetainCommandQueue)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clRetainCommandQueue)(
|
||||
cl_command_queue command_queue) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clReleaseCommandQueue)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clReleaseCommandQueue)(
|
||||
cl_command_queue command_queue) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetCommandQueueInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetCommandQueueInfo)(
|
||||
cl_command_queue command_queue, cl_command_queue_info param_name,
|
||||
size_t param_value_size, void *param_value,
|
||||
size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
// Memory Object APIs
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateBuffer)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateBuffer)(
|
||||
cl_context context, cl_mem_flags flags, size_t size, void *host_ptr,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateImage)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateImage)(
|
||||
cl_context context, cl_mem_flags flags, const cl_image_format *image_format,
|
||||
const cl_image_desc *image_desc, void *host_ptr,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
@ -153,17 +153,17 @@ typedef void *cl_api_clCreateImage;
|
||||
|
||||
#ifdef CL_VERSION_3_0
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateBufferWithProperties)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateBufferWithProperties)(
|
||||
cl_context context, const cl_mem_properties *properties, cl_mem_flags flags,
|
||||
size_t size, void *host_ptr,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_3_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateImageWithProperties)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateImageWithProperties)(
|
||||
cl_context context, const cl_mem_properties *properties, cl_mem_flags flags,
|
||||
const cl_image_format *image_format, const cl_image_desc *image_desc,
|
||||
void *host_ptr, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_3_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL* cl_api_clSetContextDestructorCallback)(
|
||||
typedef cl_int(CL_API_CALL* cl_api_clSetContextDestructorCallback)(
|
||||
cl_context context,
|
||||
void(CL_CALLBACK* pfn_notify)(cl_context context, void* user_data),
|
||||
void* user_data) CL_API_SUFFIX__VERSION_3_0;
|
||||
@ -176,43 +176,43 @@ typedef void *cl_api_clSetContextDestructorCallback;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clRetainMemObject)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clRetainMemObject)(
|
||||
cl_mem memobj) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clReleaseMemObject)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clReleaseMemObject)(
|
||||
cl_mem memobj) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetSupportedImageFormats)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetSupportedImageFormats)(
|
||||
cl_context context, cl_mem_flags flags, cl_mem_object_type image_type,
|
||||
cl_uint num_entries, cl_image_format *image_formats,
|
||||
cl_uint *num_image_formats) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetMemObjectInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetMemObjectInfo)(
|
||||
cl_mem memobj, cl_mem_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetImageInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetImageInfo)(
|
||||
cl_mem image, cl_image_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_VERSION_2_0
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreatePipe)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreatePipe)(
|
||||
cl_context /* context */, cl_mem_flags /* flags */,
|
||||
cl_uint /* pipe_packet_size */, cl_uint /* pipe_max_packets */,
|
||||
const cl_pipe_properties * /* properties */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetPipeInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetPipeInfo)(
|
||||
cl_mem /* pipe */, cl_pipe_info /* param_name */,
|
||||
size_t /* param_value_size */, void * /* param_value */,
|
||||
size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
typedef CL_API_ENTRY void *(CL_API_CALL *cl_api_clSVMAlloc)(
|
||||
typedef void *(CL_API_CALL *cl_api_clSVMAlloc)(
|
||||
cl_context /* context */, cl_svm_mem_flags /* flags */, size_t /* size */,
|
||||
unsigned int /* alignment */)CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
typedef CL_API_ENTRY void(CL_API_CALL *cl_api_clSVMFree)(
|
||||
typedef void(CL_API_CALL *cl_api_clSVMFree)(
|
||||
cl_context /* context */,
|
||||
void * /* svm_pointer */) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
@ -226,24 +226,24 @@ typedef void *cl_api_clSVMFree;
|
||||
#endif
|
||||
|
||||
// Sampler APIs
|
||||
typedef CL_API_ENTRY cl_sampler(CL_API_CALL *cl_api_clCreateSampler)(
|
||||
typedef cl_sampler(CL_API_CALL *cl_api_clCreateSampler)(
|
||||
cl_context context, cl_bool normalized_coords,
|
||||
cl_addressing_mode addressing_mode, cl_filter_mode filter_mode,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clRetainSampler)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clRetainSampler)(
|
||||
cl_sampler sampler) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clReleaseSampler)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clReleaseSampler)(
|
||||
cl_sampler sampler) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetSamplerInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetSamplerInfo)(
|
||||
cl_sampler sampler, cl_sampler_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_VERSION_2_0
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_sampler(CL_API_CALL *cl_api_clCreateSamplerWithProperties)(
|
||||
cl_context /* context */,
|
||||
const cl_sampler_properties * /* sampler_properties */,
|
||||
@ -256,18 +256,18 @@ typedef void *cl_api_clCreateSamplerWithProperties;
|
||||
#endif
|
||||
|
||||
// Program Object APIs
|
||||
typedef CL_API_ENTRY cl_program(CL_API_CALL *cl_api_clCreateProgramWithSource)(
|
||||
typedef cl_program(CL_API_CALL *cl_api_clCreateProgramWithSource)(
|
||||
cl_context context, cl_uint count, const char **strings,
|
||||
const size_t *lengths, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_program(CL_API_CALL *cl_api_clCreateProgramWithBinary)(
|
||||
typedef cl_program(CL_API_CALL *cl_api_clCreateProgramWithBinary)(
|
||||
cl_context context, cl_uint num_devices, const cl_device_id *device_list,
|
||||
const size_t *lengths, const unsigned char **binaries,
|
||||
cl_int *binary_status, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_program(CL_API_CALL *cl_api_clCreateProgramWithBuiltInKernels)(
|
||||
cl_context context, cl_uint num_devices, const cl_device_id *device_list,
|
||||
const char *kernel_names, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
@ -278,13 +278,13 @@ typedef void *cl_api_clCreateProgramWithBuiltInKernels;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clRetainProgram)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clRetainProgram)(
|
||||
cl_program program) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clReleaseProgram)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clReleaseProgram)(
|
||||
cl_program program) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clBuildProgram)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clBuildProgram)(
|
||||
cl_program program, cl_uint num_devices, const cl_device_id *device_list,
|
||||
const char *options,
|
||||
void(CL_CALLBACK *pfn_notify)(cl_program program, void *user_data),
|
||||
@ -292,14 +292,14 @@ typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clBuildProgram)(
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clCompileProgram)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clCompileProgram)(
|
||||
cl_program program, cl_uint num_devices, const cl_device_id *device_list,
|
||||
const char *options, cl_uint num_input_headers,
|
||||
const cl_program *input_headers, const char **header_include_names,
|
||||
void(CL_CALLBACK *pfn_notify)(cl_program program, void *user_data),
|
||||
void *user_data) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_program(CL_API_CALL *cl_api_clLinkProgram)(
|
||||
typedef cl_program(CL_API_CALL *cl_api_clLinkProgram)(
|
||||
cl_context context, cl_uint num_devices, const cl_device_id *device_list,
|
||||
const char *options, cl_uint num_input_programs,
|
||||
const cl_program *input_programs,
|
||||
@ -315,12 +315,12 @@ typedef void *cl_api_clLinkProgram;
|
||||
|
||||
#ifdef CL_VERSION_2_2
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_int(CL_API_CALL *cl_api_clSetProgramSpecializationConstant)(
|
||||
cl_program program, cl_uint spec_id, size_t spec_size,
|
||||
const void *spec_value) CL_API_SUFFIX__VERSION_2_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clSetProgramReleaseCallback)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clSetProgramReleaseCallback)(
|
||||
cl_program program,
|
||||
void(CL_CALLBACK *pfn_notify)(cl_program program, void *user_data),
|
||||
void *user_data) CL_API_SUFFIX__VERSION_2_2;
|
||||
@ -334,7 +334,7 @@ typedef void *cl_api_clSetProgramReleaseCallback;
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clUnloadPlatformCompiler)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clUnloadPlatformCompiler)(
|
||||
cl_platform_id platform) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#else
|
||||
@ -343,41 +343,41 @@ typedef void *cl_api_clUnloadPlatformCompiler;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetProgramInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetProgramInfo)(
|
||||
cl_program program, cl_program_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetProgramBuildInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetProgramBuildInfo)(
|
||||
cl_program program, cl_device_id device, cl_program_build_info param_name,
|
||||
size_t param_value_size, void *param_value,
|
||||
size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
// Kernel Object APIs
|
||||
typedef CL_API_ENTRY cl_kernel(CL_API_CALL *cl_api_clCreateKernel)(
|
||||
typedef cl_kernel(CL_API_CALL *cl_api_clCreateKernel)(
|
||||
cl_program program, const char *kernel_name,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clCreateKernelsInProgram)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clCreateKernelsInProgram)(
|
||||
cl_program program, cl_uint num_kernels, cl_kernel *kernels,
|
||||
cl_uint *num_kernels_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clRetainKernel)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clRetainKernel)(
|
||||
cl_kernel kernel) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clReleaseKernel)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clReleaseKernel)(
|
||||
cl_kernel kernel) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clSetKernelArg)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clSetKernelArg)(
|
||||
cl_kernel kernel, cl_uint arg_index, size_t arg_size,
|
||||
const void *arg_value) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetKernelInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetKernelInfo)(
|
||||
cl_kernel kernel, cl_kernel_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetKernelArgInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetKernelArgInfo)(
|
||||
cl_kernel kernel, cl_uint arg_indx, cl_kernel_arg_info param_name,
|
||||
size_t param_value_size, void *param_value,
|
||||
size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
@ -388,28 +388,28 @@ typedef void *cl_api_clGetKernelArgInfo;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetKernelWorkGroupInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetKernelWorkGroupInfo)(
|
||||
cl_kernel kernel, cl_device_id device, cl_kernel_work_group_info param_name,
|
||||
size_t param_value_size, void *param_value,
|
||||
size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_VERSION_2_0
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clSetKernelArgSVMPointer)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clSetKernelArgSVMPointer)(
|
||||
cl_kernel /* kernel */, cl_uint /* arg_index */,
|
||||
const void * /* arg_value */) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clSetKernelExecInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clSetKernelExecInfo)(
|
||||
cl_kernel /* kernel */, cl_kernel_exec_info /* param_name */,
|
||||
size_t /* param_value_size */,
|
||||
const void * /* param_value */) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetKernelSubGroupInfoKHR)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetKernelSubGroupInfoKHR)(
|
||||
cl_kernel /* in_kernel */, cl_device_id /*in_device*/,
|
||||
cl_kernel_sub_group_info /* param_name */, size_t /*input_value_size*/,
|
||||
const void * /*input_value*/, size_t /*param_value_size*/,
|
||||
void * /*param_value*/,
|
||||
size_t * /*param_value_size_ret*/) CL_EXT_SUFFIX__VERSION_2_0;
|
||||
size_t * /*param_value_size_ret*/) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
#else
|
||||
|
||||
@ -420,33 +420,33 @@ typedef void *cl_api_clGetKernelSubGroupInfoKHR;
|
||||
#endif
|
||||
|
||||
// Event Object APIs
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clWaitForEvents)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clWaitForEvents)(
|
||||
cl_uint num_events, const cl_event *event_list) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetEventInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetEventInfo)(
|
||||
cl_event event, cl_event_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clRetainEvent)(cl_event event)
|
||||
typedef cl_int(CL_API_CALL *cl_api_clRetainEvent)(cl_event event)
|
||||
CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clReleaseEvent)(cl_event event)
|
||||
typedef cl_int(CL_API_CALL *cl_api_clReleaseEvent)(cl_event event)
|
||||
CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
// Profiling APIs
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetEventProfilingInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetEventProfilingInfo)(
|
||||
cl_event event, cl_profiling_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
// Flush and Finish APIs
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clFlush)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clFlush)(
|
||||
cl_command_queue command_queue) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clFinish)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clFinish)(
|
||||
cl_command_queue command_queue) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
// Enqueued Commands APIs
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueReadBuffer)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueReadBuffer)(
|
||||
cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_read,
|
||||
size_t offset, size_t cb, void *ptr, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
@ -454,7 +454,7 @@ typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueReadBuffer)(
|
||||
|
||||
#ifdef CL_VERSION_1_1
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueReadBufferRect)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueReadBufferRect)(
|
||||
cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_read,
|
||||
const size_t *buffer_origin, const size_t *host_origin,
|
||||
const size_t *region, size_t buffer_row_pitch, size_t buffer_slice_pitch,
|
||||
@ -468,7 +468,7 @@ typedef void *cl_api_clEnqueueReadBufferRect;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueWriteBuffer)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueWriteBuffer)(
|
||||
cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_write,
|
||||
size_t offset, size_t cb, const void *ptr, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
@ -476,7 +476,7 @@ typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueWriteBuffer)(
|
||||
|
||||
#ifdef CL_VERSION_1_1
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueWriteBufferRect)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueWriteBufferRect)(
|
||||
cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_read,
|
||||
const size_t *buffer_origin, const size_t *host_origin,
|
||||
const size_t *region, size_t buffer_row_pitch, size_t buffer_slice_pitch,
|
||||
@ -492,7 +492,7 @@ typedef void *cl_api_clEnqueueWriteBufferRect;
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueFillBuffer)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueFillBuffer)(
|
||||
cl_command_queue command_queue, cl_mem buffer, const void *pattern,
|
||||
size_t pattern_size, size_t offset, size_t cb,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
@ -504,7 +504,7 @@ typedef void *cl_api_clEnqueueFillBuffer;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueCopyBuffer)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueCopyBuffer)(
|
||||
cl_command_queue command_queue, cl_mem src_buffer, cl_mem dst_buffer,
|
||||
size_t src_offset, size_t dst_offset, size_t cb,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
@ -512,7 +512,7 @@ typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueCopyBuffer)(
|
||||
|
||||
#ifdef CL_VERSION_1_1
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueCopyBufferRect)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueCopyBufferRect)(
|
||||
cl_command_queue command_queue, cl_mem src_buffer, cl_mem dst_buffer,
|
||||
const size_t *src_origin, const size_t *dst_origin, const size_t *region,
|
||||
size_t src_row_pitch, size_t src_slice_pitch, size_t dst_row_pitch,
|
||||
@ -526,14 +526,14 @@ typedef void *cl_api_clEnqueueCopyBufferRect;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueReadImage)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueReadImage)(
|
||||
cl_command_queue command_queue, cl_mem image, cl_bool blocking_read,
|
||||
const size_t *origin, const size_t *region, size_t row_pitch,
|
||||
size_t slice_pitch, void *ptr, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueWriteImage)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueWriteImage)(
|
||||
cl_command_queue command_queue, cl_mem image, cl_bool blocking_write,
|
||||
const size_t *origin, const size_t *region, size_t input_row_pitch,
|
||||
size_t input_slice_pitch, const void *ptr, cl_uint num_events_in_wait_list,
|
||||
@ -542,7 +542,7 @@ typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueWriteImage)(
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueFillImage)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueFillImage)(
|
||||
cl_command_queue command_queue, cl_mem image, const void *fill_color,
|
||||
const size_t origin[3], const size_t region[3],
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
@ -554,45 +554,45 @@ typedef void *cl_api_clEnqueueFillImage;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueCopyImage)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueCopyImage)(
|
||||
cl_command_queue command_queue, cl_mem src_image, cl_mem dst_image,
|
||||
const size_t *src_origin, const size_t *dst_origin, const size_t *region,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueCopyImageToBuffer)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueCopyImageToBuffer)(
|
||||
cl_command_queue command_queue, cl_mem src_image, cl_mem dst_buffer,
|
||||
const size_t *src_origin, const size_t *region, size_t dst_offset,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueCopyBufferToImage)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueCopyBufferToImage)(
|
||||
cl_command_queue command_queue, cl_mem src_buffer, cl_mem dst_image,
|
||||
size_t src_offset, const size_t *dst_origin, const size_t *region,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY void *(CL_API_CALL *cl_api_clEnqueueMapBuffer)(
|
||||
typedef void *(CL_API_CALL *cl_api_clEnqueueMapBuffer)(
|
||||
cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_map,
|
||||
cl_map_flags map_flags, size_t offset, size_t cb,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
cl_event *event, cl_int *errcode_ret)CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY void *(CL_API_CALL *cl_api_clEnqueueMapImage)(
|
||||
typedef void *(CL_API_CALL *cl_api_clEnqueueMapImage)(
|
||||
cl_command_queue command_queue, cl_mem image, cl_bool blocking_map,
|
||||
cl_map_flags map_flags, const size_t *origin, const size_t *region,
|
||||
size_t *image_row_pitch, size_t *image_slice_pitch,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
cl_event *event, cl_int *errcode_ret)CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueUnmapMemObject)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueUnmapMemObject)(
|
||||
cl_command_queue command_queue, cl_mem memobj, void *mapped_ptr,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueMigrateMemObjects)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueMigrateMemObjects)(
|
||||
cl_command_queue command_queue, cl_uint num_mem_objects,
|
||||
const cl_mem *mem_objects, cl_mem_migration_flags flags,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
@ -604,19 +604,19 @@ typedef void *cl_api_clEnqueueMigrateMemObjects;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueNDRangeKernel)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueNDRangeKernel)(
|
||||
cl_command_queue command_queue, cl_kernel kernel, cl_uint work_dim,
|
||||
const size_t *global_work_offset, const size_t *global_work_size,
|
||||
const size_t *local_work_size, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueTask)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueTask)(
|
||||
cl_command_queue command_queue, cl_kernel kernel,
|
||||
cl_uint num_events_in_wait_list, const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueNativeKernel)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueNativeKernel)(
|
||||
cl_command_queue command_queue, void(CL_CALLBACK *user_func)(void *),
|
||||
void *args, size_t cb_args, cl_uint num_mem_objects, const cl_mem *mem_list,
|
||||
const void **args_mem_loc, cl_uint num_events_in_wait_list,
|
||||
@ -625,17 +625,17 @@ typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueNativeKernel)(
|
||||
|
||||
#ifdef CL_VERSION_1_2
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueMarkerWithWaitList)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueMarkerWithWaitList)(
|
||||
cl_command_queue command_queue, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueBarrierWithWaitList)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueBarrierWithWaitList)(
|
||||
cl_command_queue command_queue, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY void *(
|
||||
typedef void *(
|
||||
CL_API_CALL *cl_api_clGetExtensionFunctionAddressForPlatform)(
|
||||
cl_platform_id platform,
|
||||
const char *function_name)CL_API_SUFFIX__VERSION_1_2;
|
||||
@ -652,7 +652,7 @@ typedef void *cl_api_clGetExtensionFunctionAddressForPlatform;
|
||||
|
||||
#ifdef CL_VERSION_2_0
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueSVMFree)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueSVMFree)(
|
||||
cl_command_queue /* command_queue */, cl_uint /* num_svm_pointers */,
|
||||
void ** /* svm_pointers */,
|
||||
void(CL_CALLBACK *pfn_free_func)(cl_command_queue /* queue */,
|
||||
@ -663,28 +663,28 @@ typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueSVMFree)(
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueSVMMemcpy)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueSVMMemcpy)(
|
||||
cl_command_queue /* command_queue */, cl_bool /* blocking_copy */,
|
||||
void * /* dst_ptr */, const void * /* src_ptr */, size_t /* size */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueSVMMemFill)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueSVMMemFill)(
|
||||
cl_command_queue /* command_queue */, void * /* svm_ptr */,
|
||||
const void * /* pattern */, size_t /* pattern_size */, size_t /* size */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueSVMMap)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueSVMMap)(
|
||||
cl_command_queue /* command_queue */, cl_bool /* blocking_map */,
|
||||
cl_map_flags /* map_flags */, void * /* svm_ptr */, size_t /* size */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_2_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueSVMUnmap)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueSVMUnmap)(
|
||||
cl_command_queue /* command_queue */, void * /* svm_ptr */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
@ -701,119 +701,119 @@ typedef void *cl_api_clEnqueueSVMUnmap;
|
||||
#endif
|
||||
|
||||
// Deprecated APIs
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clSetCommandQueueProperty)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clSetCommandQueueProperty)(
|
||||
cl_command_queue command_queue, cl_command_queue_properties properties,
|
||||
cl_bool enable, cl_command_queue_properties *old_properties)
|
||||
CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED;
|
||||
CL_API_SUFFIX__VERSION_1_0_DEPRECATED;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateImage2D)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateImage2D)(
|
||||
cl_context context, cl_mem_flags flags, const cl_image_format *image_format,
|
||||
size_t image_width, size_t image_height, size_t image_row_pitch,
|
||||
void *host_ptr, cl_int *errcode_ret) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
void *host_ptr, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateImage3D)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateImage3D)(
|
||||
cl_context context, cl_mem_flags flags, const cl_image_format *image_format,
|
||||
size_t image_width, size_t image_height, size_t image_depth,
|
||||
size_t image_row_pitch, size_t image_slice_pitch, void *host_ptr,
|
||||
cl_int *errcode_ret) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clUnloadCompiler)(void)
|
||||
CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
typedef cl_int(CL_API_CALL *cl_api_clUnloadCompiler)(void)
|
||||
CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueMarker)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueMarker)(
|
||||
cl_command_queue command_queue,
|
||||
cl_event *event) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueWaitForEvents)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueWaitForEvents)(
|
||||
cl_command_queue command_queue, cl_uint num_events,
|
||||
const cl_event *event_list) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
const cl_event *event_list) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueBarrier)(
|
||||
cl_command_queue command_queue) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueBarrier)(
|
||||
cl_command_queue command_queue) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
typedef CL_API_ENTRY void *(CL_API_CALL *cl_api_clGetExtensionFunctionAddress)(
|
||||
const char *function_name)CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
typedef void *(CL_API_CALL *cl_api_clGetExtensionFunctionAddress)(
|
||||
const char *function_name)CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
// GL and other APIs
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromGLBuffer)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromGLBuffer)(
|
||||
cl_context context, cl_mem_flags flags, cl_GLuint bufobj,
|
||||
int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromGLTexture)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromGLTexture)(
|
||||
cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel,
|
||||
cl_GLuint texture, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromGLTexture2D)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromGLTexture2D)(
|
||||
cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel,
|
||||
cl_GLuint texture, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromGLTexture3D)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromGLTexture3D)(
|
||||
cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel,
|
||||
cl_GLuint texture, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromGLRenderbuffer)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromGLRenderbuffer)(
|
||||
cl_context context, cl_mem_flags flags, cl_GLuint renderbuffer,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetGLObjectInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetGLObjectInfo)(
|
||||
cl_mem memobj, cl_gl_object_type *gl_object_type,
|
||||
cl_GLuint *gl_object_name) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetGLTextureInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetGLTextureInfo)(
|
||||
cl_mem memobj, cl_gl_texture_info param_name, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueAcquireGLObjects)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueAcquireGLObjects)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueReleaseGLObjects)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueReleaseGLObjects)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
/* cl_khr_gl_sharing */
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetGLContextInfoKHR)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetGLContextInfoKHR)(
|
||||
const cl_context_properties *properties, cl_gl_context_info param_name,
|
||||
size_t param_value_size, void *param_value, size_t *param_value_size_ret);
|
||||
|
||||
/* cl_khr_gl_event */
|
||||
typedef CL_API_ENTRY cl_event(CL_API_CALL *cl_api_clCreateEventFromGLsyncKHR)(
|
||||
typedef cl_event(CL_API_CALL *cl_api_clCreateEventFromGLsyncKHR)(
|
||||
cl_context context, cl_GLsync sync, cl_int *errcode_ret);
|
||||
|
||||
#if defined(_WIN32)
|
||||
|
||||
/* cl_khr_d3d10_sharing */
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetDeviceIDsFromD3D10KHR)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetDeviceIDsFromD3D10KHR)(
|
||||
cl_platform_id platform, cl_d3d10_device_source_khr d3d_device_source,
|
||||
void *d3d_object, cl_d3d10_device_set_khr d3d_device_set,
|
||||
cl_uint num_entries, cl_device_id *devices,
|
||||
cl_uint *num_devices) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromD3D10BufferKHR)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromD3D10BufferKHR)(
|
||||
cl_context context, cl_mem_flags flags, ID3D10Buffer *resource,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromD3D10Texture2DKHR)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromD3D10Texture2DKHR)(
|
||||
cl_context context, cl_mem_flags flags, ID3D10Texture2D *resource,
|
||||
UINT subresource, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromD3D10Texture3DKHR)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromD3D10Texture3DKHR)(
|
||||
cl_context context, cl_mem_flags flags, ID3D10Texture3D *resource,
|
||||
UINT subresource, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_int(CL_API_CALL *cl_api_clEnqueueAcquireD3D10ObjectsKHR)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_int(CL_API_CALL *cl_api_clEnqueueReleaseD3D10ObjectsKHR)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
@ -848,32 +848,32 @@ extern CL_API_ENTRY cl_int CL_API_CALL clEnqueueReleaseD3D10ObjectsKHR(
|
||||
const cl_event *event_wait_list, cl_event *event);
|
||||
|
||||
/* cl_khr_d3d11_sharing */
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetDeviceIDsFromD3D11KHR)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetDeviceIDsFromD3D11KHR)(
|
||||
cl_platform_id platform, cl_d3d11_device_source_khr d3d_device_source,
|
||||
void *d3d_object, cl_d3d11_device_set_khr d3d_device_set,
|
||||
cl_uint num_entries, cl_device_id *devices,
|
||||
cl_uint *num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromD3D11BufferKHR)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromD3D11BufferKHR)(
|
||||
cl_context context, cl_mem_flags flags, ID3D11Buffer *resource,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromD3D11Texture2DKHR)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromD3D11Texture2DKHR)(
|
||||
cl_context context, cl_mem_flags flags, ID3D11Texture2D *resource,
|
||||
UINT subresource, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromD3D11Texture3DKHR)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromD3D11Texture3DKHR)(
|
||||
cl_context context, cl_mem_flags flags, ID3D11Texture3D *resource,
|
||||
UINT subresource, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_int(CL_API_CALL *cl_api_clEnqueueAcquireD3D11ObjectsKHR)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_int(CL_API_CALL *cl_api_clEnqueueReleaseD3D11ObjectsKHR)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
@ -881,26 +881,26 @@ cl_int(CL_API_CALL *cl_api_clEnqueueReleaseD3D11ObjectsKHR)(
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
/* cl_khr_dx9_media_sharing */
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_int(CL_API_CALL *cl_api_clGetDeviceIDsFromDX9MediaAdapterKHR)(
|
||||
cl_platform_id platform, cl_uint num_media_adapters,
|
||||
cl_dx9_media_adapter_type_khr *media_adapters_type, void *media_adapters,
|
||||
cl_dx9_media_adapter_set_khr media_adapter_set, cl_uint num_entries,
|
||||
cl_device_id *devices, cl_uint *num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromDX9MediaSurfaceKHR)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromDX9MediaSurfaceKHR)(
|
||||
cl_context context, cl_mem_flags flags,
|
||||
cl_dx9_media_adapter_type_khr adapter_type, void *surface_info,
|
||||
cl_uint plane, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_int(CL_API_CALL *cl_api_clEnqueueAcquireDX9MediaSurfacesKHR)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_int(CL_API_CALL *cl_api_clEnqueueReleaseDX9MediaSurfacesKHR)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
@ -987,29 +987,29 @@ typedef void *cl_api_clGetDeviceIDsFromDX9MediaAdapterKHR;
|
||||
|
||||
#ifdef CL_VERSION_1_1
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clSetEventCallback)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clSetEventCallback)(
|
||||
cl_event /* event */, cl_int /* command_exec_callback_type */,
|
||||
void(CL_CALLBACK * /* pfn_notify */)(cl_event, cl_int, void *),
|
||||
void * /* user_data */) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateSubBuffer)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateSubBuffer)(
|
||||
cl_mem /* buffer */, cl_mem_flags /* flags */,
|
||||
cl_buffer_create_type /* buffer_create_type */,
|
||||
const void * /* buffer_create_info */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef CL_API_ENTRY
|
||||
typedef
|
||||
cl_int(CL_API_CALL *cl_api_clSetMemObjectDestructorCallback)(
|
||||
cl_mem /* memobj */,
|
||||
void(CL_CALLBACK * /*pfn_notify*/)(cl_mem /* memobj */,
|
||||
void * /*user_data*/),
|
||||
void * /*user_data */) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_event(CL_API_CALL *cl_api_clCreateUserEvent)(
|
||||
typedef cl_event(CL_API_CALL *cl_api_clCreateUserEvent)(
|
||||
cl_context /* context */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clSetUserEventStatus)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clSetUserEventStatus)(
|
||||
cl_event /* event */,
|
||||
cl_int /* execution_status */) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
@ -1023,68 +1023,68 @@ typedef void *cl_api_clSetUserEventStatus;
|
||||
|
||||
#endif
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clCreateSubDevicesEXT)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clCreateSubDevicesEXT)(
|
||||
cl_device_id in_device,
|
||||
const cl_device_partition_property_ext *partition_properties,
|
||||
cl_uint num_entries, cl_device_id *out_devices, cl_uint *num_devices);
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clRetainDeviceEXT)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clRetainDeviceEXT)(
|
||||
cl_device_id device) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clReleaseDeviceEXT)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clReleaseDeviceEXT)(
|
||||
cl_device_id device) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
/* cl_khr_egl_image */
|
||||
typedef CL_API_ENTRY cl_mem(CL_API_CALL *cl_api_clCreateFromEGLImageKHR)(
|
||||
typedef cl_mem(CL_API_CALL *cl_api_clCreateFromEGLImageKHR)(
|
||||
cl_context context, CLeglDisplayKHR display, CLeglImageKHR image,
|
||||
cl_mem_flags flags, const cl_egl_image_properties_khr *properties,
|
||||
cl_int *errcode_ret);
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueAcquireEGLObjectsKHR)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueAcquireEGLObjectsKHR)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list, cl_event *event);
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueReleaseEGLObjectsKHR)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueReleaseEGLObjectsKHR)(
|
||||
cl_command_queue command_queue, cl_uint num_objects,
|
||||
const cl_mem *mem_objects, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list, cl_event *event);
|
||||
|
||||
/* cl_khr_egl_event */
|
||||
typedef CL_API_ENTRY cl_event(CL_API_CALL *cl_api_clCreateEventFromEGLSyncKHR)(
|
||||
typedef cl_event(CL_API_CALL *cl_api_clCreateEventFromEGLSyncKHR)(
|
||||
cl_context context, CLeglSyncKHR sync, CLeglDisplayKHR display,
|
||||
cl_int *errcode_ret);
|
||||
|
||||
#ifdef CL_VERSION_2_1
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clSetDefaultDeviceCommandQueue)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clSetDefaultDeviceCommandQueue)(
|
||||
cl_context context, cl_device_id device,
|
||||
cl_command_queue command_queue) CL_API_SUFFIX__VERSION_2_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_program(CL_API_CALL *cl_api_clCreateProgramWithIL)(
|
||||
typedef cl_program(CL_API_CALL *cl_api_clCreateProgramWithIL)(
|
||||
cl_context context, const void *il, size_t length,
|
||||
cl_int *errcode_ret) CL_API_SUFFIX__VERSION_2_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetKernelSubGroupInfo)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetKernelSubGroupInfo)(
|
||||
cl_kernel kernel, cl_device_id device, cl_kernel_sub_group_info param_name,
|
||||
size_t input_value_size, const void *input_value, size_t param_value_size,
|
||||
void *param_value, size_t *param_value_size_ret) CL_API_SUFFIX__VERSION_2_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_kernel(CL_API_CALL *cl_api_clCloneKernel)(
|
||||
typedef cl_kernel(CL_API_CALL *cl_api_clCloneKernel)(
|
||||
cl_kernel source_kernel, cl_int *errcode_ret) CL_API_SUFFIX__VERSION_2_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clEnqueueSVMMigrateMem)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clEnqueueSVMMigrateMem)(
|
||||
cl_command_queue command_queue, cl_uint num_svm_pointers,
|
||||
const void **svm_pointers, const size_t *sizes,
|
||||
cl_mem_migration_flags flags, cl_uint num_events_in_wait_list,
|
||||
const cl_event *event_wait_list,
|
||||
cl_event *event) CL_API_SUFFIX__VERSION_2_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetDeviceAndHostTimer)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetDeviceAndHostTimer)(
|
||||
cl_device_id device, cl_ulong *device_timestamp,
|
||||
cl_ulong *host_timestamp) CL_API_SUFFIX__VERSION_2_1;
|
||||
|
||||
typedef CL_API_ENTRY cl_int(CL_API_CALL *cl_api_clGetHostTimer)(
|
||||
typedef cl_int(CL_API_CALL *cl_api_clGetHostTimer)(
|
||||
cl_device_id device, cl_ulong *host_timestamp) CL_API_SUFFIX__VERSION_2_1;
|
||||
|
||||
#else
|
||||
|
61
CL/cl_layer.h
Normal file
61
CL/cl_layer.h
Normal file
@ -0,0 +1,61 @@
|
||||
/*
|
||||
* Copyright (c) 2020 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.
|
||||
*
|
||||
* OpenCL is a trademark of Apple Inc. used under license by Khronos.
|
||||
*/
|
||||
|
||||
#ifndef OPENCL_CL_LAYER_H
|
||||
#define OPENCL_CL_LAYER_H
|
||||
|
||||
#include <CL/cl_icd.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef cl_uint cl_layer_info;
|
||||
typedef cl_uint cl_layer_api_version;
|
||||
#define CL_LAYER_API_VERSION 0x4240
|
||||
#define CL_LAYER_API_VERSION_100 100
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetLayerInfo(cl_layer_info param_name,
|
||||
size_t param_value_size,
|
||||
void *param_value,
|
||||
size_t *param_value_size_ret);
|
||||
|
||||
typedef cl_int
|
||||
(CL_API_CALL *pfn_clGetLayerInfo)(cl_layer_info param_name,
|
||||
size_t param_value_size,
|
||||
void *param_value,
|
||||
size_t *param_value_size_ret);
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clInitLayer(cl_uint num_entries,
|
||||
const cl_icd_dispatch *target_dispatch,
|
||||
cl_uint *num_entries_ret,
|
||||
const cl_icd_dispatch **layer_dispatch_ret);
|
||||
|
||||
typedef cl_int
|
||||
(CL_API_CALL *pfn_clInitLayer)(cl_uint num_entries,
|
||||
const cl_icd_dispatch *target_dispatch,
|
||||
cl_uint *num_entries_ret,
|
||||
const cl_icd_dispatch **layer_dispatch_ret);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* OPENCL_CL_LAYER_H */
|
161
CL/cl_platform.h
161
CL/cl_platform.h
@ -24,13 +24,25 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
#if defined(_WIN32)
|
||||
#define CL_API_ENTRY
|
||||
#define CL_API_CALL __stdcall
|
||||
#define CL_CALLBACK __stdcall
|
||||
#if !defined(CL_API_ENTRY)
|
||||
#define CL_API_ENTRY
|
||||
#endif
|
||||
#if !defined(CL_API_CALL)
|
||||
#define CL_API_CALL __stdcall
|
||||
#endif
|
||||
#if !defined(CL_CALLBACK)
|
||||
#define CL_CALLBACK __stdcall
|
||||
#endif
|
||||
#else
|
||||
#define CL_API_ENTRY
|
||||
#define CL_API_CALL
|
||||
#define CL_CALLBACK
|
||||
#if !defined(CL_API_ENTRY)
|
||||
#define CL_API_ENTRY
|
||||
#endif
|
||||
#if !defined(CL_API_CALL)
|
||||
#define CL_API_CALL
|
||||
#endif
|
||||
#if !defined(CL_CALLBACK)
|
||||
#define CL_CALLBACK
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
@ -41,86 +53,99 @@ extern "C" {
|
||||
* deprecation but is deprecated in versions later than 1.1.
|
||||
*/
|
||||
|
||||
#define CL_EXTENSION_WEAK_LINK
|
||||
#define CL_API_SUFFIX__VERSION_1_0
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0
|
||||
#define CL_API_SUFFIX__VERSION_1_1
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1
|
||||
#define CL_API_SUFFIX__VERSION_1_2
|
||||
#define CL_EXT_SUFFIX__VERSION_1_2
|
||||
#define CL_API_SUFFIX__VERSION_2_0
|
||||
#define CL_EXT_SUFFIX__VERSION_2_0
|
||||
#define CL_API_SUFFIX__VERSION_2_1
|
||||
#define CL_EXT_SUFFIX__VERSION_2_1
|
||||
#define CL_API_SUFFIX__VERSION_2_2
|
||||
#define CL_EXT_SUFFIX__VERSION_2_2
|
||||
#define CL_API_SUFFIX__VERSION_3_0
|
||||
#define CL_EXT_SUFFIX__VERSION_3_0
|
||||
#define CL_API_SUFFIX__EXPERIMENTAL
|
||||
#define CL_EXT_SUFFIX__EXPERIMENTAL
|
||||
#ifndef CL_API_SUFFIX_USER
|
||||
#define CL_API_SUFFIX_USER
|
||||
#endif
|
||||
|
||||
#ifndef CL_API_PREFIX_USER
|
||||
#define CL_API_PREFIX_USER
|
||||
#endif
|
||||
|
||||
#define CL_API_SUFFIX_COMMON CL_API_SUFFIX_USER
|
||||
#define CL_API_PREFIX_COMMON CL_API_PREFIX_USER
|
||||
|
||||
#define CL_API_SUFFIX__VERSION_1_0 CL_API_SUFFIX_COMMON
|
||||
#define CL_API_SUFFIX__VERSION_1_1 CL_API_SUFFIX_COMMON
|
||||
#define CL_API_SUFFIX__VERSION_1_2 CL_API_SUFFIX_COMMON
|
||||
#define CL_API_SUFFIX__VERSION_2_0 CL_API_SUFFIX_COMMON
|
||||
#define CL_API_SUFFIX__VERSION_2_1 CL_API_SUFFIX_COMMON
|
||||
#define CL_API_SUFFIX__VERSION_2_2 CL_API_SUFFIX_COMMON
|
||||
#define CL_API_SUFFIX__VERSION_3_0 CL_API_SUFFIX_COMMON
|
||||
#define CL_API_SUFFIX__EXPERIMENTAL CL_API_SUFFIX_COMMON
|
||||
|
||||
|
||||
#ifdef __GNUC__
|
||||
#define CL_EXT_SUFFIX_DEPRECATED __attribute__((deprecated))
|
||||
#define CL_EXT_PREFIX_DEPRECATED
|
||||
#define CL_API_SUFFIX_DEPRECATED __attribute__((deprecated))
|
||||
#define CL_API_PREFIX_DEPRECATED
|
||||
#elif defined(_WIN32)
|
||||
#define CL_EXT_SUFFIX_DEPRECATED
|
||||
#define CL_EXT_PREFIX_DEPRECATED __declspec(deprecated)
|
||||
#define CL_API_SUFFIX_DEPRECATED
|
||||
#define CL_API_PREFIX_DEPRECATED __declspec(deprecated)
|
||||
#else
|
||||
#define CL_EXT_SUFFIX_DEPRECATED
|
||||
#define CL_EXT_PREFIX_DEPRECATED
|
||||
#define CL_API_SUFFIX_DEPRECATED
|
||||
#define CL_API_PREFIX_DEPRECATED
|
||||
#endif
|
||||
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_1_0_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_0_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_1_0_DEPRECATED CL_API_SUFFIX_COMMON
|
||||
#define CL_API_PREFIX__VERSION_1_0_DEPRECATED CL_API_PREFIX_COMMON
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED CL_EXT_SUFFIX_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_0_DEPRECATED CL_EXT_PREFIX_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_1_0_DEPRECATED CL_API_SUFFIX_COMMON CL_API_SUFFIX_DEPRECATED
|
||||
#define CL_API_PREFIX__VERSION_1_0_DEPRECATED CL_API_PREFIX_COMMON CL_API_PREFIX_DEPRECATED
|
||||
#endif
|
||||
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_1_1_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_1_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_1_1_DEPRECATED CL_API_SUFFIX_COMMON
|
||||
#define CL_API_PREFIX__VERSION_1_1_DEPRECATED CL_API_PREFIX_COMMON
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED CL_EXT_SUFFIX_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_1_DEPRECATED CL_EXT_PREFIX_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_1_1_DEPRECATED CL_API_SUFFIX_COMMON CL_API_SUFFIX_DEPRECATED
|
||||
#define CL_API_PREFIX__VERSION_1_1_DEPRECATED CL_API_PREFIX_COMMON CL_API_PREFIX_DEPRECATED
|
||||
#endif
|
||||
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_1_2_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_2_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_1_2_DEPRECATED CL_API_SUFFIX_COMMON
|
||||
#define CL_API_PREFIX__VERSION_1_2_DEPRECATED CL_API_PREFIX_COMMON
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED CL_EXT_SUFFIX_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_2_DEPRECATED CL_EXT_PREFIX_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_1_2_DEPRECATED CL_API_SUFFIX_COMMON CL_API_SUFFIX_DEPRECATED
|
||||
#define CL_API_PREFIX__VERSION_1_2_DEPRECATED CL_API_PREFIX_COMMON CL_API_PREFIX_DEPRECATED
|
||||
#endif
|
||||
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_2_0_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_2_0_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_2_0_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_2_0_DEPRECATED CL_API_SUFFIX_COMMON
|
||||
#define CL_API_PREFIX__VERSION_2_0_DEPRECATED CL_API_PREFIX_COMMON
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_2_0_DEPRECATED CL_EXT_SUFFIX_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_2_0_DEPRECATED CL_EXT_PREFIX_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_2_0_DEPRECATED CL_API_SUFFIX_COMMON CL_API_SUFFIX_DEPRECATED
|
||||
#define CL_API_PREFIX__VERSION_2_0_DEPRECATED CL_API_PREFIX_COMMON CL_API_PREFIX_DEPRECATED
|
||||
#endif
|
||||
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_2_1_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_2_1_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_2_1_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_2_1_DEPRECATED CL_API_SUFFIX_COMMON
|
||||
#define CL_API_PREFIX__VERSION_2_1_DEPRECATED CL_API_PREFIX_COMMON
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_2_1_DEPRECATED CL_EXT_SUFFIX_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_2_1_DEPRECATED CL_EXT_PREFIX_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_2_1_DEPRECATED CL_API_SUFFIX_COMMON CL_API_SUFFIX_DEPRECATED
|
||||
#define CL_API_PREFIX__VERSION_2_1_DEPRECATED CL_API_PREFIX_COMMON CL_API_PREFIX_DEPRECATED
|
||||
#endif
|
||||
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_2_2_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_2_2_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_2_2_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_2_2_DEPRECATED CL_API_SUFFIX_COMMON
|
||||
#define CL_API_PREFIX__VERSION_2_2_DEPRECATED CL_API_PREFIX_COMMON
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_2_2_DEPRECATED CL_EXT_SUFFIX_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_2_2_DEPRECATED CL_EXT_PREFIX_DEPRECATED
|
||||
#define CL_API_SUFFIX__VERSION_2_2_DEPRECATED CL_API_SUFFIX_COMMON CL_API_SUFFIX_DEPRECATED
|
||||
#define CL_API_PREFIX__VERSION_2_2_DEPRECATED CL_API_PREFIX_COMMON CL_API_PREFIX_DEPRECATED
|
||||
#endif
|
||||
|
||||
#if (defined (_WIN32) && defined(_MSC_VER))
|
||||
|
||||
#if defined(__clang__)
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wlanguage-extension-token"
|
||||
#endif
|
||||
|
||||
/* intptr_t is used in cl.h and provided by stddef.h in Visual C++, but not in clang */
|
||||
/* stdint.h was missing before Visual Studio 2010, include it for later versions and for clang */
|
||||
#if defined(__clang__) || _MSC_VER >= 1600
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
/* scalar types */
|
||||
typedef signed __int8 cl_char;
|
||||
typedef unsigned __int8 cl_uchar;
|
||||
@ -135,6 +160,10 @@ typedef unsigned __int16 cl_half;
|
||||
typedef float cl_float;
|
||||
typedef double cl_double;
|
||||
|
||||
#if defined(__clang__)
|
||||
#pragma clang diagnostic pop
|
||||
#endif
|
||||
|
||||
/* Macro names and corresponding values defined by OpenCL */
|
||||
#define CL_CHAR_BIT 8
|
||||
#define CL_SCHAR_MAX 127
|
||||
@ -481,25 +510,23 @@ typedef unsigned int cl_GLenum;
|
||||
#if !defined(__cplusplus) && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
|
||||
#define __CL_HAS_ANON_STRUCT__ 1
|
||||
#define __CL_ANON_STRUCT__
|
||||
#elif defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
#elif defined(_WIN32) && defined(_MSC_VER) && !defined(__STDC__)
|
||||
#define __CL_HAS_ANON_STRUCT__ 1
|
||||
#define __CL_ANON_STRUCT__
|
||||
#elif defined(__GNUC__) && ! defined(__STRICT_ANSI__)
|
||||
#define __CL_HAS_ANON_STRUCT__ 1
|
||||
#define __CL_ANON_STRUCT__ __extension__
|
||||
#elif defined( _WIN32) && defined(_MSC_VER) && ! defined(__STDC__)
|
||||
#if _MSC_VER >= 1500
|
||||
/* Microsoft Developer Studio 2008 supports anonymous structs, but
|
||||
* complains by default. */
|
||||
#define __CL_HAS_ANON_STRUCT__ 1
|
||||
#define __CL_ANON_STRUCT__
|
||||
/* Disable warning C4201: nonstandard extension used : nameless
|
||||
* struct/union */
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 )
|
||||
#endif
|
||||
#else
|
||||
#define __CL_HAS_ANON_STRUCT__ 0
|
||||
#define __CL_ANON_STRUCT__
|
||||
#endif
|
||||
|
||||
#if defined(_WIN32) && defined(_MSC_VER) && __CL_HAS_ANON_STRUCT__
|
||||
/* Disable warning C4201: nonstandard extension used : nameless struct/union */
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 )
|
||||
#endif
|
||||
|
||||
/* Define alignment keys */
|
||||
#if defined( __GNUC__ ) || defined(__INTEGRITY)
|
||||
#define CL_ALIGNED(_x) __attribute__ ((aligned(_x)))
|
||||
@ -1375,10 +1402,8 @@ typedef union
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined( _WIN32) && defined(_MSC_VER) && ! defined(__STDC__)
|
||||
#if _MSC_VER >=1500
|
||||
#if defined(_WIN32) && defined(_MSC_VER) && __CL_HAS_ANON_STRUCT__
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif /* __CL_PLATFORM_H */
|
||||
|
@ -13,30 +13,6 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
/*****************************************************************************\
|
||||
|
||||
Copyright (c) 2013-2019 Intel Corporation All Rights Reserved.
|
||||
|
||||
THESE MATERIALS ARE PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR ITS
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
|
||||
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THESE
|
||||
MATERIALS, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
File Name: cl_va_api_media_sharing_intel.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Notes:
|
||||
|
||||
\*****************************************************************************/
|
||||
|
||||
|
||||
#ifndef __OPENCL_CL_VA_API_MEDIA_SHARING_INTEL_H
|
||||
#define __OPENCL_CL_VA_API_MEDIA_SHARING_INTEL_H
|
||||
@ -49,6 +25,33 @@ Notes:
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_va_api
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_va_api 1
|
||||
|
||||
/* when cl_intel_va_api_media_sharing is supported */
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedVA_APIMediaSurfaceFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
VAImageFormat* va_api_formats,
|
||||
cl_uint* num_surface_formats) ;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedVA_APIMediaSurfaceFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
VAImageFormat* va_api_formats,
|
||||
cl_uint* num_surface_formats) ;
|
||||
|
||||
/******************************************
|
||||
* cl_intel_va_api_media_sharing extension *
|
||||
*******************************************/
|
||||
@ -92,16 +95,16 @@ clGetDeviceIDsFromVA_APIMediaAdapterINTEL(
|
||||
cl_va_api_device_set_intel media_adapter_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL * clGetDeviceIDsFromVA_APIMediaAdapterINTEL_fn)(
|
||||
typedef cl_int (CL_API_CALL * clGetDeviceIDsFromVA_APIMediaAdapterINTEL_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_va_api_device_source_intel media_adapter_type,
|
||||
void* media_adapter,
|
||||
cl_va_api_device_set_intel media_adapter_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromVA_APIMediaSurfaceINTEL(
|
||||
@ -109,14 +112,14 @@ clCreateFromVA_APIMediaSurfaceINTEL(
|
||||
cl_mem_flags flags,
|
||||
VASurfaceID* surface,
|
||||
cl_uint plane,
|
||||
cl_int* errcode_ret) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL * clCreateFromVA_APIMediaSurfaceINTEL_fn)(
|
||||
typedef cl_mem (CL_API_CALL * clCreateFromVA_APIMediaSurfaceINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
VASurfaceID* surface,
|
||||
cl_uint plane,
|
||||
cl_int* errcode_ret) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireVA_APIMediaSurfacesINTEL(
|
||||
@ -125,15 +128,15 @@ clEnqueueAcquireVA_APIMediaSurfacesINTEL(
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireVA_APIMediaSurfacesINTEL_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueAcquireVA_APIMediaSurfacesINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseVA_APIMediaSurfacesINTEL(
|
||||
@ -142,15 +145,15 @@ clEnqueueReleaseVA_APIMediaSurfacesINTEL(
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseVA_APIMediaSurfacesINTEL_fn)(
|
||||
typedef cl_int (CL_API_CALL *clEnqueueReleaseVA_APIMediaSurfacesINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2020 The Khronos Group Inc.
|
||||
* Copyright (c) 2008-2021 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.
|
||||
@ -23,7 +23,6 @@ extern "C" {
|
||||
|
||||
#include <CL/cl.h>
|
||||
#include <CL/cl_gl.h>
|
||||
#include <CL/cl_gl_ext.h>
|
||||
#include <CL/cl_ext.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
@ -1,4 +1,10 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
cmake_policy(VERSION 3.0...3.22)
|
||||
|
||||
# Include guard for including this project multiple times
|
||||
if(TARGET Headers)
|
||||
return()
|
||||
endif()
|
||||
|
||||
project(OpenCLHeaders
|
||||
VERSION 2.2
|
||||
@ -6,26 +12,47 @@ project(OpenCLHeaders
|
||||
# https://stackoverflow.com/questions/43379311/why-does-project-affect-cmakes-opinion-on-cmake-sizeof-void-p
|
||||
)
|
||||
|
||||
option(OPENCL_HEADERS_BUILD_TESTING "Enable support for OpenCL C headers testing." OFF)
|
||||
option(OPENCL_HEADERS_BUILD_CXX_TESTS "Enable support for OpenCL C headers testing in C++ mode." ON)
|
||||
|
||||
include(GNUInstallDirs)
|
||||
|
||||
add_library(Headers INTERFACE)
|
||||
target_include_directories(Headers
|
||||
SYSTEM
|
||||
BEFORE
|
||||
INTERFACE
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
||||
$<INSTALL_INTERFACE:include>
|
||||
)
|
||||
add_library(OpenCL::Headers ALIAS Headers)
|
||||
|
||||
if(CMAKE_SYSTEM_NAME MATCHES Darwin)
|
||||
execute_process(
|
||||
COMMAND ln -shf ${CMAKE_CURRENT_SOURCE_DIR}/CL ${CMAKE_CURRENT_BINARY_DIR}/CL
|
||||
COMMAND ln -shf ${CMAKE_CURRENT_SOURCE_DIR}/CL ${CMAKE_CURRENT_BINARY_DIR}/OpenCL
|
||||
)
|
||||
target_include_directories(Headers
|
||||
INTERFACE
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
|
||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||
)
|
||||
install(CODE "
|
||||
file(MAKE_DIRECTORY ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/CL)
|
||||
execute_process(
|
||||
COMMAND ln -shf CL ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/OpenCL
|
||||
)"
|
||||
)
|
||||
else()
|
||||
target_include_directories(Headers
|
||||
INTERFACE
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||
)
|
||||
endif()
|
||||
|
||||
install(
|
||||
TARGETS Headers
|
||||
EXPORT OpenCLHeadersTargets
|
||||
)
|
||||
|
||||
include(GNUInstallDirs)
|
||||
|
||||
install(
|
||||
DIRECTORY CL
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||
)
|
||||
|
||||
export(
|
||||
EXPORT OpenCLHeadersTargets
|
||||
FILE ${PROJECT_BINARY_DIR}/OpenCLHeaders/OpenCLHeadersTargets.cmake
|
||||
@ -60,7 +87,9 @@ install(
|
||||
DESTINATION ${config_package_location}
|
||||
)
|
||||
|
||||
if(BUILD_TESTING)
|
||||
if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME OR OPENCL_HEADERS_BUILD_TESTING)
|
||||
include(CTest)
|
||||
endif()
|
||||
if((CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME OR OPENCL_HEADERS_BUILD_TESTING) AND BUILD_TESTING)
|
||||
add_subdirectory(tests)
|
||||
endif()
|
||||
|
23
README.md
23
README.md
@ -9,7 +9,16 @@ https://github.com/KhronosGroup/OpenCL-Headers
|
||||
Issues, proposed fixes for issues, and other suggested changes should be
|
||||
created using Github.
|
||||
|
||||
## CMake Package
|
||||
## Build instructions
|
||||
|
||||
> While the OpenCL Headers can be built and installed in isolation, it is part of the [OpenCL SDK](https://github.com/KhronosGroup/OpenCL-SDK). If looking for streamlined build experience and a complete development package, refer to the SDK build instructions instead of the following guide.
|
||||
|
||||
### Dependencies
|
||||
|
||||
- The OpenCL Headers CMake package support uses CMake for its build system.
|
||||
If CMake is not provided by your build system or OS package manager, please consult the [CMake website](https://cmake.org).
|
||||
|
||||
### Example Build
|
||||
While the headers may just be copied as-is, this repository also contains a
|
||||
CMake script with an install rule to allow for packaging the headers.
|
||||
|
||||
@ -18,12 +27,16 @@ cmake -S . -B build -DCMAKE_INSTALL_PREFIX=/chosen/install/prefix
|
||||
cmake --build build --target install
|
||||
```
|
||||
|
||||
To consume the package:
|
||||
### Example Use
|
||||
|
||||
Example CMake invocation
|
||||
|
||||
```bash
|
||||
cmake path/to/opencl/app -DOpenCLHeaders_ROOT=/chosen/install/prefix
|
||||
cmake -D CMAKE_PREFIX_PATH=/chosen/install/prefix /path/to/opencl/app
|
||||
```
|
||||
|
||||
and sample `CMakeLists.txt`
|
||||
|
||||
```cmake
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
cmake_policy(VERSION 3.0...3.18.4)
|
||||
@ -36,14 +49,14 @@ target_link_libraries(app PRIVATE OpenCL::Headers)
|
||||
## Branch Structure
|
||||
|
||||
The OpenCL API headers in this repository are Unified headers and are designed
|
||||
to work with all released OpenCL versions. This differs from previous OpenCL
|
||||
to work with all released OpenCL versions. This differs from previous OpenCL
|
||||
API headers, where version-specific API headers either existed in separate
|
||||
branches, or in separate folders in a branch.
|
||||
|
||||
## Compiling for a Specific OpenCL Version
|
||||
|
||||
By default, the OpenCL API headers in this repository are for the latest
|
||||
OpenCL version (currently OpenCL 2.2). To use these API headers to target
|
||||
OpenCL version (currently OpenCL 3.0). To use these API headers to target
|
||||
a different OpenCL version, an application may `#define` the preprocessor
|
||||
value `CL_TARGET_OPENCL_VERSION` before including the OpenCL API headers.
|
||||
The `CL_TARGET_OPENCL_VERSION` is a three digit decimal value representing
|
||||
|
11
build.py
Normal file
11
build.py
Normal file
@ -0,0 +1,11 @@
|
||||
from cpt.packager import ConanMultiPackager
|
||||
import datetime
|
||||
|
||||
if __name__ == "__main__":
|
||||
builder = ConanMultiPackager(
|
||||
username="khronos",
|
||||
login_username="khronos",
|
||||
channel="stable"
|
||||
)
|
||||
builder.add_common_builds()
|
||||
builder.run()
|
23
conanfile.py
Normal file
23
conanfile.py
Normal file
@ -0,0 +1,23 @@
|
||||
from conans import ConanFile, tools, CMake
|
||||
import os
|
||||
|
||||
|
||||
class OpenCLHeadersConan(ConanFile):
|
||||
name = "opencl-headers"
|
||||
version = "20190502"
|
||||
license = "Apache-2.0"
|
||||
author = "Khronos Group <webmaster@khronos.org>"
|
||||
url = "https://github.com/KhronosGroup/OpenCL-ICD-Loader"
|
||||
description = "Khronos OpenCL Headers"
|
||||
topics = ("khronos", "opencl", "headers")
|
||||
exports_sources = "CMakeLists.txt", "CL/*"
|
||||
no_copy_source = True
|
||||
|
||||
def build(self):
|
||||
cmake = CMake(self)
|
||||
cmake.configure()
|
||||
cmake.build()
|
||||
cmake.install()
|
||||
|
||||
def package_id(self):
|
||||
self.info.header_only()
|
@ -105,6 +105,41 @@ ohos_executable("test_opencl") {
|
||||
subsystem_name = "thirdparty"
|
||||
}
|
||||
|
||||
ohos_executable("test_cl_d3d10") {
|
||||
sources = [ "test_cl_d3d10.h.c" ]
|
||||
configs = [ ":cl_test_config" ]
|
||||
part_name = "opencl-headers"
|
||||
subsystem_name = "thirdparty"
|
||||
}
|
||||
|
||||
ohos_executable("test_cl_d3d11") {
|
||||
sources = [ "test_cl_d3d11.h.c" ]
|
||||
configs = [ ":cl_test_config" ]
|
||||
part_name = "opencl-headers"
|
||||
subsystem_name = "thirdparty"
|
||||
}
|
||||
|
||||
ohos_executable("test_cl_dx9_media_sharing") {
|
||||
sources = [ "test_cl_dx9_media_sharing.h.c" ]
|
||||
configs = [ ":cl_test_config" ]
|
||||
part_name = "opencl-headers"
|
||||
subsystem_name = "thirdparty"
|
||||
}
|
||||
|
||||
ohos_executable("test_cl_dx9_media_sharing_intel") {
|
||||
sources = [ "test_cl_dx9_media_sharing_intel.h.c" ]
|
||||
configs = [ ":cl_test_config" ]
|
||||
part_name = "opencl-headers"
|
||||
subsystem_name = "thirdparty"
|
||||
}
|
||||
|
||||
ohos_executable("test_cl_layer") {
|
||||
sources = [ "test_cl_layer.h.c" ]
|
||||
configs = [ ":cl_test_config" ]
|
||||
part_name = "opencl-headers"
|
||||
subsystem_name = "thirdparty"
|
||||
}
|
||||
|
||||
group("tests") {
|
||||
deps = [
|
||||
":test_cl",
|
||||
@ -119,5 +154,10 @@ group("tests") {
|
||||
":test_cl_version",
|
||||
":test_headers",
|
||||
":test_opencl",
|
||||
":test_cl_d3d10",
|
||||
":test_cl_d3d11",
|
||||
":test_cl_dx9_media_sharing",
|
||||
":test_cl_dx9_media_sharing_intel",
|
||||
":test_cl_layer"
|
||||
]
|
||||
}
|
||||
|
@ -1,11 +1,29 @@
|
||||
# Add a test for a given source file for each version of OpenCL
|
||||
function(add_header_test NAME SOURCE)
|
||||
# Some headers include system files which require anonymous structs
|
||||
# so we cannot test them with /Za:
|
||||
set(TEST_SKIP_ANSI_TESTING
|
||||
cl_d3d10_h cl_d3d11_h cl_dx9_media_sharing_h cl_dx9_media_sharing_intel_h cl_icd_h cl_layer_h)
|
||||
get_filename_component(LANG_DIR "${CMAKE_CURRENT_SOURCE_DIR}" NAME)
|
||||
if(LANG_DIR MATCHES cpp)
|
||||
set(CPP_SOURCE_PATH "${CMAKE_CURRENT_BINARY_DIR}/${SOURCE}pp")
|
||||
file(RELATIVE_PATH REL_SOURCE_PATH "${CMAKE_CURRENT_BINARY_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/../${SOURCE}")
|
||||
file(TO_NATIVE_PATH "${REL_SOURCE_PATH}" NATIVE_SOURCE_PATH)
|
||||
file(WRITE
|
||||
"${CPP_SOURCE_PATH}"
|
||||
"#include \"${NATIVE_SOURCE_PATH}\"\n"
|
||||
)
|
||||
set(SOURCE_PATH "${CPP_SOURCE_PATH}")
|
||||
set(LANG cpp)
|
||||
else()
|
||||
set(SOURCE_PATH "../${SOURCE}")
|
||||
set(LANG c)
|
||||
endif()
|
||||
foreach(VERSION 100 110 120 200 210 220 300)
|
||||
set(TEST_EXE ${NAME}_${VERSION})
|
||||
# ICD on Windows uses system headers, which aren't strictly ANSI conformant
|
||||
# and trigger warnings
|
||||
if(NOT (NAME STREQUAL cl_icd_h AND MSVC AND CMAKE_C_FLAGS MATCHES "/Za"))
|
||||
add_executable(${TEST_EXE} ${SOURCE})
|
||||
set(TEST_EXE ${NAME}_${LANG}_${VERSION})
|
||||
list(FIND TEST_SKIP_ANSI_TESTING ${NAME} TEST_SKIP_INDEX)
|
||||
if(NOT (${TEST_SKIP_INDEX} GREATER -1 AND MSVC AND CMAKE_C_FLAGS MATCHES "/Za"))
|
||||
add_executable(${TEST_EXE} "${SOURCE_PATH}")
|
||||
target_compile_definitions(${TEST_EXE}
|
||||
PUBLIC -DCL_TARGET_OPENCL_VERSION=${VERSION}
|
||||
)
|
||||
@ -17,16 +35,8 @@ function(add_header_test NAME SOURCE)
|
||||
endforeach(VERSION)
|
||||
endfunction(add_header_test)
|
||||
|
||||
# Tests
|
||||
add_header_test(cl_h test_cl.h.c)
|
||||
add_header_test(cl_egl_h test_cl_egl.h.c)
|
||||
add_header_test(cl_ext_h test_cl_ext.h.c)
|
||||
add_header_test(cl_ext_intel_h test_cl_ext_intel.h.c)
|
||||
add_header_test(cl_gl_h test_cl_gl.h.c)
|
||||
add_header_test(cl_gl_ext_h test_cl_gl_ext.h.c)
|
||||
add_header_test(cl_half_h test_cl_half.h.c)
|
||||
add_header_test(cl_icd_h test_cl_icd.h.c)
|
||||
add_header_test(cl_platform_h test_cl_platform.h.c)
|
||||
add_header_test(cl_opencl_h test_opencl.h.c)
|
||||
add_header_test(cl_version_h test_cl_version.h.c)
|
||||
add_header_test(headers test_headers.c)
|
||||
add_subdirectory(lang_c)
|
||||
if(OPENCL_HEADERS_BUILD_CXX_TESTS)
|
||||
enable_language(CXX)
|
||||
add_subdirectory(lang_cpp)
|
||||
endif()
|
||||
|
18
tests/lang_c/CMakeLists.txt
Normal file
18
tests/lang_c/CMakeLists.txt
Normal file
@ -0,0 +1,18 @@
|
||||
# Tests
|
||||
add_header_test(cl_h test_cl.h.c)
|
||||
add_header_test(cl_d3d10_h test_cl_d3d10.h.c)
|
||||
add_header_test(cl_d3d11_h test_cl_d3d11.h.c)
|
||||
add_header_test(cl_dx9_media_sharing_h test_cl_dx9_media_sharing.h.c)
|
||||
add_header_test(cl_dx9_media_sharing_intel_h test_cl_dx9_media_sharing.h.c)
|
||||
add_header_test(cl_egl_h test_cl_egl.h.c)
|
||||
add_header_test(cl_ext_h test_cl_ext.h.c)
|
||||
add_header_test(cl_ext_intel_h test_cl_ext_intel.h.c)
|
||||
add_header_test(cl_gl_h test_cl_gl.h.c)
|
||||
add_header_test(cl_gl_ext_h test_cl_gl_ext.h.c)
|
||||
add_header_test(cl_half_h test_cl_half.h.c)
|
||||
add_header_test(cl_icd_h test_cl_icd.h.c)
|
||||
add_header_test(cl_layer_h test_cl_layer.h.c)
|
||||
add_header_test(cl_platform_h test_cl_platform.h.c)
|
||||
add_header_test(cl_opencl_h test_opencl.h.c)
|
||||
add_header_test(cl_version_h test_cl_version.h.c)
|
||||
add_header_test(headers test_headers.c)
|
18
tests/lang_cpp/CMakeLists.txt
Normal file
18
tests/lang_cpp/CMakeLists.txt
Normal file
@ -0,0 +1,18 @@
|
||||
# Tests
|
||||
add_header_test(cl_h test_cl.h.c)
|
||||
add_header_test(cl_d3d10_h test_cl_d3d10.h.c)
|
||||
add_header_test(cl_d3d11_h test_cl_d3d11.h.c)
|
||||
add_header_test(cl_dx9_media_sharing_h test_cl_dx9_media_sharing.h.c)
|
||||
add_header_test(cl_dx9_media_sharing_intel_h test_cl_dx9_media_sharing.h.c)
|
||||
add_header_test(cl_egl_h test_cl_egl.h.c)
|
||||
add_header_test(cl_ext_h test_cl_ext.h.c)
|
||||
add_header_test(cl_ext_intel_h test_cl_ext_intel.h.c)
|
||||
add_header_test(cl_gl_h test_cl_gl.h.c)
|
||||
add_header_test(cl_gl_ext_h test_cl_gl_ext.h.c)
|
||||
add_header_test(cl_half_h test_cl_half.h.c)
|
||||
add_header_test(cl_icd_h test_cl_icd.h.c)
|
||||
add_header_test(cl_layer_h test_cl_layer.h.c)
|
||||
add_header_test(cl_platform_h test_cl_platform.h.c)
|
||||
add_header_test(cl_opencl_h test_opencl.h.c)
|
||||
add_header_test(cl_version_h test_cl_version.h.c)
|
||||
add_header_test(headers test_headers.c)
|
27
tests/test_cl_d3d10.h.c
Normal file
27
tests/test_cl_d3d10.h.c
Normal file
@ -0,0 +1,27 @@
|
||||
//
|
||||
// Copyright (c) 2020 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.
|
||||
//
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#if defined(_WIN32)
|
||||
#include "CL/cl_d3d10.h"
|
||||
#endif
|
||||
|
||||
int main( void )
|
||||
{
|
||||
printf("cl_d3d10.h standalone test PASSED.\n");
|
||||
return 0;
|
||||
}
|
27
tests/test_cl_d3d11.h.c
Normal file
27
tests/test_cl_d3d11.h.c
Normal file
@ -0,0 +1,27 @@
|
||||
//
|
||||
// Copyright (c) 2020 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.
|
||||
//
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#if defined(_WIN32)
|
||||
#include "CL/cl_d3d11.h"
|
||||
#endif
|
||||
|
||||
int main( void )
|
||||
{
|
||||
printf("cl_d3d11.h standalone test PASSED.\n");
|
||||
return 0;
|
||||
}
|
27
tests/test_cl_dx9_media_sharing.h.c
Normal file
27
tests/test_cl_dx9_media_sharing.h.c
Normal file
@ -0,0 +1,27 @@
|
||||
//
|
||||
// Copyright (c) 2020 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.
|
||||
//
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#if defined(_WIN32)
|
||||
#include "CL/cl_dx9_media_sharing.h"
|
||||
#endif
|
||||
|
||||
int main( void )
|
||||
{
|
||||
printf("cl_dx9_media_sharing.h standalone test PASSED.\n");
|
||||
return 0;
|
||||
}
|
27
tests/test_cl_dx9_media_sharing_intel.h.c
Normal file
27
tests/test_cl_dx9_media_sharing_intel.h.c
Normal file
@ -0,0 +1,27 @@
|
||||
//
|
||||
// Copyright (c) 2020 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.
|
||||
//
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#if defined(_WIN32)
|
||||
#include "CL/cl_dx9_media_sharing_intel.h"
|
||||
#endif
|
||||
|
||||
int main( void )
|
||||
{
|
||||
printf("cl_dx9_media_sharing_intel.h standalone test PASSED.\n");
|
||||
return 0;
|
||||
}
|
@ -95,7 +95,7 @@ int main(void)
|
||||
CHECK_FROM_FLOAT(-(CL_HALF_MAX + 1000.f), 0xfbff, RTP);
|
||||
CHECK_FROM_FLOAT(-(CL_HALF_MAX + 1000.f), 0xfc00, RTN);
|
||||
CHECK_FROM_FLOAT(-(CL_HALF_MAX + 1000.f), 0xfbff, RTZ);
|
||||
#ifndef _MSC_VER
|
||||
#if 0 // Hexadecimal float constant is C++17
|
||||
// Check tiny positive values round properly
|
||||
CHECK_FROM_FLOAT(0x1.000000p-25, 0x0000, RTE);
|
||||
CHECK_FROM_FLOAT(0x1.000000p-25, 0x0001, RTP);
|
||||
@ -108,7 +108,7 @@ int main(void)
|
||||
CHECK_FROM_FLOAT(-0x1.000000p-25, 0x8001, RTN);
|
||||
CHECK_FROM_FLOAT(-0x1.000000p-25, 0x8000, RTZ);
|
||||
#else
|
||||
// Check tiny positive values round properly
|
||||
// Check tiny positive values round properly
|
||||
CHECK_FROM_FLOAT(2.98023223876953125e-08, 0x0000, RTE);
|
||||
CHECK_FROM_FLOAT(2.98023223876953125e-08, 0x0001, RTP);
|
||||
CHECK_FROM_FLOAT(2.98023223876953125e-08, 0x0000, RTN);
|
||||
|
31
tests/test_cl_layer.h.c
Normal file
31
tests/test_cl_layer.h.c
Normal file
@ -0,0 +1,31 @@
|
||||
//
|
||||
// Copyright (c) 2020 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.
|
||||
//
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#define CL_USE_DEPRECATED_OPENCL_1_0_APIS
|
||||
#define CL_USE_DEPRECATED_OPENCL_1_1_APIS
|
||||
#define CL_USE_DEPRECATED_OPENCL_1_2_APIS
|
||||
#define CL_USE_DEPRECATED_OPENCL_2_0_APIS
|
||||
#define CL_USE_DEPRECATED_OPENCL_2_1_APIS
|
||||
#define CL_USE_DEPRECATED_OPENCL_2_2_APIS
|
||||
#include "CL/cl_layer.h"
|
||||
|
||||
int main( void )
|
||||
{
|
||||
printf("cl_icd_layer.h standalone test PASSED.\n");
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user