• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
7static 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
45static 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
59static 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
207static 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
353static 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
461static const char* s_EGL_ANDROID_blob_cache[] =
462{
463	"eglSetBlobCacheFuncsANDROID",
464};
465
466static const char* s_EGL_ANDROID_create_native_client_buffer[] =
467{
468	"eglCreateNativeClientBufferANDROID",
469};
470
471static const char* s_EGL_ANDROID_get_native_client_buffer[] =
472{
473	"eglGetNativeClientBufferANDROID",
474};
475
476static const char* s_EGL_ANDROID_native_fence_sync[] =
477{
478	"eglDupNativeFenceFDANDROID",
479};
480
481static const char* s_EGL_ANDROID_presentation_time[] =
482{
483	"eglPresentationTimeANDROID",
484};
485
486static const char* s_EGL_ANDROID_get_frame_timestamps[] =
487{
488	"eglGetCompositorTimingSupportedANDROID",
489	"eglGetCompositorTimingANDROID",
490	"eglGetNextFrameIdANDROID",
491	"eglGetFrameTimestampSupportedANDROID",
492	"eglGetFrameTimestampsANDROID",
493};
494
495static const char* s_EGL_ANGLE_query_surface_pointer[] =
496{
497	"eglQuerySurfacePointerANGLE",
498};
499
500static const char* s_EGL_EXT_client_sync[] =
501{
502	"eglClientSignalSyncEXT",
503};
504
505static const char* s_EGL_EXT_device_base[] =
506{
507	"eglQueryDeviceAttribEXT",
508	"eglQueryDeviceStringEXT",
509	"eglQueryDevicesEXT",
510	"eglQueryDisplayAttribEXT",
511};
512
513static const char* s_EGL_EXT_device_enumeration[] =
514{
515	"eglQueryDevicesEXT",
516};
517
518static const char* s_EGL_EXT_device_query[] =
519{
520	"eglQueryDeviceAttribEXT",
521	"eglQueryDeviceStringEXT",
522	"eglQueryDisplayAttribEXT",
523};
524
525static const char* s_EGL_EXT_image_dma_buf_import_modifiers[] =
526{
527	"eglQueryDmaBufFormatsEXT",
528	"eglQueryDmaBufModifiersEXT",
529};
530
531static 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
543static const char* s_EGL_EXT_platform_base[] =
544{
545	"eglCreatePlatformPixmapSurfaceEXT",
546	"eglCreatePlatformWindowSurfaceEXT",
547	"eglGetPlatformDisplayEXT",
548};
549
550static const char* s_EGL_EXT_stream_consumer_egloutput[] =
551{
552	"eglStreamConsumerOutputEXT",
553};
554
555static const char* s_EGL_EXT_swap_buffers_with_damage[] =
556{
557	"eglSwapBuffersWithDamageEXT",
558};
559
560static const char* s_EGL_EXT_sync_reuse[] =
561{
562	"eglUnsignalSyncEXT",
563};
564
565static const char* s_EGL_HI_clientpixmap[] =
566{
567	"eglCreatePixmapSurfaceHI",
568};
569
570static const char* s_EGL_KHR_cl_event2[] =
571{
572	"eglCreateSync64KHR",
573};
574
575static const char* s_EGL_KHR_debug[] =
576{
577	"eglDebugMessageControlKHR",
578	"eglLabelObjectKHR",
579	"eglQueryDebugKHR",
580};
581
582static const char* s_EGL_KHR_display_reference[] =
583{
584	"eglQueryDisplayAttribKHR",
585};
586
587static const char* s_EGL_KHR_fence_sync[] =
588{
589	"eglClientWaitSyncKHR",
590	"eglCreateSyncKHR",
591	"eglDestroySyncKHR",
592	"eglGetSyncAttribKHR",
593};
594
595static const char* s_EGL_KHR_image[] =
596{
597	"eglCreateImageKHR",
598	"eglDestroyImageKHR",
599};
600
601static const char* s_EGL_KHR_image_base[] =
602{
603	"eglCreateImageKHR",
604	"eglDestroyImageKHR",
605};
606
607static const char* s_EGL_KHR_lock_surface[] =
608{
609	"eglLockSurfaceKHR",
610	"eglUnlockSurfaceKHR",
611};
612
613static const char* s_EGL_KHR_lock_surface3[] =
614{
615	"eglLockSurfaceKHR",
616	"eglQuerySurface64KHR",
617	"eglUnlockSurfaceKHR",
618};
619
620static const char* s_EGL_KHR_partial_update[] =
621{
622	"eglSetDamageRegionKHR",
623};
624
625static const char* s_EGL_KHR_reusable_sync[] =
626{
627	"eglClientWaitSyncKHR",
628	"eglCreateSyncKHR",
629	"eglDestroySyncKHR",
630	"eglGetSyncAttribKHR",
631	"eglSignalSyncKHR",
632};
633
634static const char* s_EGL_KHR_stream[] =
635{
636	"eglCreateStreamKHR",
637	"eglDestroyStreamKHR",
638	"eglQueryStreamKHR",
639	"eglQueryStreamu64KHR",
640	"eglStreamAttribKHR",
641};
642
643static const char* s_EGL_KHR_stream_attrib[] =
644{
645	"eglCreateStreamAttribKHR",
646	"eglQueryStreamAttribKHR",
647	"eglSetStreamAttribKHR",
648	"eglStreamConsumerAcquireAttribKHR",
649	"eglStreamConsumerReleaseAttribKHR",
650};
651
652static const char* s_EGL_KHR_stream_consumer_gltexture[] =
653{
654	"eglStreamConsumerAcquireKHR",
655	"eglStreamConsumerGLTextureExternalKHR",
656	"eglStreamConsumerReleaseKHR",
657};
658
659static const char* s_EGL_KHR_stream_cross_process_fd[] =
660{
661	"eglCreateStreamFromFileDescriptorKHR",
662	"eglGetStreamFileDescriptorKHR",
663};
664
665static const char* s_EGL_KHR_stream_fifo[] =
666{
667	"eglQueryStreamTimeKHR",
668};
669
670static const char* s_EGL_KHR_stream_producer_eglsurface[] =
671{
672	"eglCreateStreamProducerSurfaceKHR",
673};
674
675static const char* s_EGL_KHR_swap_buffers_with_damage[] =
676{
677	"eglSwapBuffersWithDamageKHR",
678};
679
680static const char* s_EGL_KHR_wait_sync[] =
681{
682	"eglWaitSyncKHR",
683};
684
685static const char* s_EGL_MESA_drm_image[] =
686{
687	"eglCreateDRMImageMESA",
688	"eglExportDRMImageMESA",
689};
690
691static const char* s_EGL_MESA_image_dma_buf_export[] =
692{
693	"eglExportDMABUFImageMESA",
694	"eglExportDMABUFImageQueryMESA",
695};
696
697static const char* s_EGL_NOK_swap_region[] =
698{
699	"eglSwapBuffersRegionNOK",
700};
701
702static const char* s_EGL_NOK_swap_region2[] =
703{
704	"eglSwapBuffersRegion2NOK",
705};
706
707static const char* s_EGL_NV_native_query[] =
708{
709	"eglQueryNativeDisplayNV",
710	"eglQueryNativePixmapNV",
711	"eglQueryNativeWindowNV",
712};
713
714static const char* s_EGL_NV_post_sub_buffer[] =
715{
716	"eglPostSubBufferNV",
717};
718
719static const char* s_EGL_NV_stream_consumer_gltexture_yuv[] =
720{
721	"eglStreamConsumerGLTextureExternalAttribsNV",
722};
723
724static const char* s_EGL_NV_stream_flush[] =
725{
726	"eglStreamFlushNV",
727};
728
729static const char* s_EGL_NV_stream_metadata[] =
730{
731	"eglQueryDisplayAttribNV",
732	"eglQueryStreamMetadataNV",
733	"eglSetStreamMetadataNV",
734};
735
736static const char* s_EGL_NV_stream_reset[] =
737{
738	"eglResetStreamNV",
739};
740
741static const char* s_EGL_NV_stream_sync[] =
742{
743	"eglCreateStreamSyncNV",
744};
745
746static const char* s_EGL_NV_sync[] =
747{
748	"eglClientWaitSyncNV",
749	"eglCreateFenceSyncNV",
750	"eglDestroySyncNV",
751	"eglFenceNV",
752	"eglGetSyncAttribNV",
753	"eglSignalSyncNV",
754};
755
756static const char* s_EGL_NV_system_time[] =
757{
758	"eglGetSystemTimeFrequencyNV",
759	"eglGetSystemTimeNV",
760};
761
762static const char* s_EGL_EXT_compositor[] =
763{
764	"eglCompositorSetContextListEXT",
765	"eglCompositorSetContextAttributesEXT",
766	"eglCompositorSetWindowListEXT",
767	"eglCompositorSetWindowAttributesEXT",
768	"eglCompositorBindTexWindowEXT",
769	"eglCompositorSetSizeEXT",
770	"eglCompositorSwapPolicyEXT",
771};
772
773static const char* s_GL_APPLE_copy_texture_levels[] =
774{
775	"glCopyTextureLevelsAPPLE",
776};
777
778static const char* s_GL_APPLE_framebuffer_multisample[] =
779{
780	"glRenderbufferStorageMultisampleAPPLE",
781	"glResolveMultisampleFramebufferAPPLE",
782};
783
784static const char* s_GL_APPLE_sync[] =
785{
786	"glClientWaitSyncAPPLE",
787	"glDeleteSyncAPPLE",
788	"glFenceSyncAPPLE",
789	"glGetInteger64vAPPLE",
790	"glGetSyncivAPPLE",
791	"glIsSyncAPPLE",
792	"glWaitSyncAPPLE",
793};
794
795static const char* s_GL_EXT_debug_marker[] =
796{
797	"glInsertEventMarkerEXT",
798	"glPopGroupMarkerEXT",
799	"glPushGroupMarkerEXT",
800};
801
802static const char* s_GL_EXT_discard_framebuffer[] =
803{
804	"glDiscardFramebufferEXT",
805};
806
807static const char* s_GL_EXT_map_buffer_range[] =
808{
809	"glFlushMappedBufferRangeEXT",
810	"glMapBufferRangeEXT",
811};
812
813static const char* s_GL_EXT_multi_draw_arrays[] =
814{
815	"glMultiDrawArraysEXT",
816	"glMultiDrawElementsEXT",
817};
818
819static const char* s_GL_EXT_multisampled_render_to_texture[] =
820{
821	"glFramebufferTexture2DMultisampleEXT",
822	"glRenderbufferStorageMultisampleEXT",
823};
824
825static const char* s_GL_EXT_robustness[] =
826{
827	"glGetGraphicsResetStatusEXT",
828	"glGetnUniformfvEXT",
829	"glGetnUniformivEXT",
830	"glReadnPixelsEXT",
831};
832
833static const char* s_GL_EXT_texture_storage[] =
834{
835	"glTexStorage1DEXT",
836	"glTexStorage2DEXT",
837	"glTexStorage3DEXT",
838	"glTextureStorage1DEXT",
839	"glTextureStorage2DEXT",
840	"glTextureStorage3DEXT",
841};
842
843static const char* s_GL_IMG_multisampled_render_to_texture[] =
844{
845	"glFramebufferTexture2DMultisampleIMG",
846	"glRenderbufferStorageMultisampleIMG",
847};
848
849static const char* s_GL_IMG_user_clip_plane[] =
850{
851	"glClipPlanefIMG",
852	"glClipPlanexIMG",
853};
854
855static const char* s_GL_NV_fence[] =
856{
857	"glDeleteFencesNV",
858	"glFinishFenceNV",
859	"glGenFencesNV",
860	"glGetFenceivNV",
861	"glIsFenceNV",
862	"glSetFenceNV",
863	"glTestFenceNV",
864};
865
866static const char* s_GL_OES_EGL_image[] =
867{
868	"glEGLImageTargetRenderbufferStorageOES",
869	"glEGLImageTargetTexture2DOES",
870};
871
872static const char* s_GL_OES_blend_equation_separate[] =
873{
874	"glBlendEquationSeparateOES",
875};
876
877static const char* s_GL_OES_blend_func_separate[] =
878{
879	"glBlendFuncSeparateOES",
880};
881
882static const char* s_GL_OES_blend_subtract[] =
883{
884	"glBlendEquationOES",
885};
886
887static 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
899static 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
942static 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
961static const char* s_GL_OES_mapbuffer[] =
962{
963	"glGetBufferPointervOES",
964	"glMapBufferOES",
965	"glUnmapBufferOES",
966};
967
968static const char* s_GL_OES_matrix_palette[] =
969{
970	"glCurrentPaletteMatrixOES",
971	"glLoadPaletteFromModelViewMatrixOES",
972	"glMatrixIndexPointerOES",
973	"glWeightPointerOES",
974};
975
976static const char* s_GL_OES_point_size_array[] =
977{
978	"glPointSizePointerOES",
979};
980
981static const char* s_GL_OES_query_matrix[] =
982{
983	"glQueryMatrixxOES",
984};
985
986static const char* s_GL_OES_single_precision[] =
987{
988	"glClearDepthfOES",
989	"glClipPlanefOES",
990	"glDepthRangefOES",
991	"glFrustumfOES",
992	"glGetClipPlanefOES",
993	"glOrthofOES",
994};
995
996static 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
1009static const char* s_GL_OES_vertex_array_object[] =
1010{
1011	"glBindVertexArrayOES",
1012	"glDeleteVertexArraysOES",
1013	"glGenVertexArraysOES",
1014	"glIsVertexArrayOES",
1015};
1016
1017static const char* s_GL_QCOM_driver_control[] =
1018{
1019	"glDisableDriverControlQCOM",
1020	"glEnableDriverControlQCOM",
1021	"glGetDriverControlStringQCOM",
1022	"glGetDriverControlsQCOM",
1023};
1024
1025static 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
1037static const char* s_GL_QCOM_extended_get2[] =
1038{
1039	"glExtGetProgramBinarySourceQCOM",
1040	"glExtGetProgramsQCOM",
1041	"glExtGetShadersQCOM",
1042	"glExtIsProgramBinaryQCOM",
1043};
1044
1045static const char* s_GL_QCOM_tiled_rendering[] =
1046{
1047	"glEndTilingQCOM",
1048	"glStartTilingQCOM",
1049};
1050
1051static const char* s_GL_AMD_framebuffer_multisample_advanced[] =
1052{
1053	"glNamedRenderbufferStorageMultisampleAdvancedAMD",
1054	"glRenderbufferStorageMultisampleAdvancedAMD",
1055};
1056
1057static const char* s_GL_AMD_performance_monitor[] =
1058{
1059	"glBeginPerfMonitorAMD",
1060	"glDeletePerfMonitorsAMD",
1061	"glEndPerfMonitorAMD",
1062	"glGenPerfMonitorsAMD",
1063	"glGetPerfMonitorCounterDataAMD",
1064	"glGetPerfMonitorCounterInfoAMD",
1065	"glGetPerfMonitorCounterStringAMD",
1066	"glGetPerfMonitorCountersAMD",
1067	"glGetPerfMonitorGroupStringAMD",
1068	"glGetPerfMonitorGroupsAMD",
1069	"glSelectPerfMonitorCountersAMD",
1070};
1071
1072static const char* s_GL_ANGLE_framebuffer_blit[] =
1073{
1074	"glBlitFramebufferANGLE",
1075};
1076
1077static const char* s_GL_ANGLE_framebuffer_multisample[] =
1078{
1079	"glRenderbufferStorageMultisampleANGLE",
1080};
1081
1082static const char* s_GL_ANGLE_instanced_arrays[] =
1083{
1084	"glDrawArraysInstancedANGLE",
1085	"glDrawElementsInstancedANGLE",
1086	"glVertexAttribDivisorANGLE",
1087};
1088
1089static const char* s_GL_ANGLE_translated_shader_source[] =
1090{
1091	"glGetTranslatedShaderSourceANGLE",
1092};
1093
1094static const char* s_GL_EXT_EGL_image_storage[] =
1095{
1096	"glEGLImageTargetTexStorageEXT",
1097	"glEGLImageTargetTextureStorageEXT",
1098};
1099
1100static const char* s_GL_EXT_base_instance[] =
1101{
1102	"glDrawArraysInstancedBaseInstanceEXT",
1103	"glDrawElementsInstancedBaseInstanceEXT",
1104	"glDrawElementsInstancedBaseVertexBaseInstanceEXT",
1105};
1106
1107static const char* s_GL_EXT_blend_func_extended[] =
1108{
1109	"glBindFragDataLocationEXT",
1110	"glBindFragDataLocationIndexedEXT",
1111	"glGetFragDataIndexEXT",
1112	"glGetProgramResourceLocationIndexEXT",
1113};
1114
1115static const char* s_GL_EXT_buffer_storage[] =
1116{
1117	"glBufferStorageEXT",
1118};
1119
1120static const char* s_GL_EXT_clear_texture[] =
1121{
1122	"glClearTexImageEXT",
1123	"glClearTexSubImageEXT",
1124};
1125
1126static const char* s_GL_EXT_clip_control[] =
1127{
1128	"glClipControlEXT",
1129};
1130
1131static const char* s_GL_EXT_copy_image[] =
1132{
1133	"glCopyImageSubDataEXT",
1134};
1135
1136static const char* s_GL_EXT_debug_label[] =
1137{
1138	"glGetObjectLabelEXT",
1139	"glLabelObjectEXT",
1140};
1141
1142static const char* s_GL_EXT_disjoint_timer_query[] =
1143{
1144	"glBeginQueryEXT",
1145	"glDeleteQueriesEXT",
1146	"glEndQueryEXT",
1147	"glGenQueriesEXT",
1148	"glGetInteger64vEXT",
1149	"glGetQueryObjecti64vEXT",
1150	"glGetQueryObjectivEXT",
1151	"glGetQueryObjectui64vEXT",
1152	"glGetQueryObjectuivEXT",
1153	"glGetQueryivEXT",
1154	"glIsQueryEXT",
1155	"glQueryCounterEXT",
1156};
1157
1158static const char* s_GL_EXT_draw_buffers[] =
1159{
1160	"glDrawBuffersEXT",
1161};
1162
1163static const char* s_GL_EXT_draw_buffers_indexed[] =
1164{
1165	"glBlendEquationSeparateiEXT",
1166	"glBlendEquationiEXT",
1167	"glBlendFuncSeparateiEXT",
1168	"glBlendFunciEXT",
1169	"glColorMaskiEXT",
1170	"glDisableiEXT",
1171	"glEnableiEXT",
1172	"glIsEnablediEXT",
1173};
1174
1175static const char* s_GL_EXT_draw_elements_base_vertex[] =
1176{
1177	"glDrawElementsBaseVertexEXT",
1178	"glDrawElementsInstancedBaseVertexEXT",
1179	"glDrawRangeElementsBaseVertexEXT",
1180	"glMultiDrawElementsBaseVertexEXT",
1181};
1182
1183static const char* s_GL_EXT_draw_instanced[] =
1184{
1185	"glDrawArraysInstancedEXT",
1186	"glDrawElementsInstancedEXT",
1187};
1188
1189static const char* s_GL_EXT_draw_transform_feedback[] =
1190{
1191	"glDrawTransformFeedbackEXT",
1192	"glDrawTransformFeedbackInstancedEXT",
1193};
1194
1195static const char* s_GL_EXT_external_buffer[] =
1196{
1197	"glBufferStorageExternalEXT",
1198	"glNamedBufferStorageExternalEXT",
1199};
1200
1201static const char* s_GL_EXT_fragment_shading_rate[] =
1202{
1203	"glFramebufferShadingRateEXT",
1204	"glGetFragmentShadingRatesEXT",
1205	"glShadingRateEXT",
1206	"glShadingRateCombinerOpsEXT",
1207};
1208
1209static const char* s_GL_EXT_geometry_shader[] =
1210{
1211	"glFramebufferTextureEXT",
1212};
1213
1214static const char* s_GL_EXT_instanced_arrays[] =
1215{
1216	"glDrawArraysInstancedEXT",
1217	"glDrawElementsInstancedEXT",
1218	"glVertexAttribDivisorEXT",
1219};
1220
1221static const char* s_GL_EXT_memory_object[] =
1222{
1223	"glBufferStorageMemEXT",
1224	"glCreateMemoryObjectsEXT",
1225	"glDeleteMemoryObjectsEXT",
1226	"glGetMemoryObjectParameterivEXT",
1227	"glGetUnsignedBytevEXT",
1228	"glGetUnsignedBytei_vEXT",
1229	"glIsMemoryObjectEXT",
1230	"glMemoryObjectParameterivEXT",
1231	"glNamedBufferStorageMemEXT",
1232	"glTexStorageMem2DEXT",
1233	"glTexStorageMem2DMultisampleEXT",
1234	"glTexStorageMem3DEXT",
1235	"glTexStorageMem3DMultisampleEXT",
1236	"glTextureStorageMem2DEXT",
1237	"glTextureStorageMem2DMultisampleEXT",
1238	"glTextureStorageMem3DEXT",
1239	"glTextureStorageMem3DMultisampleEXT",
1240};
1241
1242static const char* s_GL_EXT_memory_object_fd[] =
1243{
1244	"glImportMemoryFdEXT",
1245};
1246
1247static const char* s_GL_EXT_memory_object_win32[] =
1248{
1249	"glImportMemoryWin32HandleEXT",
1250	"glImportMemoryWin32NameEXT",
1251};
1252
1253static const char* s_GL_EXT_multi_draw_indirect[] =
1254{
1255	"glMultiDrawArraysIndirectEXT",
1256	"glMultiDrawElementsIndirectEXT",
1257};
1258
1259static const char* s_GL_EXT_multiview_draw_buffers[] =
1260{
1261	"glDrawBuffersIndexedEXT",
1262	"glGetIntegeri_vEXT",
1263	"glReadBufferIndexedEXT",
1264};
1265
1266static const char* s_GL_EXT_occlusion_query_boolean[] =
1267{
1268	"glBeginQueryEXT",
1269	"glDeleteQueriesEXT",
1270	"glEndQueryEXT",
1271	"glGenQueriesEXT",
1272	"glGetQueryObjectuivEXT",
1273	"glGetQueryivEXT",
1274	"glIsQueryEXT",
1275};
1276
1277static const char* s_GL_EXT_polygon_offset_clamp[] =
1278{
1279	"glPolygonOffsetClampEXT",
1280};
1281
1282static const char* s_GL_EXT_primitive_bounding_box[] =
1283{
1284	"glPrimitiveBoundingBoxEXT",
1285};
1286
1287static const char* s_GL_EXT_raster_multisample[] =
1288{
1289	"glRasterSamplesEXT",
1290};
1291
1292static const char* s_GL_EXT_semaphore[] =
1293{
1294	"glDeleteSemaphoresEXT",
1295	"glGenSemaphoresEXT",
1296	"glGetSemaphoreParameterui64vEXT",
1297	"glGetUnsignedBytevEXT",
1298	"glGetUnsignedBytei_vEXT",
1299	"glIsSemaphoreEXT",
1300	"glSemaphoreParameterui64vEXT",
1301	"glSignalSemaphoreEXT",
1302	"glWaitSemaphoreEXT",
1303};
1304
1305static const char* s_GL_EXT_semaphore_fd[] =
1306{
1307	"glImportSemaphoreFdEXT",
1308};
1309
1310static const char* s_GL_EXT_semaphore_win32[] =
1311{
1312	"glImportSemaphoreWin32HandleEXT",
1313	"glImportSemaphoreWin32NameEXT",
1314};
1315
1316static const char* s_GL_EXT_separate_shader_objects[] =
1317{
1318	"glActiveShaderProgramEXT",
1319	"glBindProgramPipelineEXT",
1320	"glCreateShaderProgramvEXT",
1321	"glDeleteProgramPipelinesEXT",
1322	"glGenProgramPipelinesEXT",
1323	"glGetProgramPipelineInfoLogEXT",
1324	"glGetProgramPipelineivEXT",
1325	"glIsProgramPipelineEXT",
1326	"glProgramParameteriEXT",
1327	"glProgramUniform1fEXT",
1328	"glProgramUniform1fvEXT",
1329	"glProgramUniform1iEXT",
1330	"glProgramUniform1ivEXT",
1331	"glProgramUniform1uiEXT",
1332	"glProgramUniform1uivEXT",
1333	"glProgramUniform2fEXT",
1334	"glProgramUniform2fvEXT",
1335	"glProgramUniform2iEXT",
1336	"glProgramUniform2ivEXT",
1337	"glProgramUniform2uiEXT",
1338	"glProgramUniform2uivEXT",
1339	"glProgramUniform3fEXT",
1340	"glProgramUniform3fvEXT",
1341	"glProgramUniform3iEXT",
1342	"glProgramUniform3ivEXT",
1343	"glProgramUniform3uiEXT",
1344	"glProgramUniform3uivEXT",
1345	"glProgramUniform4fEXT",
1346	"glProgramUniform4fvEXT",
1347	"glProgramUniform4iEXT",
1348	"glProgramUniform4ivEXT",
1349	"glProgramUniform4uiEXT",
1350	"glProgramUniform4uivEXT",
1351	"glProgramUniformMatrix2fvEXT",
1352	"glProgramUniformMatrix2x3fvEXT",
1353	"glProgramUniformMatrix2x4fvEXT",
1354	"glProgramUniformMatrix3fvEXT",
1355	"glProgramUniformMatrix3x2fvEXT",
1356	"glProgramUniformMatrix3x4fvEXT",
1357	"glProgramUniformMatrix4fvEXT",
1358	"glProgramUniformMatrix4x2fvEXT",
1359	"glProgramUniformMatrix4x3fvEXT",
1360	"glUseProgramStagesEXT",
1361	"glValidateProgramPipelineEXT",
1362};
1363
1364static const char* s_GL_EXT_shader_framebuffer_fetch_non_coherent[] =
1365{
1366	"glFramebufferFetchBarrierEXT",
1367};
1368
1369static const char* s_GL_EXT_shader_pixel_local_storage2[] =
1370{
1371	"glClearPixelLocalStorageuiEXT",
1372	"glFramebufferPixelLocalStorageSizeEXT",
1373	"glGetFramebufferPixelLocalStorageSizeEXT",
1374};
1375
1376static const char* s_GL_EXT_sparse_texture[] =
1377{
1378	"glTexPageCommitmentEXT",
1379};
1380
1381static const char* s_GL_EXT_tessellation_shader[] =
1382{
1383	"glPatchParameteriEXT",
1384};
1385
1386static const char* s_GL_EXT_texture_border_clamp[] =
1387{
1388	"glGetSamplerParameterIivEXT",
1389	"glGetSamplerParameterIuivEXT",
1390	"glGetTexParameterIivEXT",
1391	"glGetTexParameterIuivEXT",
1392	"glSamplerParameterIivEXT",
1393	"glSamplerParameterIuivEXT",
1394	"glTexParameterIivEXT",
1395	"glTexParameterIuivEXT",
1396};
1397
1398static const char* s_GL_EXT_texture_buffer[] =
1399{
1400	"glTexBufferEXT",
1401	"glTexBufferRangeEXT",
1402};
1403
1404static const char* s_GL_EXT_texture_storage_compression[] =
1405{
1406	"glTexStorageAttribs2DEXT",
1407	"glTexStorageAttribs3DEXT",
1408};
1409
1410static const char* s_GL_EXT_texture_view[] =
1411{
1412	"glTextureViewEXT",
1413};
1414
1415static const char* s_GL_NV_timeline_semaphore[] =
1416{
1417	"glCreateSemaphoresNV",
1418	"glGetSemaphoreParameterivNV",
1419	"glSemaphoreParameterivNV",
1420};
1421
1422static const char* s_GL_EXT_win32_keyed_mutex[] =
1423{
1424	"glAcquireKeyedMutexWin32EXT",
1425	"glReleaseKeyedMutexWin32EXT",
1426};
1427
1428static const char* s_GL_EXT_window_rectangles[] =
1429{
1430	"glWindowRectanglesEXT",
1431};
1432
1433static const char* s_GL_IMG_bindless_texture[] =
1434{
1435	"glGetTextureHandleIMG",
1436	"glGetTextureSamplerHandleIMG",
1437	"glProgramUniformHandleui64IMG",
1438	"glProgramUniformHandleui64vIMG",
1439	"glUniformHandleui64IMG",
1440	"glUniformHandleui64vIMG",
1441};
1442
1443static const char* s_GL_IMG_framebuffer_downsample[] =
1444{
1445	"glFramebufferTexture2DDownsampleIMG",
1446	"glFramebufferTextureLayerDownsampleIMG",
1447};
1448
1449static const char* s_GL_INTEL_framebuffer_CMAA[] =
1450{
1451	"glApplyFramebufferAttachmentCMAAINTEL",
1452};
1453
1454static const char* s_GL_INTEL_performance_query[] =
1455{
1456	"glBeginPerfQueryINTEL",
1457	"glCreatePerfQueryINTEL",
1458	"glDeletePerfQueryINTEL",
1459	"glEndPerfQueryINTEL",
1460	"glGetFirstPerfQueryIdINTEL",
1461	"glGetNextPerfQueryIdINTEL",
1462	"glGetPerfCounterInfoINTEL",
1463	"glGetPerfQueryDataINTEL",
1464	"glGetPerfQueryIdByNameINTEL",
1465	"glGetPerfQueryInfoINTEL",
1466};
1467
1468static const char* s_GL_KHR_blend_equation_advanced[] =
1469{
1470	"glBlendBarrierKHR",
1471};
1472
1473static const char* s_GL_KHR_debug[] =
1474{
1475	"glDebugMessageCallbackKHR",
1476	"glDebugMessageControlKHR",
1477	"glDebugMessageInsertKHR",
1478	"glGetDebugMessageLogKHR",
1479	"glGetObjectLabelKHR",
1480	"glGetObjectPtrLabelKHR",
1481	"glGetPointervKHR",
1482	"glObjectLabelKHR",
1483	"glObjectPtrLabelKHR",
1484	"glPopDebugGroupKHR",
1485	"glPushDebugGroupKHR",
1486};
1487
1488static const char* s_GL_KHR_robustness[] =
1489{
1490	"glGetGraphicsResetStatusKHR",
1491	"glGetnUniformfvKHR",
1492	"glGetnUniformivKHR",
1493	"glGetnUniformuivKHR",
1494	"glReadnPixelsKHR",
1495};
1496
1497static const char* s_GL_KHR_parallel_shader_compile[] =
1498{
1499	"glMaxShaderCompilerThreadsKHR",
1500};
1501
1502static const char* s_GL_MESA_framebuffer_flip_y[] =
1503{
1504	"glFramebufferParameteriMESA",
1505	"glGetFramebufferParameterivMESA",
1506};
1507
1508static const char* s_GL_NV_bindless_texture[] =
1509{
1510	"glGetImageHandleNV",
1511	"glGetTextureHandleNV",
1512	"glGetTextureSamplerHandleNV",
1513	"glIsImageHandleResidentNV",
1514	"glIsTextureHandleResidentNV",
1515	"glMakeImageHandleNonResidentNV",
1516	"glMakeImageHandleResidentNV",
1517	"glMakeTextureHandleNonResidentNV",
1518	"glMakeTextureHandleResidentNV",
1519	"glProgramUniformHandleui64NV",
1520	"glProgramUniformHandleui64vNV",
1521	"glUniformHandleui64NV",
1522	"glUniformHandleui64vNV",
1523};
1524
1525static const char* s_GL_NV_blend_equation_advanced[] =
1526{
1527	"glBlendBarrierNV",
1528	"glBlendParameteriNV",
1529};
1530
1531static const char* s_GL_NV_clip_space_w_scaling[] =
1532{
1533	"glViewportPositionWScaleNV",
1534};
1535
1536static const char* s_GL_NV_conditional_render[] =
1537{
1538	"glBeginConditionalRenderNV",
1539	"glEndConditionalRenderNV",
1540};
1541
1542static const char* s_GL_NV_conservative_raster[] =
1543{
1544	"glSubpixelPrecisionBiasNV",
1545};
1546
1547static const char* s_GL_NV_conservative_raster_pre_snap_triangles[] =
1548{
1549	"glConservativeRasterParameteriNV",
1550};
1551
1552static const char* s_GL_NV_copy_buffer[] =
1553{
1554	"glCopyBufferSubDataNV",
1555};
1556
1557static const char* s_GL_NV_coverage_sample[] =
1558{
1559	"glCoverageMaskNV",
1560	"glCoverageOperationNV",
1561};
1562
1563static const char* s_GL_NV_draw_buffers[] =
1564{
1565	"glDrawBuffersNV",
1566};
1567
1568static const char* s_GL_NV_draw_instanced[] =
1569{
1570	"glDrawArraysInstancedNV",
1571	"glDrawElementsInstancedNV",
1572};
1573
1574static const char* s_GL_NV_draw_vulkan_image[] =
1575{
1576	"glDrawVkImageNV",
1577	"glGetVkProcAddrNV",
1578	"glWaitVkSemaphoreNV",
1579	"glSignalVkSemaphoreNV",
1580	"glSignalVkFenceNV",
1581};
1582
1583static const char* s_GL_NV_fragment_coverage_to_color[] =
1584{
1585	"glFragmentCoverageColorNV",
1586};
1587
1588static const char* s_GL_NV_framebuffer_blit[] =
1589{
1590	"glBlitFramebufferNV",
1591};
1592
1593static const char* s_GL_NV_framebuffer_mixed_samples[] =
1594{
1595	"glCoverageModulationNV",
1596	"glCoverageModulationTableNV",
1597	"glGetCoverageModulationTableNV",
1598	"glRasterSamplesEXT",
1599};
1600
1601static const char* s_GL_NV_framebuffer_multisample[] =
1602{
1603	"glRenderbufferStorageMultisampleNV",
1604};
1605
1606static const char* s_GL_NV_gpu_shader5[] =
1607{
1608	"glGetUniformi64vNV",
1609	"glProgramUniform1i64NV",
1610	"glProgramUniform1i64vNV",
1611	"glProgramUniform1ui64NV",
1612	"glProgramUniform1ui64vNV",
1613	"glProgramUniform2i64NV",
1614	"glProgramUniform2i64vNV",
1615	"glProgramUniform2ui64NV",
1616	"glProgramUniform2ui64vNV",
1617	"glProgramUniform3i64NV",
1618	"glProgramUniform3i64vNV",
1619	"glProgramUniform3ui64NV",
1620	"glProgramUniform3ui64vNV",
1621	"glProgramUniform4i64NV",
1622	"glProgramUniform4i64vNV",
1623	"glProgramUniform4ui64NV",
1624	"glProgramUniform4ui64vNV",
1625	"glUniform1i64NV",
1626	"glUniform1i64vNV",
1627	"glUniform1ui64NV",
1628	"glUniform1ui64vNV",
1629	"glUniform2i64NV",
1630	"glUniform2i64vNV",
1631	"glUniform2ui64NV",
1632	"glUniform2ui64vNV",
1633	"glUniform3i64NV",
1634	"glUniform3i64vNV",
1635	"glUniform3ui64NV",
1636	"glUniform3ui64vNV",
1637	"glUniform4i64NV",
1638	"glUniform4i64vNV",
1639	"glUniform4ui64NV",
1640	"glUniform4ui64vNV",
1641};
1642
1643static const char* s_GL_NV_instanced_arrays[] =
1644{
1645	"glVertexAttribDivisorNV",
1646};
1647
1648static const char* s_GL_NV_internalformat_sample_query[] =
1649{
1650	"glGetInternalformatSampleivNV",
1651};
1652
1653static const char* s_GL_NV_memory_attachment[] =
1654{
1655	"glBufferAttachMemoryNV",
1656	"glGetMemoryObjectDetachedResourcesuivNV",
1657	"glNamedBufferAttachMemoryNV",
1658	"glResetMemoryObjectParameterNV",
1659	"glTexAttachMemoryNV",
1660	"glTextureAttachMemoryNV",
1661};
1662
1663static const char* s_GL_NV_memory_object_sparse[] =
1664{
1665	"glBufferPageCommitmentMemNV",
1666	"glNamedBufferPageCommitmentMemNV",
1667	"glTexPageCommitmentMemNV",
1668	"glTexturePageCommitmentMemNV",
1669};
1670
1671static const char* s_GL_NV_mesh_shader[] =
1672{
1673	"glDrawMeshTasksNV",
1674	"glDrawMeshTasksIndirectNV",
1675	"glMultiDrawMeshTasksIndirectNV",
1676	"glMultiDrawMeshTasksIndirectCountNV",
1677};
1678
1679static const char* s_GL_NV_non_square_matrices[] =
1680{
1681	"glUniformMatrix2x3fvNV",
1682	"glUniformMatrix2x4fvNV",
1683	"glUniformMatrix3x2fvNV",
1684	"glUniformMatrix3x4fvNV",
1685	"glUniformMatrix4x2fvNV",
1686	"glUniformMatrix4x3fvNV",
1687};
1688
1689static const char* s_GL_NV_path_rendering[] =
1690{
1691	"glCopyPathNV",
1692	"glCoverFillPathInstancedNV",
1693	"glCoverFillPathNV",
1694	"glCoverStrokePathInstancedNV",
1695	"glCoverStrokePathNV",
1696	"glDeletePathsNV",
1697	"glGenPathsNV",
1698	"glGetPathCommandsNV",
1699	"glGetPathCoordsNV",
1700	"glGetPathDashArrayNV",
1701	"glGetPathLengthNV",
1702	"glGetPathMetricRangeNV",
1703	"glGetPathMetricsNV",
1704	"glGetPathParameterfvNV",
1705	"glGetPathParameterivNV",
1706	"glGetPathSpacingNV",
1707	"glGetProgramResourcefvNV",
1708	"glInterpolatePathsNV",
1709	"glIsPathNV",
1710	"glIsPointInFillPathNV",
1711	"glIsPointInStrokePathNV",
1712	"glMatrixFrustumEXT",
1713	"glMatrixLoad3x2fNV",
1714	"glMatrixLoad3x3fNV",
1715	"glMatrixLoadIdentityEXT",
1716	"glMatrixLoadTranspose3x3fNV",
1717	"glMatrixLoadTransposedEXT",
1718	"glMatrixLoadTransposefEXT",
1719	"glMatrixLoaddEXT",
1720	"glMatrixLoadfEXT",
1721	"glMatrixMult3x2fNV",
1722	"glMatrixMult3x3fNV",
1723	"glMatrixMultTranspose3x3fNV",
1724	"glMatrixMultTransposedEXT",
1725	"glMatrixMultTransposefEXT",
1726	"glMatrixMultdEXT",
1727	"glMatrixMultfEXT",
1728	"glMatrixOrthoEXT",
1729	"glMatrixPopEXT",
1730	"glMatrixPushEXT",
1731	"glMatrixRotatedEXT",
1732	"glMatrixRotatefEXT",
1733	"glMatrixScaledEXT",
1734	"glMatrixScalefEXT",
1735	"glMatrixTranslatedEXT",
1736	"glMatrixTranslatefEXT",
1737	"glPathCommandsNV",
1738	"glPathCoordsNV",
1739	"glPathCoverDepthFuncNV",
1740	"glPathDashArrayNV",
1741	"glPathGlyphIndexArrayNV",
1742	"glPathGlyphIndexRangeNV",
1743	"glPathGlyphRangeNV",
1744	"glPathGlyphsNV",
1745	"glPathMemoryGlyphIndexArrayNV",
1746	"glPathParameterfNV",
1747	"glPathParameterfvNV",
1748	"glPathParameteriNV",
1749	"glPathParameterivNV",
1750	"glPathStencilDepthOffsetNV",
1751	"glPathStencilFuncNV",
1752	"glPathStringNV",
1753	"glPathSubCommandsNV",
1754	"glPathSubCoordsNV",
1755	"glPointAlongPathNV",
1756	"glProgramPathFragmentInputGenNV",
1757	"glStencilFillPathInstancedNV",
1758	"glStencilFillPathNV",
1759	"glStencilStrokePathInstancedNV",
1760	"glStencilStrokePathNV",
1761	"glStencilThenCoverFillPathInstancedNV",
1762	"glStencilThenCoverFillPathNV",
1763	"glStencilThenCoverStrokePathInstancedNV",
1764	"glStencilThenCoverStrokePathNV",
1765	"glTransformPathNV",
1766	"glWeightPathsNV",
1767};
1768
1769static const char* s_GL_NV_polygon_mode[] =
1770{
1771	"glPolygonModeNV",
1772};
1773
1774static const char* s_GL_NV_read_buffer[] =
1775{
1776	"glReadBufferNV",
1777};
1778
1779static const char* s_GL_NV_sample_locations[] =
1780{
1781	"glFramebufferSampleLocationsfvNV",
1782	"glNamedFramebufferSampleLocationsfvNV",
1783	"glResolveDepthValuesNV",
1784};
1785
1786static const char* s_GL_NV_scissor_exclusive[] =
1787{
1788	"glScissorExclusiveArrayvNV",
1789	"glScissorExclusiveNV",
1790};
1791
1792static const char* s_GL_NV_shading_rate_image[] =
1793{
1794	"glBindShadingRateImageNV",
1795	"glGetShadingRateImagePaletteNV",
1796	"glGetShadingRateSampleLocationivNV",
1797	"glShadingRateImageBarrierNV",
1798	"glShadingRateImagePaletteNV",
1799	"glShadingRateSampleOrderNV",
1800	"glShadingRateSampleOrderCustomNV",
1801};
1802
1803static const char* s_GL_NV_viewport_array[] =
1804{
1805	"glDepthRangeArrayfvNV",
1806	"glDepthRangeIndexedfNV",
1807	"glDisableiNV",
1808	"glEnableiNV",
1809	"glGetFloati_vNV",
1810	"glIsEnablediNV",
1811	"glScissorArrayvNV",
1812	"glScissorIndexedNV",
1813	"glScissorIndexedvNV",
1814	"glViewportArrayvNV",
1815	"glViewportIndexedfNV",
1816	"glViewportIndexedfvNV",
1817};
1818
1819static const char* s_GL_NV_viewport_swizzle[] =
1820{
1821	"glViewportSwizzleNV",
1822};
1823
1824static const char* s_GL_OES_copy_image[] =
1825{
1826	"glCopyImageSubDataOES",
1827};
1828
1829static const char* s_GL_OES_draw_buffers_indexed[] =
1830{
1831	"glBlendEquationSeparateiOES",
1832	"glBlendEquationiOES",
1833	"glBlendFuncSeparateiOES",
1834	"glBlendFunciOES",
1835	"glColorMaskiOES",
1836	"glDisableiOES",
1837	"glEnableiOES",
1838	"glIsEnablediOES",
1839};
1840
1841static const char* s_GL_OES_draw_elements_base_vertex[] =
1842{
1843	"glDrawElementsBaseVertexOES",
1844	"glDrawElementsInstancedBaseVertexOES",
1845	"glDrawRangeElementsBaseVertexOES",
1846	"glMultiDrawElementsBaseVertexEXT",
1847};
1848
1849static const char* s_GL_OES_geometry_shader[] =
1850{
1851	"glFramebufferTextureOES",
1852};
1853
1854static const char* s_GL_OES_get_program_binary[] =
1855{
1856	"glGetProgramBinaryOES",
1857	"glProgramBinaryOES",
1858};
1859
1860static const char* s_GL_OES_primitive_bounding_box[] =
1861{
1862	"glPrimitiveBoundingBoxOES",
1863};
1864
1865static const char* s_GL_OES_sample_shading[] =
1866{
1867	"glMinSampleShadingOES",
1868};
1869
1870static const char* s_GL_OES_tessellation_shader[] =
1871{
1872	"glPatchParameteriOES",
1873};
1874
1875static const char* s_GL_OES_texture_3D[] =
1876{
1877	"glCompressedTexImage3DOES",
1878	"glCompressedTexSubImage3DOES",
1879	"glCopyTexSubImage3DOES",
1880	"glFramebufferTexture3DOES",
1881	"glTexImage3DOES",
1882	"glTexSubImage3DOES",
1883};
1884
1885static const char* s_GL_OES_texture_border_clamp[] =
1886{
1887	"glGetSamplerParameterIivOES",
1888	"glGetSamplerParameterIuivOES",
1889	"glGetTexParameterIivOES",
1890	"glGetTexParameterIuivOES",
1891	"glSamplerParameterIivOES",
1892	"glSamplerParameterIuivOES",
1893	"glTexParameterIivOES",
1894	"glTexParameterIuivOES",
1895};
1896
1897static const char* s_GL_OES_texture_buffer[] =
1898{
1899	"glTexBufferOES",
1900	"glTexBufferRangeOES",
1901};
1902
1903static const char* s_GL_OES_texture_storage_multisample_2d_array[] =
1904{
1905	"glTexStorage3DMultisampleOES",
1906};
1907
1908static const char* s_GL_OES_texture_view[] =
1909{
1910	"glTextureViewOES",
1911};
1912
1913static const char* s_GL_OES_viewport_array[] =
1914{
1915	"glDepthRangeArrayfvOES",
1916	"glDepthRangeIndexedfOES",
1917	"glDisableiOES",
1918	"glEnableiOES",
1919	"glGetFloati_vOES",
1920	"glIsEnablediOES",
1921	"glScissorArrayvOES",
1922	"glScissorIndexedOES",
1923	"glScissorIndexedvOES",
1924	"glViewportArrayvOES",
1925	"glViewportIndexedfOES",
1926	"glViewportIndexedfvOES",
1927};
1928
1929static const char* s_GL_OVR_multiview[] =
1930{
1931	"glFramebufferTextureMultiviewOVR",
1932};
1933
1934static const char* s_GL_OVR_multiview_multisampled_render_to_texture[] =
1935{
1936	"glFramebufferTextureMultisampleMultiviewOVR",
1937};
1938
1939static const char* s_GL_QCOM_alpha_test[] =
1940{
1941	"glAlphaFuncQCOM",
1942};
1943
1944static const char* s_GL_QCOM_framebuffer_foveated[] =
1945{
1946	"glFramebufferFoveationConfigQCOM",
1947	"glFramebufferFoveationParametersQCOM",
1948};
1949
1950static const char* s_GL_QCOM_motion_estimation[] =
1951{
1952	"glTexEstimateMotionQCOM",
1953	"glTexEstimateMotionRegionsQCOM",
1954};
1955
1956static const char* s_GL_QCOM_frame_extrapolation[] =
1957{
1958	"glExtrapolateTex2DQCOM",
1959};
1960
1961static const char* s_GL_QCOM_texture_foveated[] =
1962{
1963	"glTextureFoveationParametersQCOM",
1964};
1965
1966static const char* s_GL_QCOM_shader_framebuffer_fetch_noncoherent[] =
1967{
1968	"glFramebufferFetchBarrierQCOM",
1969};
1970
1971static const char* s_GL_QCOM_shading_rate[] =
1972{
1973	"glShadingRateQCOM",
1974};
1975
1976static const struct
1977{
1978	const char*			name;
1979	const int			numFunctions;
1980	const char* const*	functions;
1981} s_extensions[] =
1982{
1983	{ "EGL_ANDROID_blob_cache",								DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_blob_cache),							s_EGL_ANDROID_blob_cache							},
1984	{ "EGL_ANDROID_create_native_client_buffer",			DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_create_native_client_buffer),			s_EGL_ANDROID_create_native_client_buffer			},
1985	{ "EGL_ANDROID_get_native_client_buffer",				DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_get_native_client_buffer),				s_EGL_ANDROID_get_native_client_buffer				},
1986	{ "EGL_ANDROID_native_fence_sync",						DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_native_fence_sync),					s_EGL_ANDROID_native_fence_sync						},
1987	{ "EGL_ANDROID_presentation_time",						DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_presentation_time),					s_EGL_ANDROID_presentation_time						},
1988	{ "EGL_ANDROID_get_frame_timestamps",					DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_get_frame_timestamps),					s_EGL_ANDROID_get_frame_timestamps					},
1989	{ "EGL_ANGLE_query_surface_pointer",					DE_LENGTH_OF_ARRAY(s_EGL_ANGLE_query_surface_pointer),					s_EGL_ANGLE_query_surface_pointer					},
1990	{ "EGL_EXT_client_sync",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_client_sync),								s_EGL_EXT_client_sync								},
1991	{ "EGL_EXT_device_base",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_base),								s_EGL_EXT_device_base								},
1992	{ "EGL_EXT_device_enumeration",							DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_enumeration),						s_EGL_EXT_device_enumeration						},
1993	{ "EGL_EXT_device_query",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_query),								s_EGL_EXT_device_query								},
1994	{ "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			},
1995	{ "EGL_EXT_output_base",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_output_base),								s_EGL_EXT_output_base								},
1996	{ "EGL_EXT_platform_base",								DE_LENGTH_OF_ARRAY(s_EGL_EXT_platform_base),							s_EGL_EXT_platform_base								},
1997	{ "EGL_EXT_stream_consumer_egloutput",					DE_LENGTH_OF_ARRAY(s_EGL_EXT_stream_consumer_egloutput),				s_EGL_EXT_stream_consumer_egloutput					},
1998	{ "EGL_EXT_swap_buffers_with_damage",					DE_LENGTH_OF_ARRAY(s_EGL_EXT_swap_buffers_with_damage),					s_EGL_EXT_swap_buffers_with_damage					},
1999	{ "EGL_EXT_sync_reuse",									DE_LENGTH_OF_ARRAY(s_EGL_EXT_sync_reuse),								s_EGL_EXT_sync_reuse								},
2000	{ "EGL_HI_clientpixmap",								DE_LENGTH_OF_ARRAY(s_EGL_HI_clientpixmap),								s_EGL_HI_clientpixmap								},
2001	{ "EGL_KHR_cl_event2",									DE_LENGTH_OF_ARRAY(s_EGL_KHR_cl_event2),								s_EGL_KHR_cl_event2									},
2002	{ "EGL_KHR_debug",										DE_LENGTH_OF_ARRAY(s_EGL_KHR_debug),									s_EGL_KHR_debug										},
2003	{ "EGL_KHR_display_reference",							DE_LENGTH_OF_ARRAY(s_EGL_KHR_display_reference),						s_EGL_KHR_display_reference							},
2004	{ "EGL_KHR_fence_sync",									DE_LENGTH_OF_ARRAY(s_EGL_KHR_fence_sync),								s_EGL_KHR_fence_sync								},
2005	{ "EGL_KHR_image",										DE_LENGTH_OF_ARRAY(s_EGL_KHR_image),									s_EGL_KHR_image										},
2006	{ "EGL_KHR_image_base",									DE_LENGTH_OF_ARRAY(s_EGL_KHR_image_base),								s_EGL_KHR_image_base								},
2007	{ "EGL_KHR_lock_surface",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface),								s_EGL_KHR_lock_surface								},
2008	{ "EGL_KHR_lock_surface3",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface3),							s_EGL_KHR_lock_surface3								},
2009	{ "EGL_KHR_partial_update",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_partial_update),							s_EGL_KHR_partial_update							},
2010	{ "EGL_KHR_reusable_sync",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_reusable_sync),							s_EGL_KHR_reusable_sync								},
2011	{ "EGL_KHR_stream",										DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream),									s_EGL_KHR_stream									},
2012	{ "EGL_KHR_stream_attrib",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_attrib),							s_EGL_KHR_stream_attrib								},
2013	{ "EGL_KHR_stream_consumer_gltexture",					DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_consumer_gltexture),				s_EGL_KHR_stream_consumer_gltexture					},
2014	{ "EGL_KHR_stream_cross_process_fd",					DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_cross_process_fd),					s_EGL_KHR_stream_cross_process_fd					},
2015	{ "EGL_KHR_stream_fifo",								DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_fifo),								s_EGL_KHR_stream_fifo								},
2016	{ "EGL_KHR_stream_producer_eglsurface",					DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_producer_eglsurface),				s_EGL_KHR_stream_producer_eglsurface				},
2017	{ "EGL_KHR_swap_buffers_with_damage",					DE_LENGTH_OF_ARRAY(s_EGL_KHR_swap_buffers_with_damage),					s_EGL_KHR_swap_buffers_with_damage					},
2018	{ "EGL_KHR_wait_sync",									DE_LENGTH_OF_ARRAY(s_EGL_KHR_wait_sync),								s_EGL_KHR_wait_sync									},
2019	{ "EGL_MESA_drm_image",									DE_LENGTH_OF_ARRAY(s_EGL_MESA_drm_image),								s_EGL_MESA_drm_image								},
2020	{ "EGL_MESA_image_dma_buf_export",						DE_LENGTH_OF_ARRAY(s_EGL_MESA_image_dma_buf_export),					s_EGL_MESA_image_dma_buf_export						},
2021	{ "EGL_NOK_swap_region",								DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region),								s_EGL_NOK_swap_region								},
2022	{ "EGL_NOK_swap_region2",								DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region2),								s_EGL_NOK_swap_region2								},
2023	{ "EGL_NV_native_query",								DE_LENGTH_OF_ARRAY(s_EGL_NV_native_query),								s_EGL_NV_native_query								},
2024	{ "EGL_NV_post_sub_buffer",								DE_LENGTH_OF_ARRAY(s_EGL_NV_post_sub_buffer),							s_EGL_NV_post_sub_buffer							},
2025	{ "EGL_NV_stream_consumer_gltexture_yuv",				DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_consumer_gltexture_yuv),				s_EGL_NV_stream_consumer_gltexture_yuv				},
2026	{ "EGL_NV_stream_flush",								DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_flush),								s_EGL_NV_stream_flush								},
2027	{ "EGL_NV_stream_metadata",								DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_metadata),							s_EGL_NV_stream_metadata							},
2028	{ "EGL_NV_stream_reset",								DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_reset),								s_EGL_NV_stream_reset								},
2029	{ "EGL_NV_stream_sync",									DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_sync),								s_EGL_NV_stream_sync								},
2030	{ "EGL_NV_sync",										DE_LENGTH_OF_ARRAY(s_EGL_NV_sync),										s_EGL_NV_sync										},
2031	{ "EGL_NV_system_time",									DE_LENGTH_OF_ARRAY(s_EGL_NV_system_time),								s_EGL_NV_system_time								},
2032	{ "EGL_EXT_compositor",									DE_LENGTH_OF_ARRAY(s_EGL_EXT_compositor),								s_EGL_EXT_compositor								},
2033	{ "GL_APPLE_copy_texture_levels",						DE_LENGTH_OF_ARRAY(s_GL_APPLE_copy_texture_levels),						s_GL_APPLE_copy_texture_levels						},
2034	{ "GL_APPLE_framebuffer_multisample",					DE_LENGTH_OF_ARRAY(s_GL_APPLE_framebuffer_multisample),					s_GL_APPLE_framebuffer_multisample					},
2035	{ "GL_APPLE_sync",										DE_LENGTH_OF_ARRAY(s_GL_APPLE_sync),									s_GL_APPLE_sync										},
2036	{ "GL_EXT_debug_marker",								DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_marker),								s_GL_EXT_debug_marker								},
2037	{ "GL_EXT_discard_framebuffer",							DE_LENGTH_OF_ARRAY(s_GL_EXT_discard_framebuffer),						s_GL_EXT_discard_framebuffer						},
2038	{ "GL_EXT_map_buffer_range",							DE_LENGTH_OF_ARRAY(s_GL_EXT_map_buffer_range),							s_GL_EXT_map_buffer_range							},
2039	{ "GL_EXT_multi_draw_arrays",							DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_arrays),							s_GL_EXT_multi_draw_arrays							},
2040	{ "GL_EXT_multisampled_render_to_texture",				DE_LENGTH_OF_ARRAY(s_GL_EXT_multisampled_render_to_texture),			s_GL_EXT_multisampled_render_to_texture				},
2041	{ "GL_EXT_robustness",									DE_LENGTH_OF_ARRAY(s_GL_EXT_robustness),								s_GL_EXT_robustness									},
2042	{ "GL_EXT_texture_storage",								DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_storage),							s_GL_EXT_texture_storage							},
2043	{ "GL_IMG_multisampled_render_to_texture",				DE_LENGTH_OF_ARRAY(s_GL_IMG_multisampled_render_to_texture),			s_GL_IMG_multisampled_render_to_texture				},
2044	{ "GL_IMG_user_clip_plane",								DE_LENGTH_OF_ARRAY(s_GL_IMG_user_clip_plane),							s_GL_IMG_user_clip_plane							},
2045	{ "GL_NV_fence",										DE_LENGTH_OF_ARRAY(s_GL_NV_fence),										s_GL_NV_fence										},
2046	{ "GL_OES_EGL_image",									DE_LENGTH_OF_ARRAY(s_GL_OES_EGL_image),									s_GL_OES_EGL_image									},
2047	{ "GL_OES_blend_equation_separate",						DE_LENGTH_OF_ARRAY(s_GL_OES_blend_equation_separate),					s_GL_OES_blend_equation_separate					},
2048	{ "GL_OES_blend_func_separate",							DE_LENGTH_OF_ARRAY(s_GL_OES_blend_func_separate),						s_GL_OES_blend_func_separate						},
2049	{ "GL_OES_blend_subtract",								DE_LENGTH_OF_ARRAY(s_GL_OES_blend_subtract),							s_GL_OES_blend_subtract								},
2050	{ "GL_OES_draw_texture",								DE_LENGTH_OF_ARRAY(s_GL_OES_draw_texture),								s_GL_OES_draw_texture								},
2051	{ "GL_OES_fixed_point",									DE_LENGTH_OF_ARRAY(s_GL_OES_fixed_point),								s_GL_OES_fixed_point								},
2052	{ "GL_OES_framebuffer_object",							DE_LENGTH_OF_ARRAY(s_GL_OES_framebuffer_object),						s_GL_OES_framebuffer_object							},
2053	{ "GL_OES_mapbuffer",									DE_LENGTH_OF_ARRAY(s_GL_OES_mapbuffer),									s_GL_OES_mapbuffer									},
2054	{ "GL_OES_matrix_palette",								DE_LENGTH_OF_ARRAY(s_GL_OES_matrix_palette),							s_GL_OES_matrix_palette								},
2055	{ "GL_OES_point_size_array",							DE_LENGTH_OF_ARRAY(s_GL_OES_point_size_array),							s_GL_OES_point_size_array							},
2056	{ "GL_OES_query_matrix",								DE_LENGTH_OF_ARRAY(s_GL_OES_query_matrix),								s_GL_OES_query_matrix								},
2057	{ "GL_OES_single_precision",							DE_LENGTH_OF_ARRAY(s_GL_OES_single_precision),							s_GL_OES_single_precision							},
2058	{ "GL_OES_texture_cube_map",							DE_LENGTH_OF_ARRAY(s_GL_OES_texture_cube_map),							s_GL_OES_texture_cube_map							},
2059	{ "GL_OES_vertex_array_object",							DE_LENGTH_OF_ARRAY(s_GL_OES_vertex_array_object),						s_GL_OES_vertex_array_object						},
2060	{ "GL_QCOM_driver_control",								DE_LENGTH_OF_ARRAY(s_GL_QCOM_driver_control),							s_GL_QCOM_driver_control							},
2061	{ "GL_QCOM_extended_get",								DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get),								s_GL_QCOM_extended_get								},
2062	{ "GL_QCOM_extended_get2",								DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get2),							s_GL_QCOM_extended_get2								},
2063	{ "GL_QCOM_tiled_rendering",							DE_LENGTH_OF_ARRAY(s_GL_QCOM_tiled_rendering),							s_GL_QCOM_tiled_rendering							},
2064	{ "GL_AMD_framebuffer_multisample_advanced",			DE_LENGTH_OF_ARRAY(s_GL_AMD_framebuffer_multisample_advanced),			s_GL_AMD_framebuffer_multisample_advanced			},
2065	{ "GL_AMD_performance_monitor",							DE_LENGTH_OF_ARRAY(s_GL_AMD_performance_monitor),						s_GL_AMD_performance_monitor						},
2066	{ "GL_ANGLE_framebuffer_blit",							DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_blit),						s_GL_ANGLE_framebuffer_blit							},
2067	{ "GL_ANGLE_framebuffer_multisample",					DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_multisample),					s_GL_ANGLE_framebuffer_multisample					},
2068	{ "GL_ANGLE_instanced_arrays",							DE_LENGTH_OF_ARRAY(s_GL_ANGLE_instanced_arrays),						s_GL_ANGLE_instanced_arrays							},
2069	{ "GL_ANGLE_translated_shader_source",					DE_LENGTH_OF_ARRAY(s_GL_ANGLE_translated_shader_source),				s_GL_ANGLE_translated_shader_source					},
2070	{ "GL_EXT_EGL_image_storage",							DE_LENGTH_OF_ARRAY(s_GL_EXT_EGL_image_storage),							s_GL_EXT_EGL_image_storage							},
2071	{ "GL_EXT_base_instance",								DE_LENGTH_OF_ARRAY(s_GL_EXT_base_instance),								s_GL_EXT_base_instance								},
2072	{ "GL_EXT_blend_func_extended",							DE_LENGTH_OF_ARRAY(s_GL_EXT_blend_func_extended),						s_GL_EXT_blend_func_extended						},
2073	{ "GL_EXT_buffer_storage",								DE_LENGTH_OF_ARRAY(s_GL_EXT_buffer_storage),							s_GL_EXT_buffer_storage								},
2074	{ "GL_EXT_clear_texture",								DE_LENGTH_OF_ARRAY(s_GL_EXT_clear_texture),								s_GL_EXT_clear_texture								},
2075	{ "GL_EXT_clip_control",								DE_LENGTH_OF_ARRAY(s_GL_EXT_clip_control),								s_GL_EXT_clip_control								},
2076	{ "GL_EXT_copy_image",									DE_LENGTH_OF_ARRAY(s_GL_EXT_copy_image),								s_GL_EXT_copy_image									},
2077	{ "GL_EXT_debug_label",									DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_label),								s_GL_EXT_debug_label								},
2078	{ "GL_EXT_disjoint_timer_query",						DE_LENGTH_OF_ARRAY(s_GL_EXT_disjoint_timer_query),						s_GL_EXT_disjoint_timer_query						},
2079	{ "GL_EXT_draw_buffers",								DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers),								s_GL_EXT_draw_buffers								},
2080	{ "GL_EXT_draw_buffers_indexed",						DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers_indexed),						s_GL_EXT_draw_buffers_indexed						},
2081	{ "GL_EXT_draw_elements_base_vertex",					DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_elements_base_vertex),					s_GL_EXT_draw_elements_base_vertex					},
2082	{ "GL_EXT_draw_instanced",								DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_instanced),							s_GL_EXT_draw_instanced								},
2083	{ "GL_EXT_draw_transform_feedback",						DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_transform_feedback),					s_GL_EXT_draw_transform_feedback					},
2084	{ "GL_EXT_external_buffer",								DE_LENGTH_OF_ARRAY(s_GL_EXT_external_buffer),							s_GL_EXT_external_buffer							},
2085	{ "GL_EXT_fragment_shading_rate",						DE_LENGTH_OF_ARRAY(s_GL_EXT_fragment_shading_rate),						s_GL_EXT_fragment_shading_rate						},
2086	{ "GL_EXT_geometry_shader",								DE_LENGTH_OF_ARRAY(s_GL_EXT_geometry_shader),							s_GL_EXT_geometry_shader							},
2087	{ "GL_EXT_instanced_arrays",							DE_LENGTH_OF_ARRAY(s_GL_EXT_instanced_arrays),							s_GL_EXT_instanced_arrays							},
2088	{ "GL_EXT_memory_object",								DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object),								s_GL_EXT_memory_object								},
2089	{ "GL_EXT_memory_object_fd",							DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_fd),							s_GL_EXT_memory_object_fd							},
2090	{ "GL_EXT_memory_object_win32",							DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_win32),						s_GL_EXT_memory_object_win32						},
2091	{ "GL_EXT_multi_draw_indirect",							DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_indirect),						s_GL_EXT_multi_draw_indirect						},
2092	{ "GL_EXT_multiview_draw_buffers",						DE_LENGTH_OF_ARRAY(s_GL_EXT_multiview_draw_buffers),					s_GL_EXT_multiview_draw_buffers						},
2093	{ "GL_EXT_occlusion_query_boolean",						DE_LENGTH_OF_ARRAY(s_GL_EXT_occlusion_query_boolean),					s_GL_EXT_occlusion_query_boolean					},
2094	{ "GL_EXT_polygon_offset_clamp",						DE_LENGTH_OF_ARRAY(s_GL_EXT_polygon_offset_clamp),						s_GL_EXT_polygon_offset_clamp						},
2095	{ "GL_EXT_primitive_bounding_box",						DE_LENGTH_OF_ARRAY(s_GL_EXT_primitive_bounding_box),					s_GL_EXT_primitive_bounding_box						},
2096	{ "GL_EXT_raster_multisample",							DE_LENGTH_OF_ARRAY(s_GL_EXT_raster_multisample),						s_GL_EXT_raster_multisample							},
2097	{ "GL_EXT_semaphore",									DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore),									s_GL_EXT_semaphore									},
2098	{ "GL_EXT_semaphore_fd",								DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_fd),								s_GL_EXT_semaphore_fd								},
2099	{ "GL_EXT_semaphore_win32",								DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_win32),							s_GL_EXT_semaphore_win32							},
2100	{ "GL_EXT_separate_shader_objects",						DE_LENGTH_OF_ARRAY(s_GL_EXT_separate_shader_objects),					s_GL_EXT_separate_shader_objects					},
2101	{ "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		},
2102	{ "GL_EXT_shader_pixel_local_storage2",					DE_LENGTH_OF_ARRAY(s_GL_EXT_shader_pixel_local_storage2),				s_GL_EXT_shader_pixel_local_storage2				},
2103	{ "GL_EXT_sparse_texture",								DE_LENGTH_OF_ARRAY(s_GL_EXT_sparse_texture),							s_GL_EXT_sparse_texture								},
2104	{ "GL_EXT_tessellation_shader",							DE_LENGTH_OF_ARRAY(s_GL_EXT_tessellation_shader),						s_GL_EXT_tessellation_shader						},
2105	{ "GL_EXT_texture_border_clamp",						DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_border_clamp),						s_GL_EXT_texture_border_clamp						},
2106	{ "GL_EXT_texture_buffer",								DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_buffer),							s_GL_EXT_texture_buffer								},
2107	{ "GL_EXT_texture_storage_compression",					DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_storage_compression),				s_GL_EXT_texture_storage_compression				},
2108	{ "GL_EXT_texture_view",								DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_view),								s_GL_EXT_texture_view								},
2109	{ "GL_NV_timeline_semaphore",							DE_LENGTH_OF_ARRAY(s_GL_NV_timeline_semaphore),							s_GL_NV_timeline_semaphore							},
2110	{ "GL_EXT_win32_keyed_mutex",							DE_LENGTH_OF_ARRAY(s_GL_EXT_win32_keyed_mutex),							s_GL_EXT_win32_keyed_mutex							},
2111	{ "GL_EXT_window_rectangles",							DE_LENGTH_OF_ARRAY(s_GL_EXT_window_rectangles),							s_GL_EXT_window_rectangles							},
2112	{ "GL_IMG_bindless_texture",							DE_LENGTH_OF_ARRAY(s_GL_IMG_bindless_texture),							s_GL_IMG_bindless_texture							},
2113	{ "GL_IMG_framebuffer_downsample",						DE_LENGTH_OF_ARRAY(s_GL_IMG_framebuffer_downsample),					s_GL_IMG_framebuffer_downsample						},
2114	{ "GL_INTEL_framebuffer_CMAA",							DE_LENGTH_OF_ARRAY(s_GL_INTEL_framebuffer_CMAA),						s_GL_INTEL_framebuffer_CMAA							},
2115	{ "GL_INTEL_performance_query",							DE_LENGTH_OF_ARRAY(s_GL_INTEL_performance_query),						s_GL_INTEL_performance_query						},
2116	{ "GL_KHR_blend_equation_advanced",						DE_LENGTH_OF_ARRAY(s_GL_KHR_blend_equation_advanced),					s_GL_KHR_blend_equation_advanced					},
2117	{ "GL_KHR_debug",										DE_LENGTH_OF_ARRAY(s_GL_KHR_debug),										s_GL_KHR_debug										},
2118	{ "GL_KHR_robustness",									DE_LENGTH_OF_ARRAY(s_GL_KHR_robustness),								s_GL_KHR_robustness									},
2119	{ "GL_KHR_parallel_shader_compile",						DE_LENGTH_OF_ARRAY(s_GL_KHR_parallel_shader_compile),					s_GL_KHR_parallel_shader_compile					},
2120	{ "GL_MESA_framebuffer_flip_y",							DE_LENGTH_OF_ARRAY(s_GL_MESA_framebuffer_flip_y),						s_GL_MESA_framebuffer_flip_y						},
2121	{ "GL_NV_bindless_texture",								DE_LENGTH_OF_ARRAY(s_GL_NV_bindless_texture),							s_GL_NV_bindless_texture							},
2122	{ "GL_NV_blend_equation_advanced",						DE_LENGTH_OF_ARRAY(s_GL_NV_blend_equation_advanced),					s_GL_NV_blend_equation_advanced						},
2123	{ "GL_NV_clip_space_w_scaling",							DE_LENGTH_OF_ARRAY(s_GL_NV_clip_space_w_scaling),						s_GL_NV_clip_space_w_scaling						},
2124	{ "GL_NV_conditional_render",							DE_LENGTH_OF_ARRAY(s_GL_NV_conditional_render),							s_GL_NV_conditional_render							},
2125	{ "GL_NV_conservative_raster",							DE_LENGTH_OF_ARRAY(s_GL_NV_conservative_raster),						s_GL_NV_conservative_raster							},
2126	{ "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		},
2127	{ "GL_NV_copy_buffer",									DE_LENGTH_OF_ARRAY(s_GL_NV_copy_buffer),								s_GL_NV_copy_buffer									},
2128	{ "GL_NV_coverage_sample",								DE_LENGTH_OF_ARRAY(s_GL_NV_coverage_sample),							s_GL_NV_coverage_sample								},
2129	{ "GL_NV_draw_buffers",									DE_LENGTH_OF_ARRAY(s_GL_NV_draw_buffers),								s_GL_NV_draw_buffers								},
2130	{ "GL_NV_draw_instanced",								DE_LENGTH_OF_ARRAY(s_GL_NV_draw_instanced),								s_GL_NV_draw_instanced								},
2131	{ "GL_NV_draw_vulkan_image",							DE_LENGTH_OF_ARRAY(s_GL_NV_draw_vulkan_image),							s_GL_NV_draw_vulkan_image							},
2132	{ "GL_NV_fragment_coverage_to_color",					DE_LENGTH_OF_ARRAY(s_GL_NV_fragment_coverage_to_color),					s_GL_NV_fragment_coverage_to_color					},
2133	{ "GL_NV_framebuffer_blit",								DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_blit),							s_GL_NV_framebuffer_blit							},
2134	{ "GL_NV_framebuffer_mixed_samples",					DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_mixed_samples),					s_GL_NV_framebuffer_mixed_samples					},
2135	{ "GL_NV_framebuffer_multisample",						DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_multisample),					s_GL_NV_framebuffer_multisample						},
2136	{ "GL_NV_gpu_shader5",									DE_LENGTH_OF_ARRAY(s_GL_NV_gpu_shader5),								s_GL_NV_gpu_shader5									},
2137	{ "GL_NV_instanced_arrays",								DE_LENGTH_OF_ARRAY(s_GL_NV_instanced_arrays),							s_GL_NV_instanced_arrays							},
2138	{ "GL_NV_internalformat_sample_query",					DE_LENGTH_OF_ARRAY(s_GL_NV_internalformat_sample_query),				s_GL_NV_internalformat_sample_query					},
2139	{ "GL_NV_memory_attachment",							DE_LENGTH_OF_ARRAY(s_GL_NV_memory_attachment),							s_GL_NV_memory_attachment							},
2140	{ "GL_NV_memory_object_sparse",							DE_LENGTH_OF_ARRAY(s_GL_NV_memory_object_sparse),						s_GL_NV_memory_object_sparse						},
2141	{ "GL_NV_mesh_shader",									DE_LENGTH_OF_ARRAY(s_GL_NV_mesh_shader),								s_GL_NV_mesh_shader									},
2142	{ "GL_NV_non_square_matrices",							DE_LENGTH_OF_ARRAY(s_GL_NV_non_square_matrices),						s_GL_NV_non_square_matrices							},
2143	{ "GL_NV_path_rendering",								DE_LENGTH_OF_ARRAY(s_GL_NV_path_rendering),								s_GL_NV_path_rendering								},
2144	{ "GL_NV_polygon_mode",									DE_LENGTH_OF_ARRAY(s_GL_NV_polygon_mode),								s_GL_NV_polygon_mode								},
2145	{ "GL_NV_read_buffer",									DE_LENGTH_OF_ARRAY(s_GL_NV_read_buffer),								s_GL_NV_read_buffer									},
2146	{ "GL_NV_sample_locations",								DE_LENGTH_OF_ARRAY(s_GL_NV_sample_locations),							s_GL_NV_sample_locations							},
2147	{ "GL_NV_scissor_exclusive",							DE_LENGTH_OF_ARRAY(s_GL_NV_scissor_exclusive),							s_GL_NV_scissor_exclusive							},
2148	{ "GL_NV_shading_rate_image",							DE_LENGTH_OF_ARRAY(s_GL_NV_shading_rate_image),							s_GL_NV_shading_rate_image							},
2149	{ "GL_NV_viewport_array",								DE_LENGTH_OF_ARRAY(s_GL_NV_viewport_array),								s_GL_NV_viewport_array								},
2150	{ "GL_NV_viewport_swizzle",								DE_LENGTH_OF_ARRAY(s_GL_NV_viewport_swizzle),							s_GL_NV_viewport_swizzle							},
2151	{ "GL_OES_copy_image",									DE_LENGTH_OF_ARRAY(s_GL_OES_copy_image),								s_GL_OES_copy_image									},
2152	{ "GL_OES_draw_buffers_indexed",						DE_LENGTH_OF_ARRAY(s_GL_OES_draw_buffers_indexed),						s_GL_OES_draw_buffers_indexed						},
2153	{ "GL_OES_draw_elements_base_vertex",					DE_LENGTH_OF_ARRAY(s_GL_OES_draw_elements_base_vertex),					s_GL_OES_draw_elements_base_vertex					},
2154	{ "GL_OES_geometry_shader",								DE_LENGTH_OF_ARRAY(s_GL_OES_geometry_shader),							s_GL_OES_geometry_shader							},
2155	{ "GL_OES_get_program_binary",							DE_LENGTH_OF_ARRAY(s_GL_OES_get_program_binary),						s_GL_OES_get_program_binary							},
2156	{ "GL_OES_primitive_bounding_box",						DE_LENGTH_OF_ARRAY(s_GL_OES_primitive_bounding_box),					s_GL_OES_primitive_bounding_box						},
2157	{ "GL_OES_sample_shading",								DE_LENGTH_OF_ARRAY(s_GL_OES_sample_shading),							s_GL_OES_sample_shading								},
2158	{ "GL_OES_tessellation_shader",							DE_LENGTH_OF_ARRAY(s_GL_OES_tessellation_shader),						s_GL_OES_tessellation_shader						},
2159	{ "GL_OES_texture_3D",									DE_LENGTH_OF_ARRAY(s_GL_OES_texture_3D),								s_GL_OES_texture_3D									},
2160	{ "GL_OES_texture_border_clamp",						DE_LENGTH_OF_ARRAY(s_GL_OES_texture_border_clamp),						s_GL_OES_texture_border_clamp						},
2161	{ "GL_OES_texture_buffer",								DE_LENGTH_OF_ARRAY(s_GL_OES_texture_buffer),							s_GL_OES_texture_buffer								},
2162	{ "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		},
2163	{ "GL_OES_texture_view",								DE_LENGTH_OF_ARRAY(s_GL_OES_texture_view),								s_GL_OES_texture_view								},
2164	{ "GL_OES_viewport_array",								DE_LENGTH_OF_ARRAY(s_GL_OES_viewport_array),							s_GL_OES_viewport_array								},
2165	{ "GL_OVR_multiview",									DE_LENGTH_OF_ARRAY(s_GL_OVR_multiview),									s_GL_OVR_multiview									},
2166	{ "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	},
2167	{ "GL_QCOM_alpha_test",									DE_LENGTH_OF_ARRAY(s_GL_QCOM_alpha_test),								s_GL_QCOM_alpha_test								},
2168	{ "GL_QCOM_framebuffer_foveated",						DE_LENGTH_OF_ARRAY(s_GL_QCOM_framebuffer_foveated),						s_GL_QCOM_framebuffer_foveated						},
2169	{ "GL_QCOM_motion_estimation",							DE_LENGTH_OF_ARRAY(s_GL_QCOM_motion_estimation),						s_GL_QCOM_motion_estimation							},
2170	{ "GL_QCOM_frame_extrapolation",						DE_LENGTH_OF_ARRAY(s_GL_QCOM_frame_extrapolation),						s_GL_QCOM_frame_extrapolation						},
2171	{ "GL_QCOM_texture_foveated",							DE_LENGTH_OF_ARRAY(s_GL_QCOM_texture_foveated),							s_GL_QCOM_texture_foveated							},
2172	{ "GL_QCOM_shader_framebuffer_fetch_noncoherent",		DE_LENGTH_OF_ARRAY(s_GL_QCOM_shader_framebuffer_fetch_noncoherent),		s_GL_QCOM_shader_framebuffer_fetch_noncoherent		},
2173	{ "GL_QCOM_shading_rate",								DE_LENGTH_OF_ARRAY(s_GL_QCOM_shading_rate),								s_GL_QCOM_shading_rate								},
2174};
2175