[Mesa-dev] [PATCH 03/26] mesa/es: Remove redundant texture target validation
Kenneth Graunke
kenneth at whitecape.org
Sun Aug 19 23:28:07 PDT 2012
On 08/17/2012 08:11 PM, Ian Romanick wrote:
> From: Ian Romanick <ian.d.romanick at intel.com>
>
> Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
> ---
> src/mesa/main/APIspec.xml | 12 ---------
> src/mesa/main/es1_conversion.c | 51 ----------------------------------------
> 2 files changed, 0 insertions(+), 63 deletions(-)
>
> diff --git a/src/mesa/main/APIspec.xml b/src/mesa/main/APIspec.xml
> index 68e6535..b957db4 100644
> --- a/src/mesa/main/APIspec.xml
> +++ b/src/mesa/main/APIspec.xml
> @@ -2345,10 +2345,6 @@
> <param name="q" type="GLtype"/>
> </vector>
> </proto>
> -
> - <desc name="texture">
> - <range base="GL_TEXTURE" from="0" to="31"/>
> - </desc>
> </template>
>
> <template name="CompressedTexImage3D">
> @@ -2404,10 +2400,6 @@
> <return type="void"/>
> <param name="texture" type="GLenum"/>
> </proto>
> -
> - <desc name="texture">
> - <range base="GL_TEXTURE" from="0" to="31"/>
> - </desc>
> </template>
>
> <template name="ClientActiveTexture">
> @@ -2415,10 +2407,6 @@
> <return type="void"/>
> <param name="texture" type="GLenum"/>
> </proto>
> -
> - <desc name="texture">
> - <range base="GL_TEXTURE" from="0" to="31"/>
> - </desc>
> </template>
>
> <template name="SampleCoverage">
> diff --git a/src/mesa/main/es1_conversion.c b/src/mesa/main/es1_conversion.c
> index 16e3f57..32dda67 100644
> --- a/src/mesa/main/es1_conversion.c
> +++ b/src/mesa/main/es1_conversion.c
> @@ -801,47 +801,6 @@ _es_MultMatrixx(const GLfixed *m)
> void GL_APIENTRY
> _es_MultiTexCoord4x(GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
> {
> - switch(texture) {
> - case GL_TEXTURE0:
> - case GL_TEXTURE1:
> - case GL_TEXTURE2:
> - case GL_TEXTURE3:
> - case GL_TEXTURE4:
> - case GL_TEXTURE5:
> - case GL_TEXTURE6:
> - case GL_TEXTURE7:
> - case GL_TEXTURE8:
> - case GL_TEXTURE9:
> - case GL_TEXTURE10:
> - case GL_TEXTURE11:
> - case GL_TEXTURE12:
> - case GL_TEXTURE13:
> - case GL_TEXTURE14:
> - case GL_TEXTURE15:
> - case GL_TEXTURE16:
> - case GL_TEXTURE17:
> - case GL_TEXTURE18:
> - case GL_TEXTURE19:
> - case GL_TEXTURE20:
> - case GL_TEXTURE21:
> - case GL_TEXTURE22:
> - case GL_TEXTURE23:
> - case GL_TEXTURE24:
> - case GL_TEXTURE25:
> - case GL_TEXTURE26:
> - case GL_TEXTURE27:
> - case GL_TEXTURE28:
> - case GL_TEXTURE29:
> - case GL_TEXTURE30:
> - case GL_TEXTURE31:
> - break;
> - default:
> - _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM,
> - "glMultiTexCoord4x(texture=0x%x)", texture);
> - return;
> - }
> -
> -
> _es_MultiTexCoord4f(texture,
> (GLfloat) (s / 65536.0f),
> (GLfloat) (t / 65536.0f),
> @@ -1041,11 +1000,6 @@ _es_TexEnvx(GLenum target, GLenum pname, GLfixed param)
> case GL_SRC0_ALPHA:
> case GL_SRC1_ALPHA:
> case GL_SRC2_ALPHA:
> - if (param != GL_TEXTURE && param != GL_CONSTANT && param != GL_PRIMARY_COLOR && param != GL_PREVIOUS && param != GL_TEXTURE0 && param != GL_TEXTURE1 && param != GL_TEXTURE2 && param != GL_TEXTURE3 && param != GL_TEXTURE4 && param != GL_TEXTURE5 && param != GL_TEXTURE6 && param != GL_TEXTURE7 && param != GL_TEXTURE8 && param != GL_TEXTURE9 && param != GL_TEXTURE10 && param != GL_TEXTURE11 && param != GL_TEXTURE12 && param != GL_TEXTURE13 && param != GL_TEXTURE14 && param != GL_TEXTURE15 && param != GL_TEXTURE16 && param != GL_TEXTURE17 && param != GL_TEXTURE18 && param != GL_TEXTURE19 && param != GL_TEXTURE20 && param != GL_TEXTURE21 && param != GL_TEXTURE22 && param != GL_TEXTURE23 && param != GL_TEXTURE24 && param != GL_TEXTURE25 && param != GL_TEXTURE26 && param != GL_TEXTURE27 && param != GL_TEXTURE28 && param != GL_TEXTURE29 && param != GL_TEXTURE30 && param != GL_TEXTURE31) {
> - _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM,
> - "glTexEnvx(pname=0x%x)", pname);
> - return;
> - }
> convert_param_value = false;
> break;
> case GL_OPERAND0_RGB:
> @@ -1167,11 +1121,6 @@ _es_TexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
> case GL_SRC0_ALPHA:
> case GL_SRC1_ALPHA:
> case GL_SRC2_ALPHA:
> - if (params[0] != GL_TEXTURE && params[0] != GL_CONSTANT && params[0] != GL_PRIMARY_COLOR && params[0] != GL_PREVIOUS && params[0] != GL_TEXTURE0 && params[0] != GL_TEXTURE1 && params[0] != GL_TEXTURE2 && params[0] != GL_TEXTURE3 && params[0] != GL_TEXTURE4 && params[0] != GL_TEXTURE5 && params[0] != GL_TEXTURE6 && params[0] != GL_TEXTURE7 && params[0] != GL_TEXTURE8 && params[0] != GL_TEXTURE9 && params[0] != GL_TEXTURE10 && params[0] != GL_TEXTURE11 && params[0] != GL_TEXTURE12 && params[0] != GL_TEXTURE13 && params[0] != GL_TEXTURE14 && params[0] != GL_TEXTURE15 && params[0] != GL_TEXTURE16 && params[0] != GL_TEXTURE17 && params[0] != GL_TEXTURE18 && params[0] != GL_TEXTURE19 && params[0] != GL_TEXTURE20 && params[0] != GL_TEXTURE21 && params[0] != GL_TEXTURE22 && params[0] != GL_TEXTURE23 && params[0] != GL_TEXTURE24 && params[0] != GL_TEXTURE25 && params[0] != GL_TEXTURE26 && params[0] != GL_TEXTURE27 && params[0] != GL_TEXTURE28 && params[0] != GL_TEXTURE29 && p
a!
> rams[0] != GL_TEXTURE30 && params[0] != GL_TEXTURE31) {
> - _mesa_error(_mesa_get_current_context(), GL_INVALID_ENUM,
> - "glTexEnvxv(pname=0x%x)", pname);
> - return;
> - }
> convert_params_value = false;
> n_params = 1;
> break;
The irony here is that, for the TexEnv cases, the core Mesa code only
accepts GL_TEXTURE0 .. GL_TEXTURE7. (Follow the chain: _es_TexEnvx ->
_mesa_TexEnvf -> set_combiner_source) In other words, not only is it
redundant, it's unduly lenient.
Well...unless the core Mesa code is supposed to accept the full 0..31.
Regardless, that would be a separate bug fix.
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
More information about the mesa-dev
mailing list