2 * Copyright (c) 2016 The Khronos Group Inc.
4 * Permission is hereby granted, free of charge, to any person obtaining a copy
5 * of this software source and associated documentation files (the "Materials"),
6 * to deal in the Materials without restriction, including without limitation
7 * the rights to use, copy, modify, compile, merge, publish, distribute,
8 * sublicense, and/or sell copies of the Materials, and to permit persons to
9 * whom the Materials are furnished to do so, subject the following terms and
12 * All modifications to the Materials used to create a binary that is
13 * distributed to third parties shall be provided to Khronos with an
14 * unrestricted license to use for the purposes of implementing bug fixes and
15 * enhancements to the Materials;
17 * If the binary is used as part of an OpenCL(TM) implementation, whether binary
18 * is distributed together with or separately to that implementation, then
19 * recipient must become an OpenCL Adopter and follow the published OpenCL
20 * conformance process for that implementation, details at:
21 * http://www.khronos.org/conformance/;
23 * The above copyright notice, the OpenCL trademark license, and this permission
24 * notice shall be included in all copies or substantial portions of the
27 * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
28 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
29 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
30 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
31 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
32 * OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS IN
35 * OpenCL is a trademark of Apple Inc. used under license by Khronos.
44 clCreateContextFromType;
46 clCreateFromGLRenderbuffer;
47 clCreateFromGLTexture2D;
48 clCreateFromGLTexture3D;
52 clCreateKernelsInProgram;
53 clCreateProgramWithBinary;
54 clCreateProgramWithSource;
56 clEnqueueAcquireGLObjects;
59 clEnqueueCopyBufferToImage;
61 clEnqueueCopyImageToBuffer;
65 clEnqueueNDRangeKernel;
66 clEnqueueNativeKernel;
69 clEnqueueReleaseGLObjects;
71 clEnqueueUnmapMemObject;
72 clEnqueueWaitForEvents;
77 clGetCommandQueueInfo;
82 clGetEventProfilingInfo;
83 clGetExtensionFunctionAddress;
88 clGetKernelWorkGroupInfo;
92 clGetProgramBuildInfo;
95 clGetSupportedImageFormats;
96 clReleaseCommandQueue;
103 clRetainCommandQueue;
110 clSetCommandQueueProperty;
116 /* Everything else is local to ICD. */
124 clEnqueueCopyBufferRect;
125 clEnqueueReadBufferRect;
126 clEnqueueWriteBufferRect;
128 clSetMemObjectDestructorCallback;
129 clSetUserEventStatus;
135 clCreateFromGLTexture;
137 clCreateProgramWithBuiltInKernels;
139 clEnqueueBarrierWithWaitList;
142 clEnqueueMarkerWithWaitList;
143 clEnqueueMigrateMemObjects;
144 clGetExtensionFunctionAddressForPlatform;
149 clUnloadPlatformCompiler;
154 clCreateCommandQueueWithProperties;
164 clCreateSamplerWithProperties;
165 clSetKernelArgSVMPointer;
172 clCreateProgramWithIL;
173 clEnqueueSVMMigrateMem;
174 clGetDeviceAndHostTimer;
176 clGetKernelSubGroupInfo;
177 clSetDefaultDeviceCommandQueue;
182 clSetProgramReleaseCallback;
183 clSetProgramSpecializationConstant;