diff options
Diffstat (limited to 'mesalib/src/mesa')
26 files changed, 71 insertions, 391 deletions
diff --git a/mesalib/src/mesa/drivers/common/meta.c b/mesalib/src/mesa/drivers/common/meta.c index f7dd06aeb..e8484299b 100644 --- a/mesalib/src/mesa/drivers/common/meta.c +++ b/mesalib/src/mesa/drivers/common/meta.c @@ -615,18 +615,16 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state) _mesa_set_enable(ctx, GL_FRAGMENT_SHADER_ATI, GL_FALSE); } - if (ctx->Extensions.ARB_shader_objects) { - _mesa_reference_shader_program(ctx, &save->VertexShader, - ctx->Shader.CurrentVertexProgram); - _mesa_reference_shader_program(ctx, &save->GeometryShader, - ctx->Shader.CurrentGeometryProgram); - _mesa_reference_shader_program(ctx, &save->FragmentShader, - ctx->Shader.CurrentFragmentProgram); - _mesa_reference_shader_program(ctx, &save->ActiveShader, - ctx->Shader.ActiveProgram); - - _mesa_UseProgram(0); - } + _mesa_reference_shader_program(ctx, &save->VertexShader, + ctx->Shader.CurrentVertexProgram); + _mesa_reference_shader_program(ctx, &save->GeometryShader, + ctx->Shader.CurrentGeometryProgram); + _mesa_reference_shader_program(ctx, &save->FragmentShader, + ctx->Shader.CurrentFragmentProgram); + _mesa_reference_shader_program(ctx, &save->ActiveShader, + ctx->Shader.ActiveProgram); + + _mesa_UseProgram(0); } if (state & MESA_META_STENCIL_TEST) { @@ -3049,12 +3047,6 @@ _mesa_meta_check_generate_mipmap_fallback(struct gl_context *ctx, GLenum target, GLenum status; /* check for fallbacks */ - if (!ctx->Extensions.EXT_framebuffer_object) { - _mesa_perf_debug(ctx, MESA_DEBUG_SEVERITY_HIGH, - "glGenerateMipmap() without FBOs\n"); - return GL_TRUE; - } - if (target == GL_TEXTURE_3D || target == GL_TEXTURE_1D_ARRAY || target == GL_TEXTURE_2D_ARRAY) { diff --git a/mesalib/src/mesa/drivers/dri/swrast/swrast.c b/mesalib/src/mesa/drivers/dri/swrast/swrast.c index 15681fce2..945f8f5e1 100644 --- a/mesalib/src/mesa/drivers/dri/swrast/swrast.c +++ b/mesalib/src/mesa/drivers/dri/swrast/swrast.c @@ -653,41 +653,6 @@ swrast_init_driver_functions(struct dd_function_table *driver) driver->UnmapRenderbuffer = swrast_unmap_renderbuffer; } -static const char *es2_extensions[] = { - /* Used by mesa internally (cf all_mesa_extensions in ../common/utils.c) */ - "GL_EXT_blend_func_separate", - "GL_EXT_framebuffer_blit", - "GL_MESA_window_pos", - - /* Required by GLES2 */ - "GL_ARB_fragment_program", - "GL_ARB_fragment_shader", - "GL_ARB_shader_objects", - "GL_ARB_texture_cube_map", - "GL_ARB_texture_non_power_of_two", - "GL_ARB_vertex_shader", - "GL_EXT_blend_color", - "GL_EXT_blend_equation_separate", - "GL_EXT_blend_minmax", - - /* Optional GLES2 */ - "GL_ARB_framebuffer_object", - "GL_EXT_texture_filter_anisotropic", - "GL_ARB_depth_texture", - "GL_EXT_packed_depth_stencil", - "GL_EXT_framebuffer_object", - NULL, -}; - -static void -InitExtensionsES2(struct gl_context *ctx) -{ - int i; - - for (i = 0; es2_extensions[i]; i++) - _mesa_enable_extension(ctx, es2_extensions[i]); -} - /** * Context-related functions. */ @@ -774,27 +739,6 @@ dri_create_context(gl_api api, _mesa_meta_init(mesaCtx); _mesa_enable_sw_extensions(mesaCtx); - switch (api) { - case API_OPENGL_CORE: - /* XXX fix me, fall-through for now */ - case API_OPENGL_COMPAT: - _mesa_enable_1_3_extensions(mesaCtx); - _mesa_enable_1_4_extensions(mesaCtx); - _mesa_enable_1_5_extensions(mesaCtx); - _mesa_enable_2_0_extensions(mesaCtx); - _mesa_enable_2_1_extensions(mesaCtx); - break; - case API_OPENGLES: - _mesa_enable_1_3_extensions(mesaCtx); - _mesa_enable_1_4_extensions(mesaCtx); - _mesa_enable_1_5_extensions(mesaCtx); - - break; - case API_OPENGLES2: - InitExtensionsES2( mesaCtx); - break; - } - _mesa_compute_version(mesaCtx); _mesa_initialize_dispatch_tables(mesaCtx); diff --git a/mesalib/src/mesa/drivers/windows/gdi/mesa.def b/mesalib/src/mesa/drivers/windows/gdi/mesa.def index fec7bbac0..92736b368 100644 --- a/mesalib/src/mesa/drivers/windows/gdi/mesa.def +++ b/mesalib/src/mesa/drivers/windows/gdi/mesa.def @@ -556,7 +556,6 @@ EXPORTS glFogCoorddvEXT glFogCoordPointerEXT glBlendFuncSeparateEXT - glResizeBuffersMESA glWindowPos2dMESA glWindowPos2dvMESA glWindowPos2fMESA diff --git a/mesalib/src/mesa/drivers/windows/gdi/wmesa.c b/mesalib/src/mesa/drivers/windows/gdi/wmesa.c index ef791ab2f..d6eb82392 100644 --- a/mesalib/src/mesa/drivers/windows/gdi/wmesa.c +++ b/mesalib/src/mesa/drivers/windows/gdi/wmesa.c @@ -619,11 +619,6 @@ WMesaContext WMesaCreateContext(HDC hDC, _mesa_destroy_visual(visual); _mesa_enable_sw_extensions(ctx); - _mesa_enable_1_3_extensions(ctx); - _mesa_enable_1_4_extensions(ctx); - _mesa_enable_1_5_extensions(ctx); - _mesa_enable_2_0_extensions(ctx); - _mesa_enable_2_1_extensions(ctx); _mesa_meta_init(ctx); diff --git a/mesalib/src/mesa/main/blend.c b/mesalib/src/mesa/main/blend.c index c97c2078a..9e11ca7b8 100644 --- a/mesalib/src/mesa/main/blend.c +++ b/mesalib/src/mesa/main/blend.c @@ -48,7 +48,6 @@ legal_src_factor(const struct gl_context *ctx, GLenum factor) switch (factor) { case GL_SRC_COLOR: case GL_ONE_MINUS_SRC_COLOR: - return ctx->Extensions.NV_blend_square; case GL_ZERO: case GL_ONE: case GL_DST_COLOR: @@ -86,7 +85,6 @@ legal_dst_factor(const struct gl_context *ctx, GLenum factor) switch (factor) { case GL_DST_COLOR: case GL_ONE_MINUS_DST_COLOR: - return ctx->Extensions.NV_blend_square; case GL_ZERO: case GL_ONE: case GL_SRC_COLOR: diff --git a/mesalib/src/mesa/main/buffers.c b/mesalib/src/mesa/main/buffers.c index e80f0400f..2bdbf41be 100644 --- a/mesalib/src/mesa/main/buffers.c +++ b/mesalib/src/mesa/main/buffers.c @@ -60,7 +60,6 @@ supported_buffer_bitmask(const struct gl_context *ctx, if (_mesa_is_user_fbo(fb)) { /* A user-created renderbuffer */ GLuint i; - ASSERT(ctx->Extensions.EXT_framebuffer_object); for (i = 0; i < ctx->Const.MaxColorAttachments; i++) { mask |= (BUFFER_BIT_COLOR0 << i); } diff --git a/mesalib/src/mesa/main/enable.c b/mesalib/src/mesa/main/enable.c index fdde24e36..5c72b3cd7 100644 --- a/mesalib/src/mesa/main/enable.c +++ b/mesalib/src/mesa/main/enable.c @@ -755,7 +755,7 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) case GL_COLOR_SUM_EXT: if (ctx->API != API_OPENGL_COMPAT) goto invalid_enum_error; - CHECK_EXTENSION2(EXT_secondary_color, ARB_vertex_program, cap); + CHECK_EXTENSION(ARB_vertex_program, cap); if (ctx->Fog.ColorSumEnabled == state) return; FLUSH_VERTICES(ctx, _NEW_FOG); @@ -1420,12 +1420,10 @@ _mesa_IsEnabled( GLenum cap ) case GL_FOG_COORDINATE_ARRAY_EXT: if (ctx->API != API_OPENGL_COMPAT) goto invalid_enum_error; - CHECK_EXTENSION(EXT_fog_coord); return (ctx->Array.ArrayObj->VertexAttrib[VERT_ATTRIB_FOG].Enabled != 0); case GL_SECONDARY_COLOR_ARRAY_EXT: if (ctx->API != API_OPENGL_COMPAT) goto invalid_enum_error; - CHECK_EXTENSION(EXT_secondary_color); return (ctx->Array.ArrayObj->VertexAttrib[VERT_ATTRIB_COLOR1].Enabled != 0); case GL_POINT_SIZE_ARRAY_OES: if (ctx->API != API_OPENGLES) @@ -1441,7 +1439,7 @@ _mesa_IsEnabled( GLenum cap ) case GL_COLOR_SUM_EXT: if (ctx->API != API_OPENGL_COMPAT) goto invalid_enum_error; - CHECK_EXTENSION2(EXT_secondary_color, ARB_vertex_program); + CHECK_EXTENSION(ARB_vertex_program); return ctx->Fog.ColorSumEnabled; /* GL_ARB_multisample */ diff --git a/mesalib/src/mesa/main/extensions.c b/mesalib/src/mesa/main/extensions.c index 2ba4475c9..e0428c683 100644 --- a/mesalib/src/mesa/main/extensions.c +++ b/mesalib/src/mesa/main/extensions.c @@ -100,7 +100,7 @@ static const struct extension extension_table[] = { { "GL_ARB_fragment_shader", o(ARB_fragment_shader), GL, 2002 }, { "GL_ARB_framebuffer_object", o(ARB_framebuffer_object), GL, 2005 }, { "GL_ARB_framebuffer_sRGB", o(EXT_framebuffer_sRGB), GL, 1998 }, - { "GL_ARB_get_program_binary", o(ARB_shader_objects), GL, 2010 }, + { "GL_ARB_get_program_binary", o(dummy_true), GL, 2010 }, { "GL_ARB_gpu_shader5", o(ARB_gpu_shader5), GL, 2010 }, { "GL_ARB_half_float_pixel", o(ARB_half_float_pixel), GL, 2003 }, { "GL_ARB_half_float_vertex", o(ARB_half_float_vertex), GL, 2008 }, @@ -121,10 +121,10 @@ static const struct extension extension_table[] = { { "GL_ARB_sampler_objects", o(dummy_true), GL, 2009 }, { "GL_ARB_seamless_cube_map", o(ARB_seamless_cube_map), GL, 2009 }, { "GL_ARB_shader_bit_encoding", o(ARB_shader_bit_encoding), GL, 2010 }, - { "GL_ARB_shader_objects", o(ARB_shader_objects), GL, 2002 }, + { "GL_ARB_shader_objects", o(dummy_true), GL, 2002 }, { "GL_ARB_shader_stencil_export", o(ARB_shader_stencil_export), GL, 2009 }, { "GL_ARB_shader_texture_lod", o(ARB_shader_texture_lod), GL, 2009 }, - { "GL_ARB_shading_language_100", o(ARB_shading_language_100), GLL, 2003 }, + { "GL_ARB_shading_language_100", o(dummy_true), GLL, 2003 }, { "GL_ARB_shading_language_packing", o(ARB_shading_language_packing), GL, 2011 }, { "GL_ARB_shading_language_420pack", o(ARB_shading_language_420pack), GL, 2011 }, { "GL_ARB_shadow", o(ARB_shadow), GLL, 2001 }, @@ -149,8 +149,8 @@ static const struct extension extension_table[] = { { "GL_ARB_texture_rectangle", o(NV_texture_rectangle), GL, 2004 }, { "GL_ARB_texture_rgb10_a2ui", o(ARB_texture_rgb10_a2ui), GL, 2009 }, { "GL_ARB_texture_rg", o(ARB_texture_rg), GL, 2008 }, - { "GL_ARB_texture_storage", o(ARB_texture_storage), GL, 2011 }, - { "GL_ARB_texture_storage_multisample", o(ARB_texture_storage_multisample), GL, 2012 }, + { "GL_ARB_texture_storage", o(dummy_true), GL, 2011 }, + { "GL_ARB_texture_storage_multisample", o(ARB_texture_multisample), GL, 2012 }, { "GL_ARB_texture_swizzle", o(EXT_texture_swizzle), GL, 2008 }, { "GL_ARB_timer_query", o(ARB_timer_query), GL, 2010 }, { "GL_ARB_transform_feedback2", o(ARB_transform_feedback2), GL, 2010 }, @@ -171,7 +171,7 @@ static const struct extension extension_table[] = { { "GL_EXT_blend_color", o(EXT_blend_color), GLL, 1995 }, { "GL_EXT_blend_equation_separate", o(EXT_blend_equation_separate), GL, 2003 }, { "GL_EXT_blend_func_separate", o(EXT_blend_func_separate), GLL, 1999 }, - { "GL_EXT_discard_framebuffer", o(EXT_framebuffer_object), ES1 | ES2, 2009 }, + { "GL_EXT_discard_framebuffer", o(dummy_true), ES1 | ES2, 2009 }, { "GL_EXT_blend_minmax", o(EXT_blend_minmax), GLL | ES1 | ES2, 1995 }, { "GL_EXT_blend_subtract", o(dummy_true), GLL, 1995 }, { "GL_EXT_compiled_vertex_array", o(dummy_true), GLL, 1996 }, @@ -180,11 +180,11 @@ static const struct extension extension_table[] = { { "GL_EXT_draw_buffers2", o(EXT_draw_buffers2), GL, 2006 }, { "GL_EXT_draw_instanced", o(ARB_draw_instanced), GL, 2006 }, { "GL_EXT_draw_range_elements", o(dummy_true), GLL, 1997 }, - { "GL_EXT_fog_coord", o(EXT_fog_coord), GLL, 1999 }, + { "GL_EXT_fog_coord", o(dummy_true), GLL, 1999 }, { "GL_EXT_framebuffer_blit", o(EXT_framebuffer_blit), GL, 2005 }, { "GL_EXT_framebuffer_multisample", o(EXT_framebuffer_multisample), GL, 2005 }, { "GL_EXT_framebuffer_multisample_blit_scaled", o(EXT_framebuffer_multisample_blit_scaled), GL, 2011 }, - { "GL_EXT_framebuffer_object", o(EXT_framebuffer_object), GL, 2000 }, + { "GL_EXT_framebuffer_object", o(dummy_true), GL, 2000 }, { "GL_EXT_framebuffer_sRGB", o(EXT_framebuffer_sRGB), GL, 1998 }, { "GL_EXT_gpu_program_parameters", o(EXT_gpu_program_parameters), GLL, 2006 }, { "GL_EXT_gpu_shader4", o(EXT_gpu_shader4), GL, 2006 }, @@ -198,10 +198,10 @@ static const struct extension extension_table[] = { { "GL_EXT_polygon_offset", o(dummy_true), GLL, 1995 }, { "GL_EXT_provoking_vertex", o(EXT_provoking_vertex), GL, 2009 }, { "GL_EXT_rescale_normal", o(dummy_true), GLL, 1997 }, - { "GL_EXT_secondary_color", o(EXT_secondary_color), GLL, 1999 }, + { "GL_EXT_secondary_color", o(dummy_true), GLL, 1999 }, { "GL_EXT_separate_shader_objects", o(EXT_separate_shader_objects), GLL, 2008 }, { "GL_EXT_separate_specular_color", o(dummy_true), GLL, 1997 }, - { "GL_EXT_shadow_funcs", o(EXT_shadow_funcs), GLL, 2002 }, + { "GL_EXT_shadow_funcs", o(ARB_shadow), GLL, 2002 }, { "GL_EXT_stencil_two_side", o(EXT_stencil_two_side), GLL, 2001 }, { "GL_EXT_stencil_wrap", o(dummy_true), GLL, 2002 }, { "GL_EXT_subtexture", o(dummy_true), GLL, 1995 }, @@ -248,7 +248,7 @@ static const struct extension extension_table[] = { { "GL_OES_byte_coordinates", o(dummy_true), ES1, 2002 }, { "GL_OES_compressed_ETC1_RGB8_texture", o(OES_compressed_ETC1_RGB8_texture), ES1 | ES2, 2005 }, { "GL_OES_compressed_paletted_texture", o(dummy_true), ES1, 2003 }, - { "GL_OES_depth24", o(EXT_framebuffer_object), ES1 | ES2, 2005 }, + { "GL_OES_depth24", o(dummy_true), ES1 | ES2, 2005 }, { "GL_OES_depth32", o(dummy_false), DISABLE, 2005 }, { "GL_OES_depth_texture", o(ARB_depth_texture), ES2, 2006 }, { "GL_OES_depth_texture_cube_map", o(OES_depth_texture_cube_map), ES2, 2012 }, @@ -257,10 +257,10 @@ static const struct extension extension_table[] = { { "GL_OES_EGL_image", o(OES_EGL_image), GL | ES1 | ES2, 2006 }, { "GL_OES_EGL_image_external", o(OES_EGL_image_external), ES1 | ES2, 2010 }, { "GL_OES_element_index_uint", o(dummy_true), ES1 | ES2, 2005 }, - { "GL_OES_fbo_render_mipmap", o(EXT_framebuffer_object), ES1 | ES2, 2005 }, + { "GL_OES_fbo_render_mipmap", o(dummy_true), ES1 | ES2, 2005 }, { "GL_OES_fixed_point", o(dummy_true), ES1, 2002 }, - { "GL_OES_framebuffer_object", o(EXT_framebuffer_object), ES1, 2005 }, - { "GL_OES_get_program_binary", o(ARB_shader_objects), ES2, 2008 }, + { "GL_OES_framebuffer_object", o(dummy_true), ES1, 2005 }, + { "GL_OES_get_program_binary", o(dummy_true), ES2, 2008 }, { "GL_OES_mapbuffer", o(dummy_true), ES1 | ES2, 2005 }, { "GL_OES_matrix_get", o(dummy_true), ES1, 2004 }, { "GL_OES_packed_depth_stencil", o(EXT_packed_depth_stencil), ES1 | ES2, 2007 }, @@ -268,12 +268,12 @@ static const struct extension extension_table[] = { { "GL_OES_point_sprite", o(ARB_point_sprite), ES1, 2004 }, { "GL_OES_query_matrix", o(dummy_true), ES1, 2003 }, { "GL_OES_read_format", o(dummy_true), GL | ES1, 2003 }, - { "GL_OES_rgb8_rgba8", o(EXT_framebuffer_object), ES1 | ES2, 2005 }, + { "GL_OES_rgb8_rgba8", o(dummy_true), ES1 | ES2, 2005 }, { "GL_OES_single_precision", o(dummy_true), ES1, 2003 }, { "GL_OES_standard_derivatives", o(OES_standard_derivatives), ES2, 2005 }, { "GL_OES_stencil1", o(dummy_false), DISABLE, 2005 }, { "GL_OES_stencil4", o(dummy_false), DISABLE, 2005 }, - { "GL_OES_stencil8", o(EXT_framebuffer_object), ES1 | ES2, 2005 }, + { "GL_OES_stencil8", o(dummy_true), ES1 | ES2, 2005 }, { "GL_OES_stencil_wrap", o(dummy_true), ES1, 2002 }, { "GL_OES_texture_3D", o(EXT_texture3D), ES2, 2005 }, { "GL_OES_texture_cube_map", o(ARB_texture_cube_map), ES1, 2007 }, @@ -307,16 +307,15 @@ static const struct extension extension_table[] = { { "GL_IBM_texture_mirrored_repeat", o(dummy_true), GLL, 1998 }, { "GL_INGR_blend_func_separate", o(EXT_blend_func_separate), GLL, 1999 }, { "GL_MESA_pack_invert", o(MESA_pack_invert), GL, 2002 }, - { "GL_MESA_resize_buffers", o(MESA_resize_buffers), GL, 1999 }, { "GL_MESA_texture_array", o(MESA_texture_array), GLL, 2007 }, { "GL_MESA_texture_signed_rgba", o(EXT_texture_snorm), GL, 2009 }, { "GL_MESA_window_pos", o(dummy_true), GLL, 2000 }, { "GL_MESA_ycbcr_texture", o(MESA_ycbcr_texture), GL, 2002 }, - { "GL_NV_blend_square", o(NV_blend_square), GLL, 1999 }, + { "GL_NV_blend_square", o(dummy_true), GLL, 1999 }, { "GL_NV_conditional_render", o(NV_conditional_render), GL, 2008 }, { "GL_NV_depth_clamp", o(ARB_depth_clamp), GL, 2001 }, { "GL_NV_draw_buffers", o(dummy_true), ES2, 2011 }, - { "GL_NV_fbo_color_attachments", o(EXT_framebuffer_object), ES2, 2010 }, + { "GL_NV_fbo_color_attachments", o(dummy_true), ES2, 2010 }, { "GL_NV_fog_distance", o(NV_fog_distance), GLL, 2001 }, { "GL_NV_fragment_program_option", o(NV_fragment_program_option), GLL, 2005 }, { "GL_NV_light_max_exponent", o(dummy_true), GLL, 1999 }, @@ -391,9 +390,7 @@ _mesa_enable_sw_extensions(struct gl_context *ctx) ctx->Extensions.ARB_occlusion_query = GL_TRUE; ctx->Extensions.ARB_occlusion_query2 = GL_TRUE; ctx->Extensions.ARB_point_sprite = GL_TRUE; - ctx->Extensions.ARB_shader_objects = GL_TRUE; ctx->Extensions.EXT_separate_shader_objects = GL_TRUE; - ctx->Extensions.ARB_shading_language_100 = GL_TRUE; ctx->Extensions.ARB_shadow = GL_TRUE; ctx->Extensions.ARB_texture_border_clamp = GL_TRUE; ctx->Extensions.ARB_texture_cube_map = GL_TRUE; @@ -406,7 +403,6 @@ _mesa_enable_sw_extensions(struct gl_context *ctx) ctx->Extensions.ARB_texture_non_power_of_two = GL_TRUE; ctx->Extensions.ARB_texture_rg = GL_TRUE; ctx->Extensions.ARB_texture_compression_rgtc = GL_TRUE; - ctx->Extensions.ARB_texture_storage = GL_TRUE; ctx->Extensions.ARB_vertex_program = GL_TRUE; ctx->Extensions.ARB_vertex_shader = GL_TRUE; ctx->Extensions.ARB_sync = GL_TRUE; @@ -423,15 +419,11 @@ _mesa_enable_sw_extensions(struct gl_context *ctx) ctx->Extensions.EXT_blend_minmax = GL_TRUE; ctx->Extensions.EXT_depth_bounds_test = GL_TRUE; ctx->Extensions.EXT_draw_buffers2 = GL_TRUE; - ctx->Extensions.EXT_fog_coord = GL_TRUE; - ctx->Extensions.EXT_framebuffer_object = GL_TRUE; ctx->Extensions.EXT_framebuffer_blit = GL_TRUE; ctx->Extensions.EXT_packed_depth_stencil = GL_TRUE; ctx->Extensions.EXT_pixel_buffer_object = GL_TRUE; ctx->Extensions.EXT_point_parameters = GL_TRUE; ctx->Extensions.EXT_provoking_vertex = GL_TRUE; - ctx->Extensions.EXT_shadow_funcs = GL_TRUE; - ctx->Extensions.EXT_secondary_color = GL_TRUE; ctx->Extensions.EXT_stencil_two_side = GL_TRUE; ctx->Extensions.EXT_texture_array = GL_TRUE; ctx->Extensions.EXT_texture_compression_latc = GL_TRUE; @@ -445,10 +437,8 @@ _mesa_enable_sw_extensions(struct gl_context *ctx) /*ctx->Extensions.EXT_transform_feedback = GL_TRUE;*/ ctx->Extensions.EXT_vertex_array_bgra = GL_TRUE; ctx->Extensions.MESA_pack_invert = GL_TRUE; - ctx->Extensions.MESA_resize_buffers = GL_TRUE; ctx->Extensions.MESA_texture_array = GL_TRUE; ctx->Extensions.MESA_ycbcr_texture = GL_TRUE; - ctx->Extensions.NV_blend_square = GL_TRUE; ctx->Extensions.NV_conditional_render = GL_TRUE; ctx->Extensions.NV_point_sprite = GL_TRUE; ctx->Extensions.NV_texture_env_combine4 = GL_TRUE; @@ -456,91 +446,13 @@ _mesa_enable_sw_extensions(struct gl_context *ctx) ctx->Extensions.NV_fragment_program_option = GL_TRUE; ctx->Extensions.EXT_gpu_program_parameters = GL_TRUE; ctx->Extensions.OES_standard_derivatives = GL_TRUE; - _mesa_enable_extension(ctx, "GL_3DFX_texture_compression_FXT1"); + ctx->Extensions.TDFX_texture_compression_FXT1 = GL_TRUE; if (ctx->Mesa_DXTn) { ctx->Extensions.ANGLE_texture_compression_dxt = GL_TRUE; - _mesa_enable_extension(ctx, "GL_EXT_texture_compression_s3tc"); - _mesa_enable_extension(ctx, "GL_S3_s3tc"); + ctx->Extensions.EXT_texture_compression_s3tc = GL_TRUE; } } - -/** - * Enable all OpenGL 1.3 features and extensions. - * A convenience function to be called by drivers. - */ -void -_mesa_enable_1_3_extensions(struct gl_context *ctx) -{ - ctx->Extensions.ARB_texture_border_clamp = GL_TRUE; - ctx->Extensions.ARB_texture_cube_map = GL_TRUE; - ctx->Extensions.ARB_texture_env_combine = GL_TRUE; - ctx->Extensions.ARB_texture_env_dot3 = GL_TRUE; -} - - - -/** - * Enable all OpenGL 1.4 features and extensions. - * A convenience function to be called by drivers. - */ -void -_mesa_enable_1_4_extensions(struct gl_context *ctx) -{ - ctx->Extensions.ARB_depth_texture = GL_TRUE; - ctx->Extensions.ARB_shadow = GL_TRUE; - ctx->Extensions.ARB_texture_env_crossbar = GL_TRUE; - ctx->Extensions.EXT_blend_color = GL_TRUE; - ctx->Extensions.EXT_blend_func_separate = GL_TRUE; - ctx->Extensions.EXT_blend_minmax = GL_TRUE; - ctx->Extensions.EXT_fog_coord = GL_TRUE; - ctx->Extensions.EXT_point_parameters = GL_TRUE; - ctx->Extensions.EXT_secondary_color = GL_TRUE; -} - - -/** - * Enable all OpenGL 1.5 features and extensions. - * A convenience function to be called by drivers. - */ -void -_mesa_enable_1_5_extensions(struct gl_context *ctx) -{ - ctx->Extensions.ARB_occlusion_query = GL_TRUE; - ctx->Extensions.EXT_shadow_funcs = GL_TRUE; -} - - -/** - * Enable all OpenGL 2.0 features and extensions. - * A convenience function to be called by drivers. - */ -void -_mesa_enable_2_0_extensions(struct gl_context *ctx) -{ - ctx->Extensions.ARB_fragment_shader = GL_TRUE; - ctx->Extensions.ARB_point_sprite = GL_TRUE; - ctx->Extensions.EXT_blend_equation_separate = GL_TRUE; - ctx->Extensions.ARB_texture_non_power_of_two = GL_TRUE; - ctx->Extensions.ARB_shader_objects = GL_TRUE; - ctx->Extensions.ARB_shading_language_100 = GL_TRUE; - ctx->Extensions.EXT_stencil_two_side = GL_TRUE; - ctx->Extensions.ARB_vertex_shader = GL_TRUE; -} - - -/** - * Enable all OpenGL 2.1 features and extensions. - * A convenience function to be called by drivers. - */ -void -_mesa_enable_2_1_extensions(struct gl_context *ctx) -{ - ctx->Extensions.EXT_pixel_buffer_object = GL_TRUE; - ctx->Extensions.EXT_texture_sRGB = GL_TRUE; -} - - /** * Either enable or disable the named extension. * \return GL_TRUE for success, GL_FALSE if invalid extension name @@ -572,51 +484,6 @@ set_extension( struct gl_context *ctx, const char *name, GLboolean state ) } } - -/** - * Enable the named extension. - * Typically called by drivers. - */ -void -_mesa_enable_extension( struct gl_context *ctx, const char *name ) -{ - if (!set_extension(ctx, name, GL_TRUE)) - _mesa_problem(ctx, "Trying to enable unknown extension: %s", name); -} - - -/** - * Disable the named extension. - * XXX is this really needed??? - */ -void -_mesa_disable_extension( struct gl_context *ctx, const char *name ) -{ - if (!set_extension(ctx, name, GL_FALSE)) - _mesa_problem(ctx, "Trying to disable unknown extension: %s", name); -} - - -/** - * Test if the named extension is enabled in this context. - */ -GLboolean -_mesa_extension_is_enabled( struct gl_context *ctx, const char *name ) -{ - size_t offset; - GLboolean *base; - - if (name == 0) - return GL_FALSE; - - offset = name_to_offset(name); - if (offset == 0) - return GL_FALSE; - base = (GLboolean *) &ctx->Extensions; - return base[offset]; -} - - /** * \brief Apply the \c MESA_EXTENSION_OVERRIDE environment variable. * diff --git a/mesalib/src/mesa/main/extensions.h b/mesalib/src/mesa/main/extensions.h index 7a3791d58..a8cc2a41e 100644 --- a/mesalib/src/mesa/main/extensions.h +++ b/mesalib/src/mesa/main/extensions.h @@ -42,22 +42,6 @@ struct gl_context; extern void _mesa_enable_sw_extensions(struct gl_context *ctx); -extern void _mesa_enable_1_3_extensions(struct gl_context *ctx); - -extern void _mesa_enable_1_4_extensions(struct gl_context *ctx); - -extern void _mesa_enable_1_5_extensions(struct gl_context *ctx); - -extern void _mesa_enable_2_0_extensions(struct gl_context *ctx); - -extern void _mesa_enable_2_1_extensions(struct gl_context *ctx); - -extern void _mesa_enable_extension(struct gl_context *ctx, const char *name); - -extern void _mesa_disable_extension(struct gl_context *ctx, const char *name); - -extern GLboolean _mesa_extension_is_enabled(struct gl_context *ctx, const char *name); - extern void _mesa_init_extensions(struct gl_context *ctx); extern GLubyte *_mesa_make_extension_string(struct gl_context *ctx); diff --git a/mesalib/src/mesa/main/fbobject.c b/mesalib/src/mesa/main/fbobject.c index ba462e935..f59fdb12d 100644 --- a/mesalib/src/mesa/main/fbobject.c +++ b/mesalib/src/mesa/main/fbobject.c @@ -1909,17 +1909,10 @@ _mesa_BindFramebuffer(GLenum target, GLuint framebuffer) #ifdef DEBUG if (ctx->Extensions.ARB_framebuffer_object) { - ASSERT(ctx->Extensions.EXT_framebuffer_object); ASSERT(ctx->Extensions.EXT_framebuffer_blit); } #endif - if (!ctx->Extensions.EXT_framebuffer_object) { - _mesa_error(ctx, GL_INVALID_OPERATION, - "glBindFramebufferEXT(unsupported)"); - return; - } - switch (target) { case GL_DRAW_FRAMEBUFFER_EXT: if (!ctx->Extensions.EXT_framebuffer_blit) { diff --git a/mesalib/src/mesa/main/fog.c b/mesalib/src/mesa/main/fog.c index 1bd072fb3..89153912e 100644 --- a/mesalib/src/mesa/main/fog.c +++ b/mesalib/src/mesa/main/fog.c @@ -162,7 +162,7 @@ _mesa_Fogfv( GLenum pname, const GLfloat *params ) break; case GL_FOG_COORDINATE_SOURCE_EXT: { GLenum p = (GLenum) (GLint) *params; - if (ctx->API != API_OPENGL_COMPAT || !ctx->Extensions.EXT_fog_coord || + if (ctx->API != API_OPENGL_COMPAT || (p != GL_FOG_COORDINATE_EXT && p != GL_FRAGMENT_DEPTH_EXT)) { _mesa_error(ctx, GL_INVALID_ENUM, "glFog"); return; diff --git a/mesalib/src/mesa/main/framebuffer.c b/mesalib/src/mesa/main/framebuffer.c index d28882ac4..4ec4118c5 100644 --- a/mesalib/src/mesa/main/framebuffer.c +++ b/mesalib/src/mesa/main/framebuffer.c @@ -319,16 +319,6 @@ _mesa_resize_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb, } } -/* - * XXX THIS IS OBSOLETE - */ -void GLAPIENTRY -_mesa_ResizeBuffersMESA( void ) -{ -} - - - /** * Examine all the framebuffer's renderbuffers to update the Width/Height * fields of the framebuffer. If we have renderbuffers with different diff --git a/mesalib/src/mesa/main/framebuffer.h b/mesalib/src/mesa/main/framebuffer.h index 1b1caab09..264566477 100644 --- a/mesalib/src/mesa/main/framebuffer.h +++ b/mesalib/src/mesa/main/framebuffer.h @@ -71,10 +71,6 @@ _mesa_resize_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb, extern void _mesa_resizebuffers( struct gl_context *ctx ); -extern void GLAPIENTRY -_mesa_ResizeBuffersMESA( void ); - - extern void _mesa_update_draw_buffer_bounds(struct gl_context *ctx); diff --git a/mesalib/src/mesa/main/get.c b/mesalib/src/mesa/main/get.c index d31ba011f..0b33fa49b 100644 --- a/mesalib/src/mesa/main/get.c +++ b/mesalib/src/mesa/main/get.c @@ -272,18 +272,6 @@ static const int extra_flush_current[] = { EXTRA_END }; -static const int extra_EXT_secondary_color_flush_current[] = { - EXT(EXT_secondary_color), - EXTRA_FLUSH_CURRENT, - EXTRA_END -}; - -static const int extra_EXT_fog_coord_flush_current[] = { - EXT(EXT_fog_coord), - EXTRA_FLUSH_CURRENT, - EXTRA_END -}; - static const int extra_EXT_texture_integer[] = { EXT(EXT_texture_integer), EXTRA_END @@ -345,9 +333,6 @@ static const int extra_MESA_texture_array_es3[] = { EXTRA_EXT(ARB_texture_cube_map); EXTRA_EXT(MESA_texture_array); -EXTRA_EXT2(EXT_secondary_color, ARB_vertex_program); -EXTRA_EXT(EXT_secondary_color); -EXTRA_EXT(EXT_fog_coord); EXTRA_EXT(NV_fog_distance); EXTRA_EXT(EXT_texture_filter_anisotropic); EXTRA_EXT(NV_point_sprite); @@ -357,12 +342,10 @@ EXTRA_EXT(EXT_depth_bounds_test); EXTRA_EXT(ARB_depth_clamp); EXTRA_EXT(ATI_fragment_shader); EXTRA_EXT(EXT_framebuffer_blit); -EXTRA_EXT(ARB_shader_objects); EXTRA_EXT(EXT_provoking_vertex); EXTRA_EXT(ARB_fragment_shader); EXTRA_EXT(ARB_fragment_program); EXTRA_EXT2(ARB_framebuffer_object, EXT_framebuffer_multisample); -EXTRA_EXT(EXT_framebuffer_object); EXTRA_EXT(ARB_seamless_cube_map); EXTRA_EXT(ARB_sync); EXTRA_EXT(ARB_vertex_shader); diff --git a/mesalib/src/mesa/main/get_hash_params.py b/mesalib/src/mesa/main/get_hash_params.py index f47b33fcd..fde45379a 100644 --- a/mesalib/src/mesa/main/get_hash_params.py +++ b/mesalib/src/mesa/main/get_hash_params.py @@ -107,9 +107,9 @@ descriptor=[ [ "IMPLEMENTATION_COLOR_READ_FORMAT_OES", "LOC_CUSTOM, TYPE_INT, 0, extra_new_buffers" ], # GL_EXT_framebuffer_object - [ "FRAMEBUFFER_BINDING_EXT", "BUFFER_INT(Name), extra_EXT_framebuffer_object" ], - [ "RENDERBUFFER_BINDING_EXT", "LOC_CUSTOM, TYPE_INT, 0, extra_EXT_framebuffer_object" ], - [ "MAX_RENDERBUFFER_SIZE_EXT", "CONTEXT_INT(Const.MaxRenderbufferSize), extra_EXT_framebuffer_object" ], + [ "FRAMEBUFFER_BINDING_EXT", "BUFFER_INT(Name), NO_EXTRA" ], + [ "RENDERBUFFER_BINDING_EXT", "LOC_CUSTOM, TYPE_INT, 0, NO_EXTRA" ], + [ "MAX_RENDERBUFFER_SIZE_EXT", "CONTEXT_INT(Const.MaxRenderbufferSize), NO_EXTRA" ], # This entry isn't spec'ed for GLES 2, but is needed for Mesa's # GLSL: @@ -258,7 +258,7 @@ descriptor=[ [ "MAX_DRAW_BUFFERS_ARB", "CONTEXT_INT(Const.MaxDrawBuffers), NO_EXTRA" ], # GL_EXT_framebuffer_object / GL_NV_fbo_color_attachments - [ "MAX_COLOR_ATTACHMENTS", "CONTEXT_INT(Const.MaxColorAttachments), extra_EXT_framebuffer_object" ], + [ "MAX_COLOR_ATTACHMENTS", "CONTEXT_INT(Const.MaxColorAttachments), NO_EXTRA" ], # GL_ARB_draw_buffers / GL_NV_draw_buffers (for ES 2.0) [ "DRAW_BUFFER0_ARB", "BUFFER_ENUM(ColorDrawBuffer[0]), NO_EXTRA" ], @@ -280,7 +280,7 @@ descriptor=[ # GL_ARB_shader_objects # Actually, this token isn't part of GL_ARB_shader_objects, but is # close enough for now. - [ "CURRENT_PROGRAM", "LOC_CUSTOM, TYPE_INT, 0, extra_ARB_shader_objects" ], + [ "CURRENT_PROGRAM", "LOC_CUSTOM, TYPE_INT, 0, NO_EXTRA" ], # OpenGL 2.0 [ "STENCIL_BACK_FUNC", "CONTEXT_ENUM(Stencil.Function[1]), NO_EXTRA" ], @@ -311,8 +311,8 @@ descriptor=[ [ "SHADER_BINARY_FORMATS", "CONST(0), extra_ARB_ES2_compatibility_api_es2" ], # GL_ARB_get_program_binary / GL_OES_get_program_binary - [ "NUM_PROGRAM_BINARY_FORMATS", "CONST(0), extra_ARB_shader_objects" ], - [ "PROGRAM_BINARY_FORMATS", "LOC_CUSTOM, TYPE_INVALID, 0, extra_ARB_shader_objects" ], + [ "NUM_PROGRAM_BINARY_FORMATS", "CONST(0), NO_EXTRA" ], + [ "PROGRAM_BINARY_FORMATS", "LOC_CUSTOM, TYPE_INVALID, 0, NO_EXTRA" ], ]}, # GLES3 is not a typo. @@ -544,19 +544,19 @@ descriptor=[ [ "TRANSPOSE_TEXTURE_MATRIX_ARB", "CONTEXT_MATRIX_T(TextureMatrixStack), NO_EXTRA" ], # GL_EXT_secondary_color - [ "COLOR_SUM", "CONTEXT_BOOL(Fog.ColorSumEnabled), extra_EXT_secondary_color_ARB_vertex_program" ], - [ "CURRENT_SECONDARY_COLOR", "CONTEXT_FIELD(Current.Attrib[VERT_ATTRIB_COLOR1][0], TYPE_FLOATN_4), extra_EXT_secondary_color_flush_current" ], - [ "SECONDARY_COLOR_ARRAY", "ARRAY_BOOL(VertexAttrib[VERT_ATTRIB_COLOR1].Enabled), extra_EXT_secondary_color" ], - [ "SECONDARY_COLOR_ARRAY_TYPE", "ARRAY_ENUM(VertexAttrib[VERT_ATTRIB_COLOR1].Type), extra_EXT_secondary_color" ], - [ "SECONDARY_COLOR_ARRAY_STRIDE", "ARRAY_INT(VertexAttrib[VERT_ATTRIB_COLOR1].Stride), extra_EXT_secondary_color" ], - [ "SECONDARY_COLOR_ARRAY_SIZE", "ARRAY_INT(VertexAttrib[VERT_ATTRIB_COLOR1].Size), extra_EXT_secondary_color" ], + [ "COLOR_SUM", "CONTEXT_BOOL(Fog.ColorSumEnabled), extra_ARB_vertex_program" ], + [ "CURRENT_SECONDARY_COLOR", "CONTEXT_FIELD(Current.Attrib[VERT_ATTRIB_COLOR1][0], TYPE_FLOATN_4), extra_flush_current" ], + [ "SECONDARY_COLOR_ARRAY", "ARRAY_BOOL(VertexAttrib[VERT_ATTRIB_COLOR1].Enabled), NO_EXTRA" ], + [ "SECONDARY_COLOR_ARRAY_TYPE", "ARRAY_ENUM(VertexAttrib[VERT_ATTRIB_COLOR1].Type), NO_EXTRA" ], + [ "SECONDARY_COLOR_ARRAY_STRIDE", "ARRAY_INT(VertexAttrib[VERT_ATTRIB_COLOR1].Stride), NO_EXTRA" ], + [ "SECONDARY_COLOR_ARRAY_SIZE", "ARRAY_INT(VertexAttrib[VERT_ATTRIB_COLOR1].Size), NO_EXTRA" ], # GL_EXT_fog_coord - [ "CURRENT_FOG_COORDINATE", "CONTEXT_FLOAT(Current.Attrib[VERT_ATTRIB_FOG][0]), extra_EXT_fog_coord_flush_current" ], - [ "FOG_COORDINATE_ARRAY", "ARRAY_BOOL(VertexAttrib[VERT_ATTRIB_FOG].Enabled), extra_EXT_fog_coord" ], - [ "FOG_COORDINATE_ARRAY_TYPE", "ARRAY_ENUM(VertexAttrib[VERT_ATTRIB_FOG].Type), extra_EXT_fog_coord" ], - [ "FOG_COORDINATE_ARRAY_STRIDE", "ARRAY_INT(VertexAttrib[VERT_ATTRIB_FOG].Stride), extra_EXT_fog_coord" ], - [ "FOG_COORDINATE_SOURCE", "CONTEXT_ENUM(Fog.FogCoordinateSource), extra_EXT_fog_coord" ], + [ "CURRENT_FOG_COORDINATE", "CONTEXT_FLOAT(Current.Attrib[VERT_ATTRIB_FOG][0]), extra_flush_current" ], + [ "FOG_COORDINATE_ARRAY", "ARRAY_BOOL(VertexAttrib[VERT_ATTRIB_FOG].Enabled), NO_EXTRA" ], + [ "FOG_COORDINATE_ARRAY_TYPE", "ARRAY_ENUM(VertexAttrib[VERT_ATTRIB_FOG].Type), NO_EXTRA" ], + [ "FOG_COORDINATE_ARRAY_STRIDE", "ARRAY_INT(VertexAttrib[VERT_ATTRIB_FOG].Stride), NO_EXTRA" ], + [ "FOG_COORDINATE_SOURCE", "CONTEXT_ENUM(Fog.FogCoordinateSource), NO_EXTRA" ], # GL_NV_fog_distance [ "FOG_DISTANCE_MODE_NV", "CONTEXT_ENUM(Fog.FogDistanceMode), extra_NV_fog_distance" ], diff --git a/mesalib/src/mesa/main/getstring.c b/mesalib/src/mesa/main/getstring.c index 1145d0f49..39fd260dc 100644 --- a/mesalib/src/mesa/main/getstring.c +++ b/mesalib/src/mesa/main/getstring.c @@ -41,11 +41,6 @@ shading_language_version(struct gl_context *ctx) switch (ctx->API) { case API_OPENGL_COMPAT: case API_OPENGL_CORE: - if (!ctx->Extensions.ARB_shader_objects) { - _mesa_error(ctx, GL_INVALID_ENUM, "glGetString"); - return (const GLubyte *) 0; - } - switch (ctx->Const.GLSLVersion) { case 110: return (const GLubyte *) "1.10"; diff --git a/mesalib/src/mesa/main/glheader.h b/mesalib/src/mesa/main/glheader.h index c83c68f71..b3b0c52a0 100644 --- a/mesalib/src/mesa/main/glheader.h +++ b/mesalib/src/mesa/main/glheader.h @@ -59,10 +59,6 @@ extern "C" { #endif -/** - * GL_FIXED is defined in glext.h version 64 but these typedefs aren't (yet). - */ -typedef int GLfixed; typedef int GLclampx; diff --git a/mesalib/src/mesa/main/mtypes.h b/mesalib/src/mesa/main/mtypes.h index df2d20b3a..1f62e2c9c 100644 --- a/mesalib/src/mesa/main/mtypes.h +++ b/mesalib/src/mesa/main/mtypes.h @@ -3014,10 +3014,8 @@ struct gl_extensions GLboolean ARB_point_sprite; GLboolean ARB_seamless_cube_map; GLboolean ARB_shader_bit_encoding; - GLboolean ARB_shader_objects; GLboolean ARB_shader_stencil_export; GLboolean ARB_shader_texture_lod; - GLboolean ARB_shading_language_100; GLboolean ARB_shading_language_packing; GLboolean ARB_shading_language_420pack; GLboolean ARB_shadow; @@ -3038,8 +3036,6 @@ struct gl_extensions GLboolean ARB_texture_query_lod; GLboolean ARB_texture_rg; GLboolean ARB_texture_rgb10_a2ui; - GLboolean ARB_texture_storage; - GLboolean ARB_texture_storage_multisample; GLboolean ARB_timer_query; GLboolean ARB_transform_feedback2; GLboolean ARB_transform_feedback3; @@ -3054,11 +3050,9 @@ struct gl_extensions GLboolean EXT_blend_minmax; GLboolean EXT_depth_bounds_test; GLboolean EXT_draw_buffers2; - GLboolean EXT_fog_coord; GLboolean EXT_framebuffer_blit; GLboolean EXT_framebuffer_multisample; GLboolean EXT_framebuffer_multisample_blit_scaled; - GLboolean EXT_framebuffer_object; GLboolean EXT_framebuffer_sRGB; GLboolean EXT_gpu_program_parameters; GLboolean EXT_gpu_shader4; @@ -3067,8 +3061,6 @@ struct gl_extensions GLboolean EXT_pixel_buffer_object; GLboolean EXT_point_parameters; GLboolean EXT_provoking_vertex; - GLboolean EXT_shadow_funcs; - GLboolean EXT_secondary_color; GLboolean EXT_separate_shader_objects; GLboolean EXT_stencil_two_side; GLboolean EXT_texture3D; @@ -3099,10 +3091,8 @@ struct gl_extensions GLboolean ATI_fragment_shader; GLboolean ATI_separate_stencil; GLboolean MESA_pack_invert; - GLboolean MESA_resize_buffers; GLboolean MESA_ycbcr_texture; GLboolean MESA_texture_array; - GLboolean NV_blend_square; GLboolean NV_conditional_render; GLboolean NV_fog_distance; GLboolean NV_fragment_program_option; diff --git a/mesalib/src/mesa/main/samplerobj.c b/mesalib/src/mesa/main/samplerobj.c index 91b17ab5e..3857eda06 100644 --- a/mesalib/src/mesa/main/samplerobj.c +++ b/mesalib/src/mesa/main/samplerobj.c @@ -529,21 +529,15 @@ set_sampler_compare_func(struct gl_context *ctx, switch (param) { case GL_LEQUAL: case GL_GEQUAL: - flush(ctx); - samp->CompareFunc = param; - return GL_TRUE; case GL_EQUAL: case GL_NOTEQUAL: case GL_LESS: case GL_GREATER: case GL_ALWAYS: case GL_NEVER: - if (ctx->Extensions.EXT_shadow_funcs) { - flush(ctx); - samp->CompareFunc = param; - return GL_TRUE; - } - /* fall-through */ + flush(ctx); + samp->CompareFunc = param; + return GL_TRUE; default: return INVALID_PARAM; } diff --git a/mesalib/src/mesa/main/teximage.c b/mesalib/src/mesa/main/teximage.c index 5226687ff..111849655 100644 --- a/mesalib/src/mesa/main/teximage.c +++ b/mesalib/src/mesa/main/teximage.c @@ -1852,12 +1852,8 @@ legal_texsubimage_target(struct gl_context *ctx, GLuint dims, GLenum target) static GLboolean mutable_tex_object(struct gl_context *ctx, GLenum target) { - if (ctx->Extensions.ARB_texture_storage) { - struct gl_texture_object *texObj = - _mesa_get_current_tex_object(ctx, target); - return !texObj->Immutable; - } - return GL_TRUE; + struct gl_texture_object *texObj = _mesa_get_current_tex_object(ctx, target); + return !texObj->Immutable; } diff --git a/mesalib/src/mesa/main/texparam.c b/mesalib/src/mesa/main/texparam.c index 9507bc394..cf9a3014c 100644 --- a/mesalib/src/mesa/main/texparam.c +++ b/mesalib/src/mesa/main/texparam.c @@ -176,12 +176,12 @@ get_texobj(struct gl_context *ctx, GLenum target, GLboolean get) } break; case GL_TEXTURE_2D_MULTISAMPLE: - if (ctx->Extensions.ARB_texture_storage_multisample) { + if (ctx->Extensions.ARB_texture_multisample) { return texUnit->CurrentTex[TEXTURE_2D_MULTISAMPLE_INDEX]; } break; case GL_TEXTURE_2D_MULTISAMPLE_ARRAY: - if (ctx->Extensions.ARB_texture_storage_multisample) { + if (ctx->Extensions.ARB_texture_multisample) { return texUnit->CurrentTex[TEXTURE_2D_MULTISAMPLE_ARRAY_INDEX]; } break; @@ -446,21 +446,15 @@ set_tex_parameteri(struct gl_context *ctx, switch (params[0]) { case GL_LEQUAL: case GL_GEQUAL: - flush(ctx); - texObj->Sampler.CompareFunc = params[0]; - return GL_TRUE; case GL_EQUAL: case GL_NOTEQUAL: case GL_LESS: case GL_GREATER: case GL_ALWAYS: case GL_NEVER: - if (ctx->Extensions.EXT_shadow_funcs) { - flush(ctx); - texObj->Sampler.CompareFunc = params[0]; - return GL_TRUE; - } - /* fall-through */ + flush(ctx); + texObj->Sampler.CompareFunc = params[0]; + return GL_TRUE; default: goto invalid_param; } @@ -1541,8 +1535,6 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params ) break; case GL_TEXTURE_IMMUTABLE_FORMAT: - if (!ctx->Extensions.ARB_texture_storage) - goto invalid_pname; *params = (GLfloat) obj->Immutable; break; @@ -1724,8 +1716,6 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params ) break; case GL_TEXTURE_IMMUTABLE_FORMAT: - if (!ctx->Extensions.ARB_texture_storage) - goto invalid_pname; *params = (GLint) obj->Immutable; break; diff --git a/mesalib/src/mesa/main/version.c b/mesalib/src/mesa/main/version.c index d954fb3cc..abcf90eec 100644 --- a/mesalib/src/mesa/main/version.c +++ b/mesalib/src/mesa/main/version.c @@ -205,15 +205,11 @@ compute_version(struct gl_context *ctx) ctx->Extensions.EXT_blend_color && ctx->Extensions.EXT_blend_func_separate && ctx->Extensions.EXT_blend_minmax && - ctx->Extensions.EXT_fog_coord && - ctx->Extensions.EXT_point_parameters && - ctx->Extensions.EXT_secondary_color); + ctx->Extensions.EXT_point_parameters); const GLboolean ver_1_5 = (ver_1_4 && - ctx->Extensions.ARB_occlusion_query && - ctx->Extensions.EXT_shadow_funcs); + ctx->Extensions.ARB_occlusion_query); const GLboolean ver_2_0 = (ver_1_5 && ctx->Extensions.ARB_point_sprite && - ctx->Extensions.ARB_shader_objects && ctx->Extensions.ARB_vertex_shader && ctx->Extensions.ARB_fragment_shader && ctx->Extensions.ARB_texture_non_power_of_two && @@ -360,7 +356,6 @@ compute_version_es2(struct gl_context *ctx) ctx->Extensions.EXT_blend_color && ctx->Extensions.EXT_blend_func_separate && ctx->Extensions.EXT_blend_minmax && - ctx->Extensions.ARB_shader_objects && ctx->Extensions.ARB_vertex_shader && ctx->Extensions.ARB_fragment_shader && ctx->Extensions.ARB_texture_non_power_of_two && diff --git a/mesalib/src/mesa/program/prog_execute.c b/mesalib/src/mesa/program/prog_execute.c index b902006ef..560332a6e 100644 --- a/mesalib/src/mesa/program/prog_execute.c +++ b/mesalib/src/mesa/program/prog_execute.c @@ -145,7 +145,7 @@ get_src_register_pointer(const struct prog_src_register *source, _mesa_problem(NULL, "Invalid src register file %d in get_src_register_pointer()", source->File); - return NULL; + return ZeroVec; } } @@ -184,7 +184,7 @@ get_dst_register_pointer(const struct prog_dst_register *dest, _mesa_problem(NULL, "Invalid dest register file %d in get_dst_register_pointer()", dest->File); - return NULL; + return dummyReg; } } @@ -199,7 +199,6 @@ fetch_vector4(const struct prog_src_register *source, const struct gl_program_machine *machine, GLfloat result[4]) { const GLfloat *src = get_src_register_pointer(source, machine); - ASSERT(src); if (source->Swizzle == SWIZZLE_NOOP) { /* no swizzling */ @@ -302,7 +301,6 @@ fetch_vector1(const struct prog_src_register *source, const struct gl_program_machine *machine, GLfloat result[4]) { const GLfloat *src = get_src_register_pointer(source, machine); - ASSERT(src); result[0] = src[GET_SWZ(source->Swizzle, 0)]; diff --git a/mesalib/src/mesa/program/program_parse.y b/mesalib/src/mesa/program/program_parse.y index cbf3fe6ca..e2da63347 100644 --- a/mesalib/src/mesa/program/program_parse.y +++ b/mesalib/src/mesa/program/program_parse.y @@ -1145,20 +1145,10 @@ vtxAttribItem: POSITION } | COLOR optColorType { - if (!state->ctx->Extensions.EXT_secondary_color) { - yyerror(& @2, state, "GL_EXT_secondary_color not supported"); - YYERROR; - } - $$ = VERT_ATTRIB_COLOR0 + $2; } | FOGCOORD { - if (!state->ctx->Extensions.EXT_fog_coord) { - yyerror(& @1, state, "GL_EXT_fog_coord not supported"); - YYERROR; - } - $$ = VERT_ATTRIB_FOG; } | TEXCOORD optTexCoordUnitNum diff --git a/mesalib/src/mesa/state_tracker/st_cb_drawpixels.c b/mesalib/src/mesa/state_tracker/st_cb_drawpixels.c index 0200a6270..2ce4728ad 100644 --- a/mesalib/src/mesa/state_tracker/st_cb_drawpixels.c +++ b/mesalib/src/mesa/state_tracker/st_cb_drawpixels.c @@ -1546,6 +1546,7 @@ st_CopyPixels(struct gl_context *ctx, GLint srcx, GLint srcy, if (!screen->is_format_supported(screen, srcFormat, st->internal_target, 0, srcBind)) { + /* srcFormat is non-renderable. Find a compatible renderable format. */ if (type == GL_DEPTH) { srcFormat = st_choose_format(st, GL_DEPTH_COMPONENT, GL_NONE, GL_NONE, st->internal_target, 0, @@ -1569,6 +1570,11 @@ st_CopyPixels(struct gl_context *ctx, GLint srcx, GLint srcy, GL_NONE, st->internal_target, 0, srcBind, FALSE); } + else if (util_format_is_snorm(srcFormat)) { + srcFormat = st_choose_format(st, GL_RGBA16_SNORM, GL_NONE, + GL_NONE, st->internal_target, 0, + srcBind, FALSE); + } else { srcFormat = st_choose_format(st, GL_RGBA, GL_NONE, GL_NONE, st->internal_target, 0, diff --git a/mesalib/src/mesa/state_tracker/st_extensions.c b/mesalib/src/mesa/state_tracker/st_extensions.c index 966722c0b..83e8e2e96 100644 --- a/mesalib/src/mesa/state_tracker/st_extensions.c +++ b/mesalib/src/mesa/state_tracker/st_extensions.c @@ -397,7 +397,6 @@ void st_init_extensions(struct st_context *st) { o(EXT_blend_equation_separate), PIPE_CAP_BLEND_EQUATION_SEPARATE }, { o(EXT_draw_buffers2), PIPE_CAP_INDEP_BLEND_ENABLE }, - { o(EXT_shadow_funcs), PIPE_CAP_TEXTURE_SHADOW_MAP }, { o(EXT_stencil_two_side), PIPE_CAP_TWO_SIDED_STENCIL }, { o(EXT_texture_array), PIPE_CAP_MAX_TEXTURE_ARRAY_LAYERS }, { o(EXT_texture_filter_anisotropic), PIPE_CAP_ANISOTROPIC_FILTER }, @@ -537,14 +536,11 @@ void st_init_extensions(struct st_context *st) ctx->Extensions.ARB_half_float_vertex = GL_TRUE; ctx->Extensions.ARB_internalformat_query = GL_TRUE; ctx->Extensions.ARB_map_buffer_range = GL_TRUE; - ctx->Extensions.ARB_shader_objects = GL_TRUE; - ctx->Extensions.ARB_shading_language_100 = GL_TRUE; ctx->Extensions.ARB_texture_border_clamp = GL_TRUE; /* XXX temp */ ctx->Extensions.ARB_texture_cube_map = GL_TRUE; ctx->Extensions.ARB_texture_env_combine = GL_TRUE; ctx->Extensions.ARB_texture_env_crossbar = GL_TRUE; ctx->Extensions.ARB_texture_env_dot3 = GL_TRUE; - ctx->Extensions.ARB_texture_storage = GL_TRUE; ctx->Extensions.ARB_vertex_program = GL_TRUE; ctx->Extensions.ARB_vertex_shader = GL_TRUE; @@ -552,13 +548,10 @@ void st_init_extensions(struct st_context *st) ctx->Extensions.EXT_blend_func_separate = GL_TRUE; ctx->Extensions.EXT_blend_minmax = GL_TRUE; ctx->Extensions.EXT_framebuffer_blit = GL_TRUE; - ctx->Extensions.EXT_framebuffer_object = GL_TRUE; - ctx->Extensions.EXT_fog_coord = GL_TRUE; ctx->Extensions.EXT_gpu_program_parameters = GL_TRUE; ctx->Extensions.EXT_pixel_buffer_object = GL_TRUE; ctx->Extensions.EXT_point_parameters = GL_TRUE; ctx->Extensions.EXT_provoking_vertex = GL_TRUE; - ctx->Extensions.EXT_secondary_color = GL_TRUE; ctx->Extensions.EXT_separate_shader_objects = GL_TRUE; ctx->Extensions.EXT_texture_env_dot3 = GL_TRUE; ctx->Extensions.EXT_vertex_array_bgra = GL_TRUE; @@ -567,7 +560,6 @@ void st_init_extensions(struct st_context *st) ctx->Extensions.MESA_pack_invert = GL_TRUE; - ctx->Extensions.NV_blend_square = GL_TRUE; ctx->Extensions.NV_fog_distance = GL_TRUE; ctx->Extensions.NV_texture_env_combine4 = GL_TRUE; ctx->Extensions.NV_texture_rectangle = GL_TRUE; |