Mesa (master): softpipe: remove sp_tex_tile_cache_border_color()

Brian Paul brianp at kemper.freedesktop.org
Fri Dec 17 01:19:44 UTC 2010


Module: Mesa
Branch: master
Commit: 42a0967a36ff3331de96289125243e6afeb5d560
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=42a0967a36ff3331de96289125243e6afeb5d560

Author: Brian Paul <brianp at vmware.com>
Date:   Thu Dec 16 18:17:20 2010 -0700

softpipe: remove sp_tex_tile_cache_border_color()

With swizzling done at the end of texture sampling, we can greatly
simplify swizzling of the border color.

Fixes http://bugs.freedesktop.org/show_bug.cgi?id=32460

---

 src/gallium/drivers/softpipe/sp_tex_sample.c     |    6 +---
 src/gallium/drivers/softpipe/sp_tex_tile_cache.c |   23 ----------------------
 src/gallium/drivers/softpipe/sp_tex_tile_cache.h |    7 ------
 3 files changed, 2 insertions(+), 34 deletions(-)

diff --git a/src/gallium/drivers/softpipe/sp_tex_sample.c b/src/gallium/drivers/softpipe/sp_tex_sample.c
index 70fa74b..cbc40d4 100644
--- a/src/gallium/drivers/softpipe/sp_tex_sample.c
+++ b/src/gallium/drivers/softpipe/sp_tex_sample.c
@@ -659,8 +659,7 @@ get_texel_2d(const struct sp_sampler_variant *samp,
 
    if (x < 0 || x >= (int) u_minify(texture->width0, level) ||
        y < 0 || y >= (int) u_minify(texture->height0, level)) {
-      return sp_tex_tile_cache_border_color(samp->cache,
-                                            samp->sampler->border_color);
+      return samp->sampler->border_color;
    }
    else {
       return get_texel_2d_no_border( samp, addr, x, y );
@@ -754,8 +753,7 @@ get_texel_3d(const struct sp_sampler_variant *samp,
    if (x < 0 || x >= (int) u_minify(texture->width0, level) ||
        y < 0 || y >= (int) u_minify(texture->height0, level) ||
        z < 0 || z >= (int) u_minify(texture->depth0, level)) {
-      return sp_tex_tile_cache_border_color(samp->cache,
-                                            samp->sampler->border_color);
+      return samp->sampler->border_color;
    }
    else {
       return get_texel_3d_no_border( samp, addr, x, y, z );
diff --git a/src/gallium/drivers/softpipe/sp_tex_tile_cache.c b/src/gallium/drivers/softpipe/sp_tex_tile_cache.c
index 6fd324f..e42015a 100644
--- a/src/gallium/drivers/softpipe/sp_tex_tile_cache.c
+++ b/src/gallium/drivers/softpipe/sp_tex_tile_cache.c
@@ -301,26 +301,3 @@ sp_find_cached_tile_tex(struct softpipe_tex_tile_cache *tc,
    tc->last_tile = tile;
    return tile;
 }
-
-
-
-/**
- * Return the swizzled border color.
- */
-const float *
-sp_tex_tile_cache_border_color(struct softpipe_tex_tile_cache *tc,
-                               const float border_color[4])
-{
-   float rgba01[6];
-
-   COPY_4V(rgba01, border_color);
-   rgba01[PIPE_SWIZZLE_ZERO] = 0.0f;
-   rgba01[PIPE_SWIZZLE_ONE] = 1.0f;
-
-   tc->swz_border_color[0] = rgba01[tc->swizzle_r];
-   tc->swz_border_color[1] = rgba01[tc->swizzle_g];
-   tc->swz_border_color[2] = rgba01[tc->swizzle_b];
-   tc->swz_border_color[3] = rgba01[tc->swizzle_a];
-
-   return tc->swz_border_color;
-}
diff --git a/src/gallium/drivers/softpipe/sp_tex_tile_cache.h b/src/gallium/drivers/softpipe/sp_tex_tile_cache.h
index e0b66bf..2220955 100644
--- a/src/gallium/drivers/softpipe/sp_tex_tile_cache.h
+++ b/src/gallium/drivers/softpipe/sp_tex_tile_cache.h
@@ -95,8 +95,6 @@ struct softpipe_tex_tile_cache
    unsigned format;
 
    struct softpipe_tex_cached_tile *last_tile;  /**< most recently retrieved tile */
-
-   float swz_border_color[4]; /**< swizzled border color */
 };
 
 
@@ -161,10 +159,5 @@ sp_get_cached_tile_tex(struct softpipe_tex_tile_cache *tc,
 }
 
 
-const float *
-sp_tex_tile_cache_border_color(struct softpipe_tex_tile_cache *tc,
-                               const float border_color[4]);
-
-
 #endif /* SP_TEX_TILE_CACHE_H */
 




More information about the mesa-commit mailing list