1 /* WARNING: This is auto-generated file. Do not modify, since changes will
2 * be lost! Modify the generating script instead.
4 * Generated from Khronos EGL API description (egl.xml) revision 3338ed0db494d6a4db7f76627b38f0b1892db096.
7 static const char* s_EGL14[] =
14 "eglCreatePbufferFromClientBuffer",
15 "eglCreatePbufferSurface",
16 "eglCreatePixmapSurface",
17 "eglCreateWindowSurface",
22 "eglGetCurrentContext",
23 "eglGetCurrentDisplay",
24 "eglGetCurrentSurface",
45 static const char* s_EGL15[] =
49 "eglCreatePlatformPixmapSurface",
50 "eglCreatePlatformWindowSurface",
54 "eglGetPlatformDisplay",
59 static const char* s_GLES10[] =
75 "glClientActiveTexture",
83 "glCompressedTexImage2D",
84 "glCompressedTexSubImage2D",
86 "glCopyTexSubImage2D",
95 "glDisableClientState",
99 "glEnableClientState",
112 "glGetBufferParameteriv",
128 "glGetTexParameterfv",
129 "glGetTexParameteriv",
130 "glGetTexParameterxv",
165 "glPointParameterfv",
167 "glPointParameterxv",
207 static const char* s_GLES20[] =
211 "glBindAttribLocation",
214 "glBindRenderbuffer",
218 "glBlendEquationSeparate",
220 "glBlendFuncSeparate",
223 "glCheckFramebufferStatus",
230 "glCompressedTexImage2D",
231 "glCompressedTexSubImage2D",
233 "glCopyTexSubImage2D",
238 "glDeleteFramebuffers",
240 "glDeleteRenderbuffers",
248 "glDisableVertexAttribArray",
252 "glEnableVertexAttribArray",
255 "glFramebufferRenderbuffer",
256 "glFramebufferTexture2D",
260 "glGenRenderbuffers",
264 "glGetActiveUniform",
265 "glGetAttachedShaders",
266 "glGetAttribLocation",
268 "glGetBufferParameteriv",
271 "glGetFramebufferAttachmentParameteriv",
273 "glGetProgramInfoLog",
275 "glGetRenderbufferParameteriv",
276 "glGetShaderInfoLog",
277 "glGetShaderPrecisionFormat",
281 "glGetTexParameterfv",
282 "glGetTexParameteriv",
283 "glGetUniformLocation",
286 "glGetVertexAttribPointerv",
287 "glGetVertexAttribfv",
288 "glGetVertexAttribiv",
302 "glReleaseShaderCompiler",
303 "glRenderbufferStorage",
309 "glStencilFuncSeparate",
311 "glStencilMaskSeparate",
313 "glStencilOpSeparate",
336 "glUniformMatrix2fv",
337 "glUniformMatrix3fv",
338 "glUniformMatrix4fv",
349 "glVertexAttribPointer",
353 static const char* s_GLES30[] =
356 "glBeginTransformFeedback",
360 "glBindTransformFeedback",
368 "glCompressedTexImage3D",
369 "glCompressedTexSubImage3D",
370 "glCopyBufferSubData",
371 "glCopyTexSubImage3D",
375 "glDeleteTransformFeedbacks",
376 "glDeleteVertexArrays",
377 "glDrawArraysInstanced",
379 "glDrawElementsInstanced",
380 "glDrawRangeElements",
382 "glEndTransformFeedback",
384 "glFlushMappedBufferRange",
385 "glFramebufferTextureLayer",
388 "glGenTransformFeedbacks",
390 "glGetActiveUniformBlockName",
391 "glGetActiveUniformBlockiv",
392 "glGetActiveUniformsiv",
393 "glGetBufferParameteri64v",
394 "glGetBufferPointerv",
395 "glGetFragDataLocation",
399 "glGetInternalformativ",
400 "glGetProgramBinary",
401 "glGetQueryObjectuiv",
403 "glGetSamplerParameterfv",
404 "glGetSamplerParameteriv",
407 "glGetTransformFeedbackVarying",
408 "glGetUniformBlockIndex",
409 "glGetUniformIndices",
411 "glGetVertexAttribIiv",
412 "glGetVertexAttribIuiv",
413 "glInvalidateFramebuffer",
414 "glInvalidateSubFramebuffer",
418 "glIsTransformFeedback",
421 "glPauseTransformFeedback",
423 "glProgramParameteri",
425 "glRenderbufferStorageMultisample",
426 "glResumeTransformFeedback",
427 "glSamplerParameterf",
428 "glSamplerParameterfv",
429 "glSamplerParameteri",
430 "glSamplerParameteriv",
435 "glTransformFeedbackVaryings",
444 "glUniformBlockBinding",
445 "glUniformMatrix2x3fv",
446 "glUniformMatrix2x4fv",
447 "glUniformMatrix3x2fv",
448 "glUniformMatrix3x4fv",
449 "glUniformMatrix4x2fv",
450 "glUniformMatrix4x3fv",
452 "glVertexAttribDivisor",
454 "glVertexAttribI4iv",
455 "glVertexAttribI4ui",
456 "glVertexAttribI4uiv",
457 "glVertexAttribIPointer",
461 static const char* s_EGL_ANDROID_blob_cache[] =
463 "eglSetBlobCacheFuncsANDROID",
466 static const char* s_EGL_ANDROID_create_native_client_buffer[] =
468 "eglCreateNativeClientBufferANDROID",
471 static const char* s_EGL_ANDROID_get_native_client_buffer[] =
473 "eglGetNativeClientBufferANDROID",
476 static const char* s_EGL_ANDROID_native_fence_sync[] =
478 "eglDupNativeFenceFDANDROID",
481 static const char* s_EGL_ANDROID_presentation_time[] =
483 "eglPresentationTimeANDROID",
486 static const char* s_EGL_ANDROID_get_frame_timestamps[] =
488 "eglGetCompositorTimingSupportedANDROID",
489 "eglGetCompositorTimingANDROID",
490 "eglGetNextFrameIdANDROID",
491 "eglGetFrameTimestampSupportedANDROID",
492 "eglGetFrameTimestampsANDROID",
495 static const char* s_EGL_ANGLE_query_surface_pointer[] =
497 "eglQuerySurfacePointerANGLE",
500 static const char* s_EGL_EXT_client_sync[] =
502 "eglClientSignalSyncEXT",
505 static const char* s_EGL_EXT_device_base[] =
507 "eglQueryDeviceAttribEXT",
508 "eglQueryDeviceStringEXT",
509 "eglQueryDevicesEXT",
510 "eglQueryDisplayAttribEXT",
513 static const char* s_EGL_EXT_device_enumeration[] =
515 "eglQueryDevicesEXT",
518 static const char* s_EGL_EXT_device_query[] =
520 "eglQueryDeviceAttribEXT",
521 "eglQueryDeviceStringEXT",
522 "eglQueryDisplayAttribEXT",
525 static const char* s_EGL_EXT_image_dma_buf_import_modifiers[] =
527 "eglQueryDmaBufFormatsEXT",
528 "eglQueryDmaBufModifiersEXT",
531 static const char* s_EGL_EXT_output_base[] =
533 "eglGetOutputLayersEXT",
534 "eglGetOutputPortsEXT",
535 "eglOutputLayerAttribEXT",
536 "eglOutputPortAttribEXT",
537 "eglQueryOutputLayerAttribEXT",
538 "eglQueryOutputLayerStringEXT",
539 "eglQueryOutputPortAttribEXT",
540 "eglQueryOutputPortStringEXT",
543 static const char* s_EGL_EXT_platform_base[] =
545 "eglCreatePlatformPixmapSurfaceEXT",
546 "eglCreatePlatformWindowSurfaceEXT",
547 "eglGetPlatformDisplayEXT",
550 static const char* s_EGL_EXT_stream_consumer_egloutput[] =
552 "eglStreamConsumerOutputEXT",
555 static const char* s_EGL_EXT_swap_buffers_with_damage[] =
557 "eglSwapBuffersWithDamageEXT",
560 static const char* s_EGL_EXT_sync_reuse[] =
562 "eglUnsignalSyncEXT",
565 static const char* s_EGL_HI_clientpixmap[] =
567 "eglCreatePixmapSurfaceHI",
570 static const char* s_EGL_KHR_cl_event2[] =
572 "eglCreateSync64KHR",
575 static const char* s_EGL_KHR_debug[] =
577 "eglDebugMessageControlKHR",
582 static const char* s_EGL_KHR_display_reference[] =
584 "eglQueryDisplayAttribKHR",
587 static const char* s_EGL_KHR_fence_sync[] =
589 "eglClientWaitSyncKHR",
592 "eglGetSyncAttribKHR",
595 static const char* s_EGL_KHR_image[] =
598 "eglDestroyImageKHR",
601 static const char* s_EGL_KHR_image_base[] =
604 "eglDestroyImageKHR",
607 static const char* s_EGL_KHR_lock_surface[] =
610 "eglUnlockSurfaceKHR",
613 static const char* s_EGL_KHR_lock_surface3[] =
616 "eglQuerySurface64KHR",
617 "eglUnlockSurfaceKHR",
620 static const char* s_EGL_KHR_partial_update[] =
622 "eglSetDamageRegionKHR",
625 static const char* s_EGL_KHR_reusable_sync[] =
627 "eglClientWaitSyncKHR",
630 "eglGetSyncAttribKHR",
634 static const char* s_EGL_KHR_stream[] =
636 "eglCreateStreamKHR",
637 "eglDestroyStreamKHR",
639 "eglQueryStreamu64KHR",
640 "eglStreamAttribKHR",
643 static const char* s_EGL_KHR_stream_attrib[] =
645 "eglCreateStreamAttribKHR",
646 "eglQueryStreamAttribKHR",
647 "eglSetStreamAttribKHR",
648 "eglStreamConsumerAcquireAttribKHR",
649 "eglStreamConsumerReleaseAttribKHR",
652 static const char* s_EGL_KHR_stream_consumer_gltexture[] =
654 "eglStreamConsumerAcquireKHR",
655 "eglStreamConsumerGLTextureExternalKHR",
656 "eglStreamConsumerReleaseKHR",
659 static const char* s_EGL_KHR_stream_cross_process_fd[] =
661 "eglCreateStreamFromFileDescriptorKHR",
662 "eglGetStreamFileDescriptorKHR",
665 static const char* s_EGL_KHR_stream_fifo[] =
667 "eglQueryStreamTimeKHR",
670 static const char* s_EGL_KHR_stream_producer_eglsurface[] =
672 "eglCreateStreamProducerSurfaceKHR",
675 static const char* s_EGL_KHR_swap_buffers_with_damage[] =
677 "eglSwapBuffersWithDamageKHR",
680 static const char* s_EGL_KHR_wait_sync[] =
685 static const char* s_EGL_MESA_drm_image[] =
687 "eglCreateDRMImageMESA",
688 "eglExportDRMImageMESA",
691 static const char* s_EGL_MESA_image_dma_buf_export[] =
693 "eglExportDMABUFImageMESA",
694 "eglExportDMABUFImageQueryMESA",
697 static const char* s_EGL_NOK_swap_region[] =
699 "eglSwapBuffersRegionNOK",
702 static const char* s_EGL_NOK_swap_region2[] =
704 "eglSwapBuffersRegion2NOK",
707 static const char* s_EGL_NV_native_query[] =
709 "eglQueryNativeDisplayNV",
710 "eglQueryNativePixmapNV",
711 "eglQueryNativeWindowNV",
714 static const char* s_EGL_NV_post_sub_buffer[] =
716 "eglPostSubBufferNV",
719 static const char* s_EGL_NV_stream_consumer_gltexture_yuv[] =
721 "eglStreamConsumerGLTextureExternalAttribsNV",
724 static const char* s_EGL_NV_stream_flush[] =
729 static const char* s_EGL_NV_stream_metadata[] =
731 "eglQueryDisplayAttribNV",
732 "eglQueryStreamMetadataNV",
733 "eglSetStreamMetadataNV",
736 static const char* s_EGL_NV_stream_reset[] =
741 static const char* s_EGL_NV_stream_sync[] =
743 "eglCreateStreamSyncNV",
746 static const char* s_EGL_NV_sync[] =
748 "eglClientWaitSyncNV",
749 "eglCreateFenceSyncNV",
752 "eglGetSyncAttribNV",
756 static const char* s_EGL_NV_system_time[] =
758 "eglGetSystemTimeFrequencyNV",
759 "eglGetSystemTimeNV",
762 static const char* s_EGL_EXT_compositor[] =
764 "eglCompositorSetContextListEXT",
765 "eglCompositorSetContextAttributesEXT",
766 "eglCompositorSetWindowListEXT",
767 "eglCompositorSetWindowAttributesEXT",
768 "eglCompositorBindTexWindowEXT",
769 "eglCompositorSetSizeEXT",
770 "eglCompositorSwapPolicyEXT",
773 static const char* s_GL_APPLE_copy_texture_levels[] =
775 "glCopyTextureLevelsAPPLE",
778 static const char* s_GL_APPLE_framebuffer_multisample[] =
780 "glRenderbufferStorageMultisampleAPPLE",
781 "glResolveMultisampleFramebufferAPPLE",
784 static const char* s_GL_APPLE_sync[] =
786 "glClientWaitSyncAPPLE",
789 "glGetInteger64vAPPLE",
795 static const char* s_GL_EXT_debug_marker[] =
797 "glInsertEventMarkerEXT",
798 "glPopGroupMarkerEXT",
799 "glPushGroupMarkerEXT",
802 static const char* s_GL_EXT_discard_framebuffer[] =
804 "glDiscardFramebufferEXT",
807 static const char* s_GL_EXT_map_buffer_range[] =
809 "glFlushMappedBufferRangeEXT",
810 "glMapBufferRangeEXT",
813 static const char* s_GL_EXT_multi_draw_arrays[] =
815 "glMultiDrawArraysEXT",
816 "glMultiDrawElementsEXT",
819 static const char* s_GL_EXT_multisampled_render_to_texture[] =
821 "glFramebufferTexture2DMultisampleEXT",
822 "glRenderbufferStorageMultisampleEXT",
825 static const char* s_GL_EXT_robustness[] =
827 "glGetGraphicsResetStatusEXT",
828 "glGetnUniformfvEXT",
829 "glGetnUniformivEXT",
833 static const char* s_GL_EXT_texture_storage[] =
838 "glTextureStorage1DEXT",
839 "glTextureStorage2DEXT",
840 "glTextureStorage3DEXT",
843 static const char* s_GL_IMG_multisampled_render_to_texture[] =
845 "glFramebufferTexture2DMultisampleIMG",
846 "glRenderbufferStorageMultisampleIMG",
849 static const char* s_GL_IMG_user_clip_plane[] =
855 static const char* s_GL_NV_fence[] =
866 static const char* s_GL_OES_EGL_image[] =
868 "glEGLImageTargetRenderbufferStorageOES",
869 "glEGLImageTargetTexture2DOES",
872 static const char* s_GL_OES_blend_equation_separate[] =
874 "glBlendEquationSeparateOES",
877 static const char* s_GL_OES_blend_func_separate[] =
879 "glBlendFuncSeparateOES",
882 static const char* s_GL_OES_blend_subtract[] =
884 "glBlendEquationOES",
887 static const char* s_GL_OES_draw_texture[] =
899 static const char* s_GL_OES_fixed_point[] =
910 "glGetClipPlanexOES",
913 "glGetMaterialxvOES",
915 "glGetTexParameterxvOES",
925 "glMultiTexCoord4xOES",
928 "glPointParameterxOES",
929 "glPointParameterxvOES",
931 "glPolygonOffsetxOES",
933 "glSampleCoveragexOES",
937 "glTexParameterxOES",
938 "glTexParameterxvOES",
942 static const char* s_GL_OES_framebuffer_object[] =
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",
961 static const char* s_GL_OES_mapbuffer[] =
963 "glGetBufferPointervOES",
968 static const char* s_GL_OES_matrix_palette[] =
970 "glCurrentPaletteMatrixOES",
971 "glLoadPaletteFromModelViewMatrixOES",
972 "glMatrixIndexPointerOES",
973 "glWeightPointerOES",
976 static const char* s_GL_OES_point_size_array[] =
978 "glPointSizePointerOES",
981 static const char* s_GL_OES_query_matrix[] =
986 static const char* s_GL_OES_single_precision[] =
992 "glGetClipPlanefOES",
996 static const char* s_GL_OES_texture_cube_map[] =
1009 static const char* s_GL_OES_vertex_array_object[] =
1011 "glBindVertexArrayOES",
1012 "glDeleteVertexArraysOES",
1013 "glGenVertexArraysOES",
1014 "glIsVertexArrayOES",
1017 static const char* s_GL_QCOM_driver_control[] =
1019 "glDisableDriverControlQCOM",
1020 "glEnableDriverControlQCOM",
1021 "glGetDriverControlStringQCOM",
1022 "glGetDriverControlsQCOM",
1025 static const char* s_GL_QCOM_extended_get[] =
1027 "glExtGetBufferPointervQCOM",
1028 "glExtGetBuffersQCOM",
1029 "glExtGetFramebuffersQCOM",
1030 "glExtGetRenderbuffersQCOM",
1031 "glExtGetTexLevelParameterivQCOM",
1032 "glExtGetTexSubImageQCOM",
1033 "glExtGetTexturesQCOM",
1034 "glExtTexObjectStateOverrideiQCOM",
1037 static const char* s_GL_QCOM_extended_get2[] =
1039 "glExtGetProgramBinarySourceQCOM",
1040 "glExtGetProgramsQCOM",
1041 "glExtGetShadersQCOM",
1042 "glExtIsProgramBinaryQCOM",
1045 static const char* s_GL_QCOM_tiled_rendering[] =
1048 "glStartTilingQCOM",
1051 static const char* s_GL_AMD_performance_monitor[] =
1053 "glBeginPerfMonitorAMD",
1054 "glDeletePerfMonitorsAMD",
1055 "glEndPerfMonitorAMD",
1056 "glGenPerfMonitorsAMD",
1057 "glGetPerfMonitorCounterDataAMD",
1058 "glGetPerfMonitorCounterInfoAMD",
1059 "glGetPerfMonitorCounterStringAMD",
1060 "glGetPerfMonitorCountersAMD",
1061 "glGetPerfMonitorGroupStringAMD",
1062 "glGetPerfMonitorGroupsAMD",
1063 "glSelectPerfMonitorCountersAMD",
1066 static const char* s_GL_ANGLE_framebuffer_blit[] =
1068 "glBlitFramebufferANGLE",
1071 static const char* s_GL_ANGLE_framebuffer_multisample[] =
1073 "glRenderbufferStorageMultisampleANGLE",
1076 static const char* s_GL_ANGLE_instanced_arrays[] =
1078 "glDrawArraysInstancedANGLE",
1079 "glDrawElementsInstancedANGLE",
1080 "glVertexAttribDivisorANGLE",
1083 static const char* s_GL_ANGLE_translated_shader_source[] =
1085 "glGetTranslatedShaderSourceANGLE",
1088 static const char* s_GL_EXT_EGL_image_storage[] =
1090 "glEGLImageTargetTexStorageEXT",
1091 "glEGLImageTargetTextureStorageEXT",
1094 static const char* s_GL_EXT_base_instance[] =
1096 "glDrawArraysInstancedBaseInstanceEXT",
1097 "glDrawElementsInstancedBaseInstanceEXT",
1098 "glDrawElementsInstancedBaseVertexBaseInstanceEXT",
1101 static const char* s_GL_EXT_blend_func_extended[] =
1103 "glBindFragDataLocationEXT",
1104 "glBindFragDataLocationIndexedEXT",
1105 "glGetFragDataIndexEXT",
1106 "glGetProgramResourceLocationIndexEXT",
1109 static const char* s_GL_EXT_buffer_storage[] =
1111 "glBufferStorageEXT",
1114 static const char* s_GL_EXT_clear_texture[] =
1116 "glClearTexImageEXT",
1117 "glClearTexSubImageEXT",
1120 static const char* s_GL_EXT_clip_control[] =
1125 static const char* s_GL_EXT_copy_image[] =
1127 "glCopyImageSubDataEXT",
1130 static const char* s_GL_EXT_debug_label[] =
1132 "glGetObjectLabelEXT",
1136 static const char* s_GL_EXT_disjoint_timer_query[] =
1139 "glDeleteQueriesEXT",
1142 "glGetQueryObjecti64vEXT",
1143 "glGetQueryObjectivEXT",
1144 "glGetQueryObjectui64vEXT",
1145 "glGetQueryObjectuivEXT",
1148 "glQueryCounterEXT",
1151 static const char* s_GL_EXT_draw_buffers[] =
1156 static const char* s_GL_EXT_draw_buffers_indexed[] =
1158 "glBlendEquationSeparateiEXT",
1159 "glBlendEquationiEXT",
1160 "glBlendFuncSeparateiEXT",
1168 static const char* s_GL_EXT_draw_elements_base_vertex[] =
1170 "glDrawElementsBaseVertexEXT",
1171 "glDrawElementsInstancedBaseVertexEXT",
1172 "glDrawRangeElementsBaseVertexEXT",
1173 "glMultiDrawElementsBaseVertexEXT",
1176 static const char* s_GL_EXT_draw_instanced[] =
1178 "glDrawArraysInstancedEXT",
1179 "glDrawElementsInstancedEXT",
1182 static const char* s_GL_EXT_draw_transform_feedback[] =
1184 "glDrawTransformFeedbackEXT",
1185 "glDrawTransformFeedbackInstancedEXT",
1188 static const char* s_GL_EXT_external_buffer[] =
1190 "glBufferStorageExternalEXT",
1191 "glNamedBufferStorageExternalEXT",
1194 static const char* s_GL_EXT_geometry_shader[] =
1196 "glFramebufferTextureEXT",
1199 static const char* s_GL_EXT_instanced_arrays[] =
1201 "glDrawArraysInstancedEXT",
1202 "glDrawElementsInstancedEXT",
1203 "glVertexAttribDivisorEXT",
1206 static const char* s_GL_EXT_memory_object[] =
1208 "glBufferStorageMemEXT",
1209 "glCreateMemoryObjectsEXT",
1210 "glDeleteMemoryObjectsEXT",
1211 "glGetMemoryObjectParameterivEXT",
1212 "glGetUnsignedBytevEXT",
1213 "glGetUnsignedBytei_vEXT",
1214 "glIsMemoryObjectEXT",
1215 "glMemoryObjectParameterivEXT",
1216 "glNamedBufferStorageMemEXT",
1217 "glTexStorageMem2DEXT",
1218 "glTexStorageMem2DMultisampleEXT",
1219 "glTexStorageMem3DEXT",
1220 "glTexStorageMem3DMultisampleEXT",
1221 "glTextureStorageMem2DEXT",
1222 "glTextureStorageMem2DMultisampleEXT",
1223 "glTextureStorageMem3DEXT",
1224 "glTextureStorageMem3DMultisampleEXT",
1227 static const char* s_GL_EXT_memory_object_fd[] =
1229 "glImportMemoryFdEXT",
1232 static const char* s_GL_EXT_memory_object_win32[] =
1234 "glImportMemoryWin32HandleEXT",
1235 "glImportMemoryWin32NameEXT",
1238 static const char* s_GL_EXT_multi_draw_indirect[] =
1240 "glMultiDrawArraysIndirectEXT",
1241 "glMultiDrawElementsIndirectEXT",
1244 static const char* s_GL_EXT_multiview_draw_buffers[] =
1246 "glDrawBuffersIndexedEXT",
1247 "glGetIntegeri_vEXT",
1248 "glReadBufferIndexedEXT",
1251 static const char* s_GL_EXT_occlusion_query_boolean[] =
1254 "glDeleteQueriesEXT",
1257 "glGetQueryObjectuivEXT",
1262 static const char* s_GL_EXT_polygon_offset_clamp[] =
1264 "glPolygonOffsetClampEXT",
1267 static const char* s_GL_EXT_primitive_bounding_box[] =
1269 "glPrimitiveBoundingBoxEXT",
1272 static const char* s_GL_EXT_raster_multisample[] =
1274 "glRasterSamplesEXT",
1277 static const char* s_GL_EXT_semaphore[] =
1279 "glDeleteSemaphoresEXT",
1280 "glGenSemaphoresEXT",
1281 "glGetSemaphoreParameterui64vEXT",
1282 "glGetUnsignedBytevEXT",
1283 "glGetUnsignedBytei_vEXT",
1285 "glSemaphoreParameterui64vEXT",
1286 "glSignalSemaphoreEXT",
1287 "glWaitSemaphoreEXT",
1290 static const char* s_GL_EXT_semaphore_fd[] =
1292 "glImportSemaphoreFdEXT",
1295 static const char* s_GL_EXT_semaphore_win32[] =
1297 "glImportSemaphoreWin32HandleEXT",
1298 "glImportSemaphoreWin32NameEXT",
1301 static const char* s_GL_EXT_separate_shader_objects[] =
1303 "glActiveShaderProgramEXT",
1304 "glBindProgramPipelineEXT",
1305 "glCreateShaderProgramvEXT",
1306 "glDeleteProgramPipelinesEXT",
1307 "glGenProgramPipelinesEXT",
1308 "glGetProgramPipelineInfoLogEXT",
1309 "glGetProgramPipelineivEXT",
1310 "glIsProgramPipelineEXT",
1311 "glProgramParameteriEXT",
1312 "glProgramUniform1fEXT",
1313 "glProgramUniform1fvEXT",
1314 "glProgramUniform1iEXT",
1315 "glProgramUniform1ivEXT",
1316 "glProgramUniform1uiEXT",
1317 "glProgramUniform1uivEXT",
1318 "glProgramUniform2fEXT",
1319 "glProgramUniform2fvEXT",
1320 "glProgramUniform2iEXT",
1321 "glProgramUniform2ivEXT",
1322 "glProgramUniform2uiEXT",
1323 "glProgramUniform2uivEXT",
1324 "glProgramUniform3fEXT",
1325 "glProgramUniform3fvEXT",
1326 "glProgramUniform3iEXT",
1327 "glProgramUniform3ivEXT",
1328 "glProgramUniform3uiEXT",
1329 "glProgramUniform3uivEXT",
1330 "glProgramUniform4fEXT",
1331 "glProgramUniform4fvEXT",
1332 "glProgramUniform4iEXT",
1333 "glProgramUniform4ivEXT",
1334 "glProgramUniform4uiEXT",
1335 "glProgramUniform4uivEXT",
1336 "glProgramUniformMatrix2fvEXT",
1337 "glProgramUniformMatrix2x3fvEXT",
1338 "glProgramUniformMatrix2x4fvEXT",
1339 "glProgramUniformMatrix3fvEXT",
1340 "glProgramUniformMatrix3x2fvEXT",
1341 "glProgramUniformMatrix3x4fvEXT",
1342 "glProgramUniformMatrix4fvEXT",
1343 "glProgramUniformMatrix4x2fvEXT",
1344 "glProgramUniformMatrix4x3fvEXT",
1345 "glUseProgramStagesEXT",
1346 "glValidateProgramPipelineEXT",
1349 static const char* s_GL_EXT_shader_framebuffer_fetch_non_coherent[] =
1351 "glFramebufferFetchBarrierEXT",
1354 static const char* s_GL_EXT_shader_pixel_local_storage2[] =
1356 "glClearPixelLocalStorageuiEXT",
1357 "glFramebufferPixelLocalStorageSizeEXT",
1358 "glGetFramebufferPixelLocalStorageSizeEXT",
1361 static const char* s_GL_EXT_sparse_texture[] =
1363 "glTexPageCommitmentEXT",
1366 static const char* s_GL_EXT_tessellation_shader[] =
1368 "glPatchParameteriEXT",
1371 static const char* s_GL_EXT_texture_border_clamp[] =
1373 "glGetSamplerParameterIivEXT",
1374 "glGetSamplerParameterIuivEXT",
1375 "glGetTexParameterIivEXT",
1376 "glGetTexParameterIuivEXT",
1377 "glSamplerParameterIivEXT",
1378 "glSamplerParameterIuivEXT",
1379 "glTexParameterIivEXT",
1380 "glTexParameterIuivEXT",
1383 static const char* s_GL_EXT_texture_buffer[] =
1386 "glTexBufferRangeEXT",
1389 static const char* s_GL_EXT_texture_view[] =
1394 static const char* s_GL_EXT_win32_keyed_mutex[] =
1396 "glAcquireKeyedMutexWin32EXT",
1397 "glReleaseKeyedMutexWin32EXT",
1400 static const char* s_GL_EXT_window_rectangles[] =
1402 "glWindowRectanglesEXT",
1405 static const char* s_GL_IMG_bindless_texture[] =
1407 "glGetTextureHandleIMG",
1408 "glGetTextureSamplerHandleIMG",
1409 "glProgramUniformHandleui64IMG",
1410 "glProgramUniformHandleui64vIMG",
1411 "glUniformHandleui64IMG",
1412 "glUniformHandleui64vIMG",
1415 static const char* s_GL_IMG_framebuffer_downsample[] =
1417 "glFramebufferTexture2DDownsampleIMG",
1418 "glFramebufferTextureLayerDownsampleIMG",
1421 static const char* s_GL_INTEL_framebuffer_CMAA[] =
1423 "glApplyFramebufferAttachmentCMAAINTEL",
1426 static const char* s_GL_INTEL_performance_query[] =
1428 "glBeginPerfQueryINTEL",
1429 "glCreatePerfQueryINTEL",
1430 "glDeletePerfQueryINTEL",
1431 "glEndPerfQueryINTEL",
1432 "glGetFirstPerfQueryIdINTEL",
1433 "glGetNextPerfQueryIdINTEL",
1434 "glGetPerfCounterInfoINTEL",
1435 "glGetPerfQueryDataINTEL",
1436 "glGetPerfQueryIdByNameINTEL",
1437 "glGetPerfQueryInfoINTEL",
1440 static const char* s_GL_KHR_blend_equation_advanced[] =
1442 "glBlendBarrierKHR",
1445 static const char* s_GL_KHR_debug[] =
1447 "glDebugMessageCallbackKHR",
1448 "glDebugMessageControlKHR",
1449 "glDebugMessageInsertKHR",
1450 "glGetDebugMessageLogKHR",
1451 "glGetObjectLabelKHR",
1452 "glGetObjectPtrLabelKHR",
1455 "glObjectPtrLabelKHR",
1456 "glPopDebugGroupKHR",
1457 "glPushDebugGroupKHR",
1460 static const char* s_GL_KHR_robustness[] =
1462 "glGetGraphicsResetStatusKHR",
1463 "glGetnUniformfvKHR",
1464 "glGetnUniformivKHR",
1465 "glGetnUniformuivKHR",
1469 static const char* s_GL_KHR_parallel_shader_compile[] =
1471 "glMaxShaderCompilerThreadsKHR",
1474 static const char* s_GL_NV_bindless_texture[] =
1476 "glGetImageHandleNV",
1477 "glGetTextureHandleNV",
1478 "glGetTextureSamplerHandleNV",
1479 "glIsImageHandleResidentNV",
1480 "glIsTextureHandleResidentNV",
1481 "glMakeImageHandleNonResidentNV",
1482 "glMakeImageHandleResidentNV",
1483 "glMakeTextureHandleNonResidentNV",
1484 "glMakeTextureHandleResidentNV",
1485 "glProgramUniformHandleui64NV",
1486 "glProgramUniformHandleui64vNV",
1487 "glUniformHandleui64NV",
1488 "glUniformHandleui64vNV",
1491 static const char* s_GL_NV_blend_equation_advanced[] =
1494 "glBlendParameteriNV",
1497 static const char* s_GL_NV_clip_space_w_scaling[] =
1499 "glViewportPositionWScaleNV",
1502 static const char* s_GL_NV_conditional_render[] =
1504 "glBeginConditionalRenderNV",
1505 "glEndConditionalRenderNV",
1508 static const char* s_GL_NV_conservative_raster[] =
1510 "glSubpixelPrecisionBiasNV",
1513 static const char* s_GL_NV_conservative_raster_pre_snap_triangles[] =
1515 "glConservativeRasterParameteriNV",
1518 static const char* s_GL_NV_copy_buffer[] =
1520 "glCopyBufferSubDataNV",
1523 static const char* s_GL_NV_coverage_sample[] =
1526 "glCoverageOperationNV",
1529 static const char* s_GL_NV_draw_buffers[] =
1534 static const char* s_GL_NV_draw_instanced[] =
1536 "glDrawArraysInstancedNV",
1537 "glDrawElementsInstancedNV",
1540 static const char* s_GL_NV_draw_vulkan_image[] =
1543 "glGetVkProcAddrNV",
1544 "glWaitVkSemaphoreNV",
1545 "glSignalVkSemaphoreNV",
1546 "glSignalVkFenceNV",
1549 static const char* s_GL_NV_fragment_coverage_to_color[] =
1551 "glFragmentCoverageColorNV",
1554 static const char* s_GL_NV_framebuffer_blit[] =
1556 "glBlitFramebufferNV",
1559 static const char* s_GL_NV_framebuffer_mixed_samples[] =
1561 "glCoverageModulationNV",
1562 "glCoverageModulationTableNV",
1563 "glGetCoverageModulationTableNV",
1564 "glRasterSamplesEXT",
1567 static const char* s_GL_NV_framebuffer_multisample[] =
1569 "glRenderbufferStorageMultisampleNV",
1572 static const char* s_GL_NV_gpu_shader5[] =
1574 "glGetUniformi64vNV",
1575 "glProgramUniform1i64NV",
1576 "glProgramUniform1i64vNV",
1577 "glProgramUniform1ui64NV",
1578 "glProgramUniform1ui64vNV",
1579 "glProgramUniform2i64NV",
1580 "glProgramUniform2i64vNV",
1581 "glProgramUniform2ui64NV",
1582 "glProgramUniform2ui64vNV",
1583 "glProgramUniform3i64NV",
1584 "glProgramUniform3i64vNV",
1585 "glProgramUniform3ui64NV",
1586 "glProgramUniform3ui64vNV",
1587 "glProgramUniform4i64NV",
1588 "glProgramUniform4i64vNV",
1589 "glProgramUniform4ui64NV",
1590 "glProgramUniform4ui64vNV",
1594 "glUniform1ui64vNV",
1598 "glUniform2ui64vNV",
1602 "glUniform3ui64vNV",
1606 "glUniform4ui64vNV",
1609 static const char* s_GL_NV_instanced_arrays[] =
1611 "glVertexAttribDivisorNV",
1614 static const char* s_GL_NV_internalformat_sample_query[] =
1616 "glGetInternalformatSampleivNV",
1619 static const char* s_GL_NV_non_square_matrices[] =
1621 "glUniformMatrix2x3fvNV",
1622 "glUniformMatrix2x4fvNV",
1623 "glUniformMatrix3x2fvNV",
1624 "glUniformMatrix3x4fvNV",
1625 "glUniformMatrix4x2fvNV",
1626 "glUniformMatrix4x3fvNV",
1629 static const char* s_GL_NV_path_rendering[] =
1632 "glCoverFillPathInstancedNV",
1633 "glCoverFillPathNV",
1634 "glCoverStrokePathInstancedNV",
1635 "glCoverStrokePathNV",
1638 "glGetPathCommandsNV",
1639 "glGetPathCoordsNV",
1640 "glGetPathDashArrayNV",
1641 "glGetPathLengthNV",
1642 "glGetPathMetricRangeNV",
1643 "glGetPathMetricsNV",
1644 "glGetPathParameterfvNV",
1645 "glGetPathParameterivNV",
1646 "glGetPathSpacingNV",
1647 "glGetProgramResourcefvNV",
1648 "glInterpolatePathsNV",
1650 "glIsPointInFillPathNV",
1651 "glIsPointInStrokePathNV",
1652 "glMatrixFrustumEXT",
1653 "glMatrixLoad3x2fNV",
1654 "glMatrixLoad3x3fNV",
1655 "glMatrixLoadIdentityEXT",
1656 "glMatrixLoadTranspose3x3fNV",
1657 "glMatrixLoadTransposedEXT",
1658 "glMatrixLoadTransposefEXT",
1661 "glMatrixMult3x2fNV",
1662 "glMatrixMult3x3fNV",
1663 "glMatrixMultTranspose3x3fNV",
1664 "glMatrixMultTransposedEXT",
1665 "glMatrixMultTransposefEXT",
1671 "glMatrixRotatedEXT",
1672 "glMatrixRotatefEXT",
1673 "glMatrixScaledEXT",
1674 "glMatrixScalefEXT",
1675 "glMatrixTranslatedEXT",
1676 "glMatrixTranslatefEXT",
1679 "glPathCoverDepthFuncNV",
1680 "glPathDashArrayNV",
1681 "glPathGlyphIndexArrayNV",
1682 "glPathGlyphIndexRangeNV",
1683 "glPathGlyphRangeNV",
1685 "glPathMemoryGlyphIndexArrayNV",
1686 "glPathParameterfNV",
1687 "glPathParameterfvNV",
1688 "glPathParameteriNV",
1689 "glPathParameterivNV",
1690 "glPathStencilDepthOffsetNV",
1691 "glPathStencilFuncNV",
1693 "glPathSubCommandsNV",
1694 "glPathSubCoordsNV",
1695 "glPointAlongPathNV",
1696 "glProgramPathFragmentInputGenNV",
1697 "glStencilFillPathInstancedNV",
1698 "glStencilFillPathNV",
1699 "glStencilStrokePathInstancedNV",
1700 "glStencilStrokePathNV",
1701 "glStencilThenCoverFillPathInstancedNV",
1702 "glStencilThenCoverFillPathNV",
1703 "glStencilThenCoverStrokePathInstancedNV",
1704 "glStencilThenCoverStrokePathNV",
1705 "glTransformPathNV",
1709 static const char* s_GL_NV_polygon_mode[] =
1714 static const char* s_GL_NV_read_buffer[] =
1719 static const char* s_GL_NV_sample_locations[] =
1721 "glFramebufferSampleLocationsfvNV",
1722 "glNamedFramebufferSampleLocationsfvNV",
1723 "glResolveDepthValuesNV",
1726 static const char* s_GL_NV_viewport_array[] =
1728 "glDepthRangeArrayfvNV",
1729 "glDepthRangeIndexedfNV",
1734 "glScissorArrayvNV",
1735 "glScissorIndexedNV",
1736 "glScissorIndexedvNV",
1737 "glViewportArrayvNV",
1738 "glViewportIndexedfNV",
1739 "glViewportIndexedfvNV",
1742 static const char* s_GL_NV_viewport_swizzle[] =
1744 "glViewportSwizzleNV",
1747 static const char* s_GL_OES_copy_image[] =
1749 "glCopyImageSubDataOES",
1752 static const char* s_GL_OES_draw_buffers_indexed[] =
1754 "glBlendEquationSeparateiOES",
1755 "glBlendEquationiOES",
1756 "glBlendFuncSeparateiOES",
1764 static const char* s_GL_OES_draw_elements_base_vertex[] =
1766 "glDrawElementsBaseVertexOES",
1767 "glDrawElementsInstancedBaseVertexOES",
1768 "glDrawRangeElementsBaseVertexOES",
1769 "glMultiDrawElementsBaseVertexEXT",
1772 static const char* s_GL_OES_geometry_shader[] =
1774 "glFramebufferTextureOES",
1777 static const char* s_GL_OES_get_program_binary[] =
1779 "glGetProgramBinaryOES",
1780 "glProgramBinaryOES",
1783 static const char* s_GL_OES_primitive_bounding_box[] =
1785 "glPrimitiveBoundingBoxOES",
1788 static const char* s_GL_OES_sample_shading[] =
1790 "glMinSampleShadingOES",
1793 static const char* s_GL_OES_tessellation_shader[] =
1795 "glPatchParameteriOES",
1798 static const char* s_GL_OES_texture_3D[] =
1800 "glCompressedTexImage3DOES",
1801 "glCompressedTexSubImage3DOES",
1802 "glCopyTexSubImage3DOES",
1803 "glFramebufferTexture3DOES",
1805 "glTexSubImage3DOES",
1808 static const char* s_GL_OES_texture_border_clamp[] =
1810 "glGetSamplerParameterIivOES",
1811 "glGetSamplerParameterIuivOES",
1812 "glGetTexParameterIivOES",
1813 "glGetTexParameterIuivOES",
1814 "glSamplerParameterIivOES",
1815 "glSamplerParameterIuivOES",
1816 "glTexParameterIivOES",
1817 "glTexParameterIuivOES",
1820 static const char* s_GL_OES_texture_buffer[] =
1823 "glTexBufferRangeOES",
1826 static const char* s_GL_OES_texture_storage_multisample_2d_array[] =
1828 "glTexStorage3DMultisampleOES",
1831 static const char* s_GL_OES_texture_view[] =
1836 static const char* s_GL_OES_viewport_array[] =
1838 "glDepthRangeArrayfvOES",
1839 "glDepthRangeIndexedfOES",
1844 "glScissorArrayvOES",
1845 "glScissorIndexedOES",
1846 "glScissorIndexedvOES",
1847 "glViewportArrayvOES",
1848 "glViewportIndexedfOES",
1849 "glViewportIndexedfvOES",
1852 static const char* s_GL_OVR_multiview[] =
1854 "glFramebufferTextureMultiviewOVR",
1857 static const char* s_GL_OVR_multiview_multisampled_render_to_texture[] =
1859 "glFramebufferTextureMultisampleMultiviewOVR",
1862 static const char* s_GL_QCOM_alpha_test[] =
1867 static const char* s_GL_QCOM_framebuffer_foveated[] =
1869 "glFramebufferFoveationConfigQCOM",
1870 "glFramebufferFoveationParametersQCOM",
1873 static const char* s_GL_QCOM_texture_foveated[] =
1875 "glTextureFoveationParametersQCOM",
1878 static const char* s_GL_QCOM_shader_framebuffer_fetch_noncoherent[] =
1880 "glFramebufferFetchBarrierQCOM",
1886 const int numFunctions;
1887 const char* const* functions;
1890 { "EGL_ANDROID_blob_cache", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_blob_cache), s_EGL_ANDROID_blob_cache },
1891 { "EGL_ANDROID_create_native_client_buffer", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_create_native_client_buffer), s_EGL_ANDROID_create_native_client_buffer },
1892 { "EGL_ANDROID_get_native_client_buffer", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_get_native_client_buffer), s_EGL_ANDROID_get_native_client_buffer },
1893 { "EGL_ANDROID_native_fence_sync", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_native_fence_sync), s_EGL_ANDROID_native_fence_sync },
1894 { "EGL_ANDROID_presentation_time", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_presentation_time), s_EGL_ANDROID_presentation_time },
1895 { "EGL_ANDROID_get_frame_timestamps", DE_LENGTH_OF_ARRAY(s_EGL_ANDROID_get_frame_timestamps), s_EGL_ANDROID_get_frame_timestamps },
1896 { "EGL_ANGLE_query_surface_pointer", DE_LENGTH_OF_ARRAY(s_EGL_ANGLE_query_surface_pointer), s_EGL_ANGLE_query_surface_pointer },
1897 { "EGL_EXT_client_sync", DE_LENGTH_OF_ARRAY(s_EGL_EXT_client_sync), s_EGL_EXT_client_sync },
1898 { "EGL_EXT_device_base", DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_base), s_EGL_EXT_device_base },
1899 { "EGL_EXT_device_enumeration", DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_enumeration), s_EGL_EXT_device_enumeration },
1900 { "EGL_EXT_device_query", DE_LENGTH_OF_ARRAY(s_EGL_EXT_device_query), s_EGL_EXT_device_query },
1901 { "EGL_EXT_image_dma_buf_import_modifiers", DE_LENGTH_OF_ARRAY(s_EGL_EXT_image_dma_buf_import_modifiers), s_EGL_EXT_image_dma_buf_import_modifiers },
1902 { "EGL_EXT_output_base", DE_LENGTH_OF_ARRAY(s_EGL_EXT_output_base), s_EGL_EXT_output_base },
1903 { "EGL_EXT_platform_base", DE_LENGTH_OF_ARRAY(s_EGL_EXT_platform_base), s_EGL_EXT_platform_base },
1904 { "EGL_EXT_stream_consumer_egloutput", DE_LENGTH_OF_ARRAY(s_EGL_EXT_stream_consumer_egloutput), s_EGL_EXT_stream_consumer_egloutput },
1905 { "EGL_EXT_swap_buffers_with_damage", DE_LENGTH_OF_ARRAY(s_EGL_EXT_swap_buffers_with_damage), s_EGL_EXT_swap_buffers_with_damage },
1906 { "EGL_EXT_sync_reuse", DE_LENGTH_OF_ARRAY(s_EGL_EXT_sync_reuse), s_EGL_EXT_sync_reuse },
1907 { "EGL_HI_clientpixmap", DE_LENGTH_OF_ARRAY(s_EGL_HI_clientpixmap), s_EGL_HI_clientpixmap },
1908 { "EGL_KHR_cl_event2", DE_LENGTH_OF_ARRAY(s_EGL_KHR_cl_event2), s_EGL_KHR_cl_event2 },
1909 { "EGL_KHR_debug", DE_LENGTH_OF_ARRAY(s_EGL_KHR_debug), s_EGL_KHR_debug },
1910 { "EGL_KHR_display_reference", DE_LENGTH_OF_ARRAY(s_EGL_KHR_display_reference), s_EGL_KHR_display_reference },
1911 { "EGL_KHR_fence_sync", DE_LENGTH_OF_ARRAY(s_EGL_KHR_fence_sync), s_EGL_KHR_fence_sync },
1912 { "EGL_KHR_image", DE_LENGTH_OF_ARRAY(s_EGL_KHR_image), s_EGL_KHR_image },
1913 { "EGL_KHR_image_base", DE_LENGTH_OF_ARRAY(s_EGL_KHR_image_base), s_EGL_KHR_image_base },
1914 { "EGL_KHR_lock_surface", DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface), s_EGL_KHR_lock_surface },
1915 { "EGL_KHR_lock_surface3", DE_LENGTH_OF_ARRAY(s_EGL_KHR_lock_surface3), s_EGL_KHR_lock_surface3 },
1916 { "EGL_KHR_partial_update", DE_LENGTH_OF_ARRAY(s_EGL_KHR_partial_update), s_EGL_KHR_partial_update },
1917 { "EGL_KHR_reusable_sync", DE_LENGTH_OF_ARRAY(s_EGL_KHR_reusable_sync), s_EGL_KHR_reusable_sync },
1918 { "EGL_KHR_stream", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream), s_EGL_KHR_stream },
1919 { "EGL_KHR_stream_attrib", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_attrib), s_EGL_KHR_stream_attrib },
1920 { "EGL_KHR_stream_consumer_gltexture", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_consumer_gltexture), s_EGL_KHR_stream_consumer_gltexture },
1921 { "EGL_KHR_stream_cross_process_fd", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_cross_process_fd), s_EGL_KHR_stream_cross_process_fd },
1922 { "EGL_KHR_stream_fifo", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_fifo), s_EGL_KHR_stream_fifo },
1923 { "EGL_KHR_stream_producer_eglsurface", DE_LENGTH_OF_ARRAY(s_EGL_KHR_stream_producer_eglsurface), s_EGL_KHR_stream_producer_eglsurface },
1924 { "EGL_KHR_swap_buffers_with_damage", DE_LENGTH_OF_ARRAY(s_EGL_KHR_swap_buffers_with_damage), s_EGL_KHR_swap_buffers_with_damage },
1925 { "EGL_KHR_wait_sync", DE_LENGTH_OF_ARRAY(s_EGL_KHR_wait_sync), s_EGL_KHR_wait_sync },
1926 { "EGL_MESA_drm_image", DE_LENGTH_OF_ARRAY(s_EGL_MESA_drm_image), s_EGL_MESA_drm_image },
1927 { "EGL_MESA_image_dma_buf_export", DE_LENGTH_OF_ARRAY(s_EGL_MESA_image_dma_buf_export), s_EGL_MESA_image_dma_buf_export },
1928 { "EGL_NOK_swap_region", DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region), s_EGL_NOK_swap_region },
1929 { "EGL_NOK_swap_region2", DE_LENGTH_OF_ARRAY(s_EGL_NOK_swap_region2), s_EGL_NOK_swap_region2 },
1930 { "EGL_NV_native_query", DE_LENGTH_OF_ARRAY(s_EGL_NV_native_query), s_EGL_NV_native_query },
1931 { "EGL_NV_post_sub_buffer", DE_LENGTH_OF_ARRAY(s_EGL_NV_post_sub_buffer), s_EGL_NV_post_sub_buffer },
1932 { "EGL_NV_stream_consumer_gltexture_yuv", DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_consumer_gltexture_yuv), s_EGL_NV_stream_consumer_gltexture_yuv },
1933 { "EGL_NV_stream_flush", DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_flush), s_EGL_NV_stream_flush },
1934 { "EGL_NV_stream_metadata", DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_metadata), s_EGL_NV_stream_metadata },
1935 { "EGL_NV_stream_reset", DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_reset), s_EGL_NV_stream_reset },
1936 { "EGL_NV_stream_sync", DE_LENGTH_OF_ARRAY(s_EGL_NV_stream_sync), s_EGL_NV_stream_sync },
1937 { "EGL_NV_sync", DE_LENGTH_OF_ARRAY(s_EGL_NV_sync), s_EGL_NV_sync },
1938 { "EGL_NV_system_time", DE_LENGTH_OF_ARRAY(s_EGL_NV_system_time), s_EGL_NV_system_time },
1939 { "EGL_EXT_compositor", DE_LENGTH_OF_ARRAY(s_EGL_EXT_compositor), s_EGL_EXT_compositor },
1940 { "GL_APPLE_copy_texture_levels", DE_LENGTH_OF_ARRAY(s_GL_APPLE_copy_texture_levels), s_GL_APPLE_copy_texture_levels },
1941 { "GL_APPLE_framebuffer_multisample", DE_LENGTH_OF_ARRAY(s_GL_APPLE_framebuffer_multisample), s_GL_APPLE_framebuffer_multisample },
1942 { "GL_APPLE_sync", DE_LENGTH_OF_ARRAY(s_GL_APPLE_sync), s_GL_APPLE_sync },
1943 { "GL_EXT_debug_marker", DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_marker), s_GL_EXT_debug_marker },
1944 { "GL_EXT_discard_framebuffer", DE_LENGTH_OF_ARRAY(s_GL_EXT_discard_framebuffer), s_GL_EXT_discard_framebuffer },
1945 { "GL_EXT_map_buffer_range", DE_LENGTH_OF_ARRAY(s_GL_EXT_map_buffer_range), s_GL_EXT_map_buffer_range },
1946 { "GL_EXT_multi_draw_arrays", DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_arrays), s_GL_EXT_multi_draw_arrays },
1947 { "GL_EXT_multisampled_render_to_texture", DE_LENGTH_OF_ARRAY(s_GL_EXT_multisampled_render_to_texture), s_GL_EXT_multisampled_render_to_texture },
1948 { "GL_EXT_robustness", DE_LENGTH_OF_ARRAY(s_GL_EXT_robustness), s_GL_EXT_robustness },
1949 { "GL_EXT_texture_storage", DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_storage), s_GL_EXT_texture_storage },
1950 { "GL_IMG_multisampled_render_to_texture", DE_LENGTH_OF_ARRAY(s_GL_IMG_multisampled_render_to_texture), s_GL_IMG_multisampled_render_to_texture },
1951 { "GL_IMG_user_clip_plane", DE_LENGTH_OF_ARRAY(s_GL_IMG_user_clip_plane), s_GL_IMG_user_clip_plane },
1952 { "GL_NV_fence", DE_LENGTH_OF_ARRAY(s_GL_NV_fence), s_GL_NV_fence },
1953 { "GL_OES_EGL_image", DE_LENGTH_OF_ARRAY(s_GL_OES_EGL_image), s_GL_OES_EGL_image },
1954 { "GL_OES_blend_equation_separate", DE_LENGTH_OF_ARRAY(s_GL_OES_blend_equation_separate), s_GL_OES_blend_equation_separate },
1955 { "GL_OES_blend_func_separate", DE_LENGTH_OF_ARRAY(s_GL_OES_blend_func_separate), s_GL_OES_blend_func_separate },
1956 { "GL_OES_blend_subtract", DE_LENGTH_OF_ARRAY(s_GL_OES_blend_subtract), s_GL_OES_blend_subtract },
1957 { "GL_OES_draw_texture", DE_LENGTH_OF_ARRAY(s_GL_OES_draw_texture), s_GL_OES_draw_texture },
1958 { "GL_OES_fixed_point", DE_LENGTH_OF_ARRAY(s_GL_OES_fixed_point), s_GL_OES_fixed_point },
1959 { "GL_OES_framebuffer_object", DE_LENGTH_OF_ARRAY(s_GL_OES_framebuffer_object), s_GL_OES_framebuffer_object },
1960 { "GL_OES_mapbuffer", DE_LENGTH_OF_ARRAY(s_GL_OES_mapbuffer), s_GL_OES_mapbuffer },
1961 { "GL_OES_matrix_palette", DE_LENGTH_OF_ARRAY(s_GL_OES_matrix_palette), s_GL_OES_matrix_palette },
1962 { "GL_OES_point_size_array", DE_LENGTH_OF_ARRAY(s_GL_OES_point_size_array), s_GL_OES_point_size_array },
1963 { "GL_OES_query_matrix", DE_LENGTH_OF_ARRAY(s_GL_OES_query_matrix), s_GL_OES_query_matrix },
1964 { "GL_OES_single_precision", DE_LENGTH_OF_ARRAY(s_GL_OES_single_precision), s_GL_OES_single_precision },
1965 { "GL_OES_texture_cube_map", DE_LENGTH_OF_ARRAY(s_GL_OES_texture_cube_map), s_GL_OES_texture_cube_map },
1966 { "GL_OES_vertex_array_object", DE_LENGTH_OF_ARRAY(s_GL_OES_vertex_array_object), s_GL_OES_vertex_array_object },
1967 { "GL_QCOM_driver_control", DE_LENGTH_OF_ARRAY(s_GL_QCOM_driver_control), s_GL_QCOM_driver_control },
1968 { "GL_QCOM_extended_get", DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get), s_GL_QCOM_extended_get },
1969 { "GL_QCOM_extended_get2", DE_LENGTH_OF_ARRAY(s_GL_QCOM_extended_get2), s_GL_QCOM_extended_get2 },
1970 { "GL_QCOM_tiled_rendering", DE_LENGTH_OF_ARRAY(s_GL_QCOM_tiled_rendering), s_GL_QCOM_tiled_rendering },
1971 { "GL_AMD_performance_monitor", DE_LENGTH_OF_ARRAY(s_GL_AMD_performance_monitor), s_GL_AMD_performance_monitor },
1972 { "GL_ANGLE_framebuffer_blit", DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_blit), s_GL_ANGLE_framebuffer_blit },
1973 { "GL_ANGLE_framebuffer_multisample", DE_LENGTH_OF_ARRAY(s_GL_ANGLE_framebuffer_multisample), s_GL_ANGLE_framebuffer_multisample },
1974 { "GL_ANGLE_instanced_arrays", DE_LENGTH_OF_ARRAY(s_GL_ANGLE_instanced_arrays), s_GL_ANGLE_instanced_arrays },
1975 { "GL_ANGLE_translated_shader_source", DE_LENGTH_OF_ARRAY(s_GL_ANGLE_translated_shader_source), s_GL_ANGLE_translated_shader_source },
1976 { "GL_EXT_EGL_image_storage", DE_LENGTH_OF_ARRAY(s_GL_EXT_EGL_image_storage), s_GL_EXT_EGL_image_storage },
1977 { "GL_EXT_base_instance", DE_LENGTH_OF_ARRAY(s_GL_EXT_base_instance), s_GL_EXT_base_instance },
1978 { "GL_EXT_blend_func_extended", DE_LENGTH_OF_ARRAY(s_GL_EXT_blend_func_extended), s_GL_EXT_blend_func_extended },
1979 { "GL_EXT_buffer_storage", DE_LENGTH_OF_ARRAY(s_GL_EXT_buffer_storage), s_GL_EXT_buffer_storage },
1980 { "GL_EXT_clear_texture", DE_LENGTH_OF_ARRAY(s_GL_EXT_clear_texture), s_GL_EXT_clear_texture },
1981 { "GL_EXT_clip_control", DE_LENGTH_OF_ARRAY(s_GL_EXT_clip_control), s_GL_EXT_clip_control },
1982 { "GL_EXT_copy_image", DE_LENGTH_OF_ARRAY(s_GL_EXT_copy_image), s_GL_EXT_copy_image },
1983 { "GL_EXT_debug_label", DE_LENGTH_OF_ARRAY(s_GL_EXT_debug_label), s_GL_EXT_debug_label },
1984 { "GL_EXT_disjoint_timer_query", DE_LENGTH_OF_ARRAY(s_GL_EXT_disjoint_timer_query), s_GL_EXT_disjoint_timer_query },
1985 { "GL_EXT_draw_buffers", DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers), s_GL_EXT_draw_buffers },
1986 { "GL_EXT_draw_buffers_indexed", DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_buffers_indexed), s_GL_EXT_draw_buffers_indexed },
1987 { "GL_EXT_draw_elements_base_vertex", DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_elements_base_vertex), s_GL_EXT_draw_elements_base_vertex },
1988 { "GL_EXT_draw_instanced", DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_instanced), s_GL_EXT_draw_instanced },
1989 { "GL_EXT_draw_transform_feedback", DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_transform_feedback), s_GL_EXT_draw_transform_feedback },
1990 { "GL_EXT_external_buffer", DE_LENGTH_OF_ARRAY(s_GL_EXT_external_buffer), s_GL_EXT_external_buffer },
1991 { "GL_EXT_geometry_shader", DE_LENGTH_OF_ARRAY(s_GL_EXT_geometry_shader), s_GL_EXT_geometry_shader },
1992 { "GL_EXT_instanced_arrays", DE_LENGTH_OF_ARRAY(s_GL_EXT_instanced_arrays), s_GL_EXT_instanced_arrays },
1993 { "GL_EXT_memory_object", DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object), s_GL_EXT_memory_object },
1994 { "GL_EXT_memory_object_fd", DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_fd), s_GL_EXT_memory_object_fd },
1995 { "GL_EXT_memory_object_win32", DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_win32), s_GL_EXT_memory_object_win32 },
1996 { "GL_EXT_multi_draw_indirect", DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_indirect), s_GL_EXT_multi_draw_indirect },
1997 { "GL_EXT_multiview_draw_buffers", DE_LENGTH_OF_ARRAY(s_GL_EXT_multiview_draw_buffers), s_GL_EXT_multiview_draw_buffers },
1998 { "GL_EXT_occlusion_query_boolean", DE_LENGTH_OF_ARRAY(s_GL_EXT_occlusion_query_boolean), s_GL_EXT_occlusion_query_boolean },
1999 { "GL_EXT_polygon_offset_clamp", DE_LENGTH_OF_ARRAY(s_GL_EXT_polygon_offset_clamp), s_GL_EXT_polygon_offset_clamp },
2000 { "GL_EXT_primitive_bounding_box", DE_LENGTH_OF_ARRAY(s_GL_EXT_primitive_bounding_box), s_GL_EXT_primitive_bounding_box },
2001 { "GL_EXT_raster_multisample", DE_LENGTH_OF_ARRAY(s_GL_EXT_raster_multisample), s_GL_EXT_raster_multisample },
2002 { "GL_EXT_semaphore", DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore), s_GL_EXT_semaphore },
2003 { "GL_EXT_semaphore_fd", DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_fd), s_GL_EXT_semaphore_fd },
2004 { "GL_EXT_semaphore_win32", DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_win32), s_GL_EXT_semaphore_win32 },
2005 { "GL_EXT_separate_shader_objects", DE_LENGTH_OF_ARRAY(s_GL_EXT_separate_shader_objects), s_GL_EXT_separate_shader_objects },
2006 { "GL_EXT_shader_framebuffer_fetch_non_coherent", DE_LENGTH_OF_ARRAY(s_GL_EXT_shader_framebuffer_fetch_non_coherent), s_GL_EXT_shader_framebuffer_fetch_non_coherent },
2007 { "GL_EXT_shader_pixel_local_storage2", DE_LENGTH_OF_ARRAY(s_GL_EXT_shader_pixel_local_storage2), s_GL_EXT_shader_pixel_local_storage2 },
2008 { "GL_EXT_sparse_texture", DE_LENGTH_OF_ARRAY(s_GL_EXT_sparse_texture), s_GL_EXT_sparse_texture },
2009 { "GL_EXT_tessellation_shader", DE_LENGTH_OF_ARRAY(s_GL_EXT_tessellation_shader), s_GL_EXT_tessellation_shader },
2010 { "GL_EXT_texture_border_clamp", DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_border_clamp), s_GL_EXT_texture_border_clamp },
2011 { "GL_EXT_texture_buffer", DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_buffer), s_GL_EXT_texture_buffer },
2012 { "GL_EXT_texture_view", DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_view), s_GL_EXT_texture_view },
2013 { "GL_EXT_win32_keyed_mutex", DE_LENGTH_OF_ARRAY(s_GL_EXT_win32_keyed_mutex), s_GL_EXT_win32_keyed_mutex },
2014 { "GL_EXT_window_rectangles", DE_LENGTH_OF_ARRAY(s_GL_EXT_window_rectangles), s_GL_EXT_window_rectangles },
2015 { "GL_IMG_bindless_texture", DE_LENGTH_OF_ARRAY(s_GL_IMG_bindless_texture), s_GL_IMG_bindless_texture },
2016 { "GL_IMG_framebuffer_downsample", DE_LENGTH_OF_ARRAY(s_GL_IMG_framebuffer_downsample), s_GL_IMG_framebuffer_downsample },
2017 { "GL_INTEL_framebuffer_CMAA", DE_LENGTH_OF_ARRAY(s_GL_INTEL_framebuffer_CMAA), s_GL_INTEL_framebuffer_CMAA },
2018 { "GL_INTEL_performance_query", DE_LENGTH_OF_ARRAY(s_GL_INTEL_performance_query), s_GL_INTEL_performance_query },
2019 { "GL_KHR_blend_equation_advanced", DE_LENGTH_OF_ARRAY(s_GL_KHR_blend_equation_advanced), s_GL_KHR_blend_equation_advanced },
2020 { "GL_KHR_debug", DE_LENGTH_OF_ARRAY(s_GL_KHR_debug), s_GL_KHR_debug },
2021 { "GL_KHR_robustness", DE_LENGTH_OF_ARRAY(s_GL_KHR_robustness), s_GL_KHR_robustness },
2022 { "GL_KHR_parallel_shader_compile", DE_LENGTH_OF_ARRAY(s_GL_KHR_parallel_shader_compile), s_GL_KHR_parallel_shader_compile },
2023 { "GL_NV_bindless_texture", DE_LENGTH_OF_ARRAY(s_GL_NV_bindless_texture), s_GL_NV_bindless_texture },
2024 { "GL_NV_blend_equation_advanced", DE_LENGTH_OF_ARRAY(s_GL_NV_blend_equation_advanced), s_GL_NV_blend_equation_advanced },
2025 { "GL_NV_clip_space_w_scaling", DE_LENGTH_OF_ARRAY(s_GL_NV_clip_space_w_scaling), s_GL_NV_clip_space_w_scaling },
2026 { "GL_NV_conditional_render", DE_LENGTH_OF_ARRAY(s_GL_NV_conditional_render), s_GL_NV_conditional_render },
2027 { "GL_NV_conservative_raster", DE_LENGTH_OF_ARRAY(s_GL_NV_conservative_raster), s_GL_NV_conservative_raster },
2028 { "GL_NV_conservative_raster_pre_snap_triangles", DE_LENGTH_OF_ARRAY(s_GL_NV_conservative_raster_pre_snap_triangles), s_GL_NV_conservative_raster_pre_snap_triangles },
2029 { "GL_NV_copy_buffer", DE_LENGTH_OF_ARRAY(s_GL_NV_copy_buffer), s_GL_NV_copy_buffer },
2030 { "GL_NV_coverage_sample", DE_LENGTH_OF_ARRAY(s_GL_NV_coverage_sample), s_GL_NV_coverage_sample },
2031 { "GL_NV_draw_buffers", DE_LENGTH_OF_ARRAY(s_GL_NV_draw_buffers), s_GL_NV_draw_buffers },
2032 { "GL_NV_draw_instanced", DE_LENGTH_OF_ARRAY(s_GL_NV_draw_instanced), s_GL_NV_draw_instanced },
2033 { "GL_NV_draw_vulkan_image", DE_LENGTH_OF_ARRAY(s_GL_NV_draw_vulkan_image), s_GL_NV_draw_vulkan_image },
2034 { "GL_NV_fragment_coverage_to_color", DE_LENGTH_OF_ARRAY(s_GL_NV_fragment_coverage_to_color), s_GL_NV_fragment_coverage_to_color },
2035 { "GL_NV_framebuffer_blit", DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_blit), s_GL_NV_framebuffer_blit },
2036 { "GL_NV_framebuffer_mixed_samples", DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_mixed_samples), s_GL_NV_framebuffer_mixed_samples },
2037 { "GL_NV_framebuffer_multisample", DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_multisample), s_GL_NV_framebuffer_multisample },
2038 { "GL_NV_gpu_shader5", DE_LENGTH_OF_ARRAY(s_GL_NV_gpu_shader5), s_GL_NV_gpu_shader5 },
2039 { "GL_NV_instanced_arrays", DE_LENGTH_OF_ARRAY(s_GL_NV_instanced_arrays), s_GL_NV_instanced_arrays },
2040 { "GL_NV_internalformat_sample_query", DE_LENGTH_OF_ARRAY(s_GL_NV_internalformat_sample_query), s_GL_NV_internalformat_sample_query },
2041 { "GL_NV_non_square_matrices", DE_LENGTH_OF_ARRAY(s_GL_NV_non_square_matrices), s_GL_NV_non_square_matrices },
2042 { "GL_NV_path_rendering", DE_LENGTH_OF_ARRAY(s_GL_NV_path_rendering), s_GL_NV_path_rendering },
2043 { "GL_NV_polygon_mode", DE_LENGTH_OF_ARRAY(s_GL_NV_polygon_mode), s_GL_NV_polygon_mode },
2044 { "GL_NV_read_buffer", DE_LENGTH_OF_ARRAY(s_GL_NV_read_buffer), s_GL_NV_read_buffer },
2045 { "GL_NV_sample_locations", DE_LENGTH_OF_ARRAY(s_GL_NV_sample_locations), s_GL_NV_sample_locations },
2046 { "GL_NV_viewport_array", DE_LENGTH_OF_ARRAY(s_GL_NV_viewport_array), s_GL_NV_viewport_array },
2047 { "GL_NV_viewport_swizzle", DE_LENGTH_OF_ARRAY(s_GL_NV_viewport_swizzle), s_GL_NV_viewport_swizzle },
2048 { "GL_OES_copy_image", DE_LENGTH_OF_ARRAY(s_GL_OES_copy_image), s_GL_OES_copy_image },
2049 { "GL_OES_draw_buffers_indexed", DE_LENGTH_OF_ARRAY(s_GL_OES_draw_buffers_indexed), s_GL_OES_draw_buffers_indexed },
2050 { "GL_OES_draw_elements_base_vertex", DE_LENGTH_OF_ARRAY(s_GL_OES_draw_elements_base_vertex), s_GL_OES_draw_elements_base_vertex },
2051 { "GL_OES_geometry_shader", DE_LENGTH_OF_ARRAY(s_GL_OES_geometry_shader), s_GL_OES_geometry_shader },
2052 { "GL_OES_get_program_binary", DE_LENGTH_OF_ARRAY(s_GL_OES_get_program_binary), s_GL_OES_get_program_binary },
2053 { "GL_OES_primitive_bounding_box", DE_LENGTH_OF_ARRAY(s_GL_OES_primitive_bounding_box), s_GL_OES_primitive_bounding_box },
2054 { "GL_OES_sample_shading", DE_LENGTH_OF_ARRAY(s_GL_OES_sample_shading), s_GL_OES_sample_shading },
2055 { "GL_OES_tessellation_shader", DE_LENGTH_OF_ARRAY(s_GL_OES_tessellation_shader), s_GL_OES_tessellation_shader },
2056 { "GL_OES_texture_3D", DE_LENGTH_OF_ARRAY(s_GL_OES_texture_3D), s_GL_OES_texture_3D },
2057 { "GL_OES_texture_border_clamp", DE_LENGTH_OF_ARRAY(s_GL_OES_texture_border_clamp), s_GL_OES_texture_border_clamp },
2058 { "GL_OES_texture_buffer", DE_LENGTH_OF_ARRAY(s_GL_OES_texture_buffer), s_GL_OES_texture_buffer },
2059 { "GL_OES_texture_storage_multisample_2d_array", DE_LENGTH_OF_ARRAY(s_GL_OES_texture_storage_multisample_2d_array), s_GL_OES_texture_storage_multisample_2d_array },
2060 { "GL_OES_texture_view", DE_LENGTH_OF_ARRAY(s_GL_OES_texture_view), s_GL_OES_texture_view },
2061 { "GL_OES_viewport_array", DE_LENGTH_OF_ARRAY(s_GL_OES_viewport_array), s_GL_OES_viewport_array },
2062 { "GL_OVR_multiview", DE_LENGTH_OF_ARRAY(s_GL_OVR_multiview), s_GL_OVR_multiview },
2063 { "GL_OVR_multiview_multisampled_render_to_texture", DE_LENGTH_OF_ARRAY(s_GL_OVR_multiview_multisampled_render_to_texture), s_GL_OVR_multiview_multisampled_render_to_texture },
2064 { "GL_QCOM_alpha_test", DE_LENGTH_OF_ARRAY(s_GL_QCOM_alpha_test), s_GL_QCOM_alpha_test },
2065 { "GL_QCOM_framebuffer_foveated", DE_LENGTH_OF_ARRAY(s_GL_QCOM_framebuffer_foveated), s_GL_QCOM_framebuffer_foveated },
2066 { "GL_QCOM_texture_foveated", DE_LENGTH_OF_ARRAY(s_GL_QCOM_texture_foveated), s_GL_QCOM_texture_foveated },
2067 { "GL_QCOM_shader_framebuffer_fetch_noncoherent", DE_LENGTH_OF_ARRAY(s_GL_QCOM_shader_framebuffer_fetch_noncoherent), s_GL_QCOM_shader_framebuffer_fetch_noncoherent },