[Mesa-dev] [PATCH 7/8] mesa: Remove support for GL_MESA_texture_array

Ian Romanick idr at freedesktop.org
Wed Nov 27 12:55:56 PST 2013


On 11/26/2013 03:54 PM, Ian Romanick wrote:
> From: Ian Romanick <ian.d.romanick at intel.com>
> 
> This extension enabled the use of texture array with fixed-function and
> assembly fragment shaders.  No applications are known to use this
> extension.
> 
> Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>

I'm going to temporarily NAK this patch and the next one.  There appear
to be some paths in meta (glCopyTexSubImage2D) that rely on using
texture arrays with fixed-function. :(

> ---
>  docs/relnotes/10.1.html                |  6 +++++-
>  docs/specs/MESA_texture_array.spec     |  2 +-
>  src/mesa/main/attrib.c                 | 17 ++---------------
>  src/mesa/main/enable.c                 | 19 -------------------
>  src/mesa/main/extensions.c             |  1 -
>  src/mesa/program/program_parse_extra.c |  9 ---------
>  6 files changed, 8 insertions(+), 46 deletions(-)
> 
> diff --git a/docs/relnotes/10.1.html b/docs/relnotes/10.1.html
> index 1b8ea22..dfb0969 100644
> --- a/docs/relnotes/10.1.html
> +++ b/docs/relnotes/10.1.html
> @@ -54,7 +54,11 @@ TBD.
>  
>  <h2>Changes</h2>
>  
> -TBD.
> +<ul>
> +<li>Removed support for the GL_MESA_texture_array extension.  This extension
> +  enabled the use of texture array with fixed-function and assembly fragment
> +  shaders.  No applications are known to use this extension.</li>
> +</ul>
>  
>  </div>
>  </body>
> diff --git a/docs/specs/MESA_texture_array.spec b/docs/specs/MESA_texture_array.spec
> index b146821..3e3e82c 100644
> --- a/docs/specs/MESA_texture_array.spec
> +++ b/docs/specs/MESA_texture_array.spec
> @@ -16,7 +16,7 @@ IP Status
>  
>  Status
>  
> -    Shipping in Mesa 7.1
> +    DEPRECATED - Support removed in Mesa 10.1.
>  
>  Version
>  
> diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c
> index 718eb83..ca67fd4 100644
> --- a/src/mesa/main/attrib.c
> +++ b/src/mesa/main/attrib.c
> @@ -641,12 +641,6 @@ pop_enable_group(struct gl_context *ctx, const struct gl_enable_attrib *enable)
>              _mesa_set_enable(ctx, GL_TEXTURE_CUBE_MAP,
>                               !!(enabled & TEXTURE_CUBE_BIT));
>           }
> -         if (ctx->Extensions.EXT_texture_array) {
> -            _mesa_set_enable(ctx, GL_TEXTURE_1D_ARRAY_EXT,
> -                             !!(enabled & TEXTURE_1D_ARRAY_BIT));
> -            _mesa_set_enable(ctx, GL_TEXTURE_2D_ARRAY_EXT,
> -                             !!(enabled & TEXTURE_2D_ARRAY_BIT));
> -         }
>        }
>  
>        if (ctx->Texture.Unit[i].TexGenEnabled != genEnabled) {
> @@ -688,12 +682,6 @@ pop_texture_group(struct gl_context *ctx, struct texture_state *texstate)
>           _mesa_set_enable(ctx, GL_TEXTURE_RECTANGLE_NV,
>                            !!(unit->Enabled & TEXTURE_RECT_BIT));
>        }
> -      if (ctx->Extensions.EXT_texture_array) {
> -         _mesa_set_enable(ctx, GL_TEXTURE_1D_ARRAY_EXT,
> -                          !!(unit->Enabled & TEXTURE_1D_ARRAY_BIT));
> -         _mesa_set_enable(ctx, GL_TEXTURE_2D_ARRAY_EXT,
> -                          !!(unit->Enabled & TEXTURE_2D_ARRAY_BIT));
> -      }
>        _mesa_TexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, unit->EnvMode);
>        _mesa_TexEnvfv(GL_TEXTURE_ENV, GL_TEXTURE_ENV_COLOR, unit->EnvColor);
>        _mesa_TexGeni(GL_S, GL_TEXTURE_GEN_MODE, unit->GenS.Mode);
> @@ -766,9 +754,8 @@ pop_texture_group(struct gl_context *ctx, struct texture_state *texstate)
>                    !ctx->Extensions.NV_texture_rectangle) {
>              continue;
>           }
> -         else if ((obj->Target == GL_TEXTURE_1D_ARRAY_EXT ||
> -                   obj->Target == GL_TEXTURE_2D_ARRAY_EXT) &&
> -                  !ctx->Extensions.EXT_texture_array) {
> +         else if (obj->Target == GL_TEXTURE_1D_ARRAY_EXT ||
> +                  obj->Target == GL_TEXTURE_2D_ARRAY_EXT) {
>              continue;
>           }
>           else if (obj->Target == GL_TEXTURE_CUBE_MAP_ARRAY &&
> diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c
> index 869c8a2..bb4a23c 100644
> --- a/src/mesa/main/enable.c
> +++ b/src/mesa/main/enable.c
> @@ -934,25 +934,6 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state)
>  	ctx->ATIFragmentShader.Enabled = state;
>          break;
>  
> -      /* GL_MESA_texture_array */
> -      case GL_TEXTURE_1D_ARRAY_EXT:
> -         if (ctx->API != API_OPENGL_COMPAT)
> -            goto invalid_enum_error;
> -         CHECK_EXTENSION(EXT_texture_array, cap);
> -         if (!enable_texture(ctx, state, TEXTURE_1D_ARRAY_BIT)) {
> -            return;
> -         }
> -         break;
> -
> -      case GL_TEXTURE_2D_ARRAY_EXT:
> -         if (ctx->API != API_OPENGL_COMPAT)
> -            goto invalid_enum_error;
> -         CHECK_EXTENSION(EXT_texture_array, cap);
> -         if (!enable_texture(ctx, state, TEXTURE_2D_ARRAY_BIT)) {
> -            return;
> -         }
> -         break;
> -
>        case GL_TEXTURE_CUBE_MAP_SEAMLESS:
>           if (!_mesa_is_desktop_gl(ctx))
>              goto invalid_enum_error;
> diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c
> index 04d1828..77b5504 100644
> --- a/src/mesa/main/extensions.c
> +++ b/src/mesa/main/extensions.c
> @@ -321,7 +321,6 @@ 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_texture_array",                      o(EXT_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 },
> diff --git a/src/mesa/program/program_parse_extra.c b/src/mesa/program/program_parse_extra.c
> index b0e0d8f..a9e3640 100644
> --- a/src/mesa/program/program_parse_extra.c
> +++ b/src/mesa/program/program_parse_extra.c
> @@ -256,15 +256,6 @@ _mesa_ARBfp_parse_option(struct asm_parser_state *state, const char *option)
>  	    return 1;
>  	 }
>        }
> -   } else if (strncmp(option, "MESA_", 5) == 0) {
> -      option += 5;
> -
> -      if (strcmp(option, "texture_array") == 0) {
> -	 if (state->ctx->Extensions.EXT_texture_array) {
> -	    state->option.TexArray = 1;
> -	    return 1;
> -	 }
> -      }
>     }
>  
>     return 0;
> 



More information about the mesa-dev mailing list