https://github.com/halide/Halide
Tip revision: 52f964e56e5fdc007c2c7e11559c3f8b43d7edfc authored by Steven Johnson on 26 February 2024, 21:35:51 UTC
Merge branch 'xtensa-codegen' into srj/test8115
Merge branch 'xtensa-codegen' into srj/test8115
Tip revision: 52f964e
cl_functions.h
// Note that this header intentionally does not use include
// guards. The intended usage of this file is to define the meaning of
// the CL_FN macro, and then include this file, sometimes repeatedly
// within the same compilation unit.
// clang-format off
#ifndef CL_FN
#define CL_FN(ret, fn, args)
#endif
#ifndef CL_12_FN
#define CL_12_FN(ret, fn, args) CL_FN(ret, fn, args)
#endif
/* Platform API */
CL_FN(cl_int,
clGetPlatformIDs, (cl_uint /* num_entries */,
cl_platform_id * /* platforms */,
cl_uint * /* num_platforms */));
CL_FN(cl_int,
clGetPlatformInfo, (cl_platform_id /* platform */,
cl_platform_info /* param_name */,
size_t /* param_value_size */,
void * /* param_value */,
size_t * /* param_value_size_ret */));
/* Device APIs */
CL_FN(cl_int,
clGetDeviceIDs, (cl_platform_id /* platform */,
cl_device_type /* device_type */,
cl_uint /* num_entries */,
cl_device_id * /* devices */,
cl_uint * /* num_devices */));
CL_FN(cl_int,
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_12_FN(cl_int,
clCreateSubDevices, (cl_device_id /* in_device */,
const cl_device_partition_property * /* properties */,
cl_uint /* num_devices */,
cl_device_id * /* out_devices */,
cl_uint * /* num_devices_ret */));
CL_12_FN(cl_int,
clRetainDevice, (cl_device_id /* device */));
CL_12_FN(cl_int,
clReleaseDevice, (cl_device_id /* device */));
/* Context APIs */
CL_FN(cl_context,
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_FN(cl_context,
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_FN(cl_int,
clRetainContext, (cl_context /* context */));
CL_FN(cl_int,
clReleaseContext, (cl_context /* context */));
CL_FN(cl_int,
clGetContextInfo, (cl_context /* context */,
cl_context_info /* param_name */,
size_t /* param_value_size */,
void * /* param_value */,
size_t * /* param_value_size_ret */));
/* Command Queue APIs */
CL_FN(cl_command_queue,
clCreateCommandQueue, (cl_context /* context */,
cl_device_id /* device */,
cl_command_queue_properties /* properties */,
cl_int * /* errcode_ret */));
CL_FN(cl_int,
clRetainCommandQueue, (cl_command_queue /* command_queue */));
CL_FN(cl_int,
clReleaseCommandQueue, (cl_command_queue /* command_queue */));
CL_FN(cl_int,
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 */));
/* Memory Object APIs */
CL_FN(cl_mem,
clCreateBuffer, (cl_context /* context */,
cl_mem_flags /* flags */,
size_t /* size */,
void * /* host_ptr */,
cl_int * /* errcode_ret */));
CL_FN(cl_mem,
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_12_FN(cl_mem,
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_FN(cl_int,
clRetainMemObject, (cl_mem /* memobj */));
CL_FN(cl_int,
clReleaseMemObject, (cl_mem /* memobj */));
CL_FN(cl_int,
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_FN(cl_int,
clGetMemObjectInfo, (cl_mem /* memobj */,
cl_mem_info /* param_name */,
size_t /* param_value_size */,
void * /* param_value */,
size_t * /* param_value_size_ret */));
CL_FN(cl_int,
clGetImageInfo, (cl_mem /* image */,
cl_image_info /* param_name */,
size_t /* param_value_size */,
void * /* param_value */,
size_t * /* param_value_size_ret */));
CL_FN(cl_int,
clSetMemObjectDestructorCallback, (cl_mem /* memobj */,
void (CL_CALLBACK * /*pfn_notify*/)( cl_mem /* memobj */, void* /*user_data*/),
void * /*user_data */ ));
/* Program Object APIs */
CL_FN(cl_program,
clCreateProgramWithSource, (cl_context /* context */,
cl_uint /* count */,
const char ** /* strings */,
const size_t * /* lengths */,
cl_int * /* errcode_ret */));
CL_FN(cl_int,
clRetainProgram, (cl_program /* program */));
CL_FN(cl_int,
clReleaseProgram, (cl_program /* program */));
CL_FN(cl_int,
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 */),
void * /* user_data */));
CL_FN(cl_int,
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 */));
/* Kernel Object APIs */
CL_FN(cl_kernel,
clCreateKernel, (cl_program /* program */,
const char * /* kernel_name */,
cl_int * /* errcode_ret */));
CL_FN(cl_int,
clRetainKernel, (cl_kernel /* kernel */));
CL_FN(cl_int,
clReleaseKernel, (cl_kernel /* kernel */));
CL_FN(cl_int,
clSetKernelArg, (cl_kernel /* kernel */,
cl_uint /* arg_index */,
size_t /* arg_size */,
const void * /* arg_value */));
/* Flush and Finish APIs */
CL_FN(cl_int,
clFlush, (cl_command_queue /* command_queue */));
CL_FN(cl_int,
clFinish, (cl_command_queue /* command_queue */));
/* Enqueued Commands APIs */
CL_FN(cl_int,
clEnqueueReadBuffer, (cl_command_queue /* command_queue */,
cl_mem /* buffer */,
cl_bool /* blocking_read */,
size_t /* offset */,
size_t /* size */,
void * /* ptr */,
cl_uint /* num_events_in_wait_list */,
const cl_event * /* event_wait_list */,
cl_event * /* event */));
CL_FN(cl_int,
clEnqueueReadBufferRect, (cl_command_queue /* command_queue */,
cl_mem /* buffer */,
cl_bool /* blocking_read */,
const size_t * /* buffer_offset */,
const size_t * /* host_offset */,
const size_t * /* region */,
size_t /* buffer_row_pitch */,
size_t /* buffer_slice_pitch */,
size_t /* host_row_pitch */,
size_t /* host_slice_pitch */,
void * /* ptr */,
cl_uint /* num_events_in_wait_list */,
const cl_event * /* event_wait_list */,
cl_event * /* event */));
CL_FN(cl_int,
clEnqueueWriteBuffer, (cl_command_queue /* command_queue */,
cl_mem /* buffer */,
cl_bool /* blocking_write */,
size_t /* offset */,
size_t /* size */,
const void * /* ptr */,
cl_uint /* num_events_in_wait_list */,
const cl_event * /* event_wait_list */,
cl_event * /* event */));
CL_FN(cl_int,
clEnqueueWriteBufferRect, (cl_command_queue /* command_queue */,
cl_mem /* buffer */,
cl_bool /* blocking_write */,
const size_t * /* buffer_offset */,
const size_t * /* host_offset */,
const size_t * /* region */,
size_t /* buffer_row_pitch */,
size_t /* buffer_slice_pitch */,
size_t /* host_row_pitch */,
size_t /* host_slice_pitch */,
const void * /* ptr */,
cl_uint /* num_events_in_wait_list */,
const cl_event * /* event_wait_list */,
cl_event * /* event */));
CL_FN(cl_int,
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 */,
cl_event * /* event */));
CL_FN(cl_int,
clEnqueueReadImage, (cl_command_queue /* command_queue */,
cl_mem /* image */,
cl_bool /* blocking_read */,
const size_t * /* origin[3] */,
const size_t * /* region[3] */,
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_FN(cl_int,
clEnqueueWriteImage, (cl_command_queue /* command_queue */,
cl_mem /* image */,
cl_bool /* blocking_write */,
const size_t * /* origin[3] */,
const size_t * /* region[3] */,
size_t /* input_row_pitch */,
size_t /* input_slice_pitch */,
const void * /* ptr */,
cl_uint /* num_events_in_wait_list */,
const cl_event * /* event_wait_list */,
cl_event * /* event */));
CL_FN(void *,
clEnqueueMapBuffer, (cl_command_queue /* command_queue */,
cl_mem /* buffer */,
cl_bool /* blocking_map */,
cl_map_flags /* map_flags */,
size_t /* offset */,
size_t /* size */,
cl_uint /* num_events_in_wait_list */,
const cl_event * /* event_wait_list */,
cl_event * /* event */,
cl_int * /* errcode_ret */));
CL_FN(void *,
clEnqueueMapImage, (cl_command_queue /* command_queue */,
cl_mem /* image */,
cl_bool /* blocking_map */,
cl_map_flags /* map_flags */,
const size_t * /* origin[3] */,
const size_t * /* region[3] */,
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_FN(cl_int,
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_FN(cl_int,
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 */));
#undef CL_FN
#undef CL_12_FN
// clang-format on