Mesa (master): r300g: explicit sign bits on RGTC textures

Dave Airlie airlied at kemper.freedesktop.org
Thu Feb 24 23:15:02 UTC 2011


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

Author: Dave Airlie <airlied at redhat.com>
Date:   Fri Feb 25 09:14:53 2011 +1000

r300g: explicit sign bits on RGTC textures

---

 src/gallium/drivers/r300/r300_texture.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c
index 354144c..2db5ab9 100644
--- a/src/gallium/drivers/r300/r300_texture.c
+++ b/src/gallium/drivers/r300/r300_texture.c
@@ -214,11 +214,13 @@ uint32_t r300_translate_texformat(enum pipe_format format,
     /* RGTC formats. */
     if (desc->layout == UTIL_FORMAT_LAYOUT_RGTC) {
         switch (format) {
-            case PIPE_FORMAT_RGTC1_UNORM:
             case PIPE_FORMAT_RGTC1_SNORM:
+                result |= sign_bit[0];
+            case PIPE_FORMAT_RGTC1_UNORM:
                 return R500_TX_FORMAT_ATI1N | result;
-            case PIPE_FORMAT_RGTC2_UNORM:
             case PIPE_FORMAT_RGTC2_SNORM:
+                result |= sign_bit[0] | sign_bit[1];
+            case PIPE_FORMAT_RGTC2_UNORM:
                 return R400_TX_FORMAT_ATI2N | result;
             default:
                 return ~0; /* Unsupported/unknown. */




More information about the mesa-commit mailing list