mesa: Avoid explicit invalidation of shine tables.
authorMathias Fröhlich <Mathias.Froehlich@gmx.net>
Wed, 29 Feb 2012 17:19:34 +0000 (18:19 +0100)
committerMathias Fröhlich <Mathias.Froehlich@gmx.net>
Wed, 29 Feb 2012 19:37:07 +0000 (20:37 +0100)
Since the shine tables are implicitly invalidated by having
a different shininess value than the current one, we can
omit the explicit invalidation of the shine table.

Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Mathias Froehlich <Mathias.Froehlich@web.de>
src/mesa/main/light.c

index 7ebf9bf51cfd37026853a6607bec7d4dbccbb9ef..a120b12da710c7fad83734d2aba40deaeea90574 100644 (file)
@@ -621,11 +621,6 @@ _mesa_material_bitmask( struct gl_context *ctx, GLenum face, GLenum pname,
 
 
 
-static void
-invalidate_shine_table( struct gl_context *ctx, GLuint side );
-
-
-
 /* Update derived values following a change in ctx->Light.Material
  */
 void
@@ -697,14 +692,6 @@ _mesa_update_material( struct gl_context *ctx, GLuint bitmask )
                   mat[MAT_ATTRIB_BACK_SPECULAR]);
       }
    }
-
-   if (bitmask & MAT_BIT_FRONT_SHININESS) {
-      invalidate_shine_table( ctx, 0 );
-   }
-
-   if (bitmask & MAT_BIT_BACK_SHININESS) {
-      invalidate_shine_table( ctx, 1 );
-   }
 }
 
 
@@ -913,20 +900,6 @@ _mesa_GetMaterialiv( GLenum face, GLenum pname, GLint *params )
 
 
 
-/* Calculate a new shine table.  Doing this here saves a branch in
- * lighting, and the cost of doing it early may be partially offset
- * by keeping a MRU cache of shine tables for various shine values.
- */
-static void
-invalidate_shine_table( struct gl_context *ctx, GLuint side )
-{
-   ASSERT(side < 2);
-   if (ctx->_ShineTable[side])
-      ctx->_ShineTable[side]->refcount--;
-   ctx->_ShineTable[side] = NULL;
-}
-
-
 static void
 validate_shine_table( struct gl_context *ctx, GLuint side, GLfloat shininess )
 {