1/* 2 * Copyright (c) 2016-2019 The Khronos Group Inc. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 * 16 * OpenCL is a trademark of Apple Inc. used under license by Khronos. 17 */ 18 19OPENCL_1.0 { 20 global: 21 clBuildProgram; 22 clCreateBuffer; 23 clCreateCommandQueue; 24 clCreateContext; 25 clCreateContextFromType; 26 clCreateFromGLBuffer; 27 clCreateFromGLRenderbuffer; 28 clCreateFromGLTexture2D; 29 clCreateFromGLTexture3D; 30 clCreateImage2D; 31 clCreateImage3D; 32 clCreateKernel; 33 clCreateKernelsInProgram; 34 clCreateProgramWithBinary; 35 clCreateProgramWithSource; 36 clCreateSampler; 37 clEnqueueAcquireGLObjects; 38 clEnqueueBarrier; 39 clEnqueueCopyBuffer; 40 clEnqueueCopyBufferToImage; 41 clEnqueueCopyImage; 42 clEnqueueCopyImageToBuffer; 43 clEnqueueMapBuffer; 44 clEnqueueMapImage; 45 clEnqueueMarker; 46 clEnqueueNDRangeKernel; 47 clEnqueueNativeKernel; 48 clEnqueueReadBuffer; 49 clEnqueueReadImage; 50 clEnqueueReleaseGLObjects; 51 clEnqueueTask; 52 clEnqueueUnmapMemObject; 53 clEnqueueWaitForEvents; 54 clEnqueueWriteBuffer; 55 clEnqueueWriteImage; 56 clFinish; 57 clFlush; 58 clGetCommandQueueInfo; 59 clGetContextInfo; 60 clGetDeviceIDs; 61 clGetDeviceInfo; 62 clGetEventInfo; 63 clGetEventProfilingInfo; 64 clGetExtensionFunctionAddress; 65 clGetGLObjectInfo; 66 clGetGLTextureInfo; 67 clGetImageInfo; 68 clGetKernelInfo; 69 clGetKernelWorkGroupInfo; 70 clGetMemObjectInfo; 71 clGetPlatformIDs; 72 clGetPlatformInfo; 73 clGetProgramBuildInfo; 74 clGetProgramInfo; 75 clGetSamplerInfo; 76 clGetSupportedImageFormats; 77 clReleaseCommandQueue; 78 clReleaseContext; 79 clReleaseEvent; 80 clReleaseKernel; 81 clReleaseMemObject; 82 clReleaseProgram; 83 clReleaseSampler; 84 clRetainCommandQueue; 85 clRetainContext; 86 clRetainEvent; 87 clRetainKernel; 88 clRetainMemObject; 89 clRetainProgram; 90 clRetainSampler; 91 clSetCommandQueueProperty; 92 clSetKernelArg; 93 clUnloadCompiler; 94 clWaitForEvents; 95 96 local: 97 /* Everything else is local to ICD. */ 98 *; 99}; 100 101OPENCL_1.1 { 102 global: 103 clCreateSubBuffer; 104 clCreateUserEvent; 105 clEnqueueCopyBufferRect; 106 clEnqueueReadBufferRect; 107 clEnqueueWriteBufferRect; 108 clSetEventCallback; 109 clSetMemObjectDestructorCallback; 110 clSetUserEventStatus; 111} OPENCL_1.0; 112 113OPENCL_1.2 { 114 global: 115 clCompileProgram; 116 clCreateFromGLTexture; 117 clCreateImage; 118 clCreateProgramWithBuiltInKernels; 119 clCreateSubDevices; 120 clEnqueueBarrierWithWaitList; 121 clEnqueueFillBuffer; 122 clEnqueueFillImage; 123 clEnqueueMarkerWithWaitList; 124 clEnqueueMigrateMemObjects; 125 clGetExtensionFunctionAddressForPlatform; 126 clGetKernelArgInfo; 127 clLinkProgram; 128 clReleaseDevice; 129 clRetainDevice; 130 clUnloadPlatformCompiler; 131} OPENCL_1.1; 132 133OPENCL_2.0 { 134 global: 135 clCreateCommandQueueWithProperties; 136 clCreatePipe; 137 clGetPipeInfo; 138 clSVMAlloc; 139 clSVMFree; 140 clEnqueueSVMFree; 141 clEnqueueSVMMemcpy; 142 clEnqueueSVMMemFill; 143 clEnqueueSVMMap; 144 clEnqueueSVMUnmap; 145 clCreateSamplerWithProperties; 146 clSetKernelArgSVMPointer; 147 clSetKernelExecInfo; 148} OPENCL_1.2; 149 150OPENCL_2.1 { 151 global: 152 clCloneKernel; 153 clCreateProgramWithIL; 154 clEnqueueSVMMigrateMem; 155 clGetDeviceAndHostTimer; 156 clGetHostTimer; 157 clGetKernelSubGroupInfo; 158 clSetDefaultDeviceCommandQueue; 159} OPENCL_2.0; 160 161OPENCL_2.2 { 162 global: 163 clSetProgramReleaseCallback; 164 clSetProgramSpecializationConstant; 165} OPENCL_2.1; 166 167OPENCL_3.0 { 168 global: 169 clCreateBufferWithProperties; 170 clCreateImageWithProperties; 171 clSetContextDestructorCallback; 172} OPENCL_2.2; 173