Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
[platform/upstream/VK-GL-CTS.git] / modules / egl / teglGetProcAddressTests.inl
1 /* WARNING: This is auto-generated file. Do not modify, since changes will
2  * be lost! Modify the generating script instead.
3  *
4  * Generated from Khronos EGL API description (egl.xml) revision 3338ed0db494d6a4db7f76627b38f0b1892db096.
5  */
6
7 static const char* s_EGL14[] =
8 {
9         "eglBindAPI",
10         "eglBindTexImage",
11         "eglChooseConfig",
12         "eglCopyBuffers",
13         "eglCreateContext",
14         "eglCreatePbufferFromClientBuffer",
15         "eglCreatePbufferSurface",
16         "eglCreatePixmapSurface",
17         "eglCreateWindowSurface",
18         "eglDestroyContext",
19         "eglDestroySurface",
20         "eglGetConfigAttrib",
21         "eglGetConfigs",
22         "eglGetCurrentContext",
23         "eglGetCurrentDisplay",
24         "eglGetCurrentSurface",
25         "eglGetDisplay",
26         "eglGetError",
27         "eglGetProcAddress",
28         "eglInitialize",
29         "eglMakeCurrent",
30         "eglQueryAPI",
31         "eglQueryContext",
32         "eglQueryString",
33         "eglQuerySurface",
34         "eglReleaseTexImage",
35         "eglReleaseThread",
36         "eglSurfaceAttrib",
37         "eglSwapBuffers",
38         "eglSwapInterval",
39         "eglTerminate",
40         "eglWaitClient",
41         "eglWaitGL",
42         "eglWaitNative",
43 };
44
45 static const char* s_EGL15[] =
46 {
47         "eglClientWaitSync",
48         "eglCreateImage",
49         "eglCreatePlatformPixmapSurface",
50         "eglCreatePlatformWindowSurface",
51         "eglCreateSync",
52         "eglDestroyImage",
53         "eglDestroySync",
54         "eglGetPlatformDisplay",
55         "eglGetSyncAttrib",
56         "eglWaitSync",
57 };
58
59 static const char* s_GLES10[] =
60 {
61         "glActiveTexture",
62         "glAlphaFunc",
63         "glAlphaFuncx",
64         "glBindBuffer",
65         "glBindTexture",
66         "glBlendFunc",
67         "glBufferData",
68         "glBufferSubData",
69         "glClear",
70         "glClearColor",
71         "glClearColorx",
72         "glClearDepthf",
73         "glClearDepthx",
74         "glClearStencil",
75         "glClientActiveTexture",
76         "glClipPlanef",
77         "glClipPlanex",
78         "glColor4f",
79         "glColor4ub",
80         "glColor4x",
81         "glColorMask",
82         "glColorPointer",
83         "glCompressedTexImage2D",
84         "glCompressedTexSubImage2D",
85         "glCopyTexImage2D",
86         "glCopyTexSubImage2D",
87         "glCullFace",
88         "glDeleteBuffers",
89         "glDeleteTextures",
90         "glDepthFunc",
91         "glDepthMask",
92         "glDepthRangef",
93         "glDepthRangex",
94         "glDisable",
95         "glDisableClientState",
96         "glDrawArrays",
97         "glDrawElements",
98         "glEnable",
99         "glEnableClientState",
100         "glFinish",
101         "glFlush",
102         "glFogf",
103         "glFogfv",
104         "glFogx",
105         "glFogxv",
106         "glFrontFace",
107         "glFrustumf",
108         "glFrustumx",
109         "glGenBuffers",
110         "glGenTextures",
111         "glGetBooleanv",
112         "glGetBufferParameteriv",
113         "glGetClipPlanef",
114         "glGetClipPlanex",
115         "glGetError",
116         "glGetFixedv",
117         "glGetFloatv",
118         "glGetIntegerv",
119         "glGetLightfv",
120         "glGetLightxv",
121         "glGetMaterialfv",
122         "glGetMaterialxv",
123         "glGetPointerv",
124         "glGetString",
125         "glGetTexEnvfv",
126         "glGetTexEnviv",
127         "glGetTexEnvxv",
128         "glGetTexParameterfv",
129         "glGetTexParameteriv",
130         "glGetTexParameterxv",
131         "glHint",
132         "glIsBuffer",
133         "glIsEnabled",
134         "glIsTexture",
135         "glLightModelf",
136         "glLightModelfv",
137         "glLightModelx",
138         "glLightModelxv",
139         "glLightf",
140         "glLightfv",
141         "glLightx",
142         "glLightxv",
143         "glLineWidth",
144         "glLineWidthx",
145         "glLoadIdentity",
146         "glLoadMatrixf",
147         "glLoadMatrixx",
148         "glLogicOp",
149         "glMaterialf",
150         "glMaterialfv",
151         "glMaterialx",
152         "glMaterialxv",
153         "glMatrixMode",
154         "glMultMatrixf",
155         "glMultMatrixx",
156         "glMultiTexCoord4f",
157         "glMultiTexCoord4x",
158         "glNormal3f",
159         "glNormal3x",
160         "glNormalPointer",
161         "glOrthof",
162         "glOrthox",
163         "glPixelStorei",
164         "glPointParameterf",
165         "glPointParameterfv",
166         "glPointParameterx",
167         "glPointParameterxv",
168         "glPointSize",
169         "glPointSizex",
170         "glPolygonOffset",
171         "glPolygonOffsetx",
172         "glPopMatrix",
173         "glPushMatrix",
174         "glReadPixels",
175         "glRotatef",
176         "glRotatex",
177         "glSampleCoverage",
178         "glSampleCoveragex",
179         "glScalef",
180         "glScalex",
181         "glScissor",
182         "glShadeModel",
183         "glStencilFunc",
184         "glStencilMask",
185         "glStencilOp",
186         "glTexCoordPointer",
187         "glTexEnvf",
188         "glTexEnvfv",
189         "glTexEnvi",
190         "glTexEnviv",
191         "glTexEnvx",
192         "glTexEnvxv",
193         "glTexImage2D",
194         "glTexParameterf",
195         "glTexParameterfv",
196         "glTexParameteri",
197         "glTexParameteriv",
198         "glTexParameterx",
199         "glTexParameterxv",
200         "glTexSubImage2D",
201         "glTranslatef",
202         "glTranslatex",
203         "glVertexPointer",
204         "glViewport",
205 };
206
207 static const char* s_GLES20[] =
208 {
209         "glActiveTexture",
210         "glAttachShader",
211         "glBindAttribLocation",
212         "glBindBuffer",
213         "glBindFramebuffer",
214         "glBindRenderbuffer",
215         "glBindTexture",
216         "glBlendColor",
217         "glBlendEquation",
218         "glBlendEquationSeparate",
219         "glBlendFunc",
220         "glBlendFuncSeparate",
221         "glBufferData",
222         "glBufferSubData",
223         "glCheckFramebufferStatus",
224         "glClear",
225         "glClearColor",
226         "glClearDepthf",
227         "glClearStencil",
228         "glColorMask",
229         "glCompileShader",
230         "glCompressedTexImage2D",
231         "glCompressedTexSubImage2D",
232         "glCopyTexImage2D",
233         "glCopyTexSubImage2D",
234         "glCreateProgram",
235         "glCreateShader",
236         "glCullFace",
237         "glDeleteBuffers",
238         "glDeleteFramebuffers",
239         "glDeleteProgram",
240         "glDeleteRenderbuffers",
241         "glDeleteShader",
242         "glDeleteTextures",
243         "glDepthFunc",
244         "glDepthMask",
245         "glDepthRangef",
246         "glDetachShader",
247         "glDisable",
248         "glDisableVertexAttribArray",
249         "glDrawArrays",
250         "glDrawElements",
251         "glEnable",
252         "glEnableVertexAttribArray",
253         "glFinish",
254         "glFlush",
255         "glFramebufferRenderbuffer",
256         "glFramebufferTexture2D",
257         "glFrontFace",
258         "glGenBuffers",
259         "glGenFramebuffers",
260         "glGenRenderbuffers",
261         "glGenTextures",
262         "glGenerateMipmap",
263         "glGetActiveAttrib",
264         "glGetActiveUniform",
265         "glGetAttachedShaders",
266         "glGetAttribLocation",
267         "glGetBooleanv",
268         "glGetBufferParameteriv",
269         "glGetError",
270         "glGetFloatv",
271         "glGetFramebufferAttachmentParameteriv",
272         "glGetIntegerv",
273         "glGetProgramInfoLog",
274         "glGetProgramiv",
275         "glGetRenderbufferParameteriv",
276         "glGetShaderInfoLog",
277         "glGetShaderPrecisionFormat",
278         "glGetShaderSource",
279         "glGetShaderiv",
280         "glGetString",
281         "glGetTexParameterfv",
282         "glGetTexParameteriv",
283         "glGetUniformLocation",
284         "glGetUniformfv",
285         "glGetUniformiv",
286         "glGetVertexAttribPointerv",
287         "glGetVertexAttribfv",
288         "glGetVertexAttribiv",
289         "glHint",
290         "glIsBuffer",
291         "glIsEnabled",
292         "glIsFramebuffer",
293         "glIsProgram",
294         "glIsRenderbuffer",
295         "glIsShader",
296         "glIsTexture",
297         "glLineWidth",
298         "glLinkProgram",
299         "glPixelStorei",
300         "glPolygonOffset",
301         "glReadPixels",
302         "glReleaseShaderCompiler",
303         "glRenderbufferStorage",
304         "glSampleCoverage",
305         "glScissor",
306         "glShaderBinary",
307         "glShaderSource",
308         "glStencilFunc",
309         "glStencilFuncSeparate",
310         "glStencilMask",
311         "glStencilMaskSeparate",
312         "glStencilOp",
313         "glStencilOpSeparate",
314         "glTexImage2D",
315         "glTexParameterf",
316         "glTexParameterfv",
317         "glTexParameteri",
318         "glTexParameteriv",
319         "glTexSubImage2D",
320         "glUniform1f",
321         "glUniform1fv",
322         "glUniform1i",
323         "glUniform1iv",
324         "glUniform2f",
325         "glUniform2fv",
326         "glUniform2i",
327         "glUniform2iv",
328         "glUniform3f",
329         "glUniform3fv",
330         "glUniform3i",
331         "glUniform3iv",
332         "glUniform4f",
333         "glUniform4fv",
334         "glUniform4i",
335         "glUniform4iv",
336         "glUniformMatrix2fv",
337         "glUniformMatrix3fv",
338         "glUniformMatrix4fv",
339         "glUseProgram",
340         "glValidateProgram",
341         "glVertexAttrib1f",
342         "glVertexAttrib1fv",
343         "glVertexAttrib2f",
344         "glVertexAttrib2fv",
345         "glVertexAttrib3f",
346         "glVertexAttrib3fv",
347         "glVertexAttrib4f",
348         "glVertexAttrib4fv",
349         "glVertexAttribPointer",
350         "glViewport",
351 };
352
353 static const char* s_GLES30[] =
354 {
355         "glBeginQuery",
356         "glBeginTransformFeedback",
357         "glBindBufferBase",
358         "glBindBufferRange",
359         "glBindSampler",
360         "glBindTransformFeedback",
361         "glBindVertexArray",
362         "glBlitFramebuffer",
363         "glClearBufferfi",
364         "glClearBufferfv",
365         "glClearBufferiv",
366         "glClearBufferuiv",
367         "glClientWaitSync",
368         "glCompressedTexImage3D",
369         "glCompressedTexSubImage3D",
370         "glCopyBufferSubData",
371         "glCopyTexSubImage3D",
372         "glDeleteQueries",
373         "glDeleteSamplers",
374         "glDeleteSync",
375         "glDeleteTransformFeedbacks",
376         "glDeleteVertexArrays",
377         "glDrawArraysInstanced",
378         "glDrawBuffers",
379         "glDrawElementsInstanced",
380         "glDrawRangeElements",
381         "glEndQuery",
382         "glEndTransformFeedback",
383         "glFenceSync",
384         "glFlushMappedBufferRange",
385         "glFramebufferTextureLayer",
386         "glGenQueries",
387         "glGenSamplers",
388         "glGenTransformFeedbacks",
389         "glGenVertexArrays",
390         "glGetActiveUniformBlockName",
391         "glGetActiveUniformBlockiv",
392         "glGetActiveUniformsiv",
393         "glGetBufferParameteri64v",
394         "glGetBufferPointerv",
395         "glGetFragDataLocation",
396         "glGetInteger64i_v",
397         "glGetInteger64v",
398         "glGetIntegeri_v",
399         "glGetInternalformativ",
400         "glGetProgramBinary",
401         "glGetQueryObjectuiv",
402         "glGetQueryiv",
403         "glGetSamplerParameterfv",
404         "glGetSamplerParameteriv",
405         "glGetStringi",
406         "glGetSynciv",
407         "glGetTransformFeedbackVarying",
408         "glGetUniformBlockIndex",
409         "glGetUniformIndices",
410         "glGetUniformuiv",
411         "glGetVertexAttribIiv",
412         "glGetVertexAttribIuiv",
413         "glInvalidateFramebuffer",
414         "glInvalidateSubFramebuffer",
415         "glIsQuery",
416         "glIsSampler",
417         "glIsSync",
418         "glIsTransformFeedback",
419         "glIsVertexArray",
420         "glMapBufferRange",
421         "glPauseTransformFeedback",
422         "glProgramBinary",
423         "glProgramParameteri",
424         "glReadBuffer",
425         "glRenderbufferStorageMultisample",
426         "glResumeTransformFeedback",
427         "glSamplerParameterf",
428         "glSamplerParameterfv",
429         "glSamplerParameteri",
430         "glSamplerParameteriv",
431         "glTexImage3D",
432         "glTexStorage2D",
433         "glTexStorage3D",
434         "glTexSubImage3D",
435         "glTransformFeedbackVaryings",
436         "glUniform1ui",
437         "glUniform1uiv",
438         "glUniform2ui",
439         "glUniform2uiv",
440         "glUniform3ui",
441         "glUniform3uiv",
442         "glUniform4ui",
443         "glUniform4uiv",
444         "glUniformBlockBinding",
445         "glUniformMatrix2x3fv",
446         "glUniformMatrix2x4fv",
447         "glUniformMatrix3x2fv",
448         "glUniformMatrix3x4fv",
449         "glUniformMatrix4x2fv",
450         "glUniformMatrix4x3fv",
451         "glUnmapBuffer",
452         "glVertexAttribDivisor",
453         "glVertexAttribI4i",
454         "glVertexAttribI4iv",
455         "glVertexAttribI4ui",
456         "glVertexAttribI4uiv",
457         "glVertexAttribIPointer",
458         "glWaitSync",
459 };
460
461 static const char* s_EGL_ANDROID_blob_cache[] =
462 {
463         "eglSetBlobCacheFuncsANDROID",
464 };
465
466 static const char* s_EGL_ANDROID_create_native_client_buffer[] =
467 {
468         "eglCreateNativeClientBufferANDROID",
469 };
470
471 static const char* s_EGL_ANDROID_get_native_client_buffer[] =
472 {
473         "eglGetNativeClientBufferANDROID",
474 };
475
476 static const char* s_EGL_ANDROID_native_fence_sync[] =
477 {
478         "eglDupNativeFenceFDANDROID",
479 };
480
481 static const char* s_EGL_ANDROID_presentation_time[] =
482 {
483         "eglPresentationTimeANDROID",
484 };
485
486 static const char* s_EGL_ANDROID_get_frame_timestamps[] =
487 {
488         "eglGetCompositorTimingSupportedANDROID",
489         "eglGetCompositorTimingANDROID",
490         "eglGetNextFrameIdANDROID",
491         "eglGetFrameTimestampSupportedANDROID",
492         "eglGetFrameTimestampsANDROID",
493 };
494
495 static const char* s_EGL_ANGLE_query_surface_pointer[] =
496 {
497         "eglQuerySurfacePointerANGLE",
498 };
499
500 static const char* s_EGL_EXT_client_sync[] =
501 {
502         "eglClientSignalSyncEXT",
503 };
504
505 static const char* s_EGL_EXT_device_base[] =
506 {
507         "eglQueryDeviceAttribEXT",
508         "eglQueryDeviceStringEXT",
509         "eglQueryDevicesEXT",
510         "eglQueryDisplayAttribEXT",
511 };
512
513 static const char* s_EGL_EXT_device_enumeration[] =
514 {
515         "eglQueryDevicesEXT",
516 };
517
518 static const char* s_EGL_EXT_device_query[] =
519 {
520         "eglQueryDeviceAttribEXT",
521         "eglQueryDeviceStringEXT",
522         "eglQueryDisplayAttribEXT",
523 };
524
525 static const char* s_EGL_EXT_image_dma_buf_import_modifiers[] =
526 {
527         "eglQueryDmaBufFormatsEXT",
528         "eglQueryDmaBufModifiersEXT",
529 };
530
531 static const char* s_EGL_EXT_output_base[] =
532 {
533         "eglGetOutputLayersEXT",
534         "eglGetOutputPortsEXT",
535         "eglOutputLayerAttribEXT",
536         "eglOutputPortAttribEXT",
537         "eglQueryOutputLayerAttribEXT",
538         "eglQueryOutputLayerStringEXT",
539         "eglQueryOutputPortAttribEXT",
540         "eglQueryOutputPortStringEXT",
541 };
542
543 static const char* s_EGL_EXT_platform_base[] =
544 {
545         "eglCreatePlatformPixmapSurfaceEXT",
546         "eglCreatePlatformWindowSurfaceEXT",
547         "eglGetPlatformDisplayEXT",
548 };
549
550 static const char* s_EGL_EXT_stream_consumer_egloutput[] =
551 {
552         "eglStreamConsumerOutputEXT",
553 };
554
555 static const char* s_EGL_EXT_swap_buffers_with_damage[] =
556 {
557         "eglSwapBuffersWithDamageEXT",
558 };
559
560 static const char* s_EGL_EXT_sync_reuse[] =
561 {
562         "eglUnsignalSyncEXT",
563 };
564
565 static const char* s_EGL_HI_clientpixmap[] =
566 {
567         "eglCreatePixmapSurfaceHI",
568 };
569
570 static const char* s_EGL_KHR_cl_event2[] =
571 {
572         "eglCreateSync64KHR",
573 };
574
575 static const char* s_EGL_KHR_debug[] =
576 {
577         "eglDebugMessageControlKHR",
578         "eglLabelObjectKHR",
579         "eglQueryDebugKHR",
580 };
581
582 static const char* s_EGL_KHR_display_reference[] =
583 {
584         "eglQueryDisplayAttribKHR",
585 };
586
587 static const char* s_EGL_KHR_fence_sync[] =
588 {
589         "eglClientWaitSyncKHR",
590         "eglCreateSyncKHR",
591         "eglDestroySyncKHR",
592         "eglGetSyncAttribKHR",
593 };
594
595 static const char* s_EGL_KHR_image[] =
596 {
597         "eglCreateImageKHR",
598         "eglDestroyImageKHR",
599 };
600
601 static const char* s_EGL_KHR_image_base[] =
602 {
603         "eglCreateImageKHR",
604         "eglDestroyImageKHR",
605 };
606
607 static const char* s_EGL_KHR_lock_surface[] =
608 {
609         "eglLockSurfaceKHR",
610         "eglUnlockSurfaceKHR",
611 };
612
613 static const char* s_EGL_KHR_lock_surface3[] =
614 {
615         "eglLockSurfaceKHR",
616         "eglQuerySurface64KHR",
617         "eglUnlockSurfaceKHR",
618 };
619
620 static const char* s_EGL_KHR_partial_update[] =
621 {
622         "eglSetDamageRegionKHR",
623 };
624
625 static const char* s_EGL_KHR_reusable_sync[] =
626 {
627         "eglClientWaitSyncKHR",
628         "eglCreateSyncKHR",
629         "eglDestroySyncKHR",
630         "eglGetSyncAttribKHR",
631         "eglSignalSyncKHR",
632 };
633
634 static const char* s_EGL_KHR_stream[] =
635 {
636         "eglCreateStreamKHR",
637         "eglDestroyStreamKHR",
638         "eglQueryStreamKHR",
639         "eglQueryStreamu64KHR",
640         "eglStreamAttribKHR",
641 };
642
643 static const char* s_EGL_KHR_stream_attrib[] =
644 {
645         "eglCreateStreamAttribKHR",
646         "eglQueryStreamAttribKHR",
647         "eglSetStreamAttribKHR",
648         "eglStreamConsumerAcquireAttribKHR",
649         "eglStreamConsumerReleaseAttribKHR",
650 };
651
652 static const char* s_EGL_KHR_stream_consumer_gltexture[] =
653 {
654         "eglStreamConsumerAcquireKHR",
655         "eglStreamConsumerGLTextureExternalKHR",
656         "eglStreamConsumerReleaseKHR",
657 };
658
659 static const char* s_EGL_KHR_stream_cross_process_fd[] =
660 {
661         "eglCreateStreamFromFileDescriptorKHR",
662         "eglGetStreamFileDescriptorKHR",
663 };
664
665 static const char* s_EGL_KHR_stream_fifo[] =
666 {
667         "eglQueryStreamTimeKHR",
668 };
669
670 static const char* s_EGL_KHR_stream_producer_eglsurface[] =
671 {
672         "eglCreateStreamProducerSurfaceKHR",
673 };
674
675 static const char* s_EGL_KHR_swap_buffers_with_damage[] =
676 {
677         "eglSwapBuffersWithDamageKHR",
678 };
679
680 static const char* s_EGL_KHR_wait_sync[] =
681 {
682         "eglWaitSyncKHR",
683 };
684
685 static const char* s_EGL_MESA_drm_image[] =
686 {
687         "eglCreateDRMImageMESA",
688         "eglExportDRMImageMESA",
689 };
690
691 static const char* s_EGL_MESA_image_dma_buf_export[] =
692 {
693         "eglExportDMABUFImageMESA",
694         "eglExportDMABUFImageQueryMESA",
695 };
696
697 static const char* s_EGL_NOK_swap_region[] =
698 {
699         "eglSwapBuffersRegionNOK",
700 };
701
702 static const char* s_EGL_NOK_swap_region2[] =
703 {
704         "eglSwapBuffersRegion2NOK",
705 };
706
707 static const char* s_EGL_NV_native_query[] =
708 {
709         "eglQueryNativeDisplayNV",
710         "eglQueryNativePixmapNV",
711         "eglQueryNativeWindowNV",
712 };
713
714 static const char* s_EGL_NV_post_sub_buffer[] =
715 {
716         "eglPostSubBufferNV",
717 };
718
719 static const char* s_EGL_NV_stream_consumer_gltexture_yuv[] =
720 {
721         "eglStreamConsumerGLTextureExternalAttribsNV",
722 };
723
724 static const char* s_EGL_NV_stream_flush[] =
725 {
726         "eglStreamFlushNV",
727 };
728
729 static const char* s_EGL_NV_stream_metadata[] =
730 {
731         "eglQueryDisplayAttribNV",
732         "eglQueryStreamMetadataNV",
733         "eglSetStreamMetadataNV",
734 };
735
736 static const char* s_EGL_NV_stream_reset[] =
737 {
738         "eglResetStreamNV",
739 };
740
741 static const char* s_EGL_NV_stream_sync[] =
742 {
743         "eglCreateStreamSyncNV",
744 };
745
746 static const char* s_EGL_NV_sync[] =
747 {
748         "eglClientWaitSyncNV",
749         "eglCreateFenceSyncNV",
750         "eglDestroySyncNV",
751         "eglFenceNV",
752         "eglGetSyncAttribNV",
753         "eglSignalSyncNV",
754 };
755
756 static const char* s_EGL_NV_system_time[] =
757 {
758         "eglGetSystemTimeFrequencyNV",
759         "eglGetSystemTimeNV",
760 };
761
762 static const char* s_EGL_EXT_compositor[] =
763 {
764         "eglCompositorSetContextListEXT",
765         "eglCompositorSetContextAttributesEXT",
766         "eglCompositorSetWindowListEXT",
767         "eglCompositorSetWindowAttributesEXT",
768         "eglCompositorBindTexWindowEXT",
769         "eglCompositorSetSizeEXT",
770         "eglCompositorSwapPolicyEXT",
771 };
772
773 static const char* s_GL_APPLE_copy_texture_levels[] =
774 {
775         "glCopyTextureLevelsAPPLE",
776 };
777
778 static const char* s_GL_APPLE_framebuffer_multisample[] =
779 {
780         "glRenderbufferStorageMultisampleAPPLE",
781         "glResolveMultisampleFramebufferAPPLE",
782 };
783
784 static const char* s_GL_APPLE_sync[] =
785 {
786         "glClientWaitSyncAPPLE",
787         "glDeleteSyncAPPLE",
788         "glFenceSyncAPPLE",
789         "glGetInteger64vAPPLE",
790         "glGetSyncivAPPLE",
791         "glIsSyncAPPLE",
792         "glWaitSyncAPPLE",
793 };
794
795 static const char* s_GL_EXT_debug_marker[] =
796 {
797         "glInsertEventMarkerEXT",
798         "glPopGroupMarkerEXT",
799         "glPushGroupMarkerEXT",
800 };
801
802 static const char* s_GL_EXT_discard_framebuffer[] =
803 {
804         "glDiscardFramebufferEXT",
805 };
806
807 static const char* s_GL_EXT_map_buffer_range[] =
808 {
809         "glFlushMappedBufferRangeEXT",
810         "glMapBufferRangeEXT",
811 };
812
813 static const char* s_GL_EXT_multi_draw_arrays[] =
814 {
815         "glMultiDrawArraysEXT",
816         "glMultiDrawElementsEXT",
817 };
818
819 static const char* s_GL_EXT_multisampled_render_to_texture[] =
820 {
821         "glFramebufferTexture2DMultisampleEXT",
822         "glRenderbufferStorageMultisampleEXT",
823 };
824
825 static const char* s_GL_EXT_robustness[] =
826 {
827         "glGetGraphicsResetStatusEXT",
828         "glGetnUniformfvEXT",
829         "glGetnUniformivEXT",
830         "glReadnPixelsEXT",
831 };
832
833 static const char* s_GL_EXT_texture_storage[] =
834 {
835         "glTexStorage1DEXT",
836         "glTexStorage2DEXT",
837         "glTexStorage3DEXT",
838         "glTextureStorage1DEXT",
839         "glTextureStorage2DEXT",
840         "glTextureStorage3DEXT",
841 };
842
843 static const char* s_GL_IMG_multisampled_render_to_texture[] =
844 {
845         "glFramebufferTexture2DMultisampleIMG",
846         "glRenderbufferStorageMultisampleIMG",
847 };
848
849 static const char* s_GL_IMG_user_clip_plane[] =
850 {
851         "glClipPlanefIMG",
852         "glClipPlanexIMG",
853 };
854
855 static const char* s_GL_NV_fence[] =
856 {
857         "glDeleteFencesNV",
858         "glFinishFenceNV",
859         "glGenFencesNV",
860         "glGetFenceivNV",
861         "glIsFenceNV",
862         "glSetFenceNV",
863         "glTestFenceNV",
864 };
865
866 static const char* s_GL_OES_EGL_image[] =
867 {
868         "glEGLImageTargetRenderbufferStorageOES",
869         "glEGLImageTargetTexture2DOES",
870 };
871
872 static const char* s_GL_OES_blend_equation_separate[] =
873 {
874         "glBlendEquationSeparateOES",
875 };
876
877 static const char* s_GL_OES_blend_func_separate[] =
878 {
879         "glBlendFuncSeparateOES",
880 };
881
882 static const char* s_GL_OES_blend_subtract[] =
883 {
884         "glBlendEquationOES",
885 };
886
887 static const char* s_GL_OES_draw_texture[] =
888 {
889         "glDrawTexfOES",
890         "glDrawTexfvOES",
891         "glDrawTexiOES",
892         "glDrawTexivOES",
893         "glDrawTexsOES",
894         "glDrawTexsvOES",
895         "glDrawTexxOES",
896         "glDrawTexxvOES",
897 };
898
899 static const char* s_GL_OES_fixed_point[] =
900 {
901         "glAlphaFuncxOES",
902         "glClearColorxOES",
903         "glClearDepthxOES",
904         "glClipPlanexOES",
905         "glColor4xOES",
906         "glDepthRangexOES",
907         "glFogxOES",
908         "glFogxvOES",
909         "glFrustumxOES",
910         "glGetClipPlanexOES",
911         "glGetFixedvOES",
912         "glGetLightxvOES",
913         "glGetMaterialxvOES",
914         "glGetTexEnvxvOES",
915         "glGetTexParameterxvOES",
916         "glLightModelxOES",
917         "glLightModelxvOES",
918         "glLightxOES",
919         "glLightxvOES",
920         "glLineWidthxOES",
921         "glLoadMatrixxOES",
922         "glMaterialxOES",
923         "glMaterialxvOES",
924         "glMultMatrixxOES",
925         "glMultiTexCoord4xOES",
926         "glNormal3xOES",
927         "glOrthoxOES",
928         "glPointParameterxOES",
929         "glPointParameterxvOES",
930         "glPointSizexOES",
931         "glPolygonOffsetxOES",
932         "glRotatexOES",
933         "glSampleCoveragexOES",
934         "glScalexOES",
935         "glTexEnvxOES",
936         "glTexEnvxvOES",
937         "glTexParameterxOES",
938         "glTexParameterxvOES",
939         "glTranslatexOES",
940 };
941
942 static const char* s_GL_OES_framebuffer_object[] =
943 {
944         "glBindFramebufferOES",
945         "glBindRenderbufferOES",
946         "glCheckFramebufferStatusOES",
947         "glDeleteFramebuffersOES",
948         "glDeleteRenderbuffersOES",
949         "glFramebufferRenderbufferOES",
950         "glFramebufferTexture2DOES",
951         "glGenFramebuffersOES",
952         "glGenRenderbuffersOES",
953         "glGenerateMipmapOES",
954         "glGetFramebufferAttachmentParameterivOES",
955         "glGetRenderbufferParameterivOES",
956         "glIsFramebufferOES",
957         "glIsRenderbufferOES",
958         "glRenderbufferStorageOES",
959 };
960
961 static const char* s_GL_OES_mapbuffer[] =
962 {
963         "glGetBufferPointervOES",
964         "glMapBufferOES",
965         "glUnmapBufferOES",
966 };
967
968 static const char* s_GL_OES_matrix_palette[] =
969 {
970         "glCurrentPaletteMatrixOES",
971         "glLoadPaletteFromModelViewMatrixOES",
972         "glMatrixIndexPointerOES",
973         "glWeightPointerOES",
974 };
975
976 static const char* s_GL_OES_point_size_array[] =
977 {
978         "glPointSizePointerOES",
979 };
980
981 static const char* s_GL_OES_query_matrix[] =
982 {
983         "glQueryMatrixxOES",
984 };
985
986 static const char* s_GL_OES_single_precision[] =
987 {
988         "glClearDepthfOES",
989         "glClipPlanefOES",
990         "glDepthRangefOES",
991         "glFrustumfOES",
992         "glGetClipPlanefOES",
993         "glOrthofOES",
994 };
995
996 static const char* s_GL_OES_texture_cube_map[] =
997 {
998         "glGetTexGenfvOES",
999         "glGetTexGenivOES",
1000         "glGetTexGenxvOES",
1001         "glTexGenfOES",
1002         "glTexGenfvOES",
1003         "glTexGeniOES",
1004         "glTexGenivOES",
1005         "glTexGenxOES",
1006         "glTexGenxvOES",
1007 };
1008
1009 static const char* s_GL_OES_vertex_array_object[] =
1010 {
1011         "glBindVertexArrayOES",
1012         "glDeleteVertexArraysOES",
1013         "glGenVertexArraysOES",
1014         "glIsVertexArrayOES",
1015 };
1016
1017 static const char* s_GL_QCOM_driver_control[] =
1018 {
1019         "glDisableDriverControlQCOM",
1020         "glEnableDriverControlQCOM",
1021         "glGetDriverControlStringQCOM",
1022         "glGetDriverControlsQCOM",
1023 };
1024
1025 static const char* s_GL_QCOM_extended_get[] =
1026 {
1027         "glExtGetBufferPointervQCOM",
1028         "glExtGetBuffersQCOM",
1029         "glExtGetFramebuffersQCOM",
1030         "glExtGetRenderbuffersQCOM",
1031         "glExtGetTexLevelParameterivQCOM",
1032         "glExtGetTexSubImageQCOM",
1033         "glExtGetTexturesQCOM",
1034         "glExtTexObjectStateOverrideiQCOM",
1035 };
1036
1037 static const char* s_GL_QCOM_extended_get2[] =
1038 {
1039         "glExtGetProgramBinarySourceQCOM",
1040         "glExtGetProgramsQCOM",
1041         "glExtGetShadersQCOM",
1042         "glExtIsProgramBinaryQCOM",
1043 };
1044
1045 static const char* s_GL_QCOM_tiled_rendering[] =
1046 {
1047         "glEndTilingQCOM",
1048         "glStartTilingQCOM",
1049 };
1050
1051 static const char* s_GL_AMD_performance_monitor[] =
1052 {
1053         "glBeginPerfMonitorAMD",
1054         "glDeletePerfMonitorsAMD",
1055         "glEndPerfMonitorAMD",
1056         "glGenPerfMonitorsAMD",
1057         "glGetPerfMonitorCounterDataAMD",
1058         "glGetPerfMonitorCounterInfoAMD",
1059         "glGetPerfMonitorCounterStringAMD",
1060         "glGetPerfMonitorCountersAMD",
1061         "glGetPerfMonitorGroupStringAMD",
1062         "glGetPerfMonitorGroupsAMD",
1063         "glSelectPerfMonitorCountersAMD",
1064 };
1065
1066 static const char* s_GL_ANGLE_framebuffer_blit[] =
1067 {
1068         "glBlitFramebufferANGLE",
1069 };
1070
1071 static const char* s_GL_ANGLE_framebuffer_multisample[] =
1072 {
1073         "glRenderbufferStorageMultisampleANGLE",
1074 };
1075
1076 static const char* s_GL_ANGLE_instanced_arrays[] =
1077 {
1078         "glDrawArraysInstancedANGLE",
1079         "glDrawElementsInstancedANGLE",
1080         "glVertexAttribDivisorANGLE",
1081 };
1082
1083 static const char* s_GL_ANGLE_translated_shader_source[] =
1084 {
1085         "glGetTranslatedShaderSourceANGLE",
1086 };
1087
1088 static const char* s_GL_EXT_EGL_image_storage[] =
1089 {
1090         "glEGLImageTargetTexStorageEXT",
1091         "glEGLImageTargetTextureStorageEXT",
1092 };
1093
1094 static const char* s_GL_EXT_base_instance[] =
1095 {
1096         "glDrawArraysInstancedBaseInstanceEXT",
1097         "glDrawElementsInstancedBaseInstanceEXT",
1098         "glDrawElementsInstancedBaseVertexBaseInstanceEXT",
1099 };
1100
1101 static const char* s_GL_EXT_blend_func_extended[] =
1102 {
1103         "glBindFragDataLocationEXT",
1104         "glBindFragDataLocationIndexedEXT",
1105         "glGetFragDataIndexEXT",
1106         "glGetProgramResourceLocationIndexEXT",
1107 };
1108
1109 static const char* s_GL_EXT_buffer_storage[] =
1110 {
1111         "glBufferStorageEXT",
1112 };
1113
1114 static const char* s_GL_EXT_clear_texture[] =
1115 {
1116         "glClearTexImageEXT",
1117         "glClearTexSubImageEXT",
1118 };
1119
1120 static const char* s_GL_EXT_clip_control[] =
1121 {
1122         "glClipControlEXT",
1123 };
1124
1125 static const char* s_GL_EXT_copy_image[] =
1126 {
1127         "glCopyImageSubDataEXT",
1128 };
1129
1130 static const char* s_GL_EXT_debug_label[] =
1131 {
1132         "glGetObjectLabelEXT",
1133         "glLabelObjectEXT",
1134 };
1135
1136 static const char* s_GL_EXT_disjoint_timer_query[] =
1137 {
1138         "glBeginQueryEXT",
1139         "glDeleteQueriesEXT",
1140         "glEndQueryEXT",
1141         "glGenQueriesEXT",
1142         "glGetQueryObjecti64vEXT",
1143         "glGetQueryObjectivEXT",
1144         "glGetQueryObjectui64vEXT",
1145         "glGetQueryObjectuivEXT",
1146         "glGetQueryivEXT",
1147         "glIsQueryEXT",
1148         "glQueryCounterEXT",
1149 };
1150
1151 static const char* s_GL_EXT_draw_buffers[] =
1152 {
1153         "glDrawBuffersEXT",
1154 };
1155
1156 static const char* s_GL_EXT_draw_buffers_indexed[] =
1157 {
1158         "glBlendEquationSeparateiEXT",
1159         "glBlendEquationiEXT",
1160         "glBlendFuncSeparateiEXT",
1161         "glBlendFunciEXT",
1162         "glColorMaskiEXT",
1163         "glDisableiEXT",
1164         "glEnableiEXT",
1165         "glIsEnablediEXT",
1166 };
1167
1168 static const char* s_GL_EXT_draw_elements_base_vertex[] =
1169 {
1170         "glDrawElementsBaseVertexEXT",
1171         "glDrawElementsInstancedBaseVertexEXT",
1172         "glDrawRangeElementsBaseVertexEXT",
1173         "glMultiDrawElementsBaseVertexEXT",
1174 };
1175
1176 static const char* s_GL_EXT_draw_instanced[] =
1177 {
1178         "glDrawArraysInstancedEXT",
1179         "glDrawElementsInstancedEXT",
1180 };
1181
1182 static const char* s_GL_EXT_draw_transform_feedback[] =
1183 {
1184         "glDrawTransformFeedbackEXT",
1185         "glDrawTransformFeedbackInstancedEXT",
1186 };
1187
1188 static const char* s_GL_EXT_external_buffer[] =
1189 {
1190         "glBufferStorageExternalEXT",
1191         "glNamedBufferStorageExternalEXT",
1192 };
1193
1194 static const char* s_GL_EXT_geometry_shader[] =
1195 {
1196         "glFramebufferTextureEXT",
1197 };
1198
1199 static const char* s_GL_EXT_instanced_arrays[] =
1200 {
1201         "glDrawArraysInstancedEXT",
1202         "glDrawElementsInstancedEXT",
1203         "glVertexAttribDivisorEXT",
1204 };
1205
1206 static const char* s_GL_EXT_memory_object[] =
1207 {
1208         "glBufferStorageMemEXT",
1209         "glCreateMemoryObjectsEXT",
1210         "glDeleteMemoryObjectsEXT",
1211         "glGetMemoryObjectParameterivEXT",
1212         "glGetUnsignedBytevEXT",
1213         "glGetUnsignedBytei_vEXT",
1214         "glIsMemoryObjectEXT",
1215         "glMemoryObjectParameterivEXT",
1216         "glNamedBufferStorageMemEXT",
1217         "glTexStorageMem2DEXT",
1218         "glTexStorageMem2DMultisampleEXT",
1219         "glTexStorageMem3DEXT",
1220         "glTexStorageMem3DMultisampleEXT",
1221         "glTextureStorageMem2DEXT",
1222         "glTextureStorageMem2DMultisampleEXT",
1223         "glTextureStorageMem3DEXT",
1224         "glTextureStorageMem3DMultisampleEXT",
1225 };
1226
1227 static const char* s_GL_EXT_memory_object_fd[] =
1228 {
1229         "glImportMemoryFdEXT",
1230 };
1231
1232 static const char* s_GL_EXT_memory_object_win32[] =
1233 {
1234         "glImportMemoryWin32HandleEXT",
1235         "glImportMemoryWin32NameEXT",
1236 };
1237
1238 static const char* s_GL_EXT_multi_draw_indirect[] =
1239 {
1240         "glMultiDrawArraysIndirectEXT",
1241         "glMultiDrawElementsIndirectEXT",
1242 };
1243
1244 static const char* s_GL_EXT_multiview_draw_buffers[] =
1245 {
1246         "glDrawBuffersIndexedEXT",
1247         "glGetIntegeri_vEXT",
1248         "glReadBufferIndexedEXT",
1249 };
1250
1251 static const char* s_GL_EXT_occlusion_query_boolean[] =
1252 {
1253         "glBeginQueryEXT",
1254         "glDeleteQueriesEXT",
1255         "glEndQueryEXT",
1256         "glGenQueriesEXT",
1257         "glGetQueryObjectuivEXT",
1258         "glGetQueryivEXT",
1259         "glIsQueryEXT",
1260 };
1261
1262 static const char* s_GL_EXT_polygon_offset_clamp[] =
1263 {
1264         "glPolygonOffsetClampEXT",
1265 };
1266
1267 static const char* s_GL_EXT_primitive_bounding_box[] =
1268 {
1269         "glPrimitiveBoundingBoxEXT",
1270 };
1271
1272 static const char* s_GL_EXT_raster_multisample[] =
1273 {
1274         "glRasterSamplesEXT",
1275 };
1276
1277 static const char* s_GL_EXT_semaphore[] =
1278 {
1279         "glDeleteSemaphoresEXT",
1280         "glGenSemaphoresEXT",
1281         "glGetSemaphoreParameterui64vEXT",
1282         "glGetUnsignedBytevEXT",
1283         "glGetUnsignedBytei_vEXT",
1284         "glIsSemaphoreEXT",
1285         "glSemaphoreParameterui64vEXT",
1286         "glSignalSemaphoreEXT",
1287         "glWaitSemaphoreEXT",
1288 };
1289
1290 static const char* s_GL_EXT_semaphore_fd[] =
1291 {
1292         "glImportSemaphoreFdEXT",
1293 };
1294
1295 static const char* s_GL_EXT_semaphore_win32[] =
1296 {
1297         "glImportSemaphoreWin32HandleEXT",
1298         "glImportSemaphoreWin32NameEXT",
1299 };
1300
1301 static const char* s_GL_EXT_separate_shader_objects[] =
1302 {
1303         "glActiveShaderProgramEXT",
1304         "glBindProgramPipelineEXT",
1305         "glCreateShaderProgramvEXT",
1306         "glDeleteProgramPipelinesEXT",
1307         "glGenProgramPipelinesEXT",
1308         "glGetProgramPipelineInfoLogEXT",
1309         "glGetProgramPipelineivEXT",
1310         "glIsProgramPipelineEXT",
1311         "glProgramParameteriEXT",
1312         "glProgramUniform1fEXT",
1313         "glProgramUniform1fvEXT",
1314         "glProgramUniform1iEXT",
1315         "glProgramUniform1ivEXT",
1316         "glProgramUniform1uiEXT",
1317         "glProgramUniform1uivEXT",
1318         "glProgramUniform2fEXT",
1319         "glProgramUniform2fvEXT",
1320         "glProgramUniform2iEXT",
1321         "glProgramUniform2ivEXT",
1322         "glProgramUniform2uiEXT",
1323         "glProgramUniform2uivEXT",
1324         "glProgramUniform3fEXT",
1325         "glProgramUniform3fvEXT",
1326         "glProgramUniform3iEXT",
1327         "glProgramUniform3ivEXT",
1328         "glProgramUniform3uiEXT",
1329         "glProgramUniform3uivEXT",
1330         "glProgramUniform4fEXT",
1331         "glProgramUniform4fvEXT",
1332         "glProgramUniform4iEXT",
1333         "glProgramUniform4ivEXT",
1334         "glProgramUniform4uiEXT",
1335         "glProgramUniform4uivEXT",
1336         "glProgramUniformMatrix2fvEXT",
1337         "glProgramUniformMatrix2x3fvEXT",
1338         "glProgramUniformMatrix2x4fvEXT",
1339         "glProgramUniformMatrix3fvEXT",
1340         "glProgramUniformMatrix3x2fvEXT",
1341         "glProgramUniformMatrix3x4fvEXT",
1342         "glProgramUniformMatrix4fvEXT",
1343         "glProgramUniformMatrix4x2fvEXT",
1344         "glProgramUniformMatrix4x3fvEXT",
1345         "glUseProgramStagesEXT",
1346         "glValidateProgramPipelineEXT",
1347 };
1348
1349 static const char* s_GL_EXT_shader_framebuffer_fetch_non_coherent[] =
1350 {
1351         "glFramebufferFetchBarrierEXT",
1352 };
1353
1354 static const char* s_GL_EXT_shader_pixel_local_storage2[] =
1355 {
1356         "glClearPixelLocalStorageuiEXT",
1357         "glFramebufferPixelLocalStorageSizeEXT",
1358         "glGetFramebufferPixelLocalStorageSizeEXT",
1359 };
1360
1361 static const char* s_GL_EXT_sparse_texture[] =
1362 {
1363         "glTexPageCommitmentEXT",
1364 };
1365
1366 static const char* s_GL_EXT_tessellation_shader[] =
1367 {
1368         "glPatchParameteriEXT",
1369 };
1370
1371 static const char* s_GL_EXT_texture_border_clamp[] =
1372 {
1373         "glGetSamplerParameterIivEXT",
1374         "glGetSamplerParameterIuivEXT",
1375         "glGetTexParameterIivEXT",
1376         "glGetTexParameterIuivEXT",
1377         "glSamplerParameterIivEXT",
1378         "glSamplerParameterIuivEXT",
1379         "glTexParameterIivEXT",
1380         "glTexParameterIuivEXT",
1381 };
1382
1383 static const char* s_GL_EXT_texture_buffer[] =
1384 {
1385         "glTexBufferEXT",
1386         "glTexBufferRangeEXT",
1387 };
1388
1389 static const char* s_GL_EXT_texture_view[] =
1390 {
1391         "glTextureViewEXT",
1392 };
1393
1394 static const char* s_GL_EXT_win32_keyed_mutex[] =
1395 {
1396         "glAcquireKeyedMutexWin32EXT",
1397         "glReleaseKeyedMutexWin32EXT",
1398 };
1399
1400 static const char* s_GL_EXT_window_rectangles[] =
1401 {
1402         "glWindowRectanglesEXT",
1403 };
1404
1405 static const char* s_GL_IMG_bindless_texture[] =
1406 {
1407         "glGetTextureHandleIMG",
1408         "glGetTextureSamplerHandleIMG",
1409         "glProgramUniformHandleui64IMG",
1410         "glProgramUniformHandleui64vIMG",
1411         "glUniformHandleui64IMG",
1412         "glUniformHandleui64vIMG",
1413 };
1414
1415 static const char* s_GL_IMG_framebuffer_downsample[] =
1416 {
1417         "glFramebufferTexture2DDownsampleIMG",
1418         "glFramebufferTextureLayerDownsampleIMG",
1419 };
1420
1421 static const char* s_GL_INTEL_framebuffer_CMAA[] =
1422 {
1423         "glApplyFramebufferAttachmentCMAAINTEL",
1424 };
1425
1426 static const char* s_GL_INTEL_performance_query[] =
1427 {
1428         "glBeginPerfQueryINTEL",
1429         "glCreatePerfQueryINTEL",
1430         "glDeletePerfQueryINTEL",
1431         "glEndPerfQueryINTEL",
1432         "glGetFirstPerfQueryIdINTEL",
1433         "glGetNextPerfQueryIdINTEL",
1434         "glGetPerfCounterInfoINTEL",
1435         "glGetPerfQueryDataINTEL",
1436         "glGetPerfQueryIdByNameINTEL",
1437         "glGetPerfQueryInfoINTEL",
1438 };
1439
1440 static const char* s_GL_KHR_blend_equation_advanced[] =
1441 {
1442         "glBlendBarrierKHR",
1443 };
1444
1445 static const char* s_GL_KHR_debug[] =
1446 {
1447         "glDebugMessageCallbackKHR",
1448         "glDebugMessageControlKHR",
1449         "glDebugMessageInsertKHR",
1450         "glGetDebugMessageLogKHR",
1451         "glGetObjectLabelKHR",
1452         "glGetObjectPtrLabelKHR",
1453         "glGetPointervKHR",
1454         "glObjectLabelKHR",
1455         "glObjectPtrLabelKHR",
1456         "glPopDebugGroupKHR",
1457         "glPushDebugGroupKHR",
1458 };
1459
1460 static const char* s_GL_KHR_robustness[] =
1461 {
1462         "glGetGraphicsResetStatusKHR",
1463         "glGetnUniformfvKHR",
1464         "glGetnUniformivKHR",
1465         "glGetnUniformuivKHR",
1466         "glReadnPixelsKHR",
1467 };
1468
1469 static const char* s_GL_KHR_parallel_shader_compile[] =
1470 {
1471         "glMaxShaderCompilerThreadsKHR",
1472 };
1473
1474 static const char* s_GL_NV_bindless_texture[] =
1475 {
1476         "glGetImageHandleNV",
1477         "glGetTextureHandleNV",
1478         "glGetTextureSamplerHandleNV",
1479         "glIsImageHandleResidentNV",
1480         "glIsTextureHandleResidentNV",
1481         "glMakeImageHandleNonResidentNV",
1482         "glMakeImageHandleResidentNV",
1483         "glMakeTextureHandleNonResidentNV",
1484         "glMakeTextureHandleResidentNV",
1485         "glProgramUniformHandleui64NV",
1486         "glProgramUniformHandleui64vNV",
1487         "glUniformHandleui64NV",
1488         "glUniformHandleui64vNV",
1489 };
1490
1491 static const char* s_GL_NV_blend_equation_advanced[] =
1492 {
1493         "glBlendBarrierNV",
1494         "glBlendParameteriNV",
1495 };
1496
1497 static const char* s_GL_NV_clip_space_w_scaling[] =
1498 {
1499         "glViewportPositionWScaleNV",
1500 };
1501
1502 static const char* s_GL_NV_conditional_render[] =
1503 {
1504         "glBeginConditionalRenderNV",
1505         "glEndConditionalRenderNV",
1506 };
1507
1508 static const char* s_GL_NV_conservative_raster[] =
1509 {
1510         "glSubpixelPrecisionBiasNV",
1511 };
1512
1513 static const char* s_GL_NV_conservative_raster_pre_snap_triangles[] =
1514 {
1515         "glConservativeRasterParameteriNV",
1516 };
1517
1518 static const char* s_GL_NV_copy_buffer[] =
1519 {
1520         "glCopyBufferSubDataNV",
1521 };
1522
1523 static const char* s_GL_NV_coverage_sample[] =
1524 {
1525         "glCoverageMaskNV",
1526         "glCoverageOperationNV",
1527 };
1528
1529 static const char* s_GL_NV_draw_buffers[] =
1530 {
1531         "glDrawBuffersNV",
1532 };
1533
1534 static const char* s_GL_NV_draw_instanced[] =
1535 {
1536         "glDrawArraysInstancedNV",
1537         "glDrawElementsInstancedNV",
1538 };
1539
1540 static const char* s_GL_NV_draw_vulkan_image[] =
1541 {
1542         "glDrawVkImageNV",
1543         "glGetVkProcAddrNV",
1544         "glWaitVkSemaphoreNV",
1545         "glSignalVkSemaphoreNV",
1546         "glSignalVkFenceNV",
1547 };
1548
1549 static const char* s_GL_NV_fragment_coverage_to_color[] =
1550 {
1551         "glFragmentCoverageColorNV",
1552 };
1553
1554 static const char* s_GL_NV_framebuffer_blit[] =
1555 {
1556         "glBlitFramebufferNV",
1557 };
1558
1559 static const char* s_GL_NV_framebuffer_mixed_samples[] =
1560 {
1561         "glCoverageModulationNV",
1562         "glCoverageModulationTableNV",
1563         "glGetCoverageModulationTableNV",
1564         "glRasterSamplesEXT",
1565 };
1566
1567 static const char* s_GL_NV_framebuffer_multisample[] =
1568 {
1569         "glRenderbufferStorageMultisampleNV",
1570 };
1571
1572 static const char* s_GL_NV_gpu_shader5[] =
1573 {
1574         "glGetUniformi64vNV",
1575         "glProgramUniform1i64NV",
1576         "glProgramUniform1i64vNV",
1577         "glProgramUniform1ui64NV",
1578         "glProgramUniform1ui64vNV",
1579         "glProgramUniform2i64NV",
1580         "glProgramUniform2i64vNV",
1581         "glProgramUniform2ui64NV",
1582         "glProgramUniform2ui64vNV",
1583         "glProgramUniform3i64NV",
1584         "glProgramUniform3i64vNV",
1585         "glProgramUniform3ui64NV",
1586         "glProgramUniform3ui64vNV",
1587         "glProgramUniform4i64NV",
1588         "glProgramUniform4i64vNV",
1589         "glProgramUniform4ui64NV",
1590         "glProgramUniform4ui64vNV",
1591         "glUniform1i64NV",
1592         "glUniform1i64vNV",
1593         "glUniform1ui64NV",
1594         "glUniform1ui64vNV",
1595         "glUniform2i64NV",
1596         "glUniform2i64vNV",
1597         "glUniform2ui64NV",
1598         "glUniform2ui64vNV",
1599         "glUniform3i64NV",
1600         "glUniform3i64vNV",
1601         "glUniform3ui64NV",
1602         "glUniform3ui64vNV",
1603         "glUniform4i64NV",
1604         "glUniform4i64vNV",
1605         "glUniform4ui64NV",
1606         "glUniform4ui64vNV",
1607 };
1608
1609 static const char* s_GL_NV_instanced_arrays[] =
1610 {
1611         "glVertexAttribDivisorNV",
1612 };
1613
1614 static const char* s_GL_NV_internalformat_sample_query[] =
1615 {
1616         "glGetInternalformatSampleivNV",
1617 };
1618
1619 static const char* s_GL_NV_non_square_matrices[] =
1620 {
1621         "glUniformMatrix2x3fvNV",
1622         "glUniformMatrix2x4fvNV",
1623         "glUniformMatrix3x2fvNV",
1624         "glUniformMatrix3x4fvNV",
1625         "glUniformMatrix4x2fvNV",
1626         "glUniformMatrix4x3fvNV",
1627 };
1628
1629 static const char* s_GL_NV_path_rendering[] =
1630 {
1631         "glCopyPathNV",
1632         "glCoverFillPathInstancedNV",
1633         "glCoverFillPathNV",
1634         "glCoverStrokePathInstancedNV",
1635         "glCoverStrokePathNV",
1636         "glDeletePathsNV",
1637         "glGenPathsNV",
1638         "glGetPathCommandsNV",
1639         "glGetPathCoordsNV",
1640         "glGetPathDashArrayNV",
1641         "glGetPathLengthNV",
1642         "glGetPathMetricRangeNV",
1643         "glGetPathMetricsNV",
1644         "glGetPathParameterfvNV",
1645         "glGetPathParameterivNV",
1646         "glGetPathSpacingNV",
1647         "glGetProgramResourcefvNV",
1648         "glInterpolatePathsNV",
1649         "glIsPathNV",
1650         "glIsPointInFillPathNV",
1651         "glIsPointInStrokePathNV",
1652         "glMatrixFrustumEXT",
1653         "glMatrixLoad3x2fNV",
1654         "glMatrixLoad3x3fNV",
1655         "glMatrixLoadIdentityEXT",
1656         "glMatrixLoadTranspose3x3fNV",
1657         "glMatrixLoadTransposedEXT",
1658         "glMatrixLoadTransposefEXT",
1659         "glMatrixLoaddEXT",
1660         "glMatrixLoadfEXT",
1661         "glMatrixMult3x2fNV",
1662         "glMatrixMult3x3fNV",
1663         "glMatrixMultTranspose3x3fNV",
1664         "glMatrixMultTransposedEXT",
1665         "glMatrixMultTransposefEXT",
1666         "glMatrixMultdEXT",
1667         "glMatrixMultfEXT",
1668         "glMatrixOrthoEXT",
1669         "glMatrixPopEXT",
1670         "glMatrixPushEXT",
1671         "glMatrixRotatedEXT",
1672         "glMatrixRotatefEXT",
1673         "glMatrixScaledEXT",
1674         "glMatrixScalefEXT",
1675         "glMatrixTranslatedEXT",
1676         "glMatrixTranslatefEXT",
1677         "glPathCommandsNV",
1678         "glPathCoordsNV",
1679         "glPathCoverDepthFuncNV",
1680         "glPathDashArrayNV",
1681         "glPathGlyphIndexArrayNV",
1682         "glPathGlyphIndexRangeNV",
1683         "glPathGlyphRangeNV",
1684         "glPathGlyphsNV",
1685         "glPathMemoryGlyphIndexArrayNV",
1686         "glPathParameterfNV",
1687         "glPathParameterfvNV",
1688         "glPathParameteriNV",
1689         "glPathParameterivNV",
1690         "glPathStencilDepthOffsetNV",
1691         "glPathStencilFuncNV",
1692         "glPathStringNV",
1693         "glPathSubCommandsNV",
1694         "glPathSubCoordsNV",
1695         "glPointAlongPathNV",
1696         "glProgramPathFragmentInputGenNV",
1697         "glStencilFillPathInstancedNV",
1698         "glStencilFillPathNV",
1699         "glStencilStrokePathInstancedNV",
1700         "glStencilStrokePathNV",
1701         "glStencilThenCoverFillPathInstancedNV",
1702         "glStencilThenCoverFillPathNV",
1703         "glStencilThenCoverStrokePathInstancedNV",
1704         "glStencilThenCoverStrokePathNV",
1705         "glTransformPathNV",
1706         "glWeightPathsNV",
1707 };
1708
1709 static const char* s_GL_NV_polygon_mode[] =
1710 {
1711         "glPolygonModeNV",
1712 };
1713
1714 static const char* s_GL_NV_read_buffer[] =
1715 {
1716         "glReadBufferNV",
1717 };
1718
1719 static const char* s_GL_NV_sample_locations[] =
1720 {
1721         "glFramebufferSampleLocationsfvNV",
1722         "glNamedFramebufferSampleLocationsfvNV",
1723         "glResolveDepthValuesNV",
1724 };
1725
1726 static const char* s_GL_NV_viewport_array[] =
1727 {
1728         "glDepthRangeArrayfvNV",
1729         "glDepthRangeIndexedfNV",
1730         "glDisableiNV",
1731         "glEnableiNV",
1732         "glGetFloati_vNV",
1733         "glIsEnablediNV",
1734         "glScissorArrayvNV",
1735         "glScissorIndexedNV",
1736         "glScissorIndexedvNV",
1737         "glViewportArrayvNV",
1738         "glViewportIndexedfNV",
1739         "glViewportIndexedfvNV",
1740 };
1741
1742 static const char* s_GL_NV_viewport_swizzle[] =
1743 {
1744         "glViewportSwizzleNV",
1745 };
1746
1747 static const char* s_GL_OES_copy_image[] =
1748 {
1749         "glCopyImageSubDataOES",
1750 };
1751
1752 static const char* s_GL_OES_draw_buffers_indexed[] =
1753 {
1754         "glBlendEquationSeparateiOES",
1755         "glBlendEquationiOES",
1756         "glBlendFuncSeparateiOES",
1757         "glBlendFunciOES",
1758         "glColorMaskiOES",
1759         "glDisableiOES",
1760         "glEnableiOES",
1761         "glIsEnablediOES",
1762 };
1763
1764 static const char* s_GL_OES_draw_elements_base_vertex[] =
1765 {
1766         "glDrawElementsBaseVertexOES",
1767         "glDrawElementsInstancedBaseVertexOES",
1768         "glDrawRangeElementsBaseVertexOES",
1769         "glMultiDrawElementsBaseVertexEXT",
1770 };
1771
1772 static const char* s_GL_OES_geometry_shader[] =
1773 {
1774         "glFramebufferTextureOES",
1775 };
1776
1777 static const char* s_GL_OES_get_program_binary[] =
1778 {
1779         "glGetProgramBinaryOES",
1780         "glProgramBinaryOES",
1781 };
1782
1783 static const char* s_GL_OES_primitive_bounding_box[] =
1784 {
1785         "glPrimitiveBoundingBoxOES",
1786 };
1787
1788 static const char* s_GL_OES_sample_shading[] =
1789 {
1790         "glMinSampleShadingOES",
1791 };
1792
1793 static const char* s_GL_OES_tessellation_shader[] =
1794 {
1795         "glPatchParameteriOES",
1796 };
1797
1798 static const char* s_GL_OES_texture_3D[] =
1799 {
1800         "glCompressedTexImage3DOES",
1801         "glCompressedTexSubImage3DOES",
1802         "glCopyTexSubImage3DOES",
1803         "glFramebufferTexture3DOES",
1804         "glTexImage3DOES",
1805         "glTexSubImage3DOES",
1806 };
1807
1808 static const char* s_GL_OES_texture_border_clamp[] =
1809 {
1810         "glGetSamplerParameterIivOES",
1811         "glGetSamplerParameterIuivOES",
1812         "glGetTexParameterIivOES",
1813         "glGetTexParameterIuivOES",
1814         "glSamplerParameterIivOES",
1815         "glSamplerParameterIuivOES",
1816         "glTexParameterIivOES",
1817         "glTexParameterIuivOES",
1818 };
1819
1820 static const char* s_GL_OES_texture_buffer[] =
1821 {
1822         "glTexBufferOES",
1823         "glTexBufferRangeOES",
1824 };
1825
1826 static const char* s_GL_OES_texture_storage_multisample_2d_array[] =
1827 {
1828         "glTexStorage3DMultisampleOES",
1829 };
1830
1831 static const char* s_GL_OES_texture_view[] =
1832 {
1833         "glTextureViewOES",
1834 };
1835
1836 static const char* s_GL_OES_viewport_array[] =
1837 {
1838         "glDepthRangeArrayfvOES",
1839         "glDepthRangeIndexedfOES",
1840         "glDisableiOES",
1841         "glEnableiOES",
1842         "glGetFloati_vOES",
1843         "glIsEnablediOES",
1844         "glScissorArrayvOES",
1845         "glScissorIndexedOES",
1846         "glScissorIndexedvOES",
1847         "glViewportArrayvOES",
1848         "glViewportIndexedfOES",
1849         "glViewportIndexedfvOES",
1850 };
1851
1852 static const char* s_GL_OVR_multiview[] =
1853 {
1854         "glFramebufferTextureMultiviewOVR",
1855 };
1856
1857 static const char* s_GL_OVR_multiview_multisampled_render_to_texture[] =
1858 {
1859         "glFramebufferTextureMultisampleMultiviewOVR",
1860 };
1861
1862 static const char* s_GL_QCOM_alpha_test[] =
1863 {
1864         "glAlphaFuncQCOM",
1865 };
1866
1867 static const char* s_GL_QCOM_framebuffer_foveated[] =
1868 {
1869         "glFramebufferFoveationConfigQCOM",
1870         "glFramebufferFoveationParametersQCOM",
1871 };
1872
1873 static const char* s_GL_QCOM_texture_foveated[] =
1874 {
1875         "glTextureFoveationParametersQCOM",
1876 };
1877
1878 static const char* s_GL_QCOM_shader_framebuffer_fetch_noncoherent[] =
1879 {
1880         "glFramebufferFetchBarrierQCOM",
1881 };
1882
1883 static const struct
1884 {
1885         const char*                     name;
1886         const int                       numFunctions;
1887         const char* const*      functions;
1888 } s_extensions[] =
1889 {
1890         { "EGL_ANDROID_blob_cache",                                                             DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_blob_cache),                                                   s_EGL_ANDROID_blob_cache                                                        },
1891         { "EGL_ANDROID_create_native_client_buffer",                    DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_create_native_client_buffer),                  s_EGL_ANDROID_create_native_client_buffer                       },
1892         { "EGL_ANDROID_get_native_client_buffer",                               DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_get_native_client_buffer),                             s_EGL_ANDROID_get_native_client_buffer                          },
1893         { "EGL_ANDROID_native_fence_sync",                                              DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_native_fence_sync),                                    s_EGL_ANDROID_native_fence_sync                                         },
1894         { "EGL_ANDROID_presentation_time",                                              DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_presentation_time),                                    s_EGL_ANDROID_presentation_time                                         },
1895         { "EGL_ANDROID_get_frame_timestamps",                                   DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_get_frame_timestamps),                                 s_EGL_ANDROID_get_frame_timestamps                                      },
1896         { "EGL_ANGLE_query_surface_pointer",                                    DE_LENGTH_OF_ARRAY(s_EGL_ANGLE_query_surface_pointer),                                  s_EGL_ANGLE_query_surface_pointer                                       },
1897         { "EGL_EXT_client_sync",                                                                DE_LENGTH_OF_ARRAY(s_EGL_EXT_client_sync),                                                              s_EGL_EXT_client_sync                                                           },
1898         { "EGL_EXT_device_base",                                                                DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_base),                                                              s_EGL_EXT_device_base                                                           },
1899         { "EGL_EXT_device_enumeration",                                                 DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_enumeration),                                               s_EGL_EXT_device_enumeration                                            },
1900         { "EGL_EXT_device_query",                                                               DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_query),                                                             s_EGL_EXT_device_query                                                          },
1901         { "EGL_EXT_image_dma_buf_import_modifiers",                             DE_LENGTH_OF_ARRAY(s_EGL_EXT_image_dma_buf_import_modifiers),                   s_EGL_EXT_image_dma_buf_import_modifiers                        },
1902         { "EGL_EXT_output_base",                                                                DE_LENGTH_OF_ARRAY(s_EGL_EXT_output_base),                                                              s_EGL_EXT_output_base                                                           },
1903         { "EGL_EXT_platform_base",                                                              DE_LENGTH_OF_ARRAY(s_EGL_EXT_platform_base),                                                    s_EGL_EXT_platform_base                                                         },
1904         { "EGL_EXT_stream_consumer_egloutput",                                  DE_LENGTH_OF_ARRAY(s_EGL_EXT_stream_consumer_egloutput),                                s_EGL_EXT_stream_consumer_egloutput                                     },
1905         { "EGL_EXT_swap_buffers_with_damage",                                   DE_LENGTH_OF_ARRAY(s_EGL_EXT_swap_buffers_with_damage),                                 s_EGL_EXT_swap_buffers_with_damage                                      },
1906         { "EGL_EXT_sync_reuse",                                                                 DE_LENGTH_OF_ARRAY(s_EGL_EXT_sync_reuse),                                                               s_EGL_EXT_sync_reuse                                                            },
1907         { "EGL_HI_clientpixmap",                                                                DE_LENGTH_OF_ARRAY(s_EGL_HI_clientpixmap),                                                              s_EGL_HI_clientpixmap                                                           },
1908         { "EGL_KHR_cl_event2",                                                                  DE_LENGTH_OF_ARRAY(s_EGL_KHR_cl_event2),                                                                s_EGL_KHR_cl_event2                                                                     },
1909         { "EGL_KHR_debug",                                                                              DE_LENGTH_OF_ARRAY(s_EGL_KHR_debug),                                                                    s_EGL_KHR_debug                                                                         },
1910         { "EGL_KHR_display_reference",                                                  DE_LENGTH_OF_ARRAY(s_EGL_KHR_display_reference),                                                s_EGL_KHR_display_reference                                                     },
1911         { "EGL_KHR_fence_sync",                                                                 DE_LENGTH_OF_ARRAY(s_EGL_KHR_fence_sync),                                                               s_EGL_KHR_fence_sync                                                            },
1912         { "EGL_KHR_image",                                                                              DE_LENGTH_OF_ARRAY(s_EGL_KHR_image),                                                                    s_EGL_KHR_image                                                                         },
1913         { "EGL_KHR_image_base",                                                                 DE_LENGTH_OF_ARRAY(s_EGL_KHR_image_base),                                                               s_EGL_KHR_image_base                                                            },
1914         { "EGL_KHR_lock_surface",                                                               DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface),                                                             s_EGL_KHR_lock_surface                                                          },
1915         { "EGL_KHR_lock_surface3",                                                              DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface3),                                                    s_EGL_KHR_lock_surface3                                                         },
1916         { "EGL_KHR_partial_update",                                                             DE_LENGTH_OF_ARRAY(s_EGL_KHR_partial_update),                                                   s_EGL_KHR_partial_update                                                        },
1917         { "EGL_KHR_reusable_sync",                                                              DE_LENGTH_OF_ARRAY(s_EGL_KHR_reusable_sync),                                                    s_EGL_KHR_reusable_sync                                                         },
1918         { "EGL_KHR_stream",                                                                             DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream),                                                                   s_EGL_KHR_stream                                                                        },
1919         { "EGL_KHR_stream_attrib",                                                              DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_attrib),                                                    s_EGL_KHR_stream_attrib                                                         },
1920         { "EGL_KHR_stream_consumer_gltexture",                                  DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_consumer_gltexture),                                s_EGL_KHR_stream_consumer_gltexture                                     },
1921         { "EGL_KHR_stream_cross_process_fd",                                    DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_cross_process_fd),                                  s_EGL_KHR_stream_cross_process_fd                                       },
1922         { "EGL_KHR_stream_fifo",                                                                DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_fifo),                                                              s_EGL_KHR_stream_fifo                                                           },
1923         { "EGL_KHR_stream_producer_eglsurface",                                 DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_producer_eglsurface),                               s_EGL_KHR_stream_producer_eglsurface                            },
1924         { "EGL_KHR_swap_buffers_with_damage",                                   DE_LENGTH_OF_ARRAY(s_EGL_KHR_swap_buffers_with_damage),                                 s_EGL_KHR_swap_buffers_with_damage                                      },
1925         { "EGL_KHR_wait_sync",                                                                  DE_LENGTH_OF_ARRAY(s_EGL_KHR_wait_sync),                                                                s_EGL_KHR_wait_sync                                                                     },
1926         { "EGL_MESA_drm_image",                                                                 DE_LENGTH_OF_ARRAY(s_EGL_MESA_drm_image),                                                               s_EGL_MESA_drm_image                                                            },
1927         { "EGL_MESA_image_dma_buf_export",                                              DE_LENGTH_OF_ARRAY(s_EGL_MESA_image_dma_buf_export),                                    s_EGL_MESA_image_dma_buf_export                                         },
1928         { "EGL_NOK_swap_region",                                                                DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region),                                                              s_EGL_NOK_swap_region                                                           },
1929         { "EGL_NOK_swap_region2",                                                               DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region2),                                                             s_EGL_NOK_swap_region2                                                          },
1930         { "EGL_NV_native_query",                                                                DE_LENGTH_OF_ARRAY(s_EGL_NV_native_query),                                                              s_EGL_NV_native_query                                                           },
1931         { "EGL_NV_post_sub_buffer",                                                             DE_LENGTH_OF_ARRAY(s_EGL_NV_post_sub_buffer),                                                   s_EGL_NV_post_sub_buffer                                                        },
1932         { "EGL_NV_stream_consumer_gltexture_yuv",                               DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_consumer_gltexture_yuv),                             s_EGL_NV_stream_consumer_gltexture_yuv                          },
1933         { "EGL_NV_stream_flush",                                                                DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_flush),                                                              s_EGL_NV_stream_flush                                                           },
1934         { "EGL_NV_stream_metadata",                                                             DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_metadata),                                                   s_EGL_NV_stream_metadata                                                        },
1935         { "EGL_NV_stream_reset",                                                                DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_reset),                                                              s_EGL_NV_stream_reset                                                           },
1936         { "EGL_NV_stream_sync",                                                                 DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_sync),                                                               s_EGL_NV_stream_sync                                                            },
1937         { "EGL_NV_sync",                                                                                DE_LENGTH_OF_ARRAY(s_EGL_NV_sync),                                                                              s_EGL_NV_sync                                                                           },
1938         { "EGL_NV_system_time",                                                                 DE_LENGTH_OF_ARRAY(s_EGL_NV_system_time),                                                               s_EGL_NV_system_time                                                            },
1939         { "EGL_EXT_compositor",                                                                 DE_LENGTH_OF_ARRAY(s_EGL_EXT_compositor),                                                               s_EGL_EXT_compositor                                                            },
1940         { "GL_APPLE_copy_texture_levels",                                               DE_LENGTH_OF_ARRAY(s_GL_APPLE_copy_texture_levels),                                             s_GL_APPLE_copy_texture_levels                                          },
1941         { "GL_APPLE_framebuffer_multisample",                                   DE_LENGTH_OF_ARRAY(s_GL_APPLE_framebuffer_multisample),                                 s_GL_APPLE_framebuffer_multisample                                      },
1942         { "GL_APPLE_sync",                                                                              DE_LENGTH_OF_ARRAY(s_GL_APPLE_sync),                                                                    s_GL_APPLE_sync                                                                         },
1943         { "GL_EXT_debug_marker",                                                                DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_marker),                                                              s_GL_EXT_debug_marker                                                           },
1944         { "GL_EXT_discard_framebuffer",                                                 DE_LENGTH_OF_ARRAY(s_GL_EXT_discard_framebuffer),                                               s_GL_EXT_discard_framebuffer                                            },
1945         { "GL_EXT_map_buffer_range",                                                    DE_LENGTH_OF_ARRAY(s_GL_EXT_map_buffer_range),                                                  s_GL_EXT_map_buffer_range                                                       },
1946         { "GL_EXT_multi_draw_arrays",                                                   DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_arrays),                                                 s_GL_EXT_multi_draw_arrays                                                      },
1947         { "GL_EXT_multisampled_render_to_texture",                              DE_LENGTH_OF_ARRAY(s_GL_EXT_multisampled_render_to_texture),                    s_GL_EXT_multisampled_render_to_texture                         },
1948         { "GL_EXT_robustness",                                                                  DE_LENGTH_OF_ARRAY(s_GL_EXT_robustness),                                                                s_GL_EXT_robustness                                                                     },
1949         { "GL_EXT_texture_storage",                                                             DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_storage),                                                   s_GL_EXT_texture_storage                                                        },
1950         { "GL_IMG_multisampled_render_to_texture",                              DE_LENGTH_OF_ARRAY(s_GL_IMG_multisampled_render_to_texture),                    s_GL_IMG_multisampled_render_to_texture                         },
1951         { "GL_IMG_user_clip_plane",                                                             DE_LENGTH_OF_ARRAY(s_GL_IMG_user_clip_plane),                                                   s_GL_IMG_user_clip_plane                                                        },
1952         { "GL_NV_fence",                                                                                DE_LENGTH_OF_ARRAY(s_GL_NV_fence),                                                                              s_GL_NV_fence                                                                           },
1953         { "GL_OES_EGL_image",                                                                   DE_LENGTH_OF_ARRAY(s_GL_OES_EGL_image),                                                                 s_GL_OES_EGL_image                                                                      },
1954         { "GL_OES_blend_equation_separate",                                             DE_LENGTH_OF_ARRAY(s_GL_OES_blend_equation_separate),                                   s_GL_OES_blend_equation_separate                                        },
1955         { "GL_OES_blend_func_separate",                                                 DE_LENGTH_OF_ARRAY(s_GL_OES_blend_func_separate),                                               s_GL_OES_blend_func_separate                                            },
1956         { "GL_OES_blend_subtract",                                                              DE_LENGTH_OF_ARRAY(s_GL_OES_blend_subtract),                                                    s_GL_OES_blend_subtract                                                         },
1957         { "GL_OES_draw_texture",                                                                DE_LENGTH_OF_ARRAY(s_GL_OES_draw_texture),                                                              s_GL_OES_draw_texture                                                           },
1958         { "GL_OES_fixed_point",                                                                 DE_LENGTH_OF_ARRAY(s_GL_OES_fixed_point),                                                               s_GL_OES_fixed_point                                                            },
1959         { "GL_OES_framebuffer_object",                                                  DE_LENGTH_OF_ARRAY(s_GL_OES_framebuffer_object),                                                s_GL_OES_framebuffer_object                                                     },
1960         { "GL_OES_mapbuffer",                                                                   DE_LENGTH_OF_ARRAY(s_GL_OES_mapbuffer),                                                                 s_GL_OES_mapbuffer                                                                      },
1961         { "GL_OES_matrix_palette",                                                              DE_LENGTH_OF_ARRAY(s_GL_OES_matrix_palette),                                                    s_GL_OES_matrix_palette                                                         },
1962         { "GL_OES_point_size_array",                                                    DE_LENGTH_OF_ARRAY(s_GL_OES_point_size_array),                                                  s_GL_OES_point_size_array                                                       },
1963         { "GL_OES_query_matrix",                                                                DE_LENGTH_OF_ARRAY(s_GL_OES_query_matrix),                                                              s_GL_OES_query_matrix                                                           },
1964         { "GL_OES_single_precision",                                                    DE_LENGTH_OF_ARRAY(s_GL_OES_single_precision),                                                  s_GL_OES_single_precision                                                       },
1965         { "GL_OES_texture_cube_map",                                                    DE_LENGTH_OF_ARRAY(s_GL_OES_texture_cube_map),                                                  s_GL_OES_texture_cube_map                                                       },
1966         { "GL_OES_vertex_array_object",                                                 DE_LENGTH_OF_ARRAY(s_GL_OES_vertex_array_object),                                               s_GL_OES_vertex_array_object                                            },
1967         { "GL_QCOM_driver_control",                                                             DE_LENGTH_OF_ARRAY(s_GL_QCOM_driver_control),                                                   s_GL_QCOM_driver_control                                                        },
1968         { "GL_QCOM_extended_get",                                                               DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get),                                                             s_GL_QCOM_extended_get                                                          },
1969         { "GL_QCOM_extended_get2",                                                              DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get2),                                                    s_GL_QCOM_extended_get2                                                         },
1970         { "GL_QCOM_tiled_rendering",                                                    DE_LENGTH_OF_ARRAY(s_GL_QCOM_tiled_rendering),                                                  s_GL_QCOM_tiled_rendering                                                       },
1971         { "GL_AMD_performance_monitor",                                                 DE_LENGTH_OF_ARRAY(s_GL_AMD_performance_monitor),                                               s_GL_AMD_performance_monitor                                            },
1972         { "GL_ANGLE_framebuffer_blit",                                                  DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_blit),                                                s_GL_ANGLE_framebuffer_blit                                                     },
1973         { "GL_ANGLE_framebuffer_multisample",                                   DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_multisample),                                 s_GL_ANGLE_framebuffer_multisample                                      },
1974         { "GL_ANGLE_instanced_arrays",                                                  DE_LENGTH_OF_ARRAY(s_GL_ANGLE_instanced_arrays),                                                s_GL_ANGLE_instanced_arrays                                                     },
1975         { "GL_ANGLE_translated_shader_source",                                  DE_LENGTH_OF_ARRAY(s_GL_ANGLE_translated_shader_source),                                s_GL_ANGLE_translated_shader_source                                     },
1976         { "GL_EXT_EGL_image_storage",                                                   DE_LENGTH_OF_ARRAY(s_GL_EXT_EGL_image_storage),                                                 s_GL_EXT_EGL_image_storage                                                      },
1977         { "GL_EXT_base_instance",                                                               DE_LENGTH_OF_ARRAY(s_GL_EXT_base_instance),                                                             s_GL_EXT_base_instance                                                          },
1978         { "GL_EXT_blend_func_extended",                                                 DE_LENGTH_OF_ARRAY(s_GL_EXT_blend_func_extended),                                               s_GL_EXT_blend_func_extended                                            },
1979         { "GL_EXT_buffer_storage",                                                              DE_LENGTH_OF_ARRAY(s_GL_EXT_buffer_storage),                                                    s_GL_EXT_buffer_storage                                                         },
1980         { "GL_EXT_clear_texture",                                                               DE_LENGTH_OF_ARRAY(s_GL_EXT_clear_texture),                                                             s_GL_EXT_clear_texture                                                          },
1981         { "GL_EXT_clip_control",                                                                DE_LENGTH_OF_ARRAY(s_GL_EXT_clip_control),                                                              s_GL_EXT_clip_control                                                           },
1982         { "GL_EXT_copy_image",                                                                  DE_LENGTH_OF_ARRAY(s_GL_EXT_copy_image),                                                                s_GL_EXT_copy_image                                                                     },
1983         { "GL_EXT_debug_label",                                                                 DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_label),                                                               s_GL_EXT_debug_label                                                            },
1984         { "GL_EXT_disjoint_timer_query",                                                DE_LENGTH_OF_ARRAY(s_GL_EXT_disjoint_timer_query),                                              s_GL_EXT_disjoint_timer_query                                           },
1985         { "GL_EXT_draw_buffers",                                                                DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers),                                                              s_GL_EXT_draw_buffers                                                           },
1986         { "GL_EXT_draw_buffers_indexed",                                                DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers_indexed),                                              s_GL_EXT_draw_buffers_indexed                                           },
1987         { "GL_EXT_draw_elements_base_vertex",                                   DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_elements_base_vertex),                                 s_GL_EXT_draw_elements_base_vertex                                      },
1988         { "GL_EXT_draw_instanced",                                                              DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_instanced),                                                    s_GL_EXT_draw_instanced                                                         },
1989         { "GL_EXT_draw_transform_feedback",                                             DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_transform_feedback),                                   s_GL_EXT_draw_transform_feedback                                        },
1990         { "GL_EXT_external_buffer",                                                             DE_LENGTH_OF_ARRAY(s_GL_EXT_external_buffer),                                                   s_GL_EXT_external_buffer                                                        },
1991         { "GL_EXT_geometry_shader",                                                             DE_LENGTH_OF_ARRAY(s_GL_EXT_geometry_shader),                                                   s_GL_EXT_geometry_shader                                                        },
1992         { "GL_EXT_instanced_arrays",                                                    DE_LENGTH_OF_ARRAY(s_GL_EXT_instanced_arrays),                                                  s_GL_EXT_instanced_arrays                                                       },
1993         { "GL_EXT_memory_object",                                                               DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object),                                                             s_GL_EXT_memory_object                                                          },
1994         { "GL_EXT_memory_object_fd",                                                    DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_fd),                                                  s_GL_EXT_memory_object_fd                                                       },
1995         { "GL_EXT_memory_object_win32",                                                 DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_win32),                                               s_GL_EXT_memory_object_win32                                            },
1996         { "GL_EXT_multi_draw_indirect",                                                 DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_indirect),                                               s_GL_EXT_multi_draw_indirect                                            },
1997         { "GL_EXT_multiview_draw_buffers",                                              DE_LENGTH_OF_ARRAY(s_GL_EXT_multiview_draw_buffers),                                    s_GL_EXT_multiview_draw_buffers                                         },
1998         { "GL_EXT_occlusion_query_boolean",                                             DE_LENGTH_OF_ARRAY(s_GL_EXT_occlusion_query_boolean),                                   s_GL_EXT_occlusion_query_boolean                                        },
1999         { "GL_EXT_polygon_offset_clamp",                                                DE_LENGTH_OF_ARRAY(s_GL_EXT_polygon_offset_clamp),                                              s_GL_EXT_polygon_offset_clamp                                           },
2000         { "GL_EXT_primitive_bounding_box",                                              DE_LENGTH_OF_ARRAY(s_GL_EXT_primitive_bounding_box),                                    s_GL_EXT_primitive_bounding_box                                         },
2001         { "GL_EXT_raster_multisample",                                                  DE_LENGTH_OF_ARRAY(s_GL_EXT_raster_multisample),                                                s_GL_EXT_raster_multisample                                                     },
2002         { "GL_EXT_semaphore",                                                                   DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore),                                                                 s_GL_EXT_semaphore                                                                      },
2003         { "GL_EXT_semaphore_fd",                                                                DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_fd),                                                              s_GL_EXT_semaphore_fd                                                           },
2004         { "GL_EXT_semaphore_win32",                                                             DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_win32),                                                   s_GL_EXT_semaphore_win32                                                        },
2005         { "GL_EXT_separate_shader_objects",                                             DE_LENGTH_OF_ARRAY(s_GL_EXT_separate_shader_objects),                                   s_GL_EXT_separate_shader_objects                                        },
2006         { "GL_EXT_shader_framebuffer_fetch_non_coherent",               DE_LENGTH_OF_ARRAY(s_GL_EXT_shader_framebuffer_fetch_non_coherent),             s_GL_EXT_shader_framebuffer_fetch_non_coherent          },
2007         { "GL_EXT_shader_pixel_local_storage2",                                 DE_LENGTH_OF_ARRAY(s_GL_EXT_shader_pixel_local_storage2),                               s_GL_EXT_shader_pixel_local_storage2                            },
2008         { "GL_EXT_sparse_texture",                                                              DE_LENGTH_OF_ARRAY(s_GL_EXT_sparse_texture),                                                    s_GL_EXT_sparse_texture                                                         },
2009         { "GL_EXT_tessellation_shader",                                                 DE_LENGTH_OF_ARRAY(s_GL_EXT_tessellation_shader),                                               s_GL_EXT_tessellation_shader                                            },
2010         { "GL_EXT_texture_border_clamp",                                                DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_border_clamp),                                              s_GL_EXT_texture_border_clamp                                           },
2011         { "GL_EXT_texture_buffer",                                                              DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_buffer),                                                    s_GL_EXT_texture_buffer                                                         },
2012         { "GL_EXT_texture_view",                                                                DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_view),                                                              s_GL_EXT_texture_view                                                           },
2013         { "GL_EXT_win32_keyed_mutex",                                                   DE_LENGTH_OF_ARRAY(s_GL_EXT_win32_keyed_mutex),                                                 s_GL_EXT_win32_keyed_mutex                                                      },
2014         { "GL_EXT_window_rectangles",                                                   DE_LENGTH_OF_ARRAY(s_GL_EXT_window_rectangles),                                                 s_GL_EXT_window_rectangles                                                      },
2015         { "GL_IMG_bindless_texture",                                                    DE_LENGTH_OF_ARRAY(s_GL_IMG_bindless_texture),                                                  s_GL_IMG_bindless_texture                                                       },
2016         { "GL_IMG_framebuffer_downsample",                                              DE_LENGTH_OF_ARRAY(s_GL_IMG_framebuffer_downsample),                                    s_GL_IMG_framebuffer_downsample                                         },
2017         { "GL_INTEL_framebuffer_CMAA",                                                  DE_LENGTH_OF_ARRAY(s_GL_INTEL_framebuffer_CMAA),                                                s_GL_INTEL_framebuffer_CMAA                                                     },
2018         { "GL_INTEL_performance_query",                                                 DE_LENGTH_OF_ARRAY(s_GL_INTEL_performance_query),                                               s_GL_INTEL_performance_query                                            },
2019         { "GL_KHR_blend_equation_advanced",                                             DE_LENGTH_OF_ARRAY(s_GL_KHR_blend_equation_advanced),                                   s_GL_KHR_blend_equation_advanced                                        },
2020         { "GL_KHR_debug",                                                                               DE_LENGTH_OF_ARRAY(s_GL_KHR_debug),                                                                             s_GL_KHR_debug                                                                          },
2021         { "GL_KHR_robustness",                                                                  DE_LENGTH_OF_ARRAY(s_GL_KHR_robustness),                                                                s_GL_KHR_robustness                                                                     },
2022         { "GL_KHR_parallel_shader_compile",                                             DE_LENGTH_OF_ARRAY(s_GL_KHR_parallel_shader_compile),                                   s_GL_KHR_parallel_shader_compile                                        },
2023         { "GL_NV_bindless_texture",                                                             DE_LENGTH_OF_ARRAY(s_GL_NV_bindless_texture),                                                   s_GL_NV_bindless_texture                                                        },
2024         { "GL_NV_blend_equation_advanced",                                              DE_LENGTH_OF_ARRAY(s_GL_NV_blend_equation_advanced),                                    s_GL_NV_blend_equation_advanced                                         },
2025         { "GL_NV_clip_space_w_scaling",                                                 DE_LENGTH_OF_ARRAY(s_GL_NV_clip_space_w_scaling),                                               s_GL_NV_clip_space_w_scaling                                            },
2026         { "GL_NV_conditional_render",                                                   DE_LENGTH_OF_ARRAY(s_GL_NV_conditional_render),                                                 s_GL_NV_conditional_render                                                      },
2027         { "GL_NV_conservative_raster",                                                  DE_LENGTH_OF_ARRAY(s_GL_NV_conservative_raster),                                                s_GL_NV_conservative_raster                                                     },
2028         { "GL_NV_conservative_raster_pre_snap_triangles",               DE_LENGTH_OF_ARRAY(s_GL_NV_conservative_raster_pre_snap_triangles),             s_GL_NV_conservative_raster_pre_snap_triangles          },
2029         { "GL_NV_copy_buffer",                                                                  DE_LENGTH_OF_ARRAY(s_GL_NV_copy_buffer),                                                                s_GL_NV_copy_buffer                                                                     },
2030         { "GL_NV_coverage_sample",                                                              DE_LENGTH_OF_ARRAY(s_GL_NV_coverage_sample),                                                    s_GL_NV_coverage_sample                                                         },
2031         { "GL_NV_draw_buffers",                                                                 DE_LENGTH_OF_ARRAY(s_GL_NV_draw_buffers),                                                               s_GL_NV_draw_buffers                                                            },
2032         { "GL_NV_draw_instanced",                                                               DE_LENGTH_OF_ARRAY(s_GL_NV_draw_instanced),                                                             s_GL_NV_draw_instanced                                                          },
2033         { "GL_NV_draw_vulkan_image",                                                    DE_LENGTH_OF_ARRAY(s_GL_NV_draw_vulkan_image),                                                  s_GL_NV_draw_vulkan_image                                                       },
2034         { "GL_NV_fragment_coverage_to_color",                                   DE_LENGTH_OF_ARRAY(s_GL_NV_fragment_coverage_to_color),                                 s_GL_NV_fragment_coverage_to_color                                      },
2035         { "GL_NV_framebuffer_blit",                                                             DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_blit),                                                   s_GL_NV_framebuffer_blit                                                        },
2036         { "GL_NV_framebuffer_mixed_samples",                                    DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_mixed_samples),                                  s_GL_NV_framebuffer_mixed_samples                                       },
2037         { "GL_NV_framebuffer_multisample",                                              DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_multisample),                                    s_GL_NV_framebuffer_multisample                                         },
2038         { "GL_NV_gpu_shader5",                                                                  DE_LENGTH_OF_ARRAY(s_GL_NV_gpu_shader5),                                                                s_GL_NV_gpu_shader5                                                                     },
2039         { "GL_NV_instanced_arrays",                                                             DE_LENGTH_OF_ARRAY(s_GL_NV_instanced_arrays),                                                   s_GL_NV_instanced_arrays                                                        },
2040         { "GL_NV_internalformat_sample_query",                                  DE_LENGTH_OF_ARRAY(s_GL_NV_internalformat_sample_query),                                s_GL_NV_internalformat_sample_query                                     },
2041         { "GL_NV_non_square_matrices",                                                  DE_LENGTH_OF_ARRAY(s_GL_NV_non_square_matrices),                                                s_GL_NV_non_square_matrices                                                     },
2042         { "GL_NV_path_rendering",                                                               DE_LENGTH_OF_ARRAY(s_GL_NV_path_rendering),                                                             s_GL_NV_path_rendering                                                          },
2043         { "GL_NV_polygon_mode",                                                                 DE_LENGTH_OF_ARRAY(s_GL_NV_polygon_mode),                                                               s_GL_NV_polygon_mode                                                            },
2044         { "GL_NV_read_buffer",                                                                  DE_LENGTH_OF_ARRAY(s_GL_NV_read_buffer),                                                                s_GL_NV_read_buffer                                                                     },
2045         { "GL_NV_sample_locations",                                                             DE_LENGTH_OF_ARRAY(s_GL_NV_sample_locations),                                                   s_GL_NV_sample_locations                                                        },
2046         { "GL_NV_viewport_array",                                                               DE_LENGTH_OF_ARRAY(s_GL_NV_viewport_array),                                                             s_GL_NV_viewport_array                                                          },
2047         { "GL_NV_viewport_swizzle",                                                             DE_LENGTH_OF_ARRAY(s_GL_NV_viewport_swizzle),                                                   s_GL_NV_viewport_swizzle                                                        },
2048         { "GL_OES_copy_image",                                                                  DE_LENGTH_OF_ARRAY(s_GL_OES_copy_image),                                                                s_GL_OES_copy_image                                                                     },
2049         { "GL_OES_draw_buffers_indexed",                                                DE_LENGTH_OF_ARRAY(s_GL_OES_draw_buffers_indexed),                                              s_GL_OES_draw_buffers_indexed                                           },
2050         { "GL_OES_draw_elements_base_vertex",                                   DE_LENGTH_OF_ARRAY(s_GL_OES_draw_elements_base_vertex),                                 s_GL_OES_draw_elements_base_vertex                                      },
2051         { "GL_OES_geometry_shader",                                                             DE_LENGTH_OF_ARRAY(s_GL_OES_geometry_shader),                                                   s_GL_OES_geometry_shader                                                        },
2052         { "GL_OES_get_program_binary",                                                  DE_LENGTH_OF_ARRAY(s_GL_OES_get_program_binary),                                                s_GL_OES_get_program_binary                                                     },
2053         { "GL_OES_primitive_bounding_box",                                              DE_LENGTH_OF_ARRAY(s_GL_OES_primitive_bounding_box),                                    s_GL_OES_primitive_bounding_box                                         },
2054         { "GL_OES_sample_shading",                                                              DE_LENGTH_OF_ARRAY(s_GL_OES_sample_shading),                                                    s_GL_OES_sample_shading                                                         },
2055         { "GL_OES_tessellation_shader",                                                 DE_LENGTH_OF_ARRAY(s_GL_OES_tessellation_shader),                                               s_GL_OES_tessellation_shader                                            },
2056         { "GL_OES_texture_3D",                                                                  DE_LENGTH_OF_ARRAY(s_GL_OES_texture_3D),                                                                s_GL_OES_texture_3D                                                                     },
2057         { "GL_OES_texture_border_clamp",                                                DE_LENGTH_OF_ARRAY(s_GL_OES_texture_border_clamp),                                              s_GL_OES_texture_border_clamp                                           },
2058         { "GL_OES_texture_buffer",                                                              DE_LENGTH_OF_ARRAY(s_GL_OES_texture_buffer),                                                    s_GL_OES_texture_buffer                                                         },
2059         { "GL_OES_texture_storage_multisample_2d_array",                DE_LENGTH_OF_ARRAY(s_GL_OES_texture_storage_multisample_2d_array),              s_GL_OES_texture_storage_multisample_2d_array           },
2060         { "GL_OES_texture_view",                                                                DE_LENGTH_OF_ARRAY(s_GL_OES_texture_view),                                                              s_GL_OES_texture_view                                                           },
2061         { "GL_OES_viewport_array",                                                              DE_LENGTH_OF_ARRAY(s_GL_OES_viewport_array),                                                    s_GL_OES_viewport_array                                                         },
2062         { "GL_OVR_multiview",                                                                   DE_LENGTH_OF_ARRAY(s_GL_OVR_multiview),                                                                 s_GL_OVR_multiview                                                                      },
2063         { "GL_OVR_multiview_multisampled_render_to_texture",    DE_LENGTH_OF_ARRAY(s_GL_OVR_multiview_multisampled_render_to_texture),  s_GL_OVR_multiview_multisampled_render_to_texture       },
2064         { "GL_QCOM_alpha_test",                                                                 DE_LENGTH_OF_ARRAY(s_GL_QCOM_alpha_test),                                                               s_GL_QCOM_alpha_test                                                            },
2065         { "GL_QCOM_framebuffer_foveated",                                               DE_LENGTH_OF_ARRAY(s_GL_QCOM_framebuffer_foveated),                                             s_GL_QCOM_framebuffer_foveated                                          },
2066         { "GL_QCOM_texture_foveated",                                                   DE_LENGTH_OF_ARRAY(s_GL_QCOM_texture_foveated),                                                 s_GL_QCOM_texture_foveated                                                      },
2067         { "GL_QCOM_shader_framebuffer_fetch_noncoherent",               DE_LENGTH_OF_ARRAY(s_GL_QCOM_shader_framebuffer_fetch_noncoherent),             s_GL_QCOM_shader_framebuffer_fetch_noncoherent          },
2068 };