blob: c13aa05fee34cfa53ed0e3ae43fdc6228f44d60e [file] [log] [blame]
Alistair Delvaa4281392020-07-21 10:36:47 -07001/* GL dispatch code.
2 * This is code-generated from the GL API XML files from Khronos.
3 */
4
5#include "config.h"
6
7#include <stdlib.h>
8#include <string.h>
9#include <stdio.h>
10
11#include "dispatch_common.h"
12#include "epoxy/egl.h"
13
14#ifdef __GNUC__
15#define EPOXY_NOINLINE __attribute__((noinline))
16#elif defined (_MSC_VER)
17#define EPOXY_NOINLINE __declspec(noinline)
18#endif
19struct dispatch_table {
20 PFNEGLBINDAPIPROC epoxy_eglBindAPI;
21 PFNEGLBINDTEXIMAGEPROC epoxy_eglBindTexImage;
22 PFNEGLCHOOSECONFIGPROC epoxy_eglChooseConfig;
23 PFNEGLCLIENTSIGNALSYNCEXTPROC epoxy_eglClientSignalSyncEXT;
24 PFNEGLCLIENTWAITSYNCPROC epoxy_eglClientWaitSync;
25 PFNEGLCLIENTWAITSYNCKHRPROC epoxy_eglClientWaitSyncKHR;
26 PFNEGLCLIENTWAITSYNCNVPROC epoxy_eglClientWaitSyncNV;
27 PFNEGLCOMPOSITORBINDTEXWINDOWEXTPROC epoxy_eglCompositorBindTexWindowEXT;
28 PFNEGLCOMPOSITORSETCONTEXTATTRIBUTESEXTPROC epoxy_eglCompositorSetContextAttributesEXT;
29 PFNEGLCOMPOSITORSETCONTEXTLISTEXTPROC epoxy_eglCompositorSetContextListEXT;
30 PFNEGLCOMPOSITORSETSIZEEXTPROC epoxy_eglCompositorSetSizeEXT;
31 PFNEGLCOMPOSITORSETWINDOWATTRIBUTESEXTPROC epoxy_eglCompositorSetWindowAttributesEXT;
32 PFNEGLCOMPOSITORSETWINDOWLISTEXTPROC epoxy_eglCompositorSetWindowListEXT;
33 PFNEGLCOMPOSITORSWAPPOLICYEXTPROC epoxy_eglCompositorSwapPolicyEXT;
34 PFNEGLCOPYBUFFERSPROC epoxy_eglCopyBuffers;
35 PFNEGLCREATECONTEXTPROC epoxy_eglCreateContext;
36 PFNEGLCREATEDRMIMAGEMESAPROC epoxy_eglCreateDRMImageMESA;
37 PFNEGLCREATEFENCESYNCNVPROC epoxy_eglCreateFenceSyncNV;
38 PFNEGLCREATEIMAGEPROC epoxy_eglCreateImage;
39 PFNEGLCREATEIMAGEKHRPROC epoxy_eglCreateImageKHR;
40 PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC epoxy_eglCreateNativeClientBufferANDROID;
41 PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC epoxy_eglCreatePbufferFromClientBuffer;
42 PFNEGLCREATEPBUFFERSURFACEPROC epoxy_eglCreatePbufferSurface;
43 PFNEGLCREATEPIXMAPSURFACEPROC epoxy_eglCreatePixmapSurface;
44 PFNEGLCREATEPIXMAPSURFACEHIPROC epoxy_eglCreatePixmapSurfaceHI;
45 PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC epoxy_eglCreatePlatformPixmapSurface;
46 PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC epoxy_eglCreatePlatformPixmapSurfaceEXT;
47 PFNEGLCREATEPLATFORMWINDOWSURFACEPROC epoxy_eglCreatePlatformWindowSurface;
48 PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC epoxy_eglCreatePlatformWindowSurfaceEXT;
49 PFNEGLCREATESTREAMATTRIBKHRPROC epoxy_eglCreateStreamAttribKHR;
50 PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC epoxy_eglCreateStreamFromFileDescriptorKHR;
51 PFNEGLCREATESTREAMKHRPROC epoxy_eglCreateStreamKHR;
52 PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC epoxy_eglCreateStreamProducerSurfaceKHR;
53 PFNEGLCREATESTREAMSYNCNVPROC epoxy_eglCreateStreamSyncNV;
54 PFNEGLCREATESYNCPROC epoxy_eglCreateSync;
55 PFNEGLCREATESYNC64KHRPROC epoxy_eglCreateSync64KHR;
56 PFNEGLCREATESYNCKHRPROC epoxy_eglCreateSyncKHR;
57 PFNEGLCREATEWINDOWSURFACEPROC epoxy_eglCreateWindowSurface;
58 PFNEGLDEBUGMESSAGECONTROLKHRPROC epoxy_eglDebugMessageControlKHR;
59 PFNEGLDESTROYCONTEXTPROC epoxy_eglDestroyContext;
60 PFNEGLDESTROYIMAGEPROC epoxy_eglDestroyImage;
61 PFNEGLDESTROYIMAGEKHRPROC epoxy_eglDestroyImageKHR;
62 PFNEGLDESTROYSTREAMKHRPROC epoxy_eglDestroyStreamKHR;
63 PFNEGLDESTROYSURFACEPROC epoxy_eglDestroySurface;
64 PFNEGLDESTROYSYNCPROC epoxy_eglDestroySync;
65 PFNEGLDESTROYSYNCKHRPROC epoxy_eglDestroySyncKHR;
66 PFNEGLDESTROYSYNCNVPROC epoxy_eglDestroySyncNV;
67 PFNEGLDUPNATIVEFENCEFDANDROIDPROC epoxy_eglDupNativeFenceFDANDROID;
68 PFNEGLEXPORTDMABUFIMAGEMESAPROC epoxy_eglExportDMABUFImageMESA;
69 PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC epoxy_eglExportDMABUFImageQueryMESA;
70 PFNEGLEXPORTDRMIMAGEMESAPROC epoxy_eglExportDRMImageMESA;
71 PFNEGLFENCENVPROC epoxy_eglFenceNV;
72 PFNEGLGETCOMPOSITORTIMINGANDROIDPROC epoxy_eglGetCompositorTimingANDROID;
73 PFNEGLGETCOMPOSITORTIMINGSUPPORTEDANDROIDPROC epoxy_eglGetCompositorTimingSupportedANDROID;
74 PFNEGLGETCONFIGATTRIBPROC epoxy_eglGetConfigAttrib;
75 PFNEGLGETCONFIGSPROC epoxy_eglGetConfigs;
76 PFNEGLGETCURRENTCONTEXTPROC epoxy_eglGetCurrentContext;
77 PFNEGLGETCURRENTDISPLAYPROC epoxy_eglGetCurrentDisplay;
78 PFNEGLGETCURRENTSURFACEPROC epoxy_eglGetCurrentSurface;
79 PFNEGLGETDISPLAYPROC epoxy_eglGetDisplay;
80 PFNEGLGETDISPLAYDRIVERCONFIGPROC epoxy_eglGetDisplayDriverConfig;
81 PFNEGLGETDISPLAYDRIVERNAMEPROC epoxy_eglGetDisplayDriverName;
82 PFNEGLGETERRORPROC epoxy_eglGetError;
83 PFNEGLGETFRAMETIMESTAMPSUPPORTEDANDROIDPROC epoxy_eglGetFrameTimestampSupportedANDROID;
84 PFNEGLGETFRAMETIMESTAMPSANDROIDPROC epoxy_eglGetFrameTimestampsANDROID;
85 PFNEGLGETNATIVECLIENTBUFFERANDROIDPROC epoxy_eglGetNativeClientBufferANDROID;
86 PFNEGLGETNEXTFRAMEIDANDROIDPROC epoxy_eglGetNextFrameIdANDROID;
87 PFNEGLGETOUTPUTLAYERSEXTPROC epoxy_eglGetOutputLayersEXT;
88 PFNEGLGETOUTPUTPORTSEXTPROC epoxy_eglGetOutputPortsEXT;
89 PFNEGLGETPLATFORMDISPLAYPROC epoxy_eglGetPlatformDisplay;
90 PFNEGLGETPLATFORMDISPLAYEXTPROC epoxy_eglGetPlatformDisplayEXT;
91 PFNEGLGETPROCADDRESSPROC epoxy_eglGetProcAddress;
92 PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC epoxy_eglGetStreamFileDescriptorKHR;
93 PFNEGLGETSYNCATTRIBPROC epoxy_eglGetSyncAttrib;
94 PFNEGLGETSYNCATTRIBKHRPROC epoxy_eglGetSyncAttribKHR;
95 PFNEGLGETSYNCATTRIBNVPROC epoxy_eglGetSyncAttribNV;
96 PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC epoxy_eglGetSystemTimeFrequencyNV;
97 PFNEGLGETSYSTEMTIMENVPROC epoxy_eglGetSystemTimeNV;
98 PFNEGLINITIALIZEPROC epoxy_eglInitialize;
99 PFNEGLLABELOBJECTKHRPROC epoxy_eglLabelObjectKHR;
100 PFNEGLLOCKSURFACEKHRPROC epoxy_eglLockSurfaceKHR;
101 PFNEGLMAKECURRENTPROC epoxy_eglMakeCurrent;
102 PFNEGLOUTPUTLAYERATTRIBEXTPROC epoxy_eglOutputLayerAttribEXT;
103 PFNEGLOUTPUTPORTATTRIBEXTPROC epoxy_eglOutputPortAttribEXT;
104 PFNEGLPOSTSUBBUFFERNVPROC epoxy_eglPostSubBufferNV;
105 PFNEGLPRESENTATIONTIMEANDROIDPROC epoxy_eglPresentationTimeANDROID;
106 PFNEGLQUERYAPIPROC epoxy_eglQueryAPI;
107 PFNEGLQUERYCONTEXTPROC epoxy_eglQueryContext;
108 PFNEGLQUERYDEBUGKHRPROC epoxy_eglQueryDebugKHR;
109 PFNEGLQUERYDEVICEATTRIBEXTPROC epoxy_eglQueryDeviceAttribEXT;
110 PFNEGLQUERYDEVICESTRINGEXTPROC epoxy_eglQueryDeviceStringEXT;
111 PFNEGLQUERYDEVICESEXTPROC epoxy_eglQueryDevicesEXT;
112 PFNEGLQUERYDISPLAYATTRIBEXTPROC epoxy_eglQueryDisplayAttribEXT;
113 PFNEGLQUERYDISPLAYATTRIBKHRPROC epoxy_eglQueryDisplayAttribKHR;
114 PFNEGLQUERYDISPLAYATTRIBNVPROC epoxy_eglQueryDisplayAttribNV;
115 PFNEGLQUERYDMABUFFORMATSEXTPROC epoxy_eglQueryDmaBufFormatsEXT;
116 PFNEGLQUERYDMABUFMODIFIERSEXTPROC epoxy_eglQueryDmaBufModifiersEXT;
117 PFNEGLQUERYNATIVEDISPLAYNVPROC epoxy_eglQueryNativeDisplayNV;
118 PFNEGLQUERYNATIVEPIXMAPNVPROC epoxy_eglQueryNativePixmapNV;
119 PFNEGLQUERYNATIVEWINDOWNVPROC epoxy_eglQueryNativeWindowNV;
120 PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC epoxy_eglQueryOutputLayerAttribEXT;
121 PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC epoxy_eglQueryOutputLayerStringEXT;
122 PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC epoxy_eglQueryOutputPortAttribEXT;
123 PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC epoxy_eglQueryOutputPortStringEXT;
124 PFNEGLQUERYSTREAMATTRIBKHRPROC epoxy_eglQueryStreamAttribKHR;
125 PFNEGLQUERYSTREAMKHRPROC epoxy_eglQueryStreamKHR;
126 PFNEGLQUERYSTREAMMETADATANVPROC epoxy_eglQueryStreamMetadataNV;
127 PFNEGLQUERYSTREAMTIMEKHRPROC epoxy_eglQueryStreamTimeKHR;
128 PFNEGLQUERYSTREAMU64KHRPROC epoxy_eglQueryStreamu64KHR;
129 PFNEGLQUERYSTRINGPROC epoxy_eglQueryString;
130 PFNEGLQUERYSURFACEPROC epoxy_eglQuerySurface;
131 PFNEGLQUERYSURFACE64KHRPROC epoxy_eglQuerySurface64KHR;
132 PFNEGLQUERYSURFACEPOINTERANGLEPROC epoxy_eglQuerySurfacePointerANGLE;
133 PFNEGLRELEASETEXIMAGEPROC epoxy_eglReleaseTexImage;
134 PFNEGLRELEASETHREADPROC epoxy_eglReleaseThread;
135 PFNEGLRESETSTREAMNVPROC epoxy_eglResetStreamNV;
136 PFNEGLSETBLOBCACHEFUNCSANDROIDPROC epoxy_eglSetBlobCacheFuncsANDROID;
137 PFNEGLSETDAMAGEREGIONKHRPROC epoxy_eglSetDamageRegionKHR;
138 PFNEGLSETSTREAMATTRIBKHRPROC epoxy_eglSetStreamAttribKHR;
139 PFNEGLSETSTREAMMETADATANVPROC epoxy_eglSetStreamMetadataNV;
140 PFNEGLSIGNALSYNCKHRPROC epoxy_eglSignalSyncKHR;
141 PFNEGLSIGNALSYNCNVPROC epoxy_eglSignalSyncNV;
142 PFNEGLSTREAMATTRIBKHRPROC epoxy_eglStreamAttribKHR;
143 PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC epoxy_eglStreamConsumerAcquireAttribKHR;
144 PFNEGLSTREAMCONSUMERACQUIREKHRPROC epoxy_eglStreamConsumerAcquireKHR;
145 PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC epoxy_eglStreamConsumerGLTextureExternalAttribsNV;
146 PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC epoxy_eglStreamConsumerGLTextureExternalKHR;
147 PFNEGLSTREAMCONSUMEROUTPUTEXTPROC epoxy_eglStreamConsumerOutputEXT;
148 PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC epoxy_eglStreamConsumerReleaseAttribKHR;
149 PFNEGLSTREAMCONSUMERRELEASEKHRPROC epoxy_eglStreamConsumerReleaseKHR;
150 PFNEGLSTREAMFLUSHNVPROC epoxy_eglStreamFlushNV;
151 PFNEGLSURFACEATTRIBPROC epoxy_eglSurfaceAttrib;
152 PFNEGLSWAPBUFFERSPROC epoxy_eglSwapBuffers;
153 PFNEGLSWAPBUFFERSREGION2NOKPROC epoxy_eglSwapBuffersRegion2NOK;
154 PFNEGLSWAPBUFFERSREGIONNOKPROC epoxy_eglSwapBuffersRegionNOK;
155 PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC epoxy_eglSwapBuffersWithDamageEXT;
156 PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC epoxy_eglSwapBuffersWithDamageKHR;
157 PFNEGLSWAPINTERVALPROC epoxy_eglSwapInterval;
158 PFNEGLTERMINATEPROC epoxy_eglTerminate;
159 PFNEGLUNLOCKSURFACEKHRPROC epoxy_eglUnlockSurfaceKHR;
160 PFNEGLUNSIGNALSYNCEXTPROC epoxy_eglUnsignalSyncEXT;
161 PFNEGLWAITCLIENTPROC epoxy_eglWaitClient;
162 PFNEGLWAITGLPROC epoxy_eglWaitGL;
163 PFNEGLWAITNATIVEPROC epoxy_eglWaitNative;
164 PFNEGLWAITSYNCPROC epoxy_eglWaitSync;
165 PFNEGLWAITSYNCKHRPROC epoxy_eglWaitSyncKHR;
166};
167
168#if USING_DISPATCH_TABLE
169static inline struct dispatch_table *
170get_dispatch_table(void);
171
172#endif
173
174enum egl_provider {
175 egl_provider_terminator = 0,
176 PROVIDER_EGL_10,
177 PROVIDER_EGL_11,
178 PROVIDER_EGL_12,
179 PROVIDER_EGL_14,
180 PROVIDER_EGL_15,
181 PROVIDER_EGL_ANDROID_blob_cache,
182 PROVIDER_EGL_ANDROID_create_native_client_buffer,
183 PROVIDER_EGL_ANDROID_get_frame_timestamps,
184 PROVIDER_EGL_ANDROID_get_native_client_buffer,
185 PROVIDER_EGL_ANDROID_native_fence_sync,
186 PROVIDER_EGL_ANDROID_presentation_time,
187 PROVIDER_EGL_ANGLE_query_surface_pointer,
188 PROVIDER_EGL_EXT_client_sync,
189 PROVIDER_EGL_EXT_compositor,
190 PROVIDER_EGL_EXT_device_base,
191 PROVIDER_EGL_EXT_device_enumeration,
192 PROVIDER_EGL_EXT_device_query,
193 PROVIDER_EGL_EXT_image_dma_buf_import_modifiers,
194 PROVIDER_EGL_EXT_output_base,
195 PROVIDER_EGL_EXT_platform_base,
196 PROVIDER_EGL_EXT_stream_consumer_egloutput,
197 PROVIDER_EGL_EXT_swap_buffers_with_damage,
198 PROVIDER_EGL_EXT_sync_reuse,
199 PROVIDER_EGL_HI_clientpixmap,
200 PROVIDER_EGL_KHR_cl_event2,
201 PROVIDER_EGL_KHR_debug,
202 PROVIDER_EGL_KHR_display_reference,
203 PROVIDER_EGL_KHR_fence_sync,
204 PROVIDER_EGL_KHR_image,
205 PROVIDER_EGL_KHR_image_base,
206 PROVIDER_EGL_KHR_lock_surface,
207 PROVIDER_EGL_KHR_lock_surface3,
208 PROVIDER_EGL_KHR_partial_update,
209 PROVIDER_EGL_KHR_reusable_sync,
210 PROVIDER_EGL_KHR_stream,
211 PROVIDER_EGL_KHR_stream_attrib,
212 PROVIDER_EGL_KHR_stream_consumer_gltexture,
213 PROVIDER_EGL_KHR_stream_cross_process_fd,
214 PROVIDER_EGL_KHR_stream_fifo,
215 PROVIDER_EGL_KHR_stream_producer_eglsurface,
216 PROVIDER_EGL_KHR_swap_buffers_with_damage,
217 PROVIDER_EGL_KHR_wait_sync,
218 PROVIDER_EGL_MESA_drm_image,
219 PROVIDER_EGL_MESA_image_dma_buf_export,
220 PROVIDER_EGL_MESA_query_driver,
221 PROVIDER_EGL_NOK_swap_region,
222 PROVIDER_EGL_NOK_swap_region2,
223 PROVIDER_EGL_NV_native_query,
224 PROVIDER_EGL_NV_post_sub_buffer,
225 PROVIDER_EGL_NV_stream_consumer_gltexture_yuv,
226 PROVIDER_EGL_NV_stream_flush,
227 PROVIDER_EGL_NV_stream_metadata,
228 PROVIDER_EGL_NV_stream_reset,
229 PROVIDER_EGL_NV_stream_sync,
230 PROVIDER_EGL_NV_sync,
231 PROVIDER_EGL_NV_system_time,
232} PACKED;
233ENDPACKED
234
235static const char *enum_string =
236 "EGL 10\0"
237 "EGL 11\0"
238 "EGL 12\0"
239 "EGL 14\0"
240 "EGL 15\0"
241 "EGL_ANDROID_blob_cache\0"
242 "EGL_ANDROID_create_native_client_buffer\0"
243 "EGL_ANDROID_get_frame_timestamps\0"
244 "EGL_ANDROID_get_native_client_buffer\0"
245 "EGL_ANDROID_native_fence_sync\0"
246 "EGL_ANDROID_presentation_time\0"
247 "EGL_ANGLE_query_surface_pointer\0"
248 "EGL_EXT_client_sync\0"
249 "EGL_EXT_compositor\0"
250 "EGL_EXT_device_base\0"
251 "EGL_EXT_device_enumeration\0"
252 "EGL_EXT_device_query\0"
253 "EGL_EXT_image_dma_buf_import_modifiers\0"
254 "EGL_EXT_output_base\0"
255 "EGL_EXT_platform_base\0"
256 "EGL_EXT_stream_consumer_egloutput\0"
257 "EGL_EXT_swap_buffers_with_damage\0"
258 "EGL_EXT_sync_reuse\0"
259 "EGL_HI_clientpixmap\0"
260 "EGL_KHR_cl_event2\0"
261 "EGL_KHR_debug\0"
262 "EGL_KHR_display_reference\0"
263 "EGL_KHR_fence_sync\0"
264 "EGL_KHR_image\0"
265 "EGL_KHR_image_base\0"
266 "EGL_KHR_lock_surface\0"
267 "EGL_KHR_lock_surface3\0"
268 "EGL_KHR_partial_update\0"
269 "EGL_KHR_reusable_sync\0"
270 "EGL_KHR_stream\0"
271 "EGL_KHR_stream_attrib\0"
272 "EGL_KHR_stream_consumer_gltexture\0"
273 "EGL_KHR_stream_cross_process_fd\0"
274 "EGL_KHR_stream_fifo\0"
275 "EGL_KHR_stream_producer_eglsurface\0"
276 "EGL_KHR_swap_buffers_with_damage\0"
277 "EGL_KHR_wait_sync\0"
278 "EGL_MESA_drm_image\0"
279 "EGL_MESA_image_dma_buf_export\0"
280 "EGL_MESA_query_driver\0"
281 "EGL_NOK_swap_region\0"
282 "EGL_NOK_swap_region2\0"
283 "EGL_NV_native_query\0"
284 "EGL_NV_post_sub_buffer\0"
285 "EGL_NV_stream_consumer_gltexture_yuv\0"
286 "EGL_NV_stream_flush\0"
287 "EGL_NV_stream_metadata\0"
288 "EGL_NV_stream_reset\0"
289 "EGL_NV_stream_sync\0"
290 "EGL_NV_sync\0"
291 "EGL_NV_system_time\0"
292 ;
293
294static const uint16_t enum_string_offsets[] = {
295 -1, /* egl_provider_terminator, unused */
296 0, /* EGL 10 */
297 7, /* EGL 11 */
298 14, /* EGL 12 */
299 21, /* EGL 14 */
300 28, /* EGL 15 */
301 35, /* EGL_ANDROID_blob_cache */
302 58, /* EGL_ANDROID_create_native_client_buffer */
303 98, /* EGL_ANDROID_get_frame_timestamps */
304 131, /* EGL_ANDROID_get_native_client_buffer */
305 168, /* EGL_ANDROID_native_fence_sync */
306 198, /* EGL_ANDROID_presentation_time */
307 228, /* EGL_ANGLE_query_surface_pointer */
308 260, /* EGL_EXT_client_sync */
309 280, /* EGL_EXT_compositor */
310 299, /* EGL_EXT_device_base */
311 319, /* EGL_EXT_device_enumeration */
312 346, /* EGL_EXT_device_query */
313 367, /* EGL_EXT_image_dma_buf_import_modifiers */
314 406, /* EGL_EXT_output_base */
315 426, /* EGL_EXT_platform_base */
316 448, /* EGL_EXT_stream_consumer_egloutput */
317 482, /* EGL_EXT_swap_buffers_with_damage */
318 515, /* EGL_EXT_sync_reuse */
319 534, /* EGL_HI_clientpixmap */
320 554, /* EGL_KHR_cl_event2 */
321 572, /* EGL_KHR_debug */
322 586, /* EGL_KHR_display_reference */
323 612, /* EGL_KHR_fence_sync */
324 631, /* EGL_KHR_image */
325 645, /* EGL_KHR_image_base */
326 664, /* EGL_KHR_lock_surface */
327 685, /* EGL_KHR_lock_surface3 */
328 707, /* EGL_KHR_partial_update */
329 730, /* EGL_KHR_reusable_sync */
330 752, /* EGL_KHR_stream */
331 767, /* EGL_KHR_stream_attrib */
332 789, /* EGL_KHR_stream_consumer_gltexture */
333 823, /* EGL_KHR_stream_cross_process_fd */
334 855, /* EGL_KHR_stream_fifo */
335 875, /* EGL_KHR_stream_producer_eglsurface */
336 910, /* EGL_KHR_swap_buffers_with_damage */
337 943, /* EGL_KHR_wait_sync */
338 961, /* EGL_MESA_drm_image */
339 980, /* EGL_MESA_image_dma_buf_export */
340 1010, /* EGL_MESA_query_driver */
341 1032, /* EGL_NOK_swap_region */
342 1052, /* EGL_NOK_swap_region2 */
343 1073, /* EGL_NV_native_query */
344 1093, /* EGL_NV_post_sub_buffer */
345 1116, /* EGL_NV_stream_consumer_gltexture_yuv */
346 1153, /* EGL_NV_stream_flush */
347 1173, /* EGL_NV_stream_metadata */
348 1196, /* EGL_NV_stream_reset */
349 1216, /* EGL_NV_stream_sync */
350 1235, /* EGL_NV_sync */
351 1247, /* EGL_NV_system_time */
352};
353
354static const char entrypoint_strings[] = {
355 'e',
356 'g',
357 'l',
358 'B',
359 'i',
360 'n',
361 'd',
362 'A',
363 'P',
364 'I',
365 0, // eglBindAPI
366 'e',
367 'g',
368 'l',
369 'B',
370 'i',
371 'n',
372 'd',
373 'T',
374 'e',
375 'x',
376 'I',
377 'm',
378 'a',
379 'g',
380 'e',
381 0, // eglBindTexImage
382 'e',
383 'g',
384 'l',
385 'C',
386 'h',
387 'o',
388 'o',
389 's',
390 'e',
391 'C',
392 'o',
393 'n',
394 'f',
395 'i',
396 'g',
397 0, // eglChooseConfig
398 'e',
399 'g',
400 'l',
401 'C',
402 'l',
403 'i',
404 'e',
405 'n',
406 't',
407 'S',
408 'i',
409 'g',
410 'n',
411 'a',
412 'l',
413 'S',
414 'y',
415 'n',
416 'c',
417 'E',
418 'X',
419 'T',
420 0, // eglClientSignalSyncEXT
421 'e',
422 'g',
423 'l',
424 'C',
425 'l',
426 'i',
427 'e',
428 'n',
429 't',
430 'W',
431 'a',
432 'i',
433 't',
434 'S',
435 'y',
436 'n',
437 'c',
438 0, // eglClientWaitSync
439 'e',
440 'g',
441 'l',
442 'C',
443 'l',
444 'i',
445 'e',
446 'n',
447 't',
448 'W',
449 'a',
450 'i',
451 't',
452 'S',
453 'y',
454 'n',
455 'c',
456 'K',
457 'H',
458 'R',
459 0, // eglClientWaitSyncKHR
460 'e',
461 'g',
462 'l',
463 'C',
464 'l',
465 'i',
466 'e',
467 'n',
468 't',
469 'W',
470 'a',
471 'i',
472 't',
473 'S',
474 'y',
475 'n',
476 'c',
477 'N',
478 'V',
479 0, // eglClientWaitSyncNV
480 'e',
481 'g',
482 'l',
483 'C',
484 'o',
485 'm',
486 'p',
487 'o',
488 's',
489 'i',
490 't',
491 'o',
492 'r',
493 'B',
494 'i',
495 'n',
496 'd',
497 'T',
498 'e',
499 'x',
500 'W',
501 'i',
502 'n',
503 'd',
504 'o',
505 'w',
506 'E',
507 'X',
508 'T',
509 0, // eglCompositorBindTexWindowEXT
510 'e',
511 'g',
512 'l',
513 'C',
514 'o',
515 'm',
516 'p',
517 'o',
518 's',
519 'i',
520 't',
521 'o',
522 'r',
523 'S',
524 'e',
525 't',
526 'C',
527 'o',
528 'n',
529 't',
530 'e',
531 'x',
532 't',
533 'A',
534 't',
535 't',
536 'r',
537 'i',
538 'b',
539 'u',
540 't',
541 'e',
542 's',
543 'E',
544 'X',
545 'T',
546 0, // eglCompositorSetContextAttributesEXT
547 'e',
548 'g',
549 'l',
550 'C',
551 'o',
552 'm',
553 'p',
554 'o',
555 's',
556 'i',
557 't',
558 'o',
559 'r',
560 'S',
561 'e',
562 't',
563 'C',
564 'o',
565 'n',
566 't',
567 'e',
568 'x',
569 't',
570 'L',
571 'i',
572 's',
573 't',
574 'E',
575 'X',
576 'T',
577 0, // eglCompositorSetContextListEXT
578 'e',
579 'g',
580 'l',
581 'C',
582 'o',
583 'm',
584 'p',
585 'o',
586 's',
587 'i',
588 't',
589 'o',
590 'r',
591 'S',
592 'e',
593 't',
594 'S',
595 'i',
596 'z',
597 'e',
598 'E',
599 'X',
600 'T',
601 0, // eglCompositorSetSizeEXT
602 'e',
603 'g',
604 'l',
605 'C',
606 'o',
607 'm',
608 'p',
609 'o',
610 's',
611 'i',
612 't',
613 'o',
614 'r',
615 'S',
616 'e',
617 't',
618 'W',
619 'i',
620 'n',
621 'd',
622 'o',
623 'w',
624 'A',
625 't',
626 't',
627 'r',
628 'i',
629 'b',
630 'u',
631 't',
632 'e',
633 's',
634 'E',
635 'X',
636 'T',
637 0, // eglCompositorSetWindowAttributesEXT
638 'e',
639 'g',
640 'l',
641 'C',
642 'o',
643 'm',
644 'p',
645 'o',
646 's',
647 'i',
648 't',
649 'o',
650 'r',
651 'S',
652 'e',
653 't',
654 'W',
655 'i',
656 'n',
657 'd',
658 'o',
659 'w',
660 'L',
661 'i',
662 's',
663 't',
664 'E',
665 'X',
666 'T',
667 0, // eglCompositorSetWindowListEXT
668 'e',
669 'g',
670 'l',
671 'C',
672 'o',
673 'm',
674 'p',
675 'o',
676 's',
677 'i',
678 't',
679 'o',
680 'r',
681 'S',
682 'w',
683 'a',
684 'p',
685 'P',
686 'o',
687 'l',
688 'i',
689 'c',
690 'y',
691 'E',
692 'X',
693 'T',
694 0, // eglCompositorSwapPolicyEXT
695 'e',
696 'g',
697 'l',
698 'C',
699 'o',
700 'p',
701 'y',
702 'B',
703 'u',
704 'f',
705 'f',
706 'e',
707 'r',
708 's',
709 0, // eglCopyBuffers
710 'e',
711 'g',
712 'l',
713 'C',
714 'r',
715 'e',
716 'a',
717 't',
718 'e',
719 'C',
720 'o',
721 'n',
722 't',
723 'e',
724 'x',
725 't',
726 0, // eglCreateContext
727 'e',
728 'g',
729 'l',
730 'C',
731 'r',
732 'e',
733 'a',
734 't',
735 'e',
736 'D',
737 'R',
738 'M',
739 'I',
740 'm',
741 'a',
742 'g',
743 'e',
744 'M',
745 'E',
746 'S',
747 'A',
748 0, // eglCreateDRMImageMESA
749 'e',
750 'g',
751 'l',
752 'C',
753 'r',
754 'e',
755 'a',
756 't',
757 'e',
758 'F',
759 'e',
760 'n',
761 'c',
762 'e',
763 'S',
764 'y',
765 'n',
766 'c',
767 'N',
768 'V',
769 0, // eglCreateFenceSyncNV
770 'e',
771 'g',
772 'l',
773 'C',
774 'r',
775 'e',
776 'a',
777 't',
778 'e',
779 'I',
780 'm',
781 'a',
782 'g',
783 'e',
784 0, // eglCreateImage
785 'e',
786 'g',
787 'l',
788 'C',
789 'r',
790 'e',
791 'a',
792 't',
793 'e',
794 'I',
795 'm',
796 'a',
797 'g',
798 'e',
799 'K',
800 'H',
801 'R',
802 0, // eglCreateImageKHR
803 'e',
804 'g',
805 'l',
806 'C',
807 'r',
808 'e',
809 'a',
810 't',
811 'e',
812 'N',
813 'a',
814 't',
815 'i',
816 'v',
817 'e',
818 'C',
819 'l',
820 'i',
821 'e',
822 'n',
823 't',
824 'B',
825 'u',
826 'f',
827 'f',
828 'e',
829 'r',
830 'A',
831 'N',
832 'D',
833 'R',
834 'O',
835 'I',
836 'D',
837 0, // eglCreateNativeClientBufferANDROID
838 'e',
839 'g',
840 'l',
841 'C',
842 'r',
843 'e',
844 'a',
845 't',
846 'e',
847 'P',
848 'b',
849 'u',
850 'f',
851 'f',
852 'e',
853 'r',
854 'F',
855 'r',
856 'o',
857 'm',
858 'C',
859 'l',
860 'i',
861 'e',
862 'n',
863 't',
864 'B',
865 'u',
866 'f',
867 'f',
868 'e',
869 'r',
870 0, // eglCreatePbufferFromClientBuffer
871 'e',
872 'g',
873 'l',
874 'C',
875 'r',
876 'e',
877 'a',
878 't',
879 'e',
880 'P',
881 'b',
882 'u',
883 'f',
884 'f',
885 'e',
886 'r',
887 'S',
888 'u',
889 'r',
890 'f',
891 'a',
892 'c',
893 'e',
894 0, // eglCreatePbufferSurface
895 'e',
896 'g',
897 'l',
898 'C',
899 'r',
900 'e',
901 'a',
902 't',
903 'e',
904 'P',
905 'i',
906 'x',
907 'm',
908 'a',
909 'p',
910 'S',
911 'u',
912 'r',
913 'f',
914 'a',
915 'c',
916 'e',
917 0, // eglCreatePixmapSurface
918 'e',
919 'g',
920 'l',
921 'C',
922 'r',
923 'e',
924 'a',
925 't',
926 'e',
927 'P',
928 'i',
929 'x',
930 'm',
931 'a',
932 'p',
933 'S',
934 'u',
935 'r',
936 'f',
937 'a',
938 'c',
939 'e',
940 'H',
941 'I',
942 0, // eglCreatePixmapSurfaceHI
943 'e',
944 'g',
945 'l',
946 'C',
947 'r',
948 'e',
949 'a',
950 't',
951 'e',
952 'P',
953 'l',
954 'a',
955 't',
956 'f',
957 'o',
958 'r',
959 'm',
960 'P',
961 'i',
962 'x',
963 'm',
964 'a',
965 'p',
966 'S',
967 'u',
968 'r',
969 'f',
970 'a',
971 'c',
972 'e',
973 0, // eglCreatePlatformPixmapSurface
974 'e',
975 'g',
976 'l',
977 'C',
978 'r',
979 'e',
980 'a',
981 't',
982 'e',
983 'P',
984 'l',
985 'a',
986 't',
987 'f',
988 'o',
989 'r',
990 'm',
991 'P',
992 'i',
993 'x',
994 'm',
995 'a',
996 'p',
997 'S',
998 'u',
999 'r',
1000 'f',
1001 'a',
1002 'c',
1003 'e',
1004 'E',
1005 'X',
1006 'T',
1007 0, // eglCreatePlatformPixmapSurfaceEXT
1008 'e',
1009 'g',
1010 'l',
1011 'C',
1012 'r',
1013 'e',
1014 'a',
1015 't',
1016 'e',
1017 'P',
1018 'l',
1019 'a',
1020 't',
1021 'f',
1022 'o',
1023 'r',
1024 'm',
1025 'W',
1026 'i',
1027 'n',
1028 'd',
1029 'o',
1030 'w',
1031 'S',
1032 'u',
1033 'r',
1034 'f',
1035 'a',
1036 'c',
1037 'e',
1038 0, // eglCreatePlatformWindowSurface
1039 'e',
1040 'g',
1041 'l',
1042 'C',
1043 'r',
1044 'e',
1045 'a',
1046 't',
1047 'e',
1048 'P',
1049 'l',
1050 'a',
1051 't',
1052 'f',
1053 'o',
1054 'r',
1055 'm',
1056 'W',
1057 'i',
1058 'n',
1059 'd',
1060 'o',
1061 'w',
1062 'S',
1063 'u',
1064 'r',
1065 'f',
1066 'a',
1067 'c',
1068 'e',
1069 'E',
1070 'X',
1071 'T',
1072 0, // eglCreatePlatformWindowSurfaceEXT
1073 'e',
1074 'g',
1075 'l',
1076 'C',
1077 'r',
1078 'e',
1079 'a',
1080 't',
1081 'e',
1082 'S',
1083 't',
1084 'r',
1085 'e',
1086 'a',
1087 'm',
1088 'A',
1089 't',
1090 't',
1091 'r',
1092 'i',
1093 'b',
1094 'K',
1095 'H',
1096 'R',
1097 0, // eglCreateStreamAttribKHR
1098 'e',
1099 'g',
1100 'l',
1101 'C',
1102 'r',
1103 'e',
1104 'a',
1105 't',
1106 'e',
1107 'S',
1108 't',
1109 'r',
1110 'e',
1111 'a',
1112 'm',
1113 'F',
1114 'r',
1115 'o',
1116 'm',
1117 'F',
1118 'i',
1119 'l',
1120 'e',
1121 'D',
1122 'e',
1123 's',
1124 'c',
1125 'r',
1126 'i',
1127 'p',
1128 't',
1129 'o',
1130 'r',
1131 'K',
1132 'H',
1133 'R',
1134 0, // eglCreateStreamFromFileDescriptorKHR
1135 'e',
1136 'g',
1137 'l',
1138 'C',
1139 'r',
1140 'e',
1141 'a',
1142 't',
1143 'e',
1144 'S',
1145 't',
1146 'r',
1147 'e',
1148 'a',
1149 'm',
1150 'K',
1151 'H',
1152 'R',
1153 0, // eglCreateStreamKHR
1154 'e',
1155 'g',
1156 'l',
1157 'C',
1158 'r',
1159 'e',
1160 'a',
1161 't',
1162 'e',
1163 'S',
1164 't',
1165 'r',
1166 'e',
1167 'a',
1168 'm',
1169 'P',
1170 'r',
1171 'o',
1172 'd',
1173 'u',
1174 'c',
1175 'e',
1176 'r',
1177 'S',
1178 'u',
1179 'r',
1180 'f',
1181 'a',
1182 'c',
1183 'e',
1184 'K',
1185 'H',
1186 'R',
1187 0, // eglCreateStreamProducerSurfaceKHR
1188 'e',
1189 'g',
1190 'l',
1191 'C',
1192 'r',
1193 'e',
1194 'a',
1195 't',
1196 'e',
1197 'S',
1198 't',
1199 'r',
1200 'e',
1201 'a',
1202 'm',
1203 'S',
1204 'y',
1205 'n',
1206 'c',
1207 'N',
1208 'V',
1209 0, // eglCreateStreamSyncNV
1210 'e',
1211 'g',
1212 'l',
1213 'C',
1214 'r',
1215 'e',
1216 'a',
1217 't',
1218 'e',
1219 'S',
1220 'y',
1221 'n',
1222 'c',
1223 0, // eglCreateSync
1224 'e',
1225 'g',
1226 'l',
1227 'C',
1228 'r',
1229 'e',
1230 'a',
1231 't',
1232 'e',
1233 'S',
1234 'y',
1235 'n',
1236 'c',
1237 '6',
1238 '4',
1239 'K',
1240 'H',
1241 'R',
1242 0, // eglCreateSync64KHR
1243 'e',
1244 'g',
1245 'l',
1246 'C',
1247 'r',
1248 'e',
1249 'a',
1250 't',
1251 'e',
1252 'S',
1253 'y',
1254 'n',
1255 'c',
1256 'K',
1257 'H',
1258 'R',
1259 0, // eglCreateSyncKHR
1260 'e',
1261 'g',
1262 'l',
1263 'C',
1264 'r',
1265 'e',
1266 'a',
1267 't',
1268 'e',
1269 'W',
1270 'i',
1271 'n',
1272 'd',
1273 'o',
1274 'w',
1275 'S',
1276 'u',
1277 'r',
1278 'f',
1279 'a',
1280 'c',
1281 'e',
1282 0, // eglCreateWindowSurface
1283 'e',
1284 'g',
1285 'l',
1286 'D',
1287 'e',
1288 'b',
1289 'u',
1290 'g',
1291 'M',
1292 'e',
1293 's',
1294 's',
1295 'a',
1296 'g',
1297 'e',
1298 'C',
1299 'o',
1300 'n',
1301 't',
1302 'r',
1303 'o',
1304 'l',
1305 'K',
1306 'H',
1307 'R',
1308 0, // eglDebugMessageControlKHR
1309 'e',
1310 'g',
1311 'l',
1312 'D',
1313 'e',
1314 's',
1315 't',
1316 'r',
1317 'o',
1318 'y',
1319 'C',
1320 'o',
1321 'n',
1322 't',
1323 'e',
1324 'x',
1325 't',
1326 0, // eglDestroyContext
1327 'e',
1328 'g',
1329 'l',
1330 'D',
1331 'e',
1332 's',
1333 't',
1334 'r',
1335 'o',
1336 'y',
1337 'I',
1338 'm',
1339 'a',
1340 'g',
1341 'e',
1342 0, // eglDestroyImage
1343 'e',
1344 'g',
1345 'l',
1346 'D',
1347 'e',
1348 's',
1349 't',
1350 'r',
1351 'o',
1352 'y',
1353 'I',
1354 'm',
1355 'a',
1356 'g',
1357 'e',
1358 'K',
1359 'H',
1360 'R',
1361 0, // eglDestroyImageKHR
1362 'e',
1363 'g',
1364 'l',
1365 'D',
1366 'e',
1367 's',
1368 't',
1369 'r',
1370 'o',
1371 'y',
1372 'S',
1373 't',
1374 'r',
1375 'e',
1376 'a',
1377 'm',
1378 'K',
1379 'H',
1380 'R',
1381 0, // eglDestroyStreamKHR
1382 'e',
1383 'g',
1384 'l',
1385 'D',
1386 'e',
1387 's',
1388 't',
1389 'r',
1390 'o',
1391 'y',
1392 'S',
1393 'u',
1394 'r',
1395 'f',
1396 'a',
1397 'c',
1398 'e',
1399 0, // eglDestroySurface
1400 'e',
1401 'g',
1402 'l',
1403 'D',
1404 'e',
1405 's',
1406 't',
1407 'r',
1408 'o',
1409 'y',
1410 'S',
1411 'y',
1412 'n',
1413 'c',
1414 0, // eglDestroySync
1415 'e',
1416 'g',
1417 'l',
1418 'D',
1419 'e',
1420 's',
1421 't',
1422 'r',
1423 'o',
1424 'y',
1425 'S',
1426 'y',
1427 'n',
1428 'c',
1429 'K',
1430 'H',
1431 'R',
1432 0, // eglDestroySyncKHR
1433 'e',
1434 'g',
1435 'l',
1436 'D',
1437 'e',
1438 's',
1439 't',
1440 'r',
1441 'o',
1442 'y',
1443 'S',
1444 'y',
1445 'n',
1446 'c',
1447 'N',
1448 'V',
1449 0, // eglDestroySyncNV
1450 'e',
1451 'g',
1452 'l',
1453 'D',
1454 'u',
1455 'p',
1456 'N',
1457 'a',
1458 't',
1459 'i',
1460 'v',
1461 'e',
1462 'F',
1463 'e',
1464 'n',
1465 'c',
1466 'e',
1467 'F',
1468 'D',
1469 'A',
1470 'N',
1471 'D',
1472 'R',
1473 'O',
1474 'I',
1475 'D',
1476 0, // eglDupNativeFenceFDANDROID
1477 'e',
1478 'g',
1479 'l',
1480 'E',
1481 'x',
1482 'p',
1483 'o',
1484 'r',
1485 't',
1486 'D',
1487 'M',
1488 'A',
1489 'B',
1490 'U',
1491 'F',
1492 'I',
1493 'm',
1494 'a',
1495 'g',
1496 'e',
1497 'M',
1498 'E',
1499 'S',
1500 'A',
1501 0, // eglExportDMABUFImageMESA
1502 'e',
1503 'g',
1504 'l',
1505 'E',
1506 'x',
1507 'p',
1508 'o',
1509 'r',
1510 't',
1511 'D',
1512 'M',
1513 'A',
1514 'B',
1515 'U',
1516 'F',
1517 'I',
1518 'm',
1519 'a',
1520 'g',
1521 'e',
1522 'Q',
1523 'u',
1524 'e',
1525 'r',
1526 'y',
1527 'M',
1528 'E',
1529 'S',
1530 'A',
1531 0, // eglExportDMABUFImageQueryMESA
1532 'e',
1533 'g',
1534 'l',
1535 'E',
1536 'x',
1537 'p',
1538 'o',
1539 'r',
1540 't',
1541 'D',
1542 'R',
1543 'M',
1544 'I',
1545 'm',
1546 'a',
1547 'g',
1548 'e',
1549 'M',
1550 'E',
1551 'S',
1552 'A',
1553 0, // eglExportDRMImageMESA
1554 'e',
1555 'g',
1556 'l',
1557 'F',
1558 'e',
1559 'n',
1560 'c',
1561 'e',
1562 'N',
1563 'V',
1564 0, // eglFenceNV
1565 'e',
1566 'g',
1567 'l',
1568 'G',
1569 'e',
1570 't',
1571 'C',
1572 'o',
1573 'm',
1574 'p',
1575 'o',
1576 's',
1577 'i',
1578 't',
1579 'o',
1580 'r',
1581 'T',
1582 'i',
1583 'm',
1584 'i',
1585 'n',
1586 'g',
1587 'A',
1588 'N',
1589 'D',
1590 'R',
1591 'O',
1592 'I',
1593 'D',
1594 0, // eglGetCompositorTimingANDROID
1595 'e',
1596 'g',
1597 'l',
1598 'G',
1599 'e',
1600 't',
1601 'C',
1602 'o',
1603 'm',
1604 'p',
1605 'o',
1606 's',
1607 'i',
1608 't',
1609 'o',
1610 'r',
1611 'T',
1612 'i',
1613 'm',
1614 'i',
1615 'n',
1616 'g',
1617 'S',
1618 'u',
1619 'p',
1620 'p',
1621 'o',
1622 'r',
1623 't',
1624 'e',
1625 'd',
1626 'A',
1627 'N',
1628 'D',
1629 'R',
1630 'O',
1631 'I',
1632 'D',
1633 0, // eglGetCompositorTimingSupportedANDROID
1634 'e',
1635 'g',
1636 'l',
1637 'G',
1638 'e',
1639 't',
1640 'C',
1641 'o',
1642 'n',
1643 'f',
1644 'i',
1645 'g',
1646 'A',
1647 't',
1648 't',
1649 'r',
1650 'i',
1651 'b',
1652 0, // eglGetConfigAttrib
1653 'e',
1654 'g',
1655 'l',
1656 'G',
1657 'e',
1658 't',
1659 'C',
1660 'o',
1661 'n',
1662 'f',
1663 'i',
1664 'g',
1665 's',
1666 0, // eglGetConfigs
1667 'e',
1668 'g',
1669 'l',
1670 'G',
1671 'e',
1672 't',
1673 'C',
1674 'u',
1675 'r',
1676 'r',
1677 'e',
1678 'n',
1679 't',
1680 'C',
1681 'o',
1682 'n',
1683 't',
1684 'e',
1685 'x',
1686 't',
1687 0, // eglGetCurrentContext
1688 'e',
1689 'g',
1690 'l',
1691 'G',
1692 'e',
1693 't',
1694 'C',
1695 'u',
1696 'r',
1697 'r',
1698 'e',
1699 'n',
1700 't',
1701 'D',
1702 'i',
1703 's',
1704 'p',
1705 'l',
1706 'a',
1707 'y',
1708 0, // eglGetCurrentDisplay
1709 'e',
1710 'g',
1711 'l',
1712 'G',
1713 'e',
1714 't',
1715 'C',
1716 'u',
1717 'r',
1718 'r',
1719 'e',
1720 'n',
1721 't',
1722 'S',
1723 'u',
1724 'r',
1725 'f',
1726 'a',
1727 'c',
1728 'e',
1729 0, // eglGetCurrentSurface
1730 'e',
1731 'g',
1732 'l',
1733 'G',
1734 'e',
1735 't',
1736 'D',
1737 'i',
1738 's',
1739 'p',
1740 'l',
1741 'a',
1742 'y',
1743 0, // eglGetDisplay
1744 'e',
1745 'g',
1746 'l',
1747 'G',
1748 'e',
1749 't',
1750 'D',
1751 'i',
1752 's',
1753 'p',
1754 'l',
1755 'a',
1756 'y',
1757 'D',
1758 'r',
1759 'i',
1760 'v',
1761 'e',
1762 'r',
1763 'C',
1764 'o',
1765 'n',
1766 'f',
1767 'i',
1768 'g',
1769 0, // eglGetDisplayDriverConfig
1770 'e',
1771 'g',
1772 'l',
1773 'G',
1774 'e',
1775 't',
1776 'D',
1777 'i',
1778 's',
1779 'p',
1780 'l',
1781 'a',
1782 'y',
1783 'D',
1784 'r',
1785 'i',
1786 'v',
1787 'e',
1788 'r',
1789 'N',
1790 'a',
1791 'm',
1792 'e',
1793 0, // eglGetDisplayDriverName
1794 'e',
1795 'g',
1796 'l',
1797 'G',
1798 'e',
1799 't',
1800 'E',
1801 'r',
1802 'r',
1803 'o',
1804 'r',
1805 0, // eglGetError
1806 'e',
1807 'g',
1808 'l',
1809 'G',
1810 'e',
1811 't',
1812 'F',
1813 'r',
1814 'a',
1815 'm',
1816 'e',
1817 'T',
1818 'i',
1819 'm',
1820 'e',
1821 's',
1822 't',
1823 'a',
1824 'm',
1825 'p',
1826 'S',
1827 'u',
1828 'p',
1829 'p',
1830 'o',
1831 'r',
1832 't',
1833 'e',
1834 'd',
1835 'A',
1836 'N',
1837 'D',
1838 'R',
1839 'O',
1840 'I',
1841 'D',
1842 0, // eglGetFrameTimestampSupportedANDROID
1843 'e',
1844 'g',
1845 'l',
1846 'G',
1847 'e',
1848 't',
1849 'F',
1850 'r',
1851 'a',
1852 'm',
1853 'e',
1854 'T',
1855 'i',
1856 'm',
1857 'e',
1858 's',
1859 't',
1860 'a',
1861 'm',
1862 'p',
1863 's',
1864 'A',
1865 'N',
1866 'D',
1867 'R',
1868 'O',
1869 'I',
1870 'D',
1871 0, // eglGetFrameTimestampsANDROID
1872 'e',
1873 'g',
1874 'l',
1875 'G',
1876 'e',
1877 't',
1878 'N',
1879 'a',
1880 't',
1881 'i',
1882 'v',
1883 'e',
1884 'C',
1885 'l',
1886 'i',
1887 'e',
1888 'n',
1889 't',
1890 'B',
1891 'u',
1892 'f',
1893 'f',
1894 'e',
1895 'r',
1896 'A',
1897 'N',
1898 'D',
1899 'R',
1900 'O',
1901 'I',
1902 'D',
1903 0, // eglGetNativeClientBufferANDROID
1904 'e',
1905 'g',
1906 'l',
1907 'G',
1908 'e',
1909 't',
1910 'N',
1911 'e',
1912 'x',
1913 't',
1914 'F',
1915 'r',
1916 'a',
1917 'm',
1918 'e',
1919 'I',
1920 'd',
1921 'A',
1922 'N',
1923 'D',
1924 'R',
1925 'O',
1926 'I',
1927 'D',
1928 0, // eglGetNextFrameIdANDROID
1929 'e',
1930 'g',
1931 'l',
1932 'G',
1933 'e',
1934 't',
1935 'O',
1936 'u',
1937 't',
1938 'p',
1939 'u',
1940 't',
1941 'L',
1942 'a',
1943 'y',
1944 'e',
1945 'r',
1946 's',
1947 'E',
1948 'X',
1949 'T',
1950 0, // eglGetOutputLayersEXT
1951 'e',
1952 'g',
1953 'l',
1954 'G',
1955 'e',
1956 't',
1957 'O',
1958 'u',
1959 't',
1960 'p',
1961 'u',
1962 't',
1963 'P',
1964 'o',
1965 'r',
1966 't',
1967 's',
1968 'E',
1969 'X',
1970 'T',
1971 0, // eglGetOutputPortsEXT
1972 'e',
1973 'g',
1974 'l',
1975 'G',
1976 'e',
1977 't',
1978 'P',
1979 'l',
1980 'a',
1981 't',
1982 'f',
1983 'o',
1984 'r',
1985 'm',
1986 'D',
1987 'i',
1988 's',
1989 'p',
1990 'l',
1991 'a',
1992 'y',
1993 0, // eglGetPlatformDisplay
1994 'e',
1995 'g',
1996 'l',
1997 'G',
1998 'e',
1999 't',
2000 'P',
2001 'l',
2002 'a',
2003 't',
2004 'f',
2005 'o',
2006 'r',
2007 'm',
2008 'D',
2009 'i',
2010 's',
2011 'p',
2012 'l',
2013 'a',
2014 'y',
2015 'E',
2016 'X',
2017 'T',
2018 0, // eglGetPlatformDisplayEXT
2019 'e',
2020 'g',
2021 'l',
2022 'G',
2023 'e',
2024 't',
2025 'P',
2026 'r',
2027 'o',
2028 'c',
2029 'A',
2030 'd',
2031 'd',
2032 'r',
2033 'e',
2034 's',
2035 's',
2036 0, // eglGetProcAddress
2037 'e',
2038 'g',
2039 'l',
2040 'G',
2041 'e',
2042 't',
2043 'S',
2044 't',
2045 'r',
2046 'e',
2047 'a',
2048 'm',
2049 'F',
2050 'i',
2051 'l',
2052 'e',
2053 'D',
2054 'e',
2055 's',
2056 'c',
2057 'r',
2058 'i',
2059 'p',
2060 't',
2061 'o',
2062 'r',
2063 'K',
2064 'H',
2065 'R',
2066 0, // eglGetStreamFileDescriptorKHR
2067 'e',
2068 'g',
2069 'l',
2070 'G',
2071 'e',
2072 't',
2073 'S',
2074 'y',
2075 'n',
2076 'c',
2077 'A',
2078 't',
2079 't',
2080 'r',
2081 'i',
2082 'b',
2083 0, // eglGetSyncAttrib
2084 'e',
2085 'g',
2086 'l',
2087 'G',
2088 'e',
2089 't',
2090 'S',
2091 'y',
2092 'n',
2093 'c',
2094 'A',
2095 't',
2096 't',
2097 'r',
2098 'i',
2099 'b',
2100 'K',
2101 'H',
2102 'R',
2103 0, // eglGetSyncAttribKHR
2104 'e',
2105 'g',
2106 'l',
2107 'G',
2108 'e',
2109 't',
2110 'S',
2111 'y',
2112 'n',
2113 'c',
2114 'A',
2115 't',
2116 't',
2117 'r',
2118 'i',
2119 'b',
2120 'N',
2121 'V',
2122 0, // eglGetSyncAttribNV
2123 'e',
2124 'g',
2125 'l',
2126 'G',
2127 'e',
2128 't',
2129 'S',
2130 'y',
2131 's',
2132 't',
2133 'e',
2134 'm',
2135 'T',
2136 'i',
2137 'm',
2138 'e',
2139 'F',
2140 'r',
2141 'e',
2142 'q',
2143 'u',
2144 'e',
2145 'n',
2146 'c',
2147 'y',
2148 'N',
2149 'V',
2150 0, // eglGetSystemTimeFrequencyNV
2151 'e',
2152 'g',
2153 'l',
2154 'G',
2155 'e',
2156 't',
2157 'S',
2158 'y',
2159 's',
2160 't',
2161 'e',
2162 'm',
2163 'T',
2164 'i',
2165 'm',
2166 'e',
2167 'N',
2168 'V',
2169 0, // eglGetSystemTimeNV
2170 'e',
2171 'g',
2172 'l',
2173 'I',
2174 'n',
2175 'i',
2176 't',
2177 'i',
2178 'a',
2179 'l',
2180 'i',
2181 'z',
2182 'e',
2183 0, // eglInitialize
2184 'e',
2185 'g',
2186 'l',
2187 'L',
2188 'a',
2189 'b',
2190 'e',
2191 'l',
2192 'O',
2193 'b',
2194 'j',
2195 'e',
2196 'c',
2197 't',
2198 'K',
2199 'H',
2200 'R',
2201 0, // eglLabelObjectKHR
2202 'e',
2203 'g',
2204 'l',
2205 'L',
2206 'o',
2207 'c',
2208 'k',
2209 'S',
2210 'u',
2211 'r',
2212 'f',
2213 'a',
2214 'c',
2215 'e',
2216 'K',
2217 'H',
2218 'R',
2219 0, // eglLockSurfaceKHR
2220 'e',
2221 'g',
2222 'l',
2223 'M',
2224 'a',
2225 'k',
2226 'e',
2227 'C',
2228 'u',
2229 'r',
2230 'r',
2231 'e',
2232 'n',
2233 't',
2234 0, // eglMakeCurrent
2235 'e',
2236 'g',
2237 'l',
2238 'O',
2239 'u',
2240 't',
2241 'p',
2242 'u',
2243 't',
2244 'L',
2245 'a',
2246 'y',
2247 'e',
2248 'r',
2249 'A',
2250 't',
2251 't',
2252 'r',
2253 'i',
2254 'b',
2255 'E',
2256 'X',
2257 'T',
2258 0, // eglOutputLayerAttribEXT
2259 'e',
2260 'g',
2261 'l',
2262 'O',
2263 'u',
2264 't',
2265 'p',
2266 'u',
2267 't',
2268 'P',
2269 'o',
2270 'r',
2271 't',
2272 'A',
2273 't',
2274 't',
2275 'r',
2276 'i',
2277 'b',
2278 'E',
2279 'X',
2280 'T',
2281 0, // eglOutputPortAttribEXT
2282 'e',
2283 'g',
2284 'l',
2285 'P',
2286 'o',
2287 's',
2288 't',
2289 'S',
2290 'u',
2291 'b',
2292 'B',
2293 'u',
2294 'f',
2295 'f',
2296 'e',
2297 'r',
2298 'N',
2299 'V',
2300 0, // eglPostSubBufferNV
2301 'e',
2302 'g',
2303 'l',
2304 'P',
2305 'r',
2306 'e',
2307 's',
2308 'e',
2309 'n',
2310 't',
2311 'a',
2312 't',
2313 'i',
2314 'o',
2315 'n',
2316 'T',
2317 'i',
2318 'm',
2319 'e',
2320 'A',
2321 'N',
2322 'D',
2323 'R',
2324 'O',
2325 'I',
2326 'D',
2327 0, // eglPresentationTimeANDROID
2328 'e',
2329 'g',
2330 'l',
2331 'Q',
2332 'u',
2333 'e',
2334 'r',
2335 'y',
2336 'A',
2337 'P',
2338 'I',
2339 0, // eglQueryAPI
2340 'e',
2341 'g',
2342 'l',
2343 'Q',
2344 'u',
2345 'e',
2346 'r',
2347 'y',
2348 'C',
2349 'o',
2350 'n',
2351 't',
2352 'e',
2353 'x',
2354 't',
2355 0, // eglQueryContext
2356 'e',
2357 'g',
2358 'l',
2359 'Q',
2360 'u',
2361 'e',
2362 'r',
2363 'y',
2364 'D',
2365 'e',
2366 'b',
2367 'u',
2368 'g',
2369 'K',
2370 'H',
2371 'R',
2372 0, // eglQueryDebugKHR
2373 'e',
2374 'g',
2375 'l',
2376 'Q',
2377 'u',
2378 'e',
2379 'r',
2380 'y',
2381 'D',
2382 'e',
2383 'v',
2384 'i',
2385 'c',
2386 'e',
2387 'A',
2388 't',
2389 't',
2390 'r',
2391 'i',
2392 'b',
2393 'E',
2394 'X',
2395 'T',
2396 0, // eglQueryDeviceAttribEXT
2397 'e',
2398 'g',
2399 'l',
2400 'Q',
2401 'u',
2402 'e',
2403 'r',
2404 'y',
2405 'D',
2406 'e',
2407 'v',
2408 'i',
2409 'c',
2410 'e',
2411 'S',
2412 't',
2413 'r',
2414 'i',
2415 'n',
2416 'g',
2417 'E',
2418 'X',
2419 'T',
2420 0, // eglQueryDeviceStringEXT
2421 'e',
2422 'g',
2423 'l',
2424 'Q',
2425 'u',
2426 'e',
2427 'r',
2428 'y',
2429 'D',
2430 'e',
2431 'v',
2432 'i',
2433 'c',
2434 'e',
2435 's',
2436 'E',
2437 'X',
2438 'T',
2439 0, // eglQueryDevicesEXT
2440 'e',
2441 'g',
2442 'l',
2443 'Q',
2444 'u',
2445 'e',
2446 'r',
2447 'y',
2448 'D',
2449 'i',
2450 's',
2451 'p',
2452 'l',
2453 'a',
2454 'y',
2455 'A',
2456 't',
2457 't',
2458 'r',
2459 'i',
2460 'b',
2461 'E',
2462 'X',
2463 'T',
2464 0, // eglQueryDisplayAttribEXT
2465 'e',
2466 'g',
2467 'l',
2468 'Q',
2469 'u',
2470 'e',
2471 'r',
2472 'y',
2473 'D',
2474 'i',
2475 's',
2476 'p',
2477 'l',
2478 'a',
2479 'y',
2480 'A',
2481 't',
2482 't',
2483 'r',
2484 'i',
2485 'b',
2486 'K',
2487 'H',
2488 'R',
2489 0, // eglQueryDisplayAttribKHR
2490 'e',
2491 'g',
2492 'l',
2493 'Q',
2494 'u',
2495 'e',
2496 'r',
2497 'y',
2498 'D',
2499 'i',
2500 's',
2501 'p',
2502 'l',
2503 'a',
2504 'y',
2505 'A',
2506 't',
2507 't',
2508 'r',
2509 'i',
2510 'b',
2511 'N',
2512 'V',
2513 0, // eglQueryDisplayAttribNV
2514 'e',
2515 'g',
2516 'l',
2517 'Q',
2518 'u',
2519 'e',
2520 'r',
2521 'y',
2522 'D',
2523 'm',
2524 'a',
2525 'B',
2526 'u',
2527 'f',
2528 'F',
2529 'o',
2530 'r',
2531 'm',
2532 'a',
2533 't',
2534 's',
2535 'E',
2536 'X',
2537 'T',
2538 0, // eglQueryDmaBufFormatsEXT
2539 'e',
2540 'g',
2541 'l',
2542 'Q',
2543 'u',
2544 'e',
2545 'r',
2546 'y',
2547 'D',
2548 'm',
2549 'a',
2550 'B',
2551 'u',
2552 'f',
2553 'M',
2554 'o',
2555 'd',
2556 'i',
2557 'f',
2558 'i',
2559 'e',
2560 'r',
2561 's',
2562 'E',
2563 'X',
2564 'T',
2565 0, // eglQueryDmaBufModifiersEXT
2566 'e',
2567 'g',
2568 'l',
2569 'Q',
2570 'u',
2571 'e',
2572 'r',
2573 'y',
2574 'N',
2575 'a',
2576 't',
2577 'i',
2578 'v',
2579 'e',
2580 'D',
2581 'i',
2582 's',
2583 'p',
2584 'l',
2585 'a',
2586 'y',
2587 'N',
2588 'V',
2589 0, // eglQueryNativeDisplayNV
2590 'e',
2591 'g',
2592 'l',
2593 'Q',
2594 'u',
2595 'e',
2596 'r',
2597 'y',
2598 'N',
2599 'a',
2600 't',
2601 'i',
2602 'v',
2603 'e',
2604 'P',
2605 'i',
2606 'x',
2607 'm',
2608 'a',
2609 'p',
2610 'N',
2611 'V',
2612 0, // eglQueryNativePixmapNV
2613 'e',
2614 'g',
2615 'l',
2616 'Q',
2617 'u',
2618 'e',
2619 'r',
2620 'y',
2621 'N',
2622 'a',
2623 't',
2624 'i',
2625 'v',
2626 'e',
2627 'W',
2628 'i',
2629 'n',
2630 'd',
2631 'o',
2632 'w',
2633 'N',
2634 'V',
2635 0, // eglQueryNativeWindowNV
2636 'e',
2637 'g',
2638 'l',
2639 'Q',
2640 'u',
2641 'e',
2642 'r',
2643 'y',
2644 'O',
2645 'u',
2646 't',
2647 'p',
2648 'u',
2649 't',
2650 'L',
2651 'a',
2652 'y',
2653 'e',
2654 'r',
2655 'A',
2656 't',
2657 't',
2658 'r',
2659 'i',
2660 'b',
2661 'E',
2662 'X',
2663 'T',
2664 0, // eglQueryOutputLayerAttribEXT
2665 'e',
2666 'g',
2667 'l',
2668 'Q',
2669 'u',
2670 'e',
2671 'r',
2672 'y',
2673 'O',
2674 'u',
2675 't',
2676 'p',
2677 'u',
2678 't',
2679 'L',
2680 'a',
2681 'y',
2682 'e',
2683 'r',
2684 'S',
2685 't',
2686 'r',
2687 'i',
2688 'n',
2689 'g',
2690 'E',
2691 'X',
2692 'T',
2693 0, // eglQueryOutputLayerStringEXT
2694 'e',
2695 'g',
2696 'l',
2697 'Q',
2698 'u',
2699 'e',
2700 'r',
2701 'y',
2702 'O',
2703 'u',
2704 't',
2705 'p',
2706 'u',
2707 't',
2708 'P',
2709 'o',
2710 'r',
2711 't',
2712 'A',
2713 't',
2714 't',
2715 'r',
2716 'i',
2717 'b',
2718 'E',
2719 'X',
2720 'T',
2721 0, // eglQueryOutputPortAttribEXT
2722 'e',
2723 'g',
2724 'l',
2725 'Q',
2726 'u',
2727 'e',
2728 'r',
2729 'y',
2730 'O',
2731 'u',
2732 't',
2733 'p',
2734 'u',
2735 't',
2736 'P',
2737 'o',
2738 'r',
2739 't',
2740 'S',
2741 't',
2742 'r',
2743 'i',
2744 'n',
2745 'g',
2746 'E',
2747 'X',
2748 'T',
2749 0, // eglQueryOutputPortStringEXT
2750 'e',
2751 'g',
2752 'l',
2753 'Q',
2754 'u',
2755 'e',
2756 'r',
2757 'y',
2758 'S',
2759 't',
2760 'r',
2761 'e',
2762 'a',
2763 'm',
2764 'A',
2765 't',
2766 't',
2767 'r',
2768 'i',
2769 'b',
2770 'K',
2771 'H',
2772 'R',
2773 0, // eglQueryStreamAttribKHR
2774 'e',
2775 'g',
2776 'l',
2777 'Q',
2778 'u',
2779 'e',
2780 'r',
2781 'y',
2782 'S',
2783 't',
2784 'r',
2785 'e',
2786 'a',
2787 'm',
2788 'K',
2789 'H',
2790 'R',
2791 0, // eglQueryStreamKHR
2792 'e',
2793 'g',
2794 'l',
2795 'Q',
2796 'u',
2797 'e',
2798 'r',
2799 'y',
2800 'S',
2801 't',
2802 'r',
2803 'e',
2804 'a',
2805 'm',
2806 'M',
2807 'e',
2808 't',
2809 'a',
2810 'd',
2811 'a',
2812 't',
2813 'a',
2814 'N',
2815 'V',
2816 0, // eglQueryStreamMetadataNV
2817 'e',
2818 'g',
2819 'l',
2820 'Q',
2821 'u',
2822 'e',
2823 'r',
2824 'y',
2825 'S',
2826 't',
2827 'r',
2828 'e',
2829 'a',
2830 'm',
2831 'T',
2832 'i',
2833 'm',
2834 'e',
2835 'K',
2836 'H',
2837 'R',
2838 0, // eglQueryStreamTimeKHR
2839 'e',
2840 'g',
2841 'l',
2842 'Q',
2843 'u',
2844 'e',
2845 'r',
2846 'y',
2847 'S',
2848 't',
2849 'r',
2850 'e',
2851 'a',
2852 'm',
2853 'u',
2854 '6',
2855 '4',
2856 'K',
2857 'H',
2858 'R',
2859 0, // eglQueryStreamu64KHR
2860 'e',
2861 'g',
2862 'l',
2863 'Q',
2864 'u',
2865 'e',
2866 'r',
2867 'y',
2868 'S',
2869 't',
2870 'r',
2871 'i',
2872 'n',
2873 'g',
2874 0, // eglQueryString
2875 'e',
2876 'g',
2877 'l',
2878 'Q',
2879 'u',
2880 'e',
2881 'r',
2882 'y',
2883 'S',
2884 'u',
2885 'r',
2886 'f',
2887 'a',
2888 'c',
2889 'e',
2890 0, // eglQuerySurface
2891 'e',
2892 'g',
2893 'l',
2894 'Q',
2895 'u',
2896 'e',
2897 'r',
2898 'y',
2899 'S',
2900 'u',
2901 'r',
2902 'f',
2903 'a',
2904 'c',
2905 'e',
2906 '6',
2907 '4',
2908 'K',
2909 'H',
2910 'R',
2911 0, // eglQuerySurface64KHR
2912 'e',
2913 'g',
2914 'l',
2915 'Q',
2916 'u',
2917 'e',
2918 'r',
2919 'y',
2920 'S',
2921 'u',
2922 'r',
2923 'f',
2924 'a',
2925 'c',
2926 'e',
2927 'P',
2928 'o',
2929 'i',
2930 'n',
2931 't',
2932 'e',
2933 'r',
2934 'A',
2935 'N',
2936 'G',
2937 'L',
2938 'E',
2939 0, // eglQuerySurfacePointerANGLE
2940 'e',
2941 'g',
2942 'l',
2943 'R',
2944 'e',
2945 'l',
2946 'e',
2947 'a',
2948 's',
2949 'e',
2950 'T',
2951 'e',
2952 'x',
2953 'I',
2954 'm',
2955 'a',
2956 'g',
2957 'e',
2958 0, // eglReleaseTexImage
2959 'e',
2960 'g',
2961 'l',
2962 'R',
2963 'e',
2964 'l',
2965 'e',
2966 'a',
2967 's',
2968 'e',
2969 'T',
2970 'h',
2971 'r',
2972 'e',
2973 'a',
2974 'd',
2975 0, // eglReleaseThread
2976 'e',
2977 'g',
2978 'l',
2979 'R',
2980 'e',
2981 's',
2982 'e',
2983 't',
2984 'S',
2985 't',
2986 'r',
2987 'e',
2988 'a',
2989 'm',
2990 'N',
2991 'V',
2992 0, // eglResetStreamNV
2993 'e',
2994 'g',
2995 'l',
2996 'S',
2997 'e',
2998 't',
2999 'B',
3000 'l',
3001 'o',
3002 'b',
3003 'C',
3004 'a',
3005 'c',
3006 'h',
3007 'e',
3008 'F',
3009 'u',
3010 'n',
3011 'c',
3012 's',
3013 'A',
3014 'N',
3015 'D',
3016 'R',
3017 'O',
3018 'I',
3019 'D',
3020 0, // eglSetBlobCacheFuncsANDROID
3021 'e',
3022 'g',
3023 'l',
3024 'S',
3025 'e',
3026 't',
3027 'D',
3028 'a',
3029 'm',
3030 'a',
3031 'g',
3032 'e',
3033 'R',
3034 'e',
3035 'g',
3036 'i',
3037 'o',
3038 'n',
3039 'K',
3040 'H',
3041 'R',
3042 0, // eglSetDamageRegionKHR
3043 'e',
3044 'g',
3045 'l',
3046 'S',
3047 'e',
3048 't',
3049 'S',
3050 't',
3051 'r',
3052 'e',
3053 'a',
3054 'm',
3055 'A',
3056 't',
3057 't',
3058 'r',
3059 'i',
3060 'b',
3061 'K',
3062 'H',
3063 'R',
3064 0, // eglSetStreamAttribKHR
3065 'e',
3066 'g',
3067 'l',
3068 'S',
3069 'e',
3070 't',
3071 'S',
3072 't',
3073 'r',
3074 'e',
3075 'a',
3076 'm',
3077 'M',
3078 'e',
3079 't',
3080 'a',
3081 'd',
3082 'a',
3083 't',
3084 'a',
3085 'N',
3086 'V',
3087 0, // eglSetStreamMetadataNV
3088 'e',
3089 'g',
3090 'l',
3091 'S',
3092 'i',
3093 'g',
3094 'n',
3095 'a',
3096 'l',
3097 'S',
3098 'y',
3099 'n',
3100 'c',
3101 'K',
3102 'H',
3103 'R',
3104 0, // eglSignalSyncKHR
3105 'e',
3106 'g',
3107 'l',
3108 'S',
3109 'i',
3110 'g',
3111 'n',
3112 'a',
3113 'l',
3114 'S',
3115 'y',
3116 'n',
3117 'c',
3118 'N',
3119 'V',
3120 0, // eglSignalSyncNV
3121 'e',
3122 'g',
3123 'l',
3124 'S',
3125 't',
3126 'r',
3127 'e',
3128 'a',
3129 'm',
3130 'A',
3131 't',
3132 't',
3133 'r',
3134 'i',
3135 'b',
3136 'K',
3137 'H',
3138 'R',
3139 0, // eglStreamAttribKHR
3140 'e',
3141 'g',
3142 'l',
3143 'S',
3144 't',
3145 'r',
3146 'e',
3147 'a',
3148 'm',
3149 'C',
3150 'o',
3151 'n',
3152 's',
3153 'u',
3154 'm',
3155 'e',
3156 'r',
3157 'A',
3158 'c',
3159 'q',
3160 'u',
3161 'i',
3162 'r',
3163 'e',
3164 'A',
3165 't',
3166 't',
3167 'r',
3168 'i',
3169 'b',
3170 'K',
3171 'H',
3172 'R',
3173 0, // eglStreamConsumerAcquireAttribKHR
3174 'e',
3175 'g',
3176 'l',
3177 'S',
3178 't',
3179 'r',
3180 'e',
3181 'a',
3182 'm',
3183 'C',
3184 'o',
3185 'n',
3186 's',
3187 'u',
3188 'm',
3189 'e',
3190 'r',
3191 'A',
3192 'c',
3193 'q',
3194 'u',
3195 'i',
3196 'r',
3197 'e',
3198 'K',
3199 'H',
3200 'R',
3201 0, // eglStreamConsumerAcquireKHR
3202 'e',
3203 'g',
3204 'l',
3205 'S',
3206 't',
3207 'r',
3208 'e',
3209 'a',
3210 'm',
3211 'C',
3212 'o',
3213 'n',
3214 's',
3215 'u',
3216 'm',
3217 'e',
3218 'r',
3219 'G',
3220 'L',
3221 'T',
3222 'e',
3223 'x',
3224 't',
3225 'u',
3226 'r',
3227 'e',
3228 'E',
3229 'x',
3230 't',
3231 'e',
3232 'r',
3233 'n',
3234 'a',
3235 'l',
3236 'A',
3237 't',
3238 't',
3239 'r',
3240 'i',
3241 'b',
3242 's',
3243 'N',
3244 'V',
3245 0, // eglStreamConsumerGLTextureExternalAttribsNV
3246 'e',
3247 'g',
3248 'l',
3249 'S',
3250 't',
3251 'r',
3252 'e',
3253 'a',
3254 'm',
3255 'C',
3256 'o',
3257 'n',
3258 's',
3259 'u',
3260 'm',
3261 'e',
3262 'r',
3263 'G',
3264 'L',
3265 'T',
3266 'e',
3267 'x',
3268 't',
3269 'u',
3270 'r',
3271 'e',
3272 'E',
3273 'x',
3274 't',
3275 'e',
3276 'r',
3277 'n',
3278 'a',
3279 'l',
3280 'K',
3281 'H',
3282 'R',
3283 0, // eglStreamConsumerGLTextureExternalKHR
3284 'e',
3285 'g',
3286 'l',
3287 'S',
3288 't',
3289 'r',
3290 'e',
3291 'a',
3292 'm',
3293 'C',
3294 'o',
3295 'n',
3296 's',
3297 'u',
3298 'm',
3299 'e',
3300 'r',
3301 'O',
3302 'u',
3303 't',
3304 'p',
3305 'u',
3306 't',
3307 'E',
3308 'X',
3309 'T',
3310 0, // eglStreamConsumerOutputEXT
3311 'e',
3312 'g',
3313 'l',
3314 'S',
3315 't',
3316 'r',
3317 'e',
3318 'a',
3319 'm',
3320 'C',
3321 'o',
3322 'n',
3323 's',
3324 'u',
3325 'm',
3326 'e',
3327 'r',
3328 'R',
3329 'e',
3330 'l',
3331 'e',
3332 'a',
3333 's',
3334 'e',
3335 'A',
3336 't',
3337 't',
3338 'r',
3339 'i',
3340 'b',
3341 'K',
3342 'H',
3343 'R',
3344 0, // eglStreamConsumerReleaseAttribKHR
3345 'e',
3346 'g',
3347 'l',
3348 'S',
3349 't',
3350 'r',
3351 'e',
3352 'a',
3353 'm',
3354 'C',
3355 'o',
3356 'n',
3357 's',
3358 'u',
3359 'm',
3360 'e',
3361 'r',
3362 'R',
3363 'e',
3364 'l',
3365 'e',
3366 'a',
3367 's',
3368 'e',
3369 'K',
3370 'H',
3371 'R',
3372 0, // eglStreamConsumerReleaseKHR
3373 'e',
3374 'g',
3375 'l',
3376 'S',
3377 't',
3378 'r',
3379 'e',
3380 'a',
3381 'm',
3382 'F',
3383 'l',
3384 'u',
3385 's',
3386 'h',
3387 'N',
3388 'V',
3389 0, // eglStreamFlushNV
3390 'e',
3391 'g',
3392 'l',
3393 'S',
3394 'u',
3395 'r',
3396 'f',
3397 'a',
3398 'c',
3399 'e',
3400 'A',
3401 't',
3402 't',
3403 'r',
3404 'i',
3405 'b',
3406 0, // eglSurfaceAttrib
3407 'e',
3408 'g',
3409 'l',
3410 'S',
3411 'w',
3412 'a',
3413 'p',
3414 'B',
3415 'u',
3416 'f',
3417 'f',
3418 'e',
3419 'r',
3420 's',
3421 0, // eglSwapBuffers
3422 'e',
3423 'g',
3424 'l',
3425 'S',
3426 'w',
3427 'a',
3428 'p',
3429 'B',
3430 'u',
3431 'f',
3432 'f',
3433 'e',
3434 'r',
3435 's',
3436 'R',
3437 'e',
3438 'g',
3439 'i',
3440 'o',
3441 'n',
3442 '2',
3443 'N',
3444 'O',
3445 'K',
3446 0, // eglSwapBuffersRegion2NOK
3447 'e',
3448 'g',
3449 'l',
3450 'S',
3451 'w',
3452 'a',
3453 'p',
3454 'B',
3455 'u',
3456 'f',
3457 'f',
3458 'e',
3459 'r',
3460 's',
3461 'R',
3462 'e',
3463 'g',
3464 'i',
3465 'o',
3466 'n',
3467 'N',
3468 'O',
3469 'K',
3470 0, // eglSwapBuffersRegionNOK
3471 'e',
3472 'g',
3473 'l',
3474 'S',
3475 'w',
3476 'a',
3477 'p',
3478 'B',
3479 'u',
3480 'f',
3481 'f',
3482 'e',
3483 'r',
3484 's',
3485 'W',
3486 'i',
3487 't',
3488 'h',
3489 'D',
3490 'a',
3491 'm',
3492 'a',
3493 'g',
3494 'e',
3495 'E',
3496 'X',
3497 'T',
3498 0, // eglSwapBuffersWithDamageEXT
3499 'e',
3500 'g',
3501 'l',
3502 'S',
3503 'w',
3504 'a',
3505 'p',
3506 'B',
3507 'u',
3508 'f',
3509 'f',
3510 'e',
3511 'r',
3512 's',
3513 'W',
3514 'i',
3515 't',
3516 'h',
3517 'D',
3518 'a',
3519 'm',
3520 'a',
3521 'g',
3522 'e',
3523 'K',
3524 'H',
3525 'R',
3526 0, // eglSwapBuffersWithDamageKHR
3527 'e',
3528 'g',
3529 'l',
3530 'S',
3531 'w',
3532 'a',
3533 'p',
3534 'I',
3535 'n',
3536 't',
3537 'e',
3538 'r',
3539 'v',
3540 'a',
3541 'l',
3542 0, // eglSwapInterval
3543 'e',
3544 'g',
3545 'l',
3546 'T',
3547 'e',
3548 'r',
3549 'm',
3550 'i',
3551 'n',
3552 'a',
3553 't',
3554 'e',
3555 0, // eglTerminate
3556 'e',
3557 'g',
3558 'l',
3559 'U',
3560 'n',
3561 'l',
3562 'o',
3563 'c',
3564 'k',
3565 'S',
3566 'u',
3567 'r',
3568 'f',
3569 'a',
3570 'c',
3571 'e',
3572 'K',
3573 'H',
3574 'R',
3575 0, // eglUnlockSurfaceKHR
3576 'e',
3577 'g',
3578 'l',
3579 'U',
3580 'n',
3581 's',
3582 'i',
3583 'g',
3584 'n',
3585 'a',
3586 'l',
3587 'S',
3588 'y',
3589 'n',
3590 'c',
3591 'E',
3592 'X',
3593 'T',
3594 0, // eglUnsignalSyncEXT
3595 'e',
3596 'g',
3597 'l',
3598 'W',
3599 'a',
3600 'i',
3601 't',
3602 'C',
3603 'l',
3604 'i',
3605 'e',
3606 'n',
3607 't',
3608 0, // eglWaitClient
3609 'e',
3610 'g',
3611 'l',
3612 'W',
3613 'a',
3614 'i',
3615 't',
3616 'G',
3617 'L',
3618 0, // eglWaitGL
3619 'e',
3620 'g',
3621 'l',
3622 'W',
3623 'a',
3624 'i',
3625 't',
3626 'N',
3627 'a',
3628 't',
3629 'i',
3630 'v',
3631 'e',
3632 0, // eglWaitNative
3633 'e',
3634 'g',
3635 'l',
3636 'W',
3637 'a',
3638 'i',
3639 't',
3640 'S',
3641 'y',
3642 'n',
3643 'c',
3644 0, // eglWaitSync
3645 'e',
3646 'g',
3647 'l',
3648 'W',
3649 'a',
3650 'i',
3651 't',
3652 'S',
3653 'y',
3654 'n',
3655 'c',
3656 'K',
3657 'H',
3658 'R',
3659 0, // eglWaitSyncKHR
3660 0 };
3661
3662static void *egl_provider_resolver(const char *name,
3663 const enum egl_provider *providers,
3664 const uint32_t *entrypoints)
3665{
3666 int i;
3667 for (i = 0; providers[i] != egl_provider_terminator; i++) {
3668 const char *provider_name = enum_string + enum_string_offsets[providers[i]];
3669 switch (providers[i]) {
3670
3671 case PROVIDER_EGL_10:
3672 if (true)
3673 return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
3674 break;
3675 case PROVIDER_EGL_11:
3676 if (epoxy_conservative_egl_version() >= 11)
3677 return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
3678 break;
3679 case PROVIDER_EGL_12:
3680 if (epoxy_conservative_egl_version() >= 12)
3681 return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
3682 break;
3683 case PROVIDER_EGL_14:
3684 if (epoxy_conservative_egl_version() >= 14)
3685 return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
3686 break;
3687 case PROVIDER_EGL_15:
3688 if (epoxy_conservative_egl_version() >= 15)
3689 return epoxy_egl_dlsym(entrypoint_strings + entrypoints[i]);
3690 break;
3691 case PROVIDER_EGL_ANDROID_blob_cache:
3692 if (epoxy_conservative_has_egl_extension(provider_name))
3693 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3694 break;
3695 case PROVIDER_EGL_ANDROID_create_native_client_buffer:
3696 if (epoxy_conservative_has_egl_extension(provider_name))
3697 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3698 break;
3699 case PROVIDER_EGL_ANDROID_get_frame_timestamps:
3700 if (epoxy_conservative_has_egl_extension(provider_name))
3701 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3702 break;
3703 case PROVIDER_EGL_ANDROID_get_native_client_buffer:
3704 if (epoxy_conservative_has_egl_extension(provider_name))
3705 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3706 break;
3707 case PROVIDER_EGL_ANDROID_native_fence_sync:
3708 if (epoxy_conservative_has_egl_extension(provider_name))
3709 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3710 break;
3711 case PROVIDER_EGL_ANDROID_presentation_time:
3712 if (epoxy_conservative_has_egl_extension(provider_name))
3713 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3714 break;
3715 case PROVIDER_EGL_ANGLE_query_surface_pointer:
3716 if (epoxy_conservative_has_egl_extension(provider_name))
3717 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3718 break;
3719 case PROVIDER_EGL_EXT_client_sync:
3720 if (epoxy_conservative_has_egl_extension(provider_name))
3721 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3722 break;
3723 case PROVIDER_EGL_EXT_compositor:
3724 if (epoxy_conservative_has_egl_extension(provider_name))
3725 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3726 break;
3727 case PROVIDER_EGL_EXT_device_base:
3728 if (epoxy_conservative_has_egl_extension(provider_name))
3729 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3730 break;
3731 case PROVIDER_EGL_EXT_device_enumeration:
3732 if (epoxy_conservative_has_egl_extension(provider_name))
3733 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3734 break;
3735 case PROVIDER_EGL_EXT_device_query:
3736 if (epoxy_conservative_has_egl_extension(provider_name))
3737 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3738 break;
3739 case PROVIDER_EGL_EXT_image_dma_buf_import_modifiers:
3740 if (epoxy_conservative_has_egl_extension(provider_name))
3741 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3742 break;
3743 case PROVIDER_EGL_EXT_output_base:
3744 if (epoxy_conservative_has_egl_extension(provider_name))
3745 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3746 break;
3747 case PROVIDER_EGL_EXT_platform_base:
3748 if (epoxy_conservative_has_egl_extension(provider_name))
3749 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3750 break;
3751 case PROVIDER_EGL_EXT_stream_consumer_egloutput:
3752 if (epoxy_conservative_has_egl_extension(provider_name))
3753 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3754 break;
3755 case PROVIDER_EGL_EXT_swap_buffers_with_damage:
3756 if (epoxy_conservative_has_egl_extension(provider_name))
3757 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3758 break;
3759 case PROVIDER_EGL_EXT_sync_reuse:
3760 if (epoxy_conservative_has_egl_extension(provider_name))
3761 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3762 break;
3763 case PROVIDER_EGL_HI_clientpixmap:
3764 if (epoxy_conservative_has_egl_extension(provider_name))
3765 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3766 break;
3767 case PROVIDER_EGL_KHR_cl_event2:
3768 if (epoxy_conservative_has_egl_extension(provider_name))
3769 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3770 break;
3771 case PROVIDER_EGL_KHR_debug:
3772 if (epoxy_conservative_has_egl_extension(provider_name))
3773 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3774 break;
3775 case PROVIDER_EGL_KHR_display_reference:
3776 if (epoxy_conservative_has_egl_extension(provider_name))
3777 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3778 break;
3779 case PROVIDER_EGL_KHR_fence_sync:
3780 if (epoxy_conservative_has_egl_extension(provider_name))
3781 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3782 break;
3783 case PROVIDER_EGL_KHR_image:
3784 if (epoxy_conservative_has_egl_extension(provider_name))
3785 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3786 break;
3787 case PROVIDER_EGL_KHR_image_base:
3788 if (epoxy_conservative_has_egl_extension(provider_name))
3789 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3790 break;
3791 case PROVIDER_EGL_KHR_lock_surface:
3792 if (epoxy_conservative_has_egl_extension(provider_name))
3793 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3794 break;
3795 case PROVIDER_EGL_KHR_lock_surface3:
3796 if (epoxy_conservative_has_egl_extension(provider_name))
3797 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3798 break;
3799 case PROVIDER_EGL_KHR_partial_update:
3800 if (epoxy_conservative_has_egl_extension(provider_name))
3801 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3802 break;
3803 case PROVIDER_EGL_KHR_reusable_sync:
3804 if (epoxy_conservative_has_egl_extension(provider_name))
3805 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3806 break;
3807 case PROVIDER_EGL_KHR_stream:
3808 if (epoxy_conservative_has_egl_extension(provider_name))
3809 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3810 break;
3811 case PROVIDER_EGL_KHR_stream_attrib:
3812 if (epoxy_conservative_has_egl_extension(provider_name))
3813 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3814 break;
3815 case PROVIDER_EGL_KHR_stream_consumer_gltexture:
3816 if (epoxy_conservative_has_egl_extension(provider_name))
3817 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3818 break;
3819 case PROVIDER_EGL_KHR_stream_cross_process_fd:
3820 if (epoxy_conservative_has_egl_extension(provider_name))
3821 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3822 break;
3823 case PROVIDER_EGL_KHR_stream_fifo:
3824 if (epoxy_conservative_has_egl_extension(provider_name))
3825 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3826 break;
3827 case PROVIDER_EGL_KHR_stream_producer_eglsurface:
3828 if (epoxy_conservative_has_egl_extension(provider_name))
3829 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3830 break;
3831 case PROVIDER_EGL_KHR_swap_buffers_with_damage:
3832 if (epoxy_conservative_has_egl_extension(provider_name))
3833 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3834 break;
3835 case PROVIDER_EGL_KHR_wait_sync:
3836 if (epoxy_conservative_has_egl_extension(provider_name))
3837 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3838 break;
3839 case PROVIDER_EGL_MESA_drm_image:
3840 if (epoxy_conservative_has_egl_extension(provider_name))
3841 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3842 break;
3843 case PROVIDER_EGL_MESA_image_dma_buf_export:
3844 if (epoxy_conservative_has_egl_extension(provider_name))
3845 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3846 break;
3847 case PROVIDER_EGL_MESA_query_driver:
3848 if (epoxy_conservative_has_egl_extension(provider_name))
3849 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3850 break;
3851 case PROVIDER_EGL_NOK_swap_region:
3852 if (epoxy_conservative_has_egl_extension(provider_name))
3853 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3854 break;
3855 case PROVIDER_EGL_NOK_swap_region2:
3856 if (epoxy_conservative_has_egl_extension(provider_name))
3857 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3858 break;
3859 case PROVIDER_EGL_NV_native_query:
3860 if (epoxy_conservative_has_egl_extension(provider_name))
3861 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3862 break;
3863 case PROVIDER_EGL_NV_post_sub_buffer:
3864 if (epoxy_conservative_has_egl_extension(provider_name))
3865 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3866 break;
3867 case PROVIDER_EGL_NV_stream_consumer_gltexture_yuv:
3868 if (epoxy_conservative_has_egl_extension(provider_name))
3869 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3870 break;
3871 case PROVIDER_EGL_NV_stream_flush:
3872 if (epoxy_conservative_has_egl_extension(provider_name))
3873 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3874 break;
3875 case PROVIDER_EGL_NV_stream_metadata:
3876 if (epoxy_conservative_has_egl_extension(provider_name))
3877 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3878 break;
3879 case PROVIDER_EGL_NV_stream_reset:
3880 if (epoxy_conservative_has_egl_extension(provider_name))
3881 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3882 break;
3883 case PROVIDER_EGL_NV_stream_sync:
3884 if (epoxy_conservative_has_egl_extension(provider_name))
3885 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3886 break;
3887 case PROVIDER_EGL_NV_sync:
3888 if (epoxy_conservative_has_egl_extension(provider_name))
3889 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3890 break;
3891 case PROVIDER_EGL_NV_system_time:
3892 if (epoxy_conservative_has_egl_extension(provider_name))
3893 return eglGetProcAddress(entrypoint_strings + entrypoints[i]);
3894 break;
3895 case egl_provider_terminator:
3896 abort(); /* Not reached */
3897 }
3898 }
3899
3900 if (epoxy_resolver_failure_handler)
3901 return epoxy_resolver_failure_handler(name);
3902
3903 fprintf(stderr, "No provider of %s found. Requires one of:\n", name);
3904 for (i = 0; providers[i] != egl_provider_terminator; i++) {
3905 fprintf(stderr, " %s\n", enum_string + enum_string_offsets[providers[i]]);
3906 }
3907 if (providers[0] == egl_provider_terminator) {
3908 fprintf(stderr, " No known providers. This is likely a bug "
3909 "in libepoxy code generation\n");
3910 }
3911 abort();
3912}
3913
3914EPOXY_NOINLINE static void *
3915egl_single_resolver(enum egl_provider provider, uint32_t entrypoint_offset);
3916
3917static void *
3918egl_single_resolver(enum egl_provider provider, uint32_t entrypoint_offset)
3919{
3920 enum egl_provider providers[] = {
3921 provider,
3922 egl_provider_terminator
3923 };
3924 return egl_provider_resolver(entrypoint_strings + entrypoint_offset,
3925 providers, &entrypoint_offset);
3926}
3927
3928static PFNEGLBINDAPIPROC
3929epoxy_eglBindAPI_resolver(void)
3930{
3931 return egl_single_resolver(PROVIDER_EGL_12, 0 /* eglBindAPI */);
3932}
3933
3934static PFNEGLBINDTEXIMAGEPROC
3935epoxy_eglBindTexImage_resolver(void)
3936{
3937 return egl_single_resolver(PROVIDER_EGL_11, 11 /* eglBindTexImage */);
3938}
3939
3940static PFNEGLCHOOSECONFIGPROC
3941epoxy_eglChooseConfig_resolver(void)
3942{
3943 return egl_single_resolver(PROVIDER_EGL_10, 27 /* eglChooseConfig */);
3944}
3945
3946static PFNEGLCLIENTSIGNALSYNCEXTPROC
3947epoxy_eglClientSignalSyncEXT_resolver(void)
3948{
3949 return egl_single_resolver(PROVIDER_EGL_EXT_client_sync, 43 /* eglClientSignalSyncEXT */);
3950}
3951
3952static PFNEGLCLIENTWAITSYNCPROC
3953epoxy_eglClientWaitSync_resolver(void)
3954{
3955 static const enum egl_provider providers[] = {
3956 PROVIDER_EGL_15,
3957 PROVIDER_EGL_KHR_fence_sync,
3958 PROVIDER_EGL_KHR_reusable_sync,
3959 egl_provider_terminator
3960 };
3961 static const uint32_t entrypoints[] = {
3962 66 /* "eglClientWaitSync" */,
3963 84 /* "eglClientWaitSyncKHR" */,
3964 84 /* "eglClientWaitSyncKHR" */,
3965 };
3966 return egl_provider_resolver(entrypoint_strings + 66 /* "eglClientWaitSync" */,
3967 providers, entrypoints);
3968}
3969
3970static PFNEGLCLIENTWAITSYNCKHRPROC
3971epoxy_eglClientWaitSyncKHR_resolver(void)
3972{
3973 static const enum egl_provider providers[] = {
3974 PROVIDER_EGL_KHR_fence_sync,
3975 PROVIDER_EGL_KHR_reusable_sync,
3976 PROVIDER_EGL_15,
3977 egl_provider_terminator
3978 };
3979 static const uint32_t entrypoints[] = {
3980 84 /* "eglClientWaitSyncKHR" */,
3981 84 /* "eglClientWaitSyncKHR" */,
3982 66 /* "eglClientWaitSync" */,
3983 };
3984 return egl_provider_resolver(entrypoint_strings + 84 /* "eglClientWaitSyncKHR" */,
3985 providers, entrypoints);
3986}
3987
3988static PFNEGLCLIENTWAITSYNCNVPROC
3989epoxy_eglClientWaitSyncNV_resolver(void)
3990{
3991 return egl_single_resolver(PROVIDER_EGL_NV_sync, 105 /* eglClientWaitSyncNV */);
3992}
3993
3994static PFNEGLCOMPOSITORBINDTEXWINDOWEXTPROC
3995epoxy_eglCompositorBindTexWindowEXT_resolver(void)
3996{
3997 return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 125 /* eglCompositorBindTexWindowEXT */);
3998}
3999
4000static PFNEGLCOMPOSITORSETCONTEXTATTRIBUTESEXTPROC
4001epoxy_eglCompositorSetContextAttributesEXT_resolver(void)
4002{
4003 return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 155 /* eglCompositorSetContextAttributesEXT */);
4004}
4005
4006static PFNEGLCOMPOSITORSETCONTEXTLISTEXTPROC
4007epoxy_eglCompositorSetContextListEXT_resolver(void)
4008{
4009 return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 192 /* eglCompositorSetContextListEXT */);
4010}
4011
4012static PFNEGLCOMPOSITORSETSIZEEXTPROC
4013epoxy_eglCompositorSetSizeEXT_resolver(void)
4014{
4015 return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 223 /* eglCompositorSetSizeEXT */);
4016}
4017
4018static PFNEGLCOMPOSITORSETWINDOWATTRIBUTESEXTPROC
4019epoxy_eglCompositorSetWindowAttributesEXT_resolver(void)
4020{
4021 return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 247 /* eglCompositorSetWindowAttributesEXT */);
4022}
4023
4024static PFNEGLCOMPOSITORSETWINDOWLISTEXTPROC
4025epoxy_eglCompositorSetWindowListEXT_resolver(void)
4026{
4027 return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 283 /* eglCompositorSetWindowListEXT */);
4028}
4029
4030static PFNEGLCOMPOSITORSWAPPOLICYEXTPROC
4031epoxy_eglCompositorSwapPolicyEXT_resolver(void)
4032{
4033 return egl_single_resolver(PROVIDER_EGL_EXT_compositor, 313 /* eglCompositorSwapPolicyEXT */);
4034}
4035
4036static PFNEGLCOPYBUFFERSPROC
4037epoxy_eglCopyBuffers_resolver(void)
4038{
4039 return egl_single_resolver(PROVIDER_EGL_10, 340 /* eglCopyBuffers */);
4040}
4041
4042static PFNEGLCREATECONTEXTPROC
4043epoxy_eglCreateContext_resolver(void)
4044{
4045 return egl_single_resolver(PROVIDER_EGL_10, 355 /* eglCreateContext */);
4046}
4047
4048static PFNEGLCREATEDRMIMAGEMESAPROC
4049epoxy_eglCreateDRMImageMESA_resolver(void)
4050{
4051 return egl_single_resolver(PROVIDER_EGL_MESA_drm_image, 372 /* eglCreateDRMImageMESA */);
4052}
4053
4054static PFNEGLCREATEFENCESYNCNVPROC
4055epoxy_eglCreateFenceSyncNV_resolver(void)
4056{
4057 return egl_single_resolver(PROVIDER_EGL_NV_sync, 394 /* eglCreateFenceSyncNV */);
4058}
4059
4060static PFNEGLCREATEIMAGEPROC
4061epoxy_eglCreateImage_resolver(void)
4062{
4063 return egl_single_resolver(PROVIDER_EGL_15, 415 /* eglCreateImage */);
4064}
4065
4066static PFNEGLCREATEIMAGEKHRPROC
4067epoxy_eglCreateImageKHR_resolver(void)
4068{
4069 static const enum egl_provider providers[] = {
4070 PROVIDER_EGL_KHR_image,
4071 PROVIDER_EGL_KHR_image_base,
4072 egl_provider_terminator
4073 };
4074 static const uint32_t entrypoints[] = {
4075 430 /* "eglCreateImageKHR" */,
4076 430 /* "eglCreateImageKHR" */,
4077 };
4078 return egl_provider_resolver(entrypoint_strings + 430 /* "eglCreateImageKHR" */,
4079 providers, entrypoints);
4080}
4081
4082static PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC
4083epoxy_eglCreateNativeClientBufferANDROID_resolver(void)
4084{
4085 return egl_single_resolver(PROVIDER_EGL_ANDROID_create_native_client_buffer, 448 /* eglCreateNativeClientBufferANDROID */);
4086}
4087
4088static PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC
4089epoxy_eglCreatePbufferFromClientBuffer_resolver(void)
4090{
4091 return egl_single_resolver(PROVIDER_EGL_12, 483 /* eglCreatePbufferFromClientBuffer */);
4092}
4093
4094static PFNEGLCREATEPBUFFERSURFACEPROC
4095epoxy_eglCreatePbufferSurface_resolver(void)
4096{
4097 return egl_single_resolver(PROVIDER_EGL_10, 516 /* eglCreatePbufferSurface */);
4098}
4099
4100static PFNEGLCREATEPIXMAPSURFACEPROC
4101epoxy_eglCreatePixmapSurface_resolver(void)
4102{
4103 return egl_single_resolver(PROVIDER_EGL_10, 540 /* eglCreatePixmapSurface */);
4104}
4105
4106static PFNEGLCREATEPIXMAPSURFACEHIPROC
4107epoxy_eglCreatePixmapSurfaceHI_resolver(void)
4108{
4109 return egl_single_resolver(PROVIDER_EGL_HI_clientpixmap, 563 /* eglCreatePixmapSurfaceHI */);
4110}
4111
4112static PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC
4113epoxy_eglCreatePlatformPixmapSurface_resolver(void)
4114{
4115 return egl_single_resolver(PROVIDER_EGL_15, 588 /* eglCreatePlatformPixmapSurface */);
4116}
4117
4118static PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC
4119epoxy_eglCreatePlatformPixmapSurfaceEXT_resolver(void)
4120{
4121 return egl_single_resolver(PROVIDER_EGL_EXT_platform_base, 619 /* eglCreatePlatformPixmapSurfaceEXT */);
4122}
4123
4124static PFNEGLCREATEPLATFORMWINDOWSURFACEPROC
4125epoxy_eglCreatePlatformWindowSurface_resolver(void)
4126{
4127 return egl_single_resolver(PROVIDER_EGL_15, 653 /* eglCreatePlatformWindowSurface */);
4128}
4129
4130static PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC
4131epoxy_eglCreatePlatformWindowSurfaceEXT_resolver(void)
4132{
4133 return egl_single_resolver(PROVIDER_EGL_EXT_platform_base, 684 /* eglCreatePlatformWindowSurfaceEXT */);
4134}
4135
4136static PFNEGLCREATESTREAMATTRIBKHRPROC
4137epoxy_eglCreateStreamAttribKHR_resolver(void)
4138{
4139 return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 718 /* eglCreateStreamAttribKHR */);
4140}
4141
4142static PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC
4143epoxy_eglCreateStreamFromFileDescriptorKHR_resolver(void)
4144{
4145 return egl_single_resolver(PROVIDER_EGL_KHR_stream_cross_process_fd, 743 /* eglCreateStreamFromFileDescriptorKHR */);
4146}
4147
4148static PFNEGLCREATESTREAMKHRPROC
4149epoxy_eglCreateStreamKHR_resolver(void)
4150{
4151 return egl_single_resolver(PROVIDER_EGL_KHR_stream, 780 /* eglCreateStreamKHR */);
4152}
4153
4154static PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC
4155epoxy_eglCreateStreamProducerSurfaceKHR_resolver(void)
4156{
4157 return egl_single_resolver(PROVIDER_EGL_KHR_stream_producer_eglsurface, 799 /* eglCreateStreamProducerSurfaceKHR */);
4158}
4159
4160static PFNEGLCREATESTREAMSYNCNVPROC
4161epoxy_eglCreateStreamSyncNV_resolver(void)
4162{
4163 return egl_single_resolver(PROVIDER_EGL_NV_stream_sync, 833 /* eglCreateStreamSyncNV */);
4164}
4165
4166static PFNEGLCREATESYNCPROC
4167epoxy_eglCreateSync_resolver(void)
4168{
4169 static const enum egl_provider providers[] = {
4170 PROVIDER_EGL_15,
4171 PROVIDER_EGL_KHR_cl_event2,
4172 egl_provider_terminator
4173 };
4174 static const uint32_t entrypoints[] = {
4175 855 /* "eglCreateSync" */,
4176 869 /* "eglCreateSync64KHR" */,
4177 };
4178 return egl_provider_resolver(entrypoint_strings + 855 /* "eglCreateSync" */,
4179 providers, entrypoints);
4180}
4181
4182static PFNEGLCREATESYNC64KHRPROC
4183epoxy_eglCreateSync64KHR_resolver(void)
4184{
4185 static const enum egl_provider providers[] = {
4186 PROVIDER_EGL_KHR_cl_event2,
4187 PROVIDER_EGL_15,
4188 egl_provider_terminator
4189 };
4190 static const uint32_t entrypoints[] = {
4191 869 /* "eglCreateSync64KHR" */,
4192 855 /* "eglCreateSync" */,
4193 };
4194 return egl_provider_resolver(entrypoint_strings + 869 /* "eglCreateSync64KHR" */,
4195 providers, entrypoints);
4196}
4197
4198static PFNEGLCREATESYNCKHRPROC
4199epoxy_eglCreateSyncKHR_resolver(void)
4200{
4201 static const enum egl_provider providers[] = {
4202 PROVIDER_EGL_KHR_fence_sync,
4203 PROVIDER_EGL_KHR_reusable_sync,
4204 egl_provider_terminator
4205 };
4206 static const uint32_t entrypoints[] = {
4207 888 /* "eglCreateSyncKHR" */,
4208 888 /* "eglCreateSyncKHR" */,
4209 };
4210 return egl_provider_resolver(entrypoint_strings + 888 /* "eglCreateSyncKHR" */,
4211 providers, entrypoints);
4212}
4213
4214static PFNEGLCREATEWINDOWSURFACEPROC
4215epoxy_eglCreateWindowSurface_resolver(void)
4216{
4217 return egl_single_resolver(PROVIDER_EGL_10, 905 /* eglCreateWindowSurface */);
4218}
4219
4220static PFNEGLDEBUGMESSAGECONTROLKHRPROC
4221epoxy_eglDebugMessageControlKHR_resolver(void)
4222{
4223 return egl_single_resolver(PROVIDER_EGL_KHR_debug, 928 /* eglDebugMessageControlKHR */);
4224}
4225
4226static PFNEGLDESTROYCONTEXTPROC
4227epoxy_eglDestroyContext_resolver(void)
4228{
4229 return egl_single_resolver(PROVIDER_EGL_10, 954 /* eglDestroyContext */);
4230}
4231
4232static PFNEGLDESTROYIMAGEPROC
4233epoxy_eglDestroyImage_resolver(void)
4234{
4235 static const enum egl_provider providers[] = {
4236 PROVIDER_EGL_15,
4237 PROVIDER_EGL_KHR_image,
4238 PROVIDER_EGL_KHR_image_base,
4239 egl_provider_terminator
4240 };
4241 static const uint32_t entrypoints[] = {
4242 972 /* "eglDestroyImage" */,
4243 988 /* "eglDestroyImageKHR" */,
4244 988 /* "eglDestroyImageKHR" */,
4245 };
4246 return egl_provider_resolver(entrypoint_strings + 972 /* "eglDestroyImage" */,
4247 providers, entrypoints);
4248}
4249
4250static PFNEGLDESTROYIMAGEKHRPROC
4251epoxy_eglDestroyImageKHR_resolver(void)
4252{
4253 static const enum egl_provider providers[] = {
4254 PROVIDER_EGL_KHR_image,
4255 PROVIDER_EGL_KHR_image_base,
4256 PROVIDER_EGL_15,
4257 egl_provider_terminator
4258 };
4259 static const uint32_t entrypoints[] = {
4260 988 /* "eglDestroyImageKHR" */,
4261 988 /* "eglDestroyImageKHR" */,
4262 972 /* "eglDestroyImage" */,
4263 };
4264 return egl_provider_resolver(entrypoint_strings + 988 /* "eglDestroyImageKHR" */,
4265 providers, entrypoints);
4266}
4267
4268static PFNEGLDESTROYSTREAMKHRPROC
4269epoxy_eglDestroyStreamKHR_resolver(void)
4270{
4271 return egl_single_resolver(PROVIDER_EGL_KHR_stream, 1007 /* eglDestroyStreamKHR */);
4272}
4273
4274static PFNEGLDESTROYSURFACEPROC
4275epoxy_eglDestroySurface_resolver(void)
4276{
4277 return egl_single_resolver(PROVIDER_EGL_10, 1027 /* eglDestroySurface */);
4278}
4279
4280static PFNEGLDESTROYSYNCPROC
4281epoxy_eglDestroySync_resolver(void)
4282{
4283 static const enum egl_provider providers[] = {
4284 PROVIDER_EGL_15,
4285 PROVIDER_EGL_KHR_fence_sync,
4286 PROVIDER_EGL_KHR_reusable_sync,
4287 egl_provider_terminator
4288 };
4289 static const uint32_t entrypoints[] = {
4290 1045 /* "eglDestroySync" */,
4291 1060 /* "eglDestroySyncKHR" */,
4292 1060 /* "eglDestroySyncKHR" */,
4293 };
4294 return egl_provider_resolver(entrypoint_strings + 1045 /* "eglDestroySync" */,
4295 providers, entrypoints);
4296}
4297
4298static PFNEGLDESTROYSYNCKHRPROC
4299epoxy_eglDestroySyncKHR_resolver(void)
4300{
4301 static const enum egl_provider providers[] = {
4302 PROVIDER_EGL_KHR_fence_sync,
4303 PROVIDER_EGL_KHR_reusable_sync,
4304 PROVIDER_EGL_15,
4305 egl_provider_terminator
4306 };
4307 static const uint32_t entrypoints[] = {
4308 1060 /* "eglDestroySyncKHR" */,
4309 1060 /* "eglDestroySyncKHR" */,
4310 1045 /* "eglDestroySync" */,
4311 };
4312 return egl_provider_resolver(entrypoint_strings + 1060 /* "eglDestroySyncKHR" */,
4313 providers, entrypoints);
4314}
4315
4316static PFNEGLDESTROYSYNCNVPROC
4317epoxy_eglDestroySyncNV_resolver(void)
4318{
4319 return egl_single_resolver(PROVIDER_EGL_NV_sync, 1078 /* eglDestroySyncNV */);
4320}
4321
4322static PFNEGLDUPNATIVEFENCEFDANDROIDPROC
4323epoxy_eglDupNativeFenceFDANDROID_resolver(void)
4324{
4325 return egl_single_resolver(PROVIDER_EGL_ANDROID_native_fence_sync, 1095 /* eglDupNativeFenceFDANDROID */);
4326}
4327
4328static PFNEGLEXPORTDMABUFIMAGEMESAPROC
4329epoxy_eglExportDMABUFImageMESA_resolver(void)
4330{
4331 return egl_single_resolver(PROVIDER_EGL_MESA_image_dma_buf_export, 1122 /* eglExportDMABUFImageMESA */);
4332}
4333
4334static PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC
4335epoxy_eglExportDMABUFImageQueryMESA_resolver(void)
4336{
4337 return egl_single_resolver(PROVIDER_EGL_MESA_image_dma_buf_export, 1147 /* eglExportDMABUFImageQueryMESA */);
4338}
4339
4340static PFNEGLEXPORTDRMIMAGEMESAPROC
4341epoxy_eglExportDRMImageMESA_resolver(void)
4342{
4343 return egl_single_resolver(PROVIDER_EGL_MESA_drm_image, 1177 /* eglExportDRMImageMESA */);
4344}
4345
4346static PFNEGLFENCENVPROC
4347epoxy_eglFenceNV_resolver(void)
4348{
4349 return egl_single_resolver(PROVIDER_EGL_NV_sync, 1199 /* eglFenceNV */);
4350}
4351
4352static PFNEGLGETCOMPOSITORTIMINGANDROIDPROC
4353epoxy_eglGetCompositorTimingANDROID_resolver(void)
4354{
4355 return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1210 /* eglGetCompositorTimingANDROID */);
4356}
4357
4358static PFNEGLGETCOMPOSITORTIMINGSUPPORTEDANDROIDPROC
4359epoxy_eglGetCompositorTimingSupportedANDROID_resolver(void)
4360{
4361 return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1240 /* eglGetCompositorTimingSupportedANDROID */);
4362}
4363
4364static PFNEGLGETCONFIGATTRIBPROC
4365epoxy_eglGetConfigAttrib_resolver(void)
4366{
4367 return egl_single_resolver(PROVIDER_EGL_10, 1279 /* eglGetConfigAttrib */);
4368}
4369
4370static PFNEGLGETCONFIGSPROC
4371epoxy_eglGetConfigs_resolver(void)
4372{
4373 return egl_single_resolver(PROVIDER_EGL_10, 1298 /* eglGetConfigs */);
4374}
4375
4376static PFNEGLGETCURRENTCONTEXTPROC
4377epoxy_eglGetCurrentContext_resolver(void)
4378{
4379 return egl_single_resolver(PROVIDER_EGL_14, 1312 /* eglGetCurrentContext */);
4380}
4381
4382static PFNEGLGETCURRENTDISPLAYPROC
4383epoxy_eglGetCurrentDisplay_resolver(void)
4384{
4385 return egl_single_resolver(PROVIDER_EGL_10, 1333 /* eglGetCurrentDisplay */);
4386}
4387
4388static PFNEGLGETCURRENTSURFACEPROC
4389epoxy_eglGetCurrentSurface_resolver(void)
4390{
4391 return egl_single_resolver(PROVIDER_EGL_10, 1354 /* eglGetCurrentSurface */);
4392}
4393
4394static PFNEGLGETDISPLAYPROC
4395epoxy_eglGetDisplay_resolver(void)
4396{
4397 return egl_single_resolver(PROVIDER_EGL_10, 1375 /* eglGetDisplay */);
4398}
4399
4400static PFNEGLGETDISPLAYDRIVERCONFIGPROC
4401epoxy_eglGetDisplayDriverConfig_resolver(void)
4402{
4403 return egl_single_resolver(PROVIDER_EGL_MESA_query_driver, 1389 /* eglGetDisplayDriverConfig */);
4404}
4405
4406static PFNEGLGETDISPLAYDRIVERNAMEPROC
4407epoxy_eglGetDisplayDriverName_resolver(void)
4408{
4409 return egl_single_resolver(PROVIDER_EGL_MESA_query_driver, 1415 /* eglGetDisplayDriverName */);
4410}
4411
4412static PFNEGLGETERRORPROC
4413epoxy_eglGetError_resolver(void)
4414{
4415 return egl_single_resolver(PROVIDER_EGL_10, 1439 /* eglGetError */);
4416}
4417
4418static PFNEGLGETFRAMETIMESTAMPSUPPORTEDANDROIDPROC
4419epoxy_eglGetFrameTimestampSupportedANDROID_resolver(void)
4420{
4421 return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1451 /* eglGetFrameTimestampSupportedANDROID */);
4422}
4423
4424static PFNEGLGETFRAMETIMESTAMPSANDROIDPROC
4425epoxy_eglGetFrameTimestampsANDROID_resolver(void)
4426{
4427 return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1488 /* eglGetFrameTimestampsANDROID */);
4428}
4429
4430static PFNEGLGETNATIVECLIENTBUFFERANDROIDPROC
4431epoxy_eglGetNativeClientBufferANDROID_resolver(void)
4432{
4433 return egl_single_resolver(PROVIDER_EGL_ANDROID_get_native_client_buffer, 1517 /* eglGetNativeClientBufferANDROID */);
4434}
4435
4436static PFNEGLGETNEXTFRAMEIDANDROIDPROC
4437epoxy_eglGetNextFrameIdANDROID_resolver(void)
4438{
4439 return egl_single_resolver(PROVIDER_EGL_ANDROID_get_frame_timestamps, 1549 /* eglGetNextFrameIdANDROID */);
4440}
4441
4442static PFNEGLGETOUTPUTLAYERSEXTPROC
4443epoxy_eglGetOutputLayersEXT_resolver(void)
4444{
4445 return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 1574 /* eglGetOutputLayersEXT */);
4446}
4447
4448static PFNEGLGETOUTPUTPORTSEXTPROC
4449epoxy_eglGetOutputPortsEXT_resolver(void)
4450{
4451 return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 1596 /* eglGetOutputPortsEXT */);
4452}
4453
4454static PFNEGLGETPLATFORMDISPLAYPROC
4455epoxy_eglGetPlatformDisplay_resolver(void)
4456{
4457 return egl_single_resolver(PROVIDER_EGL_15, 1617 /* eglGetPlatformDisplay */);
4458}
4459
4460static PFNEGLGETPLATFORMDISPLAYEXTPROC
4461epoxy_eglGetPlatformDisplayEXT_resolver(void)
4462{
4463 return egl_single_resolver(PROVIDER_EGL_EXT_platform_base, 1639 /* eglGetPlatformDisplayEXT */);
4464}
4465
4466static PFNEGLGETPROCADDRESSPROC
4467epoxy_eglGetProcAddress_resolver(void)
4468{
4469 return egl_single_resolver(PROVIDER_EGL_10, 1664 /* eglGetProcAddress */);
4470}
4471
4472static PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC
4473epoxy_eglGetStreamFileDescriptorKHR_resolver(void)
4474{
4475 return egl_single_resolver(PROVIDER_EGL_KHR_stream_cross_process_fd, 1682 /* eglGetStreamFileDescriptorKHR */);
4476}
4477
4478static PFNEGLGETSYNCATTRIBPROC
4479epoxy_eglGetSyncAttrib_resolver(void)
4480{
4481 return egl_single_resolver(PROVIDER_EGL_15, 1712 /* eglGetSyncAttrib */);
4482}
4483
4484static PFNEGLGETSYNCATTRIBKHRPROC
4485epoxy_eglGetSyncAttribKHR_resolver(void)
4486{
4487 static const enum egl_provider providers[] = {
4488 PROVIDER_EGL_KHR_fence_sync,
4489 PROVIDER_EGL_KHR_reusable_sync,
4490 egl_provider_terminator
4491 };
4492 static const uint32_t entrypoints[] = {
4493 1729 /* "eglGetSyncAttribKHR" */,
4494 1729 /* "eglGetSyncAttribKHR" */,
4495 };
4496 return egl_provider_resolver(entrypoint_strings + 1729 /* "eglGetSyncAttribKHR" */,
4497 providers, entrypoints);
4498}
4499
4500static PFNEGLGETSYNCATTRIBNVPROC
4501epoxy_eglGetSyncAttribNV_resolver(void)
4502{
4503 return egl_single_resolver(PROVIDER_EGL_NV_sync, 1749 /* eglGetSyncAttribNV */);
4504}
4505
4506static PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC
4507epoxy_eglGetSystemTimeFrequencyNV_resolver(void)
4508{
4509 return egl_single_resolver(PROVIDER_EGL_NV_system_time, 1768 /* eglGetSystemTimeFrequencyNV */);
4510}
4511
4512static PFNEGLGETSYSTEMTIMENVPROC
4513epoxy_eglGetSystemTimeNV_resolver(void)
4514{
4515 return egl_single_resolver(PROVIDER_EGL_NV_system_time, 1796 /* eglGetSystemTimeNV */);
4516}
4517
4518static PFNEGLINITIALIZEPROC
4519epoxy_eglInitialize_resolver(void)
4520{
4521 return egl_single_resolver(PROVIDER_EGL_10, 1815 /* eglInitialize */);
4522}
4523
4524static PFNEGLLABELOBJECTKHRPROC
4525epoxy_eglLabelObjectKHR_resolver(void)
4526{
4527 return egl_single_resolver(PROVIDER_EGL_KHR_debug, 1829 /* eglLabelObjectKHR */);
4528}
4529
4530static PFNEGLLOCKSURFACEKHRPROC
4531epoxy_eglLockSurfaceKHR_resolver(void)
4532{
4533 static const enum egl_provider providers[] = {
4534 PROVIDER_EGL_KHR_lock_surface,
4535 PROVIDER_EGL_KHR_lock_surface3,
4536 egl_provider_terminator
4537 };
4538 static const uint32_t entrypoints[] = {
4539 1847 /* "eglLockSurfaceKHR" */,
4540 1847 /* "eglLockSurfaceKHR" */,
4541 };
4542 return egl_provider_resolver(entrypoint_strings + 1847 /* "eglLockSurfaceKHR" */,
4543 providers, entrypoints);
4544}
4545
4546static PFNEGLMAKECURRENTPROC
4547epoxy_eglMakeCurrent_resolver(void)
4548{
4549 return egl_single_resolver(PROVIDER_EGL_10, 1865 /* eglMakeCurrent */);
4550}
4551
4552static PFNEGLOUTPUTLAYERATTRIBEXTPROC
4553epoxy_eglOutputLayerAttribEXT_resolver(void)
4554{
4555 return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 1880 /* eglOutputLayerAttribEXT */);
4556}
4557
4558static PFNEGLOUTPUTPORTATTRIBEXTPROC
4559epoxy_eglOutputPortAttribEXT_resolver(void)
4560{
4561 return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 1904 /* eglOutputPortAttribEXT */);
4562}
4563
4564static PFNEGLPOSTSUBBUFFERNVPROC
4565epoxy_eglPostSubBufferNV_resolver(void)
4566{
4567 return egl_single_resolver(PROVIDER_EGL_NV_post_sub_buffer, 1927 /* eglPostSubBufferNV */);
4568}
4569
4570static PFNEGLPRESENTATIONTIMEANDROIDPROC
4571epoxy_eglPresentationTimeANDROID_resolver(void)
4572{
4573 return egl_single_resolver(PROVIDER_EGL_ANDROID_presentation_time, 1946 /* eglPresentationTimeANDROID */);
4574}
4575
4576static PFNEGLQUERYAPIPROC
4577epoxy_eglQueryAPI_resolver(void)
4578{
4579 return egl_single_resolver(PROVIDER_EGL_12, 1973 /* eglQueryAPI */);
4580}
4581
4582static PFNEGLQUERYCONTEXTPROC
4583epoxy_eglQueryContext_resolver(void)
4584{
4585 return egl_single_resolver(PROVIDER_EGL_10, 1985 /* eglQueryContext */);
4586}
4587
4588static PFNEGLQUERYDEBUGKHRPROC
4589epoxy_eglQueryDebugKHR_resolver(void)
4590{
4591 return egl_single_resolver(PROVIDER_EGL_KHR_debug, 2001 /* eglQueryDebugKHR */);
4592}
4593
4594static PFNEGLQUERYDEVICEATTRIBEXTPROC
4595epoxy_eglQueryDeviceAttribEXT_resolver(void)
4596{
4597 static const enum egl_provider providers[] = {
4598 PROVIDER_EGL_EXT_device_base,
4599 PROVIDER_EGL_EXT_device_query,
4600 egl_provider_terminator
4601 };
4602 static const uint32_t entrypoints[] = {
4603 2018 /* "eglQueryDeviceAttribEXT" */,
4604 2018 /* "eglQueryDeviceAttribEXT" */,
4605 };
4606 return egl_provider_resolver(entrypoint_strings + 2018 /* "eglQueryDeviceAttribEXT" */,
4607 providers, entrypoints);
4608}
4609
4610static PFNEGLQUERYDEVICESTRINGEXTPROC
4611epoxy_eglQueryDeviceStringEXT_resolver(void)
4612{
4613 static const enum egl_provider providers[] = {
4614 PROVIDER_EGL_EXT_device_base,
4615 PROVIDER_EGL_EXT_device_query,
4616 egl_provider_terminator
4617 };
4618 static const uint32_t entrypoints[] = {
4619 2042 /* "eglQueryDeviceStringEXT" */,
4620 2042 /* "eglQueryDeviceStringEXT" */,
4621 };
4622 return egl_provider_resolver(entrypoint_strings + 2042 /* "eglQueryDeviceStringEXT" */,
4623 providers, entrypoints);
4624}
4625
4626static PFNEGLQUERYDEVICESEXTPROC
4627epoxy_eglQueryDevicesEXT_resolver(void)
4628{
4629 static const enum egl_provider providers[] = {
4630 PROVIDER_EGL_EXT_device_base,
4631 PROVIDER_EGL_EXT_device_enumeration,
4632 egl_provider_terminator
4633 };
4634 static const uint32_t entrypoints[] = {
4635 2066 /* "eglQueryDevicesEXT" */,
4636 2066 /* "eglQueryDevicesEXT" */,
4637 };
4638 return egl_provider_resolver(entrypoint_strings + 2066 /* "eglQueryDevicesEXT" */,
4639 providers, entrypoints);
4640}
4641
4642static PFNEGLQUERYDISPLAYATTRIBEXTPROC
4643epoxy_eglQueryDisplayAttribEXT_resolver(void)
4644{
4645 static const enum egl_provider providers[] = {
4646 PROVIDER_EGL_EXT_device_base,
4647 PROVIDER_EGL_EXT_device_query,
4648 PROVIDER_EGL_KHR_display_reference,
4649 PROVIDER_EGL_NV_stream_metadata,
4650 egl_provider_terminator
4651 };
4652 static const uint32_t entrypoints[] = {
4653 2085 /* "eglQueryDisplayAttribEXT" */,
4654 2085 /* "eglQueryDisplayAttribEXT" */,
4655 2110 /* "eglQueryDisplayAttribKHR" */,
4656 2135 /* "eglQueryDisplayAttribNV" */,
4657 };
4658 return egl_provider_resolver(entrypoint_strings + 2085 /* "eglQueryDisplayAttribEXT" */,
4659 providers, entrypoints);
4660}
4661
4662static PFNEGLQUERYDISPLAYATTRIBKHRPROC
4663epoxy_eglQueryDisplayAttribKHR_resolver(void)
4664{
4665 static const enum egl_provider providers[] = {
4666 PROVIDER_EGL_KHR_display_reference,
4667 PROVIDER_EGL_EXT_device_base,
4668 PROVIDER_EGL_EXT_device_query,
4669 PROVIDER_EGL_NV_stream_metadata,
4670 egl_provider_terminator
4671 };
4672 static const uint32_t entrypoints[] = {
4673 2110 /* "eglQueryDisplayAttribKHR" */,
4674 2085 /* "eglQueryDisplayAttribEXT" */,
4675 2085 /* "eglQueryDisplayAttribEXT" */,
4676 2135 /* "eglQueryDisplayAttribNV" */,
4677 };
4678 return egl_provider_resolver(entrypoint_strings + 2110 /* "eglQueryDisplayAttribKHR" */,
4679 providers, entrypoints);
4680}
4681
4682static PFNEGLQUERYDISPLAYATTRIBNVPROC
4683epoxy_eglQueryDisplayAttribNV_resolver(void)
4684{
4685 static const enum egl_provider providers[] = {
4686 PROVIDER_EGL_NV_stream_metadata,
4687 PROVIDER_EGL_EXT_device_base,
4688 PROVIDER_EGL_EXT_device_query,
4689 PROVIDER_EGL_KHR_display_reference,
4690 egl_provider_terminator
4691 };
4692 static const uint32_t entrypoints[] = {
4693 2135 /* "eglQueryDisplayAttribNV" */,
4694 2085 /* "eglQueryDisplayAttribEXT" */,
4695 2085 /* "eglQueryDisplayAttribEXT" */,
4696 2110 /* "eglQueryDisplayAttribKHR" */,
4697 };
4698 return egl_provider_resolver(entrypoint_strings + 2135 /* "eglQueryDisplayAttribNV" */,
4699 providers, entrypoints);
4700}
4701
4702static PFNEGLQUERYDMABUFFORMATSEXTPROC
4703epoxy_eglQueryDmaBufFormatsEXT_resolver(void)
4704{
4705 return egl_single_resolver(PROVIDER_EGL_EXT_image_dma_buf_import_modifiers, 2159 /* eglQueryDmaBufFormatsEXT */);
4706}
4707
4708static PFNEGLQUERYDMABUFMODIFIERSEXTPROC
4709epoxy_eglQueryDmaBufModifiersEXT_resolver(void)
4710{
4711 return egl_single_resolver(PROVIDER_EGL_EXT_image_dma_buf_import_modifiers, 2184 /* eglQueryDmaBufModifiersEXT */);
4712}
4713
4714static PFNEGLQUERYNATIVEDISPLAYNVPROC
4715epoxy_eglQueryNativeDisplayNV_resolver(void)
4716{
4717 return egl_single_resolver(PROVIDER_EGL_NV_native_query, 2211 /* eglQueryNativeDisplayNV */);
4718}
4719
4720static PFNEGLQUERYNATIVEPIXMAPNVPROC
4721epoxy_eglQueryNativePixmapNV_resolver(void)
4722{
4723 return egl_single_resolver(PROVIDER_EGL_NV_native_query, 2235 /* eglQueryNativePixmapNV */);
4724}
4725
4726static PFNEGLQUERYNATIVEWINDOWNVPROC
4727epoxy_eglQueryNativeWindowNV_resolver(void)
4728{
4729 return egl_single_resolver(PROVIDER_EGL_NV_native_query, 2258 /* eglQueryNativeWindowNV */);
4730}
4731
4732static PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC
4733epoxy_eglQueryOutputLayerAttribEXT_resolver(void)
4734{
4735 return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 2281 /* eglQueryOutputLayerAttribEXT */);
4736}
4737
4738static PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC
4739epoxy_eglQueryOutputLayerStringEXT_resolver(void)
4740{
4741 return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 2310 /* eglQueryOutputLayerStringEXT */);
4742}
4743
4744static PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC
4745epoxy_eglQueryOutputPortAttribEXT_resolver(void)
4746{
4747 return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 2339 /* eglQueryOutputPortAttribEXT */);
4748}
4749
4750static PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC
4751epoxy_eglQueryOutputPortStringEXT_resolver(void)
4752{
4753 return egl_single_resolver(PROVIDER_EGL_EXT_output_base, 2367 /* eglQueryOutputPortStringEXT */);
4754}
4755
4756static PFNEGLQUERYSTREAMATTRIBKHRPROC
4757epoxy_eglQueryStreamAttribKHR_resolver(void)
4758{
4759 return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 2395 /* eglQueryStreamAttribKHR */);
4760}
4761
4762static PFNEGLQUERYSTREAMKHRPROC
4763epoxy_eglQueryStreamKHR_resolver(void)
4764{
4765 return egl_single_resolver(PROVIDER_EGL_KHR_stream, 2419 /* eglQueryStreamKHR */);
4766}
4767
4768static PFNEGLQUERYSTREAMMETADATANVPROC
4769epoxy_eglQueryStreamMetadataNV_resolver(void)
4770{
4771 return egl_single_resolver(PROVIDER_EGL_NV_stream_metadata, 2437 /* eglQueryStreamMetadataNV */);
4772}
4773
4774static PFNEGLQUERYSTREAMTIMEKHRPROC
4775epoxy_eglQueryStreamTimeKHR_resolver(void)
4776{
4777 return egl_single_resolver(PROVIDER_EGL_KHR_stream_fifo, 2462 /* eglQueryStreamTimeKHR */);
4778}
4779
4780static PFNEGLQUERYSTREAMU64KHRPROC
4781epoxy_eglQueryStreamu64KHR_resolver(void)
4782{
4783 return egl_single_resolver(PROVIDER_EGL_KHR_stream, 2484 /* eglQueryStreamu64KHR */);
4784}
4785
4786static PFNEGLQUERYSTRINGPROC
4787epoxy_eglQueryString_resolver(void)
4788{
4789 return egl_single_resolver(PROVIDER_EGL_10, 2505 /* eglQueryString */);
4790}
4791
4792static PFNEGLQUERYSURFACEPROC
4793epoxy_eglQuerySurface_resolver(void)
4794{
4795 return egl_single_resolver(PROVIDER_EGL_10, 2520 /* eglQuerySurface */);
4796}
4797
4798static PFNEGLQUERYSURFACE64KHRPROC
4799epoxy_eglQuerySurface64KHR_resolver(void)
4800{
4801 return egl_single_resolver(PROVIDER_EGL_KHR_lock_surface3, 2536 /* eglQuerySurface64KHR */);
4802}
4803
4804static PFNEGLQUERYSURFACEPOINTERANGLEPROC
4805epoxy_eglQuerySurfacePointerANGLE_resolver(void)
4806{
4807 return egl_single_resolver(PROVIDER_EGL_ANGLE_query_surface_pointer, 2557 /* eglQuerySurfacePointerANGLE */);
4808}
4809
4810static PFNEGLRELEASETEXIMAGEPROC
4811epoxy_eglReleaseTexImage_resolver(void)
4812{
4813 return egl_single_resolver(PROVIDER_EGL_11, 2585 /* eglReleaseTexImage */);
4814}
4815
4816static PFNEGLRELEASETHREADPROC
4817epoxy_eglReleaseThread_resolver(void)
4818{
4819 return egl_single_resolver(PROVIDER_EGL_12, 2604 /* eglReleaseThread */);
4820}
4821
4822static PFNEGLRESETSTREAMNVPROC
4823epoxy_eglResetStreamNV_resolver(void)
4824{
4825 return egl_single_resolver(PROVIDER_EGL_NV_stream_reset, 2621 /* eglResetStreamNV */);
4826}
4827
4828static PFNEGLSETBLOBCACHEFUNCSANDROIDPROC
4829epoxy_eglSetBlobCacheFuncsANDROID_resolver(void)
4830{
4831 return egl_single_resolver(PROVIDER_EGL_ANDROID_blob_cache, 2638 /* eglSetBlobCacheFuncsANDROID */);
4832}
4833
4834static PFNEGLSETDAMAGEREGIONKHRPROC
4835epoxy_eglSetDamageRegionKHR_resolver(void)
4836{
4837 return egl_single_resolver(PROVIDER_EGL_KHR_partial_update, 2666 /* eglSetDamageRegionKHR */);
4838}
4839
4840static PFNEGLSETSTREAMATTRIBKHRPROC
4841epoxy_eglSetStreamAttribKHR_resolver(void)
4842{
4843 return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 2688 /* eglSetStreamAttribKHR */);
4844}
4845
4846static PFNEGLSETSTREAMMETADATANVPROC
4847epoxy_eglSetStreamMetadataNV_resolver(void)
4848{
4849 return egl_single_resolver(PROVIDER_EGL_NV_stream_metadata, 2710 /* eglSetStreamMetadataNV */);
4850}
4851
4852static PFNEGLSIGNALSYNCKHRPROC
4853epoxy_eglSignalSyncKHR_resolver(void)
4854{
4855 return egl_single_resolver(PROVIDER_EGL_KHR_reusable_sync, 2733 /* eglSignalSyncKHR */);
4856}
4857
4858static PFNEGLSIGNALSYNCNVPROC
4859epoxy_eglSignalSyncNV_resolver(void)
4860{
4861 return egl_single_resolver(PROVIDER_EGL_NV_sync, 2750 /* eglSignalSyncNV */);
4862}
4863
4864static PFNEGLSTREAMATTRIBKHRPROC
4865epoxy_eglStreamAttribKHR_resolver(void)
4866{
4867 return egl_single_resolver(PROVIDER_EGL_KHR_stream, 2766 /* eglStreamAttribKHR */);
4868}
4869
4870static PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC
4871epoxy_eglStreamConsumerAcquireAttribKHR_resolver(void)
4872{
4873 return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 2785 /* eglStreamConsumerAcquireAttribKHR */);
4874}
4875
4876static PFNEGLSTREAMCONSUMERACQUIREKHRPROC
4877epoxy_eglStreamConsumerAcquireKHR_resolver(void)
4878{
4879 return egl_single_resolver(PROVIDER_EGL_KHR_stream_consumer_gltexture, 2819 /* eglStreamConsumerAcquireKHR */);
4880}
4881
4882static PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC
4883epoxy_eglStreamConsumerGLTextureExternalAttribsNV_resolver(void)
4884{
4885 return egl_single_resolver(PROVIDER_EGL_NV_stream_consumer_gltexture_yuv, 2847 /* eglStreamConsumerGLTextureExternalAttribsNV */);
4886}
4887
4888static PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC
4889epoxy_eglStreamConsumerGLTextureExternalKHR_resolver(void)
4890{
4891 return egl_single_resolver(PROVIDER_EGL_KHR_stream_consumer_gltexture, 2891 /* eglStreamConsumerGLTextureExternalKHR */);
4892}
4893
4894static PFNEGLSTREAMCONSUMEROUTPUTEXTPROC
4895epoxy_eglStreamConsumerOutputEXT_resolver(void)
4896{
4897 return egl_single_resolver(PROVIDER_EGL_EXT_stream_consumer_egloutput, 2929 /* eglStreamConsumerOutputEXT */);
4898}
4899
4900static PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC
4901epoxy_eglStreamConsumerReleaseAttribKHR_resolver(void)
4902{
4903 return egl_single_resolver(PROVIDER_EGL_KHR_stream_attrib, 2956 /* eglStreamConsumerReleaseAttribKHR */);
4904}
4905
4906static PFNEGLSTREAMCONSUMERRELEASEKHRPROC
4907epoxy_eglStreamConsumerReleaseKHR_resolver(void)
4908{
4909 return egl_single_resolver(PROVIDER_EGL_KHR_stream_consumer_gltexture, 2990 /* eglStreamConsumerReleaseKHR */);
4910}
4911
4912static PFNEGLSTREAMFLUSHNVPROC
4913epoxy_eglStreamFlushNV_resolver(void)
4914{
4915 return egl_single_resolver(PROVIDER_EGL_NV_stream_flush, 3018 /* eglStreamFlushNV */);
4916}
4917
4918static PFNEGLSURFACEATTRIBPROC
4919epoxy_eglSurfaceAttrib_resolver(void)
4920{
4921 return egl_single_resolver(PROVIDER_EGL_11, 3035 /* eglSurfaceAttrib */);
4922}
4923
4924static PFNEGLSWAPBUFFERSPROC
4925epoxy_eglSwapBuffers_resolver(void)
4926{
4927 return egl_single_resolver(PROVIDER_EGL_10, 3052 /* eglSwapBuffers */);
4928}
4929
4930static PFNEGLSWAPBUFFERSREGION2NOKPROC
4931epoxy_eglSwapBuffersRegion2NOK_resolver(void)
4932{
4933 return egl_single_resolver(PROVIDER_EGL_NOK_swap_region2, 3067 /* eglSwapBuffersRegion2NOK */);
4934}
4935
4936static PFNEGLSWAPBUFFERSREGIONNOKPROC
4937epoxy_eglSwapBuffersRegionNOK_resolver(void)
4938{
4939 return egl_single_resolver(PROVIDER_EGL_NOK_swap_region, 3092 /* eglSwapBuffersRegionNOK */);
4940}
4941
4942static PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC
4943epoxy_eglSwapBuffersWithDamageEXT_resolver(void)
4944{
4945 return egl_single_resolver(PROVIDER_EGL_EXT_swap_buffers_with_damage, 3116 /* eglSwapBuffersWithDamageEXT */);
4946}
4947
4948static PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC
4949epoxy_eglSwapBuffersWithDamageKHR_resolver(void)
4950{
4951 return egl_single_resolver(PROVIDER_EGL_KHR_swap_buffers_with_damage, 3144 /* eglSwapBuffersWithDamageKHR */);
4952}
4953
4954static PFNEGLSWAPINTERVALPROC
4955epoxy_eglSwapInterval_resolver(void)
4956{
4957 return egl_single_resolver(PROVIDER_EGL_11, 3172 /* eglSwapInterval */);
4958}
4959
4960static PFNEGLTERMINATEPROC
4961epoxy_eglTerminate_resolver(void)
4962{
4963 return egl_single_resolver(PROVIDER_EGL_10, 3188 /* eglTerminate */);
4964}
4965
4966static PFNEGLUNLOCKSURFACEKHRPROC
4967epoxy_eglUnlockSurfaceKHR_resolver(void)
4968{
4969 static const enum egl_provider providers[] = {
4970 PROVIDER_EGL_KHR_lock_surface,
4971 PROVIDER_EGL_KHR_lock_surface3,
4972 egl_provider_terminator
4973 };
4974 static const uint32_t entrypoints[] = {
4975 3201 /* "eglUnlockSurfaceKHR" */,
4976 3201 /* "eglUnlockSurfaceKHR" */,
4977 };
4978 return egl_provider_resolver(entrypoint_strings + 3201 /* "eglUnlockSurfaceKHR" */,
4979 providers, entrypoints);
4980}
4981
4982static PFNEGLUNSIGNALSYNCEXTPROC
4983epoxy_eglUnsignalSyncEXT_resolver(void)
4984{
4985 return egl_single_resolver(PROVIDER_EGL_EXT_sync_reuse, 3221 /* eglUnsignalSyncEXT */);
4986}
4987
4988static PFNEGLWAITCLIENTPROC
4989epoxy_eglWaitClient_resolver(void)
4990{
4991 return egl_single_resolver(PROVIDER_EGL_12, 3240 /* eglWaitClient */);
4992}
4993
4994static PFNEGLWAITGLPROC
4995epoxy_eglWaitGL_resolver(void)
4996{
4997 return egl_single_resolver(PROVIDER_EGL_10, 3254 /* eglWaitGL */);
4998}
4999
5000static PFNEGLWAITNATIVEPROC
5001epoxy_eglWaitNative_resolver(void)
5002{
5003 return egl_single_resolver(PROVIDER_EGL_10, 3264 /* eglWaitNative */);
5004}
5005
5006static PFNEGLWAITSYNCPROC
5007epoxy_eglWaitSync_resolver(void)
5008{
5009 return egl_single_resolver(PROVIDER_EGL_15, 3278 /* eglWaitSync */);
5010}
5011
5012static PFNEGLWAITSYNCKHRPROC
5013epoxy_eglWaitSyncKHR_resolver(void)
5014{
5015 return egl_single_resolver(PROVIDER_EGL_KHR_wait_sync, 3290 /* eglWaitSyncKHR */);
5016}
5017
5018GEN_THUNKS_RET(EGLBoolean, eglBindAPI, (EGLenum api), (api))
5019GEN_THUNKS_RET(EGLBoolean, eglBindTexImage, (EGLDisplay dpy, EGLSurface surface, EGLint buffer), (dpy, surface, buffer))
5020GEN_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))
5021GEN_THUNKS_RET(EGLBoolean, eglClientSignalSyncEXT, (EGLDisplay dpy, EGLSync sync, const EGLAttrib * attrib_list), (dpy, sync, attrib_list))
5022GEN_THUNKS_RET(EGLint, eglClientWaitSync, (EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout), (dpy, sync, flags, timeout))
5023GEN_THUNKS_RET(EGLint, eglClientWaitSyncKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout), (dpy, sync, flags, timeout))
5024GEN_THUNKS_RET(EGLint, eglClientWaitSyncNV, (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout), (sync, flags, timeout))
5025GEN_THUNKS_RET(EGLBoolean, eglCompositorBindTexWindowEXT, (EGLint external_win_id), (external_win_id))
5026GEN_THUNKS_RET(EGLBoolean, eglCompositorSetContextAttributesEXT, (EGLint external_ref_id, const EGLint * context_attributes, EGLint num_entries), (external_ref_id, context_attributes, num_entries))
5027GEN_THUNKS_RET(EGLBoolean, eglCompositorSetContextListEXT, (const EGLint * external_ref_ids, EGLint num_entries), (external_ref_ids, num_entries))
5028GEN_THUNKS_RET(EGLBoolean, eglCompositorSetSizeEXT, (EGLint external_win_id, EGLint width, EGLint height), (external_win_id, width, height))
5029GEN_THUNKS_RET(EGLBoolean, eglCompositorSetWindowAttributesEXT, (EGLint external_win_id, const EGLint * window_attributes, EGLint num_entries), (external_win_id, window_attributes, num_entries))
5030GEN_THUNKS_RET(EGLBoolean, eglCompositorSetWindowListEXT, (EGLint external_ref_id, const EGLint * external_win_ids, EGLint num_entries), (external_ref_id, external_win_ids, num_entries))
5031GEN_THUNKS_RET(EGLBoolean, eglCompositorSwapPolicyEXT, (EGLint external_win_id, EGLint policy), (external_win_id, policy))
5032GEN_THUNKS_RET(EGLBoolean, eglCopyBuffers, (EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target), (dpy, surface, target))
5033GEN_THUNKS_RET(EGLContext, eglCreateContext, (EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint * attrib_list), (dpy, config, share_context, attrib_list))
5034GEN_THUNKS_RET(EGLImageKHR, eglCreateDRMImageMESA, (EGLDisplay dpy, const EGLint * attrib_list), (dpy, attrib_list))
5035GEN_THUNKS_RET(EGLSyncNV, eglCreateFenceSyncNV, (EGLDisplay dpy, EGLenum condition, const EGLint * attrib_list), (dpy, condition, attrib_list))
5036GEN_THUNKS_RET(EGLImage, eglCreateImage, (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLAttrib * attrib_list), (dpy, ctx, target, buffer, attrib_list))
5037GEN_THUNKS_RET(EGLImageKHR, eglCreateImageKHR, (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint * attrib_list), (dpy, ctx, target, buffer, attrib_list))
5038GEN_THUNKS_RET(EGLClientBuffer, eglCreateNativeClientBufferANDROID, (const EGLint * attrib_list), (attrib_list))
5039GEN_THUNKS_RET(EGLSurface, eglCreatePbufferFromClientBuffer, (EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint * attrib_list), (dpy, buftype, buffer, config, attrib_list))
5040GEN_THUNKS_RET(EGLSurface, eglCreatePbufferSurface, (EGLDisplay dpy, EGLConfig config, const EGLint * attrib_list), (dpy, config, attrib_list))
5041GEN_THUNKS_RET(EGLSurface, eglCreatePixmapSurface, (EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint * attrib_list), (dpy, config, pixmap, attrib_list))
5042GEN_THUNKS_RET(EGLSurface, eglCreatePixmapSurfaceHI, (EGLDisplay dpy, EGLConfig config, struct EGLClientPixmapHI * pixmap), (dpy, config, pixmap))
5043GEN_THUNKS_RET(EGLSurface, eglCreatePlatformPixmapSurface, (EGLDisplay dpy, EGLConfig config, void * native_pixmap, const EGLAttrib * attrib_list), (dpy, config, native_pixmap, attrib_list))
5044GEN_THUNKS_RET(EGLSurface, eglCreatePlatformPixmapSurfaceEXT, (EGLDisplay dpy, EGLConfig config, void * native_pixmap, const EGLint * attrib_list), (dpy, config, native_pixmap, attrib_list))
5045GEN_THUNKS_RET(EGLSurface, eglCreatePlatformWindowSurface, (EGLDisplay dpy, EGLConfig config, void * native_window, const EGLAttrib * attrib_list), (dpy, config, native_window, attrib_list))
5046GEN_THUNKS_RET(EGLSurface, eglCreatePlatformWindowSurfaceEXT, (EGLDisplay dpy, EGLConfig config, void * native_window, const EGLint * attrib_list), (dpy, config, native_window, attrib_list))
5047GEN_THUNKS_RET(EGLStreamKHR, eglCreateStreamAttribKHR, (EGLDisplay dpy, const EGLAttrib * attrib_list), (dpy, attrib_list))
5048GEN_THUNKS_RET(EGLStreamKHR, eglCreateStreamFromFileDescriptorKHR, (EGLDisplay dpy, EGLNativeFileDescriptorKHR file_descriptor), (dpy, file_descriptor))
5049GEN_THUNKS_RET(EGLStreamKHR, eglCreateStreamKHR, (EGLDisplay dpy, const EGLint * attrib_list), (dpy, attrib_list))
5050GEN_THUNKS_RET(EGLSurface, eglCreateStreamProducerSurfaceKHR, (EGLDisplay dpy, EGLConfig config, EGLStreamKHR stream, const EGLint * attrib_list), (dpy, config, stream, attrib_list))
5051GEN_THUNKS_RET(EGLSyncKHR, eglCreateStreamSyncNV, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum type, const EGLint * attrib_list), (dpy, stream, type, attrib_list))
5052GEN_THUNKS_RET(EGLSync, eglCreateSync, (EGLDisplay dpy, EGLenum type, const EGLAttrib * attrib_list), (dpy, type, attrib_list))
5053GEN_THUNKS_RET(EGLSyncKHR, eglCreateSync64KHR, (EGLDisplay dpy, EGLenum type, const EGLAttribKHR * attrib_list), (dpy, type, attrib_list))
5054GEN_THUNKS_RET(EGLSyncKHR, eglCreateSyncKHR, (EGLDisplay dpy, EGLenum type, const EGLint * attrib_list), (dpy, type, attrib_list))
5055GEN_THUNKS_RET(EGLSurface, eglCreateWindowSurface, (EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint * attrib_list), (dpy, config, win, attrib_list))
5056GEN_THUNKS_RET(EGLint, eglDebugMessageControlKHR, (EGLDEBUGPROCKHR callback, const EGLAttrib * attrib_list), (callback, attrib_list))
5057GEN_THUNKS_RET(EGLBoolean, eglDestroyContext, (EGLDisplay dpy, EGLContext ctx), (dpy, ctx))
5058GEN_THUNKS_RET(EGLBoolean, eglDestroyImage, (EGLDisplay dpy, EGLImage image), (dpy, image))
5059GEN_THUNKS_RET(EGLBoolean, eglDestroyImageKHR, (EGLDisplay dpy, EGLImageKHR image), (dpy, image))
5060GEN_THUNKS_RET(EGLBoolean, eglDestroyStreamKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
5061GEN_THUNKS_RET(EGLBoolean, eglDestroySurface, (EGLDisplay dpy, EGLSurface surface), (dpy, surface))
5062GEN_THUNKS_RET(EGLBoolean, eglDestroySync, (EGLDisplay dpy, EGLSync sync), (dpy, sync))
5063GEN_THUNKS_RET(EGLBoolean, eglDestroySyncKHR, (EGLDisplay dpy, EGLSyncKHR sync), (dpy, sync))
5064GEN_THUNKS_RET(EGLBoolean, eglDestroySyncNV, (EGLSyncNV sync), (sync))
5065GEN_THUNKS_RET(EGLint, eglDupNativeFenceFDANDROID, (EGLDisplay dpy, EGLSyncKHR sync), (dpy, sync))
5066GEN_THUNKS_RET(EGLBoolean, eglExportDMABUFImageMESA, (EGLDisplay dpy, EGLImageKHR image, int * fds, EGLint * strides, EGLint * offsets), (dpy, image, fds, strides, offsets))
5067GEN_THUNKS_RET(EGLBoolean, eglExportDMABUFImageQueryMESA, (EGLDisplay dpy, EGLImageKHR image, int * fourcc, int * num_planes, EGLuint64KHR * modifiers), (dpy, image, fourcc, num_planes, modifiers))
5068GEN_THUNKS_RET(EGLBoolean, eglExportDRMImageMESA, (EGLDisplay dpy, EGLImageKHR image, EGLint * name, EGLint * handle, EGLint * stride), (dpy, image, name, handle, stride))
5069GEN_THUNKS_RET(EGLBoolean, eglFenceNV, (EGLSyncNV sync), (sync))
5070GEN_THUNKS_RET(EGLBoolean, eglGetCompositorTimingANDROID, (EGLDisplay dpy, EGLSurface surface, EGLint numTimestamps, const EGLint * names, EGLnsecsANDROID * values), (dpy, surface, numTimestamps, names, values))
5071GEN_THUNKS_RET(EGLBoolean, eglGetCompositorTimingSupportedANDROID, (EGLDisplay dpy, EGLSurface surface, EGLint name), (dpy, surface, name))
5072GEN_THUNKS_RET(EGLBoolean, eglGetConfigAttrib, (EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint * value), (dpy, config, attribute, value))
5073GEN_THUNKS_RET(EGLBoolean, eglGetConfigs, (EGLDisplay dpy, EGLConfig * configs, EGLint config_size, EGLint * num_config), (dpy, configs, config_size, num_config))
5074GEN_THUNKS_RET(EGLContext, eglGetCurrentContext, (void), ())
5075GEN_THUNKS_RET(EGLDisplay, eglGetCurrentDisplay, (void), ())
5076GEN_THUNKS_RET(EGLSurface, eglGetCurrentSurface, (EGLint readdraw), (readdraw))
5077GEN_THUNKS_RET(EGLDisplay, eglGetDisplay, (EGLNativeDisplayType display_id), (display_id))
5078GEN_THUNKS_RET(char *, eglGetDisplayDriverConfig, (EGLDisplay dpy), (dpy))
5079GEN_THUNKS_RET(const char *, eglGetDisplayDriverName, (EGLDisplay dpy), (dpy))
5080GEN_THUNKS_RET(EGLint, eglGetError, (void), ())
5081GEN_THUNKS_RET(EGLBoolean, eglGetFrameTimestampSupportedANDROID, (EGLDisplay dpy, EGLSurface surface, EGLint timestamp), (dpy, surface, timestamp))
5082GEN_THUNKS_RET(EGLBoolean, eglGetFrameTimestampsANDROID, (EGLDisplay dpy, EGLSurface surface, EGLuint64KHR frameId, EGLint numTimestamps, const EGLint * timestamps, EGLnsecsANDROID * values), (dpy, surface, frameId, numTimestamps, timestamps, values))
5083GEN_THUNKS_RET(EGLClientBuffer, eglGetNativeClientBufferANDROID, (const struct AHardwareBuffer * buffer), (buffer))
5084GEN_THUNKS_RET(EGLBoolean, eglGetNextFrameIdANDROID, (EGLDisplay dpy, EGLSurface surface, EGLuint64KHR * frameId), (dpy, surface, frameId))
5085GEN_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))
5086GEN_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))
5087GEN_THUNKS_RET(EGLDisplay, eglGetPlatformDisplay, (EGLenum platform, void * native_display, const EGLAttrib * attrib_list), (platform, native_display, attrib_list))
5088GEN_THUNKS_RET(EGLDisplay, eglGetPlatformDisplayEXT, (EGLenum platform, void * native_display, const EGLint * attrib_list), (platform, native_display, attrib_list))
5089GEN_THUNKS_RET(__eglMustCastToProperFunctionPointerType, eglGetProcAddress, (const char * procname), (procname))
5090GEN_THUNKS_RET(EGLNativeFileDescriptorKHR, eglGetStreamFileDescriptorKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
5091GEN_THUNKS_RET(EGLBoolean, eglGetSyncAttrib, (EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib * value), (dpy, sync, attribute, value))
5092GEN_THUNKS_RET(EGLBoolean, eglGetSyncAttribKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint * value), (dpy, sync, attribute, value))
5093GEN_THUNKS_RET(EGLBoolean, eglGetSyncAttribNV, (EGLSyncNV sync, EGLint attribute, EGLint * value), (sync, attribute, value))
5094GEN_THUNKS_RET(EGLuint64NV, eglGetSystemTimeFrequencyNV, (void), ())
5095GEN_THUNKS_RET(EGLuint64NV, eglGetSystemTimeNV, (void), ())
5096GEN_THUNKS_RET(EGLBoolean, eglInitialize, (EGLDisplay dpy, EGLint * major, EGLint * minor), (dpy, major, minor))
5097GEN_THUNKS_RET(EGLint, eglLabelObjectKHR, (EGLDisplay display, EGLenum objectType, EGLObjectKHR object, EGLLabelKHR label), (display, objectType, object, label))
5098GEN_THUNKS_RET(EGLBoolean, eglLockSurfaceKHR, (EGLDisplay dpy, EGLSurface surface, const EGLint * attrib_list), (dpy, surface, attrib_list))
5099GEN_THUNKS_RET(EGLBoolean, eglMakeCurrent, (EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx), (dpy, draw, read, ctx))
5100GEN_THUNKS_RET(EGLBoolean, eglOutputLayerAttribEXT, (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib value), (dpy, layer, attribute, value))
5101GEN_THUNKS_RET(EGLBoolean, eglOutputPortAttribEXT, (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib value), (dpy, port, attribute, value))
5102GEN_THUNKS_RET(EGLBoolean, eglPostSubBufferNV, (EGLDisplay dpy, EGLSurface surface, EGLint x, EGLint y, EGLint width, EGLint height), (dpy, surface, x, y, width, height))
5103GEN_THUNKS_RET(EGLBoolean, eglPresentationTimeANDROID, (EGLDisplay dpy, EGLSurface surface, EGLnsecsANDROID time), (dpy, surface, time))
5104GEN_THUNKS_RET(EGLenum, eglQueryAPI, (void), ())
5105GEN_THUNKS_RET(EGLBoolean, eglQueryContext, (EGLDisplay dpy, EGLContext ctx, EGLint attribute, EGLint * value), (dpy, ctx, attribute, value))
5106GEN_THUNKS_RET(EGLBoolean, eglQueryDebugKHR, (EGLint attribute, EGLAttrib * value), (attribute, value))
5107GEN_THUNKS_RET(EGLBoolean, eglQueryDeviceAttribEXT, (EGLDeviceEXT device, EGLint attribute, EGLAttrib * value), (device, attribute, value))
5108GEN_THUNKS_RET(const char *, eglQueryDeviceStringEXT, (EGLDeviceEXT device, EGLint name), (device, name))
5109GEN_THUNKS_RET(EGLBoolean, eglQueryDevicesEXT, (EGLint max_devices, EGLDeviceEXT * devices, EGLint * num_devices), (max_devices, devices, num_devices))
5110GEN_THUNKS_RET(EGLBoolean, eglQueryDisplayAttribEXT, (EGLDisplay dpy, EGLint attribute, EGLAttrib * value), (dpy, attribute, value))
5111GEN_THUNKS_RET(EGLBoolean, eglQueryDisplayAttribKHR, (EGLDisplay dpy, EGLint name, EGLAttrib * value), (dpy, name, value))
5112GEN_THUNKS_RET(EGLBoolean, eglQueryDisplayAttribNV, (EGLDisplay dpy, EGLint attribute, EGLAttrib * value), (dpy, attribute, value))
5113GEN_THUNKS_RET(EGLBoolean, eglQueryDmaBufFormatsEXT, (EGLDisplay dpy, EGLint max_formats, EGLint * formats, EGLint * num_formats), (dpy, max_formats, formats, num_formats))
5114GEN_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))
5115GEN_THUNKS_RET(EGLBoolean, eglQueryNativeDisplayNV, (EGLDisplay dpy, EGLNativeDisplayType * display_id), (dpy, display_id))
5116GEN_THUNKS_RET(EGLBoolean, eglQueryNativePixmapNV, (EGLDisplay dpy, EGLSurface surf, EGLNativePixmapType * pixmap), (dpy, surf, pixmap))
5117GEN_THUNKS_RET(EGLBoolean, eglQueryNativeWindowNV, (EGLDisplay dpy, EGLSurface surf, EGLNativeWindowType * window), (dpy, surf, window))
5118GEN_THUNKS_RET(EGLBoolean, eglQueryOutputLayerAttribEXT, (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint attribute, EGLAttrib * value), (dpy, layer, attribute, value))
5119GEN_THUNKS_RET(const char *, eglQueryOutputLayerStringEXT, (EGLDisplay dpy, EGLOutputLayerEXT layer, EGLint name), (dpy, layer, name))
5120GEN_THUNKS_RET(EGLBoolean, eglQueryOutputPortAttribEXT, (EGLDisplay dpy, EGLOutputPortEXT port, EGLint attribute, EGLAttrib * value), (dpy, port, attribute, value))
5121GEN_THUNKS_RET(const char *, eglQueryOutputPortStringEXT, (EGLDisplay dpy, EGLOutputPortEXT port, EGLint name), (dpy, port, name))
5122GEN_THUNKS_RET(EGLBoolean, eglQueryStreamAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib * value), (dpy, stream, attribute, value))
5123GEN_THUNKS_RET(EGLBoolean, eglQueryStreamKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint * value), (dpy, stream, attribute, value))
5124GEN_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))
5125GEN_THUNKS_RET(EGLBoolean, eglQueryStreamTimeKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLTimeKHR * value), (dpy, stream, attribute, value))
5126GEN_THUNKS_RET(EGLBoolean, eglQueryStreamu64KHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLuint64KHR * value), (dpy, stream, attribute, value))
5127GEN_THUNKS_RET(const char *, eglQueryString, (EGLDisplay dpy, EGLint name), (dpy, name))
5128GEN_THUNKS_RET(EGLBoolean, eglQuerySurface, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint * value), (dpy, surface, attribute, value))
5129GEN_THUNKS_RET(EGLBoolean, eglQuerySurface64KHR, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLAttribKHR * value), (dpy, surface, attribute, value))
5130GEN_THUNKS_RET(EGLBoolean, eglQuerySurfacePointerANGLE, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, void ** value), (dpy, surface, attribute, value))
5131GEN_THUNKS_RET(EGLBoolean, eglReleaseTexImage, (EGLDisplay dpy, EGLSurface surface, EGLint buffer), (dpy, surface, buffer))
5132GEN_THUNKS_RET(EGLBoolean, eglReleaseThread, (void), ())
5133GEN_THUNKS_RET(EGLBoolean, eglResetStreamNV, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
5134GEN_THUNKS(eglSetBlobCacheFuncsANDROID, (EGLDisplay dpy, EGLSetBlobFuncANDROID set, EGLGetBlobFuncANDROID get), (dpy, set, get))
5135GEN_THUNKS_RET(EGLBoolean, eglSetDamageRegionKHR, (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects), (dpy, surface, rects, n_rects))
5136GEN_THUNKS_RET(EGLBoolean, eglSetStreamAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLAttrib value), (dpy, stream, attribute, value))
5137GEN_THUNKS_RET(EGLBoolean, eglSetStreamMetadataNV, (EGLDisplay dpy, EGLStreamKHR stream, EGLint n, EGLint offset, EGLint size, const void * data), (dpy, stream, n, offset, size, data))
5138GEN_THUNKS_RET(EGLBoolean, eglSignalSyncKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode), (dpy, sync, mode))
5139GEN_THUNKS_RET(EGLBoolean, eglSignalSyncNV, (EGLSyncNV sync, EGLenum mode), (sync, mode))
5140GEN_THUNKS_RET(EGLBoolean, eglStreamAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, EGLenum attribute, EGLint value), (dpy, stream, attribute, value))
5141GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerAcquireAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib * attrib_list), (dpy, stream, attrib_list))
5142GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerAcquireKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
5143GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerGLTextureExternalAttribsNV, (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib * attrib_list), (dpy, stream, attrib_list))
5144GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerGLTextureExternalKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
5145GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerOutputEXT, (EGLDisplay dpy, EGLStreamKHR stream, EGLOutputLayerEXT layer), (dpy, stream, layer))
5146GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerReleaseAttribKHR, (EGLDisplay dpy, EGLStreamKHR stream, const EGLAttrib * attrib_list), (dpy, stream, attrib_list))
5147GEN_THUNKS_RET(EGLBoolean, eglStreamConsumerReleaseKHR, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
5148GEN_THUNKS_RET(EGLBoolean, eglStreamFlushNV, (EGLDisplay dpy, EGLStreamKHR stream), (dpy, stream))
5149GEN_THUNKS_RET(EGLBoolean, eglSurfaceAttrib, (EGLDisplay dpy, EGLSurface surface, EGLint attribute, EGLint value), (dpy, surface, attribute, value))
5150GEN_THUNKS_RET(EGLBoolean, eglSwapBuffers, (EGLDisplay dpy, EGLSurface surface), (dpy, surface))
5151GEN_THUNKS_RET(EGLBoolean, eglSwapBuffersRegion2NOK, (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint * rects), (dpy, surface, numRects, rects))
5152GEN_THUNKS_RET(EGLBoolean, eglSwapBuffersRegionNOK, (EGLDisplay dpy, EGLSurface surface, EGLint numRects, const EGLint * rects), (dpy, surface, numRects, rects))
5153GEN_THUNKS_RET(EGLBoolean, eglSwapBuffersWithDamageEXT, (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects), (dpy, surface, rects, n_rects))
5154GEN_THUNKS_RET(EGLBoolean, eglSwapBuffersWithDamageKHR, (EGLDisplay dpy, EGLSurface surface, EGLint * rects, EGLint n_rects), (dpy, surface, rects, n_rects))
5155GEN_THUNKS_RET(EGLBoolean, eglSwapInterval, (EGLDisplay dpy, EGLint interval), (dpy, interval))
5156GEN_THUNKS_RET(EGLBoolean, eglTerminate, (EGLDisplay dpy), (dpy))
5157GEN_THUNKS_RET(EGLBoolean, eglUnlockSurfaceKHR, (EGLDisplay dpy, EGLSurface surface), (dpy, surface))
5158GEN_THUNKS_RET(EGLBoolean, eglUnsignalSyncEXT, (EGLDisplay dpy, EGLSync sync, const EGLAttrib * attrib_list), (dpy, sync, attrib_list))
5159GEN_THUNKS_RET(EGLBoolean, eglWaitClient, (void), ())
5160GEN_THUNKS_RET(EGLBoolean, eglWaitGL, (void), ())
5161GEN_THUNKS_RET(EGLBoolean, eglWaitNative, (EGLint engine), (engine))
5162GEN_THUNKS_RET(EGLBoolean, eglWaitSync, (EGLDisplay dpy, EGLSync sync, EGLint flags), (dpy, sync, flags))
5163GEN_THUNKS_RET(EGLint, eglWaitSyncKHR, (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags), (dpy, sync, flags))
5164
5165#if USING_DISPATCH_TABLE
5166static struct dispatch_table resolver_table = {
5167 epoxy_eglBindAPI_dispatch_table_rewrite_ptr, /* eglBindAPI */
5168 epoxy_eglBindTexImage_dispatch_table_rewrite_ptr, /* eglBindTexImage */
5169 epoxy_eglChooseConfig_dispatch_table_rewrite_ptr, /* eglChooseConfig */
5170 epoxy_eglClientSignalSyncEXT_dispatch_table_rewrite_ptr, /* eglClientSignalSyncEXT */
5171 epoxy_eglClientWaitSync_dispatch_table_rewrite_ptr, /* eglClientWaitSync */
5172 epoxy_eglClientWaitSyncKHR_dispatch_table_rewrite_ptr, /* eglClientWaitSyncKHR */
5173 epoxy_eglClientWaitSyncNV_dispatch_table_rewrite_ptr, /* eglClientWaitSyncNV */
5174 epoxy_eglCompositorBindTexWindowEXT_dispatch_table_rewrite_ptr, /* eglCompositorBindTexWindowEXT */
5175 epoxy_eglCompositorSetContextAttributesEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetContextAttributesEXT */
5176 epoxy_eglCompositorSetContextListEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetContextListEXT */
5177 epoxy_eglCompositorSetSizeEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetSizeEXT */
5178 epoxy_eglCompositorSetWindowAttributesEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetWindowAttributesEXT */
5179 epoxy_eglCompositorSetWindowListEXT_dispatch_table_rewrite_ptr, /* eglCompositorSetWindowListEXT */
5180 epoxy_eglCompositorSwapPolicyEXT_dispatch_table_rewrite_ptr, /* eglCompositorSwapPolicyEXT */
5181 epoxy_eglCopyBuffers_dispatch_table_rewrite_ptr, /* eglCopyBuffers */
5182 epoxy_eglCreateContext_dispatch_table_rewrite_ptr, /* eglCreateContext */
5183 epoxy_eglCreateDRMImageMESA_dispatch_table_rewrite_ptr, /* eglCreateDRMImageMESA */
5184 epoxy_eglCreateFenceSyncNV_dispatch_table_rewrite_ptr, /* eglCreateFenceSyncNV */
5185 epoxy_eglCreateImage_dispatch_table_rewrite_ptr, /* eglCreateImage */
5186 epoxy_eglCreateImageKHR_dispatch_table_rewrite_ptr, /* eglCreateImageKHR */
5187 epoxy_eglCreateNativeClientBufferANDROID_dispatch_table_rewrite_ptr, /* eglCreateNativeClientBufferANDROID */
5188 epoxy_eglCreatePbufferFromClientBuffer_dispatch_table_rewrite_ptr, /* eglCreatePbufferFromClientBuffer */
5189 epoxy_eglCreatePbufferSurface_dispatch_table_rewrite_ptr, /* eglCreatePbufferSurface */
5190 epoxy_eglCreatePixmapSurface_dispatch_table_rewrite_ptr, /* eglCreatePixmapSurface */
5191 epoxy_eglCreatePixmapSurfaceHI_dispatch_table_rewrite_ptr, /* eglCreatePixmapSurfaceHI */
5192 epoxy_eglCreatePlatformPixmapSurface_dispatch_table_rewrite_ptr, /* eglCreatePlatformPixmapSurface */
5193 epoxy_eglCreatePlatformPixmapSurfaceEXT_dispatch_table_rewrite_ptr, /* eglCreatePlatformPixmapSurfaceEXT */
5194 epoxy_eglCreatePlatformWindowSurface_dispatch_table_rewrite_ptr, /* eglCreatePlatformWindowSurface */
5195 epoxy_eglCreatePlatformWindowSurfaceEXT_dispatch_table_rewrite_ptr, /* eglCreatePlatformWindowSurfaceEXT */
5196 epoxy_eglCreateStreamAttribKHR_dispatch_table_rewrite_ptr, /* eglCreateStreamAttribKHR */
5197 epoxy_eglCreateStreamFromFileDescriptorKHR_dispatch_table_rewrite_ptr, /* eglCreateStreamFromFileDescriptorKHR */
5198 epoxy_eglCreateStreamKHR_dispatch_table_rewrite_ptr, /* eglCreateStreamKHR */
5199 epoxy_eglCreateStreamProducerSurfaceKHR_dispatch_table_rewrite_ptr, /* eglCreateStreamProducerSurfaceKHR */
5200 epoxy_eglCreateStreamSyncNV_dispatch_table_rewrite_ptr, /* eglCreateStreamSyncNV */
5201 epoxy_eglCreateSync_dispatch_table_rewrite_ptr, /* eglCreateSync */
5202 epoxy_eglCreateSync64KHR_dispatch_table_rewrite_ptr, /* eglCreateSync64KHR */
5203 epoxy_eglCreateSyncKHR_dispatch_table_rewrite_ptr, /* eglCreateSyncKHR */
5204 epoxy_eglCreateWindowSurface_dispatch_table_rewrite_ptr, /* eglCreateWindowSurface */
5205 epoxy_eglDebugMessageControlKHR_dispatch_table_rewrite_ptr, /* eglDebugMessageControlKHR */
5206 epoxy_eglDestroyContext_dispatch_table_rewrite_ptr, /* eglDestroyContext */
5207 epoxy_eglDestroyImage_dispatch_table_rewrite_ptr, /* eglDestroyImage */
5208 epoxy_eglDestroyImageKHR_dispatch_table_rewrite_ptr, /* eglDestroyImageKHR */
5209 epoxy_eglDestroyStreamKHR_dispatch_table_rewrite_ptr, /* eglDestroyStreamKHR */
5210 epoxy_eglDestroySurface_dispatch_table_rewrite_ptr, /* eglDestroySurface */
5211 epoxy_eglDestroySync_dispatch_table_rewrite_ptr, /* eglDestroySync */
5212 epoxy_eglDestroySyncKHR_dispatch_table_rewrite_ptr, /* eglDestroySyncKHR */
5213 epoxy_eglDestroySyncNV_dispatch_table_rewrite_ptr, /* eglDestroySyncNV */
5214 epoxy_eglDupNativeFenceFDANDROID_dispatch_table_rewrite_ptr, /* eglDupNativeFenceFDANDROID */
5215 epoxy_eglExportDMABUFImageMESA_dispatch_table_rewrite_ptr, /* eglExportDMABUFImageMESA */
5216 epoxy_eglExportDMABUFImageQueryMESA_dispatch_table_rewrite_ptr, /* eglExportDMABUFImageQueryMESA */
5217 epoxy_eglExportDRMImageMESA_dispatch_table_rewrite_ptr, /* eglExportDRMImageMESA */
5218 epoxy_eglFenceNV_dispatch_table_rewrite_ptr, /* eglFenceNV */
5219 epoxy_eglGetCompositorTimingANDROID_dispatch_table_rewrite_ptr, /* eglGetCompositorTimingANDROID */
5220 epoxy_eglGetCompositorTimingSupportedANDROID_dispatch_table_rewrite_ptr, /* eglGetCompositorTimingSupportedANDROID */
5221 epoxy_eglGetConfigAttrib_dispatch_table_rewrite_ptr, /* eglGetConfigAttrib */
5222 epoxy_eglGetConfigs_dispatch_table_rewrite_ptr, /* eglGetConfigs */
5223 epoxy_eglGetCurrentContext_dispatch_table_rewrite_ptr, /* eglGetCurrentContext */
5224 epoxy_eglGetCurrentDisplay_dispatch_table_rewrite_ptr, /* eglGetCurrentDisplay */
5225 epoxy_eglGetCurrentSurface_dispatch_table_rewrite_ptr, /* eglGetCurrentSurface */
5226 epoxy_eglGetDisplay_dispatch_table_rewrite_ptr, /* eglGetDisplay */
5227 epoxy_eglGetDisplayDriverConfig_dispatch_table_rewrite_ptr, /* eglGetDisplayDriverConfig */
5228 epoxy_eglGetDisplayDriverName_dispatch_table_rewrite_ptr, /* eglGetDisplayDriverName */
5229 epoxy_eglGetError_dispatch_table_rewrite_ptr, /* eglGetError */
5230 epoxy_eglGetFrameTimestampSupportedANDROID_dispatch_table_rewrite_ptr, /* eglGetFrameTimestampSupportedANDROID */
5231 epoxy_eglGetFrameTimestampsANDROID_dispatch_table_rewrite_ptr, /* eglGetFrameTimestampsANDROID */
5232 epoxy_eglGetNativeClientBufferANDROID_dispatch_table_rewrite_ptr, /* eglGetNativeClientBufferANDROID */
5233 epoxy_eglGetNextFrameIdANDROID_dispatch_table_rewrite_ptr, /* eglGetNextFrameIdANDROID */
5234 epoxy_eglGetOutputLayersEXT_dispatch_table_rewrite_ptr, /* eglGetOutputLayersEXT */
5235 epoxy_eglGetOutputPortsEXT_dispatch_table_rewrite_ptr, /* eglGetOutputPortsEXT */
5236 epoxy_eglGetPlatformDisplay_dispatch_table_rewrite_ptr, /* eglGetPlatformDisplay */
5237 epoxy_eglGetPlatformDisplayEXT_dispatch_table_rewrite_ptr, /* eglGetPlatformDisplayEXT */
5238 epoxy_eglGetProcAddress_dispatch_table_rewrite_ptr, /* eglGetProcAddress */
5239 epoxy_eglGetStreamFileDescriptorKHR_dispatch_table_rewrite_ptr, /* eglGetStreamFileDescriptorKHR */
5240 epoxy_eglGetSyncAttrib_dispatch_table_rewrite_ptr, /* eglGetSyncAttrib */
5241 epoxy_eglGetSyncAttribKHR_dispatch_table_rewrite_ptr, /* eglGetSyncAttribKHR */
5242 epoxy_eglGetSyncAttribNV_dispatch_table_rewrite_ptr, /* eglGetSyncAttribNV */
5243 epoxy_eglGetSystemTimeFrequencyNV_dispatch_table_rewrite_ptr, /* eglGetSystemTimeFrequencyNV */
5244 epoxy_eglGetSystemTimeNV_dispatch_table_rewrite_ptr, /* eglGetSystemTimeNV */
5245 epoxy_eglInitialize_dispatch_table_rewrite_ptr, /* eglInitialize */
5246 epoxy_eglLabelObjectKHR_dispatch_table_rewrite_ptr, /* eglLabelObjectKHR */
5247 epoxy_eglLockSurfaceKHR_dispatch_table_rewrite_ptr, /* eglLockSurfaceKHR */
5248 epoxy_eglMakeCurrent_dispatch_table_rewrite_ptr, /* eglMakeCurrent */
5249 epoxy_eglOutputLayerAttribEXT_dispatch_table_rewrite_ptr, /* eglOutputLayerAttribEXT */
5250 epoxy_eglOutputPortAttribEXT_dispatch_table_rewrite_ptr, /* eglOutputPortAttribEXT */
5251 epoxy_eglPostSubBufferNV_dispatch_table_rewrite_ptr, /* eglPostSubBufferNV */
5252 epoxy_eglPresentationTimeANDROID_dispatch_table_rewrite_ptr, /* eglPresentationTimeANDROID */
5253 epoxy_eglQueryAPI_dispatch_table_rewrite_ptr, /* eglQueryAPI */
5254 epoxy_eglQueryContext_dispatch_table_rewrite_ptr, /* eglQueryContext */
5255 epoxy_eglQueryDebugKHR_dispatch_table_rewrite_ptr, /* eglQueryDebugKHR */
5256 epoxy_eglQueryDeviceAttribEXT_dispatch_table_rewrite_ptr, /* eglQueryDeviceAttribEXT */
5257 epoxy_eglQueryDeviceStringEXT_dispatch_table_rewrite_ptr, /* eglQueryDeviceStringEXT */
5258 epoxy_eglQueryDevicesEXT_dispatch_table_rewrite_ptr, /* eglQueryDevicesEXT */
5259 epoxy_eglQueryDisplayAttribEXT_dispatch_table_rewrite_ptr, /* eglQueryDisplayAttribEXT */
5260 epoxy_eglQueryDisplayAttribKHR_dispatch_table_rewrite_ptr, /* eglQueryDisplayAttribKHR */
5261 epoxy_eglQueryDisplayAttribNV_dispatch_table_rewrite_ptr, /* eglQueryDisplayAttribNV */
5262 epoxy_eglQueryDmaBufFormatsEXT_dispatch_table_rewrite_ptr, /* eglQueryDmaBufFormatsEXT */
5263 epoxy_eglQueryDmaBufModifiersEXT_dispatch_table_rewrite_ptr, /* eglQueryDmaBufModifiersEXT */
5264 epoxy_eglQueryNativeDisplayNV_dispatch_table_rewrite_ptr, /* eglQueryNativeDisplayNV */
5265 epoxy_eglQueryNativePixmapNV_dispatch_table_rewrite_ptr, /* eglQueryNativePixmapNV */
5266 epoxy_eglQueryNativeWindowNV_dispatch_table_rewrite_ptr, /* eglQueryNativeWindowNV */
5267 epoxy_eglQueryOutputLayerAttribEXT_dispatch_table_rewrite_ptr, /* eglQueryOutputLayerAttribEXT */
5268 epoxy_eglQueryOutputLayerStringEXT_dispatch_table_rewrite_ptr, /* eglQueryOutputLayerStringEXT */
5269 epoxy_eglQueryOutputPortAttribEXT_dispatch_table_rewrite_ptr, /* eglQueryOutputPortAttribEXT */
5270 epoxy_eglQueryOutputPortStringEXT_dispatch_table_rewrite_ptr, /* eglQueryOutputPortStringEXT */
5271 epoxy_eglQueryStreamAttribKHR_dispatch_table_rewrite_ptr, /* eglQueryStreamAttribKHR */
5272 epoxy_eglQueryStreamKHR_dispatch_table_rewrite_ptr, /* eglQueryStreamKHR */
5273 epoxy_eglQueryStreamMetadataNV_dispatch_table_rewrite_ptr, /* eglQueryStreamMetadataNV */
5274 epoxy_eglQueryStreamTimeKHR_dispatch_table_rewrite_ptr, /* eglQueryStreamTimeKHR */
5275 epoxy_eglQueryStreamu64KHR_dispatch_table_rewrite_ptr, /* eglQueryStreamu64KHR */
5276 epoxy_eglQueryString_dispatch_table_rewrite_ptr, /* eglQueryString */
5277 epoxy_eglQuerySurface_dispatch_table_rewrite_ptr, /* eglQuerySurface */
5278 epoxy_eglQuerySurface64KHR_dispatch_table_rewrite_ptr, /* eglQuerySurface64KHR */
5279 epoxy_eglQuerySurfacePointerANGLE_dispatch_table_rewrite_ptr, /* eglQuerySurfacePointerANGLE */
5280 epoxy_eglReleaseTexImage_dispatch_table_rewrite_ptr, /* eglReleaseTexImage */
5281 epoxy_eglReleaseThread_dispatch_table_rewrite_ptr, /* eglReleaseThread */
5282 epoxy_eglResetStreamNV_dispatch_table_rewrite_ptr, /* eglResetStreamNV */
5283 epoxy_eglSetBlobCacheFuncsANDROID_dispatch_table_rewrite_ptr, /* eglSetBlobCacheFuncsANDROID */
5284 epoxy_eglSetDamageRegionKHR_dispatch_table_rewrite_ptr, /* eglSetDamageRegionKHR */
5285 epoxy_eglSetStreamAttribKHR_dispatch_table_rewrite_ptr, /* eglSetStreamAttribKHR */
5286 epoxy_eglSetStreamMetadataNV_dispatch_table_rewrite_ptr, /* eglSetStreamMetadataNV */
5287 epoxy_eglSignalSyncKHR_dispatch_table_rewrite_ptr, /* eglSignalSyncKHR */
5288 epoxy_eglSignalSyncNV_dispatch_table_rewrite_ptr, /* eglSignalSyncNV */
5289 epoxy_eglStreamAttribKHR_dispatch_table_rewrite_ptr, /* eglStreamAttribKHR */
5290 epoxy_eglStreamConsumerAcquireAttribKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerAcquireAttribKHR */
5291 epoxy_eglStreamConsumerAcquireKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerAcquireKHR */
5292 epoxy_eglStreamConsumerGLTextureExternalAttribsNV_dispatch_table_rewrite_ptr, /* eglStreamConsumerGLTextureExternalAttribsNV */
5293 epoxy_eglStreamConsumerGLTextureExternalKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerGLTextureExternalKHR */
5294 epoxy_eglStreamConsumerOutputEXT_dispatch_table_rewrite_ptr, /* eglStreamConsumerOutputEXT */
5295 epoxy_eglStreamConsumerReleaseAttribKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerReleaseAttribKHR */
5296 epoxy_eglStreamConsumerReleaseKHR_dispatch_table_rewrite_ptr, /* eglStreamConsumerReleaseKHR */
5297 epoxy_eglStreamFlushNV_dispatch_table_rewrite_ptr, /* eglStreamFlushNV */
5298 epoxy_eglSurfaceAttrib_dispatch_table_rewrite_ptr, /* eglSurfaceAttrib */
5299 epoxy_eglSwapBuffers_dispatch_table_rewrite_ptr, /* eglSwapBuffers */
5300 epoxy_eglSwapBuffersRegion2NOK_dispatch_table_rewrite_ptr, /* eglSwapBuffersRegion2NOK */
5301 epoxy_eglSwapBuffersRegionNOK_dispatch_table_rewrite_ptr, /* eglSwapBuffersRegionNOK */
5302 epoxy_eglSwapBuffersWithDamageEXT_dispatch_table_rewrite_ptr, /* eglSwapBuffersWithDamageEXT */
5303 epoxy_eglSwapBuffersWithDamageKHR_dispatch_table_rewrite_ptr, /* eglSwapBuffersWithDamageKHR */
5304 epoxy_eglSwapInterval_dispatch_table_rewrite_ptr, /* eglSwapInterval */
5305 epoxy_eglTerminate_dispatch_table_rewrite_ptr, /* eglTerminate */
5306 epoxy_eglUnlockSurfaceKHR_dispatch_table_rewrite_ptr, /* eglUnlockSurfaceKHR */
5307 epoxy_eglUnsignalSyncEXT_dispatch_table_rewrite_ptr, /* eglUnsignalSyncEXT */
5308 epoxy_eglWaitClient_dispatch_table_rewrite_ptr, /* eglWaitClient */
5309 epoxy_eglWaitGL_dispatch_table_rewrite_ptr, /* eglWaitGL */
5310 epoxy_eglWaitNative_dispatch_table_rewrite_ptr, /* eglWaitNative */
5311 epoxy_eglWaitSync_dispatch_table_rewrite_ptr, /* eglWaitSync */
5312 epoxy_eglWaitSyncKHR_dispatch_table_rewrite_ptr, /* eglWaitSyncKHR */
5313};
5314
5315uint32_t egl_tls_index;
5316uint32_t egl_tls_size = sizeof(struct dispatch_table);
5317
5318static inline struct dispatch_table *
5319get_dispatch_table(void)
5320{
5321 return TlsGetValue(egl_tls_index);
5322}
5323
5324void
5325egl_init_dispatch_table(void)
5326{
5327 struct dispatch_table *dispatch_table = get_dispatch_table();
5328 memcpy(dispatch_table, &resolver_table, sizeof(resolver_table));
5329}
5330
5331void
5332egl_switch_to_dispatch_table(void)
5333{
5334 epoxy_eglBindAPI = epoxy_eglBindAPI_dispatch_table_thunk;
5335 epoxy_eglBindTexImage = epoxy_eglBindTexImage_dispatch_table_thunk;
5336 epoxy_eglChooseConfig = epoxy_eglChooseConfig_dispatch_table_thunk;
5337 epoxy_eglClientSignalSyncEXT = epoxy_eglClientSignalSyncEXT_dispatch_table_thunk;
5338 epoxy_eglClientWaitSync = epoxy_eglClientWaitSync_dispatch_table_thunk;
5339 epoxy_eglClientWaitSyncKHR = epoxy_eglClientWaitSyncKHR_dispatch_table_thunk;
5340 epoxy_eglClientWaitSyncNV = epoxy_eglClientWaitSyncNV_dispatch_table_thunk;
5341 epoxy_eglCompositorBindTexWindowEXT = epoxy_eglCompositorBindTexWindowEXT_dispatch_table_thunk;
5342 epoxy_eglCompositorSetContextAttributesEXT = epoxy_eglCompositorSetContextAttributesEXT_dispatch_table_thunk;
5343 epoxy_eglCompositorSetContextListEXT = epoxy_eglCompositorSetContextListEXT_dispatch_table_thunk;
5344 epoxy_eglCompositorSetSizeEXT = epoxy_eglCompositorSetSizeEXT_dispatch_table_thunk;
5345 epoxy_eglCompositorSetWindowAttributesEXT = epoxy_eglCompositorSetWindowAttributesEXT_dispatch_table_thunk;
5346 epoxy_eglCompositorSetWindowListEXT = epoxy_eglCompositorSetWindowListEXT_dispatch_table_thunk;
5347 epoxy_eglCompositorSwapPolicyEXT = epoxy_eglCompositorSwapPolicyEXT_dispatch_table_thunk;
5348 epoxy_eglCopyBuffers = epoxy_eglCopyBuffers_dispatch_table_thunk;
5349 epoxy_eglCreateContext = epoxy_eglCreateContext_dispatch_table_thunk;
5350 epoxy_eglCreateDRMImageMESA = epoxy_eglCreateDRMImageMESA_dispatch_table_thunk;
5351 epoxy_eglCreateFenceSyncNV = epoxy_eglCreateFenceSyncNV_dispatch_table_thunk;
5352 epoxy_eglCreateImage = epoxy_eglCreateImage_dispatch_table_thunk;
5353 epoxy_eglCreateImageKHR = epoxy_eglCreateImageKHR_dispatch_table_thunk;
5354 epoxy_eglCreateNativeClientBufferANDROID = epoxy_eglCreateNativeClientBufferANDROID_dispatch_table_thunk;
5355 epoxy_eglCreatePbufferFromClientBuffer = epoxy_eglCreatePbufferFromClientBuffer_dispatch_table_thunk;
5356 epoxy_eglCreatePbufferSurface = epoxy_eglCreatePbufferSurface_dispatch_table_thunk;
5357 epoxy_eglCreatePixmapSurface = epoxy_eglCreatePixmapSurface_dispatch_table_thunk;
5358 epoxy_eglCreatePixmapSurfaceHI = epoxy_eglCreatePixmapSurfaceHI_dispatch_table_thunk;
5359 epoxy_eglCreatePlatformPixmapSurface = epoxy_eglCreatePlatformPixmapSurface_dispatch_table_thunk;
5360 epoxy_eglCreatePlatformPixmapSurfaceEXT = epoxy_eglCreatePlatformPixmapSurfaceEXT_dispatch_table_thunk;
5361 epoxy_eglCreatePlatformWindowSurface = epoxy_eglCreatePlatformWindowSurface_dispatch_table_thunk;
5362 epoxy_eglCreatePlatformWindowSurfaceEXT = epoxy_eglCreatePlatformWindowSurfaceEXT_dispatch_table_thunk;
5363 epoxy_eglCreateStreamAttribKHR = epoxy_eglCreateStreamAttribKHR_dispatch_table_thunk;
5364 epoxy_eglCreateStreamFromFileDescriptorKHR = epoxy_eglCreateStreamFromFileDescriptorKHR_dispatch_table_thunk;
5365 epoxy_eglCreateStreamKHR = epoxy_eglCreateStreamKHR_dispatch_table_thunk;
5366 epoxy_eglCreateStreamProducerSurfaceKHR = epoxy_eglCreateStreamProducerSurfaceKHR_dispatch_table_thunk;
5367 epoxy_eglCreateStreamSyncNV = epoxy_eglCreateStreamSyncNV_dispatch_table_thunk;
5368 epoxy_eglCreateSync = epoxy_eglCreateSync_dispatch_table_thunk;
5369 epoxy_eglCreateSync64KHR = epoxy_eglCreateSync64KHR_dispatch_table_thunk;
5370 epoxy_eglCreateSyncKHR = epoxy_eglCreateSyncKHR_dispatch_table_thunk;
5371 epoxy_eglCreateWindowSurface = epoxy_eglCreateWindowSurface_dispatch_table_thunk;
5372 epoxy_eglDebugMessageControlKHR = epoxy_eglDebugMessageControlKHR_dispatch_table_thunk;
5373 epoxy_eglDestroyContext = epoxy_eglDestroyContext_dispatch_table_thunk;
5374 epoxy_eglDestroyImage = epoxy_eglDestroyImage_dispatch_table_thunk;
5375 epoxy_eglDestroyImageKHR = epoxy_eglDestroyImageKHR_dispatch_table_thunk;
5376 epoxy_eglDestroyStreamKHR = epoxy_eglDestroyStreamKHR_dispatch_table_thunk;
5377 epoxy_eglDestroySurface = epoxy_eglDestroySurface_dispatch_table_thunk;
5378 epoxy_eglDestroySync = epoxy_eglDestroySync_dispatch_table_thunk;
5379 epoxy_eglDestroySyncKHR = epoxy_eglDestroySyncKHR_dispatch_table_thunk;
5380 epoxy_eglDestroySyncNV = epoxy_eglDestroySyncNV_dispatch_table_thunk;
5381 epoxy_eglDupNativeFenceFDANDROID = epoxy_eglDupNativeFenceFDANDROID_dispatch_table_thunk;
5382 epoxy_eglExportDMABUFImageMESA = epoxy_eglExportDMABUFImageMESA_dispatch_table_thunk;
5383 epoxy_eglExportDMABUFImageQueryMESA = epoxy_eglExportDMABUFImageQueryMESA_dispatch_table_thunk;
5384 epoxy_eglExportDRMImageMESA = epoxy_eglExportDRMImageMESA_dispatch_table_thunk;
5385 epoxy_eglFenceNV = epoxy_eglFenceNV_dispatch_table_thunk;
5386 epoxy_eglGetCompositorTimingANDROID = epoxy_eglGetCompositorTimingANDROID_dispatch_table_thunk;
5387 epoxy_eglGetCompositorTimingSupportedANDROID = epoxy_eglGetCompositorTimingSupportedANDROID_dispatch_table_thunk;
5388 epoxy_eglGetConfigAttrib = epoxy_eglGetConfigAttrib_dispatch_table_thunk;
5389 epoxy_eglGetConfigs = epoxy_eglGetConfigs_dispatch_table_thunk;
5390 epoxy_eglGetCurrentContext = epoxy_eglGetCurrentContext_dispatch_table_thunk;
5391 epoxy_eglGetCurrentDisplay = epoxy_eglGetCurrentDisplay_dispatch_table_thunk;
5392 epoxy_eglGetCurrentSurface = epoxy_eglGetCurrentSurface_dispatch_table_thunk;
5393 epoxy_eglGetDisplay = epoxy_eglGetDisplay_dispatch_table_thunk;
5394 epoxy_eglGetDisplayDriverConfig = epoxy_eglGetDisplayDriverConfig_dispatch_table_thunk;
5395 epoxy_eglGetDisplayDriverName = epoxy_eglGetDisplayDriverName_dispatch_table_thunk;
5396 epoxy_eglGetError = epoxy_eglGetError_dispatch_table_thunk;
5397 epoxy_eglGetFrameTimestampSupportedANDROID = epoxy_eglGetFrameTimestampSupportedANDROID_dispatch_table_thunk;
5398 epoxy_eglGetFrameTimestampsANDROID = epoxy_eglGetFrameTimestampsANDROID_dispatch_table_thunk;
5399 epoxy_eglGetNativeClientBufferANDROID = epoxy_eglGetNativeClientBufferANDROID_dispatch_table_thunk;
5400 epoxy_eglGetNextFrameIdANDROID = epoxy_eglGetNextFrameIdANDROID_dispatch_table_thunk;
5401 epoxy_eglGetOutputLayersEXT = epoxy_eglGetOutputLayersEXT_dispatch_table_thunk;
5402 epoxy_eglGetOutputPortsEXT = epoxy_eglGetOutputPortsEXT_dispatch_table_thunk;
5403 epoxy_eglGetPlatformDisplay = epoxy_eglGetPlatformDisplay_dispatch_table_thunk;
5404 epoxy_eglGetPlatformDisplayEXT = epoxy_eglGetPlatformDisplayEXT_dispatch_table_thunk;
5405 epoxy_eglGetProcAddress = epoxy_eglGetProcAddress_dispatch_table_thunk;
5406 epoxy_eglGetStreamFileDescriptorKHR = epoxy_eglGetStreamFileDescriptorKHR_dispatch_table_thunk;
5407 epoxy_eglGetSyncAttrib = epoxy_eglGetSyncAttrib_dispatch_table_thunk;
5408 epoxy_eglGetSyncAttribKHR = epoxy_eglGetSyncAttribKHR_dispatch_table_thunk;
5409 epoxy_eglGetSyncAttribNV = epoxy_eglGetSyncAttribNV_dispatch_table_thunk;
5410 epoxy_eglGetSystemTimeFrequencyNV = epoxy_eglGetSystemTimeFrequencyNV_dispatch_table_thunk;
5411 epoxy_eglGetSystemTimeNV = epoxy_eglGetSystemTimeNV_dispatch_table_thunk;
5412 epoxy_eglInitialize = epoxy_eglInitialize_dispatch_table_thunk;
5413 epoxy_eglLabelObjectKHR = epoxy_eglLabelObjectKHR_dispatch_table_thunk;
5414 epoxy_eglLockSurfaceKHR = epoxy_eglLockSurfaceKHR_dispatch_table_thunk;
5415 epoxy_eglMakeCurrent = epoxy_eglMakeCurrent_dispatch_table_thunk;
5416 epoxy_eglOutputLayerAttribEXT = epoxy_eglOutputLayerAttribEXT_dispatch_table_thunk;
5417 epoxy_eglOutputPortAttribEXT = epoxy_eglOutputPortAttribEXT_dispatch_table_thunk;
5418 epoxy_eglPostSubBufferNV = epoxy_eglPostSubBufferNV_dispatch_table_thunk;
5419 epoxy_eglPresentationTimeANDROID = epoxy_eglPresentationTimeANDROID_dispatch_table_thunk;
5420 epoxy_eglQueryAPI = epoxy_eglQueryAPI_dispatch_table_thunk;
5421 epoxy_eglQueryContext = epoxy_eglQueryContext_dispatch_table_thunk;
5422 epoxy_eglQueryDebugKHR = epoxy_eglQueryDebugKHR_dispatch_table_thunk;
5423 epoxy_eglQueryDeviceAttribEXT = epoxy_eglQueryDeviceAttribEXT_dispatch_table_thunk;
5424 epoxy_eglQueryDeviceStringEXT = epoxy_eglQueryDeviceStringEXT_dispatch_table_thunk;
5425 epoxy_eglQueryDevicesEXT = epoxy_eglQueryDevicesEXT_dispatch_table_thunk;
5426 epoxy_eglQueryDisplayAttribEXT = epoxy_eglQueryDisplayAttribEXT_dispatch_table_thunk;
5427 epoxy_eglQueryDisplayAttribKHR = epoxy_eglQueryDisplayAttribKHR_dispatch_table_thunk;
5428 epoxy_eglQueryDisplayAttribNV = epoxy_eglQueryDisplayAttribNV_dispatch_table_thunk;
5429 epoxy_eglQueryDmaBufFormatsEXT = epoxy_eglQueryDmaBufFormatsEXT_dispatch_table_thunk;
5430 epoxy_eglQueryDmaBufModifiersEXT = epoxy_eglQueryDmaBufModifiersEXT_dispatch_table_thunk;
5431 epoxy_eglQueryNativeDisplayNV = epoxy_eglQueryNativeDisplayNV_dispatch_table_thunk;
5432 epoxy_eglQueryNativePixmapNV = epoxy_eglQueryNativePixmapNV_dispatch_table_thunk;
5433 epoxy_eglQueryNativeWindowNV = epoxy_eglQueryNativeWindowNV_dispatch_table_thunk;
5434 epoxy_eglQueryOutputLayerAttribEXT = epoxy_eglQueryOutputLayerAttribEXT_dispatch_table_thunk;
5435 epoxy_eglQueryOutputLayerStringEXT = epoxy_eglQueryOutputLayerStringEXT_dispatch_table_thunk;
5436 epoxy_eglQueryOutputPortAttribEXT = epoxy_eglQueryOutputPortAttribEXT_dispatch_table_thunk;
5437 epoxy_eglQueryOutputPortStringEXT = epoxy_eglQueryOutputPortStringEXT_dispatch_table_thunk;
5438 epoxy_eglQueryStreamAttribKHR = epoxy_eglQueryStreamAttribKHR_dispatch_table_thunk;
5439 epoxy_eglQueryStreamKHR = epoxy_eglQueryStreamKHR_dispatch_table_thunk;
5440 epoxy_eglQueryStreamMetadataNV = epoxy_eglQueryStreamMetadataNV_dispatch_table_thunk;
5441 epoxy_eglQueryStreamTimeKHR = epoxy_eglQueryStreamTimeKHR_dispatch_table_thunk;
5442 epoxy_eglQueryStreamu64KHR = epoxy_eglQueryStreamu64KHR_dispatch_table_thunk;
5443 epoxy_eglQueryString = epoxy_eglQueryString_dispatch_table_thunk;
5444 epoxy_eglQuerySurface = epoxy_eglQuerySurface_dispatch_table_thunk;
5445 epoxy_eglQuerySurface64KHR = epoxy_eglQuerySurface64KHR_dispatch_table_thunk;
5446 epoxy_eglQuerySurfacePointerANGLE = epoxy_eglQuerySurfacePointerANGLE_dispatch_table_thunk;
5447 epoxy_eglReleaseTexImage = epoxy_eglReleaseTexImage_dispatch_table_thunk;
5448 epoxy_eglReleaseThread = epoxy_eglReleaseThread_dispatch_table_thunk;
5449 epoxy_eglResetStreamNV = epoxy_eglResetStreamNV_dispatch_table_thunk;
5450 epoxy_eglSetBlobCacheFuncsANDROID = epoxy_eglSetBlobCacheFuncsANDROID_dispatch_table_thunk;
5451 epoxy_eglSetDamageRegionKHR = epoxy_eglSetDamageRegionKHR_dispatch_table_thunk;
5452 epoxy_eglSetStreamAttribKHR = epoxy_eglSetStreamAttribKHR_dispatch_table_thunk;
5453 epoxy_eglSetStreamMetadataNV = epoxy_eglSetStreamMetadataNV_dispatch_table_thunk;
5454 epoxy_eglSignalSyncKHR = epoxy_eglSignalSyncKHR_dispatch_table_thunk;
5455 epoxy_eglSignalSyncNV = epoxy_eglSignalSyncNV_dispatch_table_thunk;
5456 epoxy_eglStreamAttribKHR = epoxy_eglStreamAttribKHR_dispatch_table_thunk;
5457 epoxy_eglStreamConsumerAcquireAttribKHR = epoxy_eglStreamConsumerAcquireAttribKHR_dispatch_table_thunk;
5458 epoxy_eglStreamConsumerAcquireKHR = epoxy_eglStreamConsumerAcquireKHR_dispatch_table_thunk;
5459 epoxy_eglStreamConsumerGLTextureExternalAttribsNV = epoxy_eglStreamConsumerGLTextureExternalAttribsNV_dispatch_table_thunk;
5460 epoxy_eglStreamConsumerGLTextureExternalKHR = epoxy_eglStreamConsumerGLTextureExternalKHR_dispatch_table_thunk;
5461 epoxy_eglStreamConsumerOutputEXT = epoxy_eglStreamConsumerOutputEXT_dispatch_table_thunk;
5462 epoxy_eglStreamConsumerReleaseAttribKHR = epoxy_eglStreamConsumerReleaseAttribKHR_dispatch_table_thunk;
5463 epoxy_eglStreamConsumerReleaseKHR = epoxy_eglStreamConsumerReleaseKHR_dispatch_table_thunk;
5464 epoxy_eglStreamFlushNV = epoxy_eglStreamFlushNV_dispatch_table_thunk;
5465 epoxy_eglSurfaceAttrib = epoxy_eglSurfaceAttrib_dispatch_table_thunk;
5466 epoxy_eglSwapBuffers = epoxy_eglSwapBuffers_dispatch_table_thunk;
5467 epoxy_eglSwapBuffersRegion2NOK = epoxy_eglSwapBuffersRegion2NOK_dispatch_table_thunk;
5468 epoxy_eglSwapBuffersRegionNOK = epoxy_eglSwapBuffersRegionNOK_dispatch_table_thunk;
5469 epoxy_eglSwapBuffersWithDamageEXT = epoxy_eglSwapBuffersWithDamageEXT_dispatch_table_thunk;
5470 epoxy_eglSwapBuffersWithDamageKHR = epoxy_eglSwapBuffersWithDamageKHR_dispatch_table_thunk;
5471 epoxy_eglSwapInterval = epoxy_eglSwapInterval_dispatch_table_thunk;
5472 epoxy_eglTerminate = epoxy_eglTerminate_dispatch_table_thunk;
5473 epoxy_eglUnlockSurfaceKHR = epoxy_eglUnlockSurfaceKHR_dispatch_table_thunk;
5474 epoxy_eglUnsignalSyncEXT = epoxy_eglUnsignalSyncEXT_dispatch_table_thunk;
5475 epoxy_eglWaitClient = epoxy_eglWaitClient_dispatch_table_thunk;
5476 epoxy_eglWaitGL = epoxy_eglWaitGL_dispatch_table_thunk;
5477 epoxy_eglWaitNative = epoxy_eglWaitNative_dispatch_table_thunk;
5478 epoxy_eglWaitSync = epoxy_eglWaitSync_dispatch_table_thunk;
5479 epoxy_eglWaitSyncKHR = epoxy_eglWaitSyncKHR_dispatch_table_thunk;
5480}
5481
5482#endif /* !USING_DISPATCH_TABLE */
5483PFNEGLBINDAPIPROC epoxy_eglBindAPI = epoxy_eglBindAPI_global_rewrite_ptr;
5484
5485PFNEGLBINDTEXIMAGEPROC epoxy_eglBindTexImage = epoxy_eglBindTexImage_global_rewrite_ptr;
5486
5487PFNEGLCHOOSECONFIGPROC epoxy_eglChooseConfig = epoxy_eglChooseConfig_global_rewrite_ptr;
5488
5489PFNEGLCLIENTSIGNALSYNCEXTPROC epoxy_eglClientSignalSyncEXT = epoxy_eglClientSignalSyncEXT_global_rewrite_ptr;
5490
5491PFNEGLCLIENTWAITSYNCPROC epoxy_eglClientWaitSync = epoxy_eglClientWaitSync_global_rewrite_ptr;
5492
5493PFNEGLCLIENTWAITSYNCKHRPROC epoxy_eglClientWaitSyncKHR = epoxy_eglClientWaitSyncKHR_global_rewrite_ptr;
5494
5495PFNEGLCLIENTWAITSYNCNVPROC epoxy_eglClientWaitSyncNV = epoxy_eglClientWaitSyncNV_global_rewrite_ptr;
5496
5497PFNEGLCOMPOSITORBINDTEXWINDOWEXTPROC epoxy_eglCompositorBindTexWindowEXT = epoxy_eglCompositorBindTexWindowEXT_global_rewrite_ptr;
5498
5499PFNEGLCOMPOSITORSETCONTEXTATTRIBUTESEXTPROC epoxy_eglCompositorSetContextAttributesEXT = epoxy_eglCompositorSetContextAttributesEXT_global_rewrite_ptr;
5500
5501PFNEGLCOMPOSITORSETCONTEXTLISTEXTPROC epoxy_eglCompositorSetContextListEXT = epoxy_eglCompositorSetContextListEXT_global_rewrite_ptr;
5502
5503PFNEGLCOMPOSITORSETSIZEEXTPROC epoxy_eglCompositorSetSizeEXT = epoxy_eglCompositorSetSizeEXT_global_rewrite_ptr;
5504
5505PFNEGLCOMPOSITORSETWINDOWATTRIBUTESEXTPROC epoxy_eglCompositorSetWindowAttributesEXT = epoxy_eglCompositorSetWindowAttributesEXT_global_rewrite_ptr;
5506
5507PFNEGLCOMPOSITORSETWINDOWLISTEXTPROC epoxy_eglCompositorSetWindowListEXT = epoxy_eglCompositorSetWindowListEXT_global_rewrite_ptr;
5508
5509PFNEGLCOMPOSITORSWAPPOLICYEXTPROC epoxy_eglCompositorSwapPolicyEXT = epoxy_eglCompositorSwapPolicyEXT_global_rewrite_ptr;
5510
5511PFNEGLCOPYBUFFERSPROC epoxy_eglCopyBuffers = epoxy_eglCopyBuffers_global_rewrite_ptr;
5512
5513PFNEGLCREATECONTEXTPROC epoxy_eglCreateContext = epoxy_eglCreateContext_global_rewrite_ptr;
5514
5515PFNEGLCREATEDRMIMAGEMESAPROC epoxy_eglCreateDRMImageMESA = epoxy_eglCreateDRMImageMESA_global_rewrite_ptr;
5516
5517PFNEGLCREATEFENCESYNCNVPROC epoxy_eglCreateFenceSyncNV = epoxy_eglCreateFenceSyncNV_global_rewrite_ptr;
5518
5519PFNEGLCREATEIMAGEPROC epoxy_eglCreateImage = epoxy_eglCreateImage_global_rewrite_ptr;
5520
5521PFNEGLCREATEIMAGEKHRPROC epoxy_eglCreateImageKHR = epoxy_eglCreateImageKHR_global_rewrite_ptr;
5522
5523PFNEGLCREATENATIVECLIENTBUFFERANDROIDPROC epoxy_eglCreateNativeClientBufferANDROID = epoxy_eglCreateNativeClientBufferANDROID_global_rewrite_ptr;
5524
5525PFNEGLCREATEPBUFFERFROMCLIENTBUFFERPROC epoxy_eglCreatePbufferFromClientBuffer = epoxy_eglCreatePbufferFromClientBuffer_global_rewrite_ptr;
5526
5527PFNEGLCREATEPBUFFERSURFACEPROC epoxy_eglCreatePbufferSurface = epoxy_eglCreatePbufferSurface_global_rewrite_ptr;
5528
5529PFNEGLCREATEPIXMAPSURFACEPROC epoxy_eglCreatePixmapSurface = epoxy_eglCreatePixmapSurface_global_rewrite_ptr;
5530
5531PFNEGLCREATEPIXMAPSURFACEHIPROC epoxy_eglCreatePixmapSurfaceHI = epoxy_eglCreatePixmapSurfaceHI_global_rewrite_ptr;
5532
5533PFNEGLCREATEPLATFORMPIXMAPSURFACEPROC epoxy_eglCreatePlatformPixmapSurface = epoxy_eglCreatePlatformPixmapSurface_global_rewrite_ptr;
5534
5535PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC epoxy_eglCreatePlatformPixmapSurfaceEXT = epoxy_eglCreatePlatformPixmapSurfaceEXT_global_rewrite_ptr;
5536
5537PFNEGLCREATEPLATFORMWINDOWSURFACEPROC epoxy_eglCreatePlatformWindowSurface = epoxy_eglCreatePlatformWindowSurface_global_rewrite_ptr;
5538
5539PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC epoxy_eglCreatePlatformWindowSurfaceEXT = epoxy_eglCreatePlatformWindowSurfaceEXT_global_rewrite_ptr;
5540
5541PFNEGLCREATESTREAMATTRIBKHRPROC epoxy_eglCreateStreamAttribKHR = epoxy_eglCreateStreamAttribKHR_global_rewrite_ptr;
5542
5543PFNEGLCREATESTREAMFROMFILEDESCRIPTORKHRPROC epoxy_eglCreateStreamFromFileDescriptorKHR = epoxy_eglCreateStreamFromFileDescriptorKHR_global_rewrite_ptr;
5544
5545PFNEGLCREATESTREAMKHRPROC epoxy_eglCreateStreamKHR = epoxy_eglCreateStreamKHR_global_rewrite_ptr;
5546
5547PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC epoxy_eglCreateStreamProducerSurfaceKHR = epoxy_eglCreateStreamProducerSurfaceKHR_global_rewrite_ptr;
5548
5549PFNEGLCREATESTREAMSYNCNVPROC epoxy_eglCreateStreamSyncNV = epoxy_eglCreateStreamSyncNV_global_rewrite_ptr;
5550
5551PFNEGLCREATESYNCPROC epoxy_eglCreateSync = epoxy_eglCreateSync_global_rewrite_ptr;
5552
5553PFNEGLCREATESYNC64KHRPROC epoxy_eglCreateSync64KHR = epoxy_eglCreateSync64KHR_global_rewrite_ptr;
5554
5555PFNEGLCREATESYNCKHRPROC epoxy_eglCreateSyncKHR = epoxy_eglCreateSyncKHR_global_rewrite_ptr;
5556
5557PFNEGLCREATEWINDOWSURFACEPROC epoxy_eglCreateWindowSurface = epoxy_eglCreateWindowSurface_global_rewrite_ptr;
5558
5559PFNEGLDEBUGMESSAGECONTROLKHRPROC epoxy_eglDebugMessageControlKHR = epoxy_eglDebugMessageControlKHR_global_rewrite_ptr;
5560
5561PFNEGLDESTROYCONTEXTPROC epoxy_eglDestroyContext = epoxy_eglDestroyContext_global_rewrite_ptr;
5562
5563PFNEGLDESTROYIMAGEPROC epoxy_eglDestroyImage = epoxy_eglDestroyImage_global_rewrite_ptr;
5564
5565PFNEGLDESTROYIMAGEKHRPROC epoxy_eglDestroyImageKHR = epoxy_eglDestroyImageKHR_global_rewrite_ptr;
5566
5567PFNEGLDESTROYSTREAMKHRPROC epoxy_eglDestroyStreamKHR = epoxy_eglDestroyStreamKHR_global_rewrite_ptr;
5568
5569PFNEGLDESTROYSURFACEPROC epoxy_eglDestroySurface = epoxy_eglDestroySurface_global_rewrite_ptr;
5570
5571PFNEGLDESTROYSYNCPROC epoxy_eglDestroySync = epoxy_eglDestroySync_global_rewrite_ptr;
5572
5573PFNEGLDESTROYSYNCKHRPROC epoxy_eglDestroySyncKHR = epoxy_eglDestroySyncKHR_global_rewrite_ptr;
5574
5575PFNEGLDESTROYSYNCNVPROC epoxy_eglDestroySyncNV = epoxy_eglDestroySyncNV_global_rewrite_ptr;
5576
5577PFNEGLDUPNATIVEFENCEFDANDROIDPROC epoxy_eglDupNativeFenceFDANDROID = epoxy_eglDupNativeFenceFDANDROID_global_rewrite_ptr;
5578
5579PFNEGLEXPORTDMABUFIMAGEMESAPROC epoxy_eglExportDMABUFImageMESA = epoxy_eglExportDMABUFImageMESA_global_rewrite_ptr;
5580
5581PFNEGLEXPORTDMABUFIMAGEQUERYMESAPROC epoxy_eglExportDMABUFImageQueryMESA = epoxy_eglExportDMABUFImageQueryMESA_global_rewrite_ptr;
5582
5583PFNEGLEXPORTDRMIMAGEMESAPROC epoxy_eglExportDRMImageMESA = epoxy_eglExportDRMImageMESA_global_rewrite_ptr;
5584
5585PFNEGLFENCENVPROC epoxy_eglFenceNV = epoxy_eglFenceNV_global_rewrite_ptr;
5586
5587PFNEGLGETCOMPOSITORTIMINGANDROIDPROC epoxy_eglGetCompositorTimingANDROID = epoxy_eglGetCompositorTimingANDROID_global_rewrite_ptr;
5588
5589PFNEGLGETCOMPOSITORTIMINGSUPPORTEDANDROIDPROC epoxy_eglGetCompositorTimingSupportedANDROID = epoxy_eglGetCompositorTimingSupportedANDROID_global_rewrite_ptr;
5590
5591PFNEGLGETCONFIGATTRIBPROC epoxy_eglGetConfigAttrib = epoxy_eglGetConfigAttrib_global_rewrite_ptr;
5592
5593PFNEGLGETCONFIGSPROC epoxy_eglGetConfigs = epoxy_eglGetConfigs_global_rewrite_ptr;
5594
5595PFNEGLGETCURRENTCONTEXTPROC epoxy_eglGetCurrentContext = epoxy_eglGetCurrentContext_global_rewrite_ptr;
5596
5597PFNEGLGETCURRENTDISPLAYPROC epoxy_eglGetCurrentDisplay = epoxy_eglGetCurrentDisplay_global_rewrite_ptr;
5598
5599PFNEGLGETCURRENTSURFACEPROC epoxy_eglGetCurrentSurface = epoxy_eglGetCurrentSurface_global_rewrite_ptr;
5600
5601PFNEGLGETDISPLAYPROC epoxy_eglGetDisplay = epoxy_eglGetDisplay_global_rewrite_ptr;
5602
5603PFNEGLGETDISPLAYDRIVERCONFIGPROC epoxy_eglGetDisplayDriverConfig = epoxy_eglGetDisplayDriverConfig_global_rewrite_ptr;
5604
5605PFNEGLGETDISPLAYDRIVERNAMEPROC epoxy_eglGetDisplayDriverName = epoxy_eglGetDisplayDriverName_global_rewrite_ptr;
5606
5607PFNEGLGETERRORPROC epoxy_eglGetError = epoxy_eglGetError_global_rewrite_ptr;
5608
5609PFNEGLGETFRAMETIMESTAMPSUPPORTEDANDROIDPROC epoxy_eglGetFrameTimestampSupportedANDROID = epoxy_eglGetFrameTimestampSupportedANDROID_global_rewrite_ptr;
5610
5611PFNEGLGETFRAMETIMESTAMPSANDROIDPROC epoxy_eglGetFrameTimestampsANDROID = epoxy_eglGetFrameTimestampsANDROID_global_rewrite_ptr;
5612
5613PFNEGLGETNATIVECLIENTBUFFERANDROIDPROC epoxy_eglGetNativeClientBufferANDROID = epoxy_eglGetNativeClientBufferANDROID_global_rewrite_ptr;
5614
5615PFNEGLGETNEXTFRAMEIDANDROIDPROC epoxy_eglGetNextFrameIdANDROID = epoxy_eglGetNextFrameIdANDROID_global_rewrite_ptr;
5616
5617PFNEGLGETOUTPUTLAYERSEXTPROC epoxy_eglGetOutputLayersEXT = epoxy_eglGetOutputLayersEXT_global_rewrite_ptr;
5618
5619PFNEGLGETOUTPUTPORTSEXTPROC epoxy_eglGetOutputPortsEXT = epoxy_eglGetOutputPortsEXT_global_rewrite_ptr;
5620
5621PFNEGLGETPLATFORMDISPLAYPROC epoxy_eglGetPlatformDisplay = epoxy_eglGetPlatformDisplay_global_rewrite_ptr;
5622
5623PFNEGLGETPLATFORMDISPLAYEXTPROC epoxy_eglGetPlatformDisplayEXT = epoxy_eglGetPlatformDisplayEXT_global_rewrite_ptr;
5624
5625PFNEGLGETPROCADDRESSPROC epoxy_eglGetProcAddress = epoxy_eglGetProcAddress_global_rewrite_ptr;
5626
5627PFNEGLGETSTREAMFILEDESCRIPTORKHRPROC epoxy_eglGetStreamFileDescriptorKHR = epoxy_eglGetStreamFileDescriptorKHR_global_rewrite_ptr;
5628
5629PFNEGLGETSYNCATTRIBPROC epoxy_eglGetSyncAttrib = epoxy_eglGetSyncAttrib_global_rewrite_ptr;
5630
5631PFNEGLGETSYNCATTRIBKHRPROC epoxy_eglGetSyncAttribKHR = epoxy_eglGetSyncAttribKHR_global_rewrite_ptr;
5632
5633PFNEGLGETSYNCATTRIBNVPROC epoxy_eglGetSyncAttribNV = epoxy_eglGetSyncAttribNV_global_rewrite_ptr;
5634
5635PFNEGLGETSYSTEMTIMEFREQUENCYNVPROC epoxy_eglGetSystemTimeFrequencyNV = epoxy_eglGetSystemTimeFrequencyNV_global_rewrite_ptr;
5636
5637PFNEGLGETSYSTEMTIMENVPROC epoxy_eglGetSystemTimeNV = epoxy_eglGetSystemTimeNV_global_rewrite_ptr;
5638
5639PFNEGLINITIALIZEPROC epoxy_eglInitialize = epoxy_eglInitialize_global_rewrite_ptr;
5640
5641PFNEGLLABELOBJECTKHRPROC epoxy_eglLabelObjectKHR = epoxy_eglLabelObjectKHR_global_rewrite_ptr;
5642
5643PFNEGLLOCKSURFACEKHRPROC epoxy_eglLockSurfaceKHR = epoxy_eglLockSurfaceKHR_global_rewrite_ptr;
5644
5645PFNEGLMAKECURRENTPROC epoxy_eglMakeCurrent = epoxy_eglMakeCurrent_global_rewrite_ptr;
5646
5647PFNEGLOUTPUTLAYERATTRIBEXTPROC epoxy_eglOutputLayerAttribEXT = epoxy_eglOutputLayerAttribEXT_global_rewrite_ptr;
5648
5649PFNEGLOUTPUTPORTATTRIBEXTPROC epoxy_eglOutputPortAttribEXT = epoxy_eglOutputPortAttribEXT_global_rewrite_ptr;
5650
5651PFNEGLPOSTSUBBUFFERNVPROC epoxy_eglPostSubBufferNV = epoxy_eglPostSubBufferNV_global_rewrite_ptr;
5652
5653PFNEGLPRESENTATIONTIMEANDROIDPROC epoxy_eglPresentationTimeANDROID = epoxy_eglPresentationTimeANDROID_global_rewrite_ptr;
5654
5655PFNEGLQUERYAPIPROC epoxy_eglQueryAPI = epoxy_eglQueryAPI_global_rewrite_ptr;
5656
5657PFNEGLQUERYCONTEXTPROC epoxy_eglQueryContext = epoxy_eglQueryContext_global_rewrite_ptr;
5658
5659PFNEGLQUERYDEBUGKHRPROC epoxy_eglQueryDebugKHR = epoxy_eglQueryDebugKHR_global_rewrite_ptr;
5660
5661PFNEGLQUERYDEVICEATTRIBEXTPROC epoxy_eglQueryDeviceAttribEXT = epoxy_eglQueryDeviceAttribEXT_global_rewrite_ptr;
5662
5663PFNEGLQUERYDEVICESTRINGEXTPROC epoxy_eglQueryDeviceStringEXT = epoxy_eglQueryDeviceStringEXT_global_rewrite_ptr;
5664
5665PFNEGLQUERYDEVICESEXTPROC epoxy_eglQueryDevicesEXT = epoxy_eglQueryDevicesEXT_global_rewrite_ptr;
5666
5667PFNEGLQUERYDISPLAYATTRIBEXTPROC epoxy_eglQueryDisplayAttribEXT = epoxy_eglQueryDisplayAttribEXT_global_rewrite_ptr;
5668
5669PFNEGLQUERYDISPLAYATTRIBKHRPROC epoxy_eglQueryDisplayAttribKHR = epoxy_eglQueryDisplayAttribKHR_global_rewrite_ptr;
5670
5671PFNEGLQUERYDISPLAYATTRIBNVPROC epoxy_eglQueryDisplayAttribNV = epoxy_eglQueryDisplayAttribNV_global_rewrite_ptr;
5672
5673PFNEGLQUERYDMABUFFORMATSEXTPROC epoxy_eglQueryDmaBufFormatsEXT = epoxy_eglQueryDmaBufFormatsEXT_global_rewrite_ptr;
5674
5675PFNEGLQUERYDMABUFMODIFIERSEXTPROC epoxy_eglQueryDmaBufModifiersEXT = epoxy_eglQueryDmaBufModifiersEXT_global_rewrite_ptr;
5676
5677PFNEGLQUERYNATIVEDISPLAYNVPROC epoxy_eglQueryNativeDisplayNV = epoxy_eglQueryNativeDisplayNV_global_rewrite_ptr;
5678
5679PFNEGLQUERYNATIVEPIXMAPNVPROC epoxy_eglQueryNativePixmapNV = epoxy_eglQueryNativePixmapNV_global_rewrite_ptr;
5680
5681PFNEGLQUERYNATIVEWINDOWNVPROC epoxy_eglQueryNativeWindowNV = epoxy_eglQueryNativeWindowNV_global_rewrite_ptr;
5682
5683PFNEGLQUERYOUTPUTLAYERATTRIBEXTPROC epoxy_eglQueryOutputLayerAttribEXT = epoxy_eglQueryOutputLayerAttribEXT_global_rewrite_ptr;
5684
5685PFNEGLQUERYOUTPUTLAYERSTRINGEXTPROC epoxy_eglQueryOutputLayerStringEXT = epoxy_eglQueryOutputLayerStringEXT_global_rewrite_ptr;
5686
5687PFNEGLQUERYOUTPUTPORTATTRIBEXTPROC epoxy_eglQueryOutputPortAttribEXT = epoxy_eglQueryOutputPortAttribEXT_global_rewrite_ptr;
5688
5689PFNEGLQUERYOUTPUTPORTSTRINGEXTPROC epoxy_eglQueryOutputPortStringEXT = epoxy_eglQueryOutputPortStringEXT_global_rewrite_ptr;
5690
5691PFNEGLQUERYSTREAMATTRIBKHRPROC epoxy_eglQueryStreamAttribKHR = epoxy_eglQueryStreamAttribKHR_global_rewrite_ptr;
5692
5693PFNEGLQUERYSTREAMKHRPROC epoxy_eglQueryStreamKHR = epoxy_eglQueryStreamKHR_global_rewrite_ptr;
5694
5695PFNEGLQUERYSTREAMMETADATANVPROC epoxy_eglQueryStreamMetadataNV = epoxy_eglQueryStreamMetadataNV_global_rewrite_ptr;
5696
5697PFNEGLQUERYSTREAMTIMEKHRPROC epoxy_eglQueryStreamTimeKHR = epoxy_eglQueryStreamTimeKHR_global_rewrite_ptr;
5698
5699PFNEGLQUERYSTREAMU64KHRPROC epoxy_eglQueryStreamu64KHR = epoxy_eglQueryStreamu64KHR_global_rewrite_ptr;
5700
5701PFNEGLQUERYSTRINGPROC epoxy_eglQueryString = epoxy_eglQueryString_global_rewrite_ptr;
5702
5703PFNEGLQUERYSURFACEPROC epoxy_eglQuerySurface = epoxy_eglQuerySurface_global_rewrite_ptr;
5704
5705PFNEGLQUERYSURFACE64KHRPROC epoxy_eglQuerySurface64KHR = epoxy_eglQuerySurface64KHR_global_rewrite_ptr;
5706
5707PFNEGLQUERYSURFACEPOINTERANGLEPROC epoxy_eglQuerySurfacePointerANGLE = epoxy_eglQuerySurfacePointerANGLE_global_rewrite_ptr;
5708
5709PFNEGLRELEASETEXIMAGEPROC epoxy_eglReleaseTexImage = epoxy_eglReleaseTexImage_global_rewrite_ptr;
5710
5711PFNEGLRELEASETHREADPROC epoxy_eglReleaseThread = epoxy_eglReleaseThread_global_rewrite_ptr;
5712
5713PFNEGLRESETSTREAMNVPROC epoxy_eglResetStreamNV = epoxy_eglResetStreamNV_global_rewrite_ptr;
5714
5715PFNEGLSETBLOBCACHEFUNCSANDROIDPROC epoxy_eglSetBlobCacheFuncsANDROID = epoxy_eglSetBlobCacheFuncsANDROID_global_rewrite_ptr;
5716
5717PFNEGLSETDAMAGEREGIONKHRPROC epoxy_eglSetDamageRegionKHR = epoxy_eglSetDamageRegionKHR_global_rewrite_ptr;
5718
5719PFNEGLSETSTREAMATTRIBKHRPROC epoxy_eglSetStreamAttribKHR = epoxy_eglSetStreamAttribKHR_global_rewrite_ptr;
5720
5721PFNEGLSETSTREAMMETADATANVPROC epoxy_eglSetStreamMetadataNV = epoxy_eglSetStreamMetadataNV_global_rewrite_ptr;
5722
5723PFNEGLSIGNALSYNCKHRPROC epoxy_eglSignalSyncKHR = epoxy_eglSignalSyncKHR_global_rewrite_ptr;
5724
5725PFNEGLSIGNALSYNCNVPROC epoxy_eglSignalSyncNV = epoxy_eglSignalSyncNV_global_rewrite_ptr;
5726
5727PFNEGLSTREAMATTRIBKHRPROC epoxy_eglStreamAttribKHR = epoxy_eglStreamAttribKHR_global_rewrite_ptr;
5728
5729PFNEGLSTREAMCONSUMERACQUIREATTRIBKHRPROC epoxy_eglStreamConsumerAcquireAttribKHR = epoxy_eglStreamConsumerAcquireAttribKHR_global_rewrite_ptr;
5730
5731PFNEGLSTREAMCONSUMERACQUIREKHRPROC epoxy_eglStreamConsumerAcquireKHR = epoxy_eglStreamConsumerAcquireKHR_global_rewrite_ptr;
5732
5733PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALATTRIBSNVPROC epoxy_eglStreamConsumerGLTextureExternalAttribsNV = epoxy_eglStreamConsumerGLTextureExternalAttribsNV_global_rewrite_ptr;
5734
5735PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC epoxy_eglStreamConsumerGLTextureExternalKHR = epoxy_eglStreamConsumerGLTextureExternalKHR_global_rewrite_ptr;
5736
5737PFNEGLSTREAMCONSUMEROUTPUTEXTPROC epoxy_eglStreamConsumerOutputEXT = epoxy_eglStreamConsumerOutputEXT_global_rewrite_ptr;
5738
5739PFNEGLSTREAMCONSUMERRELEASEATTRIBKHRPROC epoxy_eglStreamConsumerReleaseAttribKHR = epoxy_eglStreamConsumerReleaseAttribKHR_global_rewrite_ptr;
5740
5741PFNEGLSTREAMCONSUMERRELEASEKHRPROC epoxy_eglStreamConsumerReleaseKHR = epoxy_eglStreamConsumerReleaseKHR_global_rewrite_ptr;
5742
5743PFNEGLSTREAMFLUSHNVPROC epoxy_eglStreamFlushNV = epoxy_eglStreamFlushNV_global_rewrite_ptr;
5744
5745PFNEGLSURFACEATTRIBPROC epoxy_eglSurfaceAttrib = epoxy_eglSurfaceAttrib_global_rewrite_ptr;
5746
5747PFNEGLSWAPBUFFERSPROC epoxy_eglSwapBuffers = epoxy_eglSwapBuffers_global_rewrite_ptr;
5748
5749PFNEGLSWAPBUFFERSREGION2NOKPROC epoxy_eglSwapBuffersRegion2NOK = epoxy_eglSwapBuffersRegion2NOK_global_rewrite_ptr;
5750
5751PFNEGLSWAPBUFFERSREGIONNOKPROC epoxy_eglSwapBuffersRegionNOK = epoxy_eglSwapBuffersRegionNOK_global_rewrite_ptr;
5752
5753PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC epoxy_eglSwapBuffersWithDamageEXT = epoxy_eglSwapBuffersWithDamageEXT_global_rewrite_ptr;
5754
5755PFNEGLSWAPBUFFERSWITHDAMAGEKHRPROC epoxy_eglSwapBuffersWithDamageKHR = epoxy_eglSwapBuffersWithDamageKHR_global_rewrite_ptr;
5756
5757PFNEGLSWAPINTERVALPROC epoxy_eglSwapInterval = epoxy_eglSwapInterval_global_rewrite_ptr;
5758
5759PFNEGLTERMINATEPROC epoxy_eglTerminate = epoxy_eglTerminate_global_rewrite_ptr;
5760
5761PFNEGLUNLOCKSURFACEKHRPROC epoxy_eglUnlockSurfaceKHR = epoxy_eglUnlockSurfaceKHR_global_rewrite_ptr;
5762
5763PFNEGLUNSIGNALSYNCEXTPROC epoxy_eglUnsignalSyncEXT = epoxy_eglUnsignalSyncEXT_global_rewrite_ptr;
5764
5765PFNEGLWAITCLIENTPROC epoxy_eglWaitClient = epoxy_eglWaitClient_global_rewrite_ptr;
5766
5767PFNEGLWAITGLPROC epoxy_eglWaitGL = epoxy_eglWaitGL_global_rewrite_ptr;
5768
5769PFNEGLWAITNATIVEPROC epoxy_eglWaitNative = epoxy_eglWaitNative_global_rewrite_ptr;
5770
5771PFNEGLWAITSYNCPROC epoxy_eglWaitSync = epoxy_eglWaitSync_global_rewrite_ptr;
5772
5773PFNEGLWAITSYNCKHRPROC epoxy_eglWaitSyncKHR = epoxy_eglWaitSyncKHR_global_rewrite_ptr;
5774