Mesa (master): r300g: remove hacks from translate_vertex_data_swizzle

Marek Olšák mareko at kemper.freedesktop.org
Tue Mar 9 03:57:36 UTC 2010


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

Author: Marek Olšák <maraeo at gmail.com>
Date:   Tue Mar  9 02:10:36 2010 +0100

r300g: remove hacks from translate_vertex_data_swizzle

The first part of the fix of BGRA vertex colors.

---

 src/gallium/drivers/r300/r300_state_inlines.h |   24 ++++--------------------
 1 files changed, 4 insertions(+), 20 deletions(-)

diff --git a/src/gallium/drivers/r300/r300_state_inlines.h b/src/gallium/drivers/r300/r300_state_inlines.h
index 2f3a56e..af78278 100644
--- a/src/gallium/drivers/r300/r300_state_inlines.h
+++ b/src/gallium/drivers/r300/r300_state_inlines.h
@@ -453,7 +453,6 @@ r300_translate_vertex_data_type(enum pipe_format format) {
 static INLINE uint16_t
 r300_translate_vertex_data_swizzle(enum pipe_format format) {
     const struct util_format_description *desc = util_format_description(format);
-    unsigned swizzle[4], i;
 
     assert(format);
 
@@ -463,25 +462,10 @@ r300_translate_vertex_data_swizzle(enum pipe_format format) {
         return 0;
     }
 
-    /* Swizzles for 8bits formats are in the reversed order, not sure why. */
-    if (desc->channel[0].size == 8) {
-        for (i = 0; i < 4; i++) {
-            if (desc->swizzle[i] <= 3) {
-                swizzle[i] = 3 - desc->swizzle[i];
-            } else {
-                swizzle[i] = desc->swizzle[i];
-            }
-        }
-    } else {
-        for (i = 0; i < 4; i++) {
-            swizzle[i] = desc->swizzle[i];
-        }
-    }
-
-    return ((swizzle[0] << R300_SWIZZLE_SELECT_X_SHIFT) |
-            (swizzle[1] << R300_SWIZZLE_SELECT_Y_SHIFT) |
-            (swizzle[2] << R300_SWIZZLE_SELECT_Z_SHIFT) |
-            (swizzle[3] << R300_SWIZZLE_SELECT_W_SHIFT) |
+    return ((desc->swizzle[0] << R300_SWIZZLE_SELECT_X_SHIFT) |
+            (desc->swizzle[1] << R300_SWIZZLE_SELECT_Y_SHIFT) |
+            (desc->swizzle[2] << R300_SWIZZLE_SELECT_Z_SHIFT) |
+            (desc->swizzle[3] << R300_SWIZZLE_SELECT_W_SHIFT) |
             (0xf << R300_WRITE_ENA_SHIFT));
 }
 




More information about the mesa-commit mailing list