egl_generated_dispatch.c revision e84fe556
1e84fe556Smrg/* GL dispatch code. 2e84fe556Smrg * This is code-generated from the GL API XML files from Khronos. 3e84fe556Smrg */ 4e84fe556Smrg 5e84fe556Smrg#include <stdlib.h> 6e84fe556Smrg#include <string.h> 7e84fe556Smrg#include <stdio.h> 8e84fe556Smrg 9e84fe556Smrg#include "dispatch_common.h" 10e84fe556Smrg#include "epoxy/egl.h" 11e84fe556Smrg 12e84fe556Smrg#ifdef __GNUC__ 13e84fe556Smrg#define EPOXY_NOINLINE __attribute__((noinline)) 14e84fe556Smrg#elif defined (_MSC_VER) 15e84fe556Smrg#define EPOXY_NOINLINE __declspec(noinline) 16e84fe556Smrg#endif 17e84fe556Smrgstruct dispatch_table { 18e84fe556Smrg PFNEGLBINDAPIPROC epoxy_eglBindAPI; 19e84fe556Smrg PFNEGLBINDTEXIMAGEPROC epoxy_eglBindTexImage; 20e84fe556Smrg PFNEGLCHOOSECONFIGPROC epoxy_eglChooseConfig; 21e84fe556Smrg PFNEGLCLIENTWAITSYNCPROC epoxy_eglClientWaitSync; 22e84fe556Smrg PFNEGLCLIENTWAITSYNCKHRPROC epoxy_eglClientWaitSyncKHR; 23e84fe556Smrg PFNEGLCLIENTWAITSYNCNVPROC epoxy_eglClientWaitSyncNV; 24e84fe556Smrg PFNEGLCOPYBUFFERSPROC epoxy_eglCopyBuffers; 25e84fe556Smrg PFNEGLCREATECONTEXTPROC epoxy_eglCreateContext; 26e84fe556Smrg PFNEGLCREATEDRMIMAGEMESAPROC epoxy_eglCreateDRMImageMESA; 27e84fe556Smrg PFNEGLCREATEFENCESYNCNVPROC epoxy_eglCreateFenceSyncNV; 28e84fe556Smrg PFNEGLCREATEIMAGEPROC epoxy_eglCreateImage; 29e84fe556Smrg PFNEGLCREATEIMAGEKHRPROC epoxy_eglCreateImageKHR; 30e84fe556Smrg PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC epoxy_eglCreatePbufferFromClientBuffer; 31e84fe556Smrg PFNEGLCREATEPBUFFERSURFACEPROC epoxy_eglCreatePbufferSurface; 32e84fe556Smrg PFNEGLCREATEPIXMAPSURFACEPROC epoxy_eglCreatePixmapSurface; 33e84fe556Smrg PFNEGLCREATEPIXMAPSURFACEHIPROC epoxy_eglCreatePixmapSurfaceHI; 34e84fe556Smrg PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC epoxy_eglCreatePlatformPixmapSurface; 35e84fe556Smrg PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC epoxy_eglCreatePlatformPixmapSurfaceEXT; 36e84fe556Smrg PFNEGLCREATEPLATFORMWINDOWSURFACEPROC epoxy_eglCreatePlatformWindowSurface; 37e84fe556Smrg PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC epoxy_eglCreatePlatformWindowSurfaceEXT; 38e84fe556Smrg PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC epoxy_eglCreateStreamFromFileDescriptorKHR; 39e84fe556Smrg PFNEGLCREATESTREAMKHRPROC epoxy_eglCreateStreamKHR; 40e84fe556Smrg PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC epoxy_eglCreateStreamProducerSurfaceKHR; 41e84fe556Smrg PFNEGLCREATESTREAMSYNCNVPROC epoxy_eglCreateStreamSyncNV; 42e84fe556Smrg PFNEGLCREATESYNCPROC epoxy_eglCreateSync; 43e84fe556Smrg PFNEGLCREATESYNC64KHRPROC epoxy_eglCreateSync64KHR; 44e84fe556Smrg PFNEGLCREATESYNCKHRPROC epoxy_eglCreateSyncKHR; 45e84fe556Smrg PFNEGLCREATEWINDOWSURFACEPROC epoxy_eglCreateWindowSurface; 46e84fe556Smrg PFNEGLDESTROYCONTEXTPROC epoxy_eglDestroyContext; 47e84fe556Smrg PFNEGLDESTROYIMAGEPROC epoxy_eglDestroyImage; 48e84fe556Smrg PFNEGLDESTROYIMAGEKHRPROC epoxy_eglDestroyImageKHR; 49e84fe556Smrg PFNEGLDESTROYSTREAMKHRPROC epoxy_eglDestroyStreamKHR; 50e84fe556Smrg PFNEGLDESTROYSURFACEPROC epoxy_eglDestroySurface; 51e84fe556Smrg PFNEGLDESTROYSYNCPROC epoxy_eglDestroySync; 52e84fe556Smrg PFNEGLDESTROYSYNCKHRPROC epoxy_eglDestroySyncKHR; 53e84fe556Smrg PFNEGLDESTROYSYNCNVPROC epoxy_eglDestroySyncNV; 54e84fe556Smrg PFNEGLDUPNATIVEFENCEFDANDROIDPROC epoxy_eglDupNativeFenceFDANDROID; 55e84fe556Smrg PFNEGLEXPORTDMABUFIMAGEMESAPROC epoxy_eglExportDMABUFImageMESA; 56e84fe556Smrg PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC epoxy_eglExportDMABUFImageQueryMESA; 57e84fe556Smrg PFNEGLEXPORTDRMIMAGEMESAPROC epoxy_eglExportDRMImageMESA; 58e84fe556Smrg PFNEGLFENCENVPROC epoxy_eglFenceNV; 59e84fe556Smrg PFNEGLGETCONFIGATTRIBPROC epoxy_eglGetConfigAttrib; 60e84fe556Smrg PFNEGLGETCONFIGSPROC epoxy_eglGetConfigs; 61e84fe556Smrg PFNEGLGETCURRENTCONTEXTPROC epoxy_eglGetCurrentContext; 62e84fe556Smrg PFNEGLGETCURRENTDISPLAYPROC epoxy_eglGetCurrentDisplay; 63e84fe556Smrg PFNEGLGETCURRENTSURFACEPROC epoxy_eglGetCurrentSurface; 64e84fe556Smrg PFNEGLGETDISPLAYPROC epoxy_eglGetDisplay; 65e84fe556Smrg PFNEGLGETERRORPROC epoxy_eglGetError; 66e84fe556Smrg PFNEGLGETOUTPUTLAYERSEXTPROC epoxy_eglGetOutputLayersEXT; 67e84fe556Smrg PFNEGLGETOUTPUTPORTSEXTPROC epoxy_eglGetOutputPortsEXT; 68e84fe556Smrg PFNEGLGETPLATFORMDISPLAYPROC epoxy_eglGetPlatformDisplay; 69e84fe556Smrg PFNEGLGETPLATFORMDISPLAYEXTPROC epoxy_eglGetPlatformDisplayEXT; 70e84fe556Smrg PFNEGLGETPROCADDRESSPROC epoxy_eglGetProcAddress; 71e84fe556Smrg PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC epoxy_eglGetStreamFileDescriptorKHR; 72e84fe556Smrg PFNEGLGETSYNCATTRIBPROC epoxy_eglGetSyncAttrib; 73e84fe556Smrg PFNEGLGETSYNCATTRIBKHRPROC epoxy_eglGetSyncAttribKHR; 74e84fe556Smrg PFNEGLGETSYNCATTRIBNVPROC epoxy_eglGetSyncAttribNV; 75e84fe556Smrg PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC epoxy_eglGetSystemTimeFrequencyNV; 76e84fe556Smrg PFNEGLGETSYSTEMTIMENVPROC epoxy_eglGetSystemTimeNV; 77e84fe556Smrg PFNEGLINITIALIZEPROC epoxy_eglInitialize; 78e84fe556Smrg PFNEGLLOCKSURFACEKHRPROC epoxy_eglLockSurfaceKHR; 79e84fe556Smrg PFNEGLMAKECURRENTPROC epoxy_eglMakeCurrent; 80e84fe556Smrg PFNEGLOUTPUTLAYERATTRIBEXTPROC epoxy_eglOutputLayerAttribEXT; 81e84fe556Smrg PFNEGLOUTPUTPORTATTRIBEXTPROC epoxy_eglOutputPortAttribEXT; 82e84fe556Smrg PFNEGLPOSTSUBBUFFERNVPROC epoxy_eglPostSubBufferNV; 83e84fe556Smrg PFNEGLQUERYAPIPROC epoxy_eglQueryAPI; 84e84fe556Smrg PFNEGLQUERYCONTEXTPROC epoxy_eglQueryContext; 85e84fe556Smrg PFNEGLQUERYDEVICEATTRIBEXTPROC epoxy_eglQueryDeviceAttribEXT; 86e84fe556Smrg PFNEGLQUERYDEVICESTRINGEXTPROC epoxy_eglQueryDeviceStringEXT; 87e84fe556Smrg PFNEGLQUERYDEVICESEXTPROC epoxy_eglQueryDevicesEXT; 88e84fe556Smrg PFNEGLQUERYDISPLAYATTRIBEXTPROC epoxy_eglQueryDisplayAttribEXT; 89e84fe556Smrg PFNEGLQUERYNATIVEDISPLAYNVPROC epoxy_eglQueryNativeDisplayNV; 90e84fe556Smrg PFNEGLQUERYNATIVEPIXMAPNVPROC epoxy_eglQueryNativePixmapNV; 91e84fe556Smrg PFNEGLQUERYNATIVEWINDOWNVPROC epoxy_eglQueryNativeWindowNV; 92e84fe556Smrg PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC epoxy_eglQueryOutputLayerAttribEXT; 93e84fe556Smrg PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC epoxy_eglQueryOutputLayerStringEXT; 94e84fe556Smrg PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC epoxy_eglQueryOutputPortAttribEXT; 95e84fe556Smrg PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC epoxy_eglQueryOutputPortStringEXT; 96e84fe556Smrg PFNEGLQUERYSTREAMKHRPROC epoxy_eglQueryStreamKHR; 97e84fe556Smrg PFNEGLQUERYSTREAMTIMEKHRPROC epoxy_eglQueryStreamTimeKHR; 98e84fe556Smrg PFNEGLQUERYSTREAMU64KHRPROC epoxy_eglQueryStreamu64KHR; 99e84fe556Smrg PFNEGLQUERYSTRINGPROC epoxy_eglQueryString; 100e84fe556Smrg PFNEGLQUERYSURFACEPROC epoxy_eglQuerySurface; 101e84fe556Smrg PFNEGLQUERYSURFACE64KHRPROC epoxy_eglQuerySurface64KHR; 102e84fe556Smrg PFNEGLQUERYSURFACEPOINTERANGLEPROC epoxy_eglQuerySurfacePointerANGLE; 103e84fe556Smrg PFNEGLRELEASETEXIMAGEPROC epoxy_eglReleaseTexImage; 104e84fe556Smrg PFNEGLRELEASETHREADPROC epoxy_eglReleaseThread; 105e84fe556Smrg PFNEGLSETBLOBCACHEFUNCSANDROIDPROC epoxy_eglSetBlobCacheFuncsANDROID; 106e84fe556Smrg PFNEGLSETDAMAGEREGIONKHRPROC epoxy_eglSetDamageRegionKHR; 107e84fe556Smrg PFNEGLSIGNALSYNCKHRPROC epoxy_eglSignalSyncKHR; 108e84fe556Smrg PFNEGLSIGNALSYNCNVPROC epoxy_eglSignalSyncNV; 109e84fe556Smrg PFNEGLSTREAMATTRIBKHRPROC epoxy_eglStreamAttribKHR; 110e84fe556Smrg PFNEGLSTREAMCONSUMERACQUIREKHRPROC epoxy_eglStreamConsumerAcquireKHR; 111e84fe556Smrg PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC epoxy_eglStreamConsumerGLTextureExternalKHR; 112e84fe556Smrg PFNEGLSTREAMCONSUMEROUTPUTEXTPROC epoxy_eglStreamConsumerOutputEXT; 113e84fe556Smrg PFNEGLSTREAMCONSUMERRELEASEKHRPROC epoxy_eglStreamConsumerReleaseKHR; 114e84fe556Smrg PFNEGLSURFACEATTRIBPROC epoxy_eglSurfaceAttrib; 115e84fe556Smrg PFNEGLSWAPBUFFERSPROC epoxy_eglSwapBuffers; 116e84fe556Smrg PFNEGLSWAPBUFFERSREGION2NOKPROC epoxy_eglSwapBuffersRegion2NOK; 117e84fe556Smrg PFNEGLSWAPBUFFERSREGIONNOKPROC epoxy_eglSwapBuffersRegionNOK; 118e84fe556Smrg PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC epoxy_eglSwapBuffersWithDamageEXT; 119e84fe556Smrg PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC epoxy_eglSwapBuffersWithDamageKHR; 120e84fe556Smrg PFNEGLSWAPINTERVALPROC epoxy_eglSwapInterval; 121e84fe556Smrg PFNEGLTERMINATEPROC epoxy_eglTerminate; 122e84fe556Smrg PFNEGLUNLOCKSURFACEKHRPROC epoxy_eglUnlockSurfaceKHR; 123e84fe556Smrg PFNEGLWAITCLIENTPROC epoxy_eglWaitClient; 124e84fe556Smrg PFNEGLWAITGLPROC epoxy_eglWaitGL; 125e84fe556Smrg PFNEGLWAITNATIVEPROC epoxy_eglWaitNative; 126e84fe556Smrg PFNEGLWAITSYNCPROC epoxy_eglWaitSync; 127e84fe556Smrg PFNEGLWAITSYNCKHRPROC epoxy_eglWaitSyncKHR; 128e84fe556Smrg}; 129e84fe556Smrg 130e84fe556Smrg#if USING_DISPATCH_TABLE 131e84fe556Smrgstatic inline struct dispatch_table * 132e84fe556Smrgget_dispatch_table(void); 133e84fe556Smrg 134e84fe556Smrg#endif 135e84fe556Smrgenum egl_provider { 136e84fe556Smrg egl_provider_terminator = 0, 137e84fe556Smrg EGL_10, 138e84fe556Smrg EGL_11, 139e84fe556Smrg EGL_12, 140e84fe556Smrg EGL_14, 141e84fe556Smrg EGL_15, 142e84fe556Smrg EGL_extension_EGL_ANDROID_blob_cache, 143e84fe556Smrg EGL_extension_EGL_ANDROID_native_fence_sync, 144e84fe556Smrg EGL_extension_EGL_ANGLE_query_surface_pointer, 145e84fe556Smrg EGL_extension_EGL_EXT_device_base, 146e84fe556Smrg EGL_extension_EGL_EXT_device_enumeration, 147e84fe556Smrg EGL_extension_EGL_EXT_device_query, 148e84fe556Smrg EGL_extension_EGL_EXT_output_base, 149e84fe556Smrg EGL_extension_EGL_EXT_platform_base, 150e84fe556Smrg EGL_extension_EGL_EXT_stream_consumer_egloutput, 151e84fe556Smrg EGL_extension_EGL_EXT_swap_buffers_with_damage, 152e84fe556Smrg EGL_extension_EGL_HI_clientpixmap, 153e84fe556Smrg EGL_extension_EGL_KHR_cl_event2, 154e84fe556Smrg EGL_extension_EGL_KHR_fence_sync, 155e84fe556Smrg EGL_extension_EGL_KHR_image, 156e84fe556Smrg EGL_extension_EGL_KHR_image_base, 157e84fe556Smrg EGL_extension_EGL_KHR_lock_surface3, 158e84fe556Smrg EGL_extension_EGL_KHR_lock_surface, 159e84fe556Smrg EGL_extension_EGL_KHR_partial_update, 160e84fe556Smrg EGL_extension_EGL_KHR_reusable_sync, 161e84fe556Smrg EGL_extension_EGL_KHR_stream, 162e84fe556Smrg EGL_extension_EGL_KHR_stream_consumer_gltexture, 163e84fe556Smrg EGL_extension_EGL_KHR_stream_cross_process_fd, 164e84fe556Smrg EGL_extension_EGL_KHR_stream_fifo, 165e84fe556Smrg EGL_extension_EGL_KHR_stream_producer_eglsurface, 166e84fe556Smrg EGL_extension_EGL_KHR_swap_buffers_with_damage, 167e84fe556Smrg EGL_extension_EGL_KHR_wait_sync, 168e84fe556Smrg EGL_extension_EGL_MESA_drm_image, 169e84fe556Smrg EGL_extension_EGL_MESA_image_dma_buf_export, 170e84fe556Smrg EGL_extension_EGL_NOK_swap_region2, 171e84fe556Smrg EGL_extension_EGL_NOK_swap_region, 172e84fe556Smrg EGL_extension_EGL_NV_native_query, 173e84fe556Smrg EGL_extension_EGL_NV_post_sub_buffer, 174e84fe556Smrg EGL_extension_EGL_NV_stream_sync, 175e84fe556Smrg EGL_extension_EGL_NV_sync, 176e84fe556Smrg EGL_extension_EGL_NV_system_time, 177e84fe556Smrg} PACKED; 178e84fe556Smrg 179e84fe556Smrgstatic const char *enum_string = 180e84fe556Smrg "EGL 10\0" 181e84fe556Smrg "EGL 11\0" 182e84fe556Smrg "EGL 12\0" 183e84fe556Smrg "EGL 14\0" 184e84fe556Smrg "EGL 15\0" 185e84fe556Smrg "EGL extension \"EGL_ANDROID_blob_cache\"\0" 186e84fe556Smrg "EGL extension \"EGL_ANDROID_native_fence_sync\"\0" 187e84fe556Smrg "EGL extension \"EGL_ANGLE_query_surface_pointer\"\0" 188e84fe556Smrg "EGL extension \"EGL_EXT_device_base\"\0" 189e84fe556Smrg "EGL extension \"EGL_EXT_device_enumeration\"\0" 190e84fe556Smrg "EGL extension \"EGL_EXT_device_query\"\0" 191e84fe556Smrg "EGL extension \"EGL_EXT_output_base\"\0" 192e84fe556Smrg "EGL extension \"EGL_EXT_platform_base\"\0" 193e84fe556Smrg "EGL extension \"EGL_EXT_stream_consumer_egloutput\"\0" 194e84fe556Smrg "EGL extension \"EGL_EXT_swap_buffers_with_damage\"\0" 195e84fe556Smrg "EGL extension \"EGL_HI_clientpixmap\"\0" 196e84fe556Smrg "EGL extension \"EGL_KHR_cl_event2\"\0" 197e84fe556Smrg "EGL extension \"EGL_KHR_fence_sync\"\0" 198e84fe556Smrg "EGL extension \"EGL_KHR_image\"\0" 199e84fe556Smrg "EGL extension \"EGL_KHR_image_base\"\0" 200e84fe556Smrg "EGL extension \"EGL_KHR_lock_surface3\"\0" 201e84fe556Smrg "EGL extension \"EGL_KHR_lock_surface\"\0" 202e84fe556Smrg "EGL extension \"EGL_KHR_partial_update\"\0" 203e84fe556Smrg "EGL extension \"EGL_KHR_reusable_sync\"\0" 204e84fe556Smrg "EGL extension \"EGL_KHR_stream\"\0" 205e84fe556Smrg "EGL extension \"EGL_KHR_stream_consumer_gltexture\"\0" 206e84fe556Smrg "EGL extension \"EGL_KHR_stream_cross_process_fd\"\0" 207e84fe556Smrg "EGL extension \"EGL_KHR_stream_fifo\"\0" 208e84fe556Smrg "EGL extension \"EGL_KHR_stream_producer_eglsurface\"\0" 209e84fe556Smrg "EGL extension \"EGL_KHR_swap_buffers_with_damage\"\0" 210e84fe556Smrg "EGL extension \"EGL_KHR_wait_sync\"\0" 211e84fe556Smrg "EGL extension \"EGL_MESA_drm_image\"\0" 212e84fe556Smrg "EGL extension \"EGL_MESA_image_dma_buf_export\"\0" 213e84fe556Smrg "EGL extension \"EGL_NOK_swap_region2\"\0" 214e84fe556Smrg "EGL extension \"EGL_NOK_swap_region\"\0" 215e84fe556Smrg "EGL extension \"EGL_NV_native_query\"\0" 216e84fe556Smrg "EGL extension \"EGL_NV_post_sub_buffer\"\0" 217e84fe556Smrg "EGL extension \"EGL_NV_stream_sync\"\0" 218e84fe556Smrg "EGL extension \"EGL_NV_sync\"\0" 219e84fe556Smrg "EGL extension \"EGL_NV_system_time\"\0" 220e84fe556Smrg ; 221e84fe556Smrg 222e84fe556Smrgstatic const uint16_t enum_string_offsets[] = { 223e84fe556Smrg [EGL_10] = 0, 224e84fe556Smrg [EGL_11] = 7, 225e84fe556Smrg [EGL_12] = 14, 226e84fe556Smrg [EGL_14] = 21, 227e84fe556Smrg [EGL_15] = 28, 228e84fe556Smrg [EGL_extension_EGL_ANDROID_blob_cache] = 35, 229e84fe556Smrg [EGL_extension_EGL_ANDROID_native_fence_sync] = 74, 230e84fe556Smrg [EGL_extension_EGL_ANGLE_query_surface_pointer] = 120, 231e84fe556Smrg [EGL_extension_EGL_EXT_device_base] = 168, 232e84fe556Smrg [EGL_extension_EGL_EXT_device_enumeration] = 204, 233e84fe556Smrg [EGL_extension_EGL_EXT_device_query] = 247, 234e84fe556Smrg [EGL_extension_EGL_EXT_output_base] = 284, 235e84fe556Smrg [EGL_extension_EGL_EXT_platform_base] = 320, 236e84fe556Smrg [EGL_extension_EGL_EXT_stream_consumer_egloutput] = 358, 237e84fe556Smrg [EGL_extension_EGL_EXT_swap_buffers_with_damage] = 408, 238e84fe556Smrg [EGL_extension_EGL_HI_clientpixmap] = 457, 239e84fe556Smrg [EGL_extension_EGL_KHR_cl_event2] = 493, 240e84fe556Smrg [EGL_extension_EGL_KHR_fence_sync] = 527, 241e84fe556Smrg [EGL_extension_EGL_KHR_image] = 562, 242e84fe556Smrg [EGL_extension_EGL_KHR_image_base] = 592, 243e84fe556Smrg [EGL_extension_EGL_KHR_lock_surface3] = 627, 244e84fe556Smrg [EGL_extension_EGL_KHR_lock_surface] = 665, 245e84fe556Smrg [EGL_extension_EGL_KHR_partial_update] = 702, 246e84fe556Smrg [EGL_extension_EGL_KHR_reusable_sync] = 741, 247e84fe556Smrg [EGL_extension_EGL_KHR_stream] = 779, 248e84fe556Smrg [EGL_extension_EGL_KHR_stream_consumer_gltexture] = 810, 249e84fe556Smrg [EGL_extension_EGL_KHR_stream_cross_process_fd] = 860, 250e84fe556Smrg [EGL_extension_EGL_KHR_stream_fifo] = 908, 251e84fe556Smrg [EGL_extension_EGL_KHR_stream_producer_eglsurface] = 944, 252e84fe556Smrg [EGL_extension_EGL_KHR_swap_buffers_with_damage] = 995, 253e84fe556Smrg [EGL_extension_EGL_KHR_wait_sync] = 1044, 254e84fe556Smrg [EGL_extension_EGL_MESA_drm_image] = 1078, 255e84fe556Smrg [EGL_extension_EGL_MESA_image_dma_buf_export] = 1113, 256e84fe556Smrg [EGL_extension_EGL_NOK_swap_region2] = 1159, 257e84fe556Smrg [EGL_extension_EGL_NOK_swap_region] = 1196, 258e84fe556Smrg [EGL_extension_EGL_NV_native_query] = 1232, 259e84fe556Smrg [EGL_extension_EGL_NV_post_sub_buffer] = 1268, 260e84fe556Smrg [EGL_extension_EGL_NV_stream_sync] = 1307, 261e84fe556Smrg [EGL_extension_EGL_NV_sync] = 1342, 262e84fe556Smrg [EGL_extension_EGL_NV_system_time] = 1370, 263e84fe556Smrg}; 264e84fe556Smrg 265e84fe556Smrgstatic const char entrypoint_strings[] = 266e84fe556Smrg "eglBindAPI\0" 267e84fe556Smrg "eglBindTexImage\0" 268e84fe556Smrg "eglChooseConfig\0" 269e84fe556Smrg "eglClientWaitSync\0" 270e84fe556Smrg "eglClientWaitSyncKHR\0" 271e84fe556Smrg "eglClientWaitSyncNV\0" 272e84fe556Smrg "eglCopyBuffers\0" 273e84fe556Smrg "eglCreateContext\0" 274e84fe556Smrg "eglCreateDRMImageMESA\0" 275e84fe556Smrg "eglCreateFenceSyncNV\0" 276e84fe556Smrg "eglCreateImage\0" 277e84fe556Smrg "eglCreateImageKHR\0" 278e84fe556Smrg "eglCreatePbufferFromClientBuffer\0" 279e84fe556Smrg "eglCreatePbufferSurface\0" 280e84fe556Smrg "eglCreatePixmapSurface\0" 281e84fe556Smrg "eglCreatePixmapSurfaceHI\0" 282e84fe556Smrg "eglCreatePlatformPixmapSurface\0" 283e84fe556Smrg "eglCreatePlatformPixmapSurfaceEXT\0" 284e84fe556Smrg "eglCreatePlatformWindowSurface\0" 285e84fe556Smrg "eglCreatePlatformWindowSurfaceEXT\0" 286e84fe556Smrg "eglCreateStreamFromFileDescriptorKHR\0" 287e84fe556Smrg "eglCreateStreamKHR\0" 288e84fe556Smrg "eglCreateStreamProducerSurfaceKHR\0" 289e84fe556Smrg "eglCreateStreamSyncNV\0" 290e84fe556Smrg "eglCreateSync\0" 291e84fe556Smrg "eglCreateSync64KHR\0" 292e84fe556Smrg "eglCreateSyncKHR\0" 293e84fe556Smrg "eglCreateWindowSurface\0" 294e84fe556Smrg "eglDestroyContext\0" 295e84fe556Smrg "eglDestroyImage\0" 296e84fe556Smrg "eglDestroyImageKHR\0" 297e84fe556Smrg "eglDestroyStreamKHR\0" 298e84fe556Smrg "eglDestroySurface\0" 299e84fe556Smrg "eglDestroySync\0" 300e84fe556Smrg "eglDestroySyncKHR\0" 301e84fe556Smrg "eglDestroySyncNV\0" 302e84fe556Smrg "eglDupNativeFenceFDANDROID\0" 303e84fe556Smrg "eglExportDMABUFImageMESA\0" 304e84fe556Smrg "eglExportDMABUFImageQueryMESA\0" 305e84fe556Smrg "eglExportDRMImageMESA\0" 306e84fe556Smrg "eglFenceNV\0" 307e84fe556Smrg "eglGetConfigAttrib\0" 308e84fe556Smrg "eglGetConfigs\0" 309e84fe556Smrg "eglGetCurrentContext\0" 310e84fe556Smrg "eglGetCurrentDisplay\0" 311e84fe556Smrg "eglGetCurrentSurface\0" 312e84fe556Smrg "eglGetDisplay\0" 313e84fe556Smrg "eglGetError\0" 314e84fe556Smrg "eglGetOutputLayersEXT\0" 315e84fe556Smrg "eglGetOutputPortsEXT\0" 316e84fe556Smrg "eglGetPlatformDisplay\0" 317e84fe556Smrg "eglGetPlatformDisplayEXT\0" 318e84fe556Smrg "eglGetProcAddress\0" 319e84fe556Smrg "eglGetStreamFileDescriptorKHR\0" 320e84fe556Smrg "eglGetSyncAttrib\0" 321e84fe556Smrg "eglGetSyncAttribKHR\0" 322e84fe556Smrg "eglGetSyncAttribNV\0" 323e84fe556Smrg "eglGetSystemTimeFrequencyNV\0" 324e84fe556Smrg "eglGetSystemTimeNV\0" 325e84fe556Smrg "eglInitialize\0" 326e84fe556Smrg "eglLockSurfaceKHR\0" 327e84fe556Smrg "eglMakeCurrent\0" 328e84fe556Smrg "eglOutputLayerAttribEXT\0" 329e84fe556Smrg "eglOutputPortAttribEXT\0" 330e84fe556Smrg "eglPostSubBufferNV\0" 331e84fe556Smrg "eglQueryAPI\0" 332e84fe556Smrg "eglQueryContext\0" 333e84fe556Smrg "eglQueryDeviceAttribEXT\0" 334e84fe556Smrg "eglQueryDeviceStringEXT\0" 335e84fe556Smrg "eglQueryDevicesEXT\0" 336e84fe556Smrg "eglQueryDisplayAttribEXT\0" 337e84fe556Smrg "eglQueryNativeDisplayNV\0" 338e84fe556Smrg "eglQueryNativePixmapNV\0" 339e84fe556Smrg "eglQueryNativeWindowNV\0" 340e84fe556Smrg "eglQueryOutputLayerAttribEXT\0" 341e84fe556Smrg "eglQueryOutputLayerStringEXT\0" 342e84fe556Smrg "eglQueryOutputPortAttribEXT\0" 343e84fe556Smrg "eglQueryOutputPortStringEXT\0" 344e84fe556Smrg "eglQueryStreamKHR\0" 345e84fe556Smrg "eglQueryStreamTimeKHR\0" 346e84fe556Smrg "eglQueryStreamu64KHR\0" 347e84fe556Smrg "eglQueryString\0" 348e84fe556Smrg "eglQuerySurface\0" 349e84fe556Smrg "eglQuerySurface64KHR\0" 350e84fe556Smrg "eglQuerySurfacePointerANGLE\0" 351e84fe556Smrg "eglReleaseTexImage\0" 352e84fe556Smrg "eglReleaseThread\0" 353e84fe556Smrg "eglSetBlobCacheFuncsANDROID\0" 354e84fe556Smrg "eglSetDamageRegionKHR\0" 355e84fe556Smrg "eglSignalSyncKHR\0" 356e84fe556Smrg "eglSignalSyncNV\0" 357e84fe556Smrg "eglStreamAttribKHR\0" 358e84fe556Smrg "eglStreamConsumerAcquireKHR\0" 359e84fe556Smrg "eglStreamConsumerGLTextureExternalKHR\0" 360e84fe556Smrg "eglStreamConsumerOutputEXT\0" 361e84fe556Smrg "eglStreamConsumerReleaseKHR\0" 362e84fe556Smrg "eglSurfaceAttrib\0" 363e84fe556Smrg "eglSwapBuffers\0" 364e84fe556Smrg "eglSwapBuffersRegion2NOK\0" 365e84fe556Smrg "eglSwapBuffersRegionNOK\0" 366e84fe556Smrg "eglSwapBuffersWithDamageEXT\0" 367e84fe556Smrg "eglSwapBuffersWithDamageKHR\0" 368e84fe556Smrg "eglSwapInterval\0" 369e84fe556Smrg "eglTerminate\0" 370e84fe556Smrg "eglUnlockSurfaceKHR\0" 371e84fe556Smrg "eglWaitClient\0" 372e84fe556Smrg "eglWaitGL\0" 373e84fe556Smrg "eglWaitNative\0" 374e84fe556Smrg "eglWaitSync\0" 375e84fe556Smrg "eglWaitSyncKHR\0" 376e84fe556Smrg ; 377e84fe556Smrg 378e84fe556Smrgstatic void *egl_provider_resolver(const char *name, 379e84fe556Smrg const enum egl_provider *providers, 380e84fe556Smrg const uint16_t *entrypoints) 381e84fe556Smrg{ 382e84fe556Smrg int i; 383e84fe556Smrg for (i = 0; providers[i] != egl_provider_terminator; i++) { 384e84fe556Smrg switch (providers[i]) { 385e84fe556Smrg case EGL_10: 386e84fe556Smrg if (true) 387e84fe556Smrg return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]); 388e84fe556Smrg break; 389e84fe556Smrg case EGL_11: 390e84fe556Smrg if (epoxy_conservative_egl_version() >= 11) 391e84fe556Smrg return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]); 392e84fe556Smrg break; 393e84fe556Smrg case EGL_12: 394e84fe556Smrg if (epoxy_conservative_egl_version() >= 12) 395e84fe556Smrg return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]); 396e84fe556Smrg break; 397e84fe556Smrg case EGL_14: 398e84fe556Smrg if (epoxy_conservative_egl_version() >= 14) 399e84fe556Smrg return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]); 400e84fe556Smrg break; 401e84fe556Smrg case EGL_15: 402e84fe556Smrg if (epoxy_conservative_egl_version() >= 15) 403e84fe556Smrg return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]); 404e84fe556Smrg break; 405e84fe556Smrg case EGL_extension_EGL_ANDROID_blob_cache: 406e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_ANDROID_blob_cache")) 407e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 408e84fe556Smrg break; 409e84fe556Smrg case EGL_extension_EGL_ANDROID_native_fence_sync: 410e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_ANDROID_native_fence_sync")) 411e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 412e84fe556Smrg break; 413e84fe556Smrg case EGL_extension_EGL_ANGLE_query_surface_pointer: 414e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_ANGLE_query_surface_pointer")) 415e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 416e84fe556Smrg break; 417e84fe556Smrg case EGL_extension_EGL_EXT_device_base: 418e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_EXT_device_base")) 419e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 420e84fe556Smrg break; 421e84fe556Smrg case EGL_extension_EGL_EXT_device_enumeration: 422e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_EXT_device_enumeration")) 423e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 424e84fe556Smrg break; 425e84fe556Smrg case EGL_extension_EGL_EXT_device_query: 426e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_EXT_device_query")) 427e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 428e84fe556Smrg break; 429e84fe556Smrg case EGL_extension_EGL_EXT_output_base: 430e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_EXT_output_base")) 431e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 432e84fe556Smrg break; 433e84fe556Smrg case EGL_extension_EGL_EXT_platform_base: 434e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_EXT_platform_base")) 435e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 436e84fe556Smrg break; 437e84fe556Smrg case EGL_extension_EGL_EXT_stream_consumer_egloutput: 438e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_EXT_stream_consumer_egloutput")) 439e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 440e84fe556Smrg break; 441e84fe556Smrg case EGL_extension_EGL_EXT_swap_buffers_with_damage: 442e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_EXT_swap_buffers_with_damage")) 443e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 444e84fe556Smrg break; 445e84fe556Smrg case EGL_extension_EGL_HI_clientpixmap: 446e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_HI_clientpixmap")) 447e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 448e84fe556Smrg break; 449e84fe556Smrg case EGL_extension_EGL_KHR_cl_event2: 450e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_cl_event2")) 451e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 452e84fe556Smrg break; 453e84fe556Smrg case EGL_extension_EGL_KHR_fence_sync: 454e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_fence_sync")) 455e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 456e84fe556Smrg break; 457e84fe556Smrg case EGL_extension_EGL_KHR_image: 458e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_image")) 459e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 460e84fe556Smrg break; 461e84fe556Smrg case EGL_extension_EGL_KHR_image_base: 462e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_image_base")) 463e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 464e84fe556Smrg break; 465e84fe556Smrg case EGL_extension_EGL_KHR_lock_surface3: 466e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_lock_surface3")) 467e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 468e84fe556Smrg break; 469e84fe556Smrg case EGL_extension_EGL_KHR_lock_surface: 470e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_lock_surface")) 471e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 472e84fe556Smrg break; 473e84fe556Smrg case EGL_extension_EGL_KHR_partial_update: 474e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_partial_update")) 475e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 476e84fe556Smrg break; 477e84fe556Smrg case EGL_extension_EGL_KHR_reusable_sync: 478e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_reusable_sync")) 479e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 480e84fe556Smrg break; 481e84fe556Smrg case EGL_extension_EGL_KHR_stream: 482e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_stream")) 483e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 484e84fe556Smrg break; 485e84fe556Smrg case EGL_extension_EGL_KHR_stream_consumer_gltexture: 486e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_stream_consumer_gltexture")) 487e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 488e84fe556Smrg break; 489e84fe556Smrg case EGL_extension_EGL_KHR_stream_cross_process_fd: 490e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_stream_cross_process_fd")) 491e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 492e84fe556Smrg break; 493e84fe556Smrg case EGL_extension_EGL_KHR_stream_fifo: 494e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_stream_fifo")) 495e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 496e84fe556Smrg break; 497e84fe556Smrg case EGL_extension_EGL_KHR_stream_producer_eglsurface: 498e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_stream_producer_eglsurface")) 499e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 500e84fe556Smrg break; 501e84fe556Smrg case EGL_extension_EGL_KHR_swap_buffers_with_damage: 502e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_swap_buffers_with_damage")) 503e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 504e84fe556Smrg break; 505e84fe556Smrg case EGL_extension_EGL_KHR_wait_sync: 506e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_KHR_wait_sync")) 507e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 508e84fe556Smrg break; 509e84fe556Smrg case EGL_extension_EGL_MESA_drm_image: 510e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_MESA_drm_image")) 511e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 512e84fe556Smrg break; 513e84fe556Smrg case EGL_extension_EGL_MESA_image_dma_buf_export: 514e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_MESA_image_dma_buf_export")) 515e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 516e84fe556Smrg break; 517e84fe556Smrg case EGL_extension_EGL_NOK_swap_region2: 518e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_NOK_swap_region2")) 519e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 520e84fe556Smrg break; 521e84fe556Smrg case EGL_extension_EGL_NOK_swap_region: 522e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_NOK_swap_region")) 523e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 524e84fe556Smrg break; 525e84fe556Smrg case EGL_extension_EGL_NV_native_query: 526e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_NV_native_query")) 527e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 528e84fe556Smrg break; 529e84fe556Smrg case EGL_extension_EGL_NV_post_sub_buffer: 530e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_NV_post_sub_buffer")) 531e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 532e84fe556Smrg break; 533e84fe556Smrg case EGL_extension_EGL_NV_stream_sync: 534e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_NV_stream_sync")) 535e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 536e84fe556Smrg break; 537e84fe556Smrg case EGL_extension_EGL_NV_sync: 538e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_NV_sync")) 539e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 540e84fe556Smrg break; 541e84fe556Smrg case EGL_extension_EGL_NV_system_time: 542e84fe556Smrg if (epoxy_conservative_has_egl_extension("EGL_NV_system_time")) 543e84fe556Smrg return eglGetProcAddress(entrypoint_strings + entrypoints[i]); 544e84fe556Smrg break; 545e84fe556Smrg case egl_provider_terminator: 546e84fe556Smrg abort(); /* Not reached */ 547e84fe556Smrg } 548e84fe556Smrg } 549e84fe556Smrg 550e84fe556Smrg fprintf(stderr, "No provider of %s found. Requires one of:\n", name); 551e84fe556Smrg for (i = 0; providers[i] != egl_provider_terminator; i++) { 552e84fe556Smrg fprintf(stderr, " %s\n", enum_string + enum_string_offsets[providers[i]]); 553e84fe556Smrg } 554e84fe556Smrg if (providers[0] == egl_provider_terminator) { 555e84fe556Smrg fprintf(stderr, " No known providers. This is likely a bug " 556e84fe556Smrg "in libepoxy code generation\n"); 557e84fe556Smrg } 558e84fe556Smrg abort(); 559e84fe556Smrg} 560e84fe556Smrg 561e84fe556SmrgEPOXY_NOINLINE static void * 562e84fe556Smrgegl_single_resolver(enum egl_provider provider, uint16_t entrypoint_offset); 563e84fe556Smrg 564e84fe556Smrgstatic void * 565e84fe556Smrgegl_single_resolver(enum egl_provider provider, uint16_t entrypoint_offset) 566e84fe556Smrg{ 567e84fe556Smrg enum egl_provider providers[] = { 568e84fe556Smrg provider, 569e84fe556Smrg egl_provider_terminator 570e84fe556Smrg }; 571e84fe556Smrg return egl_provider_resolver(entrypoint_strings + entrypoint_offset, 572e84fe556Smrg providers, &entrypoint_offset); 573e84fe556Smrg} 574e84fe556Smrg 575e84fe556Smrgstatic PFNEGLBINDAPIPROC 576e84fe556Smrgepoxy_eglBindAPI_resolver(void) 577e84fe556Smrg{ 578e84fe556Smrg return egl_single_resolver(EGL_12, 0 /* eglBindAPI */); 579e84fe556Smrg} 580e84fe556Smrg 581e84fe556Smrgstatic PFNEGLBINDTEXIMAGEPROC 582e84fe556Smrgepoxy_eglBindTexImage_resolver(void) 583e84fe556Smrg{ 584e84fe556Smrg return egl_single_resolver(EGL_11, 11 /* eglBindTexImage */); 585e84fe556Smrg} 586e84fe556Smrg 587e84fe556Smrgstatic PFNEGLCHOOSECONFIGPROC 588e84fe556Smrgepoxy_eglChooseConfig_resolver(void) 589e84fe556Smrg{ 590e84fe556Smrg return egl_single_resolver(EGL_10, 27 /* eglChooseConfig */); 591e84fe556Smrg} 592e84fe556Smrg 593e84fe556Smrgstatic PFNEGLCLIENTWAITSYNCPROC 594e84fe556Smrgepoxy_eglClientWaitSync_resolver(void) 595e84fe556Smrg{ 596e84fe556Smrg static const enum egl_provider providers[] = { 597e84fe556Smrg EGL_15, 598e84fe556Smrg EGL_extension_EGL_KHR_fence_sync, 599e84fe556Smrg EGL_extension_EGL_KHR_reusable_sync, 600e84fe556Smrg egl_provider_terminator 601e84fe556Smrg }; 602e84fe556Smrg static const uint16_t entrypoints[] = { 603e84fe556Smrg 43 /* "eglClientWaitSync" */, 604e84fe556Smrg 61 /* "eglClientWaitSyncKHR" */, 605e84fe556Smrg 61 /* "eglClientWaitSyncKHR" */, 606e84fe556Smrg }; 607e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 43 /* "eglClientWaitSync" */, 608e84fe556Smrg providers, entrypoints); 609e84fe556Smrg} 610e84fe556Smrg 611e84fe556Smrgstatic PFNEGLCLIENTWAITSYNCKHRPROC 612e84fe556Smrgepoxy_eglClientWaitSyncKHR_resolver(void) 613e84fe556Smrg{ 614e84fe556Smrg static const enum egl_provider providers[] = { 615e84fe556Smrg EGL_extension_EGL_KHR_fence_sync, 616e84fe556Smrg EGL_extension_EGL_KHR_reusable_sync, 617e84fe556Smrg EGL_15, 618e84fe556Smrg egl_provider_terminator 619e84fe556Smrg }; 620e84fe556Smrg static const uint16_t entrypoints[] = { 621e84fe556Smrg 61 /* "eglClientWaitSyncKHR" */, 622e84fe556Smrg 61 /* "eglClientWaitSyncKHR" */, 623e84fe556Smrg 43 /* "eglClientWaitSync" */, 624e84fe556Smrg }; 625e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 61 /* "eglClientWaitSyncKHR" */, 626e84fe556Smrg providers, entrypoints); 627e84fe556Smrg} 628e84fe556Smrg 629e84fe556Smrgstatic PFNEGLCLIENTWAITSYNCNVPROC 630e84fe556Smrgepoxy_eglClientWaitSyncNV_resolver(void) 631e84fe556Smrg{ 632e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_sync, 82 /* eglClientWaitSyncNV */); 633e84fe556Smrg} 634e84fe556Smrg 635e84fe556Smrgstatic PFNEGLCOPYBUFFERSPROC 636e84fe556Smrgepoxy_eglCopyBuffers_resolver(void) 637e84fe556Smrg{ 638e84fe556Smrg return egl_single_resolver(EGL_10, 102 /* eglCopyBuffers */); 639e84fe556Smrg} 640e84fe556Smrg 641e84fe556Smrgstatic PFNEGLCREATECONTEXTPROC 642e84fe556Smrgepoxy_eglCreateContext_resolver(void) 643e84fe556Smrg{ 644e84fe556Smrg return egl_single_resolver(EGL_10, 117 /* eglCreateContext */); 645e84fe556Smrg} 646e84fe556Smrg 647e84fe556Smrgstatic PFNEGLCREATEDRMIMAGEMESAPROC 648e84fe556Smrgepoxy_eglCreateDRMImageMESA_resolver(void) 649e84fe556Smrg{ 650e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_MESA_drm_image, 134 /* eglCreateDRMImageMESA */); 651e84fe556Smrg} 652e84fe556Smrg 653e84fe556Smrgstatic PFNEGLCREATEFENCESYNCNVPROC 654e84fe556Smrgepoxy_eglCreateFenceSyncNV_resolver(void) 655e84fe556Smrg{ 656e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_sync, 156 /* eglCreateFenceSyncNV */); 657e84fe556Smrg} 658e84fe556Smrg 659e84fe556Smrgstatic PFNEGLCREATEIMAGEPROC 660e84fe556Smrgepoxy_eglCreateImage_resolver(void) 661e84fe556Smrg{ 662e84fe556Smrg return egl_single_resolver(EGL_15, 177 /* eglCreateImage */); 663e84fe556Smrg} 664e84fe556Smrg 665e84fe556Smrgstatic PFNEGLCREATEIMAGEKHRPROC 666e84fe556Smrgepoxy_eglCreateImageKHR_resolver(void) 667e84fe556Smrg{ 668e84fe556Smrg static const enum egl_provider providers[] = { 669e84fe556Smrg EGL_extension_EGL_KHR_image, 670e84fe556Smrg EGL_extension_EGL_KHR_image_base, 671e84fe556Smrg egl_provider_terminator 672e84fe556Smrg }; 673e84fe556Smrg static const uint16_t entrypoints[] = { 674e84fe556Smrg 192 /* "eglCreateImageKHR" */, 675e84fe556Smrg 192 /* "eglCreateImageKHR" */, 676e84fe556Smrg }; 677e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 192 /* "eglCreateImageKHR" */, 678e84fe556Smrg providers, entrypoints); 679e84fe556Smrg} 680e84fe556Smrg 681e84fe556Smrgstatic PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC 682e84fe556Smrgepoxy_eglCreatePbufferFromClientBuffer_resolver(void) 683e84fe556Smrg{ 684e84fe556Smrg return egl_single_resolver(EGL_12, 210 /* eglCreatePbufferFromClientBuffer */); 685e84fe556Smrg} 686e84fe556Smrg 687e84fe556Smrgstatic PFNEGLCREATEPBUFFERSURFACEPROC 688e84fe556Smrgepoxy_eglCreatePbufferSurface_resolver(void) 689e84fe556Smrg{ 690e84fe556Smrg return egl_single_resolver(EGL_10, 243 /* eglCreatePbufferSurface */); 691e84fe556Smrg} 692e84fe556Smrg 693e84fe556Smrgstatic PFNEGLCREATEPIXMAPSURFACEPROC 694e84fe556Smrgepoxy_eglCreatePixmapSurface_resolver(void) 695e84fe556Smrg{ 696e84fe556Smrg return egl_single_resolver(EGL_10, 267 /* eglCreatePixmapSurface */); 697e84fe556Smrg} 698e84fe556Smrg 699e84fe556Smrgstatic PFNEGLCREATEPIXMAPSURFACEHIPROC 700e84fe556Smrgepoxy_eglCreatePixmapSurfaceHI_resolver(void) 701e84fe556Smrg{ 702e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_HI_clientpixmap, 290 /* eglCreatePixmapSurfaceHI */); 703e84fe556Smrg} 704e84fe556Smrg 705e84fe556Smrgstatic PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC 706e84fe556Smrgepoxy_eglCreatePlatformPixmapSurface_resolver(void) 707e84fe556Smrg{ 708e84fe556Smrg return egl_single_resolver(EGL_15, 315 /* eglCreatePlatformPixmapSurface */); 709e84fe556Smrg} 710e84fe556Smrg 711e84fe556Smrgstatic PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC 712e84fe556Smrgepoxy_eglCreatePlatformPixmapSurfaceEXT_resolver(void) 713e84fe556Smrg{ 714e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_platform_base, 346 /* eglCreatePlatformPixmapSurfaceEXT */); 715e84fe556Smrg} 716e84fe556Smrg 717e84fe556Smrgstatic PFNEGLCREATEPLATFORMWINDOWSURFACEPROC 718e84fe556Smrgepoxy_eglCreatePlatformWindowSurface_resolver(void) 719e84fe556Smrg{ 720e84fe556Smrg return egl_single_resolver(EGL_15, 380 /* eglCreatePlatformWindowSurface */); 721e84fe556Smrg} 722e84fe556Smrg 723e84fe556Smrgstatic PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC 724e84fe556Smrgepoxy_eglCreatePlatformWindowSurfaceEXT_resolver(void) 725e84fe556Smrg{ 726e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_platform_base, 411 /* eglCreatePlatformWindowSurfaceEXT */); 727e84fe556Smrg} 728e84fe556Smrg 729e84fe556Smrgstatic PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC 730e84fe556Smrgepoxy_eglCreateStreamFromFileDescriptorKHR_resolver(void) 731e84fe556Smrg{ 732e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream_cross_process_fd, 445 /* eglCreateStreamFromFileDescriptorKHR */); 733e84fe556Smrg} 734e84fe556Smrg 735e84fe556Smrgstatic PFNEGLCREATESTREAMKHRPROC 736e84fe556Smrgepoxy_eglCreateStreamKHR_resolver(void) 737e84fe556Smrg{ 738e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream, 482 /* eglCreateStreamKHR */); 739e84fe556Smrg} 740e84fe556Smrg 741e84fe556Smrgstatic PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC 742e84fe556Smrgepoxy_eglCreateStreamProducerSurfaceKHR_resolver(void) 743e84fe556Smrg{ 744e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream_producer_eglsurface, 501 /* eglCreateStreamProducerSurfaceKHR */); 745e84fe556Smrg} 746e84fe556Smrg 747e84fe556Smrgstatic PFNEGLCREATESTREAMSYNCNVPROC 748e84fe556Smrgepoxy_eglCreateStreamSyncNV_resolver(void) 749e84fe556Smrg{ 750e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_stream_sync, 535 /* eglCreateStreamSyncNV */); 751e84fe556Smrg} 752e84fe556Smrg 753e84fe556Smrgstatic PFNEGLCREATESYNCPROC 754e84fe556Smrgepoxy_eglCreateSync_resolver(void) 755e84fe556Smrg{ 756e84fe556Smrg static const enum egl_provider providers[] = { 757e84fe556Smrg EGL_15, 758e84fe556Smrg EGL_extension_EGL_KHR_cl_event2, 759e84fe556Smrg egl_provider_terminator 760e84fe556Smrg }; 761e84fe556Smrg static const uint16_t entrypoints[] = { 762e84fe556Smrg 557 /* "eglCreateSync" */, 763e84fe556Smrg 571 /* "eglCreateSync64KHR" */, 764e84fe556Smrg }; 765e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 557 /* "eglCreateSync" */, 766e84fe556Smrg providers, entrypoints); 767e84fe556Smrg} 768e84fe556Smrg 769e84fe556Smrgstatic PFNEGLCREATESYNC64KHRPROC 770e84fe556Smrgepoxy_eglCreateSync64KHR_resolver(void) 771e84fe556Smrg{ 772e84fe556Smrg static const enum egl_provider providers[] = { 773e84fe556Smrg EGL_extension_EGL_KHR_cl_event2, 774e84fe556Smrg EGL_15, 775e84fe556Smrg egl_provider_terminator 776e84fe556Smrg }; 777e84fe556Smrg static const uint16_t entrypoints[] = { 778e84fe556Smrg 571 /* "eglCreateSync64KHR" */, 779e84fe556Smrg 557 /* "eglCreateSync" */, 780e84fe556Smrg }; 781e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 571 /* "eglCreateSync64KHR" */, 782e84fe556Smrg providers, entrypoints); 783e84fe556Smrg} 784e84fe556Smrg 785e84fe556Smrgstatic PFNEGLCREATESYNCKHRPROC 786e84fe556Smrgepoxy_eglCreateSyncKHR_resolver(void) 787e84fe556Smrg{ 788e84fe556Smrg static const enum egl_provider providers[] = { 789e84fe556Smrg EGL_extension_EGL_KHR_fence_sync, 790e84fe556Smrg EGL_extension_EGL_KHR_reusable_sync, 791e84fe556Smrg egl_provider_terminator 792e84fe556Smrg }; 793e84fe556Smrg static const uint16_t entrypoints[] = { 794e84fe556Smrg 590 /* "eglCreateSyncKHR" */, 795e84fe556Smrg 590 /* "eglCreateSyncKHR" */, 796e84fe556Smrg }; 797e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 590 /* "eglCreateSyncKHR" */, 798e84fe556Smrg providers, entrypoints); 799e84fe556Smrg} 800e84fe556Smrg 801e84fe556Smrgstatic PFNEGLCREATEWINDOWSURFACEPROC 802e84fe556Smrgepoxy_eglCreateWindowSurface_resolver(void) 803e84fe556Smrg{ 804e84fe556Smrg return egl_single_resolver(EGL_10, 607 /* eglCreateWindowSurface */); 805e84fe556Smrg} 806e84fe556Smrg 807e84fe556Smrgstatic PFNEGLDESTROYCONTEXTPROC 808e84fe556Smrgepoxy_eglDestroyContext_resolver(void) 809e84fe556Smrg{ 810e84fe556Smrg return egl_single_resolver(EGL_10, 630 /* eglDestroyContext */); 811e84fe556Smrg} 812e84fe556Smrg 813e84fe556Smrgstatic PFNEGLDESTROYIMAGEPROC 814e84fe556Smrgepoxy_eglDestroyImage_resolver(void) 815e84fe556Smrg{ 816e84fe556Smrg static const enum egl_provider providers[] = { 817e84fe556Smrg EGL_15, 818e84fe556Smrg EGL_extension_EGL_KHR_image, 819e84fe556Smrg EGL_extension_EGL_KHR_image_base, 820e84fe556Smrg egl_provider_terminator 821e84fe556Smrg }; 822e84fe556Smrg static const uint16_t entrypoints[] = { 823e84fe556Smrg 648 /* "eglDestroyImage" */, 824e84fe556Smrg 664 /* "eglDestroyImageKHR" */, 825e84fe556Smrg 664 /* "eglDestroyImageKHR" */, 826e84fe556Smrg }; 827e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 648 /* "eglDestroyImage" */, 828e84fe556Smrg providers, entrypoints); 829e84fe556Smrg} 830e84fe556Smrg 831e84fe556Smrgstatic PFNEGLDESTROYIMAGEKHRPROC 832e84fe556Smrgepoxy_eglDestroyImageKHR_resolver(void) 833e84fe556Smrg{ 834e84fe556Smrg static const enum egl_provider providers[] = { 835e84fe556Smrg EGL_extension_EGL_KHR_image, 836e84fe556Smrg EGL_extension_EGL_KHR_image_base, 837e84fe556Smrg EGL_15, 838e84fe556Smrg egl_provider_terminator 839e84fe556Smrg }; 840e84fe556Smrg static const uint16_t entrypoints[] = { 841e84fe556Smrg 664 /* "eglDestroyImageKHR" */, 842e84fe556Smrg 664 /* "eglDestroyImageKHR" */, 843e84fe556Smrg 648 /* "eglDestroyImage" */, 844e84fe556Smrg }; 845e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 664 /* "eglDestroyImageKHR" */, 846e84fe556Smrg providers, entrypoints); 847e84fe556Smrg} 848e84fe556Smrg 849e84fe556Smrgstatic PFNEGLDESTROYSTREAMKHRPROC 850e84fe556Smrgepoxy_eglDestroyStreamKHR_resolver(void) 851e84fe556Smrg{ 852e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream, 683 /* eglDestroyStreamKHR */); 853e84fe556Smrg} 854e84fe556Smrg 855e84fe556Smrgstatic PFNEGLDESTROYSURFACEPROC 856e84fe556Smrgepoxy_eglDestroySurface_resolver(void) 857e84fe556Smrg{ 858e84fe556Smrg return egl_single_resolver(EGL_10, 703 /* eglDestroySurface */); 859e84fe556Smrg} 860e84fe556Smrg 861e84fe556Smrgstatic PFNEGLDESTROYSYNCPROC 862e84fe556Smrgepoxy_eglDestroySync_resolver(void) 863e84fe556Smrg{ 864e84fe556Smrg static const enum egl_provider providers[] = { 865e84fe556Smrg EGL_15, 866e84fe556Smrg EGL_extension_EGL_KHR_fence_sync, 867e84fe556Smrg EGL_extension_EGL_KHR_reusable_sync, 868e84fe556Smrg egl_provider_terminator 869e84fe556Smrg }; 870e84fe556Smrg static const uint16_t entrypoints[] = { 871e84fe556Smrg 721 /* "eglDestroySync" */, 872e84fe556Smrg 736 /* "eglDestroySyncKHR" */, 873e84fe556Smrg 736 /* "eglDestroySyncKHR" */, 874e84fe556Smrg }; 875e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 721 /* "eglDestroySync" */, 876e84fe556Smrg providers, entrypoints); 877e84fe556Smrg} 878e84fe556Smrg 879e84fe556Smrgstatic PFNEGLDESTROYSYNCKHRPROC 880e84fe556Smrgepoxy_eglDestroySyncKHR_resolver(void) 881e84fe556Smrg{ 882e84fe556Smrg static const enum egl_provider providers[] = { 883e84fe556Smrg EGL_extension_EGL_KHR_fence_sync, 884e84fe556Smrg EGL_extension_EGL_KHR_reusable_sync, 885e84fe556Smrg EGL_15, 886e84fe556Smrg egl_provider_terminator 887e84fe556Smrg }; 888e84fe556Smrg static const uint16_t entrypoints[] = { 889e84fe556Smrg 736 /* "eglDestroySyncKHR" */, 890e84fe556Smrg 736 /* "eglDestroySyncKHR" */, 891e84fe556Smrg 721 /* "eglDestroySync" */, 892e84fe556Smrg }; 893e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 736 /* "eglDestroySyncKHR" */, 894e84fe556Smrg providers, entrypoints); 895e84fe556Smrg} 896e84fe556Smrg 897e84fe556Smrgstatic PFNEGLDESTROYSYNCNVPROC 898e84fe556Smrgepoxy_eglDestroySyncNV_resolver(void) 899e84fe556Smrg{ 900e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_sync, 754 /* eglDestroySyncNV */); 901e84fe556Smrg} 902e84fe556Smrg 903e84fe556Smrgstatic PFNEGLDUPNATIVEFENCEFDANDROIDPROC 904e84fe556Smrgepoxy_eglDupNativeFenceFDANDROID_resolver(void) 905e84fe556Smrg{ 906e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_ANDROID_native_fence_sync, 771 /* eglDupNativeFenceFDANDROID */); 907e84fe556Smrg} 908e84fe556Smrg 909e84fe556Smrgstatic PFNEGLEXPORTDMABUFIMAGEMESAPROC 910e84fe556Smrgepoxy_eglExportDMABUFImageMESA_resolver(void) 911e84fe556Smrg{ 912e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_MESA_image_dma_buf_export, 798 /* eglExportDMABUFImageMESA */); 913e84fe556Smrg} 914e84fe556Smrg 915e84fe556Smrgstatic PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC 916e84fe556Smrgepoxy_eglExportDMABUFImageQueryMESA_resolver(void) 917e84fe556Smrg{ 918e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_MESA_image_dma_buf_export, 823 /* eglExportDMABUFImageQueryMESA */); 919e84fe556Smrg} 920e84fe556Smrg 921e84fe556Smrgstatic PFNEGLEXPORTDRMIMAGEMESAPROC 922e84fe556Smrgepoxy_eglExportDRMImageMESA_resolver(void) 923e84fe556Smrg{ 924e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_MESA_drm_image, 853 /* eglExportDRMImageMESA */); 925e84fe556Smrg} 926e84fe556Smrg 927e84fe556Smrgstatic PFNEGLFENCENVPROC 928e84fe556Smrgepoxy_eglFenceNV_resolver(void) 929e84fe556Smrg{ 930e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_sync, 875 /* eglFenceNV */); 931e84fe556Smrg} 932e84fe556Smrg 933e84fe556Smrgstatic PFNEGLGETCONFIGATTRIBPROC 934e84fe556Smrgepoxy_eglGetConfigAttrib_resolver(void) 935e84fe556Smrg{ 936e84fe556Smrg return egl_single_resolver(EGL_10, 886 /* eglGetConfigAttrib */); 937e84fe556Smrg} 938e84fe556Smrg 939e84fe556Smrgstatic PFNEGLGETCONFIGSPROC 940e84fe556Smrgepoxy_eglGetConfigs_resolver(void) 941e84fe556Smrg{ 942e84fe556Smrg return egl_single_resolver(EGL_10, 905 /* eglGetConfigs */); 943e84fe556Smrg} 944e84fe556Smrg 945e84fe556Smrgstatic PFNEGLGETCURRENTCONTEXTPROC 946e84fe556Smrgepoxy_eglGetCurrentContext_resolver(void) 947e84fe556Smrg{ 948e84fe556Smrg return egl_single_resolver(EGL_14, 919 /* eglGetCurrentContext */); 949e84fe556Smrg} 950e84fe556Smrg 951e84fe556Smrgstatic PFNEGLGETCURRENTDISPLAYPROC 952e84fe556Smrgepoxy_eglGetCurrentDisplay_resolver(void) 953e84fe556Smrg{ 954e84fe556Smrg return egl_single_resolver(EGL_10, 940 /* eglGetCurrentDisplay */); 955e84fe556Smrg} 956e84fe556Smrg 957e84fe556Smrgstatic PFNEGLGETCURRENTSURFACEPROC 958e84fe556Smrgepoxy_eglGetCurrentSurface_resolver(void) 959e84fe556Smrg{ 960e84fe556Smrg return egl_single_resolver(EGL_10, 961 /* eglGetCurrentSurface */); 961e84fe556Smrg} 962e84fe556Smrg 963e84fe556Smrgstatic PFNEGLGETDISPLAYPROC 964e84fe556Smrgepoxy_eglGetDisplay_resolver(void) 965e84fe556Smrg{ 966e84fe556Smrg return egl_single_resolver(EGL_10, 982 /* eglGetDisplay */); 967e84fe556Smrg} 968e84fe556Smrg 969e84fe556Smrgstatic PFNEGLGETERRORPROC 970e84fe556Smrgepoxy_eglGetError_resolver(void) 971e84fe556Smrg{ 972e84fe556Smrg return egl_single_resolver(EGL_10, 996 /* eglGetError */); 973e84fe556Smrg} 974e84fe556Smrg 975e84fe556Smrgstatic PFNEGLGETOUTPUTLAYERSEXTPROC 976e84fe556Smrgepoxy_eglGetOutputLayersEXT_resolver(void) 977e84fe556Smrg{ 978e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_output_base, 1008 /* eglGetOutputLayersEXT */); 979e84fe556Smrg} 980e84fe556Smrg 981e84fe556Smrgstatic PFNEGLGETOUTPUTPORTSEXTPROC 982e84fe556Smrgepoxy_eglGetOutputPortsEXT_resolver(void) 983e84fe556Smrg{ 984e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_output_base, 1030 /* eglGetOutputPortsEXT */); 985e84fe556Smrg} 986e84fe556Smrg 987e84fe556Smrgstatic PFNEGLGETPLATFORMDISPLAYPROC 988e84fe556Smrgepoxy_eglGetPlatformDisplay_resolver(void) 989e84fe556Smrg{ 990e84fe556Smrg return egl_single_resolver(EGL_15, 1051 /* eglGetPlatformDisplay */); 991e84fe556Smrg} 992e84fe556Smrg 993e84fe556Smrgstatic PFNEGLGETPLATFORMDISPLAYEXTPROC 994e84fe556Smrgepoxy_eglGetPlatformDisplayEXT_resolver(void) 995e84fe556Smrg{ 996e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_platform_base, 1073 /* eglGetPlatformDisplayEXT */); 997e84fe556Smrg} 998e84fe556Smrg 999e84fe556Smrgstatic PFNEGLGETPROCADDRESSPROC 1000e84fe556Smrgepoxy_eglGetProcAddress_resolver(void) 1001e84fe556Smrg{ 1002e84fe556Smrg return egl_single_resolver(EGL_10, 1098 /* eglGetProcAddress */); 1003e84fe556Smrg} 1004e84fe556Smrg 1005e84fe556Smrgstatic PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC 1006e84fe556Smrgepoxy_eglGetStreamFileDescriptorKHR_resolver(void) 1007e84fe556Smrg{ 1008e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream_cross_process_fd, 1116 /* eglGetStreamFileDescriptorKHR */); 1009e84fe556Smrg} 1010e84fe556Smrg 1011e84fe556Smrgstatic PFNEGLGETSYNCATTRIBPROC 1012e84fe556Smrgepoxy_eglGetSyncAttrib_resolver(void) 1013e84fe556Smrg{ 1014e84fe556Smrg return egl_single_resolver(EGL_15, 1146 /* eglGetSyncAttrib */); 1015e84fe556Smrg} 1016e84fe556Smrg 1017e84fe556Smrgstatic PFNEGLGETSYNCATTRIBKHRPROC 1018e84fe556Smrgepoxy_eglGetSyncAttribKHR_resolver(void) 1019e84fe556Smrg{ 1020e84fe556Smrg static const enum egl_provider providers[] = { 1021e84fe556Smrg EGL_extension_EGL_KHR_fence_sync, 1022e84fe556Smrg EGL_extension_EGL_KHR_reusable_sync, 1023e84fe556Smrg egl_provider_terminator 1024e84fe556Smrg }; 1025e84fe556Smrg static const uint16_t entrypoints[] = { 1026e84fe556Smrg 1163 /* "eglGetSyncAttribKHR" */, 1027e84fe556Smrg 1163 /* "eglGetSyncAttribKHR" */, 1028e84fe556Smrg }; 1029e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 1163 /* "eglGetSyncAttribKHR" */, 1030e84fe556Smrg providers, entrypoints); 1031e84fe556Smrg} 1032e84fe556Smrg 1033e84fe556Smrgstatic PFNEGLGETSYNCATTRIBNVPROC 1034e84fe556Smrgepoxy_eglGetSyncAttribNV_resolver(void) 1035e84fe556Smrg{ 1036e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_sync, 1183 /* eglGetSyncAttribNV */); 1037e84fe556Smrg} 1038e84fe556Smrg 1039e84fe556Smrgstatic PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC 1040e84fe556Smrgepoxy_eglGetSystemTimeFrequencyNV_resolver(void) 1041e84fe556Smrg{ 1042e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_system_time, 1202 /* eglGetSystemTimeFrequencyNV */); 1043e84fe556Smrg} 1044e84fe556Smrg 1045e84fe556Smrgstatic PFNEGLGETSYSTEMTIMENVPROC 1046e84fe556Smrgepoxy_eglGetSystemTimeNV_resolver(void) 1047e84fe556Smrg{ 1048e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_system_time, 1230 /* eglGetSystemTimeNV */); 1049e84fe556Smrg} 1050e84fe556Smrg 1051e84fe556Smrgstatic PFNEGLINITIALIZEPROC 1052e84fe556Smrgepoxy_eglInitialize_resolver(void) 1053e84fe556Smrg{ 1054e84fe556Smrg return egl_single_resolver(EGL_10, 1249 /* eglInitialize */); 1055e84fe556Smrg} 1056e84fe556Smrg 1057e84fe556Smrgstatic PFNEGLLOCKSURFACEKHRPROC 1058e84fe556Smrgepoxy_eglLockSurfaceKHR_resolver(void) 1059e84fe556Smrg{ 1060e84fe556Smrg static const enum egl_provider providers[] = { 1061e84fe556Smrg EGL_extension_EGL_KHR_lock_surface, 1062e84fe556Smrg EGL_extension_EGL_KHR_lock_surface3, 1063e84fe556Smrg egl_provider_terminator 1064e84fe556Smrg }; 1065e84fe556Smrg static const uint16_t entrypoints[] = { 1066e84fe556Smrg 1263 /* "eglLockSurfaceKHR" */, 1067e84fe556Smrg 1263 /* "eglLockSurfaceKHR" */, 1068e84fe556Smrg }; 1069e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 1263 /* "eglLockSurfaceKHR" */, 1070e84fe556Smrg providers, entrypoints); 1071e84fe556Smrg} 1072e84fe556Smrg 1073e84fe556Smrgstatic PFNEGLMAKECURRENTPROC 1074e84fe556Smrgepoxy_eglMakeCurrent_resolver(void) 1075e84fe556Smrg{ 1076e84fe556Smrg return egl_single_resolver(EGL_10, 1281 /* eglMakeCurrent */); 1077e84fe556Smrg} 1078e84fe556Smrg 1079e84fe556Smrgstatic PFNEGLOUTPUTLAYERATTRIBEXTPROC 1080e84fe556Smrgepoxy_eglOutputLayerAttribEXT_resolver(void) 1081e84fe556Smrg{ 1082e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_output_base, 1296 /* eglOutputLayerAttribEXT */); 1083e84fe556Smrg} 1084e84fe556Smrg 1085e84fe556Smrgstatic PFNEGLOUTPUTPORTATTRIBEXTPROC 1086e84fe556Smrgepoxy_eglOutputPortAttribEXT_resolver(void) 1087e84fe556Smrg{ 1088e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_output_base, 1320 /* eglOutputPortAttribEXT */); 1089e84fe556Smrg} 1090e84fe556Smrg 1091e84fe556Smrgstatic PFNEGLPOSTSUBBUFFERNVPROC 1092e84fe556Smrgepoxy_eglPostSubBufferNV_resolver(void) 1093e84fe556Smrg{ 1094e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_post_sub_buffer, 1343 /* eglPostSubBufferNV */); 1095e84fe556Smrg} 1096e84fe556Smrg 1097e84fe556Smrgstatic PFNEGLQUERYAPIPROC 1098e84fe556Smrgepoxy_eglQueryAPI_resolver(void) 1099e84fe556Smrg{ 1100e84fe556Smrg return egl_single_resolver(EGL_12, 1362 /* eglQueryAPI */); 1101e84fe556Smrg} 1102e84fe556Smrg 1103e84fe556Smrgstatic PFNEGLQUERYCONTEXTPROC 1104e84fe556Smrgepoxy_eglQueryContext_resolver(void) 1105e84fe556Smrg{ 1106e84fe556Smrg return egl_single_resolver(EGL_10, 1374 /* eglQueryContext */); 1107e84fe556Smrg} 1108e84fe556Smrg 1109e84fe556Smrgstatic PFNEGLQUERYDEVICEATTRIBEXTPROC 1110e84fe556Smrgepoxy_eglQueryDeviceAttribEXT_resolver(void) 1111e84fe556Smrg{ 1112e84fe556Smrg static const enum egl_provider providers[] = { 1113e84fe556Smrg EGL_extension_EGL_EXT_device_base, 1114e84fe556Smrg EGL_extension_EGL_EXT_device_query, 1115e84fe556Smrg egl_provider_terminator 1116e84fe556Smrg }; 1117e84fe556Smrg static const uint16_t entrypoints[] = { 1118e84fe556Smrg 1390 /* "eglQueryDeviceAttribEXT" */, 1119e84fe556Smrg 1390 /* "eglQueryDeviceAttribEXT" */, 1120e84fe556Smrg }; 1121e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 1390 /* "eglQueryDeviceAttribEXT" */, 1122e84fe556Smrg providers, entrypoints); 1123e84fe556Smrg} 1124e84fe556Smrg 1125e84fe556Smrgstatic PFNEGLQUERYDEVICESTRINGEXTPROC 1126e84fe556Smrgepoxy_eglQueryDeviceStringEXT_resolver(void) 1127e84fe556Smrg{ 1128e84fe556Smrg static const enum egl_provider providers[] = { 1129e84fe556Smrg EGL_extension_EGL_EXT_device_base, 1130e84fe556Smrg EGL_extension_EGL_EXT_device_query, 1131e84fe556Smrg egl_provider_terminator 1132e84fe556Smrg }; 1133e84fe556Smrg static const uint16_t entrypoints[] = { 1134e84fe556Smrg 1414 /* "eglQueryDeviceStringEXT" */, 1135e84fe556Smrg 1414 /* "eglQueryDeviceStringEXT" */, 1136e84fe556Smrg }; 1137e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 1414 /* "eglQueryDeviceStringEXT" */, 1138e84fe556Smrg providers, entrypoints); 1139e84fe556Smrg} 1140e84fe556Smrg 1141e84fe556Smrgstatic PFNEGLQUERYDEVICESEXTPROC 1142e84fe556Smrgepoxy_eglQueryDevicesEXT_resolver(void) 1143e84fe556Smrg{ 1144e84fe556Smrg static const enum egl_provider providers[] = { 1145e84fe556Smrg EGL_extension_EGL_EXT_device_base, 1146e84fe556Smrg EGL_extension_EGL_EXT_device_enumeration, 1147e84fe556Smrg egl_provider_terminator 1148e84fe556Smrg }; 1149e84fe556Smrg static const uint16_t entrypoints[] = { 1150e84fe556Smrg 1438 /* "eglQueryDevicesEXT" */, 1151e84fe556Smrg 1438 /* "eglQueryDevicesEXT" */, 1152e84fe556Smrg }; 1153e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 1438 /* "eglQueryDevicesEXT" */, 1154e84fe556Smrg providers, entrypoints); 1155e84fe556Smrg} 1156e84fe556Smrg 1157e84fe556Smrgstatic PFNEGLQUERYDISPLAYATTRIBEXTPROC 1158e84fe556Smrgepoxy_eglQueryDisplayAttribEXT_resolver(void) 1159e84fe556Smrg{ 1160e84fe556Smrg static const enum egl_provider providers[] = { 1161e84fe556Smrg EGL_extension_EGL_EXT_device_base, 1162e84fe556Smrg EGL_extension_EGL_EXT_device_query, 1163e84fe556Smrg egl_provider_terminator 1164e84fe556Smrg }; 1165e84fe556Smrg static const uint16_t entrypoints[] = { 1166e84fe556Smrg 1457 /* "eglQueryDisplayAttribEXT" */, 1167e84fe556Smrg 1457 /* "eglQueryDisplayAttribEXT" */, 1168e84fe556Smrg }; 1169e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 1457 /* "eglQueryDisplayAttribEXT" */, 1170e84fe556Smrg providers, entrypoints); 1171e84fe556Smrg} 1172e84fe556Smrg 1173e84fe556Smrgstatic PFNEGLQUERYNATIVEDISPLAYNVPROC 1174e84fe556Smrgepoxy_eglQueryNativeDisplayNV_resolver(void) 1175e84fe556Smrg{ 1176e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_native_query, 1482 /* eglQueryNativeDisplayNV */); 1177e84fe556Smrg} 1178e84fe556Smrg 1179e84fe556Smrgstatic PFNEGLQUERYNATIVEPIXMAPNVPROC 1180e84fe556Smrgepoxy_eglQueryNativePixmapNV_resolver(void) 1181e84fe556Smrg{ 1182e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_native_query, 1506 /* eglQueryNativePixmapNV */); 1183e84fe556Smrg} 1184e84fe556Smrg 1185e84fe556Smrgstatic PFNEGLQUERYNATIVEWINDOWNVPROC 1186e84fe556Smrgepoxy_eglQueryNativeWindowNV_resolver(void) 1187e84fe556Smrg{ 1188e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_native_query, 1529 /* eglQueryNativeWindowNV */); 1189e84fe556Smrg} 1190e84fe556Smrg 1191e84fe556Smrgstatic PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC 1192e84fe556Smrgepoxy_eglQueryOutputLayerAttribEXT_resolver(void) 1193e84fe556Smrg{ 1194e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_output_base, 1552 /* eglQueryOutputLayerAttribEXT */); 1195e84fe556Smrg} 1196e84fe556Smrg 1197e84fe556Smrgstatic PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC 1198e84fe556Smrgepoxy_eglQueryOutputLayerStringEXT_resolver(void) 1199e84fe556Smrg{ 1200e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_output_base, 1581 /* eglQueryOutputLayerStringEXT */); 1201e84fe556Smrg} 1202e84fe556Smrg 1203e84fe556Smrgstatic PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC 1204e84fe556Smrgepoxy_eglQueryOutputPortAttribEXT_resolver(void) 1205e84fe556Smrg{ 1206e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_output_base, 1610 /* eglQueryOutputPortAttribEXT */); 1207e84fe556Smrg} 1208e84fe556Smrg 1209e84fe556Smrgstatic PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC 1210e84fe556Smrgepoxy_eglQueryOutputPortStringEXT_resolver(void) 1211e84fe556Smrg{ 1212e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_output_base, 1638 /* eglQueryOutputPortStringEXT */); 1213e84fe556Smrg} 1214e84fe556Smrg 1215e84fe556Smrgstatic PFNEGLQUERYSTREAMKHRPROC 1216e84fe556Smrgepoxy_eglQueryStreamKHR_resolver(void) 1217e84fe556Smrg{ 1218e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream, 1666 /* eglQueryStreamKHR */); 1219e84fe556Smrg} 1220e84fe556Smrg 1221e84fe556Smrgstatic PFNEGLQUERYSTREAMTIMEKHRPROC 1222e84fe556Smrgepoxy_eglQueryStreamTimeKHR_resolver(void) 1223e84fe556Smrg{ 1224e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream_fifo, 1684 /* eglQueryStreamTimeKHR */); 1225e84fe556Smrg} 1226e84fe556Smrg 1227e84fe556Smrgstatic PFNEGLQUERYSTREAMU64KHRPROC 1228e84fe556Smrgepoxy_eglQueryStreamu64KHR_resolver(void) 1229e84fe556Smrg{ 1230e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream, 1706 /* eglQueryStreamu64KHR */); 1231e84fe556Smrg} 1232e84fe556Smrg 1233e84fe556Smrgstatic PFNEGLQUERYSTRINGPROC 1234e84fe556Smrgepoxy_eglQueryString_resolver(void) 1235e84fe556Smrg{ 1236e84fe556Smrg return egl_single_resolver(EGL_10, 1727 /* eglQueryString */); 1237e84fe556Smrg} 1238e84fe556Smrg 1239e84fe556Smrgstatic PFNEGLQUERYSURFACEPROC 1240e84fe556Smrgepoxy_eglQuerySurface_resolver(void) 1241e84fe556Smrg{ 1242e84fe556Smrg return egl_single_resolver(EGL_10, 1742 /* eglQuerySurface */); 1243e84fe556Smrg} 1244e84fe556Smrg 1245e84fe556Smrgstatic PFNEGLQUERYSURFACE64KHRPROC 1246e84fe556Smrgepoxy_eglQuerySurface64KHR_resolver(void) 1247e84fe556Smrg{ 1248e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_lock_surface3, 1758 /* eglQuerySurface64KHR */); 1249e84fe556Smrg} 1250e84fe556Smrg 1251e84fe556Smrgstatic PFNEGLQUERYSURFACEPOINTERANGLEPROC 1252e84fe556Smrgepoxy_eglQuerySurfacePointerANGLE_resolver(void) 1253e84fe556Smrg{ 1254e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_ANGLE_query_surface_pointer, 1779 /* eglQuerySurfacePointerANGLE */); 1255e84fe556Smrg} 1256e84fe556Smrg 1257e84fe556Smrgstatic PFNEGLRELEASETEXIMAGEPROC 1258e84fe556Smrgepoxy_eglReleaseTexImage_resolver(void) 1259e84fe556Smrg{ 1260e84fe556Smrg return egl_single_resolver(EGL_11, 1807 /* eglReleaseTexImage */); 1261e84fe556Smrg} 1262e84fe556Smrg 1263e84fe556Smrgstatic PFNEGLRELEASETHREADPROC 1264e84fe556Smrgepoxy_eglReleaseThread_resolver(void) 1265e84fe556Smrg{ 1266e84fe556Smrg return egl_single_resolver(EGL_12, 1826 /* eglReleaseThread */); 1267e84fe556Smrg} 1268e84fe556Smrg 1269e84fe556Smrgstatic PFNEGLSETBLOBCACHEFUNCSANDROIDPROC 1270e84fe556Smrgepoxy_eglSetBlobCacheFuncsANDROID_resolver(void) 1271e84fe556Smrg{ 1272e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_ANDROID_blob_cache, 1843 /* eglSetBlobCacheFuncsANDROID */); 1273e84fe556Smrg} 1274e84fe556Smrg 1275e84fe556Smrgstatic PFNEGLSETDAMAGEREGIONKHRPROC 1276e84fe556Smrgepoxy_eglSetDamageRegionKHR_resolver(void) 1277e84fe556Smrg{ 1278e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_partial_update, 1871 /* eglSetDamageRegionKHR */); 1279e84fe556Smrg} 1280e84fe556Smrg 1281e84fe556Smrgstatic PFNEGLSIGNALSYNCKHRPROC 1282e84fe556Smrgepoxy_eglSignalSyncKHR_resolver(void) 1283e84fe556Smrg{ 1284e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_reusable_sync, 1893 /* eglSignalSyncKHR */); 1285e84fe556Smrg} 1286e84fe556Smrg 1287e84fe556Smrgstatic PFNEGLSIGNALSYNCNVPROC 1288e84fe556Smrgepoxy_eglSignalSyncNV_resolver(void) 1289e84fe556Smrg{ 1290e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NV_sync, 1910 /* eglSignalSyncNV */); 1291e84fe556Smrg} 1292e84fe556Smrg 1293e84fe556Smrgstatic PFNEGLSTREAMATTRIBKHRPROC 1294e84fe556Smrgepoxy_eglStreamAttribKHR_resolver(void) 1295e84fe556Smrg{ 1296e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream, 1926 /* eglStreamAttribKHR */); 1297e84fe556Smrg} 1298e84fe556Smrg 1299e84fe556Smrgstatic PFNEGLSTREAMCONSUMERACQUIREKHRPROC 1300e84fe556Smrgepoxy_eglStreamConsumerAcquireKHR_resolver(void) 1301e84fe556Smrg{ 1302e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream_consumer_gltexture, 1945 /* eglStreamConsumerAcquireKHR */); 1303e84fe556Smrg} 1304e84fe556Smrg 1305e84fe556Smrgstatic PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC 1306e84fe556Smrgepoxy_eglStreamConsumerGLTextureExternalKHR_resolver(void) 1307e84fe556Smrg{ 1308e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream_consumer_gltexture, 1973 /* eglStreamConsumerGLTextureExternalKHR */); 1309e84fe556Smrg} 1310e84fe556Smrg 1311e84fe556Smrgstatic PFNEGLSTREAMCONSUMEROUTPUTEXTPROC 1312e84fe556Smrgepoxy_eglStreamConsumerOutputEXT_resolver(void) 1313e84fe556Smrg{ 1314e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_stream_consumer_egloutput, 2011 /* eglStreamConsumerOutputEXT */); 1315e84fe556Smrg} 1316e84fe556Smrg 1317e84fe556Smrgstatic PFNEGLSTREAMCONSUMERRELEASEKHRPROC 1318e84fe556Smrgepoxy_eglStreamConsumerReleaseKHR_resolver(void) 1319e84fe556Smrg{ 1320e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_stream_consumer_gltexture, 2038 /* eglStreamConsumerReleaseKHR */); 1321e84fe556Smrg} 1322e84fe556Smrg 1323e84fe556Smrgstatic PFNEGLSURFACEATTRIBPROC 1324e84fe556Smrgepoxy_eglSurfaceAttrib_resolver(void) 1325e84fe556Smrg{ 1326e84fe556Smrg return egl_single_resolver(EGL_11, 2066 /* eglSurfaceAttrib */); 1327e84fe556Smrg} 1328e84fe556Smrg 1329e84fe556Smrgstatic PFNEGLSWAPBUFFERSPROC 1330e84fe556Smrgepoxy_eglSwapBuffers_resolver(void) 1331e84fe556Smrg{ 1332e84fe556Smrg return egl_single_resolver(EGL_10, 2083 /* eglSwapBuffers */); 1333e84fe556Smrg} 1334e84fe556Smrg 1335e84fe556Smrgstatic PFNEGLSWAPBUFFERSREGION2NOKPROC 1336e84fe556Smrgepoxy_eglSwapBuffersRegion2NOK_resolver(void) 1337e84fe556Smrg{ 1338e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NOK_swap_region2, 2098 /* eglSwapBuffersRegion2NOK */); 1339e84fe556Smrg} 1340e84fe556Smrg 1341e84fe556Smrgstatic PFNEGLSWAPBUFFERSREGIONNOKPROC 1342e84fe556Smrgepoxy_eglSwapBuffersRegionNOK_resolver(void) 1343e84fe556Smrg{ 1344e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_NOK_swap_region, 2123 /* eglSwapBuffersRegionNOK */); 1345e84fe556Smrg} 1346e84fe556Smrg 1347e84fe556Smrgstatic PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC 1348e84fe556Smrgepoxy_eglSwapBuffersWithDamageEXT_resolver(void) 1349e84fe556Smrg{ 1350e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_EXT_swap_buffers_with_damage, 2147 /* eglSwapBuffersWithDamageEXT */); 1351e84fe556Smrg} 1352e84fe556Smrg 1353e84fe556Smrgstatic PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC 1354e84fe556Smrgepoxy_eglSwapBuffersWithDamageKHR_resolver(void) 1355e84fe556Smrg{ 1356e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_swap_buffers_with_damage, 2175 /* eglSwapBuffersWithDamageKHR */); 1357e84fe556Smrg} 1358e84fe556Smrg 1359e84fe556Smrgstatic PFNEGLSWAPINTERVALPROC 1360e84fe556Smrgepoxy_eglSwapInterval_resolver(void) 1361e84fe556Smrg{ 1362e84fe556Smrg return egl_single_resolver(EGL_11, 2203 /* eglSwapInterval */); 1363e84fe556Smrg} 1364e84fe556Smrg 1365e84fe556Smrgstatic PFNEGLTERMINATEPROC 1366e84fe556Smrgepoxy_eglTerminate_resolver(void) 1367e84fe556Smrg{ 1368e84fe556Smrg return egl_single_resolver(EGL_10, 2219 /* eglTerminate */); 1369e84fe556Smrg} 1370e84fe556Smrg 1371e84fe556Smrgstatic PFNEGLUNLOCKSURFACEKHRPROC 1372e84fe556Smrgepoxy_eglUnlockSurfaceKHR_resolver(void) 1373e84fe556Smrg{ 1374e84fe556Smrg static const enum egl_provider providers[] = { 1375e84fe556Smrg EGL_extension_EGL_KHR_lock_surface, 1376e84fe556Smrg EGL_extension_EGL_KHR_lock_surface3, 1377e84fe556Smrg egl_provider_terminator 1378e84fe556Smrg }; 1379e84fe556Smrg static const uint16_t entrypoints[] = { 1380e84fe556Smrg 2232 /* "eglUnlockSurfaceKHR" */, 1381e84fe556Smrg 2232 /* "eglUnlockSurfaceKHR" */, 1382e84fe556Smrg }; 1383e84fe556Smrg return egl_provider_resolver(entrypoint_strings + 2232 /* "eglUnlockSurfaceKHR" */, 1384e84fe556Smrg providers, entrypoints); 1385e84fe556Smrg} 1386e84fe556Smrg 1387e84fe556Smrgstatic PFNEGLWAITCLIENTPROC 1388e84fe556Smrgepoxy_eglWaitClient_resolver(void) 1389e84fe556Smrg{ 1390e84fe556Smrg return egl_single_resolver(EGL_12, 2252 /* eglWaitClient */); 1391e84fe556Smrg} 1392e84fe556Smrg 1393e84fe556Smrgstatic PFNEGLWAITGLPROC 1394e84fe556Smrgepoxy_eglWaitGL_resolver(void) 1395e84fe556Smrg{ 1396e84fe556Smrg return egl_single_resolver(EGL_10, 2266 /* eglWaitGL */); 1397e84fe556Smrg} 1398e84fe556Smrg 1399e84fe556Smrgstatic PFNEGLWAITNATIVEPROC 1400e84fe556Smrgepoxy_eglWaitNative_resolver(void) 1401e84fe556Smrg{ 1402e84fe556Smrg return egl_single_resolver(EGL_10, 2276 /* eglWaitNative */); 1403e84fe556Smrg} 1404e84fe556Smrg 1405e84fe556Smrgstatic PFNEGLWAITSYNCPROC 1406e84fe556Smrgepoxy_eglWaitSync_resolver(void) 1407e84fe556Smrg{ 1408e84fe556Smrg return egl_single_resolver(EGL_15, 2290 /* eglWaitSync */); 1409e84fe556Smrg} 1410e84fe556Smrg 1411e84fe556Smrgstatic PFNEGLWAITSYNCKHRPROC 1412e84fe556Smrgepoxy_eglWaitSyncKHR_resolver(void) 1413e84fe556Smrg{ 1414e84fe556Smrg return egl_single_resolver(EGL_extension_EGL_KHR_wait_sync, 2302 /* eglWaitSyncKHR */); 1415e84fe556Smrg} 1416e84fe556Smrg 1417e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglBindAPI, (EGLenum api), (api)) 1418e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglBindTexImage, (EGLDisplay dpy, EGLSurface surface, EGLint buffer), (dpy, surface, buffer)) 1419e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglChooseConfig, (EGLDisplay dpy, const EGLint * attrib_list, EGLConfig * configs, EGLint config_size, EGLint * num_config), (dpy, attrib_list, configs, config_size, num_config)) 1420e84fe556SmrgGEN_THUNKS_RET(EGLint, eglClientWaitSync, (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout), (dpy, sync, flags, timeout)) 1421e84fe556SmrgGEN_THUNKS_RET(EGLint, eglClientWaitSyncKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout), (dpy, sync, flags, timeout)) 1422e84fe556SmrgGEN_THUNKS_RET(EGLint, eglClientWaitSyncNV, (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout), (sync, flags, timeout)) 1423e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglCopyBuffers, (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target), (dpy, surface, target)) 1424e84fe556SmrgGEN_THUNKS_RET(EGLContext, eglCreateContext, (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint * attrib_list), (dpy, config, share_context, attrib_list)) 1425e84fe556SmrgGEN_THUNKS_RET(EGLImageKHR, eglCreateDRMImageMESA, (EGLDisplay dpy, const EGLint * attrib_list), (dpy, attrib_list)) 1426e84fe556SmrgGEN_THUNKS_RET(EGLSyncNV, eglCreateFenceSyncNV, (EGLDisplay dpy, EGLenum condition, const EGLint * attrib_list), (dpy, condition, attrib_list)) 1427e84fe556SmrgGEN_THUNKS_RET(EGLImage, eglCreateImage, (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib * attrib_list), (dpy, ctx, target, buffer, attrib_list)) 1428e84fe556SmrgGEN_THUNKS_RET(EGLImageKHR, eglCreateImageKHR, (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint * attrib_list), (dpy, ctx, target, buffer, attrib_list)) 1429e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreatePbufferFromClientBuffer, (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint * attrib_list), (dpy, buftype, buffer, config, attrib_list)) 1430e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreatePbufferSurface, (EGLDisplay dpy, EGLConfig config, const EGLint * attrib_list), (dpy, config, attrib_list)) 1431e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreatePixmapSurface, (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint * attrib_list), (dpy, config, pixmap, attrib_list)) 1432e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreatePixmapSurfaceHI, (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI * pixmap), (dpy, config, pixmap)) 1433e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreatePlatformPixmapSurface, (EGLDisplay dpy, EGLConfig config, void * native_pixmap, const EGLAttrib * attrib_list), (dpy, config, native_pixmap, attrib_list)) 1434e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreatePlatformPixmapSurfaceEXT, (EGLDisplay dpy, EGLConfig config, void * native_pixmap, const EGLint * attrib_list), (dpy, config, native_pixmap, attrib_list)) 1435e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreatePlatformWindowSurface, (EGLDisplay dpy, EGLConfig config, void * native_window, const EGLAttrib * attrib_list), (dpy, config, native_window, attrib_list)) 1436e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreatePlatformWindowSurfaceEXT, (EGLDisplay dpy, EGLConfig config, void * native_window, const EGLint * attrib_list), (dpy, config, native_window, attrib_list)) 1437e84fe556SmrgGEN_THUNKS_RET(EGLStreamKHR, eglCreateStreamFromFileDescriptorKHR, (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor), (dpy, file_descriptor)) 1438e84fe556SmrgGEN_THUNKS_RET(EGLStreamKHR, eglCreateStreamKHR, (EGLDisplay dpy, const EGLint * attrib_list), (dpy, attrib_list)) 1439e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreateStreamProducerSurfaceKHR, (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint * attrib_list), (dpy, config, stream, attrib_list)) 1440e84fe556SmrgGEN_THUNKS_RET(EGLSyncKHR, eglCreateStreamSyncNV, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum type, const EGLint * attrib_list), (dpy, stream, type, attrib_list)) 1441e84fe556SmrgGEN_THUNKS_RET(EGLSync, eglCreateSync, (EGLDisplay dpy, EGLenum type, const EGLAttrib * attrib_list), (dpy, type, attrib_list)) 1442e84fe556SmrgGEN_THUNKS_RET(EGLSyncKHR, eglCreateSync64KHR, (EGLDisplay dpy, EGLenum type, const EGLAttribKHR * attrib_list), (dpy, type, attrib_list)) 1443e84fe556SmrgGEN_THUNKS_RET(EGLSyncKHR, eglCreateSyncKHR, (EGLDisplay dpy, EGLenum type, const EGLint * attrib_list), (dpy, type, attrib_list)) 1444e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglCreateWindowSurface, (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint * attrib_list), (dpy, config, win, attrib_list)) 1445e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglDestroyContext, (EGLDisplay dpy, EGLContext ctx), (dpy, ctx)) 1446e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglDestroyImage, (EGLDisplay dpy, EGLImage image), (dpy, image)) 1447e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglDestroyImageKHR, (EGLDisplay dpy, EGLImageKHR image), (dpy, image)) 1448e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglDestroyStreamKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream)) 1449e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglDestroySurface, (EGLDisplay dpy, EGLSurface surface), (dpy, surface)) 1450e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglDestroySync, (EGLDisplay dpy, EGLSync sync), (dpy, sync)) 1451e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglDestroySyncKHR, (EGLDisplay dpy, EGLSyncKHR sync), (dpy, sync)) 1452e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglDestroySyncNV, (EGLSyncNV sync), (sync)) 1453e84fe556SmrgGEN_THUNKS_RET(EGLint, eglDupNativeFenceFDANDROID, (EGLDisplay dpy, EGLSyncKHR sync), (dpy, sync)) 1454e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglExportDMABUFImageMESA, (EGLDisplay dpy, EGLImageKHR image, int * fds, EGLint * strides, EGLint * offsets), (dpy, image, fds, strides, offsets)) 1455e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglExportDMABUFImageQueryMESA, (EGLDisplay dpy, EGLImageKHR image, int * fourcc, int * num_planes, EGLuint64KHR * modifiers), (dpy, image, fourcc, num_planes, modifiers)) 1456e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglExportDRMImageMESA, (EGLDisplay dpy, EGLImageKHR image, EGLint * name, EGLint * handle, EGLint * stride), (dpy, image, name, handle, stride)) 1457e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglFenceNV, (EGLSyncNV sync), (sync)) 1458e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglGetConfigAttrib, (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint * value), (dpy, config, attribute, value)) 1459e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglGetConfigs, (EGLDisplay dpy, EGLConfig * configs, EGLint config_size, EGLint * num_config), (dpy, configs, config_size, num_config)) 1460e84fe556SmrgGEN_THUNKS_RET(EGLContext, eglGetCurrentContext, (void), ()) 1461e84fe556SmrgGEN_THUNKS_RET(EGLDisplay, eglGetCurrentDisplay, (void), ()) 1462e84fe556SmrgGEN_THUNKS_RET(EGLSurface, eglGetCurrentSurface, (EGLint readdraw), (readdraw)) 1463e84fe556SmrgGEN_THUNKS_RET(EGLDisplay, eglGetDisplay, (EGLNativeDisplayType display_id), (display_id)) 1464e84fe556SmrgGEN_THUNKS_RET(EGLint, eglGetError, (void), ()) 1465e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglGetOutputLayersEXT, (EGLDisplay dpy, const EGLAttrib * attrib_list, EGLOutputLayerEXT * layers, EGLint max_layers, EGLint * num_layers), (dpy, attrib_list, layers, max_layers, num_layers)) 1466e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglGetOutputPortsEXT, (EGLDisplay dpy, const EGLAttrib * attrib_list, EGLOutputPortEXT * ports, EGLint max_ports, EGLint * num_ports), (dpy, attrib_list, ports, max_ports, num_ports)) 1467e84fe556SmrgGEN_THUNKS_RET(EGLDisplay, eglGetPlatformDisplay, (EGLenum platform, void * native_display, const EGLAttrib * attrib_list), (platform, native_display, attrib_list)) 1468e84fe556SmrgGEN_THUNKS_RET(EGLDisplay, eglGetPlatformDisplayEXT, (EGLenum platform, void * native_display, const EGLint * attrib_list), (platform, native_display, attrib_list)) 1469e84fe556SmrgGEN_THUNKS_RET(__eglMustCastToProperFunctionPointerType, eglGetProcAddress, (const char * procname), (procname)) 1470e84fe556SmrgGEN_THUNKS_RET(EGLNativeFileDescriptorKHR, eglGetStreamFileDescriptorKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream)) 1471e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglGetSyncAttrib, (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib * value), (dpy, sync, attribute, value)) 1472e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglGetSyncAttribKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint * value), (dpy, sync, attribute, value)) 1473e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglGetSyncAttribNV, (EGLSyncNV sync, EGLint attribute, EGLint * value), (sync, attribute, value)) 1474e84fe556SmrgGEN_THUNKS_RET(EGLuint64NV, eglGetSystemTimeFrequencyNV, (void), ()) 1475e84fe556SmrgGEN_THUNKS_RET(EGLuint64NV, eglGetSystemTimeNV, (void), ()) 1476e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglInitialize, (EGLDisplay dpy, EGLint * major, EGLint * minor), (dpy, major, minor)) 1477e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglLockSurfaceKHR, (EGLDisplay dpy, EGLSurface surface, const EGLint * attrib_list), (dpy, surface, attrib_list)) 1478e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglMakeCurrent, (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx), (dpy, draw, read, ctx)) 1479e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglOutputLayerAttribEXT, (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value), (dpy, layer, attribute, value)) 1480e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglOutputPortAttribEXT, (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value), (dpy, port, attribute, value)) 1481e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglPostSubBufferNV, (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height), (dpy, surface, x, y, width, height)) 1482e84fe556SmrgGEN_THUNKS_RET(EGLenum, eglQueryAPI, (void), ()) 1483e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryContext, (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint * value), (dpy, ctx, attribute, value)) 1484e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryDeviceAttribEXT, (EGLDeviceEXT device, EGLint attribute, EGLAttrib * value), (device, attribute, value)) 1485e84fe556SmrgGEN_THUNKS_RET(const char *, eglQueryDeviceStringEXT, (EGLDeviceEXT device, EGLint name), (device, name)) 1486e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryDevicesEXT, (EGLint max_devices, EGLDeviceEXT * devices, EGLint * num_devices), (max_devices, devices, num_devices)) 1487e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryDisplayAttribEXT, (EGLDisplay dpy, EGLint attribute, EGLAttrib * value), (dpy, attribute, value)) 1488e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryNativeDisplayNV, (EGLDisplay dpy, EGLNativeDisplayType * display_id), (dpy, display_id)) 1489e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryNativePixmapNV, (EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType * pixmap), (dpy, surf, pixmap)) 1490e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryNativeWindowNV, (EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType * window), (dpy, surf, window)) 1491e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryOutputLayerAttribEXT, (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib * value), (dpy, layer, attribute, value)) 1492e84fe556SmrgGEN_THUNKS_RET(const char *, eglQueryOutputLayerStringEXT, (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name), (dpy, layer, name)) 1493e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryOutputPortAttribEXT, (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib * value), (dpy, port, attribute, value)) 1494e84fe556SmrgGEN_THUNKS_RET(const char *, eglQueryOutputPortStringEXT, (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name), (dpy, port, name)) 1495e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryStreamKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint * value), (dpy, stream, attribute, value)) 1496e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryStreamTimeKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR * value), (dpy, stream, attribute, value)) 1497e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQueryStreamu64KHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR * value), (dpy, stream, attribute, value)) 1498e84fe556SmrgGEN_THUNKS_RET(const char *, eglQueryString, (EGLDisplay dpy, EGLint name), (dpy, name)) 1499e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQuerySurface, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint * value), (dpy, surface, attribute, value)) 1500e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQuerySurface64KHR, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR * value), (dpy, surface, attribute, value)) 1501e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglQuerySurfacePointerANGLE, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void ** value), (dpy, surface, attribute, value)) 1502e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglReleaseTexImage, (EGLDisplay dpy, EGLSurface surface, EGLint buffer), (dpy, surface, buffer)) 1503e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglReleaseThread, (void), ()) 1504e84fe556SmrgGEN_THUNKS(eglSetBlobCacheFuncsANDROID, (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get), (dpy, set, get)) 1505e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSetDamageRegionKHR, (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects), (dpy, surface, rects, n_rects)) 1506e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSignalSyncKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode), (dpy, sync, mode)) 1507e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSignalSyncNV, (EGLSyncNV sync, EGLenum mode), (sync, mode)) 1508e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglStreamAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value), (dpy, stream, attribute, value)) 1509e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglStreamConsumerAcquireKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream)) 1510e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglStreamConsumerGLTextureExternalKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream)) 1511e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglStreamConsumerOutputEXT, (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer), (dpy, stream, layer)) 1512e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglStreamConsumerReleaseKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream)) 1513e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSurfaceAttrib, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value), (dpy, surface, attribute, value)) 1514e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSwapBuffers, (EGLDisplay dpy, EGLSurface surface), (dpy, surface)) 1515e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSwapBuffersRegion2NOK, (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint * rects), (dpy, surface, numRects, rects)) 1516e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSwapBuffersRegionNOK, (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint * rects), (dpy, surface, numRects, rects)) 1517e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSwapBuffersWithDamageEXT, (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects), (dpy, surface, rects, n_rects)) 1518e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSwapBuffersWithDamageKHR, (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects), (dpy, surface, rects, n_rects)) 1519e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglSwapInterval, (EGLDisplay dpy, EGLint interval), (dpy, interval)) 1520e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglTerminate, (EGLDisplay dpy), (dpy)) 1521e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglUnlockSurfaceKHR, (EGLDisplay dpy, EGLSurface surface), (dpy, surface)) 1522e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglWaitClient, (void), ()) 1523e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglWaitGL, (void), ()) 1524e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglWaitNative, (EGLint engine), (engine)) 1525e84fe556SmrgGEN_THUNKS_RET(EGLBoolean, eglWaitSync, (EGLDisplay dpy, EGLSync sync, EGLint flags), (dpy, sync, flags)) 1526e84fe556SmrgGEN_THUNKS_RET(EGLint, eglWaitSyncKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags), (dpy, sync, flags)) 1527e84fe556Smrg 1528e84fe556Smrg#if USING_DISPATCH_TABLE 1529e84fe556Smrgstatic struct dispatch_table resolver_table = { 1530e84fe556Smrg .eglBindAPI = epoxy_eglBindAPI_dispatch_table_rewrite_ptr, 1531e84fe556Smrg .eglBindTexImage = epoxy_eglBindTexImage_dispatch_table_rewrite_ptr, 1532e84fe556Smrg .eglChooseConfig = epoxy_eglChooseConfig_dispatch_table_rewrite_ptr, 1533e84fe556Smrg .eglClientWaitSync = epoxy_eglClientWaitSync_dispatch_table_rewrite_ptr, 1534e84fe556Smrg .eglClientWaitSyncKHR = epoxy_eglClientWaitSyncKHR_dispatch_table_rewrite_ptr, 1535e84fe556Smrg .eglClientWaitSyncNV = epoxy_eglClientWaitSyncNV_dispatch_table_rewrite_ptr, 1536e84fe556Smrg .eglCopyBuffers = epoxy_eglCopyBuffers_dispatch_table_rewrite_ptr, 1537e84fe556Smrg .eglCreateContext = epoxy_eglCreateContext_dispatch_table_rewrite_ptr, 1538e84fe556Smrg .eglCreateDRMImageMESA = epoxy_eglCreateDRMImageMESA_dispatch_table_rewrite_ptr, 1539e84fe556Smrg .eglCreateFenceSyncNV = epoxy_eglCreateFenceSyncNV_dispatch_table_rewrite_ptr, 1540e84fe556Smrg .eglCreateImage = epoxy_eglCreateImage_dispatch_table_rewrite_ptr, 1541e84fe556Smrg .eglCreateImageKHR = epoxy_eglCreateImageKHR_dispatch_table_rewrite_ptr, 1542e84fe556Smrg .eglCreatePbufferFromClientBuffer = epoxy_eglCreatePbufferFromClientBuffer_dispatch_table_rewrite_ptr, 1543e84fe556Smrg .eglCreatePbufferSurface = epoxy_eglCreatePbufferSurface_dispatch_table_rewrite_ptr, 1544e84fe556Smrg .eglCreatePixmapSurface = epoxy_eglCreatePixmapSurface_dispatch_table_rewrite_ptr, 1545e84fe556Smrg .eglCreatePixmapSurfaceHI = epoxy_eglCreatePixmapSurfaceHI_dispatch_table_rewrite_ptr, 1546e84fe556Smrg .eglCreatePlatformPixmapSurface = epoxy_eglCreatePlatformPixmapSurface_dispatch_table_rewrite_ptr, 1547e84fe556Smrg .eglCreatePlatformPixmapSurfaceEXT = epoxy_eglCreatePlatformPixmapSurfaceEXT_dispatch_table_rewrite_ptr, 1548e84fe556Smrg .eglCreatePlatformWindowSurface = epoxy_eglCreatePlatformWindowSurface_dispatch_table_rewrite_ptr, 1549e84fe556Smrg .eglCreatePlatformWindowSurfaceEXT = epoxy_eglCreatePlatformWindowSurfaceEXT_dispatch_table_rewrite_ptr, 1550e84fe556Smrg .eglCreateStreamFromFileDescriptorKHR = epoxy_eglCreateStreamFromFileDescriptorKHR_dispatch_table_rewrite_ptr, 1551e84fe556Smrg .eglCreateStreamKHR = epoxy_eglCreateStreamKHR_dispatch_table_rewrite_ptr, 1552e84fe556Smrg .eglCreateStreamProducerSurfaceKHR = epoxy_eglCreateStreamProducerSurfaceKHR_dispatch_table_rewrite_ptr, 1553e84fe556Smrg .eglCreateStreamSyncNV = epoxy_eglCreateStreamSyncNV_dispatch_table_rewrite_ptr, 1554e84fe556Smrg .eglCreateSync = epoxy_eglCreateSync_dispatch_table_rewrite_ptr, 1555e84fe556Smrg .eglCreateSync64KHR = epoxy_eglCreateSync64KHR_dispatch_table_rewrite_ptr, 1556e84fe556Smrg .eglCreateSyncKHR = epoxy_eglCreateSyncKHR_dispatch_table_rewrite_ptr, 1557e84fe556Smrg .eglCreateWindowSurface = epoxy_eglCreateWindowSurface_dispatch_table_rewrite_ptr, 1558e84fe556Smrg .eglDestroyContext = epoxy_eglDestroyContext_dispatch_table_rewrite_ptr, 1559e84fe556Smrg .eglDestroyImage = epoxy_eglDestroyImage_dispatch_table_rewrite_ptr, 1560e84fe556Smrg .eglDestroyImageKHR = epoxy_eglDestroyImageKHR_dispatch_table_rewrite_ptr, 1561e84fe556Smrg .eglDestroyStreamKHR = epoxy_eglDestroyStreamKHR_dispatch_table_rewrite_ptr, 1562e84fe556Smrg .eglDestroySurface = epoxy_eglDestroySurface_dispatch_table_rewrite_ptr, 1563e84fe556Smrg .eglDestroySync = epoxy_eglDestroySync_dispatch_table_rewrite_ptr, 1564e84fe556Smrg .eglDestroySyncKHR = epoxy_eglDestroySyncKHR_dispatch_table_rewrite_ptr, 1565e84fe556Smrg .eglDestroySyncNV = epoxy_eglDestroySyncNV_dispatch_table_rewrite_ptr, 1566e84fe556Smrg .eglDupNativeFenceFDANDROID = epoxy_eglDupNativeFenceFDANDROID_dispatch_table_rewrite_ptr, 1567e84fe556Smrg .eglExportDMABUFImageMESA = epoxy_eglExportDMABUFImageMESA_dispatch_table_rewrite_ptr, 1568e84fe556Smrg .eglExportDMABUFImageQueryMESA = epoxy_eglExportDMABUFImageQueryMESA_dispatch_table_rewrite_ptr, 1569e84fe556Smrg .eglExportDRMImageMESA = epoxy_eglExportDRMImageMESA_dispatch_table_rewrite_ptr, 1570e84fe556Smrg .eglFenceNV = epoxy_eglFenceNV_dispatch_table_rewrite_ptr, 1571e84fe556Smrg .eglGetConfigAttrib = epoxy_eglGetConfigAttrib_dispatch_table_rewrite_ptr, 1572e84fe556Smrg .eglGetConfigs = epoxy_eglGetConfigs_dispatch_table_rewrite_ptr, 1573e84fe556Smrg .eglGetCurrentContext = epoxy_eglGetCurrentContext_dispatch_table_rewrite_ptr, 1574e84fe556Smrg .eglGetCurrentDisplay = epoxy_eglGetCurrentDisplay_dispatch_table_rewrite_ptr, 1575e84fe556Smrg .eglGetCurrentSurface = epoxy_eglGetCurrentSurface_dispatch_table_rewrite_ptr, 1576e84fe556Smrg .eglGetDisplay = epoxy_eglGetDisplay_dispatch_table_rewrite_ptr, 1577e84fe556Smrg .eglGetError = epoxy_eglGetError_dispatch_table_rewrite_ptr, 1578e84fe556Smrg .eglGetOutputLayersEXT = epoxy_eglGetOutputLayersEXT_dispatch_table_rewrite_ptr, 1579e84fe556Smrg .eglGetOutputPortsEXT = epoxy_eglGetOutputPortsEXT_dispatch_table_rewrite_ptr, 1580e84fe556Smrg .eglGetPlatformDisplay = epoxy_eglGetPlatformDisplay_dispatch_table_rewrite_ptr, 1581e84fe556Smrg .eglGetPlatformDisplayEXT = epoxy_eglGetPlatformDisplayEXT_dispatch_table_rewrite_ptr, 1582e84fe556Smrg .eglGetProcAddress = epoxy_eglGetProcAddress_dispatch_table_rewrite_ptr, 1583e84fe556Smrg .eglGetStreamFileDescriptorKHR = epoxy_eglGetStreamFileDescriptorKHR_dispatch_table_rewrite_ptr, 1584e84fe556Smrg .eglGetSyncAttrib = epoxy_eglGetSyncAttrib_dispatch_table_rewrite_ptr, 1585e84fe556Smrg .eglGetSyncAttribKHR = epoxy_eglGetSyncAttribKHR_dispatch_table_rewrite_ptr, 1586e84fe556Smrg .eglGetSyncAttribNV = epoxy_eglGetSyncAttribNV_dispatch_table_rewrite_ptr, 1587e84fe556Smrg .eglGetSystemTimeFrequencyNV = epoxy_eglGetSystemTimeFrequencyNV_dispatch_table_rewrite_ptr, 1588e84fe556Smrg .eglGetSystemTimeNV = epoxy_eglGetSystemTimeNV_dispatch_table_rewrite_ptr, 1589e84fe556Smrg .eglInitialize = epoxy_eglInitialize_dispatch_table_rewrite_ptr, 1590e84fe556Smrg .eglLockSurfaceKHR = epoxy_eglLockSurfaceKHR_dispatch_table_rewrite_ptr, 1591e84fe556Smrg .eglMakeCurrent = epoxy_eglMakeCurrent_dispatch_table_rewrite_ptr, 1592e84fe556Smrg .eglOutputLayerAttribEXT = epoxy_eglOutputLayerAttribEXT_dispatch_table_rewrite_ptr, 1593e84fe556Smrg .eglOutputPortAttribEXT = epoxy_eglOutputPortAttribEXT_dispatch_table_rewrite_ptr, 1594e84fe556Smrg .eglPostSubBufferNV = epoxy_eglPostSubBufferNV_dispatch_table_rewrite_ptr, 1595e84fe556Smrg .eglQueryAPI = epoxy_eglQueryAPI_dispatch_table_rewrite_ptr, 1596e84fe556Smrg .eglQueryContext = epoxy_eglQueryContext_dispatch_table_rewrite_ptr, 1597e84fe556Smrg .eglQueryDeviceAttribEXT = epoxy_eglQueryDeviceAttribEXT_dispatch_table_rewrite_ptr, 1598e84fe556Smrg .eglQueryDeviceStringEXT = epoxy_eglQueryDeviceStringEXT_dispatch_table_rewrite_ptr, 1599e84fe556Smrg .eglQueryDevicesEXT = epoxy_eglQueryDevicesEXT_dispatch_table_rewrite_ptr, 1600e84fe556Smrg .eglQueryDisplayAttribEXT = epoxy_eglQueryDisplayAttribEXT_dispatch_table_rewrite_ptr, 1601e84fe556Smrg .eglQueryNativeDisplayNV = epoxy_eglQueryNativeDisplayNV_dispatch_table_rewrite_ptr, 1602e84fe556Smrg .eglQueryNativePixmapNV = epoxy_eglQueryNativePixmapNV_dispatch_table_rewrite_ptr, 1603e84fe556Smrg .eglQueryNativeWindowNV = epoxy_eglQueryNativeWindowNV_dispatch_table_rewrite_ptr, 1604e84fe556Smrg .eglQueryOutputLayerAttribEXT = epoxy_eglQueryOutputLayerAttribEXT_dispatch_table_rewrite_ptr, 1605e84fe556Smrg .eglQueryOutputLayerStringEXT = epoxy_eglQueryOutputLayerStringEXT_dispatch_table_rewrite_ptr, 1606e84fe556Smrg .eglQueryOutputPortAttribEXT = epoxy_eglQueryOutputPortAttribEXT_dispatch_table_rewrite_ptr, 1607e84fe556Smrg .eglQueryOutputPortStringEXT = epoxy_eglQueryOutputPortStringEXT_dispatch_table_rewrite_ptr, 1608e84fe556Smrg .eglQueryStreamKHR = epoxy_eglQueryStreamKHR_dispatch_table_rewrite_ptr, 1609e84fe556Smrg .eglQueryStreamTimeKHR = epoxy_eglQueryStreamTimeKHR_dispatch_table_rewrite_ptr, 1610e84fe556Smrg .eglQueryStreamu64KHR = epoxy_eglQueryStreamu64KHR_dispatch_table_rewrite_ptr, 1611e84fe556Smrg .eglQueryString = epoxy_eglQueryString_dispatch_table_rewrite_ptr, 1612e84fe556Smrg .eglQuerySurface = epoxy_eglQuerySurface_dispatch_table_rewrite_ptr, 1613e84fe556Smrg .eglQuerySurface64KHR = epoxy_eglQuerySurface64KHR_dispatch_table_rewrite_ptr, 1614e84fe556Smrg .eglQuerySurfacePointerANGLE = epoxy_eglQuerySurfacePointerANGLE_dispatch_table_rewrite_ptr, 1615e84fe556Smrg .eglReleaseTexImage = epoxy_eglReleaseTexImage_dispatch_table_rewrite_ptr, 1616e84fe556Smrg .eglReleaseThread = epoxy_eglReleaseThread_dispatch_table_rewrite_ptr, 1617e84fe556Smrg .eglSetBlobCacheFuncsANDROID = epoxy_eglSetBlobCacheFuncsANDROID_dispatch_table_rewrite_ptr, 1618e84fe556Smrg .eglSetDamageRegionKHR = epoxy_eglSetDamageRegionKHR_dispatch_table_rewrite_ptr, 1619e84fe556Smrg .eglSignalSyncKHR = epoxy_eglSignalSyncKHR_dispatch_table_rewrite_ptr, 1620e84fe556Smrg .eglSignalSyncNV = epoxy_eglSignalSyncNV_dispatch_table_rewrite_ptr, 1621e84fe556Smrg .eglStreamAttribKHR = epoxy_eglStreamAttribKHR_dispatch_table_rewrite_ptr, 1622e84fe556Smrg .eglStreamConsumerAcquireKHR = epoxy_eglStreamConsumerAcquireKHR_dispatch_table_rewrite_ptr, 1623e84fe556Smrg .eglStreamConsumerGLTextureExternalKHR = epoxy_eglStreamConsumerGLTextureExternalKHR_dispatch_table_rewrite_ptr, 1624e84fe556Smrg .eglStreamConsumerOutputEXT = epoxy_eglStreamConsumerOutputEXT_dispatch_table_rewrite_ptr, 1625e84fe556Smrg .eglStreamConsumerReleaseKHR = epoxy_eglStreamConsumerReleaseKHR_dispatch_table_rewrite_ptr, 1626e84fe556Smrg .eglSurfaceAttrib = epoxy_eglSurfaceAttrib_dispatch_table_rewrite_ptr, 1627e84fe556Smrg .eglSwapBuffers = epoxy_eglSwapBuffers_dispatch_table_rewrite_ptr, 1628e84fe556Smrg .eglSwapBuffersRegion2NOK = epoxy_eglSwapBuffersRegion2NOK_dispatch_table_rewrite_ptr, 1629e84fe556Smrg .eglSwapBuffersRegionNOK = epoxy_eglSwapBuffersRegionNOK_dispatch_table_rewrite_ptr, 1630e84fe556Smrg .eglSwapBuffersWithDamageEXT = epoxy_eglSwapBuffersWithDamageEXT_dispatch_table_rewrite_ptr, 1631e84fe556Smrg .eglSwapBuffersWithDamageKHR = epoxy_eglSwapBuffersWithDamageKHR_dispatch_table_rewrite_ptr, 1632e84fe556Smrg .eglSwapInterval = epoxy_eglSwapInterval_dispatch_table_rewrite_ptr, 1633e84fe556Smrg .eglTerminate = epoxy_eglTerminate_dispatch_table_rewrite_ptr, 1634e84fe556Smrg .eglUnlockSurfaceKHR = epoxy_eglUnlockSurfaceKHR_dispatch_table_rewrite_ptr, 1635e84fe556Smrg .eglWaitClient = epoxy_eglWaitClient_dispatch_table_rewrite_ptr, 1636e84fe556Smrg .eglWaitGL = epoxy_eglWaitGL_dispatch_table_rewrite_ptr, 1637e84fe556Smrg .eglWaitNative = epoxy_eglWaitNative_dispatch_table_rewrite_ptr, 1638e84fe556Smrg .eglWaitSync = epoxy_eglWaitSync_dispatch_table_rewrite_ptr, 1639e84fe556Smrg .eglWaitSyncKHR = epoxy_eglWaitSyncKHR_dispatch_table_rewrite_ptr, 1640e84fe556Smrg}; 1641e84fe556Smrg 1642e84fe556Smrguint32_t egl_tls_index; 1643e84fe556Smrguint32_t egl_tls_size = sizeof(struct dispatch_table); 1644e84fe556Smrg 1645e84fe556Smrgstatic inline struct dispatch_table * 1646e84fe556Smrgget_dispatch_table(void) 1647e84fe556Smrg{ 1648e84fe556Smrg return TlsGetValue(egl_tls_index); 1649e84fe556Smrg} 1650e84fe556Smrg 1651e84fe556Smrgvoid 1652e84fe556Smrgegl_init_dispatch_table(void) 1653e84fe556Smrg{ 1654e84fe556Smrg struct dispatch_table *dispatch_table = get_dispatch_table(); 1655e84fe556Smrg memcpy(dispatch_table, &resolver_table, sizeof(resolver_table)); 1656e84fe556Smrg} 1657e84fe556Smrg 1658e84fe556Smrgvoid 1659e84fe556Smrgegl_switch_to_dispatch_table(void) 1660e84fe556Smrg{ 1661e84fe556Smrg epoxy_eglBindAPI = epoxy_eglBindAPI_dispatch_table_thunk; 1662e84fe556Smrg epoxy_eglBindTexImage = epoxy_eglBindTexImage_dispatch_table_thunk; 1663e84fe556Smrg epoxy_eglChooseConfig = epoxy_eglChooseConfig_dispatch_table_thunk; 1664e84fe556Smrg epoxy_eglClientWaitSync = epoxy_eglClientWaitSync_dispatch_table_thunk; 1665e84fe556Smrg epoxy_eglClientWaitSyncKHR = epoxy_eglClientWaitSyncKHR_dispatch_table_thunk; 1666e84fe556Smrg epoxy_eglClientWaitSyncNV = epoxy_eglClientWaitSyncNV_dispatch_table_thunk; 1667e84fe556Smrg epoxy_eglCopyBuffers = epoxy_eglCopyBuffers_dispatch_table_thunk; 1668e84fe556Smrg epoxy_eglCreateContext = epoxy_eglCreateContext_dispatch_table_thunk; 1669e84fe556Smrg epoxy_eglCreateDRMImageMESA = epoxy_eglCreateDRMImageMESA_dispatch_table_thunk; 1670e84fe556Smrg epoxy_eglCreateFenceSyncNV = epoxy_eglCreateFenceSyncNV_dispatch_table_thunk; 1671e84fe556Smrg epoxy_eglCreateImage = epoxy_eglCreateImage_dispatch_table_thunk; 1672e84fe556Smrg epoxy_eglCreateImageKHR = epoxy_eglCreateImageKHR_dispatch_table_thunk; 1673e84fe556Smrg epoxy_eglCreatePbufferFromClientBuffer = epoxy_eglCreatePbufferFromClientBuffer_dispatch_table_thunk; 1674e84fe556Smrg epoxy_eglCreatePbufferSurface = epoxy_eglCreatePbufferSurface_dispatch_table_thunk; 1675e84fe556Smrg epoxy_eglCreatePixmapSurface = epoxy_eglCreatePixmapSurface_dispatch_table_thunk; 1676e84fe556Smrg epoxy_eglCreatePixmapSurfaceHI = epoxy_eglCreatePixmapSurfaceHI_dispatch_table_thunk; 1677e84fe556Smrg epoxy_eglCreatePlatformPixmapSurface = epoxy_eglCreatePlatformPixmapSurface_dispatch_table_thunk; 1678e84fe556Smrg epoxy_eglCreatePlatformPixmapSurfaceEXT = epoxy_eglCreatePlatformPixmapSurfaceEXT_dispatch_table_thunk; 1679e84fe556Smrg epoxy_eglCreatePlatformWindowSurface = epoxy_eglCreatePlatformWindowSurface_dispatch_table_thunk; 1680e84fe556Smrg epoxy_eglCreatePlatformWindowSurfaceEXT = epoxy_eglCreatePlatformWindowSurfaceEXT_dispatch_table_thunk; 1681e84fe556Smrg epoxy_eglCreateStreamFromFileDescriptorKHR = epoxy_eglCreateStreamFromFileDescriptorKHR_dispatch_table_thunk; 1682e84fe556Smrg epoxy_eglCreateStreamKHR = epoxy_eglCreateStreamKHR_dispatch_table_thunk; 1683e84fe556Smrg epoxy_eglCreateStreamProducerSurfaceKHR = epoxy_eglCreateStreamProducerSurfaceKHR_dispatch_table_thunk; 1684e84fe556Smrg epoxy_eglCreateStreamSyncNV = epoxy_eglCreateStreamSyncNV_dispatch_table_thunk; 1685e84fe556Smrg epoxy_eglCreateSync = epoxy_eglCreateSync_dispatch_table_thunk; 1686e84fe556Smrg epoxy_eglCreateSync64KHR = epoxy_eglCreateSync64KHR_dispatch_table_thunk; 1687e84fe556Smrg epoxy_eglCreateSyncKHR = epoxy_eglCreateSyncKHR_dispatch_table_thunk; 1688e84fe556Smrg epoxy_eglCreateWindowSurface = epoxy_eglCreateWindowSurface_dispatch_table_thunk; 1689e84fe556Smrg epoxy_eglDestroyContext = epoxy_eglDestroyContext_dispatch_table_thunk; 1690e84fe556Smrg epoxy_eglDestroyImage = epoxy_eglDestroyImage_dispatch_table_thunk; 1691e84fe556Smrg epoxy_eglDestroyImageKHR = epoxy_eglDestroyImageKHR_dispatch_table_thunk; 1692e84fe556Smrg epoxy_eglDestroyStreamKHR = epoxy_eglDestroyStreamKHR_dispatch_table_thunk; 1693e84fe556Smrg epoxy_eglDestroySurface = epoxy_eglDestroySurface_dispatch_table_thunk; 1694e84fe556Smrg epoxy_eglDestroySync = epoxy_eglDestroySync_dispatch_table_thunk; 1695e84fe556Smrg epoxy_eglDestroySyncKHR = epoxy_eglDestroySyncKHR_dispatch_table_thunk; 1696e84fe556Smrg epoxy_eglDestroySyncNV = epoxy_eglDestroySyncNV_dispatch_table_thunk; 1697e84fe556Smrg epoxy_eglDupNativeFenceFDANDROID = epoxy_eglDupNativeFenceFDANDROID_dispatch_table_thunk; 1698e84fe556Smrg epoxy_eglExportDMABUFImageMESA = epoxy_eglExportDMABUFImageMESA_dispatch_table_thunk; 1699e84fe556Smrg epoxy_eglExportDMABUFImageQueryMESA = epoxy_eglExportDMABUFImageQueryMESA_dispatch_table_thunk; 1700e84fe556Smrg epoxy_eglExportDRMImageMESA = epoxy_eglExportDRMImageMESA_dispatch_table_thunk; 1701e84fe556Smrg epoxy_eglFenceNV = epoxy_eglFenceNV_dispatch_table_thunk; 1702e84fe556Smrg epoxy_eglGetConfigAttrib = epoxy_eglGetConfigAttrib_dispatch_table_thunk; 1703e84fe556Smrg epoxy_eglGetConfigs = epoxy_eglGetConfigs_dispatch_table_thunk; 1704e84fe556Smrg epoxy_eglGetCurrentContext = epoxy_eglGetCurrentContext_dispatch_table_thunk; 1705e84fe556Smrg epoxy_eglGetCurrentDisplay = epoxy_eglGetCurrentDisplay_dispatch_table_thunk; 1706e84fe556Smrg epoxy_eglGetCurrentSurface = epoxy_eglGetCurrentSurface_dispatch_table_thunk; 1707e84fe556Smrg epoxy_eglGetDisplay = epoxy_eglGetDisplay_dispatch_table_thunk; 1708e84fe556Smrg epoxy_eglGetError = epoxy_eglGetError_dispatch_table_thunk; 1709e84fe556Smrg epoxy_eglGetOutputLayersEXT = epoxy_eglGetOutputLayersEXT_dispatch_table_thunk; 1710e84fe556Smrg epoxy_eglGetOutputPortsEXT = epoxy_eglGetOutputPortsEXT_dispatch_table_thunk; 1711e84fe556Smrg epoxy_eglGetPlatformDisplay = epoxy_eglGetPlatformDisplay_dispatch_table_thunk; 1712e84fe556Smrg epoxy_eglGetPlatformDisplayEXT = epoxy_eglGetPlatformDisplayEXT_dispatch_table_thunk; 1713e84fe556Smrg epoxy_eglGetProcAddress = epoxy_eglGetProcAddress_dispatch_table_thunk; 1714e84fe556Smrg epoxy_eglGetStreamFileDescriptorKHR = epoxy_eglGetStreamFileDescriptorKHR_dispatch_table_thunk; 1715e84fe556Smrg epoxy_eglGetSyncAttrib = epoxy_eglGetSyncAttrib_dispatch_table_thunk; 1716e84fe556Smrg epoxy_eglGetSyncAttribKHR = epoxy_eglGetSyncAttribKHR_dispatch_table_thunk; 1717e84fe556Smrg epoxy_eglGetSyncAttribNV = epoxy_eglGetSyncAttribNV_dispatch_table_thunk; 1718e84fe556Smrg epoxy_eglGetSystemTimeFrequencyNV = epoxy_eglGetSystemTimeFrequencyNV_dispatch_table_thunk; 1719e84fe556Smrg epoxy_eglGetSystemTimeNV = epoxy_eglGetSystemTimeNV_dispatch_table_thunk; 1720e84fe556Smrg epoxy_eglInitialize = epoxy_eglInitialize_dispatch_table_thunk; 1721e84fe556Smrg epoxy_eglLockSurfaceKHR = epoxy_eglLockSurfaceKHR_dispatch_table_thunk; 1722e84fe556Smrg epoxy_eglMakeCurrent = epoxy_eglMakeCurrent_dispatch_table_thunk; 1723e84fe556Smrg epoxy_eglOutputLayerAttribEXT = epoxy_eglOutputLayerAttribEXT_dispatch_table_thunk; 1724e84fe556Smrg epoxy_eglOutputPortAttribEXT = epoxy_eglOutputPortAttribEXT_dispatch_table_thunk; 1725e84fe556Smrg epoxy_eglPostSubBufferNV = epoxy_eglPostSubBufferNV_dispatch_table_thunk; 1726e84fe556Smrg epoxy_eglQueryAPI = epoxy_eglQueryAPI_dispatch_table_thunk; 1727e84fe556Smrg epoxy_eglQueryContext = epoxy_eglQueryContext_dispatch_table_thunk; 1728e84fe556Smrg epoxy_eglQueryDeviceAttribEXT = epoxy_eglQueryDeviceAttribEXT_dispatch_table_thunk; 1729e84fe556Smrg epoxy_eglQueryDeviceStringEXT = epoxy_eglQueryDeviceStringEXT_dispatch_table_thunk; 1730e84fe556Smrg epoxy_eglQueryDevicesEXT = epoxy_eglQueryDevicesEXT_dispatch_table_thunk; 1731e84fe556Smrg epoxy_eglQueryDisplayAttribEXT = epoxy_eglQueryDisplayAttribEXT_dispatch_table_thunk; 1732e84fe556Smrg epoxy_eglQueryNativeDisplayNV = epoxy_eglQueryNativeDisplayNV_dispatch_table_thunk; 1733e84fe556Smrg epoxy_eglQueryNativePixmapNV = epoxy_eglQueryNativePixmapNV_dispatch_table_thunk; 1734e84fe556Smrg epoxy_eglQueryNativeWindowNV = epoxy_eglQueryNativeWindowNV_dispatch_table_thunk; 1735e84fe556Smrg epoxy_eglQueryOutputLayerAttribEXT = epoxy_eglQueryOutputLayerAttribEXT_dispatch_table_thunk; 1736e84fe556Smrg epoxy_eglQueryOutputLayerStringEXT = epoxy_eglQueryOutputLayerStringEXT_dispatch_table_thunk; 1737e84fe556Smrg epoxy_eglQueryOutputPortAttribEXT = epoxy_eglQueryOutputPortAttribEXT_dispatch_table_thunk; 1738e84fe556Smrg epoxy_eglQueryOutputPortStringEXT = epoxy_eglQueryOutputPortStringEXT_dispatch_table_thunk; 1739e84fe556Smrg epoxy_eglQueryStreamKHR = epoxy_eglQueryStreamKHR_dispatch_table_thunk; 1740e84fe556Smrg epoxy_eglQueryStreamTimeKHR = epoxy_eglQueryStreamTimeKHR_dispatch_table_thunk; 1741e84fe556Smrg epoxy_eglQueryStreamu64KHR = epoxy_eglQueryStreamu64KHR_dispatch_table_thunk; 1742e84fe556Smrg epoxy_eglQueryString = epoxy_eglQueryString_dispatch_table_thunk; 1743e84fe556Smrg epoxy_eglQuerySurface = epoxy_eglQuerySurface_dispatch_table_thunk; 1744e84fe556Smrg epoxy_eglQuerySurface64KHR = epoxy_eglQuerySurface64KHR_dispatch_table_thunk; 1745e84fe556Smrg epoxy_eglQuerySurfacePointerANGLE = epoxy_eglQuerySurfacePointerANGLE_dispatch_table_thunk; 1746e84fe556Smrg epoxy_eglReleaseTexImage = epoxy_eglReleaseTexImage_dispatch_table_thunk; 1747e84fe556Smrg epoxy_eglReleaseThread = epoxy_eglReleaseThread_dispatch_table_thunk; 1748e84fe556Smrg epoxy_eglSetBlobCacheFuncsANDROID = epoxy_eglSetBlobCacheFuncsANDROID_dispatch_table_thunk; 1749e84fe556Smrg epoxy_eglSetDamageRegionKHR = epoxy_eglSetDamageRegionKHR_dispatch_table_thunk; 1750e84fe556Smrg epoxy_eglSignalSyncKHR = epoxy_eglSignalSyncKHR_dispatch_table_thunk; 1751e84fe556Smrg epoxy_eglSignalSyncNV = epoxy_eglSignalSyncNV_dispatch_table_thunk; 1752e84fe556Smrg epoxy_eglStreamAttribKHR = epoxy_eglStreamAttribKHR_dispatch_table_thunk; 1753e84fe556Smrg epoxy_eglStreamConsumerAcquireKHR = epoxy_eglStreamConsumerAcquireKHR_dispatch_table_thunk; 1754e84fe556Smrg epoxy_eglStreamConsumerGLTextureExternalKHR = epoxy_eglStreamConsumerGLTextureExternalKHR_dispatch_table_thunk; 1755e84fe556Smrg epoxy_eglStreamConsumerOutputEXT = epoxy_eglStreamConsumerOutputEXT_dispatch_table_thunk; 1756e84fe556Smrg epoxy_eglStreamConsumerReleaseKHR = epoxy_eglStreamConsumerReleaseKHR_dispatch_table_thunk; 1757e84fe556Smrg epoxy_eglSurfaceAttrib = epoxy_eglSurfaceAttrib_dispatch_table_thunk; 1758e84fe556Smrg epoxy_eglSwapBuffers = epoxy_eglSwapBuffers_dispatch_table_thunk; 1759e84fe556Smrg epoxy_eglSwapBuffersRegion2NOK = epoxy_eglSwapBuffersRegion2NOK_dispatch_table_thunk; 1760e84fe556Smrg epoxy_eglSwapBuffersRegionNOK = epoxy_eglSwapBuffersRegionNOK_dispatch_table_thunk; 1761e84fe556Smrg epoxy_eglSwapBuffersWithDamageEXT = epoxy_eglSwapBuffersWithDamageEXT_dispatch_table_thunk; 1762e84fe556Smrg epoxy_eglSwapBuffersWithDamageKHR = epoxy_eglSwapBuffersWithDamageKHR_dispatch_table_thunk; 1763e84fe556Smrg epoxy_eglSwapInterval = epoxy_eglSwapInterval_dispatch_table_thunk; 1764e84fe556Smrg epoxy_eglTerminate = epoxy_eglTerminate_dispatch_table_thunk; 1765e84fe556Smrg epoxy_eglUnlockSurfaceKHR = epoxy_eglUnlockSurfaceKHR_dispatch_table_thunk; 1766e84fe556Smrg epoxy_eglWaitClient = epoxy_eglWaitClient_dispatch_table_thunk; 1767e84fe556Smrg epoxy_eglWaitGL = epoxy_eglWaitGL_dispatch_table_thunk; 1768e84fe556Smrg epoxy_eglWaitNative = epoxy_eglWaitNative_dispatch_table_thunk; 1769e84fe556Smrg epoxy_eglWaitSync = epoxy_eglWaitSync_dispatch_table_thunk; 1770e84fe556Smrg epoxy_eglWaitSyncKHR = epoxy_eglWaitSyncKHR_dispatch_table_thunk; 1771e84fe556Smrg} 1772e84fe556Smrg 1773e84fe556Smrg#endif /* !USING_DISPATCH_TABLE */ 1774e84fe556SmrgPUBLIC PFNEGLBINDAPIPROC epoxy_eglBindAPI = epoxy_eglBindAPI_global_rewrite_ptr; 1775e84fe556Smrg 1776e84fe556SmrgPUBLIC PFNEGLBINDTEXIMAGEPROC epoxy_eglBindTexImage = epoxy_eglBindTexImage_global_rewrite_ptr; 1777e84fe556Smrg 1778e84fe556SmrgPUBLIC PFNEGLCHOOSECONFIGPROC epoxy_eglChooseConfig = epoxy_eglChooseConfig_global_rewrite_ptr; 1779e84fe556Smrg 1780e84fe556SmrgPUBLIC PFNEGLCLIENTWAITSYNCPROC epoxy_eglClientWaitSync = epoxy_eglClientWaitSync_global_rewrite_ptr; 1781e84fe556Smrg 1782e84fe556SmrgPUBLIC PFNEGLCLIENTWAITSYNCKHRPROC epoxy_eglClientWaitSyncKHR = epoxy_eglClientWaitSyncKHR_global_rewrite_ptr; 1783e84fe556Smrg 1784e84fe556SmrgPUBLIC PFNEGLCLIENTWAITSYNCNVPROC epoxy_eglClientWaitSyncNV = epoxy_eglClientWaitSyncNV_global_rewrite_ptr; 1785e84fe556Smrg 1786e84fe556SmrgPUBLIC PFNEGLCOPYBUFFERSPROC epoxy_eglCopyBuffers = epoxy_eglCopyBuffers_global_rewrite_ptr; 1787e84fe556Smrg 1788e84fe556SmrgPUBLIC PFNEGLCREATECONTEXTPROC epoxy_eglCreateContext = epoxy_eglCreateContext_global_rewrite_ptr; 1789e84fe556Smrg 1790e84fe556SmrgPUBLIC PFNEGLCREATEDRMIMAGEMESAPROC epoxy_eglCreateDRMImageMESA = epoxy_eglCreateDRMImageMESA_global_rewrite_ptr; 1791e84fe556Smrg 1792e84fe556SmrgPUBLIC PFNEGLCREATEFENCESYNCNVPROC epoxy_eglCreateFenceSyncNV = epoxy_eglCreateFenceSyncNV_global_rewrite_ptr; 1793e84fe556Smrg 1794e84fe556SmrgPUBLIC PFNEGLCREATEIMAGEPROC epoxy_eglCreateImage = epoxy_eglCreateImage_global_rewrite_ptr; 1795e84fe556Smrg 1796e84fe556SmrgPUBLIC PFNEGLCREATEIMAGEKHRPROC epoxy_eglCreateImageKHR = epoxy_eglCreateImageKHR_global_rewrite_ptr; 1797e84fe556Smrg 1798e84fe556SmrgPUBLIC PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC epoxy_eglCreatePbufferFromClientBuffer = epoxy_eglCreatePbufferFromClientBuffer_global_rewrite_ptr; 1799e84fe556Smrg 1800e84fe556SmrgPUBLIC PFNEGLCREATEPBUFFERSURFACEPROC epoxy_eglCreatePbufferSurface = epoxy_eglCreatePbufferSurface_global_rewrite_ptr; 1801e84fe556Smrg 1802e84fe556SmrgPUBLIC PFNEGLCREATEPIXMAPSURFACEPROC epoxy_eglCreatePixmapSurface = epoxy_eglCreatePixmapSurface_global_rewrite_ptr; 1803e84fe556Smrg 1804e84fe556SmrgPUBLIC PFNEGLCREATEPIXMAPSURFACEHIPROC epoxy_eglCreatePixmapSurfaceHI = epoxy_eglCreatePixmapSurfaceHI_global_rewrite_ptr; 1805e84fe556Smrg 1806e84fe556SmrgPUBLIC PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC epoxy_eglCreatePlatformPixmapSurface = epoxy_eglCreatePlatformPixmapSurface_global_rewrite_ptr; 1807e84fe556Smrg 1808e84fe556SmrgPUBLIC PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC epoxy_eglCreatePlatformPixmapSurfaceEXT = epoxy_eglCreatePlatformPixmapSurfaceEXT_global_rewrite_ptr; 1809e84fe556Smrg 1810e84fe556SmrgPUBLIC PFNEGLCREATEPLATFORMWINDOWSURFACEPROC epoxy_eglCreatePlatformWindowSurface = epoxy_eglCreatePlatformWindowSurface_global_rewrite_ptr; 1811e84fe556Smrg 1812e84fe556SmrgPUBLIC PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC epoxy_eglCreatePlatformWindowSurfaceEXT = epoxy_eglCreatePlatformWindowSurfaceEXT_global_rewrite_ptr; 1813e84fe556Smrg 1814e84fe556SmrgPUBLIC PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC epoxy_eglCreateStreamFromFileDescriptorKHR = epoxy_eglCreateStreamFromFileDescriptorKHR_global_rewrite_ptr; 1815e84fe556Smrg 1816e84fe556SmrgPUBLIC PFNEGLCREATESTREAMKHRPROC epoxy_eglCreateStreamKHR = epoxy_eglCreateStreamKHR_global_rewrite_ptr; 1817e84fe556Smrg 1818e84fe556SmrgPUBLIC PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC epoxy_eglCreateStreamProducerSurfaceKHR = epoxy_eglCreateStreamProducerSurfaceKHR_global_rewrite_ptr; 1819e84fe556Smrg 1820e84fe556SmrgPUBLIC PFNEGLCREATESTREAMSYNCNVPROC epoxy_eglCreateStreamSyncNV = epoxy_eglCreateStreamSyncNV_global_rewrite_ptr; 1821e84fe556Smrg 1822e84fe556SmrgPUBLIC PFNEGLCREATESYNCPROC epoxy_eglCreateSync = epoxy_eglCreateSync_global_rewrite_ptr; 1823e84fe556Smrg 1824e84fe556SmrgPUBLIC PFNEGLCREATESYNC64KHRPROC epoxy_eglCreateSync64KHR = epoxy_eglCreateSync64KHR_global_rewrite_ptr; 1825e84fe556Smrg 1826e84fe556SmrgPUBLIC PFNEGLCREATESYNCKHRPROC epoxy_eglCreateSyncKHR = epoxy_eglCreateSyncKHR_global_rewrite_ptr; 1827e84fe556Smrg 1828e84fe556SmrgPUBLIC PFNEGLCREATEWINDOWSURFACEPROC epoxy_eglCreateWindowSurface = epoxy_eglCreateWindowSurface_global_rewrite_ptr; 1829e84fe556Smrg 1830e84fe556SmrgPUBLIC PFNEGLDESTROYCONTEXTPROC epoxy_eglDestroyContext = epoxy_eglDestroyContext_global_rewrite_ptr; 1831e84fe556Smrg 1832e84fe556SmrgPUBLIC PFNEGLDESTROYIMAGEPROC epoxy_eglDestroyImage = epoxy_eglDestroyImage_global_rewrite_ptr; 1833e84fe556Smrg 1834e84fe556SmrgPUBLIC PFNEGLDESTROYIMAGEKHRPROC epoxy_eglDestroyImageKHR = epoxy_eglDestroyImageKHR_global_rewrite_ptr; 1835e84fe556Smrg 1836e84fe556SmrgPUBLIC PFNEGLDESTROYSTREAMKHRPROC epoxy_eglDestroyStreamKHR = epoxy_eglDestroyStreamKHR_global_rewrite_ptr; 1837e84fe556Smrg 1838e84fe556SmrgPUBLIC PFNEGLDESTROYSURFACEPROC epoxy_eglDestroySurface = epoxy_eglDestroySurface_global_rewrite_ptr; 1839e84fe556Smrg 1840e84fe556SmrgPUBLIC PFNEGLDESTROYSYNCPROC epoxy_eglDestroySync = epoxy_eglDestroySync_global_rewrite_ptr; 1841e84fe556Smrg 1842e84fe556SmrgPUBLIC PFNEGLDESTROYSYNCKHRPROC epoxy_eglDestroySyncKHR = epoxy_eglDestroySyncKHR_global_rewrite_ptr; 1843e84fe556Smrg 1844e84fe556SmrgPUBLIC PFNEGLDESTROYSYNCNVPROC epoxy_eglDestroySyncNV = epoxy_eglDestroySyncNV_global_rewrite_ptr; 1845e84fe556Smrg 1846e84fe556SmrgPUBLIC PFNEGLDUPNATIVEFENCEFDANDROIDPROC epoxy_eglDupNativeFenceFDANDROID = epoxy_eglDupNativeFenceFDANDROID_global_rewrite_ptr; 1847e84fe556Smrg 1848e84fe556SmrgPUBLIC PFNEGLEXPORTDMABUFIMAGEMESAPROC epoxy_eglExportDMABUFImageMESA = epoxy_eglExportDMABUFImageMESA_global_rewrite_ptr; 1849e84fe556Smrg 1850e84fe556SmrgPUBLIC PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC epoxy_eglExportDMABUFImageQueryMESA = epoxy_eglExportDMABUFImageQueryMESA_global_rewrite_ptr; 1851e84fe556Smrg 1852e84fe556SmrgPUBLIC PFNEGLEXPORTDRMIMAGEMESAPROC epoxy_eglExportDRMImageMESA = epoxy_eglExportDRMImageMESA_global_rewrite_ptr; 1853e84fe556Smrg 1854e84fe556SmrgPUBLIC PFNEGLFENCENVPROC epoxy_eglFenceNV = epoxy_eglFenceNV_global_rewrite_ptr; 1855e84fe556Smrg 1856e84fe556SmrgPUBLIC PFNEGLGETCONFIGATTRIBPROC epoxy_eglGetConfigAttrib = epoxy_eglGetConfigAttrib_global_rewrite_ptr; 1857e84fe556Smrg 1858e84fe556SmrgPUBLIC PFNEGLGETCONFIGSPROC epoxy_eglGetConfigs = epoxy_eglGetConfigs_global_rewrite_ptr; 1859e84fe556Smrg 1860e84fe556SmrgPUBLIC PFNEGLGETCURRENTCONTEXTPROC epoxy_eglGetCurrentContext = epoxy_eglGetCurrentContext_global_rewrite_ptr; 1861e84fe556Smrg 1862e84fe556SmrgPUBLIC PFNEGLGETCURRENTDISPLAYPROC epoxy_eglGetCurrentDisplay = epoxy_eglGetCurrentDisplay_global_rewrite_ptr; 1863e84fe556Smrg 1864e84fe556SmrgPUBLIC PFNEGLGETCURRENTSURFACEPROC epoxy_eglGetCurrentSurface = epoxy_eglGetCurrentSurface_global_rewrite_ptr; 1865e84fe556Smrg 1866e84fe556SmrgPUBLIC PFNEGLGETDISPLAYPROC epoxy_eglGetDisplay = epoxy_eglGetDisplay_global_rewrite_ptr; 1867e84fe556Smrg 1868e84fe556SmrgPUBLIC PFNEGLGETERRORPROC epoxy_eglGetError = epoxy_eglGetError_global_rewrite_ptr; 1869e84fe556Smrg 1870e84fe556SmrgPUBLIC PFNEGLGETOUTPUTLAYERSEXTPROC epoxy_eglGetOutputLayersEXT = epoxy_eglGetOutputLayersEXT_global_rewrite_ptr; 1871e84fe556Smrg 1872e84fe556SmrgPUBLIC PFNEGLGETOUTPUTPORTSEXTPROC epoxy_eglGetOutputPortsEXT = epoxy_eglGetOutputPortsEXT_global_rewrite_ptr; 1873e84fe556Smrg 1874e84fe556SmrgPUBLIC PFNEGLGETPLATFORMDISPLAYPROC epoxy_eglGetPlatformDisplay = epoxy_eglGetPlatformDisplay_global_rewrite_ptr; 1875e84fe556Smrg 1876e84fe556SmrgPUBLIC PFNEGLGETPLATFORMDISPLAYEXTPROC epoxy_eglGetPlatformDisplayEXT = epoxy_eglGetPlatformDisplayEXT_global_rewrite_ptr; 1877e84fe556Smrg 1878e84fe556SmrgPUBLIC PFNEGLGETPROCADDRESSPROC epoxy_eglGetProcAddress = epoxy_eglGetProcAddress_global_rewrite_ptr; 1879e84fe556Smrg 1880e84fe556SmrgPUBLIC PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC epoxy_eglGetStreamFileDescriptorKHR = epoxy_eglGetStreamFileDescriptorKHR_global_rewrite_ptr; 1881e84fe556Smrg 1882e84fe556SmrgPUBLIC PFNEGLGETSYNCATTRIBPROC epoxy_eglGetSyncAttrib = epoxy_eglGetSyncAttrib_global_rewrite_ptr; 1883e84fe556Smrg 1884e84fe556SmrgPUBLIC PFNEGLGETSYNCATTRIBKHRPROC epoxy_eglGetSyncAttribKHR = epoxy_eglGetSyncAttribKHR_global_rewrite_ptr; 1885e84fe556Smrg 1886e84fe556SmrgPUBLIC PFNEGLGETSYNCATTRIBNVPROC epoxy_eglGetSyncAttribNV = epoxy_eglGetSyncAttribNV_global_rewrite_ptr; 1887e84fe556Smrg 1888e84fe556SmrgPUBLIC PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC epoxy_eglGetSystemTimeFrequencyNV = epoxy_eglGetSystemTimeFrequencyNV_global_rewrite_ptr; 1889e84fe556Smrg 1890e84fe556SmrgPUBLIC PFNEGLGETSYSTEMTIMENVPROC epoxy_eglGetSystemTimeNV = epoxy_eglGetSystemTimeNV_global_rewrite_ptr; 1891e84fe556Smrg 1892e84fe556SmrgPUBLIC PFNEGLINITIALIZEPROC epoxy_eglInitialize = epoxy_eglInitialize_global_rewrite_ptr; 1893e84fe556Smrg 1894e84fe556SmrgPUBLIC PFNEGLLOCKSURFACEKHRPROC epoxy_eglLockSurfaceKHR = epoxy_eglLockSurfaceKHR_global_rewrite_ptr; 1895e84fe556Smrg 1896e84fe556SmrgPUBLIC PFNEGLMAKECURRENTPROC epoxy_eglMakeCurrent = epoxy_eglMakeCurrent_global_rewrite_ptr; 1897e84fe556Smrg 1898e84fe556SmrgPUBLIC PFNEGLOUTPUTLAYERATTRIBEXTPROC epoxy_eglOutputLayerAttribEXT = epoxy_eglOutputLayerAttribEXT_global_rewrite_ptr; 1899e84fe556Smrg 1900e84fe556SmrgPUBLIC PFNEGLOUTPUTPORTATTRIBEXTPROC epoxy_eglOutputPortAttribEXT = epoxy_eglOutputPortAttribEXT_global_rewrite_ptr; 1901e84fe556Smrg 1902e84fe556SmrgPUBLIC PFNEGLPOSTSUBBUFFERNVPROC epoxy_eglPostSubBufferNV = epoxy_eglPostSubBufferNV_global_rewrite_ptr; 1903e84fe556Smrg 1904e84fe556SmrgPUBLIC PFNEGLQUERYAPIPROC epoxy_eglQueryAPI = epoxy_eglQueryAPI_global_rewrite_ptr; 1905e84fe556Smrg 1906e84fe556SmrgPUBLIC PFNEGLQUERYCONTEXTPROC epoxy_eglQueryContext = epoxy_eglQueryContext_global_rewrite_ptr; 1907e84fe556Smrg 1908e84fe556SmrgPUBLIC PFNEGLQUERYDEVICEATTRIBEXTPROC epoxy_eglQueryDeviceAttribEXT = epoxy_eglQueryDeviceAttribEXT_global_rewrite_ptr; 1909e84fe556Smrg 1910e84fe556SmrgPUBLIC PFNEGLQUERYDEVICESTRINGEXTPROC epoxy_eglQueryDeviceStringEXT = epoxy_eglQueryDeviceStringEXT_global_rewrite_ptr; 1911e84fe556Smrg 1912e84fe556SmrgPUBLIC PFNEGLQUERYDEVICESEXTPROC epoxy_eglQueryDevicesEXT = epoxy_eglQueryDevicesEXT_global_rewrite_ptr; 1913e84fe556Smrg 1914e84fe556SmrgPUBLIC PFNEGLQUERYDISPLAYATTRIBEXTPROC epoxy_eglQueryDisplayAttribEXT = epoxy_eglQueryDisplayAttribEXT_global_rewrite_ptr; 1915e84fe556Smrg 1916e84fe556SmrgPUBLIC PFNEGLQUERYNATIVEDISPLAYNVPROC epoxy_eglQueryNativeDisplayNV = epoxy_eglQueryNativeDisplayNV_global_rewrite_ptr; 1917e84fe556Smrg 1918e84fe556SmrgPUBLIC PFNEGLQUERYNATIVEPIXMAPNVPROC epoxy_eglQueryNativePixmapNV = epoxy_eglQueryNativePixmapNV_global_rewrite_ptr; 1919e84fe556Smrg 1920e84fe556SmrgPUBLIC PFNEGLQUERYNATIVEWINDOWNVPROC epoxy_eglQueryNativeWindowNV = epoxy_eglQueryNativeWindowNV_global_rewrite_ptr; 1921e84fe556Smrg 1922e84fe556SmrgPUBLIC PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC epoxy_eglQueryOutputLayerAttribEXT = epoxy_eglQueryOutputLayerAttribEXT_global_rewrite_ptr; 1923e84fe556Smrg 1924e84fe556SmrgPUBLIC PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC epoxy_eglQueryOutputLayerStringEXT = epoxy_eglQueryOutputLayerStringEXT_global_rewrite_ptr; 1925e84fe556Smrg 1926e84fe556SmrgPUBLIC PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC epoxy_eglQueryOutputPortAttribEXT = epoxy_eglQueryOutputPortAttribEXT_global_rewrite_ptr; 1927e84fe556Smrg 1928e84fe556SmrgPUBLIC PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC epoxy_eglQueryOutputPortStringEXT = epoxy_eglQueryOutputPortStringEXT_global_rewrite_ptr; 1929e84fe556Smrg 1930e84fe556SmrgPUBLIC PFNEGLQUERYSTREAMKHRPROC epoxy_eglQueryStreamKHR = epoxy_eglQueryStreamKHR_global_rewrite_ptr; 1931e84fe556Smrg 1932e84fe556SmrgPUBLIC PFNEGLQUERYSTREAMTIMEKHRPROC epoxy_eglQueryStreamTimeKHR = epoxy_eglQueryStreamTimeKHR_global_rewrite_ptr; 1933e84fe556Smrg 1934e84fe556SmrgPUBLIC PFNEGLQUERYSTREAMU64KHRPROC epoxy_eglQueryStreamu64KHR = epoxy_eglQueryStreamu64KHR_global_rewrite_ptr; 1935e84fe556Smrg 1936e84fe556SmrgPUBLIC PFNEGLQUERYSTRINGPROC epoxy_eglQueryString = epoxy_eglQueryString_global_rewrite_ptr; 1937e84fe556Smrg 1938e84fe556SmrgPUBLIC PFNEGLQUERYSURFACEPROC epoxy_eglQuerySurface = epoxy_eglQuerySurface_global_rewrite_ptr; 1939e84fe556Smrg 1940e84fe556SmrgPUBLIC PFNEGLQUERYSURFACE64KHRPROC epoxy_eglQuerySurface64KHR = epoxy_eglQuerySurface64KHR_global_rewrite_ptr; 1941e84fe556Smrg 1942e84fe556SmrgPUBLIC PFNEGLQUERYSURFACEPOINTERANGLEPROC epoxy_eglQuerySurfacePointerANGLE = epoxy_eglQuerySurfacePointerANGLE_global_rewrite_ptr; 1943e84fe556Smrg 1944e84fe556SmrgPUBLIC PFNEGLRELEASETEXIMAGEPROC epoxy_eglReleaseTexImage = epoxy_eglReleaseTexImage_global_rewrite_ptr; 1945e84fe556Smrg 1946e84fe556SmrgPUBLIC PFNEGLRELEASETHREADPROC epoxy_eglReleaseThread = epoxy_eglReleaseThread_global_rewrite_ptr; 1947e84fe556Smrg 1948e84fe556SmrgPUBLIC PFNEGLSETBLOBCACHEFUNCSANDROIDPROC epoxy_eglSetBlobCacheFuncsANDROID = epoxy_eglSetBlobCacheFuncsANDROID_global_rewrite_ptr; 1949e84fe556Smrg 1950e84fe556SmrgPUBLIC PFNEGLSETDAMAGEREGIONKHRPROC epoxy_eglSetDamageRegionKHR = epoxy_eglSetDamageRegionKHR_global_rewrite_ptr; 1951e84fe556Smrg 1952e84fe556SmrgPUBLIC PFNEGLSIGNALSYNCKHRPROC epoxy_eglSignalSyncKHR = epoxy_eglSignalSyncKHR_global_rewrite_ptr; 1953e84fe556Smrg 1954e84fe556SmrgPUBLIC PFNEGLSIGNALSYNCNVPROC epoxy_eglSignalSyncNV = epoxy_eglSignalSyncNV_global_rewrite_ptr; 1955e84fe556Smrg 1956e84fe556SmrgPUBLIC PFNEGLSTREAMATTRIBKHRPROC epoxy_eglStreamAttribKHR = epoxy_eglStreamAttribKHR_global_rewrite_ptr; 1957e84fe556Smrg 1958e84fe556SmrgPUBLIC PFNEGLSTREAMCONSUMERACQUIREKHRPROC epoxy_eglStreamConsumerAcquireKHR = epoxy_eglStreamConsumerAcquireKHR_global_rewrite_ptr; 1959e84fe556Smrg 1960e84fe556SmrgPUBLIC PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC epoxy_eglStreamConsumerGLTextureExternalKHR = epoxy_eglStreamConsumerGLTextureExternalKHR_global_rewrite_ptr; 1961e84fe556Smrg 1962e84fe556SmrgPUBLIC PFNEGLSTREAMCONSUMEROUTPUTEXTPROC epoxy_eglStreamConsumerOutputEXT = epoxy_eglStreamConsumerOutputEXT_global_rewrite_ptr; 1963e84fe556Smrg 1964e84fe556SmrgPUBLIC PFNEGLSTREAMCONSUMERRELEASEKHRPROC epoxy_eglStreamConsumerReleaseKHR = epoxy_eglStreamConsumerReleaseKHR_global_rewrite_ptr; 1965e84fe556Smrg 1966e84fe556SmrgPUBLIC PFNEGLSURFACEATTRIBPROC epoxy_eglSurfaceAttrib = epoxy_eglSurfaceAttrib_global_rewrite_ptr; 1967e84fe556Smrg 1968e84fe556SmrgPUBLIC PFNEGLSWAPBUFFERSPROC epoxy_eglSwapBuffers = epoxy_eglSwapBuffers_global_rewrite_ptr; 1969e84fe556Smrg 1970e84fe556SmrgPUBLIC PFNEGLSWAPBUFFERSREGION2NOKPROC epoxy_eglSwapBuffersRegion2NOK = epoxy_eglSwapBuffersRegion2NOK_global_rewrite_ptr; 1971e84fe556Smrg 1972e84fe556SmrgPUBLIC PFNEGLSWAPBUFFERSREGIONNOKPROC epoxy_eglSwapBuffersRegionNOK = epoxy_eglSwapBuffersRegionNOK_global_rewrite_ptr; 1973e84fe556Smrg 1974e84fe556SmrgPUBLIC PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC epoxy_eglSwapBuffersWithDamageEXT = epoxy_eglSwapBuffersWithDamageEXT_global_rewrite_ptr; 1975e84fe556Smrg 1976e84fe556SmrgPUBLIC PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC epoxy_eglSwapBuffersWithDamageKHR = epoxy_eglSwapBuffersWithDamageKHR_global_rewrite_ptr; 1977e84fe556Smrg 1978e84fe556SmrgPUBLIC PFNEGLSWAPINTERVALPROC epoxy_eglSwapInterval = epoxy_eglSwapInterval_global_rewrite_ptr; 1979e84fe556Smrg 1980e84fe556SmrgPUBLIC PFNEGLTERMINATEPROC epoxy_eglTerminate = epoxy_eglTerminate_global_rewrite_ptr; 1981e84fe556Smrg 1982e84fe556SmrgPUBLIC PFNEGLUNLOCKSURFACEKHRPROC epoxy_eglUnlockSurfaceKHR = epoxy_eglUnlockSurfaceKHR_global_rewrite_ptr; 1983e84fe556Smrg 1984e84fe556SmrgPUBLIC PFNEGLWAITCLIENTPROC epoxy_eglWaitClient = epoxy_eglWaitClient_global_rewrite_ptr; 1985e84fe556Smrg 1986e84fe556SmrgPUBLIC PFNEGLWAITGLPROC epoxy_eglWaitGL = epoxy_eglWaitGL_global_rewrite_ptr; 1987e84fe556Smrg 1988e84fe556SmrgPUBLIC PFNEGLWAITNATIVEPROC epoxy_eglWaitNative = epoxy_eglWaitNative_global_rewrite_ptr; 1989e84fe556Smrg 1990e84fe556SmrgPUBLIC PFNEGLWAITSYNCPROC epoxy_eglWaitSync = epoxy_eglWaitSync_global_rewrite_ptr; 1991e84fe556Smrg 1992e84fe556SmrgPUBLIC PFNEGLWAITSYNCKHRPROC epoxy_eglWaitSyncKHR = epoxy_eglWaitSyncKHR_global_rewrite_ptr; 1993e84fe556Smrg 1994