// GENERATED FILE - DO NOT EDIT.
// Generated by generate_loader.py using data from cl.xml.
//
// Copyright 2021 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// cl_loader_autogen.cpp:
//   Simple CL function loader.

#include "cl_loader.h"

// TODO(jplate): remove include after entry points moved to GLESV2 lib http://anglebug.com/5759
#include "entry_points_cl_autogen.h"

cl_icd_dispatch cl_loader;

namespace angle
{
void LoadCL(LoadProc loadProc)
{
    cl_loader.clGetPlatformIDs              = CL_GetPlatformIDs;
    cl_loader.clGetPlatformInfo             = CL_GetPlatformInfo;
    cl_loader.clGetDeviceIDs                = CL_GetDeviceIDs;
    cl_loader.clGetDeviceInfo               = CL_GetDeviceInfo;
    cl_loader.clCreateContext               = CL_CreateContext;
    cl_loader.clCreateContextFromType       = CL_CreateContextFromType;
    cl_loader.clRetainContext               = CL_RetainContext;
    cl_loader.clReleaseContext              = CL_ReleaseContext;
    cl_loader.clGetContextInfo              = CL_GetContextInfo;
    cl_loader.clRetainCommandQueue          = CL_RetainCommandQueue;
    cl_loader.clReleaseCommandQueue         = CL_ReleaseCommandQueue;
    cl_loader.clGetCommandQueueInfo         = CL_GetCommandQueueInfo;
    cl_loader.clCreateBuffer                = CL_CreateBuffer;
    cl_loader.clRetainMemObject             = CL_RetainMemObject;
    cl_loader.clReleaseMemObject            = CL_ReleaseMemObject;
    cl_loader.clGetSupportedImageFormats    = CL_GetSupportedImageFormats;
    cl_loader.clGetMemObjectInfo            = CL_GetMemObjectInfo;
    cl_loader.clGetImageInfo                = CL_GetImageInfo;
    cl_loader.clRetainSampler               = CL_RetainSampler;
    cl_loader.clReleaseSampler              = CL_ReleaseSampler;
    cl_loader.clGetSamplerInfo              = CL_GetSamplerInfo;
    cl_loader.clCreateProgramWithSource     = CL_CreateProgramWithSource;
    cl_loader.clCreateProgramWithBinary     = CL_CreateProgramWithBinary;
    cl_loader.clRetainProgram               = CL_RetainProgram;
    cl_loader.clReleaseProgram              = CL_ReleaseProgram;
    cl_loader.clBuildProgram                = CL_BuildProgram;
    cl_loader.clGetProgramInfo              = CL_GetProgramInfo;
    cl_loader.clGetProgramBuildInfo         = CL_GetProgramBuildInfo;
    cl_loader.clCreateKernel                = CL_CreateKernel;
    cl_loader.clCreateKernelsInProgram      = CL_CreateKernelsInProgram;
    cl_loader.clRetainKernel                = CL_RetainKernel;
    cl_loader.clReleaseKernel               = CL_ReleaseKernel;
    cl_loader.clSetKernelArg                = CL_SetKernelArg;
    cl_loader.clGetKernelInfo               = CL_GetKernelInfo;
    cl_loader.clGetKernelWorkGroupInfo      = CL_GetKernelWorkGroupInfo;
    cl_loader.clWaitForEvents               = CL_WaitForEvents;
    cl_loader.clGetEventInfo                = CL_GetEventInfo;
    cl_loader.clRetainEvent                 = CL_RetainEvent;
    cl_loader.clReleaseEvent                = CL_ReleaseEvent;
    cl_loader.clGetEventProfilingInfo       = CL_GetEventProfilingInfo;
    cl_loader.clFlush                       = CL_Flush;
    cl_loader.clFinish                      = CL_Finish;
    cl_loader.clEnqueueReadBuffer           = CL_EnqueueReadBuffer;
    cl_loader.clEnqueueWriteBuffer          = CL_EnqueueWriteBuffer;
    cl_loader.clEnqueueCopyBuffer           = CL_EnqueueCopyBuffer;
    cl_loader.clEnqueueReadImage            = CL_EnqueueReadImage;
    cl_loader.clEnqueueWriteImage           = CL_EnqueueWriteImage;
    cl_loader.clEnqueueCopyImage            = CL_EnqueueCopyImage;
    cl_loader.clEnqueueCopyImageToBuffer    = CL_EnqueueCopyImageToBuffer;
    cl_loader.clEnqueueCopyBufferToImage    = CL_EnqueueCopyBufferToImage;
    cl_loader.clEnqueueMapBuffer            = CL_EnqueueMapBuffer;
    cl_loader.clEnqueueMapImage             = CL_EnqueueMapImage;
    cl_loader.clEnqueueUnmapMemObject       = CL_EnqueueUnmapMemObject;
    cl_loader.clEnqueueNDRangeKernel        = CL_EnqueueNDRangeKernel;
    cl_loader.clEnqueueNativeKernel         = CL_EnqueueNativeKernel;
    cl_loader.clSetCommandQueueProperty     = CL_SetCommandQueueProperty;
    cl_loader.clCreateImage2D               = CL_CreateImage2D;
    cl_loader.clCreateImage3D               = CL_CreateImage3D;
    cl_loader.clEnqueueMarker               = CL_EnqueueMarker;
    cl_loader.clEnqueueWaitForEvents        = CL_EnqueueWaitForEvents;
    cl_loader.clEnqueueBarrier              = CL_EnqueueBarrier;
    cl_loader.clUnloadCompiler              = CL_UnloadCompiler;
    cl_loader.clGetExtensionFunctionAddress = CL_GetExtensionFunctionAddress;
    cl_loader.clCreateCommandQueue          = CL_CreateCommandQueue;
    cl_loader.clCreateSampler               = CL_CreateSampler;
    cl_loader.clEnqueueTask                 = CL_EnqueueTask;
}
}  // namespace angle
