mesa: Remove the non-required ARB_imaging extension.

Many of the EXT_ extensions in the subset have significant code
overhead with no users.  It is not a required part of GL -- though
text describing the extension is part of the core spec since 1.2, it
is always conditional on the ARB_imaging extension.
This commit is contained in:
Eric Anholt
2010-09-09 15:53:55 -07:00
parent 96da9b28c8
commit 907a6734fc
6 changed files with 15 additions and 22 deletions

View File

@@ -215,8 +215,7 @@ _mesa_validate_blend_equation( GLcontext *ctx,
break; break;
case GL_MIN: case GL_MIN:
case GL_MAX: case GL_MAX:
if (!ctx->Extensions.EXT_blend_minmax && if (!ctx->Extensions.EXT_blend_minmax) {
!ctx->Extensions.ARB_imaging) {
return GL_FALSE; return GL_FALSE;
} }
break; break;
@@ -229,8 +228,7 @@ _mesa_validate_blend_equation( GLcontext *ctx,
break; break;
case GL_FUNC_SUBTRACT: case GL_FUNC_SUBTRACT:
case GL_FUNC_REVERSE_SUBTRACT: case GL_FUNC_REVERSE_SUBTRACT:
if (!ctx->Extensions.EXT_blend_subtract && if (!ctx->Extensions.EXT_blend_subtract) {
!ctx->Extensions.ARB_imaging) {
return GL_FALSE; return GL_FALSE;
} }
break; break;

View File

@@ -62,7 +62,6 @@ static const struct {
/* { OFF, "GL_ARB_geometry_shader4", F(ARB_geometry_shader4) }, */ /* { OFF, "GL_ARB_geometry_shader4", F(ARB_geometry_shader4) }, */
{ OFF, "GL_ARB_half_float_pixel", F(ARB_half_float_pixel) }, { OFF, "GL_ARB_half_float_pixel", F(ARB_half_float_pixel) },
{ OFF, "GL_ARB_half_float_vertex", F(ARB_half_float_vertex) }, { OFF, "GL_ARB_half_float_vertex", F(ARB_half_float_vertex) },
{ OFF, "GL_ARB_imaging", F(ARB_imaging) },
{ OFF, "GL_ARB_instanced_arrays", F(ARB_instanced_arrays) }, { OFF, "GL_ARB_instanced_arrays", F(ARB_instanced_arrays) },
{ OFF, "GL_ARB_map_buffer_range", F(ARB_map_buffer_range) }, { OFF, "GL_ARB_map_buffer_range", F(ARB_map_buffer_range) },
{ ON, "GL_ARB_multisample", F(ARB_multisample) }, { ON, "GL_ARB_multisample", F(ARB_multisample) },
@@ -255,7 +254,6 @@ _mesa_enable_sw_extensions(GLcontext *ctx)
#endif #endif
ctx->Extensions.ARB_half_float_pixel = GL_TRUE; ctx->Extensions.ARB_half_float_pixel = GL_TRUE;
ctx->Extensions.ARB_half_float_vertex = GL_TRUE; ctx->Extensions.ARB_half_float_vertex = GL_TRUE;
ctx->Extensions.ARB_imaging = GL_TRUE;
ctx->Extensions.ARB_map_buffer_range = GL_TRUE; ctx->Extensions.ARB_map_buffer_range = GL_TRUE;
ctx->Extensions.ARB_multitexture = GL_TRUE; ctx->Extensions.ARB_multitexture = GL_TRUE;
#if FEATURE_queryobj #if FEATURE_queryobj
@@ -392,12 +390,11 @@ _mesa_enable_sw_extensions(GLcontext *ctx)
/** /**
* Enable GL_ARB_imaging and all the EXT extensions that are subsets of it. * Enable common EXT extensions in the ARB_imaging subset.
*/ */
void void
_mesa_enable_imaging_extensions(GLcontext *ctx) _mesa_enable_imaging_extensions(GLcontext *ctx)
{ {
ctx->Extensions.ARB_imaging = GL_TRUE;
ctx->Extensions.EXT_blend_color = GL_TRUE; ctx->Extensions.EXT_blend_color = GL_TRUE;
ctx->Extensions.EXT_blend_logic_op = GL_TRUE; ctx->Extensions.EXT_blend_logic_op = GL_TRUE;
ctx->Extensions.EXT_blend_minmax = GL_TRUE; ctx->Extensions.EXT_blend_minmax = GL_TRUE;

View File

@@ -938,12 +938,12 @@ static const struct value_desc values[] = {
CONTEXT_FLOAT(Pixel.PostConvolutionBias[3]), CONTEXT_FLOAT(Pixel.PostConvolutionBias[3]),
extra_EXT_convolution }, extra_EXT_convolution },
/* GL_EXT_histogram / GL_ARB_imaging */ /* GL_EXT_histogram */
{ GL_HISTOGRAM, CONTEXT_BOOL(Pixel.HistogramEnabled), { GL_HISTOGRAM, CONTEXT_BOOL(Pixel.HistogramEnabled),
extra_EXT_histogram }, extra_EXT_histogram },
{ GL_MINMAX, CONTEXT_BOOL(Pixel.MinMaxEnabled), extra_EXT_histogram }, { GL_MINMAX, CONTEXT_BOOL(Pixel.MinMaxEnabled), extra_EXT_histogram },
/* GL_SGI_color_table / GL_ARB_imaging */ /* GL_SGI_color_table */
{ GL_COLOR_TABLE_SGI, { GL_COLOR_TABLE_SGI,
CONTEXT_BOOL(Pixel.ColorTableEnabled[COLORTABLE_PRECONVOLUTION]), CONTEXT_BOOL(Pixel.ColorTableEnabled[COLORTABLE_PRECONVOLUTION]),
extra_SGI_color_table }, extra_SGI_color_table },

View File

@@ -629,7 +629,7 @@ _mesa_GetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvo
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetMinmax"); _mesa_error(ctx, GL_INVALID_OPERATION, "glGetMinmax");
return; return;
} }
@@ -692,7 +692,7 @@ _mesa_GetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, G
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetHistogram"); _mesa_error(ctx, GL_INVALID_OPERATION, "glGetHistogram");
return; return;
} }
@@ -752,7 +752,7 @@ _mesa_GetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params)
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx);
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetHistogramParameterfv"); _mesa_error(ctx, GL_INVALID_OPERATION, "glGetHistogramParameterfv");
return; return;
} }
@@ -799,7 +799,7 @@ _mesa_GetHistogramParameteriv(GLenum target, GLenum pname, GLint *params)
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx);
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetHistogramParameteriv"); _mesa_error(ctx, GL_INVALID_OPERATION, "glGetHistogramParameteriv");
return; return;
} }
@@ -846,7 +846,7 @@ _mesa_GetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params)
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx);
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetMinmaxParameterfv"); _mesa_error(ctx, GL_INVALID_OPERATION, "glGetMinmaxParameterfv");
return; return;
} }
@@ -872,7 +872,7 @@ _mesa_GetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params)
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx);
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetMinmaxParameteriv"); _mesa_error(ctx, GL_INVALID_OPERATION, "glGetMinmaxParameteriv");
return; return;
} }
@@ -900,7 +900,7 @@ _mesa_Histogram(GLenum target, GLsizei width, GLenum internalFormat, GLboolean s
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); /* sideeffects */ ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); /* sideeffects */
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glHistogram"); _mesa_error(ctx, GL_INVALID_OPERATION, "glHistogram");
return; return;
} }
@@ -981,7 +981,7 @@ _mesa_Minmax(GLenum target, GLenum internalFormat, GLboolean sink)
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END(ctx); ASSERT_OUTSIDE_BEGIN_END(ctx);
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glMinmax"); _mesa_error(ctx, GL_INVALID_OPERATION, "glMinmax");
return; return;
} }
@@ -1010,7 +1010,7 @@ _mesa_ResetHistogram(GLenum target)
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); /* sideeffects */ ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); /* sideeffects */
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glResetHistogram"); _mesa_error(ctx, GL_INVALID_OPERATION, "glResetHistogram");
return; return;
} }
@@ -1035,7 +1035,7 @@ _mesa_ResetMinmax(GLenum target)
GET_CURRENT_CONTEXT(ctx); GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
if (!ctx->Extensions.EXT_histogram && !ctx->Extensions.ARB_imaging) { if (!ctx->Extensions.EXT_histogram) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glResetMinmax"); _mesa_error(ctx, GL_INVALID_OPERATION, "glResetMinmax");
return; return;
} }

View File

@@ -2658,7 +2658,6 @@ struct gl_extensions
GLboolean ARB_geometry_shader4; GLboolean ARB_geometry_shader4;
GLboolean ARB_half_float_pixel; GLboolean ARB_half_float_pixel;
GLboolean ARB_half_float_vertex; GLboolean ARB_half_float_vertex;
GLboolean ARB_imaging;
GLboolean ARB_instanced_arrays; GLboolean ARB_instanced_arrays;
GLboolean ARB_map_buffer_range; GLboolean ARB_map_buffer_range;
GLboolean ARB_multisample; GLboolean ARB_multisample;

View File

@@ -548,7 +548,6 @@ st_TexImage(GLcontext * ctx,
/* The Mesa/Gallium state tracker does not implement the imaging extensions /* The Mesa/Gallium state tracker does not implement the imaging extensions
* such as convolution. * such as convolution.
*/ */
assert(!ctx->Extensions.ARB_imaging);
assert(!ctx->Extensions.EXT_convolution); assert(!ctx->Extensions.EXT_convolution);
/* switch to "normal" */ /* switch to "normal" */