Mesa (master): glx: Remove major/minor version tracking from extension table
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Apr 16 10:43:37 UTC 2021
Module: Mesa
Branch: master
Commit: fcc9ce09d431de35667a58ff603e387d6de7ad29
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fcc9ce09d431de35667a58ff603e387d6de7ad29
Author: Adam Jackson <ajax at redhat.com>
Date: Tue Apr 13 16:31:24 2021 -0400
glx: Remove major/minor version tracking from extension table
With the previous ancient dead code removed, there's no longer anything
using these values.
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10223>
---
src/glx/glxextensions.c | 373 +++++++++++++++++++++++-------------------------
1 file changed, 182 insertions(+), 191 deletions(-)
diff --git a/src/glx/glxextensions.c b/src/glx/glxextensions.c
index 28f9a2f001e..bfa46a27f6b 100644
--- a/src/glx/glxextensions.c
+++ b/src/glx/glxextensions.c
@@ -42,7 +42,6 @@
#define CONCAT(a,b) a ## b
#define GLX(n) "GLX_" # n, 4 + sizeof( # n ) - 1, CONCAT(n,_bit)
#define GL(n) "GL_" # n, 3 + sizeof( # n ) - 1, GL_ ## n ## _bit
-#define VER(a,b) a, b
#define Y 1
#define N 0
#define EXT_ENABLED(bit,supported) (IS_SET( supported, bit ))
@@ -55,14 +54,6 @@ struct extension_info
unsigned char bit;
- /* This is the lowest version of GLX that "requires" this extension.
- * For example, GLX 1.3 requires SGIX_fbconfig, SGIX_pbuffer, and
- * SGI_make_current_read. If the extension is not required by any known
- * version of GLX, use 0, 0.
- */
- unsigned char version_major;
- unsigned char version_minor;
-
/**
* The client (i.e., libGL) supports this extension.
*
@@ -133,192 +124,192 @@ struct extension_info
/* *INDENT-OFF* */
static const struct extension_info known_glx_extensions[] = {
- { GLX(ARB_context_flush_control), VER(0,0), Y, N, N, N },
- { GLX(ARB_create_context), VER(0,0), Y, N, N, N },
- { GLX(ARB_create_context_no_error), VER(1,4), Y, N, N, N },
- { GLX(ARB_create_context_profile), VER(0,0), Y, N, N, N },
- { GLX(ARB_create_context_robustness), VER(0,0), Y, N, N, N },
- { GLX(ARB_fbconfig_float), VER(0,0), Y, Y, N, N },
- { GLX(ARB_framebuffer_sRGB), VER(0,0), Y, Y, N, N },
- { GLX(ARB_get_proc_address), VER(1,4), Y, N, Y, N },
- { GLX(ARB_multisample), VER(1,4), Y, Y, N, N },
- { GLX(EXT_buffer_age), VER(0,0), Y, N, N, Y },
- { GLX(EXT_create_context_es2_profile), VER(0,0), Y, N, N, N },
- { GLX(EXT_create_context_es_profile), VER(0,0), Y, N, N, N },
- { GLX(EXT_fbconfig_packed_float), VER(0,0), Y, Y, N, N },
- { GLX(EXT_framebuffer_sRGB), VER(0,0), Y, Y, N, N },
- { GLX(EXT_import_context), VER(0,0), Y, Y, N, N },
- { GLX(EXT_swap_control), VER(0,0), Y, N, N, Y },
- { GLX(EXT_swap_control_tear), VER(0,0), Y, N, N, Y },
- { GLX(EXT_texture_from_pixmap), VER(0,0), Y, N, N, N },
- { GLX(EXT_visual_info), VER(0,0), Y, Y, N, N },
- { GLX(EXT_visual_rating), VER(0,0), Y, Y, N, N },
- { GLX(ATI_pixel_format_float), VER(0,0), N, N, N, N },
- { GLX(INTEL_swap_event), VER(0,0), Y, N, N, N },
- { GLX(MESA_copy_sub_buffer), VER(0,0), Y, N, N, N },
- { GLX(MESA_multithread_makecurrent),VER(0,0), Y, N, N, Y },
- { GLX(MESA_query_renderer), VER(0,0), Y, N, N, Y },
- { GLX(MESA_swap_control), VER(0,0), Y, N, N, Y },
- { GLX(NV_float_buffer), VER(0,0), N, N, N, N },
- { GLX(OML_swap_method), VER(0,0), Y, Y, N, N },
- { GLX(OML_sync_control), VER(0,0), Y, N, N, Y },
- { GLX(SGIS_multisample), VER(0,0), Y, Y, N, N },
- { GLX(SGIX_fbconfig), VER(1,3), Y, Y, N, N },
- { GLX(SGIX_pbuffer), VER(1,3), Y, Y, N, N },
- { GLX(SGIX_visual_select_group), VER(0,0), Y, Y, N, N },
- { GLX(SGI_make_current_read), VER(1,3), Y, N, N, N },
- { GLX(SGI_swap_control), VER(0,0), Y, N, N, N },
- { GLX(SGI_video_sync), VER(0,0), Y, N, N, Y },
+ { GLX(ARB_context_flush_control), Y, N, N, N },
+ { GLX(ARB_create_context), Y, N, N, N },
+ { GLX(ARB_create_context_no_error), Y, N, N, N },
+ { GLX(ARB_create_context_profile), Y, N, N, N },
+ { GLX(ARB_create_context_robustness), Y, N, N, N },
+ { GLX(ARB_fbconfig_float), Y, Y, N, N },
+ { GLX(ARB_framebuffer_sRGB), Y, Y, N, N },
+ { GLX(ARB_get_proc_address), Y, N, Y, N },
+ { GLX(ARB_multisample), Y, Y, N, N },
+ { GLX(EXT_buffer_age), Y, N, N, Y },
+ { GLX(EXT_create_context_es2_profile), Y, N, N, N },
+ { GLX(EXT_create_context_es_profile), Y, N, N, N },
+ { GLX(EXT_fbconfig_packed_float), Y, Y, N, N },
+ { GLX(EXT_framebuffer_sRGB), Y, Y, N, N },
+ { GLX(EXT_import_context), Y, Y, N, N },
+ { GLX(EXT_swap_control), Y, N, N, Y },
+ { GLX(EXT_swap_control_tear), Y, N, N, Y },
+ { GLX(EXT_texture_from_pixmap), Y, N, N, N },
+ { GLX(EXT_visual_info), Y, Y, N, N },
+ { GLX(EXT_visual_rating), Y, Y, N, N },
+ { GLX(ATI_pixel_format_float), N, N, N, N },
+ { GLX(INTEL_swap_event), Y, N, N, N },
+ { GLX(MESA_copy_sub_buffer), Y, N, N, N },
+ { GLX(MESA_multithread_makecurrent), Y, N, N, Y },
+ { GLX(MESA_query_renderer), Y, N, N, Y },
+ { GLX(MESA_swap_control), Y, N, N, Y },
+ { GLX(NV_float_buffer), N, N, N, N },
+ { GLX(OML_swap_method), Y, Y, N, N },
+ { GLX(OML_sync_control), Y, N, N, Y },
+ { GLX(SGIS_multisample), Y, Y, N, N },
+ { GLX(SGIX_fbconfig), Y, Y, N, N },
+ { GLX(SGIX_pbuffer), Y, Y, N, N },
+ { GLX(SGIX_visual_select_group), Y, Y, N, N },
+ { GLX(SGI_make_current_read), Y, N, N, N },
+ { GLX(SGI_swap_control), Y, N, N, N },
+ { GLX(SGI_video_sync), Y, N, N, Y },
{ NULL }
};
static const struct extension_info known_gl_extensions[] = {
- { GL(ARB_depth_texture), VER(1,4), Y, N, N, N },
- { GL(ARB_draw_buffers), VER(0,0), Y, N, N, N },
- { GL(ARB_fragment_program), VER(0,0), Y, N, N, N },
- { GL(ARB_fragment_program_shadow), VER(0,0), Y, N, N, N },
- { GL(ARB_framebuffer_object), VER(0,0), Y, N, N, N },
- { GL(ARB_imaging), VER(0,0), Y, N, N, N },
- { GL(ARB_multisample), VER(1,3), Y, N, N, N },
- { GL(ARB_multitexture), VER(1,3), Y, N, N, N },
- { GL(ARB_occlusion_query), VER(1,5), Y, N, N, N },
- { GL(ARB_point_parameters), VER(1,4), Y, N, N, N },
- { GL(ARB_point_sprite), VER(0,0), Y, N, N, N },
- { GL(ARB_shadow), VER(1,4), Y, N, N, N },
- { GL(ARB_shadow_ambient), VER(0,0), Y, N, N, N },
- { GL(ARB_texture_border_clamp), VER(1,3), Y, N, N, N },
- { GL(ARB_texture_compression), VER(1,3), Y, N, N, N },
- { GL(ARB_texture_cube_map), VER(1,3), Y, N, N, N },
- { GL(ARB_texture_env_add), VER(1,3), Y, N, N, N },
- { GL(ARB_texture_env_combine), VER(1,3), Y, N, N, N },
- { GL(ARB_texture_env_crossbar), VER(1,4), Y, N, N, N },
- { GL(ARB_texture_env_dot3), VER(1,3), Y, N, N, N },
- { GL(ARB_texture_filter_anisotropic), VER(0,0), Y, N, N, N },
- { GL(ARB_texture_mirrored_repeat), VER(1,4), Y, N, N, N },
- { GL(ARB_texture_non_power_of_two), VER(1,5), Y, N, N, N },
- { GL(ARB_texture_rectangle), VER(0,0), Y, N, N, N },
- { GL(ARB_texture_rg), VER(0,0), Y, N, N, N },
- { GL(ARB_transpose_matrix), VER(1,3), Y, N, Y, N },
- { GL(ARB_vertex_buffer_object), VER(1,5), N, N, N, N },
- { GL(ARB_vertex_program), VER(0,0), Y, N, N, N },
- { GL(ARB_window_pos), VER(1,4), Y, N, N, N },
- { GL(EXT_abgr), VER(0,0), Y, N, N, N },
- { GL(EXT_bgra), VER(1,2), Y, N, N, N },
- { GL(EXT_blend_color), VER(1,4), Y, N, N, N },
- { GL(EXT_blend_equation_separate), VER(0,0), Y, N, N, N },
- { GL(EXT_blend_func_separate), VER(1,4), Y, N, N, N },
- { GL(EXT_blend_logic_op), VER(1,4), Y, N, N, N },
- { GL(EXT_blend_minmax), VER(1,4), Y, N, N, N },
- { GL(EXT_blend_subtract), VER(1,4), Y, N, N, N },
- { GL(EXT_clip_volume_hint), VER(0,0), Y, N, N, N },
- { GL(EXT_compiled_vertex_array), VER(0,0), N, N, N, N },
- { GL(EXT_convolution), VER(0,0), N, N, N, N },
- { GL(EXT_copy_texture), VER(1,1), Y, N, N, N },
- { GL(EXT_cull_vertex), VER(0,0), N, N, N, N },
- { GL(EXT_depth_bounds_test), VER(0,0), N, N, N, N },
- { GL(EXT_draw_range_elements), VER(1,2), Y, N, Y, N },
- { GL(EXT_fog_coord), VER(1,4), Y, N, N, N },
- { GL(EXT_framebuffer_blit), VER(0,0), Y, N, N, N },
- { GL(EXT_framebuffer_multisample), VER(0,0), Y, N, N, N },
- { GL(EXT_framebuffer_object), VER(0,0), Y, N, N, N },
- { GL(EXT_framebuffer_sRGB), VER(0,0), Y, N, N, N },
- { GL(EXT_multi_draw_arrays), VER(1,4), Y, N, Y, N },
- { GL(EXT_packed_depth_stencil), VER(0,0), Y, N, N, N },
- { GL(EXT_packed_pixels), VER(1,2), Y, N, N, N },
- { GL(EXT_paletted_texture), VER(0,0), Y, N, N, N },
- { GL(EXT_pixel_buffer_object), VER(0,0), N, N, N, N },
- { GL(EXT_point_parameters), VER(1,4), Y, N, N, N },
- { GL(EXT_polygon_offset), VER(1,1), Y, N, N, N },
- { GL(EXT_rescale_normal), VER(1,2), Y, N, N, N },
- { GL(EXT_secondary_color), VER(1,4), Y, N, N, N },
- { GL(EXT_separate_specular_color), VER(1,2), Y, N, N, N },
- { GL(EXT_shadow_funcs), VER(1,5), Y, N, N, N },
- { GL(EXT_shared_texture_palette), VER(0,0), Y, N, N, N },
- { GL(EXT_stencil_two_side), VER(0,0), Y, N, N, N },
- { GL(EXT_stencil_wrap), VER(1,4), Y, N, N, N },
- { GL(EXT_subtexture), VER(1,1), Y, N, N, N },
- { GL(EXT_texture), VER(1,1), Y, N, N, N },
- { GL(EXT_texture3D), VER(1,2), Y, N, N, N },
- { GL(EXT_texture_compression_dxt1), VER(0,0), Y, N, N, N },
- { GL(EXT_texture_compression_s3tc), VER(0,0), Y, N, N, N },
- { GL(EXT_texture_edge_clamp), VER(1,2), Y, N, N, N },
- { GL(EXT_texture_env_add), VER(1,3), Y, N, N, N },
- { GL(EXT_texture_env_combine), VER(1,3), Y, N, N, N },
- { GL(EXT_texture_env_dot3), VER(0,0), Y, N, N, N },
- { GL(EXT_texture_filter_anisotropic), VER(0,0), Y, N, N, N },
- { GL(EXT_texture_integer), VER(0,0), Y, N, N, N },
- { GL(EXT_texture_lod), VER(1,2), Y, N, N, N },
- { GL(EXT_texture_lod_bias), VER(1,4), Y, N, N, N },
- { GL(EXT_texture_mirror_clamp), VER(0,0), Y, N, N, N },
- { GL(EXT_texture_object), VER(1,1), Y, N, N, N },
- { GL(EXT_texture_rectangle), VER(0,0), Y, N, N, N },
- { GL(EXT_vertex_array), VER(0,0), Y, N, N, N },
- { GL(3DFX_texture_compression_FXT1), VER(0,0), Y, N, N, N },
- { GL(APPLE_packed_pixels), VER(1,2), Y, N, N, N },
- { GL(APPLE_ycbcr_422), VER(0,0), Y, N, N, N },
- { GL(ATI_draw_buffers), VER(0,0), Y, N, N, N },
- { GL(ATI_text_fragment_shader), VER(0,0), Y, N, N, N },
- { GL(ATI_texture_env_combine3), VER(0,0), Y, N, N, N },
- { GL(ATI_texture_float), VER(0,0), Y, N, N, N },
- { GL(ATI_texture_mirror_once), VER(0,0), Y, N, N, N },
- { GL(ATIX_texture_env_combine3), VER(0,0), Y, N, N, N },
- { GL(HP_convolution_border_modes), VER(0,0), Y, N, N, N },
- { GL(HP_occlusion_test), VER(0,0), Y, N, N, N },
- { GL(IBM_cull_vertex), VER(0,0), Y, N, N, N },
- { GL(IBM_pixel_filter_hint), VER(0,0), Y, N, N, N },
- { GL(IBM_rasterpos_clip), VER(0,0), Y, N, N, N },
- { GL(IBM_texture_clamp_nodraw), VER(0,0), Y, N, N, N },
- { GL(IBM_texture_mirrored_repeat), VER(0,0), Y, N, N, N },
- { GL(INGR_blend_func_separate), VER(0,0), Y, N, N, N },
- { GL(INGR_interlace_read), VER(0,0), Y, N, N, N },
- { GL(MESA_pack_invert), VER(0,0), Y, N, N, N },
- { GL(MESA_ycbcr_texture), VER(0,0), Y, N, N, N },
- { GL(NV_blend_square), VER(1,4), Y, N, N, N },
- { GL(NV_copy_depth_to_color), VER(0,0), Y, N, N, N },
- { GL(NV_depth_clamp), VER(0,0), Y, N, N, N },
- { GL(NV_fog_distance), VER(0,0), Y, N, N, N },
- { GL(NV_fragment_program), VER(0,0), Y, N, N, N },
- { GL(NV_fragment_program_option), VER(0,0), Y, N, N, N },
- { GL(NV_fragment_program2), VER(0,0), Y, N, N, N },
- { GL(NV_light_max_exponent), VER(0,0), Y, N, N, N },
- { GL(NV_multisample_filter_hint), VER(0,0), Y, N, N, N },
- { GL(NV_packed_depth_stencil), VER(0,0), Y, N, N, N },
- { GL(NV_point_sprite), VER(0,0), Y, N, N, N },
- { GL(NV_texgen_reflection), VER(0,0), Y, N, N, N },
- { GL(NV_texture_compression_vtc), VER(0,0), Y, N, N, N },
- { GL(NV_texture_env_combine4), VER(0,0), Y, N, N, N },
- { GL(NV_texture_rectangle), VER(0,0), Y, N, N, N },
- { GL(NV_vertex_program), VER(0,0), Y, N, N, N },
- { GL(NV_vertex_program1_1), VER(0,0), Y, N, N, N },
- { GL(NV_vertex_program2), VER(0,0), Y, N, N, N },
- { GL(NV_vertex_program2_option), VER(0,0), Y, N, N, N },
- { GL(NV_vertex_program3), VER(0,0), Y, N, N, N },
- { GL(OES_read_format), VER(0,0), Y, N, N, N },
- { GL(OES_compressed_paletted_texture),VER(0,0), Y, N, N, N },
- { GL(SGI_color_matrix), VER(0,0), Y, N, N, N },
- { GL(SGI_color_table), VER(0,0), Y, N, N, N },
- { GL(SGI_texture_color_table), VER(0,0), Y, N, N, N },
- { GL(SGIS_generate_mipmap), VER(1,4), Y, N, N, N },
- { GL(SGIS_multisample), VER(0,0), Y, N, N, N },
- { GL(SGIS_texture_border_clamp), VER(1,3), Y, N, N, N },
- { GL(SGIS_texture_edge_clamp), VER(1,2), Y, N, N, N },
- { GL(SGIS_texture_lod), VER(1,2), Y, N, N, N },
- { GL(SGIX_blend_alpha_minmax), VER(0,0), Y, N, N, N },
- { GL(SGIX_clipmap), VER(0,0), Y, N, N, N },
- { GL(SGIX_depth_texture), VER(0,0), Y, N, N, N },
- { GL(SGIX_fog_offset), VER(0,0), Y, N, N, N },
- { GL(SGIX_shadow), VER(0,0), Y, N, N, N },
- { GL(SGIX_shadow_ambient), VER(0,0), Y, N, N, N },
- { GL(SGIX_texture_coordinate_clamp), VER(0,0), Y, N, N, N },
- { GL(SGIX_texture_lod_bias), VER(0,0), Y, N, N, N },
- { GL(SGIX_texture_range), VER(0,0), Y, N, N, N },
- { GL(SGIX_texture_scale_bias), VER(0,0), Y, N, N, N },
- { GL(SGIX_vertex_preclip), VER(0,0), Y, N, N, N },
- { GL(SGIX_vertex_preclip_hint), VER(0,0), Y, N, N, N },
- { GL(SGIX_ycrcb), VER(0,0), Y, N, N, N },
- { GL(SUN_convolution_border_modes), VER(0,0), Y, N, N, N },
- { GL(SUN_multi_draw_arrays), VER(0,0), Y, N, Y, N },
- { GL(SUN_slice_accum), VER(0,0), Y, N, N, N },
+ { GL(ARB_depth_texture), Y, N, N, N },
+ { GL(ARB_draw_buffers), Y, N, N, N },
+ { GL(ARB_fragment_program), Y, N, N, N },
+ { GL(ARB_fragment_program_shadow), Y, N, N, N },
+ { GL(ARB_framebuffer_object), Y, N, N, N },
+ { GL(ARB_imaging), Y, N, N, N },
+ { GL(ARB_multisample), Y, N, N, N },
+ { GL(ARB_multitexture), Y, N, N, N },
+ { GL(ARB_occlusion_query), Y, N, N, N },
+ { GL(ARB_point_parameters), Y, N, N, N },
+ { GL(ARB_point_sprite), Y, N, N, N },
+ { GL(ARB_shadow), Y, N, N, N },
+ { GL(ARB_shadow_ambient), Y, N, N, N },
+ { GL(ARB_texture_border_clamp), Y, N, N, N },
+ { GL(ARB_texture_compression), Y, N, N, N },
+ { GL(ARB_texture_cube_map), Y, N, N, N },
+ { GL(ARB_texture_env_add), Y, N, N, N },
+ { GL(ARB_texture_env_combine), Y, N, N, N },
+ { GL(ARB_texture_env_crossbar), Y, N, N, N },
+ { GL(ARB_texture_env_dot3), Y, N, N, N },
+ { GL(ARB_texture_filter_anisotropic), Y, N, N, N },
+ { GL(ARB_texture_mirrored_repeat), Y, N, N, N },
+ { GL(ARB_texture_non_power_of_two), Y, N, N, N },
+ { GL(ARB_texture_rectangle), Y, N, N, N },
+ { GL(ARB_texture_rg), Y, N, N, N },
+ { GL(ARB_transpose_matrix), Y, N, Y, N },
+ { GL(ARB_vertex_buffer_object), N, N, N, N },
+ { GL(ARB_vertex_program), Y, N, N, N },
+ { GL(ARB_window_pos), Y, N, N, N },
+ { GL(EXT_abgr), Y, N, N, N },
+ { GL(EXT_bgra), Y, N, N, N },
+ { GL(EXT_blend_color), Y, N, N, N },
+ { GL(EXT_blend_equation_separate), Y, N, N, N },
+ { GL(EXT_blend_func_separate), Y, N, N, N },
+ { GL(EXT_blend_logic_op), Y, N, N, N },
+ { GL(EXT_blend_minmax), Y, N, N, N },
+ { GL(EXT_blend_subtract), Y, N, N, N },
+ { GL(EXT_clip_volume_hint), Y, N, N, N },
+ { GL(EXT_compiled_vertex_array), N, N, N, N },
+ { GL(EXT_convolution), N, N, N, N },
+ { GL(EXT_copy_texture), Y, N, N, N },
+ { GL(EXT_cull_vertex), N, N, N, N },
+ { GL(EXT_depth_bounds_test), N, N, N, N },
+ { GL(EXT_draw_range_elements), Y, N, Y, N },
+ { GL(EXT_fog_coord), Y, N, N, N },
+ { GL(EXT_framebuffer_blit), Y, N, N, N },
+ { GL(EXT_framebuffer_multisample), Y, N, N, N },
+ { GL(EXT_framebuffer_object), Y, N, N, N },
+ { GL(EXT_framebuffer_sRGB), Y, N, N, N },
+ { GL(EXT_multi_draw_arrays), Y, N, Y, N },
+ { GL(EXT_packed_depth_stencil), Y, N, N, N },
+ { GL(EXT_packed_pixels), Y, N, N, N },
+ { GL(EXT_paletted_texture), Y, N, N, N },
+ { GL(EXT_pixel_buffer_object), N, N, N, N },
+ { GL(EXT_point_parameters), Y, N, N, N },
+ { GL(EXT_polygon_offset), Y, N, N, N },
+ { GL(EXT_rescale_normal), Y, N, N, N },
+ { GL(EXT_secondary_color), Y, N, N, N },
+ { GL(EXT_separate_specular_color), Y, N, N, N },
+ { GL(EXT_shadow_funcs), Y, N, N, N },
+ { GL(EXT_shared_texture_palette), Y, N, N, N },
+ { GL(EXT_stencil_two_side), Y, N, N, N },
+ { GL(EXT_stencil_wrap), Y, N, N, N },
+ { GL(EXT_subtexture), Y, N, N, N },
+ { GL(EXT_texture), Y, N, N, N },
+ { GL(EXT_texture3D), Y, N, N, N },
+ { GL(EXT_texture_compression_dxt1), Y, N, N, N },
+ { GL(EXT_texture_compression_s3tc), Y, N, N, N },
+ { GL(EXT_texture_edge_clamp), Y, N, N, N },
+ { GL(EXT_texture_env_add), Y, N, N, N },
+ { GL(EXT_texture_env_combine), Y, N, N, N },
+ { GL(EXT_texture_env_dot3), Y, N, N, N },
+ { GL(EXT_texture_filter_anisotropic), Y, N, N, N },
+ { GL(EXT_texture_integer), Y, N, N, N },
+ { GL(EXT_texture_lod), Y, N, N, N },
+ { GL(EXT_texture_lod_bias), Y, N, N, N },
+ { GL(EXT_texture_mirror_clamp), Y, N, N, N },
+ { GL(EXT_texture_object), Y, N, N, N },
+ { GL(EXT_texture_rectangle), Y, N, N, N },
+ { GL(EXT_vertex_array), Y, N, N, N },
+ { GL(3DFX_texture_compression_FXT1), Y, N, N, N },
+ { GL(APPLE_packed_pixels), Y, N, N, N },
+ { GL(APPLE_ycbcr_422), Y, N, N, N },
+ { GL(ATI_draw_buffers), Y, N, N, N },
+ { GL(ATI_text_fragment_shader), Y, N, N, N },
+ { GL(ATI_texture_env_combine3), Y, N, N, N },
+ { GL(ATI_texture_float), Y, N, N, N },
+ { GL(ATI_texture_mirror_once), Y, N, N, N },
+ { GL(ATIX_texture_env_combine3), Y, N, N, N },
+ { GL(HP_convolution_border_modes), Y, N, N, N },
+ { GL(HP_occlusion_test), Y, N, N, N },
+ { GL(IBM_cull_vertex), Y, N, N, N },
+ { GL(IBM_pixel_filter_hint), Y, N, N, N },
+ { GL(IBM_rasterpos_clip), Y, N, N, N },
+ { GL(IBM_texture_clamp_nodraw), Y, N, N, N },
+ { GL(IBM_texture_mirrored_repeat), Y, N, N, N },
+ { GL(INGR_blend_func_separate), Y, N, N, N },
+ { GL(INGR_interlace_read), Y, N, N, N },
+ { GL(MESA_pack_invert), Y, N, N, N },
+ { GL(MESA_ycbcr_texture), Y, N, N, N },
+ { GL(NV_blend_square), Y, N, N, N },
+ { GL(NV_copy_depth_to_color), Y, N, N, N },
+ { GL(NV_depth_clamp), Y, N, N, N },
+ { GL(NV_fog_distance), Y, N, N, N },
+ { GL(NV_fragment_program), Y, N, N, N },
+ { GL(NV_fragment_program_option), Y, N, N, N },
+ { GL(NV_fragment_program2), Y, N, N, N },
+ { GL(NV_light_max_exponent), Y, N, N, N },
+ { GL(NV_multisample_filter_hint), Y, N, N, N },
+ { GL(NV_packed_depth_stencil), Y, N, N, N },
+ { GL(NV_point_sprite), Y, N, N, N },
+ { GL(NV_texgen_reflection), Y, N, N, N },
+ { GL(NV_texture_compression_vtc), Y, N, N, N },
+ { GL(NV_texture_env_combine4), Y, N, N, N },
+ { GL(NV_texture_rectangle), Y, N, N, N },
+ { GL(NV_vertex_program), Y, N, N, N },
+ { GL(NV_vertex_program1_1), Y, N, N, N },
+ { GL(NV_vertex_program2), Y, N, N, N },
+ { GL(NV_vertex_program2_option), Y, N, N, N },
+ { GL(NV_vertex_program3), Y, N, N, N },
+ { GL(OES_read_format), Y, N, N, N },
+ { GL(OES_compressed_paletted_texture), Y, N, N, N },
+ { GL(SGI_color_matrix), Y, N, N, N },
+ { GL(SGI_color_table), Y, N, N, N },
+ { GL(SGI_texture_color_table), Y, N, N, N },
+ { GL(SGIS_generate_mipmap), Y, N, N, N },
+ { GL(SGIS_multisample), Y, N, N, N },
+ { GL(SGIS_texture_border_clamp), Y, N, N, N },
+ { GL(SGIS_texture_edge_clamp), Y, N, N, N },
+ { GL(SGIS_texture_lod), Y, N, N, N },
+ { GL(SGIX_blend_alpha_minmax), Y, N, N, N },
+ { GL(SGIX_clipmap), Y, N, N, N },
+ { GL(SGIX_depth_texture), Y, N, N, N },
+ { GL(SGIX_fog_offset), Y, N, N, N },
+ { GL(SGIX_shadow), Y, N, N, N },
+ { GL(SGIX_shadow_ambient), Y, N, N, N },
+ { GL(SGIX_texture_coordinate_clamp), Y, N, N, N },
+ { GL(SGIX_texture_lod_bias), Y, N, N, N },
+ { GL(SGIX_texture_range), Y, N, N, N },
+ { GL(SGIX_texture_scale_bias), Y, N, N, N },
+ { GL(SGIX_vertex_preclip), Y, N, N, N },
+ { GL(SGIX_vertex_preclip_hint), Y, N, N, N },
+ { GL(SGIX_ycrcb), Y, N, N, N },
+ { GL(SUN_convolution_border_modes), Y, N, N, N },
+ { GL(SUN_multi_draw_arrays), Y, N, Y, N },
+ { GL(SUN_slice_accum), Y, N, N, N },
{ NULL }
};
/* *INDENT-ON* */
More information about the mesa-commit
mailing list