am a5bb49f3: am 8f5780a5: Merge "Remove broken line interpolation tests from MR1...
[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 28861.
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_GLES10[] =
46 {
47         "glActiveTexture",
48         "glAlphaFunc",
49         "glAlphaFuncx",
50         "glBindBuffer",
51         "glBindTexture",
52         "glBlendFunc",
53         "glBufferData",
54         "glBufferSubData",
55         "glClear",
56         "glClearColor",
57         "glClearColorx",
58         "glClearDepthf",
59         "glClearDepthx",
60         "glClearStencil",
61         "glClientActiveTexture",
62         "glClipPlanef",
63         "glClipPlanex",
64         "glColor4f",
65         "glColor4ub",
66         "glColor4x",
67         "glColorMask",
68         "glColorPointer",
69         "glCompressedTexImage2D",
70         "glCompressedTexSubImage2D",
71         "glCopyTexImage2D",
72         "glCopyTexSubImage2D",
73         "glCullFace",
74         "glDeleteBuffers",
75         "glDeleteTextures",
76         "glDepthFunc",
77         "glDepthMask",
78         "glDepthRangef",
79         "glDepthRangex",
80         "glDisable",
81         "glDisableClientState",
82         "glDrawArrays",
83         "glDrawElements",
84         "glEnable",
85         "glEnableClientState",
86         "glFinish",
87         "glFlush",
88         "glFogf",
89         "glFogfv",
90         "glFogx",
91         "glFogxv",
92         "glFrontFace",
93         "glFrustumf",
94         "glFrustumx",
95         "glGenBuffers",
96         "glGenTextures",
97         "glGetBooleanv",
98         "glGetBufferParameteriv",
99         "glGetClipPlanef",
100         "glGetClipPlanex",
101         "glGetError",
102         "glGetFixedv",
103         "glGetFloatv",
104         "glGetIntegerv",
105         "glGetLightfv",
106         "glGetLightxv",
107         "glGetMaterialfv",
108         "glGetMaterialxv",
109         "glGetPointerv",
110         "glGetString",
111         "glGetTexEnvfv",
112         "glGetTexEnviv",
113         "glGetTexEnvxv",
114         "glGetTexParameterfv",
115         "glGetTexParameteriv",
116         "glGetTexParameterxv",
117         "glHint",
118         "glIsBuffer",
119         "glIsEnabled",
120         "glIsTexture",
121         "glLightModelf",
122         "glLightModelfv",
123         "glLightModelx",
124         "glLightModelxv",
125         "glLightf",
126         "glLightfv",
127         "glLightx",
128         "glLightxv",
129         "glLineWidth",
130         "glLineWidthx",
131         "glLoadIdentity",
132         "glLoadMatrixf",
133         "glLoadMatrixx",
134         "glLogicOp",
135         "glMaterialf",
136         "glMaterialfv",
137         "glMaterialx",
138         "glMaterialxv",
139         "glMatrixMode",
140         "glMultMatrixf",
141         "glMultMatrixx",
142         "glMultiTexCoord4f",
143         "glMultiTexCoord4x",
144         "glNormal3f",
145         "glNormal3x",
146         "glNormalPointer",
147         "glOrthof",
148         "glOrthox",
149         "glPixelStorei",
150         "glPointParameterf",
151         "glPointParameterfv",
152         "glPointParameterx",
153         "glPointParameterxv",
154         "glPointSize",
155         "glPointSizex",
156         "glPolygonOffset",
157         "glPolygonOffsetx",
158         "glPopMatrix",
159         "glPushMatrix",
160         "glReadPixels",
161         "glRotatef",
162         "glRotatex",
163         "glSampleCoverage",
164         "glSampleCoveragex",
165         "glScalef",
166         "glScalex",
167         "glScissor",
168         "glShadeModel",
169         "glStencilFunc",
170         "glStencilMask",
171         "glStencilOp",
172         "glTexCoordPointer",
173         "glTexEnvf",
174         "glTexEnvfv",
175         "glTexEnvi",
176         "glTexEnviv",
177         "glTexEnvx",
178         "glTexEnvxv",
179         "glTexImage2D",
180         "glTexParameterf",
181         "glTexParameterfv",
182         "glTexParameteri",
183         "glTexParameteriv",
184         "glTexParameterx",
185         "glTexParameterxv",
186         "glTexSubImage2D",
187         "glTranslatef",
188         "glTranslatex",
189         "glVertexPointer",
190         "glViewport",
191 };
192
193 static const char* s_GLES20[] =
194 {
195         "glActiveTexture",
196         "glAttachShader",
197         "glBindAttribLocation",
198         "glBindBuffer",
199         "glBindFramebuffer",
200         "glBindRenderbuffer",
201         "glBindTexture",
202         "glBlendColor",
203         "glBlendEquation",
204         "glBlendEquationSeparate",
205         "glBlendFunc",
206         "glBlendFuncSeparate",
207         "glBufferData",
208         "glBufferSubData",
209         "glCheckFramebufferStatus",
210         "glClear",
211         "glClearColor",
212         "glClearDepthf",
213         "glClearStencil",
214         "glColorMask",
215         "glCompileShader",
216         "glCompressedTexImage2D",
217         "glCompressedTexSubImage2D",
218         "glCopyTexImage2D",
219         "glCopyTexSubImage2D",
220         "glCreateProgram",
221         "glCreateShader",
222         "glCullFace",
223         "glDeleteBuffers",
224         "glDeleteFramebuffers",
225         "glDeleteProgram",
226         "glDeleteRenderbuffers",
227         "glDeleteShader",
228         "glDeleteTextures",
229         "glDepthFunc",
230         "glDepthMask",
231         "glDepthRangef",
232         "glDetachShader",
233         "glDisable",
234         "glDisableVertexAttribArray",
235         "glDrawArrays",
236         "glDrawElements",
237         "glEnable",
238         "glEnableVertexAttribArray",
239         "glFinish",
240         "glFlush",
241         "glFramebufferRenderbuffer",
242         "glFramebufferTexture2D",
243         "glFrontFace",
244         "glGenBuffers",
245         "glGenFramebuffers",
246         "glGenRenderbuffers",
247         "glGenTextures",
248         "glGenerateMipmap",
249         "glGetActiveAttrib",
250         "glGetActiveUniform",
251         "glGetAttachedShaders",
252         "glGetAttribLocation",
253         "glGetBooleanv",
254         "glGetBufferParameteriv",
255         "glGetError",
256         "glGetFloatv",
257         "glGetFramebufferAttachmentParameteriv",
258         "glGetIntegerv",
259         "glGetProgramInfoLog",
260         "glGetProgramiv",
261         "glGetRenderbufferParameteriv",
262         "glGetShaderInfoLog",
263         "glGetShaderPrecisionFormat",
264         "glGetShaderSource",
265         "glGetShaderiv",
266         "glGetString",
267         "glGetTexParameterfv",
268         "glGetTexParameteriv",
269         "glGetUniformLocation",
270         "glGetUniformfv",
271         "glGetUniformiv",
272         "glGetVertexAttribPointerv",
273         "glGetVertexAttribfv",
274         "glGetVertexAttribiv",
275         "glHint",
276         "glIsBuffer",
277         "glIsEnabled",
278         "glIsFramebuffer",
279         "glIsProgram",
280         "glIsRenderbuffer",
281         "glIsShader",
282         "glIsTexture",
283         "glLineWidth",
284         "glLinkProgram",
285         "glPixelStorei",
286         "glPolygonOffset",
287         "glReadPixels",
288         "glReleaseShaderCompiler",
289         "glRenderbufferStorage",
290         "glSampleCoverage",
291         "glScissor",
292         "glShaderBinary",
293         "glShaderSource",
294         "glStencilFunc",
295         "glStencilFuncSeparate",
296         "glStencilMask",
297         "glStencilMaskSeparate",
298         "glStencilOp",
299         "glStencilOpSeparate",
300         "glTexImage2D",
301         "glTexParameterf",
302         "glTexParameterfv",
303         "glTexParameteri",
304         "glTexParameteriv",
305         "glTexSubImage2D",
306         "glUniform1f",
307         "glUniform1fv",
308         "glUniform1i",
309         "glUniform1iv",
310         "glUniform2f",
311         "glUniform2fv",
312         "glUniform2i",
313         "glUniform2iv",
314         "glUniform3f",
315         "glUniform3fv",
316         "glUniform3i",
317         "glUniform3iv",
318         "glUniform4f",
319         "glUniform4fv",
320         "glUniform4i",
321         "glUniform4iv",
322         "glUniformMatrix2fv",
323         "glUniformMatrix3fv",
324         "glUniformMatrix4fv",
325         "glUseProgram",
326         "glValidateProgram",
327         "glVertexAttrib1f",
328         "glVertexAttrib1fv",
329         "glVertexAttrib2f",
330         "glVertexAttrib2fv",
331         "glVertexAttrib3f",
332         "glVertexAttrib3fv",
333         "glVertexAttrib4f",
334         "glVertexAttrib4fv",
335         "glVertexAttribPointer",
336         "glViewport",
337 };
338
339 static const char* s_GLES30[] =
340 {
341         "glBeginQuery",
342         "glBeginTransformFeedback",
343         "glBindBufferBase",
344         "glBindBufferRange",
345         "glBindSampler",
346         "glBindTransformFeedback",
347         "glBindVertexArray",
348         "glBlitFramebuffer",
349         "glClearBufferfi",
350         "glClearBufferfv",
351         "glClearBufferiv",
352         "glClearBufferuiv",
353         "glClientWaitSync",
354         "glCompressedTexImage3D",
355         "glCompressedTexSubImage3D",
356         "glCopyBufferSubData",
357         "glCopyTexSubImage3D",
358         "glDeleteQueries",
359         "glDeleteSamplers",
360         "glDeleteSync",
361         "glDeleteTransformFeedbacks",
362         "glDeleteVertexArrays",
363         "glDrawArraysInstanced",
364         "glDrawBuffers",
365         "glDrawElementsInstanced",
366         "glDrawRangeElements",
367         "glEndQuery",
368         "glEndTransformFeedback",
369         "glFenceSync",
370         "glFlushMappedBufferRange",
371         "glFramebufferTextureLayer",
372         "glGenQueries",
373         "glGenSamplers",
374         "glGenTransformFeedbacks",
375         "glGenVertexArrays",
376         "glGetActiveUniformBlockName",
377         "glGetActiveUniformBlockiv",
378         "glGetActiveUniformsiv",
379         "glGetBufferParameteri64v",
380         "glGetBufferPointerv",
381         "glGetFragDataLocation",
382         "glGetInteger64i_v",
383         "glGetInteger64v",
384         "glGetIntegeri_v",
385         "glGetInternalformativ",
386         "glGetProgramBinary",
387         "glGetQueryObjectuiv",
388         "glGetQueryiv",
389         "glGetSamplerParameterfv",
390         "glGetSamplerParameteriv",
391         "glGetStringi",
392         "glGetSynciv",
393         "glGetTransformFeedbackVarying",
394         "glGetUniformBlockIndex",
395         "glGetUniformIndices",
396         "glGetUniformuiv",
397         "glGetVertexAttribIiv",
398         "glGetVertexAttribIuiv",
399         "glInvalidateFramebuffer",
400         "glInvalidateSubFramebuffer",
401         "glIsQuery",
402         "glIsSampler",
403         "glIsSync",
404         "glIsTransformFeedback",
405         "glIsVertexArray",
406         "glMapBufferRange",
407         "glPauseTransformFeedback",
408         "glProgramBinary",
409         "glProgramParameteri",
410         "glReadBuffer",
411         "glRenderbufferStorageMultisample",
412         "glResumeTransformFeedback",
413         "glSamplerParameterf",
414         "glSamplerParameterfv",
415         "glSamplerParameteri",
416         "glSamplerParameteriv",
417         "glTexImage3D",
418         "glTexStorage2D",
419         "glTexStorage3D",
420         "glTexSubImage3D",
421         "glTransformFeedbackVaryings",
422         "glUniform1ui",
423         "glUniform1uiv",
424         "glUniform2ui",
425         "glUniform2uiv",
426         "glUniform3ui",
427         "glUniform3uiv",
428         "glUniform4ui",
429         "glUniform4uiv",
430         "glUniformBlockBinding",
431         "glUniformMatrix2x3fv",
432         "glUniformMatrix2x4fv",
433         "glUniformMatrix3x2fv",
434         "glUniformMatrix3x4fv",
435         "glUniformMatrix4x2fv",
436         "glUniformMatrix4x3fv",
437         "glUnmapBuffer",
438         "glVertexAttribDivisor",
439         "glVertexAttribI4i",
440         "glVertexAttribI4iv",
441         "glVertexAttribI4ui",
442         "glVertexAttribI4uiv",
443         "glVertexAttribIPointer",
444         "glWaitSync",
445 };
446
447 static const char* s_EGL_ANDROID_blob_cache[] =
448 {
449         "eglSetBlobCacheFuncsANDROID",
450 };
451
452 static const char* s_EGL_ANDROID_native_fence_sync[] =
453 {
454         "eglDupNativeFenceFDANDROID",
455 };
456
457 static const char* s_EGL_ANGLE_query_surface_pointer[] =
458 {
459         "eglQuerySurfacePointerANGLE",
460 };
461
462 static const char* s_EGL_EXT_device_base[] =
463 {
464         "eglQueryDeviceAttribEXT",
465         "eglQueryDeviceStringEXT",
466         "eglQueryDevicesEXT",
467         "eglQueryDisplayAttribEXT",
468 };
469
470 static const char* s_EGL_EXT_output_base[] =
471 {
472         "eglGetOutputLayersEXT",
473         "eglGetOutputPortsEXT",
474         "eglOutputLayerAttribEXT",
475         "eglOutputPortAttribEXT",
476         "eglQueryOutputLayerAttribEXT",
477         "eglQueryOutputLayerStringEXT",
478         "eglQueryOutputPortAttribEXT",
479         "eglQueryOutputPortStringEXT",
480 };
481
482 static const char* s_EGL_EXT_platform_base[] =
483 {
484         "eglCreatePlatformPixmapSurfaceEXT",
485         "eglCreatePlatformWindowSurfaceEXT",
486         "eglGetPlatformDisplayEXT",
487 };
488
489 static const char* s_EGL_EXT_stream_consumer_egloutput[] =
490 {
491         "eglStreamConsumerOutputEXT",
492 };
493
494 static const char* s_EGL_EXT_swap_buffers_with_damage[] =
495 {
496         "eglSwapBuffersWithDamageEXT",
497 };
498
499 static const char* s_EGL_HI_clientpixmap[] =
500 {
501         "eglCreatePixmapSurfaceHI",
502 };
503
504 static const char* s_EGL_KHR_cl_event2[] =
505 {
506         "eglCreateSync64KHR",
507 };
508
509 static const char* s_EGL_KHR_image[] =
510 {
511         "eglCreateImageKHR",
512         "eglDestroyImageKHR",
513 };
514
515 static const char* s_EGL_KHR_image_base[] =
516 {
517         "eglCreateImageKHR",
518         "eglDestroyImageKHR",
519 };
520
521 static const char* s_EGL_KHR_lock_surface[] =
522 {
523         "eglLockSurfaceKHR",
524         "eglUnlockSurfaceKHR",
525 };
526
527 static const char* s_EGL_KHR_lock_surface3[] =
528 {
529         "eglLockSurfaceKHR",
530         "eglQuerySurface64KHR",
531         "eglUnlockSurfaceKHR",
532 };
533
534 static const char* s_EGL_KHR_reusable_sync[] =
535 {
536         "eglClientWaitSyncKHR",
537         "eglCreateSyncKHR",
538         "eglDestroySyncKHR",
539         "eglGetSyncAttribKHR",
540         "eglSignalSyncKHR",
541 };
542
543 static const char* s_EGL_KHR_stream[] =
544 {
545         "eglCreateStreamKHR",
546         "eglDestroyStreamKHR",
547         "eglQueryStreamKHR",
548         "eglQueryStreamu64KHR",
549         "eglStreamAttribKHR",
550 };
551
552 static const char* s_EGL_KHR_stream_consumer_gltexture[] =
553 {
554         "eglStreamConsumerAcquireKHR",
555         "eglStreamConsumerGLTextureExternalKHR",
556         "eglStreamConsumerReleaseKHR",
557 };
558
559 static const char* s_EGL_KHR_stream_cross_process_fd[] =
560 {
561         "eglCreateStreamFromFileDescriptorKHR",
562         "eglGetStreamFileDescriptorKHR",
563 };
564
565 static const char* s_EGL_KHR_stream_fifo[] =
566 {
567         "eglQueryStreamTimeKHR",
568 };
569
570 static const char* s_EGL_KHR_stream_producer_eglsurface[] =
571 {
572         "eglCreateStreamProducerSurfaceKHR",
573 };
574
575 static const char* s_EGL_KHR_wait_sync[] =
576 {
577         "eglWaitSyncKHR",
578 };
579
580 static const char* s_EGL_MESA_drm_image[] =
581 {
582         "eglCreateDRMImageMESA",
583         "eglExportDRMImageMESA",
584 };
585
586 static const char* s_EGL_NOK_swap_region[] =
587 {
588         "eglSwapBuffersRegionNOK",
589 };
590
591 static const char* s_EGL_NOK_swap_region2[] =
592 {
593         "eglSwapBuffersRegion2NOK",
594 };
595
596 static const char* s_EGL_NV_native_query[] =
597 {
598         "eglQueryNativeDisplayNV",
599         "eglQueryNativePixmapNV",
600         "eglQueryNativeWindowNV",
601 };
602
603 static const char* s_EGL_NV_post_sub_buffer[] =
604 {
605         "eglPostSubBufferNV",
606 };
607
608 static const char* s_EGL_NV_stream_sync[] =
609 {
610         "eglCreateStreamSyncNV",
611 };
612
613 static const char* s_EGL_NV_sync[] =
614 {
615         "eglClientWaitSyncNV",
616         "eglCreateFenceSyncNV",
617         "eglDestroySyncNV",
618         "eglFenceNV",
619         "eglGetSyncAttribNV",
620         "eglSignalSyncNV",
621 };
622
623 static const char* s_EGL_NV_system_time[] =
624 {
625         "eglGetSystemTimeFrequencyNV",
626         "eglGetSystemTimeNV",
627 };
628
629 static const char* s_GL_APPLE_copy_texture_levels[] =
630 {
631         "glCopyTextureLevelsAPPLE",
632 };
633
634 static const char* s_GL_APPLE_framebuffer_multisample[] =
635 {
636         "glRenderbufferStorageMultisampleAPPLE",
637         "glResolveMultisampleFramebufferAPPLE",
638 };
639
640 static const char* s_GL_APPLE_sync[] =
641 {
642         "glClientWaitSyncAPPLE",
643         "glDeleteSyncAPPLE",
644         "glFenceSyncAPPLE",
645         "glGetInteger64vAPPLE",
646         "glGetSyncivAPPLE",
647         "glIsSyncAPPLE",
648         "glWaitSyncAPPLE",
649 };
650
651 static const char* s_GL_EXT_discard_framebuffer[] =
652 {
653         "glDiscardFramebufferEXT",
654 };
655
656 static const char* s_GL_EXT_map_buffer_range[] =
657 {
658         "glFlushMappedBufferRangeEXT",
659         "glMapBufferRangeEXT",
660 };
661
662 static const char* s_GL_EXT_multi_draw_arrays[] =
663 {
664         "glMultiDrawArraysEXT",
665         "glMultiDrawElementsEXT",
666 };
667
668 static const char* s_GL_EXT_multisampled_render_to_texture[] =
669 {
670         "glFramebufferTexture2DMultisampleEXT",
671         "glRenderbufferStorageMultisampleEXT",
672 };
673
674 static const char* s_GL_EXT_robustness[] =
675 {
676         "glGetGraphicsResetStatusEXT",
677         "glGetnUniformfvEXT",
678         "glGetnUniformivEXT",
679         "glReadnPixelsEXT",
680 };
681
682 static const char* s_GL_EXT_texture_storage[] =
683 {
684         "glTexStorage1DEXT",
685         "glTexStorage2DEXT",
686         "glTexStorage3DEXT",
687         "glTextureStorage1DEXT",
688         "glTextureStorage2DEXT",
689         "glTextureStorage3DEXT",
690 };
691
692 static const char* s_GL_IMG_multisampled_render_to_texture[] =
693 {
694         "glFramebufferTexture2DMultisampleIMG",
695         "glRenderbufferStorageMultisampleIMG",
696 };
697
698 static const char* s_GL_IMG_user_clip_plane[] =
699 {
700         "glClipPlanefIMG",
701         "glClipPlanexIMG",
702 };
703
704 static const char* s_GL_NV_fence[] =
705 {
706         "glDeleteFencesNV",
707         "glFinishFenceNV",
708         "glGenFencesNV",
709         "glGetFenceivNV",
710         "glIsFenceNV",
711         "glSetFenceNV",
712         "glTestFenceNV",
713 };
714
715 static const char* s_GL_OES_EGL_image[] =
716 {
717         "glEGLImageTargetRenderbufferStorageOES",
718         "glEGLImageTargetTexture2DOES",
719 };
720
721 static const char* s_GL_OES_blend_equation_separate[] =
722 {
723         "glBlendEquationSeparateOES",
724 };
725
726 static const char* s_GL_OES_blend_func_separate[] =
727 {
728         "glBlendFuncSeparateOES",
729 };
730
731 static const char* s_GL_OES_blend_subtract[] =
732 {
733         "glBlendEquationOES",
734 };
735
736 static const char* s_GL_OES_draw_texture[] =
737 {
738         "glDrawTexfOES",
739         "glDrawTexfvOES",
740         "glDrawTexiOES",
741         "glDrawTexivOES",
742         "glDrawTexsOES",
743         "glDrawTexsvOES",
744         "glDrawTexxOES",
745         "glDrawTexxvOES",
746 };
747
748 static const char* s_GL_OES_fixed_point[] =
749 {
750         "glAlphaFuncxOES",
751         "glClearColorxOES",
752         "glClearDepthxOES",
753         "glClipPlanexOES",
754         "glColor4xOES",
755         "glDepthRangexOES",
756         "glFogxOES",
757         "glFogxvOES",
758         "glFrustumxOES",
759         "glGetClipPlanexOES",
760         "glGetFixedvOES",
761         "glGetLightxvOES",
762         "glGetMaterialxvOES",
763         "glGetTexEnvxvOES",
764         "glGetTexParameterxvOES",
765         "glLightModelxOES",
766         "glLightModelxvOES",
767         "glLightxOES",
768         "glLightxvOES",
769         "glLineWidthxOES",
770         "glLoadMatrixxOES",
771         "glMaterialxOES",
772         "glMaterialxvOES",
773         "glMultMatrixxOES",
774         "glMultiTexCoord4xOES",
775         "glNormal3xOES",
776         "glOrthoxOES",
777         "glPointParameterxOES",
778         "glPointParameterxvOES",
779         "glPointSizexOES",
780         "glPolygonOffsetxOES",
781         "glRotatexOES",
782         "glSampleCoverageOES",
783         "glSampleCoveragexOES",
784         "glScalexOES",
785         "glTexEnvxOES",
786         "glTexEnvxvOES",
787         "glTexParameterxOES",
788         "glTexParameterxvOES",
789         "glTranslatexOES",
790 };
791
792 static const char* s_GL_OES_framebuffer_object[] =
793 {
794         "glBindFramebufferOES",
795         "glBindRenderbufferOES",
796         "glCheckFramebufferStatusOES",
797         "glDeleteFramebuffersOES",
798         "glDeleteRenderbuffersOES",
799         "glFramebufferRenderbufferOES",
800         "glFramebufferTexture2DOES",
801         "glGenFramebuffersOES",
802         "glGenRenderbuffersOES",
803         "glGenerateMipmapOES",
804         "glGetFramebufferAttachmentParameterivOES",
805         "glGetRenderbufferParameterivOES",
806         "glIsFramebufferOES",
807         "glIsRenderbufferOES",
808         "glRenderbufferStorageOES",
809 };
810
811 static const char* s_GL_OES_mapbuffer[] =
812 {
813         "glGetBufferPointervOES",
814         "glMapBufferOES",
815         "glUnmapBufferOES",
816 };
817
818 static const char* s_GL_OES_matrix_palette[] =
819 {
820         "glCurrentPaletteMatrixOES",
821         "glLoadPaletteFromModelViewMatrixOES",
822         "glMatrixIndexPointerOES",
823         "glWeightPointerOES",
824 };
825
826 static const char* s_GL_OES_point_size_array[] =
827 {
828         "glPointSizePointerOES",
829 };
830
831 static const char* s_GL_OES_query_matrix[] =
832 {
833         "glQueryMatrixxOES",
834 };
835
836 static const char* s_GL_OES_single_precision[] =
837 {
838         "glClearDepthfOES",
839         "glClipPlanefOES",
840         "glDepthRangefOES",
841         "glFrustumfOES",
842         "glGetClipPlanefOES",
843         "glOrthofOES",
844 };
845
846 static const char* s_GL_OES_texture_cube_map[] =
847 {
848         "glGetTexGenfvOES",
849         "glGetTexGenivOES",
850         "glGetTexGenxvOES",
851         "glTexGenfOES",
852         "glTexGenfvOES",
853         "glTexGeniOES",
854         "glTexGenivOES",
855         "glTexGenxOES",
856         "glTexGenxvOES",
857 };
858
859 static const char* s_GL_OES_vertex_array_object[] =
860 {
861         "glBindVertexArrayOES",
862         "glDeleteVertexArraysOES",
863         "glGenVertexArraysOES",
864         "glIsVertexArrayOES",
865 };
866
867 static const char* s_GL_QCOM_driver_control[] =
868 {
869         "glDisableDriverControlQCOM",
870         "glEnableDriverControlQCOM",
871         "glGetDriverControlStringQCOM",
872         "glGetDriverControlsQCOM",
873 };
874
875 static const char* s_GL_QCOM_extended_get[] =
876 {
877         "glExtGetBufferPointervQCOM",
878         "glExtGetBuffersQCOM",
879         "glExtGetFramebuffersQCOM",
880         "glExtGetRenderbuffersQCOM",
881         "glExtGetTexLevelParameterivQCOM",
882         "glExtGetTexSubImageQCOM",
883         "glExtGetTexturesQCOM",
884         "glExtTexObjectStateOverrideiQCOM",
885 };
886
887 static const char* s_GL_QCOM_extended_get2[] =
888 {
889         "glExtGetProgramBinarySourceQCOM",
890         "glExtGetProgramsQCOM",
891         "glExtGetShadersQCOM",
892         "glExtIsProgramBinaryQCOM",
893 };
894
895 static const char* s_GL_QCOM_tiled_rendering[] =
896 {
897         "glEndTilingQCOM",
898         "glStartTilingQCOM",
899 };
900
901 static const char* s_GL_AMD_performance_monitor[] =
902 {
903         "glBeginPerfMonitorAMD",
904         "glDeletePerfMonitorsAMD",
905         "glEndPerfMonitorAMD",
906         "glGenPerfMonitorsAMD",
907         "glGetPerfMonitorCounterDataAMD",
908         "glGetPerfMonitorCounterInfoAMD",
909         "glGetPerfMonitorCounterStringAMD",
910         "glGetPerfMonitorCountersAMD",
911         "glGetPerfMonitorGroupStringAMD",
912         "glGetPerfMonitorGroupsAMD",
913         "glSelectPerfMonitorCountersAMD",
914 };
915
916 static const char* s_GL_ANGLE_framebuffer_blit[] =
917 {
918         "glBlitFramebufferANGLE",
919 };
920
921 static const char* s_GL_ANGLE_framebuffer_multisample[] =
922 {
923         "glRenderbufferStorageMultisampleANGLE",
924 };
925
926 static const char* s_GL_ANGLE_instanced_arrays[] =
927 {
928         "glDrawArraysInstancedANGLE",
929         "glDrawElementsInstancedANGLE",
930         "glVertexAttribDivisorANGLE",
931 };
932
933 static const char* s_GL_ANGLE_translated_shader_source[] =
934 {
935         "glGetTranslatedShaderSourceANGLE",
936 };
937
938 static const char* s_GL_EXT_copy_image[] =
939 {
940         "glCopyImageSubDataEXT",
941 };
942
943 static const char* s_GL_EXT_debug_label[] =
944 {
945         "glGetObjectLabelEXT",
946         "glLabelObjectEXT",
947 };
948
949 static const char* s_GL_EXT_debug_marker[] =
950 {
951         "glInsertEventMarkerEXT",
952         "glPopGroupMarkerEXT",
953         "glPushGroupMarkerEXT",
954 };
955
956 static const char* s_GL_EXT_disjoint_timer_query[] =
957 {
958         "glBeginQueryEXT",
959         "glDeleteQueriesEXT",
960         "glEndQueryEXT",
961         "glGenQueriesEXT",
962         "glGetQueryObjecti64vEXT",
963         "glGetQueryObjectivEXT",
964         "glGetQueryObjectui64vEXT",
965         "glGetQueryObjectuivEXT",
966         "glGetQueryivEXT",
967         "glIsQueryEXT",
968         "glQueryCounterEXT",
969 };
970
971 static const char* s_GL_EXT_draw_buffers[] =
972 {
973         "glDrawBuffersEXT",
974 };
975
976 static const char* s_GL_EXT_draw_buffers_indexed[] =
977 {
978         "glBlendEquationSeparateiEXT",
979         "glBlendEquationiEXT",
980         "glBlendFuncSeparateiEXT",
981         "glBlendFunciEXT",
982         "glColorMaskiEXT",
983         "glDisableiEXT",
984         "glEnableiEXT",
985         "glIsEnablediEXT",
986 };
987
988 static const char* s_GL_EXT_draw_instanced[] =
989 {
990         "glDrawArraysInstancedEXT",
991         "glDrawElementsInstancedEXT",
992 };
993
994 static const char* s_GL_EXT_geometry_shader[] =
995 {
996         "glFramebufferTextureEXT",
997 };
998
999 static const char* s_GL_EXT_instanced_arrays[] =
1000 {
1001         "glDrawArraysInstancedEXT",
1002         "glDrawElementsInstancedEXT",
1003         "glVertexAttribDivisorEXT",
1004 };
1005
1006 static const char* s_GL_EXT_multiview_draw_buffers[] =
1007 {
1008         "glDrawBuffersIndexedEXT",
1009         "glGetIntegeri_vEXT",
1010         "glReadBufferIndexedEXT",
1011 };
1012
1013 static const char* s_GL_EXT_occlusion_query_boolean[] =
1014 {
1015         "glBeginQueryEXT",
1016         "glDeleteQueriesEXT",
1017         "glEndQueryEXT",
1018         "glGenQueriesEXT",
1019         "glGetQueryObjectuivEXT",
1020         "glGetQueryivEXT",
1021         "glIsQueryEXT",
1022 };
1023
1024 static const char* s_GL_EXT_primitive_bounding_box[] =
1025 {
1026         "glPrimitiveBoundingBoxEXT",
1027 };
1028
1029 static const char* s_GL_EXT_separate_shader_objects[] =
1030 {
1031         "glActiveShaderProgramEXT",
1032         "glBindProgramPipelineEXT",
1033         "glCreateShaderProgramvEXT",
1034         "glDeleteProgramPipelinesEXT",
1035         "glGenProgramPipelinesEXT",
1036         "glGetProgramPipelineInfoLogEXT",
1037         "glGetProgramPipelineivEXT",
1038         "glIsProgramPipelineEXT",
1039         "glProgramParameteriEXT",
1040         "glProgramUniform1fEXT",
1041         "glProgramUniform1fvEXT",
1042         "glProgramUniform1iEXT",
1043         "glProgramUniform1ivEXT",
1044         "glProgramUniform1uiEXT",
1045         "glProgramUniform1uivEXT",
1046         "glProgramUniform2fEXT",
1047         "glProgramUniform2fvEXT",
1048         "glProgramUniform2iEXT",
1049         "glProgramUniform2ivEXT",
1050         "glProgramUniform2uiEXT",
1051         "glProgramUniform2uivEXT",
1052         "glProgramUniform3fEXT",
1053         "glProgramUniform3fvEXT",
1054         "glProgramUniform3iEXT",
1055         "glProgramUniform3ivEXT",
1056         "glProgramUniform3uiEXT",
1057         "glProgramUniform3uivEXT",
1058         "glProgramUniform4fEXT",
1059         "glProgramUniform4fvEXT",
1060         "glProgramUniform4iEXT",
1061         "glProgramUniform4ivEXT",
1062         "glProgramUniform4uiEXT",
1063         "glProgramUniform4uivEXT",
1064         "glProgramUniformMatrix2fvEXT",
1065         "glProgramUniformMatrix2x3fvEXT",
1066         "glProgramUniformMatrix2x4fvEXT",
1067         "glProgramUniformMatrix3fvEXT",
1068         "glProgramUniformMatrix3x2fvEXT",
1069         "glProgramUniformMatrix3x4fvEXT",
1070         "glProgramUniformMatrix4fvEXT",
1071         "glProgramUniformMatrix4x2fvEXT",
1072         "glProgramUniformMatrix4x3fvEXT",
1073         "glUseProgramStagesEXT",
1074         "glValidateProgramPipelineEXT",
1075 };
1076
1077 static const char* s_GL_EXT_tessellation_shader[] =
1078 {
1079         "glPatchParameteriEXT",
1080 };
1081
1082 static const char* s_GL_EXT_texture_border_clamp[] =
1083 {
1084         "glGetSamplerParameterIivEXT",
1085         "glGetSamplerParameterIuivEXT",
1086         "glGetTexParameterIivEXT",
1087         "glGetTexParameterIuivEXT",
1088         "glSamplerParameterIivEXT",
1089         "glSamplerParameterIuivEXT",
1090         "glTexParameterIivEXT",
1091         "glTexParameterIuivEXT",
1092 };
1093
1094 static const char* s_GL_EXT_texture_buffer[] =
1095 {
1096         "glTexBufferEXT",
1097         "glTexBufferRangeEXT",
1098 };
1099
1100 static const char* s_GL_EXT_texture_view[] =
1101 {
1102         "glTextureViewEXT",
1103 };
1104
1105 static const char* s_GL_INTEL_performance_query[] =
1106 {
1107         "glBeginPerfQueryINTEL",
1108         "glCreatePerfQueryINTEL",
1109         "glDeletePerfQueryINTEL",
1110         "glEndPerfQueryINTEL",
1111         "glGetFirstPerfQueryIdINTEL",
1112         "glGetNextPerfQueryIdINTEL",
1113         "glGetPerfCounterInfoINTEL",
1114         "glGetPerfQueryDataINTEL",
1115         "glGetPerfQueryIdByNameINTEL",
1116         "glGetPerfQueryInfoINTEL",
1117 };
1118
1119 static const char* s_GL_KHR_blend_equation_advanced[] =
1120 {
1121         "glBlendBarrierKHR",
1122 };
1123
1124 static const char* s_GL_KHR_debug[] =
1125 {
1126         "glDebugMessageCallbackKHR",
1127         "glDebugMessageControlKHR",
1128         "glDebugMessageInsertKHR",
1129         "glGetDebugMessageLogKHR",
1130         "glGetObjectLabelKHR",
1131         "glGetObjectPtrLabelKHR",
1132         "glGetPointervKHR",
1133         "glObjectLabelKHR",
1134         "glObjectPtrLabelKHR",
1135         "glPopDebugGroupKHR",
1136         "glPushDebugGroupKHR",
1137 };
1138
1139 static const char* s_GL_KHR_robustness[] =
1140 {
1141         "glGetGraphicsResetStatusKHR",
1142         "glGetnUniformfvKHR",
1143         "glGetnUniformivKHR",
1144         "glGetnUniformuivKHR",
1145         "glReadnPixelsKHR",
1146 };
1147
1148 static const char* s_GL_NV_blend_equation_advanced[] =
1149 {
1150         "glBlendBarrierNV",
1151         "glBlendParameteriNV",
1152 };
1153
1154 static const char* s_GL_NV_copy_buffer[] =
1155 {
1156         "glCopyBufferSubDataNV",
1157 };
1158
1159 static const char* s_GL_NV_coverage_sample[] =
1160 {
1161         "glCoverageMaskNV",
1162         "glCoverageOperationNV",
1163 };
1164
1165 static const char* s_GL_NV_draw_buffers[] =
1166 {
1167         "glDrawBuffersNV",
1168 };
1169
1170 static const char* s_GL_NV_draw_instanced[] =
1171 {
1172         "glDrawArraysInstancedNV",
1173         "glDrawElementsInstancedNV",
1174 };
1175
1176 static const char* s_GL_NV_framebuffer_blit[] =
1177 {
1178         "glBlitFramebufferNV",
1179 };
1180
1181 static const char* s_GL_NV_framebuffer_multisample[] =
1182 {
1183         "glRenderbufferStorageMultisampleNV",
1184 };
1185
1186 static const char* s_GL_NV_instanced_arrays[] =
1187 {
1188         "glVertexAttribDivisorNV",
1189 };
1190
1191 static const char* s_GL_NV_internalformat_sample_query[] =
1192 {
1193         "glGetInternalformatSampleivNV",
1194 };
1195
1196 static const char* s_GL_NV_non_square_matrices[] =
1197 {
1198         "glUniformMatrix2x3fvNV",
1199         "glUniformMatrix2x4fvNV",
1200         "glUniformMatrix3x2fvNV",
1201         "glUniformMatrix3x4fvNV",
1202         "glUniformMatrix4x2fvNV",
1203         "glUniformMatrix4x3fvNV",
1204 };
1205
1206 static const char* s_GL_NV_read_buffer[] =
1207 {
1208         "glReadBufferNV",
1209 };
1210
1211 static const char* s_GL_OES_get_program_binary[] =
1212 {
1213         "glGetProgramBinaryOES",
1214         "glProgramBinaryOES",
1215 };
1216
1217 static const char* s_GL_OES_sample_shading[] =
1218 {
1219         "glMinSampleShadingOES",
1220 };
1221
1222 static const char* s_GL_OES_texture_3D[] =
1223 {
1224         "glCompressedTexImage3DOES",
1225         "glCompressedTexSubImage3DOES",
1226         "glCopyTexSubImage3DOES",
1227         "glFramebufferTexture3DOES",
1228         "glTexImage3DOES",
1229         "glTexSubImage3DOES",
1230 };
1231
1232 static const char* s_GL_OES_texture_storage_multisample_2d_array[] =
1233 {
1234         "glTexStorage3DMultisampleOES",
1235 };
1236
1237 static const char* s_GL_QCOM_alpha_test[] =
1238 {
1239         "glAlphaFuncQCOM",
1240 };
1241
1242 static const struct
1243 {
1244         const char*                     name;
1245         const int                       numFunctions;
1246         const char* const*      functions;
1247 } s_extensions[] =
1248 {
1249         { "EGL_ANDROID_blob_cache",                                                     DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_blob_cache),                                           s_EGL_ANDROID_blob_cache                                                },
1250         { "EGL_ANDROID_native_fence_sync",                                      DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_native_fence_sync),                            s_EGL_ANDROID_native_fence_sync                                 },
1251         { "EGL_ANGLE_query_surface_pointer",                            DE_LENGTH_OF_ARRAY(s_EGL_ANGLE_query_surface_pointer),                          s_EGL_ANGLE_query_surface_pointer                               },
1252         { "EGL_EXT_device_base",                                                        DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_base),                                                      s_EGL_EXT_device_base                                                   },
1253         { "EGL_EXT_output_base",                                                        DE_LENGTH_OF_ARRAY(s_EGL_EXT_output_base),                                                      s_EGL_EXT_output_base                                                   },
1254         { "EGL_EXT_platform_base",                                                      DE_LENGTH_OF_ARRAY(s_EGL_EXT_platform_base),                                            s_EGL_EXT_platform_base                                                 },
1255         { "EGL_EXT_stream_consumer_egloutput",                          DE_LENGTH_OF_ARRAY(s_EGL_EXT_stream_consumer_egloutput),                        s_EGL_EXT_stream_consumer_egloutput                             },
1256         { "EGL_EXT_swap_buffers_with_damage",                           DE_LENGTH_OF_ARRAY(s_EGL_EXT_swap_buffers_with_damage),                         s_EGL_EXT_swap_buffers_with_damage                              },
1257         { "EGL_HI_clientpixmap",                                                        DE_LENGTH_OF_ARRAY(s_EGL_HI_clientpixmap),                                                      s_EGL_HI_clientpixmap                                                   },
1258         { "EGL_KHR_cl_event2",                                                          DE_LENGTH_OF_ARRAY(s_EGL_KHR_cl_event2),                                                        s_EGL_KHR_cl_event2                                                             },
1259         { "EGL_KHR_image",                                                                      DE_LENGTH_OF_ARRAY(s_EGL_KHR_image),                                                            s_EGL_KHR_image                                                                 },
1260         { "EGL_KHR_image_base",                                                         DE_LENGTH_OF_ARRAY(s_EGL_KHR_image_base),                                                       s_EGL_KHR_image_base                                                    },
1261         { "EGL_KHR_lock_surface",                                                       DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface),                                                     s_EGL_KHR_lock_surface                                                  },
1262         { "EGL_KHR_lock_surface3",                                                      DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface3),                                            s_EGL_KHR_lock_surface3                                                 },
1263         { "EGL_KHR_reusable_sync",                                                      DE_LENGTH_OF_ARRAY(s_EGL_KHR_reusable_sync),                                            s_EGL_KHR_reusable_sync                                                 },
1264         { "EGL_KHR_stream",                                                                     DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream),                                                           s_EGL_KHR_stream                                                                },
1265         { "EGL_KHR_stream_consumer_gltexture",                          DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_consumer_gltexture),                        s_EGL_KHR_stream_consumer_gltexture                             },
1266         { "EGL_KHR_stream_cross_process_fd",                            DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_cross_process_fd),                          s_EGL_KHR_stream_cross_process_fd                               },
1267         { "EGL_KHR_stream_fifo",                                                        DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_fifo),                                                      s_EGL_KHR_stream_fifo                                                   },
1268         { "EGL_KHR_stream_producer_eglsurface",                         DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_producer_eglsurface),                       s_EGL_KHR_stream_producer_eglsurface                    },
1269         { "EGL_KHR_wait_sync",                                                          DE_LENGTH_OF_ARRAY(s_EGL_KHR_wait_sync),                                                        s_EGL_KHR_wait_sync                                                             },
1270         { "EGL_MESA_drm_image",                                                         DE_LENGTH_OF_ARRAY(s_EGL_MESA_drm_image),                                                       s_EGL_MESA_drm_image                                                    },
1271         { "EGL_NOK_swap_region",                                                        DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region),                                                      s_EGL_NOK_swap_region                                                   },
1272         { "EGL_NOK_swap_region2",                                                       DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region2),                                                     s_EGL_NOK_swap_region2                                                  },
1273         { "EGL_NV_native_query",                                                        DE_LENGTH_OF_ARRAY(s_EGL_NV_native_query),                                                      s_EGL_NV_native_query                                                   },
1274         { "EGL_NV_post_sub_buffer",                                                     DE_LENGTH_OF_ARRAY(s_EGL_NV_post_sub_buffer),                                           s_EGL_NV_post_sub_buffer                                                },
1275         { "EGL_NV_stream_sync",                                                         DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_sync),                                                       s_EGL_NV_stream_sync                                                    },
1276         { "EGL_NV_sync",                                                                        DE_LENGTH_OF_ARRAY(s_EGL_NV_sync),                                                                      s_EGL_NV_sync                                                                   },
1277         { "EGL_NV_system_time",                                                         DE_LENGTH_OF_ARRAY(s_EGL_NV_system_time),                                                       s_EGL_NV_system_time                                                    },
1278         { "GL_APPLE_copy_texture_levels",                                       DE_LENGTH_OF_ARRAY(s_GL_APPLE_copy_texture_levels),                                     s_GL_APPLE_copy_texture_levels                                  },
1279         { "GL_APPLE_framebuffer_multisample",                           DE_LENGTH_OF_ARRAY(s_GL_APPLE_framebuffer_multisample),                         s_GL_APPLE_framebuffer_multisample                              },
1280         { "GL_APPLE_sync",                                                                      DE_LENGTH_OF_ARRAY(s_GL_APPLE_sync),                                                            s_GL_APPLE_sync                                                                 },
1281         { "GL_EXT_discard_framebuffer",                                         DE_LENGTH_OF_ARRAY(s_GL_EXT_discard_framebuffer),                                       s_GL_EXT_discard_framebuffer                                    },
1282         { "GL_EXT_map_buffer_range",                                            DE_LENGTH_OF_ARRAY(s_GL_EXT_map_buffer_range),                                          s_GL_EXT_map_buffer_range                                               },
1283         { "GL_EXT_multi_draw_arrays",                                           DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_arrays),                                         s_GL_EXT_multi_draw_arrays                                              },
1284         { "GL_EXT_multisampled_render_to_texture",                      DE_LENGTH_OF_ARRAY(s_GL_EXT_multisampled_render_to_texture),            s_GL_EXT_multisampled_render_to_texture                 },
1285         { "GL_EXT_robustness",                                                          DE_LENGTH_OF_ARRAY(s_GL_EXT_robustness),                                                        s_GL_EXT_robustness                                                             },
1286         { "GL_EXT_texture_storage",                                                     DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_storage),                                           s_GL_EXT_texture_storage                                                },
1287         { "GL_IMG_multisampled_render_to_texture",                      DE_LENGTH_OF_ARRAY(s_GL_IMG_multisampled_render_to_texture),            s_GL_IMG_multisampled_render_to_texture                 },
1288         { "GL_IMG_user_clip_plane",                                                     DE_LENGTH_OF_ARRAY(s_GL_IMG_user_clip_plane),                                           s_GL_IMG_user_clip_plane                                                },
1289         { "GL_NV_fence",                                                                        DE_LENGTH_OF_ARRAY(s_GL_NV_fence),                                                                      s_GL_NV_fence                                                                   },
1290         { "GL_OES_EGL_image",                                                           DE_LENGTH_OF_ARRAY(s_GL_OES_EGL_image),                                                         s_GL_OES_EGL_image                                                              },
1291         { "GL_OES_blend_equation_separate",                                     DE_LENGTH_OF_ARRAY(s_GL_OES_blend_equation_separate),                           s_GL_OES_blend_equation_separate                                },
1292         { "GL_OES_blend_func_separate",                                         DE_LENGTH_OF_ARRAY(s_GL_OES_blend_func_separate),                                       s_GL_OES_blend_func_separate                                    },
1293         { "GL_OES_blend_subtract",                                                      DE_LENGTH_OF_ARRAY(s_GL_OES_blend_subtract),                                            s_GL_OES_blend_subtract                                                 },
1294         { "GL_OES_draw_texture",                                                        DE_LENGTH_OF_ARRAY(s_GL_OES_draw_texture),                                                      s_GL_OES_draw_texture                                                   },
1295         { "GL_OES_fixed_point",                                                         DE_LENGTH_OF_ARRAY(s_GL_OES_fixed_point),                                                       s_GL_OES_fixed_point                                                    },
1296         { "GL_OES_framebuffer_object",                                          DE_LENGTH_OF_ARRAY(s_GL_OES_framebuffer_object),                                        s_GL_OES_framebuffer_object                                             },
1297         { "GL_OES_mapbuffer",                                                           DE_LENGTH_OF_ARRAY(s_GL_OES_mapbuffer),                                                         s_GL_OES_mapbuffer                                                              },
1298         { "GL_OES_matrix_palette",                                                      DE_LENGTH_OF_ARRAY(s_GL_OES_matrix_palette),                                            s_GL_OES_matrix_palette                                                 },
1299         { "GL_OES_point_size_array",                                            DE_LENGTH_OF_ARRAY(s_GL_OES_point_size_array),                                          s_GL_OES_point_size_array                                               },
1300         { "GL_OES_query_matrix",                                                        DE_LENGTH_OF_ARRAY(s_GL_OES_query_matrix),                                                      s_GL_OES_query_matrix                                                   },
1301         { "GL_OES_single_precision",                                            DE_LENGTH_OF_ARRAY(s_GL_OES_single_precision),                                          s_GL_OES_single_precision                                               },
1302         { "GL_OES_texture_cube_map",                                            DE_LENGTH_OF_ARRAY(s_GL_OES_texture_cube_map),                                          s_GL_OES_texture_cube_map                                               },
1303         { "GL_OES_vertex_array_object",                                         DE_LENGTH_OF_ARRAY(s_GL_OES_vertex_array_object),                                       s_GL_OES_vertex_array_object                                    },
1304         { "GL_QCOM_driver_control",                                                     DE_LENGTH_OF_ARRAY(s_GL_QCOM_driver_control),                                           s_GL_QCOM_driver_control                                                },
1305         { "GL_QCOM_extended_get",                                                       DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get),                                                     s_GL_QCOM_extended_get                                                  },
1306         { "GL_QCOM_extended_get2",                                                      DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get2),                                            s_GL_QCOM_extended_get2                                                 },
1307         { "GL_QCOM_tiled_rendering",                                            DE_LENGTH_OF_ARRAY(s_GL_QCOM_tiled_rendering),                                          s_GL_QCOM_tiled_rendering                                               },
1308         { "GL_AMD_performance_monitor",                                         DE_LENGTH_OF_ARRAY(s_GL_AMD_performance_monitor),                                       s_GL_AMD_performance_monitor                                    },
1309         { "GL_ANGLE_framebuffer_blit",                                          DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_blit),                                        s_GL_ANGLE_framebuffer_blit                                             },
1310         { "GL_ANGLE_framebuffer_multisample",                           DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_multisample),                         s_GL_ANGLE_framebuffer_multisample                              },
1311         { "GL_ANGLE_instanced_arrays",                                          DE_LENGTH_OF_ARRAY(s_GL_ANGLE_instanced_arrays),                                        s_GL_ANGLE_instanced_arrays                                             },
1312         { "GL_ANGLE_translated_shader_source",                          DE_LENGTH_OF_ARRAY(s_GL_ANGLE_translated_shader_source),                        s_GL_ANGLE_translated_shader_source                             },
1313         { "GL_EXT_copy_image",                                                          DE_LENGTH_OF_ARRAY(s_GL_EXT_copy_image),                                                        s_GL_EXT_copy_image                                                             },
1314         { "GL_EXT_debug_label",                                                         DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_label),                                                       s_GL_EXT_debug_label                                                    },
1315         { "GL_EXT_debug_marker",                                                        DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_marker),                                                      s_GL_EXT_debug_marker                                                   },
1316         { "GL_EXT_disjoint_timer_query",                                        DE_LENGTH_OF_ARRAY(s_GL_EXT_disjoint_timer_query),                                      s_GL_EXT_disjoint_timer_query                                   },
1317         { "GL_EXT_draw_buffers",                                                        DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers),                                                      s_GL_EXT_draw_buffers                                                   },
1318         { "GL_EXT_draw_buffers_indexed",                                        DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers_indexed),                                      s_GL_EXT_draw_buffers_indexed                                   },
1319         { "GL_EXT_draw_instanced",                                                      DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_instanced),                                            s_GL_EXT_draw_instanced                                                 },
1320         { "GL_EXT_geometry_shader",                                                     DE_LENGTH_OF_ARRAY(s_GL_EXT_geometry_shader),                                           s_GL_EXT_geometry_shader                                                },
1321         { "GL_EXT_instanced_arrays",                                            DE_LENGTH_OF_ARRAY(s_GL_EXT_instanced_arrays),                                          s_GL_EXT_instanced_arrays                                               },
1322         { "GL_EXT_multiview_draw_buffers",                                      DE_LENGTH_OF_ARRAY(s_GL_EXT_multiview_draw_buffers),                            s_GL_EXT_multiview_draw_buffers                                 },
1323         { "GL_EXT_occlusion_query_boolean",                                     DE_LENGTH_OF_ARRAY(s_GL_EXT_occlusion_query_boolean),                           s_GL_EXT_occlusion_query_boolean                                },
1324         { "GL_EXT_primitive_bounding_box",                                      DE_LENGTH_OF_ARRAY(s_GL_EXT_primitive_bounding_box),                            s_GL_EXT_primitive_bounding_box                                 },
1325         { "GL_EXT_separate_shader_objects",                                     DE_LENGTH_OF_ARRAY(s_GL_EXT_separate_shader_objects),                           s_GL_EXT_separate_shader_objects                                },
1326         { "GL_EXT_tessellation_shader",                                         DE_LENGTH_OF_ARRAY(s_GL_EXT_tessellation_shader),                                       s_GL_EXT_tessellation_shader                                    },
1327         { "GL_EXT_texture_border_clamp",                                        DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_border_clamp),                                      s_GL_EXT_texture_border_clamp                                   },
1328         { "GL_EXT_texture_buffer",                                                      DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_buffer),                                            s_GL_EXT_texture_buffer                                                 },
1329         { "GL_EXT_texture_view",                                                        DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_view),                                                      s_GL_EXT_texture_view                                                   },
1330         { "GL_INTEL_performance_query",                                         DE_LENGTH_OF_ARRAY(s_GL_INTEL_performance_query),                                       s_GL_INTEL_performance_query                                    },
1331         { "GL_KHR_blend_equation_advanced",                                     DE_LENGTH_OF_ARRAY(s_GL_KHR_blend_equation_advanced),                           s_GL_KHR_blend_equation_advanced                                },
1332         { "GL_KHR_debug",                                                                       DE_LENGTH_OF_ARRAY(s_GL_KHR_debug),                                                                     s_GL_KHR_debug                                                                  },
1333         { "GL_KHR_robustness",                                                          DE_LENGTH_OF_ARRAY(s_GL_KHR_robustness),                                                        s_GL_KHR_robustness                                                             },
1334         { "GL_NV_blend_equation_advanced",                                      DE_LENGTH_OF_ARRAY(s_GL_NV_blend_equation_advanced),                            s_GL_NV_blend_equation_advanced                                 },
1335         { "GL_NV_copy_buffer",                                                          DE_LENGTH_OF_ARRAY(s_GL_NV_copy_buffer),                                                        s_GL_NV_copy_buffer                                                             },
1336         { "GL_NV_coverage_sample",                                                      DE_LENGTH_OF_ARRAY(s_GL_NV_coverage_sample),                                            s_GL_NV_coverage_sample                                                 },
1337         { "GL_NV_draw_buffers",                                                         DE_LENGTH_OF_ARRAY(s_GL_NV_draw_buffers),                                                       s_GL_NV_draw_buffers                                                    },
1338         { "GL_NV_draw_instanced",                                                       DE_LENGTH_OF_ARRAY(s_GL_NV_draw_instanced),                                                     s_GL_NV_draw_instanced                                                  },
1339         { "GL_NV_framebuffer_blit",                                                     DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_blit),                                           s_GL_NV_framebuffer_blit                                                },
1340         { "GL_NV_framebuffer_multisample",                                      DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_multisample),                            s_GL_NV_framebuffer_multisample                                 },
1341         { "GL_NV_instanced_arrays",                                                     DE_LENGTH_OF_ARRAY(s_GL_NV_instanced_arrays),                                           s_GL_NV_instanced_arrays                                                },
1342         { "GL_NV_internalformat_sample_query",                          DE_LENGTH_OF_ARRAY(s_GL_NV_internalformat_sample_query),                        s_GL_NV_internalformat_sample_query                             },
1343         { "GL_NV_non_square_matrices",                                          DE_LENGTH_OF_ARRAY(s_GL_NV_non_square_matrices),                                        s_GL_NV_non_square_matrices                                             },
1344         { "GL_NV_read_buffer",                                                          DE_LENGTH_OF_ARRAY(s_GL_NV_read_buffer),                                                        s_GL_NV_read_buffer                                                             },
1345         { "GL_OES_get_program_binary",                                          DE_LENGTH_OF_ARRAY(s_GL_OES_get_program_binary),                                        s_GL_OES_get_program_binary                                             },
1346         { "GL_OES_sample_shading",                                                      DE_LENGTH_OF_ARRAY(s_GL_OES_sample_shading),                                            s_GL_OES_sample_shading                                                 },
1347         { "GL_OES_texture_3D",                                                          DE_LENGTH_OF_ARRAY(s_GL_OES_texture_3D),                                                        s_GL_OES_texture_3D                                                             },
1348         { "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   },
1349         { "GL_QCOM_alpha_test",                                                         DE_LENGTH_OF_ARRAY(s_GL_QCOM_alpha_test),                                                       s_GL_QCOM_alpha_test                                                    },
1350 };