summaryrefslogtreecommitdiffstats
path: root/third_party/libepoxy/libepoxy/src/egl_generated_dispatch.c
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/libepoxy/libepoxy/src/egl_generated_dispatch.c')
-rw-r--r--third_party/libepoxy/libepoxy/src/egl_generated_dispatch.c5774
1 files changed, 5774 insertions, 0 deletions
diff --git a/third_party/libepoxy/libepoxy/src/egl_generated_dispatch.c b/third_party/libepoxy/libepoxy/src/egl_generated_dispatch.c
new file mode 100644
index 0000000000..c13aa05fee
--- /dev/null
+++ b/third_party/libepoxy/libepoxy/src/egl_generated_dispatch.c
@@ -0,0 +1,5774 @@
+/* GL dispatch code.
+ * This is code-generated from the GL API XML files from Khronos.
+ */
+
+#include "config.h"
+
+#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+
+#include "dispatch_common.h"
+#include "epoxy/egl.h"
+
+#ifdef __GNUC__
+#define EPOXY_NOINLINE __attribute__((noinline))
+#elif defined (_MSC_VER)
+#define EPOXY_NOINLINE __declspec(noinline)
+#endif
+struct dispatch_table {
+ PFNEGLBINDAPIPROC epoxy_eglBindAPI;
+ PFNEGLBINDTEXIMAGEPROC epoxy_eglBindTexImage;
+ PFNEGLCHOOSECONFIGPROC epoxy_eglChooseConfig;
+ PFNEGLCLIENTSIGNALSYNCEXTPROC epoxy_eglClientSignalSyncEXT;
+ PFNEGLCLIENTWAITSYNCPROC epoxy_eglClientWaitSync;
+ PFNEGLCLIENTWAITSYNCKHRPROC epoxy_eglClientWaitSyncKHR;
+ PFNEGLCLIENTWAITSYNCNVPROC epoxy_eglClientWaitSyncNV;
+ PFNEGLCOMPOSITORBINDTEXWINDOWEXTPROC epoxy_eglCompositorBindTexWindowEXT;
+ PFNEGLCOMPOSITORSETCONTEXTATTRIBUTESEXTPROC epoxy_eglCompositorSetContextAttributesEXT;
+ PFNEGLCOMPOSITORSETCONTEXTLISTEXTPROC epoxy_eglCompositorSetContextListEXT;
+ PFNEGLCOMPOSITORSETSIZEEXTPROC epoxy_eglCompositorSetSizeEXT;
+ PFNEGLCOMPOSITORSETWINDOWATTRIBUTESEXTPROC epoxy_eglCompositorSetWindowAttributesEXT;
+ PFNEGLCOMPOSITORSETWINDOWLISTEXTPROC epoxy_eglCompositorSetWindowListEXT;
+ PFNEGLCOMPOSITORSWAPPOLICYEXTPROC epoxy_eglCompositorSwapPolicyEXT;
+ PFNEGLCOPYBUFFERSPROC epoxy_eglCopyBuffers;
+ PFNEGLCREATECONTEXTPROC epoxy_eglCreateContext;
+ PFNEGLCREATEDRMIMAGEMESAPROC epoxy_eglCreateDRMImageMESA;
+ PFNEGLCREATEFENCESYNCNVPROC epoxy_eglCreateFenceSyncNV;
+ PFNEGLCREATEIMAGEPROC epoxy_eglCreateImage;
+ PFNEGLCREATEIMAGEKHRPROC epoxy_eglCreateImageKHR;
+ PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC epoxy_eglCreateNativeClientBufferANDROID;
+ PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC epoxy_eglCreatePbufferFromClientBuffer;
+ PFNEGLCREATEPBUFFERSURFACEPROC epoxy_eglCreatePbufferSurface;
+ PFNEGLCREATEPIXMAPSURFACEPROC epoxy_eglCreatePixmapSurface;
+ PFNEGLCREATEPIXMAPSURFACEHIPROC epoxy_eglCreatePixmapSurfaceHI;
+ PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC epoxy_eglCreatePlatformPixmapSurface;
+ PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC epoxy_eglCreatePlatformPixmapSurfaceEXT;
+ PFNEGLCREATEPLATFORMWINDOWSURFACEPROC epoxy_eglCreatePlatformWindowSurface;
+ PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC epoxy_eglCreatePlatformWindowSurfaceEXT;
+ PFNEGLCREATESTREAMATTRIBKHRPROC epoxy_eglCreateStreamAttribKHR;
+ PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC epoxy_eglCreateStreamFromFileDescriptorKHR;
+ PFNEGLCREATESTREAMKHRPROC epoxy_eglCreateStreamKHR;
+ PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC epoxy_eglCreateStreamProducerSurfaceKHR;
+ PFNEGLCREATESTREAMSYNCNVPROC epoxy_eglCreateStreamSyncNV;
+ PFNEGLCREATESYNCPROC epoxy_eglCreateSync;
+ PFNEGLCREATESYNC64KHRPROC epoxy_eglCreateSync64KHR;
+ PFNEGLCREATESYNCKHRPROC epoxy_eglCreateSyncKHR;
+ PFNEGLCREATEWINDOWSURFACEPROC epoxy_eglCreateWindowSurface;
+ PFNEGLDEBUGMESSAGECONTROLKHRPROC epoxy_eglDebugMessageControlKHR;
+ PFNEGLDESTROYCONTEXTPROC epoxy_eglDestroyContext;
+ PFNEGLDESTROYIMAGEPROC epoxy_eglDestroyImage;
+ PFNEGLDESTROYIMAGEKHRPROC epoxy_eglDestroyImageKHR;
+ PFNEGLDESTROYSTREAMKHRPROC epoxy_eglDestroyStreamKHR;
+ PFNEGLDESTROYSURFACEPROC epoxy_eglDestroySurface;
+ PFNEGLDESTROYSYNCPROC epoxy_eglDestroySync;
+ PFNEGLDESTROYSYNCKHRPROC epoxy_eglDestroySyncKHR;
+ PFNEGLDESTROYSYNCNVPROC epoxy_eglDestroySyncNV;
+ PFNEGLDUPNATIVEFENCEFDANDROIDPROC epoxy_eglDupNativeFenceFDANDROID;
+ PFNEGLEXPORTDMABUFIMAGEMESAPROC epoxy_eglExportDMABUFImageMESA;
+ PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC epoxy_eglExportDMABUFImageQueryMESA;
+ PFNEGLEXPORTDRMIMAGEMESAPROC epoxy_eglExportDRMImageMESA;
+ PFNEGLFENCENVPROC epoxy_eglFenceNV;
+ PFNEGLGETCOMPOSITORTIMINGANDROIDPROC epoxy_eglGetCompositorTimingANDROID;
+ PFNEGLGETCOMPOSITORTIMINGSUPPORTEDANDROIDPROC epoxy_eglGetCompositorTimingSupportedANDROID;
+ PFNEGLGETCONFIGATTRIBPROC epoxy_eglGetConfigAttrib;
+ PFNEGLGETCONFIGSPROC epoxy_eglGetConfigs;
+ PFNEGLGETCURRENTCONTEXTPROC epoxy_eglGetCurrentContext;
+ PFNEGLGETCURRENTDISPLAYPROC epoxy_eglGetCurrentDisplay;
+ PFNEGLGETCURRENTSURFACEPROC epoxy_eglGetCurrentSurface;
+ PFNEGLGETDISPLAYPROC epoxy_eglGetDisplay;
+ PFNEGLGETDISPLAYDRIVERCONFIGPROC epoxy_eglGetDisplayDriverConfig;
+ PFNEGLGETDISPLAYDRIVERNAMEPROC epoxy_eglGetDisplayDriverName;
+ PFNEGLGETERRORPROC epoxy_eglGetError;
+ PFNEGLGETFRAMETIMESTAMPSUPPORTEDANDROIDPROC epoxy_eglGetFrameTimestampSupportedANDROID;
+ PFNEGLGETFRAMETIMESTAMPSANDROIDPROC epoxy_eglGetFrameTimestampsANDROID;
+ PFNEGLGETNATIVECLIENTBUFFERANDROIDPROC epoxy_eglGetNativeClientBufferANDROID;
+ PFNEGLGETNEXTFRAMEIDANDROIDPROC epoxy_eglGetNextFrameIdANDROID;
+ PFNEGLGETOUTPUTLAYERSEXTPROC epoxy_eglGetOutputLayersEXT;
+ PFNEGLGETOUTPUTPORTSEXTPROC epoxy_eglGetOutputPortsEXT;
+ PFNEGLGETPLATFORMDISPLAYPROC epoxy_eglGetPlatformDisplay;
+ PFNEGLGETPLATFORMDISPLAYEXTPROC epoxy_eglGetPlatformDisplayEXT;
+ PFNEGLGETPROCADDRESSPROC epoxy_eglGetProcAddress;
+ PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC epoxy_eglGetStreamFileDescriptorKHR;
+ PFNEGLGETSYNCATTRIBPROC epoxy_eglGetSyncAttrib;
+ PFNEGLGETSYNCATTRIBKHRPROC epoxy_eglGetSyncAttribKHR;
+ PFNEGLGETSYNCATTRIBNVPROC epoxy_eglGetSyncAttribNV;
+ PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC epoxy_eglGetSystemTimeFrequencyNV;
+ PFNEGLGETSYSTEMTIMENVPROC epoxy_eglGetSystemTimeNV;
+ PFNEGLINITIALIZEPROC epoxy_eglInitialize;
+ PFNEGLLABELOBJECTKHRPROC epoxy_eglLabelObjectKHR;
+ PFNEGLLOCKSURFACEKHRPROC epoxy_eglLockSurfaceKHR;
+ PFNEGLMAKECURRENTPROC epoxy_eglMakeCurrent;
+ PFNEGLOUTPUTLAYERATTRIBEXTPROC epoxy_eglOutputLayerAttribEXT;
+ PFNEGLOUTPUTPORTATTRIBEXTPROC epoxy_eglOutputPortAttribEXT;
+ PFNEGLPOSTSUBBUFFERNVPROC epoxy_eglPostSubBufferNV;
+ PFNEGLPRESENTATIONTIMEANDROIDPROC epoxy_eglPresentationTimeANDROID;
+ PFNEGLQUERYAPIPROC epoxy_eglQueryAPI;
+ PFNEGLQUERYCONTEXTPROC epoxy_eglQueryContext;
+ PFNEGLQUERYDEBUGKHRPROC epoxy_eglQueryDebugKHR;
+ PFNEGLQUERYDEVICEATTRIBEXTPROC epoxy_eglQueryDeviceAttribEXT;
+ PFNEGLQUERYDEVICESTRINGEXTPROC epoxy_eglQueryDeviceStringEXT;
+ PFNEGLQUERYDEVICESEXTPROC epoxy_eglQueryDevicesEXT;
+ PFNEGLQUERYDISPLAYATTRIBEXTPROC epoxy_eglQueryDisplayAttribEXT;
+ PFNEGLQUERYDISPLAYATTRIBKHRPROC epoxy_eglQueryDisplayAttribKHR;
+ PFNEGLQUERYDISPLAYATTRIBNVPROC epoxy_eglQueryDisplayAttribNV;
+ PFNEGLQUERYDMABUFFORMATSEXTPROC epoxy_eglQueryDmaBufFormatsEXT;
+ PFNEGLQUERYDMABUFMODIFIERSEXTPROC epoxy_eglQueryDmaBufModifiersEXT;
+ PFNEGLQUERYNATIVEDISPLAYNVPROC epoxy_eglQueryNativeDisplayNV;
+ PFNEGLQUERYNATIVEPIXMAPNVPROC epoxy_eglQueryNativePixmapNV;
+ PFNEGLQUERYNATIVEWINDOWNVPROC epoxy_eglQueryNativeWindowNV;
+ PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC epoxy_eglQueryOutputLayerAttribEXT;
+ PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC epoxy_eglQueryOutputLayerStringEXT;
+ PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC epoxy_eglQueryOutputPortAttribEXT;
+ PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC epoxy_eglQueryOutputPortStringEXT;
+ PFNEGLQUERYSTREAMATTRIBKHRPROC epoxy_eglQueryStreamAttribKHR;
+ PFNEGLQUERYSTREAMKHRPROC epoxy_eglQueryStreamKHR;
+ PFNEGLQUERYSTREAMMETADATANVPROC epoxy_eglQueryStreamMetadataNV;
+ PFNEGLQUERYSTREAMTIMEKHRPROC epoxy_eglQueryStreamTimeKHR;
+ PFNEGLQUERYSTREAMU64KHRPROC epoxy_eglQueryStreamu64KHR;
+ PFNEGLQUERYSTRINGPROC epoxy_eglQueryString;
+ PFNEGLQUERYSURFACEPROC epoxy_eglQuerySurface;
+ PFNEGLQUERYSURFACE64KHRPROC epoxy_eglQuerySurface64KHR;
+ PFNEGLQUERYSURFACEPOINTERANGLEPROC epoxy_eglQuerySurfacePointerANGLE;
+ PFNEGLRELEASETEXIMAGEPROC epoxy_eglReleaseTexImage;
+ PFNEGLRELEASETHREADPROC epoxy_eglReleaseThread;
+ PFNEGLRESETSTREAMNVPROC epoxy_eglResetStreamNV;
+ PFNEGLSETBLOBCACHEFUNCSANDROIDPROC epoxy_eglSetBlobCacheFuncsANDROID;
+ PFNEGLSETDAMAGEREGIONKHRPROC epoxy_eglSetDamageRegionKHR;
+ PFNEGLSETSTREAMATTRIBKHRPROC epoxy_eglSetStreamAttribKHR;
+ PFNEGLSETSTREAMMETADATANVPROC epoxy_eglSetStreamMetadataNV;
+ PFNEGLSIGNALSYNCKHRPROC epoxy_eglSignalSyncKHR;
+ PFNEGLSIGNALSYNCNVPROC epoxy_eglSignalSyncNV;
+ PFNEGLSTREAMATTRIBKHRPROC epoxy_eglStreamAttribKHR;
+ PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC epoxy_eglStreamConsumerAcquireAttribKHR;
+ PFNEGLSTREAMCONSUMERACQUIREKHRPROC epoxy_eglStreamConsumerAcquireKHR;
+ PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC epoxy_eglStreamConsumerGLTextureExternalAttribsNV;
+ PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC epoxy_eglStreamConsumerGLTextureExternalKHR;
+ PFNEGLSTREAMCONSUMEROUTPUTEXTPROC epoxy_eglStreamConsumerOutputEXT;
+ PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC epoxy_eglStreamConsumerReleaseAttribKHR;
+ PFNEGLSTREAMCONSUMERRELEASEKHRPROC epoxy_eglStreamConsumerReleaseKHR;
+ PFNEGLSTREAMFLUSHNVPROC epoxy_eglStreamFlushNV;
+ PFNEGLSURFACEATTRIBPROC epoxy_eglSurfaceAttrib;
+ PFNEGLSWAPBUFFERSPROC epoxy_eglSwapBuffers;
+ PFNEGLSWAPBUFFERSREGION2NOKPROC epoxy_eglSwapBuffersRegion2NOK;
+ PFNEGLSWAPBUFFERSREGIONNOKPROC epoxy_eglSwapBuffersRegionNOK;
+ PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC epoxy_eglSwapBuffersWithDamageEXT;
+ PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC epoxy_eglSwapBuffersWithDamageKHR;
+ PFNEGLSWAPINTERVALPROC epoxy_eglSwapInterval;
+ PFNEGLTERMINATEPROC epoxy_eglTerminate;
+ PFNEGLUNLOCKSURFACEKHRPROC epoxy_eglUnlockSurfaceKHR;
+ PFNEGLUNSIGNALSYNCEXTPROC epoxy_eglUnsignalSyncEXT;
+ PFNEGLWAITCLIENTPROC epoxy_eglWaitClient;
+ PFNEGLWAITGLPROC epoxy_eglWaitGL;
+ PFNEGLWAITNATIVEPROC epoxy_eglWaitNative;
+ PFNEGLWAITSYNCPROC epoxy_eglWaitSync;
+ PFNEGLWAITSYNCKHRPROC epoxy_eglWaitSyncKHR;
+};
+
+#if USING_DISPATCH_TABLE
+static inline struct dispatch_table *
+get_dispatch_table(void);
+
+#endif
+
+enum egl_provider {
+ egl_provider_terminator = 0,
+ PROVIDER_EGL_10,
+ PROVIDER_EGL_11,
+ PROVIDER_EGL_12,
+ PROVIDER_EGL_14,
+ PROVIDER_EGL_15,
+ PROVIDER_EGL_ANDROID_blob_cache,
+ PROVIDER_EGL_ANDROID_create_native_client_buffer,
+ PROVIDER_EGL_ANDROID_get_frame_timestamps,
+ PROVIDER_EGL_ANDROID_get_native_client_buffer,
+ PROVIDER_EGL_ANDROID_native_fence_sync,
+ PROVIDER_EGL_ANDROID_presentation_time,
+ PROVIDER_EGL_ANGLE_query_surface_pointer,
+ PROVIDER_EGL_EXT_client_sync,
+ PROVIDER_EGL_EXT_compositor,
+ PROVIDER_EGL_EXT_device_base,
+ PROVIDER_EGL_EXT_device_enumeration,
+ PROVIDER_EGL_EXT_device_query,
+ PROVIDER_EGL_EXT_image_dma_buf_import_modifiers,
+ PROVIDER_EGL_EXT_output_base,
+ PROVIDER_EGL_EXT_platform_base,
+ PROVIDER_EGL_EXT_stream_consumer_egloutput,
+ PROVIDER_EGL_EXT_swap_buffers_with_damage,
+ PROVIDER_EGL_EXT_sync_reuse,
+ PROVIDER_EGL_HI_clientpixmap,
+ PROVIDER_EGL_KHR_cl_event2,
+ PROVIDER_EGL_KHR_debug,
+ PROVIDER_EGL_KHR_display_reference,
+ PROVIDER_EGL_KHR_fence_sync,
+ PROVIDER_EGL_KHR_image,
+ PROVIDER_EGL_KHR_image_base,
+ PROVIDER_EGL_KHR_lock_surface,
+ PROVIDER_EGL_KHR_lock_surface3,
+ PROVIDER_EGL_KHR_partial_update,
+ PROVIDER_EGL_KHR_reusable_sync,
+ PROVIDER_EGL_KHR_stream,
+ PROVIDER_EGL_KHR_stream_attrib,
+ PROVIDER_EGL_KHR_stream_consumer_gltexture,
+ PROVIDER_EGL_KHR_stream_cross_process_fd,
+ PROVIDER_EGL_KHR_stream_fifo,
+ PROVIDER_EGL_KHR_stream_producer_eglsurface,
+ PROVIDER_EGL_KHR_swap_buffers_with_damage,
+ PROVIDER_EGL_KHR_wait_sync,
+ PROVIDER_EGL_MESA_drm_image,
+ PROVIDER_EGL_MESA_image_dma_buf_export,
+ PROVIDER_EGL_MESA_query_driver,
+ PROVIDER_EGL_NOK_swap_region,
+ PROVIDER_EGL_NOK_swap_region2,
+ PROVIDER_EGL_NV_native_query,
+ PROVIDER_EGL_NV_post_sub_buffer,
+ PROVIDER_EGL_NV_stream_consumer_gltexture_yuv,
+ PROVIDER_EGL_NV_stream_flush,
+ PROVIDER_EGL_NV_stream_metadata,
+ PROVIDER_EGL_NV_stream_reset,
+ PROVIDER_EGL_NV_stream_sync,
+ PROVIDER_EGL_NV_sync,
+ PROVIDER_EGL_NV_system_time,
+} PACKED;
+ENDPACKED
+
+static const char *enum_string =
+ "EGL 10\0"
+ "EGL 11\0"
+ "EGL 12\0"
+ "EGL 14\0"
+ "EGL 15\0"
+ "EGL_ANDROID_blob_cache\0"
+ "EGL_ANDROID_create_native_client_buffer\0"
+ "EGL_ANDROID_get_frame_timestamps\0"
+ "EGL_ANDROID_get_native_client_buffer\0"
+ "EGL_ANDROID_native_fence_sync\0"
+ "EGL_ANDROID_presentation_time\0"
+ "EGL_ANGLE_query_surface_pointer\0"
+ "EGL_EXT_client_sync\0"
+ "EGL_EXT_compositor\0"
+ "EGL_EXT_device_base\0"
+ "EGL_EXT_device_enumeration\0"
+ "EGL_EXT_device_query\0"
+ "EGL_EXT_image_dma_buf_import_modifiers\0"
+ "EGL_EXT_output_base\0"
+ "EGL_EXT_platform_base\0"
+ "EGL_EXT_stream_consumer_egloutput\0"
+ "EGL_EXT_swap_buffers_with_damage\0"
+ "EGL_EXT_sync_reuse\0"
+ "EGL_HI_clientpixmap\0"
+ "EGL_KHR_cl_event2\0"
+ "EGL_KHR_debug\0"
+ "EGL_KHR_display_reference\0"
+ "EGL_KHR_fence_sync\0"
+ "EGL_KHR_image\0"
+ "EGL_KHR_image_base\0"
+ "EGL_KHR_lock_surface\0"
+ "EGL_KHR_lock_surface3\0"
+ "EGL_KHR_partial_update\0"
+ "EGL_KHR_reusable_sync\0"
+ "EGL_KHR_stream\0"
+ "EGL_KHR_stream_attrib\0"
+ "EGL_KHR_stream_consumer_gltexture\0"
+ "EGL_KHR_stream_cross_process_fd\0"
+ "EGL_KHR_stream_fifo\0"
+ "EGL_KHR_stream_producer_eglsurface\0"
+ "EGL_KHR_swap_buffers_with_damage\0"
+ "EGL_KHR_wait_sync\0"
+ "EGL_MESA_drm_image\0"
+ "EGL_MESA_image_dma_buf_export\0"
+ "EGL_MESA_query_driver\0"
+ "EGL_NOK_swap_region\0"
+ "EGL_NOK_swap_region2\0"
+ "EGL_NV_native_query\0"
+ "EGL_NV_post_sub_buffer\0"
+ "EGL_NV_stream_consumer_gltexture_yuv\0"
+ "EGL_NV_stream_flush\0"
+ "EGL_NV_stream_metadata\0"
+ "EGL_NV_stream_reset\0"
+ "EGL_NV_stream_sync\0"
+ "EGL_NV_sync\0"
+ "EGL_NV_system_time\0"
+ ;
+
+static const uint16_t enum_string_offsets[] = {
+ -1, /* egl_provider_terminator, unused */
+ 0, /* EGL 10 */
+ 7, /* EGL 11 */
+ 14, /* EGL 12 */
+ 21, /* EGL 14 */
+ 28, /* EGL 15 */
+ 35, /* EGL_ANDROID_blob_cache */
+ 58, /* EGL_ANDROID_create_native_client_buffer */
+ 98, /* EGL_ANDROID_get_frame_timestamps */
+ 131, /* EGL_ANDROID_get_native_client_buffer */
+ 168, /* EGL_ANDROID_native_fence_sync */
+ 198, /* EGL_ANDROID_presentation_time */
+ 228, /* EGL_ANGLE_query_surface_pointer */
+ 260, /* EGL_EXT_client_sync */
+ 280, /* EGL_EXT_compositor */
+ 299, /* EGL_EXT_device_base */
+ 319, /* EGL_EXT_device_enumeration */
+ 346, /* EGL_EXT_device_query */
+ 367, /* EGL_EXT_image_dma_buf_import_modifiers */
+ 406, /* EGL_EXT_output_base */
+ 426, /* EGL_EXT_platform_base */
+ 448, /* EGL_EXT_stream_consumer_egloutput */
+ 482, /* EGL_EXT_swap_buffers_with_damage */
+ 515, /* EGL_EXT_sync_reuse */
+ 534, /* EGL_HI_clientpixmap */
+ 554, /* EGL_KHR_cl_event2 */
+ 572, /* EGL_KHR_debug */
+ 586, /* EGL_KHR_display_reference */
+ 612, /* EGL_KHR_fence_sync */
+ 631, /* EGL_KHR_image */
+ 645, /* EGL_KHR_image_base */
+ 664, /* EGL_KHR_lock_surface */
+ 685, /* EGL_KHR_lock_surface3 */
+ 707, /* EGL_KHR_partial_update */
+ 730, /* EGL_KHR_reusable_sync */
+ 752, /* EGL_KHR_stream */
+ 767, /* EGL_KHR_stream_attrib */
+ 789, /* EGL_KHR_stream_consumer_gltexture */
+ 823, /* EGL_KHR_stream_cross_process_fd */
+ 855, /* EGL_KHR_stream_fifo */
+ 875, /* EGL_KHR_stream_producer_eglsurface */
+ 910, /* EGL_KHR_swap_buffers_with_damage */
+ 943, /* EGL_KHR_wait_sync */
+ 961, /* EGL_MESA_drm_image */
+ 980, /* EGL_MESA_image_dma_buf_export */
+ 1010, /* EGL_MESA_query_driver */
+ 1032, /* EGL_NOK_swap_region */
+ 1052, /* EGL_NOK_swap_region2 */
+ 1073, /* EGL_NV_native_query */
+ 1093, /* EGL_NV_post_sub_buffer */
+ 1116, /* EGL_NV_stream_consumer_gltexture_yuv */
+ 1153, /* EGL_NV_stream_flush */
+ 1173, /* EGL_NV_stream_metadata */
+ 1196, /* EGL_NV_stream_reset */
+ 1216, /* EGL_NV_stream_sync */
+ 1235, /* EGL_NV_sync */
+ 1247, /* EGL_NV_system_time */
+};
+
+static const char entrypoint_strings[] = {
+ 'e',
+ 'g',
+ 'l',
+ 'B',
+ 'i',
+ 'n',
+ 'd',
+ 'A',
+ 'P',
+ 'I',
+ 0, // eglBindAPI
+ 'e',
+ 'g',
+ 'l',
+ 'B',
+ 'i',
+ 'n',
+ 'd',
+ 'T',
+ 'e',
+ 'x',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 0, // eglBindTexImage
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'h',
+ 'o',
+ 'o',
+ 's',
+ 'e',
+ 'C',
+ 'o',
+ 'n',
+ 'f',
+ 'i',
+ 'g',
+ 0, // eglChooseConfig
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'l',
+ 'i',
+ 'e',
+ 'n',
+ 't',
+ 'S',
+ 'i',
+ 'g',
+ 'n',
+ 'a',
+ 'l',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglClientSignalSyncEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'l',
+ 'i',
+ 'e',
+ 'n',
+ 't',
+ 'W',
+ 'a',
+ 'i',
+ 't',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 0, // eglClientWaitSync
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'l',
+ 'i',
+ 'e',
+ 'n',
+ 't',
+ 'W',
+ 'a',
+ 'i',
+ 't',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglClientWaitSyncKHR
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'l',
+ 'i',
+ 'e',
+ 'n',
+ 't',
+ 'W',
+ 'a',
+ 'i',
+ 't',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'N',
+ 'V',
+ 0, // eglClientWaitSyncNV
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'o',
+ 'm',
+ 'p',
+ 'o',
+ 's',
+ 'i',
+ 't',
+ 'o',
+ 'r',
+ 'B',
+ 'i',
+ 'n',
+ 'd',
+ 'T',
+ 'e',
+ 'x',
+ 'W',
+ 'i',
+ 'n',
+ 'd',
+ 'o',
+ 'w',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglCompositorBindTexWindowEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'o',
+ 'm',
+ 'p',
+ 'o',
+ 's',
+ 'i',
+ 't',
+ 'o',
+ 'r',
+ 'S',
+ 'e',
+ 't',
+ 'C',
+ 'o',
+ 'n',
+ 't',
+ 'e',
+ 'x',
+ 't',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'u',
+ 't',
+ 'e',
+ 's',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglCompositorSetContextAttributesEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'o',
+ 'm',
+ 'p',
+ 'o',
+ 's',
+ 'i',
+ 't',
+ 'o',
+ 'r',
+ 'S',
+ 'e',
+ 't',
+ 'C',
+ 'o',
+ 'n',
+ 't',
+ 'e',
+ 'x',
+ 't',
+ 'L',
+ 'i',
+ 's',
+ 't',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglCompositorSetContextListEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'o',
+ 'm',
+ 'p',
+ 'o',
+ 's',
+ 'i',
+ 't',
+ 'o',
+ 'r',
+ 'S',
+ 'e',
+ 't',
+ 'S',
+ 'i',
+ 'z',
+ 'e',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglCompositorSetSizeEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'o',
+ 'm',
+ 'p',
+ 'o',
+ 's',
+ 'i',
+ 't',
+ 'o',
+ 'r',
+ 'S',
+ 'e',
+ 't',
+ 'W',
+ 'i',
+ 'n',
+ 'd',
+ 'o',
+ 'w',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'u',
+ 't',
+ 'e',
+ 's',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglCompositorSetWindowAttributesEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'o',
+ 'm',
+ 'p',
+ 'o',
+ 's',
+ 'i',
+ 't',
+ 'o',
+ 'r',
+ 'S',
+ 'e',
+ 't',
+ 'W',
+ 'i',
+ 'n',
+ 'd',
+ 'o',
+ 'w',
+ 'L',
+ 'i',
+ 's',
+ 't',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglCompositorSetWindowListEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'o',
+ 'm',
+ 'p',
+ 'o',
+ 's',
+ 'i',
+ 't',
+ 'o',
+ 'r',
+ 'S',
+ 'w',
+ 'a',
+ 'p',
+ 'P',
+ 'o',
+ 'l',
+ 'i',
+ 'c',
+ 'y',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglCompositorSwapPolicyEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'o',
+ 'p',
+ 'y',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 's',
+ 0, // eglCopyBuffers
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'C',
+ 'o',
+ 'n',
+ 't',
+ 'e',
+ 'x',
+ 't',
+ 0, // eglCreateContext
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'D',
+ 'R',
+ 'M',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 'M',
+ 'E',
+ 'S',
+ 'A',
+ 0, // eglCreateDRMImageMESA
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'F',
+ 'e',
+ 'n',
+ 'c',
+ 'e',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'N',
+ 'V',
+ 0, // eglCreateFenceSyncNV
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 0, // eglCreateImage
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglCreateImageKHR
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'N',
+ 'a',
+ 't',
+ 'i',
+ 'v',
+ 'e',
+ 'C',
+ 'l',
+ 'i',
+ 'e',
+ 'n',
+ 't',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglCreateNativeClientBufferANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'P',
+ 'b',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 'F',
+ 'r',
+ 'o',
+ 'm',
+ 'C',
+ 'l',
+ 'i',
+ 'e',
+ 'n',
+ 't',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 0, // eglCreatePbufferFromClientBuffer
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'P',
+ 'b',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 0, // eglCreatePbufferSurface
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'P',
+ 'i',
+ 'x',
+ 'm',
+ 'a',
+ 'p',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 0, // eglCreatePixmapSurface
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'P',
+ 'i',
+ 'x',
+ 'm',
+ 'a',
+ 'p',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 'H',
+ 'I',
+ 0, // eglCreatePixmapSurfaceHI
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'P',
+ 'l',
+ 'a',
+ 't',
+ 'f',
+ 'o',
+ 'r',
+ 'm',
+ 'P',
+ 'i',
+ 'x',
+ 'm',
+ 'a',
+ 'p',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 0, // eglCreatePlatformPixmapSurface
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'P',
+ 'l',
+ 'a',
+ 't',
+ 'f',
+ 'o',
+ 'r',
+ 'm',
+ 'P',
+ 'i',
+ 'x',
+ 'm',
+ 'a',
+ 'p',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglCreatePlatformPixmapSurfaceEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'P',
+ 'l',
+ 'a',
+ 't',
+ 'f',
+ 'o',
+ 'r',
+ 'm',
+ 'W',
+ 'i',
+ 'n',
+ 'd',
+ 'o',
+ 'w',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 0, // eglCreatePlatformWindowSurface
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'P',
+ 'l',
+ 'a',
+ 't',
+ 'f',
+ 'o',
+ 'r',
+ 'm',
+ 'W',
+ 'i',
+ 'n',
+ 'd',
+ 'o',
+ 'w',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglCreatePlatformWindowSurfaceEXT
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglCreateStreamAttribKHR
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'F',
+ 'r',
+ 'o',
+ 'm',
+ 'F',
+ 'i',
+ 'l',
+ 'e',
+ 'D',
+ 'e',
+ 's',
+ 'c',
+ 'r',
+ 'i',
+ 'p',
+ 't',
+ 'o',
+ 'r',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglCreateStreamFromFileDescriptorKHR
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglCreateStreamKHR
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'P',
+ 'r',
+ 'o',
+ 'd',
+ 'u',
+ 'c',
+ 'e',
+ 'r',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglCreateStreamProducerSurfaceKHR
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'N',
+ 'V',
+ 0, // eglCreateStreamSyncNV
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 0, // eglCreateSync
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ '6',
+ '4',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglCreateSync64KHR
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglCreateSyncKHR
+ 'e',
+ 'g',
+ 'l',
+ 'C',
+ 'r',
+ 'e',
+ 'a',
+ 't',
+ 'e',
+ 'W',
+ 'i',
+ 'n',
+ 'd',
+ 'o',
+ 'w',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 0, // eglCreateWindowSurface
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'e',
+ 'b',
+ 'u',
+ 'g',
+ 'M',
+ 'e',
+ 's',
+ 's',
+ 'a',
+ 'g',
+ 'e',
+ 'C',
+ 'o',
+ 'n',
+ 't',
+ 'r',
+ 'o',
+ 'l',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglDebugMessageControlKHR
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'e',
+ 's',
+ 't',
+ 'r',
+ 'o',
+ 'y',
+ 'C',
+ 'o',
+ 'n',
+ 't',
+ 'e',
+ 'x',
+ 't',
+ 0, // eglDestroyContext
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'e',
+ 's',
+ 't',
+ 'r',
+ 'o',
+ 'y',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 0, // eglDestroyImage
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'e',
+ 's',
+ 't',
+ 'r',
+ 'o',
+ 'y',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglDestroyImageKHR
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'e',
+ 's',
+ 't',
+ 'r',
+ 'o',
+ 'y',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglDestroyStreamKHR
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'e',
+ 's',
+ 't',
+ 'r',
+ 'o',
+ 'y',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 0, // eglDestroySurface
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'e',
+ 's',
+ 't',
+ 'r',
+ 'o',
+ 'y',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 0, // eglDestroySync
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'e',
+ 's',
+ 't',
+ 'r',
+ 'o',
+ 'y',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglDestroySyncKHR
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'e',
+ 's',
+ 't',
+ 'r',
+ 'o',
+ 'y',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'N',
+ 'V',
+ 0, // eglDestroySyncNV
+ 'e',
+ 'g',
+ 'l',
+ 'D',
+ 'u',
+ 'p',
+ 'N',
+ 'a',
+ 't',
+ 'i',
+ 'v',
+ 'e',
+ 'F',
+ 'e',
+ 'n',
+ 'c',
+ 'e',
+ 'F',
+ 'D',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglDupNativeFenceFDANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'E',
+ 'x',
+ 'p',
+ 'o',
+ 'r',
+ 't',
+ 'D',
+ 'M',
+ 'A',
+ 'B',
+ 'U',
+ 'F',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 'M',
+ 'E',
+ 'S',
+ 'A',
+ 0, // eglExportDMABUFImageMESA
+ 'e',
+ 'g',
+ 'l',
+ 'E',
+ 'x',
+ 'p',
+ 'o',
+ 'r',
+ 't',
+ 'D',
+ 'M',
+ 'A',
+ 'B',
+ 'U',
+ 'F',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'M',
+ 'E',
+ 'S',
+ 'A',
+ 0, // eglExportDMABUFImageQueryMESA
+ 'e',
+ 'g',
+ 'l',
+ 'E',
+ 'x',
+ 'p',
+ 'o',
+ 'r',
+ 't',
+ 'D',
+ 'R',
+ 'M',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 'M',
+ 'E',
+ 'S',
+ 'A',
+ 0, // eglExportDRMImageMESA
+ 'e',
+ 'g',
+ 'l',
+ 'F',
+ 'e',
+ 'n',
+ 'c',
+ 'e',
+ 'N',
+ 'V',
+ 0, // eglFenceNV
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'C',
+ 'o',
+ 'm',
+ 'p',
+ 'o',
+ 's',
+ 'i',
+ 't',
+ 'o',
+ 'r',
+ 'T',
+ 'i',
+ 'm',
+ 'i',
+ 'n',
+ 'g',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglGetCompositorTimingANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'C',
+ 'o',
+ 'm',
+ 'p',
+ 'o',
+ 's',
+ 'i',
+ 't',
+ 'o',
+ 'r',
+ 'T',
+ 'i',
+ 'm',
+ 'i',
+ 'n',
+ 'g',
+ 'S',
+ 'u',
+ 'p',
+ 'p',
+ 'o',
+ 'r',
+ 't',
+ 'e',
+ 'd',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglGetCompositorTimingSupportedANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'C',
+ 'o',
+ 'n',
+ 'f',
+ 'i',
+ 'g',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 0, // eglGetConfigAttrib
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'C',
+ 'o',
+ 'n',
+ 'f',
+ 'i',
+ 'g',
+ 's',
+ 0, // eglGetConfigs
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'C',
+ 'u',
+ 'r',
+ 'r',
+ 'e',
+ 'n',
+ 't',
+ 'C',
+ 'o',
+ 'n',
+ 't',
+ 'e',
+ 'x',
+ 't',
+ 0, // eglGetCurrentContext
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'C',
+ 'u',
+ 'r',
+ 'r',
+ 'e',
+ 'n',
+ 't',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 0, // eglGetCurrentDisplay
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'C',
+ 'u',
+ 'r',
+ 'r',
+ 'e',
+ 'n',
+ 't',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 0, // eglGetCurrentSurface
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 0, // eglGetDisplay
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 'D',
+ 'r',
+ 'i',
+ 'v',
+ 'e',
+ 'r',
+ 'C',
+ 'o',
+ 'n',
+ 'f',
+ 'i',
+ 'g',
+ 0, // eglGetDisplayDriverConfig
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 'D',
+ 'r',
+ 'i',
+ 'v',
+ 'e',
+ 'r',
+ 'N',
+ 'a',
+ 'm',
+ 'e',
+ 0, // eglGetDisplayDriverName
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'E',
+ 'r',
+ 'r',
+ 'o',
+ 'r',
+ 0, // eglGetError
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'F',
+ 'r',
+ 'a',
+ 'm',
+ 'e',
+ 'T',
+ 'i',
+ 'm',
+ 'e',
+ 's',
+ 't',
+ 'a',
+ 'm',
+ 'p',
+ 'S',
+ 'u',
+ 'p',
+ 'p',
+ 'o',
+ 'r',
+ 't',
+ 'e',
+ 'd',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglGetFrameTimestampSupportedANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'F',
+ 'r',
+ 'a',
+ 'm',
+ 'e',
+ 'T',
+ 'i',
+ 'm',
+ 'e',
+ 's',
+ 't',
+ 'a',
+ 'm',
+ 'p',
+ 's',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglGetFrameTimestampsANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'N',
+ 'a',
+ 't',
+ 'i',
+ 'v',
+ 'e',
+ 'C',
+ 'l',
+ 'i',
+ 'e',
+ 'n',
+ 't',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglGetNativeClientBufferANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'N',
+ 'e',
+ 'x',
+ 't',
+ 'F',
+ 'r',
+ 'a',
+ 'm',
+ 'e',
+ 'I',
+ 'd',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglGetNextFrameIdANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'O',
+ 'u',
+ 't',
+ 'p',
+ 'u',
+ 't',
+ 'L',
+ 'a',
+ 'y',
+ 'e',
+ 'r',
+ 's',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglGetOutputLayersEXT
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'O',
+ 'u',
+ 't',
+ 'p',
+ 'u',
+ 't',
+ 'P',
+ 'o',
+ 'r',
+ 't',
+ 's',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglGetOutputPortsEXT
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'P',
+ 'l',
+ 'a',
+ 't',
+ 'f',
+ 'o',
+ 'r',
+ 'm',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 0, // eglGetPlatformDisplay
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'P',
+ 'l',
+ 'a',
+ 't',
+ 'f',
+ 'o',
+ 'r',
+ 'm',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglGetPlatformDisplayEXT
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'P',
+ 'r',
+ 'o',
+ 'c',
+ 'A',
+ 'd',
+ 'd',
+ 'r',
+ 'e',
+ 's',
+ 's',
+ 0, // eglGetProcAddress
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'F',
+ 'i',
+ 'l',
+ 'e',
+ 'D',
+ 'e',
+ 's',
+ 'c',
+ 'r',
+ 'i',
+ 'p',
+ 't',
+ 'o',
+ 'r',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglGetStreamFileDescriptorKHR
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 0, // eglGetSyncAttrib
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglGetSyncAttribKHR
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'N',
+ 'V',
+ 0, // eglGetSyncAttribNV
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'S',
+ 'y',
+ 's',
+ 't',
+ 'e',
+ 'm',
+ 'T',
+ 'i',
+ 'm',
+ 'e',
+ 'F',
+ 'r',
+ 'e',
+ 'q',
+ 'u',
+ 'e',
+ 'n',
+ 'c',
+ 'y',
+ 'N',
+ 'V',
+ 0, // eglGetSystemTimeFrequencyNV
+ 'e',
+ 'g',
+ 'l',
+ 'G',
+ 'e',
+ 't',
+ 'S',
+ 'y',
+ 's',
+ 't',
+ 'e',
+ 'm',
+ 'T',
+ 'i',
+ 'm',
+ 'e',
+ 'N',
+ 'V',
+ 0, // eglGetSystemTimeNV
+ 'e',
+ 'g',
+ 'l',
+ 'I',
+ 'n',
+ 'i',
+ 't',
+ 'i',
+ 'a',
+ 'l',
+ 'i',
+ 'z',
+ 'e',
+ 0, // eglInitialize
+ 'e',
+ 'g',
+ 'l',
+ 'L',
+ 'a',
+ 'b',
+ 'e',
+ 'l',
+ 'O',
+ 'b',
+ 'j',
+ 'e',
+ 'c',
+ 't',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglLabelObjectKHR
+ 'e',
+ 'g',
+ 'l',
+ 'L',
+ 'o',
+ 'c',
+ 'k',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglLockSurfaceKHR
+ 'e',
+ 'g',
+ 'l',
+ 'M',
+ 'a',
+ 'k',
+ 'e',
+ 'C',
+ 'u',
+ 'r',
+ 'r',
+ 'e',
+ 'n',
+ 't',
+ 0, // eglMakeCurrent
+ 'e',
+ 'g',
+ 'l',
+ 'O',
+ 'u',
+ 't',
+ 'p',
+ 'u',
+ 't',
+ 'L',
+ 'a',
+ 'y',
+ 'e',
+ 'r',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglOutputLayerAttribEXT
+ 'e',
+ 'g',
+ 'l',
+ 'O',
+ 'u',
+ 't',
+ 'p',
+ 'u',
+ 't',
+ 'P',
+ 'o',
+ 'r',
+ 't',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglOutputPortAttribEXT
+ 'e',
+ 'g',
+ 'l',
+ 'P',
+ 'o',
+ 's',
+ 't',
+ 'S',
+ 'u',
+ 'b',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 'N',
+ 'V',
+ 0, // eglPostSubBufferNV
+ 'e',
+ 'g',
+ 'l',
+ 'P',
+ 'r',
+ 'e',
+ 's',
+ 'e',
+ 'n',
+ 't',
+ 'a',
+ 't',
+ 'i',
+ 'o',
+ 'n',
+ 'T',
+ 'i',
+ 'm',
+ 'e',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglPresentationTimeANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'A',
+ 'P',
+ 'I',
+ 0, // eglQueryAPI
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'C',
+ 'o',
+ 'n',
+ 't',
+ 'e',
+ 'x',
+ 't',
+ 0, // eglQueryContext
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'D',
+ 'e',
+ 'b',
+ 'u',
+ 'g',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglQueryDebugKHR
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'D',
+ 'e',
+ 'v',
+ 'i',
+ 'c',
+ 'e',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryDeviceAttribEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'D',
+ 'e',
+ 'v',
+ 'i',
+ 'c',
+ 'e',
+ 'S',
+ 't',
+ 'r',
+ 'i',
+ 'n',
+ 'g',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryDeviceStringEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'D',
+ 'e',
+ 'v',
+ 'i',
+ 'c',
+ 'e',
+ 's',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryDevicesEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryDisplayAttribEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglQueryDisplayAttribKHR
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'N',
+ 'V',
+ 0, // eglQueryDisplayAttribNV
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'D',
+ 'm',
+ 'a',
+ 'B',
+ 'u',
+ 'f',
+ 'F',
+ 'o',
+ 'r',
+ 'm',
+ 'a',
+ 't',
+ 's',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryDmaBufFormatsEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'D',
+ 'm',
+ 'a',
+ 'B',
+ 'u',
+ 'f',
+ 'M',
+ 'o',
+ 'd',
+ 'i',
+ 'f',
+ 'i',
+ 'e',
+ 'r',
+ 's',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryDmaBufModifiersEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'N',
+ 'a',
+ 't',
+ 'i',
+ 'v',
+ 'e',
+ 'D',
+ 'i',
+ 's',
+ 'p',
+ 'l',
+ 'a',
+ 'y',
+ 'N',
+ 'V',
+ 0, // eglQueryNativeDisplayNV
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'N',
+ 'a',
+ 't',
+ 'i',
+ 'v',
+ 'e',
+ 'P',
+ 'i',
+ 'x',
+ 'm',
+ 'a',
+ 'p',
+ 'N',
+ 'V',
+ 0, // eglQueryNativePixmapNV
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'N',
+ 'a',
+ 't',
+ 'i',
+ 'v',
+ 'e',
+ 'W',
+ 'i',
+ 'n',
+ 'd',
+ 'o',
+ 'w',
+ 'N',
+ 'V',
+ 0, // eglQueryNativeWindowNV
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'O',
+ 'u',
+ 't',
+ 'p',
+ 'u',
+ 't',
+ 'L',
+ 'a',
+ 'y',
+ 'e',
+ 'r',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryOutputLayerAttribEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'O',
+ 'u',
+ 't',
+ 'p',
+ 'u',
+ 't',
+ 'L',
+ 'a',
+ 'y',
+ 'e',
+ 'r',
+ 'S',
+ 't',
+ 'r',
+ 'i',
+ 'n',
+ 'g',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryOutputLayerStringEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'O',
+ 'u',
+ 't',
+ 'p',
+ 'u',
+ 't',
+ 'P',
+ 'o',
+ 'r',
+ 't',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryOutputPortAttribEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'O',
+ 'u',
+ 't',
+ 'p',
+ 'u',
+ 't',
+ 'P',
+ 'o',
+ 'r',
+ 't',
+ 'S',
+ 't',
+ 'r',
+ 'i',
+ 'n',
+ 'g',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglQueryOutputPortStringEXT
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglQueryStreamAttribKHR
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglQueryStreamKHR
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'M',
+ 'e',
+ 't',
+ 'a',
+ 'd',
+ 'a',
+ 't',
+ 'a',
+ 'N',
+ 'V',
+ 0, // eglQueryStreamMetadataNV
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'T',
+ 'i',
+ 'm',
+ 'e',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglQueryStreamTimeKHR
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'u',
+ '6',
+ '4',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglQueryStreamu64KHR
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'S',
+ 't',
+ 'r',
+ 'i',
+ 'n',
+ 'g',
+ 0, // eglQueryString
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 0, // eglQuerySurface
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ '6',
+ '4',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglQuerySurface64KHR
+ 'e',
+ 'g',
+ 'l',
+ 'Q',
+ 'u',
+ 'e',
+ 'r',
+ 'y',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 'P',
+ 'o',
+ 'i',
+ 'n',
+ 't',
+ 'e',
+ 'r',
+ 'A',
+ 'N',
+ 'G',
+ 'L',
+ 'E',
+ 0, // eglQuerySurfacePointerANGLE
+ 'e',
+ 'g',
+ 'l',
+ 'R',
+ 'e',
+ 'l',
+ 'e',
+ 'a',
+ 's',
+ 'e',
+ 'T',
+ 'e',
+ 'x',
+ 'I',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 0, // eglReleaseTexImage
+ 'e',
+ 'g',
+ 'l',
+ 'R',
+ 'e',
+ 'l',
+ 'e',
+ 'a',
+ 's',
+ 'e',
+ 'T',
+ 'h',
+ 'r',
+ 'e',
+ 'a',
+ 'd',
+ 0, // eglReleaseThread
+ 'e',
+ 'g',
+ 'l',
+ 'R',
+ 'e',
+ 's',
+ 'e',
+ 't',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'N',
+ 'V',
+ 0, // eglResetStreamNV
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'e',
+ 't',
+ 'B',
+ 'l',
+ 'o',
+ 'b',
+ 'C',
+ 'a',
+ 'c',
+ 'h',
+ 'e',
+ 'F',
+ 'u',
+ 'n',
+ 'c',
+ 's',
+ 'A',
+ 'N',
+ 'D',
+ 'R',
+ 'O',
+ 'I',
+ 'D',
+ 0, // eglSetBlobCacheFuncsANDROID
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'e',
+ 't',
+ 'D',
+ 'a',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 'R',
+ 'e',
+ 'g',
+ 'i',
+ 'o',
+ 'n',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglSetDamageRegionKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'e',
+ 't',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglSetStreamAttribKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'e',
+ 't',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'M',
+ 'e',
+ 't',
+ 'a',
+ 'd',
+ 'a',
+ 't',
+ 'a',
+ 'N',
+ 'V',
+ 0, // eglSetStreamMetadataNV
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'i',
+ 'g',
+ 'n',
+ 'a',
+ 'l',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglSignalSyncKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'i',
+ 'g',
+ 'n',
+ 'a',
+ 'l',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'N',
+ 'V',
+ 0, // eglSignalSyncNV
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglStreamAttribKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'C',
+ 'o',
+ 'n',
+ 's',
+ 'u',
+ 'm',
+ 'e',
+ 'r',
+ 'A',
+ 'c',
+ 'q',
+ 'u',
+ 'i',
+ 'r',
+ 'e',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglStreamConsumerAcquireAttribKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'C',
+ 'o',
+ 'n',
+ 's',
+ 'u',
+ 'm',
+ 'e',
+ 'r',
+ 'A',
+ 'c',
+ 'q',
+ 'u',
+ 'i',
+ 'r',
+ 'e',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglStreamConsumerAcquireKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'C',
+ 'o',
+ 'n',
+ 's',
+ 'u',
+ 'm',
+ 'e',
+ 'r',
+ 'G',
+ 'L',
+ 'T',
+ 'e',
+ 'x',
+ 't',
+ 'u',
+ 'r',
+ 'e',
+ 'E',
+ 'x',
+ 't',
+ 'e',
+ 'r',
+ 'n',
+ 'a',
+ 'l',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 's',
+ 'N',
+ 'V',
+ 0, // eglStreamConsumerGLTextureExternalAttribsNV
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'C',
+ 'o',
+ 'n',
+ 's',
+ 'u',
+ 'm',
+ 'e',
+ 'r',
+ 'G',
+ 'L',
+ 'T',
+ 'e',
+ 'x',
+ 't',
+ 'u',
+ 'r',
+ 'e',
+ 'E',
+ 'x',
+ 't',
+ 'e',
+ 'r',
+ 'n',
+ 'a',
+ 'l',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglStreamConsumerGLTextureExternalKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'C',
+ 'o',
+ 'n',
+ 's',
+ 'u',
+ 'm',
+ 'e',
+ 'r',
+ 'O',
+ 'u',
+ 't',
+ 'p',
+ 'u',
+ 't',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglStreamConsumerOutputEXT
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'C',
+ 'o',
+ 'n',
+ 's',
+ 'u',
+ 'm',
+ 'e',
+ 'r',
+ 'R',
+ 'e',
+ 'l',
+ 'e',
+ 'a',
+ 's',
+ 'e',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglStreamConsumerReleaseAttribKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'C',
+ 'o',
+ 'n',
+ 's',
+ 'u',
+ 'm',
+ 'e',
+ 'r',
+ 'R',
+ 'e',
+ 'l',
+ 'e',
+ 'a',
+ 's',
+ 'e',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglStreamConsumerReleaseKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 't',
+ 'r',
+ 'e',
+ 'a',
+ 'm',
+ 'F',
+ 'l',
+ 'u',
+ 's',
+ 'h',
+ 'N',
+ 'V',
+ 0, // eglStreamFlushNV
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 'A',
+ 't',
+ 't',
+ 'r',
+ 'i',
+ 'b',
+ 0, // eglSurfaceAttrib
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'w',
+ 'a',
+ 'p',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 's',
+ 0, // eglSwapBuffers
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'w',
+ 'a',
+ 'p',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 's',
+ 'R',
+ 'e',
+ 'g',
+ 'i',
+ 'o',
+ 'n',
+ '2',
+ 'N',
+ 'O',
+ 'K',
+ 0, // eglSwapBuffersRegion2NOK
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'w',
+ 'a',
+ 'p',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 's',
+ 'R',
+ 'e',
+ 'g',
+ 'i',
+ 'o',
+ 'n',
+ 'N',
+ 'O',
+ 'K',
+ 0, // eglSwapBuffersRegionNOK
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'w',
+ 'a',
+ 'p',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 's',
+ 'W',
+ 'i',
+ 't',
+ 'h',
+ 'D',
+ 'a',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglSwapBuffersWithDamageEXT
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'w',
+ 'a',
+ 'p',
+ 'B',
+ 'u',
+ 'f',
+ 'f',
+ 'e',
+ 'r',
+ 's',
+ 'W',
+ 'i',
+ 't',
+ 'h',
+ 'D',
+ 'a',
+ 'm',
+ 'a',
+ 'g',
+ 'e',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglSwapBuffersWithDamageKHR
+ 'e',
+ 'g',
+ 'l',
+ 'S',
+ 'w',
+ 'a',
+ 'p',
+ 'I',
+ 'n',
+ 't',
+ 'e',
+ 'r',
+ 'v',
+ 'a',
+ 'l',
+ 0, // eglSwapInterval
+ 'e',
+ 'g',
+ 'l',
+ 'T',
+ 'e',
+ 'r',
+ 'm',
+ 'i',
+ 'n',
+ 'a',
+ 't',
+ 'e',
+ 0, // eglTerminate
+ 'e',
+ 'g',
+ 'l',
+ 'U',
+ 'n',
+ 'l',
+ 'o',
+ 'c',
+ 'k',
+ 'S',
+ 'u',
+ 'r',
+ 'f',
+ 'a',
+ 'c',
+ 'e',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglUnlockSurfaceKHR
+ 'e',
+ 'g',
+ 'l',
+ 'U',
+ 'n',
+ 's',
+ 'i',
+ 'g',
+ 'n',
+ 'a',
+ 'l',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'E',
+ 'X',
+ 'T',
+ 0, // eglUnsignalSyncEXT
+ 'e',
+ 'g',
+ 'l',
+ 'W',
+ 'a',
+ 'i',
+ 't',
+ 'C',
+ 'l',
+ 'i',
+ 'e',
+ 'n',
+ 't',
+ 0, // eglWaitClient
+ 'e',
+ 'g',
+ 'l',
+ 'W',
+ 'a',
+ 'i',
+ 't',
+ 'G',
+ 'L',
+ 0, // eglWaitGL
+ 'e',
+ 'g',
+ 'l',
+ 'W',
+ 'a',
+ 'i',
+ 't',
+ 'N',
+ 'a',
+ 't',
+ 'i',
+ 'v',
+ 'e',
+ 0, // eglWaitNative
+ 'e',
+ 'g',
+ 'l',
+ 'W',
+ 'a',
+ 'i',
+ 't',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 0, // eglWaitSync
+ 'e',
+ 'g',
+ 'l',
+ 'W',
+ 'a',
+ 'i',
+ 't',
+ 'S',
+ 'y',
+ 'n',
+ 'c',
+ 'K',
+ 'H',
+ 'R',
+ 0, // eglWaitSyncKHR
+ 0 };
+
+static void *egl_provider_resolver(const char *name,
+ const enum egl_provider *providers,
+ const uint32_t *entrypoints)
+{
+ int i;
+ for (i = 0; providers[i] != egl_provider_terminator; i++) {
+ const char *provider_name = enum_string + enum_string_offsets[providers[i]];
+ switch (providers[i]) {
+
+ case PROVIDER_EGL_10:
+ if (true)
+ return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_11:
+ if (epoxy_conservative_egl_version() >= 11)
+ return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_12:
+ if (epoxy_conservative_egl_version() >= 12)
+ return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_14:
+ if (epoxy_conservative_egl_version() >= 14)
+ return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_15:
+ if (epoxy_conservative_egl_version() >= 15)
+ return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_ANDROID_blob_cache:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_ANDROID_create_native_client_buffer:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_ANDROID_get_frame_timestamps:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_ANDROID_get_native_client_buffer:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_ANDROID_native_fence_sync:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_ANDROID_presentation_time:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_ANGLE_query_surface_pointer:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_client_sync:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_compositor:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_device_base:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_device_enumeration:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_device_query:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_image_dma_buf_import_modifiers:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_output_base:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_platform_base:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_stream_consumer_egloutput:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_swap_buffers_with_damage:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_EXT_sync_reuse:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_HI_clientpixmap:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_cl_event2:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_debug:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_display_reference:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_fence_sync:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_image:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_image_base:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_lock_surface:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_lock_surface3:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_partial_update:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_reusable_sync:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_stream:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_stream_attrib:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_stream_consumer_gltexture:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_stream_cross_process_fd:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_stream_fifo:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_stream_producer_eglsurface:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_swap_buffers_with_damage:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_KHR_wait_sync:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_MESA_drm_image:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_MESA_image_dma_buf_export:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_MESA_query_driver:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NOK_swap_region:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NOK_swap_region2:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NV_native_query:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NV_post_sub_buffer:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NV_stream_consumer_gltexture_yuv:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NV_stream_flush:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NV_stream_metadata:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NV_stream_reset:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NV_stream_sync:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NV_sync:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case PROVIDER_EGL_NV_system_time:
+ if (epoxy_conservative_has_egl_extension(provider_name))
+ return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
+ break;
+ case egl_provider_terminator:
+ abort(); /* Not reached */
+ }
+ }
+
+ if (epoxy_resolver_failure_handler)
+ return epoxy_resolver_failure_handler(name);
+
+ fprintf(stderr, "No provider of %s found. Requires one of:\n", name);
+ for (i = 0; providers[i] != egl_provider_terminator; i++) {
+ fprintf(stderr, " %s\n", enum_string + enum_string_offsets[providers[i]]);
+ }
+ if (providers[0] == egl_provider_terminator) {
+ fprintf(stderr, " No known providers. This is likely a bug "
+ "in libepoxy code generation\n");
+ }
+ abort();
+}
+
+EPOXY_NOINLINE static void *
+egl_single_resolver(enum egl_provider provider, uint32_t entrypoint_offset);
+
+static void *
+egl_single_resolver(enum egl_provider provider, uint32_t entrypoint_offset)
+{
+ enum egl_provider providers[] = {
+ provider,
+ egl_provider_terminator
+ };
+ return egl_provider_resolver(entrypoint_strings + entrypoint_offset,
+ providers, &entrypoint_offset);
+}
+
+static PFNEGLBINDAPIPROC
+epoxy_eglBindAPI_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_12, 0 /* eglBindAPI */);
+}
+
+static PFNEGLBINDTEXIMAGEPROC
+epoxy_eglBindTexImage_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_11, 11 /* eglBindTexImage */);
+}
+
+static PFNEGLCHOOSECONFIGPROC
+epoxy_eglChooseConfig_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 27 /* eglChooseConfig */);
+}
+
+static PFNEGLCLIENTSIGNALSYNCEXTPROC
+epoxy_eglClientSignalSyncEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_client_sync, 43 /* eglClientSignalSyncEXT */);
+}
+
+static PFNEGLCLIENTWAITSYNCPROC
+epoxy_eglClientWaitSync_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_15,
+ PROVIDER_EGL_KHR_fence_sync,
+ PROVIDER_EGL_KHR_reusable_sync,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 66 /* "eglClientWaitSync" */,
+ 84 /* "eglClientWaitSyncKHR" */,
+ 84 /* "eglClientWaitSyncKHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 66 /* "eglClientWaitSync" */,
+ providers, entrypoints);
+}
+
+static PFNEGLCLIENTWAITSYNCKHRPROC
+epoxy_eglClientWaitSyncKHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_fence_sync,
+ PROVIDER_EGL_KHR_reusable_sync,
+ PROVIDER_EGL_15,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 84 /* "eglClientWaitSyncKHR" */,
+ 84 /* "eglClientWaitSyncKHR" */,
+ 66 /* "eglClientWaitSync" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 84 /* "eglClientWaitSyncKHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLCLIENTWAITSYNCNVPROC
+epoxy_eglClientWaitSyncNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_sync, 105 /* eglClientWaitSyncNV */);
+}
+
+static PFNEGLCOMPOSITORBINDTEXWINDOWEXTPROC
+epoxy_eglCompositorBindTexWindowEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 125 /* eglCompositorBindTexWindowEXT */);
+}
+
+static PFNEGLCOMPOSITORSETCONTEXTATTRIBUTESEXTPROC
+epoxy_eglCompositorSetContextAttributesEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 155 /* eglCompositorSetContextAttributesEXT */);
+}
+
+static PFNEGLCOMPOSITORSETCONTEXTLISTEXTPROC
+epoxy_eglCompositorSetContextListEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 192 /* eglCompositorSetContextListEXT */);
+}
+
+static PFNEGLCOMPOSITORSETSIZEEXTPROC
+epoxy_eglCompositorSetSizeEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 223 /* eglCompositorSetSizeEXT */);
+}
+
+static PFNEGLCOMPOSITORSETWINDOWATTRIBUTESEXTPROC
+epoxy_eglCompositorSetWindowAttributesEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 247 /* eglCompositorSetWindowAttributesEXT */);
+}
+
+static PFNEGLCOMPOSITORSETWINDOWLISTEXTPROC
+epoxy_eglCompositorSetWindowListEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 283 /* eglCompositorSetWindowListEXT */);
+}
+
+static PFNEGLCOMPOSITORSWAPPOLICYEXTPROC
+epoxy_eglCompositorSwapPolicyEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 313 /* eglCompositorSwapPolicyEXT */);
+}
+
+static PFNEGLCOPYBUFFERSPROC
+epoxy_eglCopyBuffers_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 340 /* eglCopyBuffers */);
+}
+
+static PFNEGLCREATECONTEXTPROC
+epoxy_eglCreateContext_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 355 /* eglCreateContext */);
+}
+
+static PFNEGLCREATEDRMIMAGEMESAPROC
+epoxy_eglCreateDRMImageMESA_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_MESA_drm_image, 372 /* eglCreateDRMImageMESA */);
+}
+
+static PFNEGLCREATEFENCESYNCNVPROC
+epoxy_eglCreateFenceSyncNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_sync, 394 /* eglCreateFenceSyncNV */);
+}
+
+static PFNEGLCREATEIMAGEPROC
+epoxy_eglCreateImage_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_15, 415 /* eglCreateImage */);
+}
+
+static PFNEGLCREATEIMAGEKHRPROC
+epoxy_eglCreateImageKHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_image,
+ PROVIDER_EGL_KHR_image_base,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 430 /* "eglCreateImageKHR" */,
+ 430 /* "eglCreateImageKHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 430 /* "eglCreateImageKHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC
+epoxy_eglCreateNativeClientBufferANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_create_native_client_buffer, 448 /* eglCreateNativeClientBufferANDROID */);
+}
+
+static PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC
+epoxy_eglCreatePbufferFromClientBuffer_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_12, 483 /* eglCreatePbufferFromClientBuffer */);
+}
+
+static PFNEGLCREATEPBUFFERSURFACEPROC
+epoxy_eglCreatePbufferSurface_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 516 /* eglCreatePbufferSurface */);
+}
+
+static PFNEGLCREATEPIXMAPSURFACEPROC
+epoxy_eglCreatePixmapSurface_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 540 /* eglCreatePixmapSurface */);
+}
+
+static PFNEGLCREATEPIXMAPSURFACEHIPROC
+epoxy_eglCreatePixmapSurfaceHI_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_HI_clientpixmap, 563 /* eglCreatePixmapSurfaceHI */);
+}
+
+static PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC
+epoxy_eglCreatePlatformPixmapSurface_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_15, 588 /* eglCreatePlatformPixmapSurface */);
+}
+
+static PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC
+epoxy_eglCreatePlatformPixmapSurfaceEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_platform_base, 619 /* eglCreatePlatformPixmapSurfaceEXT */);
+}
+
+static PFNEGLCREATEPLATFORMWINDOWSURFACEPROC
+epoxy_eglCreatePlatformWindowSurface_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_15, 653 /* eglCreatePlatformWindowSurface */);
+}
+
+static PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC
+epoxy_eglCreatePlatformWindowSurfaceEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_platform_base, 684 /* eglCreatePlatformWindowSurfaceEXT */);
+}
+
+static PFNEGLCREATESTREAMATTRIBKHRPROC
+epoxy_eglCreateStreamAttribKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 718 /* eglCreateStreamAttribKHR */);
+}
+
+static PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC
+epoxy_eglCreateStreamFromFileDescriptorKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_cross_process_fd, 743 /* eglCreateStreamFromFileDescriptorKHR */);
+}
+
+static PFNEGLCREATESTREAMKHRPROC
+epoxy_eglCreateStreamKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream, 780 /* eglCreateStreamKHR */);
+}
+
+static PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC
+epoxy_eglCreateStreamProducerSurfaceKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_producer_eglsurface, 799 /* eglCreateStreamProducerSurfaceKHR */);
+}
+
+static PFNEGLCREATESTREAMSYNCNVPROC
+epoxy_eglCreateStreamSyncNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_stream_sync, 833 /* eglCreateStreamSyncNV */);
+}
+
+static PFNEGLCREATESYNCPROC
+epoxy_eglCreateSync_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_15,
+ PROVIDER_EGL_KHR_cl_event2,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 855 /* "eglCreateSync" */,
+ 869 /* "eglCreateSync64KHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 855 /* "eglCreateSync" */,
+ providers, entrypoints);
+}
+
+static PFNEGLCREATESYNC64KHRPROC
+epoxy_eglCreateSync64KHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_cl_event2,
+ PROVIDER_EGL_15,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 869 /* "eglCreateSync64KHR" */,
+ 855 /* "eglCreateSync" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 869 /* "eglCreateSync64KHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLCREATESYNCKHRPROC
+epoxy_eglCreateSyncKHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_fence_sync,
+ PROVIDER_EGL_KHR_reusable_sync,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 888 /* "eglCreateSyncKHR" */,
+ 888 /* "eglCreateSyncKHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 888 /* "eglCreateSyncKHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLCREATEWINDOWSURFACEPROC
+epoxy_eglCreateWindowSurface_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 905 /* eglCreateWindowSurface */);
+}
+
+static PFNEGLDEBUGMESSAGECONTROLKHRPROC
+epoxy_eglDebugMessageControlKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_debug, 928 /* eglDebugMessageControlKHR */);
+}
+
+static PFNEGLDESTROYCONTEXTPROC
+epoxy_eglDestroyContext_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 954 /* eglDestroyContext */);
+}
+
+static PFNEGLDESTROYIMAGEPROC
+epoxy_eglDestroyImage_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_15,
+ PROVIDER_EGL_KHR_image,
+ PROVIDER_EGL_KHR_image_base,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 972 /* "eglDestroyImage" */,
+ 988 /* "eglDestroyImageKHR" */,
+ 988 /* "eglDestroyImageKHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 972 /* "eglDestroyImage" */,
+ providers, entrypoints);
+}
+
+static PFNEGLDESTROYIMAGEKHRPROC
+epoxy_eglDestroyImageKHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_image,
+ PROVIDER_EGL_KHR_image_base,
+ PROVIDER_EGL_15,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 988 /* "eglDestroyImageKHR" */,
+ 988 /* "eglDestroyImageKHR" */,
+ 972 /* "eglDestroyImage" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 988 /* "eglDestroyImageKHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLDESTROYSTREAMKHRPROC
+epoxy_eglDestroyStreamKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream, 1007 /* eglDestroyStreamKHR */);
+}
+
+static PFNEGLDESTROYSURFACEPROC
+epoxy_eglDestroySurface_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1027 /* eglDestroySurface */);
+}
+
+static PFNEGLDESTROYSYNCPROC
+epoxy_eglDestroySync_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_15,
+ PROVIDER_EGL_KHR_fence_sync,
+ PROVIDER_EGL_KHR_reusable_sync,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 1045 /* "eglDestroySync" */,
+ 1060 /* "eglDestroySyncKHR" */,
+ 1060 /* "eglDestroySyncKHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 1045 /* "eglDestroySync" */,
+ providers, entrypoints);
+}
+
+static PFNEGLDESTROYSYNCKHRPROC
+epoxy_eglDestroySyncKHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_fence_sync,
+ PROVIDER_EGL_KHR_reusable_sync,
+ PROVIDER_EGL_15,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 1060 /* "eglDestroySyncKHR" */,
+ 1060 /* "eglDestroySyncKHR" */,
+ 1045 /* "eglDestroySync" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 1060 /* "eglDestroySyncKHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLDESTROYSYNCNVPROC
+epoxy_eglDestroySyncNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_sync, 1078 /* eglDestroySyncNV */);
+}
+
+static PFNEGLDUPNATIVEFENCEFDANDROIDPROC
+epoxy_eglDupNativeFenceFDANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_native_fence_sync, 1095 /* eglDupNativeFenceFDANDROID */);
+}
+
+static PFNEGLEXPORTDMABUFIMAGEMESAPROC
+epoxy_eglExportDMABUFImageMESA_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_MESA_image_dma_buf_export, 1122 /* eglExportDMABUFImageMESA */);
+}
+
+static PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC
+epoxy_eglExportDMABUFImageQueryMESA_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_MESA_image_dma_buf_export, 1147 /* eglExportDMABUFImageQueryMESA */);
+}
+
+static PFNEGLEXPORTDRMIMAGEMESAPROC
+epoxy_eglExportDRMImageMESA_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_MESA_drm_image, 1177 /* eglExportDRMImageMESA */);
+}
+
+static PFNEGLFENCENVPROC
+epoxy_eglFenceNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_sync, 1199 /* eglFenceNV */);
+}
+
+static PFNEGLGETCOMPOSITORTIMINGANDROIDPROC
+epoxy_eglGetCompositorTimingANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1210 /* eglGetCompositorTimingANDROID */);
+}
+
+static PFNEGLGETCOMPOSITORTIMINGSUPPORTEDANDROIDPROC
+epoxy_eglGetCompositorTimingSupportedANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1240 /* eglGetCompositorTimingSupportedANDROID */);
+}
+
+static PFNEGLGETCONFIGATTRIBPROC
+epoxy_eglGetConfigAttrib_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1279 /* eglGetConfigAttrib */);
+}
+
+static PFNEGLGETCONFIGSPROC
+epoxy_eglGetConfigs_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1298 /* eglGetConfigs */);
+}
+
+static PFNEGLGETCURRENTCONTEXTPROC
+epoxy_eglGetCurrentContext_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_14, 1312 /* eglGetCurrentContext */);
+}
+
+static PFNEGLGETCURRENTDISPLAYPROC
+epoxy_eglGetCurrentDisplay_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1333 /* eglGetCurrentDisplay */);
+}
+
+static PFNEGLGETCURRENTSURFACEPROC
+epoxy_eglGetCurrentSurface_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1354 /* eglGetCurrentSurface */);
+}
+
+static PFNEGLGETDISPLAYPROC
+epoxy_eglGetDisplay_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1375 /* eglGetDisplay */);
+}
+
+static PFNEGLGETDISPLAYDRIVERCONFIGPROC
+epoxy_eglGetDisplayDriverConfig_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_MESA_query_driver, 1389 /* eglGetDisplayDriverConfig */);
+}
+
+static PFNEGLGETDISPLAYDRIVERNAMEPROC
+epoxy_eglGetDisplayDriverName_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_MESA_query_driver, 1415 /* eglGetDisplayDriverName */);
+}
+
+static PFNEGLGETERRORPROC
+epoxy_eglGetError_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1439 /* eglGetError */);
+}
+
+static PFNEGLGETFRAMETIMESTAMPSUPPORTEDANDROIDPROC
+epoxy_eglGetFrameTimestampSupportedANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1451 /* eglGetFrameTimestampSupportedANDROID */);
+}
+
+static PFNEGLGETFRAMETIMESTAMPSANDROIDPROC
+epoxy_eglGetFrameTimestampsANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1488 /* eglGetFrameTimestampsANDROID */);
+}
+
+static PFNEGLGETNATIVECLIENTBUFFERANDROIDPROC
+epoxy_eglGetNativeClientBufferANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_get_native_client_buffer, 1517 /* eglGetNativeClientBufferANDROID */);
+}
+
+static PFNEGLGETNEXTFRAMEIDANDROIDPROC
+epoxy_eglGetNextFrameIdANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1549 /* eglGetNextFrameIdANDROID */);
+}
+
+static PFNEGLGETOUTPUTLAYERSEXTPROC
+epoxy_eglGetOutputLayersEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 1574 /* eglGetOutputLayersEXT */);
+}
+
+static PFNEGLGETOUTPUTPORTSEXTPROC
+epoxy_eglGetOutputPortsEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 1596 /* eglGetOutputPortsEXT */);
+}
+
+static PFNEGLGETPLATFORMDISPLAYPROC
+epoxy_eglGetPlatformDisplay_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_15, 1617 /* eglGetPlatformDisplay */);
+}
+
+static PFNEGLGETPLATFORMDISPLAYEXTPROC
+epoxy_eglGetPlatformDisplayEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_platform_base, 1639 /* eglGetPlatformDisplayEXT */);
+}
+
+static PFNEGLGETPROCADDRESSPROC
+epoxy_eglGetProcAddress_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1664 /* eglGetProcAddress */);
+}
+
+static PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC
+epoxy_eglGetStreamFileDescriptorKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_cross_process_fd, 1682 /* eglGetStreamFileDescriptorKHR */);
+}
+
+static PFNEGLGETSYNCATTRIBPROC
+epoxy_eglGetSyncAttrib_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_15, 1712 /* eglGetSyncAttrib */);
+}
+
+static PFNEGLGETSYNCATTRIBKHRPROC
+epoxy_eglGetSyncAttribKHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_fence_sync,
+ PROVIDER_EGL_KHR_reusable_sync,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 1729 /* "eglGetSyncAttribKHR" */,
+ 1729 /* "eglGetSyncAttribKHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 1729 /* "eglGetSyncAttribKHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLGETSYNCATTRIBNVPROC
+epoxy_eglGetSyncAttribNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_sync, 1749 /* eglGetSyncAttribNV */);
+}
+
+static PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC
+epoxy_eglGetSystemTimeFrequencyNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_system_time, 1768 /* eglGetSystemTimeFrequencyNV */);
+}
+
+static PFNEGLGETSYSTEMTIMENVPROC
+epoxy_eglGetSystemTimeNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_system_time, 1796 /* eglGetSystemTimeNV */);
+}
+
+static PFNEGLINITIALIZEPROC
+epoxy_eglInitialize_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1815 /* eglInitialize */);
+}
+
+static PFNEGLLABELOBJECTKHRPROC
+epoxy_eglLabelObjectKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_debug, 1829 /* eglLabelObjectKHR */);
+}
+
+static PFNEGLLOCKSURFACEKHRPROC
+epoxy_eglLockSurfaceKHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_lock_surface,
+ PROVIDER_EGL_KHR_lock_surface3,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 1847 /* "eglLockSurfaceKHR" */,
+ 1847 /* "eglLockSurfaceKHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 1847 /* "eglLockSurfaceKHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLMAKECURRENTPROC
+epoxy_eglMakeCurrent_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1865 /* eglMakeCurrent */);
+}
+
+static PFNEGLOUTPUTLAYERATTRIBEXTPROC
+epoxy_eglOutputLayerAttribEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 1880 /* eglOutputLayerAttribEXT */);
+}
+
+static PFNEGLOUTPUTPORTATTRIBEXTPROC
+epoxy_eglOutputPortAttribEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 1904 /* eglOutputPortAttribEXT */);
+}
+
+static PFNEGLPOSTSUBBUFFERNVPROC
+epoxy_eglPostSubBufferNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_post_sub_buffer, 1927 /* eglPostSubBufferNV */);
+}
+
+static PFNEGLPRESENTATIONTIMEANDROIDPROC
+epoxy_eglPresentationTimeANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_presentation_time, 1946 /* eglPresentationTimeANDROID */);
+}
+
+static PFNEGLQUERYAPIPROC
+epoxy_eglQueryAPI_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_12, 1973 /* eglQueryAPI */);
+}
+
+static PFNEGLQUERYCONTEXTPROC
+epoxy_eglQueryContext_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 1985 /* eglQueryContext */);
+}
+
+static PFNEGLQUERYDEBUGKHRPROC
+epoxy_eglQueryDebugKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_debug, 2001 /* eglQueryDebugKHR */);
+}
+
+static PFNEGLQUERYDEVICEATTRIBEXTPROC
+epoxy_eglQueryDeviceAttribEXT_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_EXT_device_base,
+ PROVIDER_EGL_EXT_device_query,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 2018 /* "eglQueryDeviceAttribEXT" */,
+ 2018 /* "eglQueryDeviceAttribEXT" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 2018 /* "eglQueryDeviceAttribEXT" */,
+ providers, entrypoints);
+}
+
+static PFNEGLQUERYDEVICESTRINGEXTPROC
+epoxy_eglQueryDeviceStringEXT_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_EXT_device_base,
+ PROVIDER_EGL_EXT_device_query,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 2042 /* "eglQueryDeviceStringEXT" */,
+ 2042 /* "eglQueryDeviceStringEXT" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 2042 /* "eglQueryDeviceStringEXT" */,
+ providers, entrypoints);
+}
+
+static PFNEGLQUERYDEVICESEXTPROC
+epoxy_eglQueryDevicesEXT_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_EXT_device_base,
+ PROVIDER_EGL_EXT_device_enumeration,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 2066 /* "eglQueryDevicesEXT" */,
+ 2066 /* "eglQueryDevicesEXT" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 2066 /* "eglQueryDevicesEXT" */,
+ providers, entrypoints);
+}
+
+static PFNEGLQUERYDISPLAYATTRIBEXTPROC
+epoxy_eglQueryDisplayAttribEXT_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_EXT_device_base,
+ PROVIDER_EGL_EXT_device_query,
+ PROVIDER_EGL_KHR_display_reference,
+ PROVIDER_EGL_NV_stream_metadata,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 2085 /* "eglQueryDisplayAttribEXT" */,
+ 2085 /* "eglQueryDisplayAttribEXT" */,
+ 2110 /* "eglQueryDisplayAttribKHR" */,
+ 2135 /* "eglQueryDisplayAttribNV" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 2085 /* "eglQueryDisplayAttribEXT" */,
+ providers, entrypoints);
+}
+
+static PFNEGLQUERYDISPLAYATTRIBKHRPROC
+epoxy_eglQueryDisplayAttribKHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_display_reference,
+ PROVIDER_EGL_EXT_device_base,
+ PROVIDER_EGL_EXT_device_query,
+ PROVIDER_EGL_NV_stream_metadata,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 2110 /* "eglQueryDisplayAttribKHR" */,
+ 2085 /* "eglQueryDisplayAttribEXT" */,
+ 2085 /* "eglQueryDisplayAttribEXT" */,
+ 2135 /* "eglQueryDisplayAttribNV" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 2110 /* "eglQueryDisplayAttribKHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLQUERYDISPLAYATTRIBNVPROC
+epoxy_eglQueryDisplayAttribNV_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_NV_stream_metadata,
+ PROVIDER_EGL_EXT_device_base,
+ PROVIDER_EGL_EXT_device_query,
+ PROVIDER_EGL_KHR_display_reference,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 2135 /* "eglQueryDisplayAttribNV" */,
+ 2085 /* "eglQueryDisplayAttribEXT" */,
+ 2085 /* "eglQueryDisplayAttribEXT" */,
+ 2110 /* "eglQueryDisplayAttribKHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 2135 /* "eglQueryDisplayAttribNV" */,
+ providers, entrypoints);
+}
+
+static PFNEGLQUERYDMABUFFORMATSEXTPROC
+epoxy_eglQueryDmaBufFormatsEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_image_dma_buf_import_modifiers, 2159 /* eglQueryDmaBufFormatsEXT */);
+}
+
+static PFNEGLQUERYDMABUFMODIFIERSEXTPROC
+epoxy_eglQueryDmaBufModifiersEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_image_dma_buf_import_modifiers, 2184 /* eglQueryDmaBufModifiersEXT */);
+}
+
+static PFNEGLQUERYNATIVEDISPLAYNVPROC
+epoxy_eglQueryNativeDisplayNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_native_query, 2211 /* eglQueryNativeDisplayNV */);
+}
+
+static PFNEGLQUERYNATIVEPIXMAPNVPROC
+epoxy_eglQueryNativePixmapNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_native_query, 2235 /* eglQueryNativePixmapNV */);
+}
+
+static PFNEGLQUERYNATIVEWINDOWNVPROC
+epoxy_eglQueryNativeWindowNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_native_query, 2258 /* eglQueryNativeWindowNV */);
+}
+
+static PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC
+epoxy_eglQueryOutputLayerAttribEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 2281 /* eglQueryOutputLayerAttribEXT */);
+}
+
+static PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC
+epoxy_eglQueryOutputLayerStringEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 2310 /* eglQueryOutputLayerStringEXT */);
+}
+
+static PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC
+epoxy_eglQueryOutputPortAttribEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 2339 /* eglQueryOutputPortAttribEXT */);
+}
+
+static PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC
+epoxy_eglQueryOutputPortStringEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 2367 /* eglQueryOutputPortStringEXT */);
+}
+
+static PFNEGLQUERYSTREAMATTRIBKHRPROC
+epoxy_eglQueryStreamAttribKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 2395 /* eglQueryStreamAttribKHR */);
+}
+
+static PFNEGLQUERYSTREAMKHRPROC
+epoxy_eglQueryStreamKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream, 2419 /* eglQueryStreamKHR */);
+}
+
+static PFNEGLQUERYSTREAMMETADATANVPROC
+epoxy_eglQueryStreamMetadataNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_stream_metadata, 2437 /* eglQueryStreamMetadataNV */);
+}
+
+static PFNEGLQUERYSTREAMTIMEKHRPROC
+epoxy_eglQueryStreamTimeKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_fifo, 2462 /* eglQueryStreamTimeKHR */);
+}
+
+static PFNEGLQUERYSTREAMU64KHRPROC
+epoxy_eglQueryStreamu64KHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream, 2484 /* eglQueryStreamu64KHR */);
+}
+
+static PFNEGLQUERYSTRINGPROC
+epoxy_eglQueryString_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 2505 /* eglQueryString */);
+}
+
+static PFNEGLQUERYSURFACEPROC
+epoxy_eglQuerySurface_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 2520 /* eglQuerySurface */);
+}
+
+static PFNEGLQUERYSURFACE64KHRPROC
+epoxy_eglQuerySurface64KHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_lock_surface3, 2536 /* eglQuerySurface64KHR */);
+}
+
+static PFNEGLQUERYSURFACEPOINTERANGLEPROC
+epoxy_eglQuerySurfacePointerANGLE_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANGLE_query_surface_pointer, 2557 /* eglQuerySurfacePointerANGLE */);
+}
+
+static PFNEGLRELEASETEXIMAGEPROC
+epoxy_eglReleaseTexImage_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_11, 2585 /* eglReleaseTexImage */);
+}
+
+static PFNEGLRELEASETHREADPROC
+epoxy_eglReleaseThread_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_12, 2604 /* eglReleaseThread */);
+}
+
+static PFNEGLRESETSTREAMNVPROC
+epoxy_eglResetStreamNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_stream_reset, 2621 /* eglResetStreamNV */);
+}
+
+static PFNEGLSETBLOBCACHEFUNCSANDROIDPROC
+epoxy_eglSetBlobCacheFuncsANDROID_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_ANDROID_blob_cache, 2638 /* eglSetBlobCacheFuncsANDROID */);
+}
+
+static PFNEGLSETDAMAGEREGIONKHRPROC
+epoxy_eglSetDamageRegionKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_partial_update, 2666 /* eglSetDamageRegionKHR */);
+}
+
+static PFNEGLSETSTREAMATTRIBKHRPROC
+epoxy_eglSetStreamAttribKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 2688 /* eglSetStreamAttribKHR */);
+}
+
+static PFNEGLSETSTREAMMETADATANVPROC
+epoxy_eglSetStreamMetadataNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_stream_metadata, 2710 /* eglSetStreamMetadataNV */);
+}
+
+static PFNEGLSIGNALSYNCKHRPROC
+epoxy_eglSignalSyncKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_reusable_sync, 2733 /* eglSignalSyncKHR */);
+}
+
+static PFNEGLSIGNALSYNCNVPROC
+epoxy_eglSignalSyncNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_sync, 2750 /* eglSignalSyncNV */);
+}
+
+static PFNEGLSTREAMATTRIBKHRPROC
+epoxy_eglStreamAttribKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream, 2766 /* eglStreamAttribKHR */);
+}
+
+static PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC
+epoxy_eglStreamConsumerAcquireAttribKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 2785 /* eglStreamConsumerAcquireAttribKHR */);
+}
+
+static PFNEGLSTREAMCONSUMERACQUIREKHRPROC
+epoxy_eglStreamConsumerAcquireKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_consumer_gltexture, 2819 /* eglStreamConsumerAcquireKHR */);
+}
+
+static PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC
+epoxy_eglStreamConsumerGLTextureExternalAttribsNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_stream_consumer_gltexture_yuv, 2847 /* eglStreamConsumerGLTextureExternalAttribsNV */);
+}
+
+static PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC
+epoxy_eglStreamConsumerGLTextureExternalKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_consumer_gltexture, 2891 /* eglStreamConsumerGLTextureExternalKHR */);
+}
+
+static PFNEGLSTREAMCONSUMEROUTPUTEXTPROC
+epoxy_eglStreamConsumerOutputEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_stream_consumer_egloutput, 2929 /* eglStreamConsumerOutputEXT */);
+}
+
+static PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC
+epoxy_eglStreamConsumerReleaseAttribKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 2956 /* eglStreamConsumerReleaseAttribKHR */);
+}
+
+static PFNEGLSTREAMCONSUMERRELEASEKHRPROC
+epoxy_eglStreamConsumerReleaseKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_stream_consumer_gltexture, 2990 /* eglStreamConsumerReleaseKHR */);
+}
+
+static PFNEGLSTREAMFLUSHNVPROC
+epoxy_eglStreamFlushNV_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NV_stream_flush, 3018 /* eglStreamFlushNV */);
+}
+
+static PFNEGLSURFACEATTRIBPROC
+epoxy_eglSurfaceAttrib_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_11, 3035 /* eglSurfaceAttrib */);
+}
+
+static PFNEGLSWAPBUFFERSPROC
+epoxy_eglSwapBuffers_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 3052 /* eglSwapBuffers */);
+}
+
+static PFNEGLSWAPBUFFERSREGION2NOKPROC
+epoxy_eglSwapBuffersRegion2NOK_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NOK_swap_region2, 3067 /* eglSwapBuffersRegion2NOK */);
+}
+
+static PFNEGLSWAPBUFFERSREGIONNOKPROC
+epoxy_eglSwapBuffersRegionNOK_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_NOK_swap_region, 3092 /* eglSwapBuffersRegionNOK */);
+}
+
+static PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC
+epoxy_eglSwapBuffersWithDamageEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_swap_buffers_with_damage, 3116 /* eglSwapBuffersWithDamageEXT */);
+}
+
+static PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC
+epoxy_eglSwapBuffersWithDamageKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_swap_buffers_with_damage, 3144 /* eglSwapBuffersWithDamageKHR */);
+}
+
+static PFNEGLSWAPINTERVALPROC
+epoxy_eglSwapInterval_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_11, 3172 /* eglSwapInterval */);
+}
+
+static PFNEGLTERMINATEPROC
+epoxy_eglTerminate_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 3188 /* eglTerminate */);
+}
+
+static PFNEGLUNLOCKSURFACEKHRPROC
+epoxy_eglUnlockSurfaceKHR_resolver(void)
+{
+ static const enum egl_provider providers[] = {
+ PROVIDER_EGL_KHR_lock_surface,
+ PROVIDER_EGL_KHR_lock_surface3,
+ egl_provider_terminator
+ };
+ static const uint32_t entrypoints[] = {
+ 3201 /* "eglUnlockSurfaceKHR" */,
+ 3201 /* "eglUnlockSurfaceKHR" */,
+ };
+ return egl_provider_resolver(entrypoint_strings + 3201 /* "eglUnlockSurfaceKHR" */,
+ providers, entrypoints);
+}
+
+static PFNEGLUNSIGNALSYNCEXTPROC
+epoxy_eglUnsignalSyncEXT_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_EXT_sync_reuse, 3221 /* eglUnsignalSyncEXT */);
+}
+
+static PFNEGLWAITCLIENTPROC
+epoxy_eglWaitClient_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_12, 3240 /* eglWaitClient */);
+}
+
+static PFNEGLWAITGLPROC
+epoxy_eglWaitGL_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 3254 /* eglWaitGL */);
+}
+
+static PFNEGLWAITNATIVEPROC
+epoxy_eglWaitNative_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_10, 3264 /* eglWaitNative */);
+}
+
+static PFNEGLWAITSYNCPROC
+epoxy_eglWaitSync_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_15, 3278 /* eglWaitSync */);
+}
+
+static PFNEGLWAITSYNCKHRPROC
+epoxy_eglWaitSyncKHR_resolver(void)
+{
+ return egl_single_resolver(PROVIDER_EGL_KHR_wait_sync, 3290 /* eglWaitSyncKHR */);
+}
+
+GEN_THUNKS_RET(EGLBoolean, eglBindAPI, (EGLenum api), (api))
+GEN_THUNKS_RET(EGLBoolean, eglBindTexImage, (EGLDisplay dpy, EGLSurface surface, EGLint buffer), (dpy, surface, buffer))
+GEN_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))
+GEN_THUNKS_RET(EGLBoolean, eglClientSignalSyncEXT, (EGLDisplay dpy, EGLSync sync, const EGLAttrib * attrib_list), (dpy, sync, attrib_list))
+GEN_THUNKS_RET(EGLint, eglClientWaitSync, (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout), (dpy, sync, flags, timeout))
+GEN_THUNKS_RET(EGLint, eglClientWaitSyncKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout), (dpy, sync, flags, timeout))
+GEN_THUNKS_RET(EGLint, eglClientWaitSyncNV, (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout), (sync, flags, timeout))
+GEN_THUNKS_RET(EGLBoolean, eglCompositorBindTexWindowEXT, (EGLint external_win_id), (external_win_id))
+GEN_THUNKS_RET(EGLBoolean, eglCompositorSetContextAttributesEXT, (EGLint external_ref_id, const EGLint * context_attributes, EGLint num_entries), (external_ref_id, context_attributes, num_entries))
+GEN_THUNKS_RET(EGLBoolean, eglCompositorSetContextListEXT, (const EGLint * external_ref_ids, EGLint num_entries), (external_ref_ids, num_entries))
+GEN_THUNKS_RET(EGLBoolean, eglCompositorSetSizeEXT, (EGLint external_win_id, EGLint width, EGLint height), (external_win_id, width, height))
+GEN_THUNKS_RET(EGLBoolean, eglCompositorSetWindowAttributesEXT, (EGLint external_win_id, const EGLint * window_attributes, EGLint num_entries), (external_win_id, window_attributes, num_entries))
+GEN_THUNKS_RET(EGLBoolean, eglCompositorSetWindowListEXT, (EGLint external_ref_id, const EGLint * external_win_ids, EGLint num_entries), (external_ref_id, external_win_ids, num_entries))
+GEN_THUNKS_RET(EGLBoolean, eglCompositorSwapPolicyEXT, (EGLint external_win_id, EGLint policy), (external_win_id, policy))
+GEN_THUNKS_RET(EGLBoolean, eglCopyBuffers, (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target), (dpy, surface, target))
+GEN_THUNKS_RET(EGLContext, eglCreateContext, (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint * attrib_list), (dpy, config, share_context, attrib_list))
+GEN_THUNKS_RET(EGLImageKHR, eglCreateDRMImageMESA, (EGLDisplay dpy, const EGLint * attrib_list), (dpy, attrib_list))
+GEN_THUNKS_RET(EGLSyncNV, eglCreateFenceSyncNV, (EGLDisplay dpy, EGLenum condition, const EGLint * attrib_list), (dpy, condition, attrib_list))
+GEN_THUNKS_RET(EGLImage, eglCreateImage, (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib * attrib_list), (dpy, ctx, target, buffer, attrib_list))
+GEN_THUNKS_RET(EGLImageKHR, eglCreateImageKHR, (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint * attrib_list), (dpy, ctx, target, buffer, attrib_list))
+GEN_THUNKS_RET(EGLClientBuffer, eglCreateNativeClientBufferANDROID, (const EGLint * attrib_list), (attrib_list))
+GEN_THUNKS_RET(EGLSurface, eglCreatePbufferFromClientBuffer, (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint * attrib_list), (dpy, buftype, buffer, config, attrib_list))
+GEN_THUNKS_RET(EGLSurface, eglCreatePbufferSurface, (EGLDisplay dpy, EGLConfig config, const EGLint * attrib_list), (dpy, config, attrib_list))
+GEN_THUNKS_RET(EGLSurface, eglCreatePixmapSurface, (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint * attrib_list), (dpy, config, pixmap, attrib_list))
+GEN_THUNKS_RET(EGLSurface, eglCreatePixmapSurfaceHI, (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI * pixmap), (dpy, config, pixmap))
+GEN_THUNKS_RET(EGLSurface, eglCreatePlatformPixmapSurface, (EGLDisplay dpy, EGLConfig config, void * native_pixmap, const EGLAttrib * attrib_list), (dpy, config, native_pixmap, attrib_list))
+GEN_THUNKS_RET(EGLSurface, eglCreatePlatformPixmapSurfaceEXT, (EGLDisplay dpy, EGLConfig config, void * native_pixmap, const EGLint * attrib_list), (dpy, config, native_pixmap, attrib_list))
+GEN_THUNKS_RET(EGLSurface, eglCreatePlatformWindowSurface, (EGLDisplay dpy, EGLConfig config, void * native_window, const EGLAttrib * attrib_list), (dpy, config, native_window, attrib_list))
+GEN_THUNKS_RET(EGLSurface, eglCreatePlatformWindowSurfaceEXT, (EGLDisplay dpy, EGLConfig config, void * native_window, const EGLint * attrib_list), (dpy, config, native_window, attrib_list))
+GEN_THUNKS_RET(EGLStreamKHR, eglCreateStreamAttribKHR, (EGLDisplay dpy, const EGLAttrib * attrib_list), (dpy, attrib_list))
+GEN_THUNKS_RET(EGLStreamKHR, eglCreateStreamFromFileDescriptorKHR, (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor), (dpy, file_descriptor))
+GEN_THUNKS_RET(EGLStreamKHR, eglCreateStreamKHR, (EGLDisplay dpy, const EGLint * attrib_list), (dpy, attrib_list))
+GEN_THUNKS_RET(EGLSurface, eglCreateStreamProducerSurfaceKHR, (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint * attrib_list), (dpy, config, stream, attrib_list))
+GEN_THUNKS_RET(EGLSyncKHR, eglCreateStreamSyncNV, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum type, const EGLint * attrib_list), (dpy, stream, type, attrib_list))
+GEN_THUNKS_RET(EGLSync, eglCreateSync, (EGLDisplay dpy, EGLenum type, const EGLAttrib * attrib_list), (dpy, type, attrib_list))
+GEN_THUNKS_RET(EGLSyncKHR, eglCreateSync64KHR, (EGLDisplay dpy, EGLenum type, const EGLAttribKHR * attrib_list), (dpy, type, attrib_list))
+GEN_THUNKS_RET(EGLSyncKHR, eglCreateSyncKHR, (EGLDisplay dpy, EGLenum type, const EGLint * attrib_list), (dpy, type, attrib_list))
+GEN_THUNKS_RET(EGLSurface, eglCreateWindowSurface, (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint * attrib_list), (dpy, config, win, attrib_list))
+GEN_THUNKS_RET(EGLint, eglDebugMessageControlKHR, (EGLDEBUGPROCKHR callback, const EGLAttrib * attrib_list), (callback, attrib_list))
+GEN_THUNKS_RET(EGLBoolean, eglDestroyContext, (EGLDisplay dpy, EGLContext ctx), (dpy, ctx))
+GEN_THUNKS_RET(EGLBoolean, eglDestroyImage, (EGLDisplay dpy, EGLImage image), (dpy, image))
+GEN_THUNKS_RET(EGLBoolean, eglDestroyImageKHR, (EGLDisplay dpy, EGLImageKHR image), (dpy, image))
+GEN_THUNKS_RET(EGLBoolean, eglDestroyStreamKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
+GEN_THUNKS_RET(EGLBoolean, eglDestroySurface, (EGLDisplay dpy, EGLSurface surface), (dpy, surface))
+GEN_THUNKS_RET(EGLBoolean, eglDestroySync, (EGLDisplay dpy, EGLSync sync), (dpy, sync))
+GEN_THUNKS_RET(EGLBoolean, eglDestroySyncKHR, (EGLDisplay dpy, EGLSyncKHR sync), (dpy, sync))
+GEN_THUNKS_RET(EGLBoolean, eglDestroySyncNV, (EGLSyncNV sync), (sync))
+GEN_THUNKS_RET(EGLint, eglDupNativeFenceFDANDROID, (EGLDisplay dpy, EGLSyncKHR sync), (dpy, sync))
+GEN_THUNKS_RET(EGLBoolean, eglExportDMABUFImageMESA, (EGLDisplay dpy, EGLImageKHR image, int * fds, EGLint * strides, EGLint * offsets), (dpy, image, fds, strides, offsets))
+GEN_THUNKS_RET(EGLBoolean, eglExportDMABUFImageQueryMESA, (EGLDisplay dpy, EGLImageKHR image, int * fourcc, int * num_planes, EGLuint64KHR * modifiers), (dpy, image, fourcc, num_planes, modifiers))
+GEN_THUNKS_RET(EGLBoolean, eglExportDRMImageMESA, (EGLDisplay dpy, EGLImageKHR image, EGLint * name, EGLint * handle, EGLint * stride), (dpy, image, name, handle, stride))
+GEN_THUNKS_RET(EGLBoolean, eglFenceNV, (EGLSyncNV sync), (sync))
+GEN_THUNKS_RET(EGLBoolean, eglGetCompositorTimingANDROID, (EGLDisplay dpy, EGLSurface surface, EGLint numTimestamps, const EGLint * names, EGLnsecsANDROID * values), (dpy, surface, numTimestamps, names, values))
+GEN_THUNKS_RET(EGLBoolean, eglGetCompositorTimingSupportedANDROID, (EGLDisplay dpy, EGLSurface surface, EGLint name), (dpy, surface, name))
+GEN_THUNKS_RET(EGLBoolean, eglGetConfigAttrib, (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint * value), (dpy, config, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglGetConfigs, (EGLDisplay dpy, EGLConfig * configs, EGLint config_size, EGLint * num_config), (dpy, configs, config_size, num_config))
+GEN_THUNKS_RET(EGLContext, eglGetCurrentContext, (void), ())
+GEN_THUNKS_RET(EGLDisplay, eglGetCurrentDisplay, (void), ())
+GEN_THUNKS_RET(EGLSurface, eglGetCurrentSurface, (EGLint readdraw), (readdraw))
+GEN_THUNKS_RET(EGLDisplay, eglGetDisplay, (EGLNativeDisplayType display_id), (display_id))
+GEN_THUNKS_RET(char *, eglGetDisplayDriverConfig, (EGLDisplay dpy), (dpy))
+GEN_THUNKS_RET(const char *, eglGetDisplayDriverName, (EGLDisplay dpy), (dpy))
+GEN_THUNKS_RET(EGLint, eglGetError, (void), ())
+GEN_THUNKS_RET(EGLBoolean, eglGetFrameTimestampSupportedANDROID, (EGLDisplay dpy, EGLSurface surface, EGLint timestamp), (dpy, surface, timestamp))
+GEN_THUNKS_RET(EGLBoolean, eglGetFrameTimestampsANDROID, (EGLDisplay dpy, EGLSurface surface, EGLuint64KHR frameId, EGLint numTimestamps, const EGLint * timestamps, EGLnsecsANDROID * values), (dpy, surface, frameId, numTimestamps, timestamps, values))
+GEN_THUNKS_RET(EGLClientBuffer, eglGetNativeClientBufferANDROID, (const struct AHardwareBuffer * buffer), (buffer))
+GEN_THUNKS_RET(EGLBoolean, eglGetNextFrameIdANDROID, (EGLDisplay dpy, EGLSurface surface, EGLuint64KHR * frameId), (dpy, surface, frameId))
+GEN_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))
+GEN_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))
+GEN_THUNKS_RET(EGLDisplay, eglGetPlatformDisplay, (EGLenum platform, void * native_display, const EGLAttrib * attrib_list), (platform, native_display, attrib_list))
+GEN_THUNKS_RET(EGLDisplay, eglGetPlatformDisplayEXT, (EGLenum platform, void * native_display, const EGLint * attrib_list), (platform, native_display, attrib_list))
+GEN_THUNKS_RET(__eglMustCastToProperFunctionPointerType, eglGetProcAddress, (const char * procname), (procname))
+GEN_THUNKS_RET(EGLNativeFileDescriptorKHR, eglGetStreamFileDescriptorKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
+GEN_THUNKS_RET(EGLBoolean, eglGetSyncAttrib, (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib * value), (dpy, sync, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglGetSyncAttribKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint * value), (dpy, sync, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglGetSyncAttribNV, (EGLSyncNV sync, EGLint attribute, EGLint * value), (sync, attribute, value))
+GEN_THUNKS_RET(EGLuint64NV, eglGetSystemTimeFrequencyNV, (void), ())
+GEN_THUNKS_RET(EGLuint64NV, eglGetSystemTimeNV, (void), ())
+GEN_THUNKS_RET(EGLBoolean, eglInitialize, (EGLDisplay dpy, EGLint * major, EGLint * minor), (dpy, major, minor))
+GEN_THUNKS_RET(EGLint, eglLabelObjectKHR, (EGLDisplay display, EGLenum objectType, EGLObjectKHR object, EGLLabelKHR label), (display, objectType, object, label))
+GEN_THUNKS_RET(EGLBoolean, eglLockSurfaceKHR, (EGLDisplay dpy, EGLSurface surface, const EGLint * attrib_list), (dpy, surface, attrib_list))
+GEN_THUNKS_RET(EGLBoolean, eglMakeCurrent, (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx), (dpy, draw, read, ctx))
+GEN_THUNKS_RET(EGLBoolean, eglOutputLayerAttribEXT, (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value), (dpy, layer, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglOutputPortAttribEXT, (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value), (dpy, port, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglPostSubBufferNV, (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height), (dpy, surface, x, y, width, height))
+GEN_THUNKS_RET(EGLBoolean, eglPresentationTimeANDROID, (EGLDisplay dpy, EGLSurface surface, EGLnsecsANDROID time), (dpy, surface, time))
+GEN_THUNKS_RET(EGLenum, eglQueryAPI, (void), ())
+GEN_THUNKS_RET(EGLBoolean, eglQueryContext, (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint * value), (dpy, ctx, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglQueryDebugKHR, (EGLint attribute, EGLAttrib * value), (attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglQueryDeviceAttribEXT, (EGLDeviceEXT device, EGLint attribute, EGLAttrib * value), (device, attribute, value))
+GEN_THUNKS_RET(const char *, eglQueryDeviceStringEXT, (EGLDeviceEXT device, EGLint name), (device, name))
+GEN_THUNKS_RET(EGLBoolean, eglQueryDevicesEXT, (EGLint max_devices, EGLDeviceEXT * devices, EGLint * num_devices), (max_devices, devices, num_devices))
+GEN_THUNKS_RET(EGLBoolean, eglQueryDisplayAttribEXT, (EGLDisplay dpy, EGLint attribute, EGLAttrib * value), (dpy, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglQueryDisplayAttribKHR, (EGLDisplay dpy, EGLint name, EGLAttrib * value), (dpy, name, value))
+GEN_THUNKS_RET(EGLBoolean, eglQueryDisplayAttribNV, (EGLDisplay dpy, EGLint attribute, EGLAttrib * value), (dpy, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglQueryDmaBufFormatsEXT, (EGLDisplay dpy, EGLint max_formats, EGLint * formats, EGLint * num_formats), (dpy, max_formats, formats, num_formats))
+GEN_THUNKS_RET(EGLBoolean, eglQueryDmaBufModifiersEXT, (EGLDisplay dpy, EGLint format, EGLint max_modifiers, EGLuint64KHR * modifiers, EGLBoolean * external_only, EGLint * num_modifiers), (dpy, format, max_modifiers, modifiers, external_only, num_modifiers))
+GEN_THUNKS_RET(EGLBoolean, eglQueryNativeDisplayNV, (EGLDisplay dpy, EGLNativeDisplayType * display_id), (dpy, display_id))
+GEN_THUNKS_RET(EGLBoolean, eglQueryNativePixmapNV, (EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType * pixmap), (dpy, surf, pixmap))
+GEN_THUNKS_RET(EGLBoolean, eglQueryNativeWindowNV, (EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType * window), (dpy, surf, window))
+GEN_THUNKS_RET(EGLBoolean, eglQueryOutputLayerAttribEXT, (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib * value), (dpy, layer, attribute, value))
+GEN_THUNKS_RET(const char *, eglQueryOutputLayerStringEXT, (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name), (dpy, layer, name))
+GEN_THUNKS_RET(EGLBoolean, eglQueryOutputPortAttribEXT, (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib * value), (dpy, port, attribute, value))
+GEN_THUNKS_RET(const char *, eglQueryOutputPortStringEXT, (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name), (dpy, port, name))
+GEN_THUNKS_RET(EGLBoolean, eglQueryStreamAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib * value), (dpy, stream, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglQueryStreamKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint * value), (dpy, stream, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglQueryStreamMetadataNV, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum name, EGLint n, EGLint offset, EGLint size, void * data), (dpy, stream, name, n, offset, size, data))
+GEN_THUNKS_RET(EGLBoolean, eglQueryStreamTimeKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR * value), (dpy, stream, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglQueryStreamu64KHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR * value), (dpy, stream, attribute, value))
+GEN_THUNKS_RET(const char *, eglQueryString, (EGLDisplay dpy, EGLint name), (dpy, name))
+GEN_THUNKS_RET(EGLBoolean, eglQuerySurface, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint * value), (dpy, surface, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglQuerySurface64KHR, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR * value), (dpy, surface, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglQuerySurfacePointerANGLE, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void ** value), (dpy, surface, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglReleaseTexImage, (EGLDisplay dpy, EGLSurface surface, EGLint buffer), (dpy, surface, buffer))
+GEN_THUNKS_RET(EGLBoolean, eglReleaseThread, (void), ())
+GEN_THUNKS_RET(EGLBoolean, eglResetStreamNV, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
+GEN_THUNKS(eglSetBlobCacheFuncsANDROID, (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get), (dpy, set, get))
+GEN_THUNKS_RET(EGLBoolean, eglSetDamageRegionKHR, (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects), (dpy, surface, rects, n_rects))
+GEN_THUNKS_RET(EGLBoolean, eglSetStreamAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib value), (dpy, stream, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglSetStreamMetadataNV, (EGLDisplay dpy, EGLStreamKHR stream, EGLint n, EGLint offset, EGLint size, const void * data), (dpy, stream, n, offset, size, data))
+GEN_THUNKS_RET(EGLBoolean, eglSignalSyncKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode), (dpy, sync, mode))
+GEN_THUNKS_RET(EGLBoolean, eglSignalSyncNV, (EGLSyncNV sync, EGLenum mode), (sync, mode))
+GEN_THUNKS_RET(EGLBoolean, eglStreamAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value), (dpy, stream, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerAcquireAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib * attrib_list), (dpy, stream, attrib_list))
+GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerAcquireKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
+GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerGLTextureExternalAttribsNV, (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib * attrib_list), (dpy, stream, attrib_list))
+GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerGLTextureExternalKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
+GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerOutputEXT, (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer), (dpy, stream, layer))
+GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerReleaseAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib * attrib_list), (dpy, stream, attrib_list))
+GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerReleaseKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
+GEN_THUNKS_RET(EGLBoolean, eglStreamFlushNV, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
+GEN_THUNKS_RET(EGLBoolean, eglSurfaceAttrib, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value), (dpy, surface, attribute, value))
+GEN_THUNKS_RET(EGLBoolean, eglSwapBuffers, (EGLDisplay dpy, EGLSurface surface), (dpy, surface))
+GEN_THUNKS_RET(EGLBoolean, eglSwapBuffersRegion2NOK, (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint * rects), (dpy, surface, numRects, rects))
+GEN_THUNKS_RET(EGLBoolean, eglSwapBuffersRegionNOK, (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint * rects), (dpy, surface, numRects, rects))
+GEN_THUNKS_RET(EGLBoolean, eglSwapBuffersWithDamageEXT, (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects), (dpy, surface, rects, n_rects))
+GEN_THUNKS_RET(EGLBoolean, eglSwapBuffersWithDamageKHR, (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects), (dpy, surface, rects, n_rects))
+GEN_THUNKS_RET(EGLBoolean, eglSwapInterval, (EGLDisplay dpy, EGLint interval), (dpy, interval))
+GEN_THUNKS_RET(EGLBoolean, eglTerminate, (EGLDisplay dpy), (dpy))
+GEN_THUNKS_RET(EGLBoolean, eglUnlockSurfaceKHR, (EGLDisplay dpy, EGLSurface surface), (dpy, surface))
+GEN_THUNKS_RET(EGLBoolean, eglUnsignalSyncEXT, (EGLDisplay dpy, EGLSync sync, const EGLAttrib * attrib_list), (dpy, sync, attrib_list))
+GEN_THUNKS_RET(EGLBoolean, eglWaitClient, (void), ())
+GEN_THUNKS_RET(EGLBoolean, eglWaitGL, (void), ())
+GEN_THUNKS_RET(EGLBoolean, eglWaitNative, (EGLint engine), (engine))
+GEN_THUNKS_RET(EGLBoolean, eglWaitSync, (EGLDisplay dpy, EGLSync sync, EGLint flags), (dpy, sync, flags))
+GEN_THUNKS_RET(EGLint, eglWaitSyncKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags), (dpy, sync, flags))
+
+#if USING_DISPATCH_TABLE
+static struct dispatch_table resolver_table = {
+ epoxy_eglBindAPI_dispatch_table_rewrite_ptr, /* eglBindAPI */
+ epoxy_eglBindTexImage_dispatch_table_rewrite_ptr, /* eglBindTexImage */
+ epoxy_eglChooseConfig_dispatch_table_rewrite_ptr, /* eglChooseConfig */
+ epoxy_eglClientSignalSyncEXT_dispatch_table_rewrite_ptr, /* eglClientSignalSyncEXT */
+ epoxy_eglClientWaitSync_dispatch_table_rewrite_ptr, /* eglClientWaitSync */
+ epoxy_eglClientWaitSyncKHR_dispatch_table_rewrite_ptr, /* eglClientWaitSyncKHR */
+ epoxy_eglClientWaitSyncNV_dispatch_table_rewrite_ptr, /* eglClientWaitSyncNV */
+ epoxy_eglCompositorBindTexWindowEXT_dispatch_table_rewrite_ptr, /* eglCompositorBindTexWindowEXT */
+ epoxy_eglCompositorSetContextAttributesEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetContextAttributesEXT */
+ epoxy_eglCompositorSetContextListEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetContextListEXT */
+ epoxy_eglCompositorSetSizeEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetSizeEXT */
+ epoxy_eglCompositorSetWindowAttributesEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetWindowAttributesEXT */
+ epoxy_eglCompositorSetWindowListEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetWindowListEXT */
+ epoxy_eglCompositorSwapPolicyEXT_dispatch_table_rewrite_ptr, /* eglCompositorSwapPolicyEXT */
+ epoxy_eglCopyBuffers_dispatch_table_rewrite_ptr, /* eglCopyBuffers */
+ epoxy_eglCreateContext_dispatch_table_rewrite_ptr, /* eglCreateContext */
+ epoxy_eglCreateDRMImageMESA_dispatch_table_rewrite_ptr, /* eglCreateDRMImageMESA */
+ epoxy_eglCreateFenceSyncNV_dispatch_table_rewrite_ptr, /* eglCreateFenceSyncNV */
+ epoxy_eglCreateImage_dispatch_table_rewrite_ptr, /* eglCreateImage */
+ epoxy_eglCreateImageKHR_dispatch_table_rewrite_ptr, /* eglCreateImageKHR */
+ epoxy_eglCreateNativeClientBufferANDROID_dispatch_table_rewrite_ptr, /* eglCreateNativeClientBufferANDROID */
+ epoxy_eglCreatePbufferFromClientBuffer_dispatch_table_rewrite_ptr, /* eglCreatePbufferFromClientBuffer */
+ epoxy_eglCreatePbufferSurface_dispatch_table_rewrite_ptr, /* eglCreatePbufferSurface */
+ epoxy_eglCreatePixmapSurface_dispatch_table_rewrite_ptr, /* eglCreatePixmapSurface */
+ epoxy_eglCreatePixmapSurfaceHI_dispatch_table_rewrite_ptr, /* eglCreatePixmapSurfaceHI */
+ epoxy_eglCreatePlatformPixmapSurface_dispatch_table_rewrite_ptr, /* eglCreatePlatformPixmapSurface */
+ epoxy_eglCreatePlatformPixmapSurfaceEXT_dispatch_table_rewrite_ptr, /* eglCreatePlatformPixmapSurfaceEXT */
+ epoxy_eglCreatePlatformWindowSurface_dispatch_table_rewrite_ptr, /* eglCreatePlatformWindowSurface */
+ epoxy_eglCreatePlatformWindowSurfaceEXT_dispatch_table_rewrite_ptr, /* eglCreatePlatformWindowSurfaceEXT */
+ epoxy_eglCreateStreamAttribKHR_dispatch_table_rewrite_ptr, /* eglCreateStreamAttribKHR */
+ epoxy_eglCreateStreamFromFileDescriptorKHR_dispatch_table_rewrite_ptr, /* eglCreateStreamFromFileDescriptorKHR */
+ epoxy_eglCreateStreamKHR_dispatch_table_rewrite_ptr, /* eglCreateStreamKHR */
+ epoxy_eglCreateStreamProducerSurfaceKHR_dispatch_table_rewrite_ptr, /* eglCreateStreamProducerSurfaceKHR */
+ epoxy_eglCreateStreamSyncNV_dispatch_table_rewrite_ptr, /* eglCreateStreamSyncNV */
+ epoxy_eglCreateSync_dispatch_table_rewrite_ptr, /* eglCreateSync */
+ epoxy_eglCreateSync64KHR_dispatch_table_rewrite_ptr, /* eglCreateSync64KHR */
+ epoxy_eglCreateSyncKHR_dispatch_table_rewrite_ptr, /* eglCreateSyncKHR */
+ epoxy_eglCreateWindowSurface_dispatch_table_rewrite_ptr, /* eglCreateWindowSurface */
+ epoxy_eglDebugMessageControlKHR_dispatch_table_rewrite_ptr, /* eglDebugMessageControlKHR */
+ epoxy_eglDestroyContext_dispatch_table_rewrite_ptr, /* eglDestroyContext */
+ epoxy_eglDestroyImage_dispatch_table_rewrite_ptr, /* eglDestroyImage */
+ epoxy_eglDestroyImageKHR_dispatch_table_rewrite_ptr, /* eglDestroyImageKHR */
+ epoxy_eglDestroyStreamKHR_dispatch_table_rewrite_ptr, /* eglDestroyStreamKHR */
+ epoxy_eglDestroySurface_dispatch_table_rewrite_ptr, /* eglDestroySurface */
+ epoxy_eglDestroySync_dispatch_table_rewrite_ptr, /* eglDestroySync */
+ epoxy_eglDestroySyncKHR_dispatch_table_rewrite_ptr, /* eglDestroySyncKHR */
+ epoxy_eglDestroySyncNV_dispatch_table_rewrite_ptr, /* eglDestroySyncNV */
+ epoxy_eglDupNativeFenceFDANDROID_dispatch_table_rewrite_ptr, /* eglDupNativeFenceFDANDROID */
+ epoxy_eglExportDMABUFImageMESA_dispatch_table_rewrite_ptr, /* eglExportDMABUFImageMESA */
+ epoxy_eglExportDMABUFImageQueryMESA_dispatch_table_rewrite_ptr, /* eglExportDMABUFImageQueryMESA */
+ epoxy_eglExportDRMImageMESA_dispatch_table_rewrite_ptr, /* eglExportDRMImageMESA */
+ epoxy_eglFenceNV_dispatch_table_rewrite_ptr, /* eglFenceNV */
+ epoxy_eglGetCompositorTimingANDROID_dispatch_table_rewrite_ptr, /* eglGetCompositorTimingANDROID */
+ epoxy_eglGetCompositorTimingSupportedANDROID_dispatch_table_rewrite_ptr, /* eglGetCompositorTimingSupportedANDROID */
+ epoxy_eglGetConfigAttrib_dispatch_table_rewrite_ptr, /* eglGetConfigAttrib */
+ epoxy_eglGetConfigs_dispatch_table_rewrite_ptr, /* eglGetConfigs */
+ epoxy_eglGetCurrentContext_dispatch_table_rewrite_ptr, /* eglGetCurrentContext */
+ epoxy_eglGetCurrentDisplay_dispatch_table_rewrite_ptr, /* eglGetCurrentDisplay */
+ epoxy_eglGetCurrentSurface_dispatch_table_rewrite_ptr, /* eglGetCurrentSurface */
+ epoxy_eglGetDisplay_dispatch_table_rewrite_ptr, /* eglGetDisplay */
+ epoxy_eglGetDisplayDriverConfig_dispatch_table_rewrite_ptr, /* eglGetDisplayDriverConfig */
+ epoxy_eglGetDisplayDriverName_dispatch_table_rewrite_ptr, /* eglGetDisplayDriverName */
+ epoxy_eglGetError_dispatch_table_rewrite_ptr, /* eglGetError */
+ epoxy_eglGetFrameTimestampSupportedANDROID_dispatch_table_rewrite_ptr, /* eglGetFrameTimestampSupportedANDROID */
+ epoxy_eglGetFrameTimestampsANDROID_dispatch_table_rewrite_ptr, /* eglGetFrameTimestampsANDROID */
+ epoxy_eglGetNativeClientBufferANDROID_dispatch_table_rewrite_ptr, /* eglGetNativeClientBufferANDROID */
+ epoxy_eglGetNextFrameIdANDROID_dispatch_table_rewrite_ptr, /* eglGetNextFrameIdANDROID */
+ epoxy_eglGetOutputLayersEXT_dispatch_table_rewrite_ptr, /* eglGetOutputLayersEXT */
+ epoxy_eglGetOutputPortsEXT_dispatch_table_rewrite_ptr, /* eglGetOutputPortsEXT */
+ epoxy_eglGetPlatformDisplay_dispatch_table_rewrite_ptr, /* eglGetPlatformDisplay */
+ epoxy_eglGetPlatformDisplayEXT_dispatch_table_rewrite_ptr, /* eglGetPlatformDisplayEXT */
+ epoxy_eglGetProcAddress_dispatch_table_rewrite_ptr, /* eglGetProcAddress */
+ epoxy_eglGetStreamFileDescriptorKHR_dispatch_table_rewrite_ptr, /* eglGetStreamFileDescriptorKHR */
+ epoxy_eglGetSyncAttrib_dispatch_table_rewrite_ptr, /* eglGetSyncAttrib */
+ epoxy_eglGetSyncAttribKHR_dispatch_table_rewrite_ptr, /* eglGetSyncAttribKHR */
+ epoxy_eglGetSyncAttribNV_dispatch_table_rewrite_ptr, /* eglGetSyncAttribNV */
+ epoxy_eglGetSystemTimeFrequencyNV_dispatch_table_rewrite_ptr, /* eglGetSystemTimeFrequencyNV */
+ epoxy_eglGetSystemTimeNV_dispatch_table_rewrite_ptr, /* eglGetSystemTimeNV */
+ epoxy_eglInitialize_dispatch_table_rewrite_ptr, /* eglInitialize */
+ epoxy_eglLabelObjectKHR_dispatch_table_rewrite_ptr, /* eglLabelObjectKHR */
+ epoxy_eglLockSurfaceKHR_dispatch_table_rewrite_ptr, /* eglLockSurfaceKHR */
+ epoxy_eglMakeCurrent_dispatch_table_rewrite_ptr, /* eglMakeCurrent */
+ epoxy_eglOutputLayerAttribEXT_dispatch_table_rewrite_ptr, /* eglOutputLayerAttribEXT */
+ epoxy_eglOutputPortAttribEXT_dispatch_table_rewrite_ptr, /* eglOutputPortAttribEXT */
+ epoxy_eglPostSubBufferNV_dispatch_table_rewrite_ptr, /* eglPostSubBufferNV */
+ epoxy_eglPresentationTimeANDROID_dispatch_table_rewrite_ptr, /* eglPresentationTimeANDROID */
+ epoxy_eglQueryAPI_dispatch_table_rewrite_ptr, /* eglQueryAPI */
+ epoxy_eglQueryContext_dispatch_table_rewrite_ptr, /* eglQueryContext */
+ epoxy_eglQueryDebugKHR_dispatch_table_rewrite_ptr, /* eglQueryDebugKHR */
+ epoxy_eglQueryDeviceAttribEXT_dispatch_table_rewrite_ptr, /* eglQueryDeviceAttribEXT */
+ epoxy_eglQueryDeviceStringEXT_dispatch_table_rewrite_ptr, /* eglQueryDeviceStringEXT */
+ epoxy_eglQueryDevicesEXT_dispatch_table_rewrite_ptr, /* eglQueryDevicesEXT */
+ epoxy_eglQueryDisplayAttribEXT_dispatch_table_rewrite_ptr, /* eglQueryDisplayAttribEXT */
+ epoxy_eglQueryDisplayAttribKHR_dispatch_table_rewrite_ptr, /* eglQueryDisplayAttribKHR */
+ epoxy_eglQueryDisplayAttribNV_dispatch_table_rewrite_ptr, /* eglQueryDisplayAttribNV */
+ epoxy_eglQueryDmaBufFormatsEXT_dispatch_table_rewrite_ptr, /* eglQueryDmaBufFormatsEXT */
+ epoxy_eglQueryDmaBufModifiersEXT_dispatch_table_rewrite_ptr, /* eglQueryDmaBufModifiersEXT */
+ epoxy_eglQueryNativeDisplayNV_dispatch_table_rewrite_ptr, /* eglQueryNativeDisplayNV */
+ epoxy_eglQueryNativePixmapNV_dispatch_table_rewrite_ptr, /* eglQueryNativePixmapNV */
+ epoxy_eglQueryNativeWindowNV_dispatch_table_rewrite_ptr, /* eglQueryNativeWindowNV */
+ epoxy_eglQueryOutputLayerAttribEXT_dispatch_table_rewrite_ptr, /* eglQueryOutputLayerAttribEXT */
+ epoxy_eglQueryOutputLayerStringEXT_dispatch_table_rewrite_ptr, /* eglQueryOutputLayerStringEXT */
+ epoxy_eglQueryOutputPortAttribEXT_dispatch_table_rewrite_ptr, /* eglQueryOutputPortAttribEXT */
+ epoxy_eglQueryOutputPortStringEXT_dispatch_table_rewrite_ptr, /* eglQueryOutputPortStringEXT */
+ epoxy_eglQueryStreamAttribKHR_dispatch_table_rewrite_ptr, /* eglQueryStreamAttribKHR */
+ epoxy_eglQueryStreamKHR_dispatch_table_rewrite_ptr, /* eglQueryStreamKHR */
+ epoxy_eglQueryStreamMetadataNV_dispatch_table_rewrite_ptr, /* eglQueryStreamMetadataNV */
+ epoxy_eglQueryStreamTimeKHR_dispatch_table_rewrite_ptr, /* eglQueryStreamTimeKHR */
+ epoxy_eglQueryStreamu64KHR_dispatch_table_rewrite_ptr, /* eglQueryStreamu64KHR */
+ epoxy_eglQueryString_dispatch_table_rewrite_ptr, /* eglQueryString */
+ epoxy_eglQuerySurface_dispatch_table_rewrite_ptr, /* eglQuerySurface */
+ epoxy_eglQuerySurface64KHR_dispatch_table_rewrite_ptr, /* eglQuerySurface64KHR */
+ epoxy_eglQuerySurfacePointerANGLE_dispatch_table_rewrite_ptr, /* eglQuerySurfacePointerANGLE */
+ epoxy_eglReleaseTexImage_dispatch_table_rewrite_ptr, /* eglReleaseTexImage */
+ epoxy_eglReleaseThread_dispatch_table_rewrite_ptr, /* eglReleaseThread */
+ epoxy_eglResetStreamNV_dispatch_table_rewrite_ptr, /* eglResetStreamNV */
+ epoxy_eglSetBlobCacheFuncsANDROID_dispatch_table_rewrite_ptr, /* eglSetBlobCacheFuncsANDROID */
+ epoxy_eglSetDamageRegionKHR_dispatch_table_rewrite_ptr, /* eglSetDamageRegionKHR */
+ epoxy_eglSetStreamAttribKHR_dispatch_table_rewrite_ptr, /* eglSetStreamAttribKHR */
+ epoxy_eglSetStreamMetadataNV_dispatch_table_rewrite_ptr, /* eglSetStreamMetadataNV */
+ epoxy_eglSignalSyncKHR_dispatch_table_rewrite_ptr, /* eglSignalSyncKHR */
+ epoxy_eglSignalSyncNV_dispatch_table_rewrite_ptr, /* eglSignalSyncNV */
+ epoxy_eglStreamAttribKHR_dispatch_table_rewrite_ptr, /* eglStreamAttribKHR */
+ epoxy_eglStreamConsumerAcquireAttribKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerAcquireAttribKHR */
+ epoxy_eglStreamConsumerAcquireKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerAcquireKHR */
+ epoxy_eglStreamConsumerGLTextureExternalAttribsNV_dispatch_table_rewrite_ptr, /* eglStreamConsumerGLTextureExternalAttribsNV */
+ epoxy_eglStreamConsumerGLTextureExternalKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerGLTextureExternalKHR */
+ epoxy_eglStreamConsumerOutputEXT_dispatch_table_rewrite_ptr, /* eglStreamConsumerOutputEXT */
+ epoxy_eglStreamConsumerReleaseAttribKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerReleaseAttribKHR */
+ epoxy_eglStreamConsumerReleaseKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerReleaseKHR */
+ epoxy_eglStreamFlushNV_dispatch_table_rewrite_ptr, /* eglStreamFlushNV */
+ epoxy_eglSurfaceAttrib_dispatch_table_rewrite_ptr, /* eglSurfaceAttrib */
+ epoxy_eglSwapBuffers_dispatch_table_rewrite_ptr, /* eglSwapBuffers */
+ epoxy_eglSwapBuffersRegion2NOK_dispatch_table_rewrite_ptr, /* eglSwapBuffersRegion2NOK */
+ epoxy_eglSwapBuffersRegionNOK_dispatch_table_rewrite_ptr, /* eglSwapBuffersRegionNOK */
+ epoxy_eglSwapBuffersWithDamageEXT_dispatch_table_rewrite_ptr, /* eglSwapBuffersWithDamageEXT */
+ epoxy_eglSwapBuffersWithDamageKHR_dispatch_table_rewrite_ptr, /* eglSwapBuffersWithDamageKHR */
+ epoxy_eglSwapInterval_dispatch_table_rewrite_ptr, /* eglSwapInterval */
+ epoxy_eglTerminate_dispatch_table_rewrite_ptr, /* eglTerminate */
+ epoxy_eglUnlockSurfaceKHR_dispatch_table_rewrite_ptr, /* eglUnlockSurfaceKHR */
+ epoxy_eglUnsignalSyncEXT_dispatch_table_rewrite_ptr, /* eglUnsignalSyncEXT */
+ epoxy_eglWaitClient_dispatch_table_rewrite_ptr, /* eglWaitClient */
+ epoxy_eglWaitGL_dispatch_table_rewrite_ptr, /* eglWaitGL */
+ epoxy_eglWaitNative_dispatch_table_rewrite_ptr, /* eglWaitNative */
+ epoxy_eglWaitSync_dispatch_table_rewrite_ptr, /* eglWaitSync */
+ epoxy_eglWaitSyncKHR_dispatch_table_rewrite_ptr, /* eglWaitSyncKHR */
+};
+
+uint32_t egl_tls_index;
+uint32_t egl_tls_size = sizeof(struct dispatch_table);
+
+static inline struct dispatch_table *
+get_dispatch_table(void)
+{
+ return TlsGetValue(egl_tls_index);
+}
+
+void
+egl_init_dispatch_table(void)
+{
+ struct dispatch_table *dispatch_table = get_dispatch_table();
+ memcpy(dispatch_table, &resolver_table, sizeof(resolver_table));
+}
+
+void
+egl_switch_to_dispatch_table(void)
+{
+ epoxy_eglBindAPI = epoxy_eglBindAPI_dispatch_table_thunk;
+ epoxy_eglBindTexImage = epoxy_eglBindTexImage_dispatch_table_thunk;
+ epoxy_eglChooseConfig = epoxy_eglChooseConfig_dispatch_table_thunk;
+ epoxy_eglClientSignalSyncEXT = epoxy_eglClientSignalSyncEXT_dispatch_table_thunk;
+ epoxy_eglClientWaitSync = epoxy_eglClientWaitSync_dispatch_table_thunk;
+ epoxy_eglClientWaitSyncKHR = epoxy_eglClientWaitSyncKHR_dispatch_table_thunk;
+ epoxy_eglClientWaitSyncNV = epoxy_eglClientWaitSyncNV_dispatch_table_thunk;
+ epoxy_eglCompositorBindTexWindowEXT = epoxy_eglCompositorBindTexWindowEXT_dispatch_table_thunk;
+ epoxy_eglCompositorSetContextAttributesEXT = epoxy_eglCompositorSetContextAttributesEXT_dispatch_table_thunk;
+ epoxy_eglCompositorSetContextListEXT = epoxy_eglCompositorSetContextListEXT_dispatch_table_thunk;
+ epoxy_eglCompositorSetSizeEXT = epoxy_eglCompositorSetSizeEXT_dispatch_table_thunk;
+ epoxy_eglCompositorSetWindowAttributesEXT = epoxy_eglCompositorSetWindowAttributesEXT_dispatch_table_thunk;
+ epoxy_eglCompositorSetWindowListEXT = epoxy_eglCompositorSetWindowListEXT_dispatch_table_thunk;
+ epoxy_eglCompositorSwapPolicyEXT = epoxy_eglCompositorSwapPolicyEXT_dispatch_table_thunk;
+ epoxy_eglCopyBuffers = epoxy_eglCopyBuffers_dispatch_table_thunk;
+ epoxy_eglCreateContext = epoxy_eglCreateContext_dispatch_table_thunk;
+ epoxy_eglCreateDRMImageMESA = epoxy_eglCreateDRMImageMESA_dispatch_table_thunk;
+ epoxy_eglCreateFenceSyncNV = epoxy_eglCreateFenceSyncNV_dispatch_table_thunk;
+ epoxy_eglCreateImage = epoxy_eglCreateImage_dispatch_table_thunk;
+ epoxy_eglCreateImageKHR = epoxy_eglCreateImageKHR_dispatch_table_thunk;
+ epoxy_eglCreateNativeClientBufferANDROID = epoxy_eglCreateNativeClientBufferANDROID_dispatch_table_thunk;
+ epoxy_eglCreatePbufferFromClientBuffer = epoxy_eglCreatePbufferFromClientBuffer_dispatch_table_thunk;
+ epoxy_eglCreatePbufferSurface = epoxy_eglCreatePbufferSurface_dispatch_table_thunk;
+ epoxy_eglCreatePixmapSurface = epoxy_eglCreatePixmapSurface_dispatch_table_thunk;
+ epoxy_eglCreatePixmapSurfaceHI = epoxy_eglCreatePixmapSurfaceHI_dispatch_table_thunk;
+ epoxy_eglCreatePlatformPixmapSurface = epoxy_eglCreatePlatformPixmapSurface_dispatch_table_thunk;
+ epoxy_eglCreatePlatformPixmapSurfaceEXT = epoxy_eglCreatePlatformPixmapSurfaceEXT_dispatch_table_thunk;
+ epoxy_eglCreatePlatformWindowSurface = epoxy_eglCreatePlatformWindowSurface_dispatch_table_thunk;
+ epoxy_eglCreatePlatformWindowSurfaceEXT = epoxy_eglCreatePlatformWindowSurfaceEXT_dispatch_table_thunk;
+ epoxy_eglCreateStreamAttribKHR = epoxy_eglCreateStreamAttribKHR_dispatch_table_thunk;
+ epoxy_eglCreateStreamFromFileDescriptorKHR = epoxy_eglCreateStreamFromFileDescriptorKHR_dispatch_table_thunk;
+ epoxy_eglCreateStreamKHR = epoxy_eglCreateStreamKHR_dispatch_table_thunk;
+ epoxy_eglCreateStreamProducerSurfaceKHR = epoxy_eglCreateStreamProducerSurfaceKHR_dispatch_table_thunk;
+ epoxy_eglCreateStreamSyncNV = epoxy_eglCreateStreamSyncNV_dispatch_table_thunk;
+ epoxy_eglCreateSync = epoxy_eglCreateSync_dispatch_table_thunk;
+ epoxy_eglCreateSync64KHR = epoxy_eglCreateSync64KHR_dispatch_table_thunk;
+ epoxy_eglCreateSyncKHR = epoxy_eglCreateSyncKHR_dispatch_table_thunk;
+ epoxy_eglCreateWindowSurface = epoxy_eglCreateWindowSurface_dispatch_table_thunk;
+ epoxy_eglDebugMessageControlKHR = epoxy_eglDebugMessageControlKHR_dispatch_table_thunk;
+ epoxy_eglDestroyContext = epoxy_eglDestroyContext_dispatch_table_thunk;
+ epoxy_eglDestroyImage = epoxy_eglDestroyImage_dispatch_table_thunk;
+ epoxy_eglDestroyImageKHR = epoxy_eglDestroyImageKHR_dispatch_table_thunk;
+ epoxy_eglDestroyStreamKHR = epoxy_eglDestroyStreamKHR_dispatch_table_thunk;
+ epoxy_eglDestroySurface = epoxy_eglDestroySurface_dispatch_table_thunk;
+ epoxy_eglDestroySync = epoxy_eglDestroySync_dispatch_table_thunk;
+ epoxy_eglDestroySyncKHR = epoxy_eglDestroySyncKHR_dispatch_table_thunk;
+ epoxy_eglDestroySyncNV = epoxy_eglDestroySyncNV_dispatch_table_thunk;
+ epoxy_eglDupNativeFenceFDANDROID = epoxy_eglDupNativeFenceFDANDROID_dispatch_table_thunk;
+ epoxy_eglExportDMABUFImageMESA = epoxy_eglExportDMABUFImageMESA_dispatch_table_thunk;
+ epoxy_eglExportDMABUFImageQueryMESA = epoxy_eglExportDMABUFImageQueryMESA_dispatch_table_thunk;
+ epoxy_eglExportDRMImageMESA = epoxy_eglExportDRMImageMESA_dispatch_table_thunk;
+ epoxy_eglFenceNV = epoxy_eglFenceNV_dispatch_table_thunk;
+ epoxy_eglGetCompositorTimingANDROID = epoxy_eglGetCompositorTimingANDROID_dispatch_table_thunk;
+ epoxy_eglGetCompositorTimingSupportedANDROID = epoxy_eglGetCompositorTimingSupportedANDROID_dispatch_table_thunk;
+ epoxy_eglGetConfigAttrib = epoxy_eglGetConfigAttrib_dispatch_table_thunk;
+ epoxy_eglGetConfigs = epoxy_eglGetConfigs_dispatch_table_thunk;
+ epoxy_eglGetCurrentContext = epoxy_eglGetCurrentContext_dispatch_table_thunk;
+ epoxy_eglGetCurrentDisplay = epoxy_eglGetCurrentDisplay_dispatch_table_thunk;
+ epoxy_eglGetCurrentSurface = epoxy_eglGetCurrentSurface_dispatch_table_thunk;
+ epoxy_eglGetDisplay = epoxy_eglGetDisplay_dispatch_table_thunk;
+ epoxy_eglGetDisplayDriverConfig = epoxy_eglGetDisplayDriverConfig_dispatch_table_thunk;
+ epoxy_eglGetDisplayDriverName = epoxy_eglGetDisplayDriverName_dispatch_table_thunk;
+ epoxy_eglGetError = epoxy_eglGetError_dispatch_table_thunk;
+ epoxy_eglGetFrameTimestampSupportedANDROID = epoxy_eglGetFrameTimestampSupportedANDROID_dispatch_table_thunk;
+ epoxy_eglGetFrameTimestampsANDROID = epoxy_eglGetFrameTimestampsANDROID_dispatch_table_thunk;
+ epoxy_eglGetNativeClientBufferANDROID = epoxy_eglGetNativeClientBufferANDROID_dispatch_table_thunk;
+ epoxy_eglGetNextFrameIdANDROID = epoxy_eglGetNextFrameIdANDROID_dispatch_table_thunk;
+ epoxy_eglGetOutputLayersEXT = epoxy_eglGetOutputLayersEXT_dispatch_table_thunk;
+ epoxy_eglGetOutputPortsEXT = epoxy_eglGetOutputPortsEXT_dispatch_table_thunk;
+ epoxy_eglGetPlatformDisplay = epoxy_eglGetPlatformDisplay_dispatch_table_thunk;
+ epoxy_eglGetPlatformDisplayEXT = epoxy_eglGetPlatformDisplayEXT_dispatch_table_thunk;
+ epoxy_eglGetProcAddress = epoxy_eglGetProcAddress_dispatch_table_thunk;
+ epoxy_eglGetStreamFileDescriptorKHR = epoxy_eglGetStreamFileDescriptorKHR_dispatch_table_thunk;
+ epoxy_eglGetSyncAttrib = epoxy_eglGetSyncAttrib_dispatch_table_thunk;
+ epoxy_eglGetSyncAttribKHR = epoxy_eglGetSyncAttribKHR_dispatch_table_thunk;
+ epoxy_eglGetSyncAttribNV = epoxy_eglGetSyncAttribNV_dispatch_table_thunk;
+ epoxy_eglGetSystemTimeFrequencyNV = epoxy_eglGetSystemTimeFrequencyNV_dispatch_table_thunk;
+ epoxy_eglGetSystemTimeNV = epoxy_eglGetSystemTimeNV_dispatch_table_thunk;
+ epoxy_eglInitialize = epoxy_eglInitialize_dispatch_table_thunk;
+ epoxy_eglLabelObjectKHR = epoxy_eglLabelObjectKHR_dispatch_table_thunk;
+ epoxy_eglLockSurfaceKHR = epoxy_eglLockSurfaceKHR_dispatch_table_thunk;
+ epoxy_eglMakeCurrent = epoxy_eglMakeCurrent_dispatch_table_thunk;
+ epoxy_eglOutputLayerAttribEXT = epoxy_eglOutputLayerAttribEXT_dispatch_table_thunk;
+ epoxy_eglOutputPortAttribEXT = epoxy_eglOutputPortAttribEXT_dispatch_table_thunk;
+ epoxy_eglPostSubBufferNV = epoxy_eglPostSubBufferNV_dispatch_table_thunk;
+ epoxy_eglPresentationTimeANDROID = epoxy_eglPresentationTimeANDROID_dispatch_table_thunk;
+ epoxy_eglQueryAPI = epoxy_eglQueryAPI_dispatch_table_thunk;
+ epoxy_eglQueryContext = epoxy_eglQueryContext_dispatch_table_thunk;
+ epoxy_eglQueryDebugKHR = epoxy_eglQueryDebugKHR_dispatch_table_thunk;
+ epoxy_eglQueryDeviceAttribEXT = epoxy_eglQueryDeviceAttribEXT_dispatch_table_thunk;
+ epoxy_eglQueryDeviceStringEXT = epoxy_eglQueryDeviceStringEXT_dispatch_table_thunk;
+ epoxy_eglQueryDevicesEXT = epoxy_eglQueryDevicesEXT_dispatch_table_thunk;
+ epoxy_eglQueryDisplayAttribEXT = epoxy_eglQueryDisplayAttribEXT_dispatch_table_thunk;
+ epoxy_eglQueryDisplayAttribKHR = epoxy_eglQueryDisplayAttribKHR_dispatch_table_thunk;
+ epoxy_eglQueryDisplayAttribNV = epoxy_eglQueryDisplayAttribNV_dispatch_table_thunk;
+ epoxy_eglQueryDmaBufFormatsEXT = epoxy_eglQueryDmaBufFormatsEXT_dispatch_table_thunk;
+ epoxy_eglQueryDmaBufModifiersEXT = epoxy_eglQueryDmaBufModifiersEXT_dispatch_table_thunk;
+ epoxy_eglQueryNativeDisplayNV = epoxy_eglQueryNativeDisplayNV_dispatch_table_thunk;
+ epoxy_eglQueryNativePixmapNV = epoxy_eglQueryNativePixmapNV_dispatch_table_thunk;
+ epoxy_eglQueryNativeWindowNV = epoxy_eglQueryNativeWindowNV_dispatch_table_thunk;
+ epoxy_eglQueryOutputLayerAttribEXT = epoxy_eglQueryOutputLayerAttribEXT_dispatch_table_thunk;
+ epoxy_eglQueryOutputLayerStringEXT = epoxy_eglQueryOutputLayerStringEXT_dispatch_table_thunk;
+ epoxy_eglQueryOutputPortAttribEXT = epoxy_eglQueryOutputPortAttribEXT_dispatch_table_thunk;
+ epoxy_eglQueryOutputPortStringEXT = epoxy_eglQueryOutputPortStringEXT_dispatch_table_thunk;
+ epoxy_eglQueryStreamAttribKHR = epoxy_eglQueryStreamAttribKHR_dispatch_table_thunk;
+ epoxy_eglQueryStreamKHR = epoxy_eglQueryStreamKHR_dispatch_table_thunk;
+ epoxy_eglQueryStreamMetadataNV = epoxy_eglQueryStreamMetadataNV_dispatch_table_thunk;
+ epoxy_eglQueryStreamTimeKHR = epoxy_eglQueryStreamTimeKHR_dispatch_table_thunk;
+ epoxy_eglQueryStreamu64KHR = epoxy_eglQueryStreamu64KHR_dispatch_table_thunk;
+ epoxy_eglQueryString = epoxy_eglQueryString_dispatch_table_thunk;
+ epoxy_eglQuerySurface = epoxy_eglQuerySurface_dispatch_table_thunk;
+ epoxy_eglQuerySurface64KHR = epoxy_eglQuerySurface64KHR_dispatch_table_thunk;
+ epoxy_eglQuerySurfacePointerANGLE = epoxy_eglQuerySurfacePointerANGLE_dispatch_table_thunk;
+ epoxy_eglReleaseTexImage = epoxy_eglReleaseTexImage_dispatch_table_thunk;
+ epoxy_eglReleaseThread = epoxy_eglReleaseThread_dispatch_table_thunk;
+ epoxy_eglResetStreamNV = epoxy_eglResetStreamNV_dispatch_table_thunk;
+ epoxy_eglSetBlobCacheFuncsANDROID = epoxy_eglSetBlobCacheFuncsANDROID_dispatch_table_thunk;
+ epoxy_eglSetDamageRegionKHR = epoxy_eglSetDamageRegionKHR_dispatch_table_thunk;
+ epoxy_eglSetStreamAttribKHR = epoxy_eglSetStreamAttribKHR_dispatch_table_thunk;
+ epoxy_eglSetStreamMetadataNV = epoxy_eglSetStreamMetadataNV_dispatch_table_thunk;
+ epoxy_eglSignalSyncKHR = epoxy_eglSignalSyncKHR_dispatch_table_thunk;
+ epoxy_eglSignalSyncNV = epoxy_eglSignalSyncNV_dispatch_table_thunk;
+ epoxy_eglStreamAttribKHR = epoxy_eglStreamAttribKHR_dispatch_table_thunk;
+ epoxy_eglStreamConsumerAcquireAttribKHR = epoxy_eglStreamConsumerAcquireAttribKHR_dispatch_table_thunk;
+ epoxy_eglStreamConsumerAcquireKHR = epoxy_eglStreamConsumerAcquireKHR_dispatch_table_thunk;
+ epoxy_eglStreamConsumerGLTextureExternalAttribsNV = epoxy_eglStreamConsumerGLTextureExternalAttribsNV_dispatch_table_thunk;
+ epoxy_eglStreamConsumerGLTextureExternalKHR = epoxy_eglStreamConsumerGLTextureExternalKHR_dispatch_table_thunk;
+ epoxy_eglStreamConsumerOutputEXT = epoxy_eglStreamConsumerOutputEXT_dispatch_table_thunk;
+ epoxy_eglStreamConsumerReleaseAttribKHR = epoxy_eglStreamConsumerReleaseAttribKHR_dispatch_table_thunk;
+ epoxy_eglStreamConsumerReleaseKHR = epoxy_eglStreamConsumerReleaseKHR_dispatch_table_thunk;
+ epoxy_eglStreamFlushNV = epoxy_eglStreamFlushNV_dispatch_table_thunk;
+ epoxy_eglSurfaceAttrib = epoxy_eglSurfaceAttrib_dispatch_table_thunk;
+ epoxy_eglSwapBuffers = epoxy_eglSwapBuffers_dispatch_table_thunk;
+ epoxy_eglSwapBuffersRegion2NOK = epoxy_eglSwapBuffersRegion2NOK_dispatch_table_thunk;
+ epoxy_eglSwapBuffersRegionNOK = epoxy_eglSwapBuffersRegionNOK_dispatch_table_thunk;
+ epoxy_eglSwapBuffersWithDamageEXT = epoxy_eglSwapBuffersWithDamageEXT_dispatch_table_thunk;
+ epoxy_eglSwapBuffersWithDamageKHR = epoxy_eglSwapBuffersWithDamageKHR_dispatch_table_thunk;
+ epoxy_eglSwapInterval = epoxy_eglSwapInterval_dispatch_table_thunk;
+ epoxy_eglTerminate = epoxy_eglTerminate_dispatch_table_thunk;
+ epoxy_eglUnlockSurfaceKHR = epoxy_eglUnlockSurfaceKHR_dispatch_table_thunk;
+ epoxy_eglUnsignalSyncEXT = epoxy_eglUnsignalSyncEXT_dispatch_table_thunk;
+ epoxy_eglWaitClient = epoxy_eglWaitClient_dispatch_table_thunk;
+ epoxy_eglWaitGL = epoxy_eglWaitGL_dispatch_table_thunk;
+ epoxy_eglWaitNative = epoxy_eglWaitNative_dispatch_table_thunk;
+ epoxy_eglWaitSync = epoxy_eglWaitSync_dispatch_table_thunk;
+ epoxy_eglWaitSyncKHR = epoxy_eglWaitSyncKHR_dispatch_table_thunk;
+}
+
+#endif /* !USING_DISPATCH_TABLE */
+PFNEGLBINDAPIPROC epoxy_eglBindAPI = epoxy_eglBindAPI_global_rewrite_ptr;
+
+PFNEGLBINDTEXIMAGEPROC epoxy_eglBindTexImage = epoxy_eglBindTexImage_global_rewrite_ptr;
+
+PFNEGLCHOOSECONFIGPROC epoxy_eglChooseConfig = epoxy_eglChooseConfig_global_rewrite_ptr;
+
+PFNEGLCLIENTSIGNALSYNCEXTPROC epoxy_eglClientSignalSyncEXT = epoxy_eglClientSignalSyncEXT_global_rewrite_ptr;
+
+PFNEGLCLIENTWAITSYNCPROC epoxy_eglClientWaitSync = epoxy_eglClientWaitSync_global_rewrite_ptr;
+
+PFNEGLCLIENTWAITSYNCKHRPROC epoxy_eglClientWaitSyncKHR = epoxy_eglClientWaitSyncKHR_global_rewrite_ptr;
+
+PFNEGLCLIENTWAITSYNCNVPROC epoxy_eglClientWaitSyncNV = epoxy_eglClientWaitSyncNV_global_rewrite_ptr;
+
+PFNEGLCOMPOSITORBINDTEXWINDOWEXTPROC epoxy_eglCompositorBindTexWindowEXT = epoxy_eglCompositorBindTexWindowEXT_global_rewrite_ptr;
+
+PFNEGLCOMPOSITORSETCONTEXTATTRIBUTESEXTPROC epoxy_eglCompositorSetContextAttributesEXT = epoxy_eglCompositorSetContextAttributesEXT_global_rewrite_ptr;
+
+PFNEGLCOMPOSITORSETCONTEXTLISTEXTPROC epoxy_eglCompositorSetContextListEXT = epoxy_eglCompositorSetContextListEXT_global_rewrite_ptr;
+
+PFNEGLCOMPOSITORSETSIZEEXTPROC epoxy_eglCompositorSetSizeEXT = epoxy_eglCompositorSetSizeEXT_global_rewrite_ptr;
+
+PFNEGLCOMPOSITORSETWINDOWATTRIBUTESEXTPROC epoxy_eglCompositorSetWindowAttributesEXT = epoxy_eglCompositorSetWindowAttributesEXT_global_rewrite_ptr;
+
+PFNEGLCOMPOSITORSETWINDOWLISTEXTPROC epoxy_eglCompositorSetWindowListEXT = epoxy_eglCompositorSetWindowListEXT_global_rewrite_ptr;
+
+PFNEGLCOMPOSITORSWAPPOLICYEXTPROC epoxy_eglCompositorSwapPolicyEXT = epoxy_eglCompositorSwapPolicyEXT_global_rewrite_ptr;
+
+PFNEGLCOPYBUFFERSPROC epoxy_eglCopyBuffers = epoxy_eglCopyBuffers_global_rewrite_ptr;
+
+PFNEGLCREATECONTEXTPROC epoxy_eglCreateContext = epoxy_eglCreateContext_global_rewrite_ptr;
+
+PFNEGLCREATEDRMIMAGEMESAPROC epoxy_eglCreateDRMImageMESA = epoxy_eglCreateDRMImageMESA_global_rewrite_ptr;
+
+PFNEGLCREATEFENCESYNCNVPROC epoxy_eglCreateFenceSyncNV = epoxy_eglCreateFenceSyncNV_global_rewrite_ptr;
+
+PFNEGLCREATEIMAGEPROC epoxy_eglCreateImage = epoxy_eglCreateImage_global_rewrite_ptr;
+
+PFNEGLCREATEIMAGEKHRPROC epoxy_eglCreateImageKHR = epoxy_eglCreateImageKHR_global_rewrite_ptr;
+
+PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC epoxy_eglCreateNativeClientBufferANDROID = epoxy_eglCreateNativeClientBufferANDROID_global_rewrite_ptr;
+
+PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC epoxy_eglCreatePbufferFromClientBuffer = epoxy_eglCreatePbufferFromClientBuffer_global_rewrite_ptr;
+
+PFNEGLCREATEPBUFFERSURFACEPROC epoxy_eglCreatePbufferSurface = epoxy_eglCreatePbufferSurface_global_rewrite_ptr;
+
+PFNEGLCREATEPIXMAPSURFACEPROC epoxy_eglCreatePixmapSurface = epoxy_eglCreatePixmapSurface_global_rewrite_ptr;
+
+PFNEGLCREATEPIXMAPSURFACEHIPROC epoxy_eglCreatePixmapSurfaceHI = epoxy_eglCreatePixmapSurfaceHI_global_rewrite_ptr;
+
+PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC epoxy_eglCreatePlatformPixmapSurface = epoxy_eglCreatePlatformPixmapSurface_global_rewrite_ptr;
+
+PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC epoxy_eglCreatePlatformPixmapSurfaceEXT = epoxy_eglCreatePlatformPixmapSurfaceEXT_global_rewrite_ptr;
+
+PFNEGLCREATEPLATFORMWINDOWSURFACEPROC epoxy_eglCreatePlatformWindowSurface = epoxy_eglCreatePlatformWindowSurface_global_rewrite_ptr;
+
+PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC epoxy_eglCreatePlatformWindowSurfaceEXT = epoxy_eglCreatePlatformWindowSurfaceEXT_global_rewrite_ptr;
+
+PFNEGLCREATESTREAMATTRIBKHRPROC epoxy_eglCreateStreamAttribKHR = epoxy_eglCreateStreamAttribKHR_global_rewrite_ptr;
+
+PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC epoxy_eglCreateStreamFromFileDescriptorKHR = epoxy_eglCreateStreamFromFileDescriptorKHR_global_rewrite_ptr;
+
+PFNEGLCREATESTREAMKHRPROC epoxy_eglCreateStreamKHR = epoxy_eglCreateStreamKHR_global_rewrite_ptr;
+
+PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC epoxy_eglCreateStreamProducerSurfaceKHR = epoxy_eglCreateStreamProducerSurfaceKHR_global_rewrite_ptr;
+
+PFNEGLCREATESTREAMSYNCNVPROC epoxy_eglCreateStreamSyncNV = epoxy_eglCreateStreamSyncNV_global_rewrite_ptr;
+
+PFNEGLCREATESYNCPROC epoxy_eglCreateSync = epoxy_eglCreateSync_global_rewrite_ptr;
+
+PFNEGLCREATESYNC64KHRPROC epoxy_eglCreateSync64KHR = epoxy_eglCreateSync64KHR_global_rewrite_ptr;
+
+PFNEGLCREATESYNCKHRPROC epoxy_eglCreateSyncKHR = epoxy_eglCreateSyncKHR_global_rewrite_ptr;
+
+PFNEGLCREATEWINDOWSURFACEPROC epoxy_eglCreateWindowSurface = epoxy_eglCreateWindowSurface_global_rewrite_ptr;
+
+PFNEGLDEBUGMESSAGECONTROLKHRPROC epoxy_eglDebugMessageControlKHR = epoxy_eglDebugMessageControlKHR_global_rewrite_ptr;
+
+PFNEGLDESTROYCONTEXTPROC epoxy_eglDestroyContext = epoxy_eglDestroyContext_global_rewrite_ptr;
+
+PFNEGLDESTROYIMAGEPROC epoxy_eglDestroyImage = epoxy_eglDestroyImage_global_rewrite_ptr;
+
+PFNEGLDESTROYIMAGEKHRPROC epoxy_eglDestroyImageKHR = epoxy_eglDestroyImageKHR_global_rewrite_ptr;
+
+PFNEGLDESTROYSTREAMKHRPROC epoxy_eglDestroyStreamKHR = epoxy_eglDestroyStreamKHR_global_rewrite_ptr;
+
+PFNEGLDESTROYSURFACEPROC epoxy_eglDestroySurface = epoxy_eglDestroySurface_global_rewrite_ptr;
+
+PFNEGLDESTROYSYNCPROC epoxy_eglDestroySync = epoxy_eglDestroySync_global_rewrite_ptr;
+
+PFNEGLDESTROYSYNCKHRPROC epoxy_eglDestroySyncKHR = epoxy_eglDestroySyncKHR_global_rewrite_ptr;
+
+PFNEGLDESTROYSYNCNVPROC epoxy_eglDestroySyncNV = epoxy_eglDestroySyncNV_global_rewrite_ptr;
+
+PFNEGLDUPNATIVEFENCEFDANDROIDPROC epoxy_eglDupNativeFenceFDANDROID = epoxy_eglDupNativeFenceFDANDROID_global_rewrite_ptr;
+
+PFNEGLEXPORTDMABUFIMAGEMESAPROC epoxy_eglExportDMABUFImageMESA = epoxy_eglExportDMABUFImageMESA_global_rewrite_ptr;
+
+PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC epoxy_eglExportDMABUFImageQueryMESA = epoxy_eglExportDMABUFImageQueryMESA_global_rewrite_ptr;
+
+PFNEGLEXPORTDRMIMAGEMESAPROC epoxy_eglExportDRMImageMESA = epoxy_eglExportDRMImageMESA_global_rewrite_ptr;
+
+PFNEGLFENCENVPROC epoxy_eglFenceNV = epoxy_eglFenceNV_global_rewrite_ptr;
+
+PFNEGLGETCOMPOSITORTIMINGANDROIDPROC epoxy_eglGetCompositorTimingANDROID = epoxy_eglGetCompositorTimingANDROID_global_rewrite_ptr;
+
+PFNEGLGETCOMPOSITORTIMINGSUPPORTEDANDROIDPROC epoxy_eglGetCompositorTimingSupportedANDROID = epoxy_eglGetCompositorTimingSupportedANDROID_global_rewrite_ptr;
+
+PFNEGLGETCONFIGATTRIBPROC epoxy_eglGetConfigAttrib = epoxy_eglGetConfigAttrib_global_rewrite_ptr;
+
+PFNEGLGETCONFIGSPROC epoxy_eglGetConfigs = epoxy_eglGetConfigs_global_rewrite_ptr;
+
+PFNEGLGETCURRENTCONTEXTPROC epoxy_eglGetCurrentContext = epoxy_eglGetCurrentContext_global_rewrite_ptr;
+
+PFNEGLGETCURRENTDISPLAYPROC epoxy_eglGetCurrentDisplay = epoxy_eglGetCurrentDisplay_global_rewrite_ptr;
+
+PFNEGLGETCURRENTSURFACEPROC epoxy_eglGetCurrentSurface = epoxy_eglGetCurrentSurface_global_rewrite_ptr;
+
+PFNEGLGETDISPLAYPROC epoxy_eglGetDisplay = epoxy_eglGetDisplay_global_rewrite_ptr;
+
+PFNEGLGETDISPLAYDRIVERCONFIGPROC epoxy_eglGetDisplayDriverConfig = epoxy_eglGetDisplayDriverConfig_global_rewrite_ptr;
+
+PFNEGLGETDISPLAYDRIVERNAMEPROC epoxy_eglGetDisplayDriverName = epoxy_eglGetDisplayDriverName_global_rewrite_ptr;
+
+PFNEGLGETERRORPROC epoxy_eglGetError = epoxy_eglGetError_global_rewrite_ptr;
+
+PFNEGLGETFRAMETIMESTAMPSUPPORTEDANDROIDPROC epoxy_eglGetFrameTimestampSupportedANDROID = epoxy_eglGetFrameTimestampSupportedANDROID_global_rewrite_ptr;
+
+PFNEGLGETFRAMETIMESTAMPSANDROIDPROC epoxy_eglGetFrameTimestampsANDROID = epoxy_eglGetFrameTimestampsANDROID_global_rewrite_ptr;
+
+PFNEGLGETNATIVECLIENTBUFFERANDROIDPROC epoxy_eglGetNativeClientBufferANDROID = epoxy_eglGetNativeClientBufferANDROID_global_rewrite_ptr;
+
+PFNEGLGETNEXTFRAMEIDANDROIDPROC epoxy_eglGetNextFrameIdANDROID = epoxy_eglGetNextFrameIdANDROID_global_rewrite_ptr;
+
+PFNEGLGETOUTPUTLAYERSEXTPROC epoxy_eglGetOutputLayersEXT = epoxy_eglGetOutputLayersEXT_global_rewrite_ptr;
+
+PFNEGLGETOUTPUTPORTSEXTPROC epoxy_eglGetOutputPortsEXT = epoxy_eglGetOutputPortsEXT_global_rewrite_ptr;
+
+PFNEGLGETPLATFORMDISPLAYPROC epoxy_eglGetPlatformDisplay = epoxy_eglGetPlatformDisplay_global_rewrite_ptr;
+
+PFNEGLGETPLATFORMDISPLAYEXTPROC epoxy_eglGetPlatformDisplayEXT = epoxy_eglGetPlatformDisplayEXT_global_rewrite_ptr;
+
+PFNEGLGETPROCADDRESSPROC epoxy_eglGetProcAddress = epoxy_eglGetProcAddress_global_rewrite_ptr;
+
+PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC epoxy_eglGetStreamFileDescriptorKHR = epoxy_eglGetStreamFileDescriptorKHR_global_rewrite_ptr;
+
+PFNEGLGETSYNCATTRIBPROC epoxy_eglGetSyncAttrib = epoxy_eglGetSyncAttrib_global_rewrite_ptr;
+
+PFNEGLGETSYNCATTRIBKHRPROC epoxy_eglGetSyncAttribKHR = epoxy_eglGetSyncAttribKHR_global_rewrite_ptr;
+
+PFNEGLGETSYNCATTRIBNVPROC epoxy_eglGetSyncAttribNV = epoxy_eglGetSyncAttribNV_global_rewrite_ptr;
+
+PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC epoxy_eglGetSystemTimeFrequencyNV = epoxy_eglGetSystemTimeFrequencyNV_global_rewrite_ptr;
+
+PFNEGLGETSYSTEMTIMENVPROC epoxy_eglGetSystemTimeNV = epoxy_eglGetSystemTimeNV_global_rewrite_ptr;
+
+PFNEGLINITIALIZEPROC epoxy_eglInitialize = epoxy_eglInitialize_global_rewrite_ptr;
+
+PFNEGLLABELOBJECTKHRPROC epoxy_eglLabelObjectKHR = epoxy_eglLabelObjectKHR_global_rewrite_ptr;
+
+PFNEGLLOCKSURFACEKHRPROC epoxy_eglLockSurfaceKHR = epoxy_eglLockSurfaceKHR_global_rewrite_ptr;
+
+PFNEGLMAKECURRENTPROC epoxy_eglMakeCurrent = epoxy_eglMakeCurrent_global_rewrite_ptr;
+
+PFNEGLOUTPUTLAYERATTRIBEXTPROC epoxy_eglOutputLayerAttribEXT = epoxy_eglOutputLayerAttribEXT_global_rewrite_ptr;
+
+PFNEGLOUTPUTPORTATTRIBEXTPROC epoxy_eglOutputPortAttribEXT = epoxy_eglOutputPortAttribEXT_global_rewrite_ptr;
+
+PFNEGLPOSTSUBBUFFERNVPROC epoxy_eglPostSubBufferNV = epoxy_eglPostSubBufferNV_global_rewrite_ptr;
+
+PFNEGLPRESENTATIONTIMEANDROIDPROC epoxy_eglPresentationTimeANDROID = epoxy_eglPresentationTimeANDROID_global_rewrite_ptr;
+
+PFNEGLQUERYAPIPROC epoxy_eglQueryAPI = epoxy_eglQueryAPI_global_rewrite_ptr;
+
+PFNEGLQUERYCONTEXTPROC epoxy_eglQueryContext = epoxy_eglQueryContext_global_rewrite_ptr;
+
+PFNEGLQUERYDEBUGKHRPROC epoxy_eglQueryDebugKHR = epoxy_eglQueryDebugKHR_global_rewrite_ptr;
+
+PFNEGLQUERYDEVICEATTRIBEXTPROC epoxy_eglQueryDeviceAttribEXT = epoxy_eglQueryDeviceAttribEXT_global_rewrite_ptr;
+
+PFNEGLQUERYDEVICESTRINGEXTPROC epoxy_eglQueryDeviceStringEXT = epoxy_eglQueryDeviceStringEXT_global_rewrite_ptr;
+
+PFNEGLQUERYDEVICESEXTPROC epoxy_eglQueryDevicesEXT = epoxy_eglQueryDevicesEXT_global_rewrite_ptr;
+
+PFNEGLQUERYDISPLAYATTRIBEXTPROC epoxy_eglQueryDisplayAttribEXT = epoxy_eglQueryDisplayAttribEXT_global_rewrite_ptr;
+
+PFNEGLQUERYDISPLAYATTRIBKHRPROC epoxy_eglQueryDisplayAttribKHR = epoxy_eglQueryDisplayAttribKHR_global_rewrite_ptr;
+
+PFNEGLQUERYDISPLAYATTRIBNVPROC epoxy_eglQueryDisplayAttribNV = epoxy_eglQueryDisplayAttribNV_global_rewrite_ptr;
+
+PFNEGLQUERYDMABUFFORMATSEXTPROC epoxy_eglQueryDmaBufFormatsEXT = epoxy_eglQueryDmaBufFormatsEXT_global_rewrite_ptr;
+
+PFNEGLQUERYDMABUFMODIFIERSEXTPROC epoxy_eglQueryDmaBufModifiersEXT = epoxy_eglQueryDmaBufModifiersEXT_global_rewrite_ptr;
+
+PFNEGLQUERYNATIVEDISPLAYNVPROC epoxy_eglQueryNativeDisplayNV = epoxy_eglQueryNativeDisplayNV_global_rewrite_ptr;
+
+PFNEGLQUERYNATIVEPIXMAPNVPROC epoxy_eglQueryNativePixmapNV = epoxy_eglQueryNativePixmapNV_global_rewrite_ptr;
+
+PFNEGLQUERYNATIVEWINDOWNVPROC epoxy_eglQueryNativeWindowNV = epoxy_eglQueryNativeWindowNV_global_rewrite_ptr;
+
+PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC epoxy_eglQueryOutputLayerAttribEXT = epoxy_eglQueryOutputLayerAttribEXT_global_rewrite_ptr;
+
+PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC epoxy_eglQueryOutputLayerStringEXT = epoxy_eglQueryOutputLayerStringEXT_global_rewrite_ptr;
+
+PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC epoxy_eglQueryOutputPortAttribEXT = epoxy_eglQueryOutputPortAttribEXT_global_rewrite_ptr;
+
+PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC epoxy_eglQueryOutputPortStringEXT = epoxy_eglQueryOutputPortStringEXT_global_rewrite_ptr;
+
+PFNEGLQUERYSTREAMATTRIBKHRPROC epoxy_eglQueryStreamAttribKHR = epoxy_eglQueryStreamAttribKHR_global_rewrite_ptr;
+
+PFNEGLQUERYSTREAMKHRPROC epoxy_eglQueryStreamKHR = epoxy_eglQueryStreamKHR_global_rewrite_ptr;
+
+PFNEGLQUERYSTREAMMETADATANVPROC epoxy_eglQueryStreamMetadataNV = epoxy_eglQueryStreamMetadataNV_global_rewrite_ptr;
+
+PFNEGLQUERYSTREAMTIMEKHRPROC epoxy_eglQueryStreamTimeKHR = epoxy_eglQueryStreamTimeKHR_global_rewrite_ptr;
+
+PFNEGLQUERYSTREAMU64KHRPROC epoxy_eglQueryStreamu64KHR = epoxy_eglQueryStreamu64KHR_global_rewrite_ptr;
+
+PFNEGLQUERYSTRINGPROC epoxy_eglQueryString = epoxy_eglQueryString_global_rewrite_ptr;
+
+PFNEGLQUERYSURFACEPROC epoxy_eglQuerySurface = epoxy_eglQuerySurface_global_rewrite_ptr;
+
+PFNEGLQUERYSURFACE64KHRPROC epoxy_eglQuerySurface64KHR = epoxy_eglQuerySurface64KHR_global_rewrite_ptr;
+
+PFNEGLQUERYSURFACEPOINTERANGLEPROC epoxy_eglQuerySurfacePointerANGLE = epoxy_eglQuerySurfacePointerANGLE_global_rewrite_ptr;
+
+PFNEGLRELEASETEXIMAGEPROC epoxy_eglReleaseTexImage = epoxy_eglReleaseTexImage_global_rewrite_ptr;
+
+PFNEGLRELEASETHREADPROC epoxy_eglReleaseThread = epoxy_eglReleaseThread_global_rewrite_ptr;
+
+PFNEGLRESETSTREAMNVPROC epoxy_eglResetStreamNV = epoxy_eglResetStreamNV_global_rewrite_ptr;
+
+PFNEGLSETBLOBCACHEFUNCSANDROIDPROC epoxy_eglSetBlobCacheFuncsANDROID = epoxy_eglSetBlobCacheFuncsANDROID_global_rewrite_ptr;
+
+PFNEGLSETDAMAGEREGIONKHRPROC epoxy_eglSetDamageRegionKHR = epoxy_eglSetDamageRegionKHR_global_rewrite_ptr;
+
+PFNEGLSETSTREAMATTRIBKHRPROC epoxy_eglSetStreamAttribKHR = epoxy_eglSetStreamAttribKHR_global_rewrite_ptr;
+
+PFNEGLSETSTREAMMETADATANVPROC epoxy_eglSetStreamMetadataNV = epoxy_eglSetStreamMetadataNV_global_rewrite_ptr;
+
+PFNEGLSIGNALSYNCKHRPROC epoxy_eglSignalSyncKHR = epoxy_eglSignalSyncKHR_global_rewrite_ptr;
+
+PFNEGLSIGNALSYNCNVPROC epoxy_eglSignalSyncNV = epoxy_eglSignalSyncNV_global_rewrite_ptr;
+
+PFNEGLSTREAMATTRIBKHRPROC epoxy_eglStreamAttribKHR = epoxy_eglStreamAttribKHR_global_rewrite_ptr;
+
+PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC epoxy_eglStreamConsumerAcquireAttribKHR = epoxy_eglStreamConsumerAcquireAttribKHR_global_rewrite_ptr;
+
+PFNEGLSTREAMCONSUMERACQUIREKHRPROC epoxy_eglStreamConsumerAcquireKHR = epoxy_eglStreamConsumerAcquireKHR_global_rewrite_ptr;
+
+PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC epoxy_eglStreamConsumerGLTextureExternalAttribsNV = epoxy_eglStreamConsumerGLTextureExternalAttribsNV_global_rewrite_ptr;
+
+PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC epoxy_eglStreamConsumerGLTextureExternalKHR = epoxy_eglStreamConsumerGLTextureExternalKHR_global_rewrite_ptr;
+
+PFNEGLSTREAMCONSUMEROUTPUTEXTPROC epoxy_eglStreamConsumerOutputEXT = epoxy_eglStreamConsumerOutputEXT_global_rewrite_ptr;
+
+PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC epoxy_eglStreamConsumerReleaseAttribKHR = epoxy_eglStreamConsumerReleaseAttribKHR_global_rewrite_ptr;
+
+PFNEGLSTREAMCONSUMERRELEASEKHRPROC epoxy_eglStreamConsumerReleaseKHR = epoxy_eglStreamConsumerReleaseKHR_global_rewrite_ptr;
+
+PFNEGLSTREAMFLUSHNVPROC epoxy_eglStreamFlushNV = epoxy_eglStreamFlushNV_global_rewrite_ptr;
+
+PFNEGLSURFACEATTRIBPROC epoxy_eglSurfaceAttrib = epoxy_eglSurfaceAttrib_global_rewrite_ptr;
+
+PFNEGLSWAPBUFFERSPROC epoxy_eglSwapBuffers = epoxy_eglSwapBuffers_global_rewrite_ptr;
+
+PFNEGLSWAPBUFFERSREGION2NOKPROC epoxy_eglSwapBuffersRegion2NOK = epoxy_eglSwapBuffersRegion2NOK_global_rewrite_ptr;
+
+PFNEGLSWAPBUFFERSREGIONNOKPROC epoxy_eglSwapBuffersRegionNOK = epoxy_eglSwapBuffersRegionNOK_global_rewrite_ptr;
+
+PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC epoxy_eglSwapBuffersWithDamageEXT = epoxy_eglSwapBuffersWithDamageEXT_global_rewrite_ptr;
+
+PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC epoxy_eglSwapBuffersWithDamageKHR = epoxy_eglSwapBuffersWithDamageKHR_global_rewrite_ptr;
+
+PFNEGLSWAPINTERVALPROC epoxy_eglSwapInterval = epoxy_eglSwapInterval_global_rewrite_ptr;
+
+PFNEGLTERMINATEPROC epoxy_eglTerminate = epoxy_eglTerminate_global_rewrite_ptr;
+
+PFNEGLUNLOCKSURFACEKHRPROC epoxy_eglUnlockSurfaceKHR = epoxy_eglUnlockSurfaceKHR_global_rewrite_ptr;
+
+PFNEGLUNSIGNALSYNCEXTPROC epoxy_eglUnsignalSyncEXT = epoxy_eglUnsignalSyncEXT_global_rewrite_ptr;
+
+PFNEGLWAITCLIENTPROC epoxy_eglWaitClient = epoxy_eglWaitClient_global_rewrite_ptr;
+
+PFNEGLWAITGLPROC epoxy_eglWaitGL = epoxy_eglWaitGL_global_rewrite_ptr;
+
+PFNEGLWAITNATIVEPROC epoxy_eglWaitNative = epoxy_eglWaitNative_global_rewrite_ptr;
+
+PFNEGLWAITSYNCPROC epoxy_eglWaitSync = epoxy_eglWaitSync_global_rewrite_ptr;
+
+PFNEGLWAITSYNCKHRPROC epoxy_eglWaitSyncKHR = epoxy_eglWaitSyncKHR_global_rewrite_ptr;
+