Mesa (7.10): r300/compiler: Abs doesn't cancel Negate ( in the conversion to native swizzles)

Marek Olšák mareko at kemper.freedesktop.org
Sat Mar 12 21:25:36 UTC 2011


Module: Mesa
Branch: 7.10
Commit: 38f0e9b651fd53c67ead7f9d29c157f8e050a797
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=38f0e9b651fd53c67ead7f9d29c157f8e050a797

Author: Marek Olšák <maraeo at gmail.com>
Date:   Sat Mar 12 10:18:45 2011 +0100

r300/compiler: Abs doesn't cancel Negate (in the conversion to native swizzles)

NOTE: This is a candidate for the 7.9 and 7.10 branches.
(cherry picked from commit 589d835dfd9b07f49ee12af2dfa04a4e054bec68)

---

 .../dri/r300/compiler/r300_fragprog_swizzle.c      |    6 ------
 src/mesa/drivers/dri/r300/compiler/r500_fragprog.c |    3 ---
 2 files changed, 0 insertions(+), 9 deletions(-)

diff --git a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.c b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.c
index 05d3da8..2649316 100644
--- a/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.c
+++ b/src/mesa/drivers/dri/r300/compiler/r300_fragprog_swizzle.c
@@ -98,9 +98,6 @@ static int r300_swizzle_is_native(rc_opcode opcode, struct rc_src_register reg)
 	unsigned int relevant;
 	int j;
 
-	if (reg.Abs)
-		reg.Negate = RC_MASK_NONE;
-
 	if (opcode == RC_OPCODE_KIL ||
 	    opcode == RC_OPCODE_TEX ||
 	    opcode == RC_OPCODE_TXB ||
@@ -140,9 +137,6 @@ static void r300_swizzle_split(
 		struct rc_src_register src, unsigned int mask,
 		struct rc_swizzle_split * split)
 {
-	if (src.Abs)
-		src.Negate = RC_MASK_NONE;
-
 	split->NumPhases = 0;
 
 	while(mask) {
diff --git a/src/mesa/drivers/dri/r300/compiler/r500_fragprog.c b/src/mesa/drivers/dri/r300/compiler/r500_fragprog.c
index ef81be4..899f0d9 100644
--- a/src/mesa/drivers/dri/r300/compiler/r500_fragprog.c
+++ b/src/mesa/drivers/dri/r300/compiler/r500_fragprog.c
@@ -103,9 +103,6 @@ static int r500_swizzle_is_native(rc_opcode opcode, struct rc_src_register reg)
 		return 0;
 	} else {
 		/* ALU instructions support almost everything */
-		if (reg.Abs)
-			return 1;
-
 		relevant = 0;
 		for(i = 0; i < 3; ++i) {
 			unsigned int swz = GET_SWZ(reg.Swizzle, i);




More information about the mesa-commit mailing list