blob: c716a39248abd2b4b71a70576902995f3c042a22 [file] [log] [blame]
/*
* Copyright (c) 2016-2019 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.
*/
OPENCL_1.0 {
global:
clBuildProgram;
clCreateBuffer;
clCreateCommandQueue;
clCreateContext;
clCreateContextFromType;
clCreateFromGLBuffer;
clCreateFromGLRenderbuffer;
clCreateFromGLTexture2D;
clCreateFromGLTexture3D;
clCreateImage2D;
clCreateImage3D;
clCreateKernel;
clCreateKernelsInProgram;
clCreateProgramWithBinary;
clCreateProgramWithSource;
clCreateSampler;
clEnqueueAcquireGLObjects;
clEnqueueBarrier;
clEnqueueCopyBuffer;
clEnqueueCopyBufferToImage;
clEnqueueCopyImage;
clEnqueueCopyImageToBuffer;
clEnqueueMapBuffer;
clEnqueueMapImage;
clEnqueueMarker;
clEnqueueNDRangeKernel;
clEnqueueNativeKernel;
clEnqueueReadBuffer;
clEnqueueReadImage;
clEnqueueReleaseGLObjects;
clEnqueueTask;
clEnqueueUnmapMemObject;
clEnqueueWaitForEvents;
clEnqueueWriteBuffer;
clEnqueueWriteImage;
clFinish;
clFlush;
clGetCommandQueueInfo;
clGetContextInfo;
clGetDeviceIDs;
clGetDeviceInfo;
clGetEventInfo;
clGetEventProfilingInfo;
clGetExtensionFunctionAddress;
clGetGLObjectInfo;
clGetGLTextureInfo;
clGetImageInfo;
clGetKernelInfo;
clGetKernelWorkGroupInfo;
clGetMemObjectInfo;
clGetPlatformIDs;
clGetPlatformInfo;
clGetProgramBuildInfo;
clGetProgramInfo;
clGetSamplerInfo;
clGetSupportedImageFormats;
clReleaseCommandQueue;
clReleaseContext;
clReleaseEvent;
clReleaseKernel;
clReleaseMemObject;
clReleaseProgram;
clReleaseSampler;
clRetainCommandQueue;
clRetainContext;
clRetainEvent;
clRetainKernel;
clRetainMemObject;
clRetainProgram;
clRetainSampler;
clSetCommandQueueProperty;
clSetKernelArg;
clUnloadCompiler;
clWaitForEvents;
local:
/* Everything else is local to ICD. */
*;
};
OPENCL_1.1 {
global:
clCreateSubBuffer;
clCreateUserEvent;
clEnqueueCopyBufferRect;
clEnqueueReadBufferRect;
clEnqueueWriteBufferRect;
clSetEventCallback;
clSetMemObjectDestructorCallback;
clSetUserEventStatus;
} OPENCL_1.0;
OPENCL_1.2 {
global:
clCompileProgram;
clCreateFromGLTexture;
clCreateImage;
clCreateProgramWithBuiltInKernels;
clCreateSubDevices;
clEnqueueBarrierWithWaitList;
clEnqueueFillBuffer;
clEnqueueFillImage;
clEnqueueMarkerWithWaitList;
clEnqueueMigrateMemObjects;
clGetExtensionFunctionAddressForPlatform;
clGetKernelArgInfo;
clLinkProgram;
clReleaseDevice;
clRetainDevice;
clUnloadPlatformCompiler;
} OPENCL_1.1;
OPENCL_2.0 {
global:
clCreateCommandQueueWithProperties;
clCreatePipe;
clGetPipeInfo;
clSVMAlloc;
clSVMFree;
clEnqueueSVMFree;
clEnqueueSVMMemcpy;
clEnqueueSVMMemFill;
clEnqueueSVMMap;
clEnqueueSVMUnmap;
clCreateSamplerWithProperties;
clSetKernelArgSVMPointer;
clSetKernelExecInfo;
} OPENCL_1.2;
OPENCL_2.1 {
global:
clCloneKernel;
clCreateProgramWithIL;
clEnqueueSVMMigrateMem;
clGetDeviceAndHostTimer;
clGetHostTimer;
clGetKernelSubGroupInfo;
clSetDefaultDeviceCommandQueue;
} OPENCL_2.0;
OPENCL_2.2 {
global:
clSetProgramReleaseCallback;
clSetProgramSpecializationConstant;
} OPENCL_2.1;