Mesa (master): r600g: fix alu dumping

Christian König deathsimple at kemper.freedesktop.org
Wed Jan 12 18:18:32 UTC 2011


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

Author: Christian König <deathsimple at vodafone.de>
Date:   Fri Dec 17 22:57:36 2010 +0100

r600g: fix alu dumping

---

 src/gallium/drivers/r600/r600_asm.c |   32 +++++++++++++-------------------
 1 files changed, 13 insertions(+), 19 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_asm.c b/src/gallium/drivers/r600/r600_asm.c
index 4800721..e911f97 100644
--- a/src/gallium/drivers/r600/r600_asm.c
+++ b/src/gallium/drivers/r600/r600_asm.c
@@ -1168,9 +1168,9 @@ void r600_bc_dump(struct r600_bc *bc)
 			break;
 		}
 
+		id = cf->addr;
 		LIST_FOR_EACH_ENTRY(alu, &cf->alu, list) {
-			id = cf->addr;
-			fprintf(stderr, "%04d %08X\t", id, bc->bytecode[id]);
+			fprintf(stderr, "%04d %08X   ", id, bc->bytecode[id]);
 			fprintf(stderr, "SRC0(SEL:%d ", alu->src[0].sel);
 			fprintf(stderr, "REL:%d ", alu->src[0].rel);
 			fprintf(stderr, "CHAN:%d ", alu->src[0].chan);
@@ -1181,37 +1181,31 @@ void r600_bc_dump(struct r600_bc *bc)
 			fprintf(stderr, "NEG:%d) ", alu->src[1].neg);
 			fprintf(stderr, "LAST:%d)\n", alu->last);
 			id++;
+			fprintf(stderr, "%04d %08X %c ", id, bc->bytecode[id], alu->last ? '*' : ' ');
+			fprintf(stderr, "INST:%d ", alu->inst);
+			fprintf(stderr, "DST(SEL:%d ", alu->dst.sel);
+			fprintf(stderr, "CHAN:%d ", alu->dst.chan);
+			fprintf(stderr, "REL:%d ", alu->dst.rel);
+			fprintf(stderr, "CLAMP:%d) ", alu->dst.clamp);
+			fprintf(stderr, "BANK_SWIZZLE:%d ", alu->bank_swizzle);
 			if (alu->is_op3) {
-				fprintf(stderr, "%04d %08X\t", id, bc->bytecode[id]);
-				fprintf(stderr, "DST(SEL:%d ", alu->dst.sel);
-				fprintf(stderr, "CHAN:%d ", alu->dst.chan);
-				fprintf(stderr, "REL:%d ", alu->dst.rel);
-				fprintf(stderr, "CLAMP:%d) ", alu->dst.clamp);
 				fprintf(stderr, "SRC2(SEL:%d ", alu->src[2].sel);
 				fprintf(stderr, "REL:%d ", alu->src[2].rel);
 				fprintf(stderr, "CHAN:%d ", alu->src[2].chan);
-				fprintf(stderr, "NEG:%d) ", alu->src[2].neg);
-				fprintf(stderr, "INST:%d ", alu->inst);
-				fprintf(stderr, "BANK_SWIZZLE:%d\n", alu->bank_swizzle);
+				fprintf(stderr, "NEG:%d)\n", alu->src[2].neg);
 			} else {
-				fprintf(stderr, "%04d %08X\t", id, bc->bytecode[id]);
-				fprintf(stderr, "DST(SEL:%d ", alu->dst.sel);
-				fprintf(stderr, "CHAN:%d ", alu->dst.chan);
-				fprintf(stderr, "REL:%d ", alu->dst.rel);
-				fprintf(stderr, "CLAMP:%d) ", alu->dst.clamp);
 				fprintf(stderr, "SRC0_ABS:%d ", alu->src[0].abs);
 				fprintf(stderr, "SRC1_ABS:%d ", alu->src[1].abs);
 				fprintf(stderr, "WRITE_MASK:%d ", alu->dst.write);
-				fprintf(stderr, "INST:%d ", alu->inst);
-				fprintf(stderr, "BANK_SWIZZLE:%d ", alu->bank_swizzle);
 				fprintf(stderr, "EXECUTE_MASK:%d ", alu->predicate);
 				fprintf(stderr, "UPDATE_PRED:%d\n", alu->predicate);
 			}
 
+			id++;
 			if (alu->last) {
-				for (i = 0; i < alu->nliteral; i++) {
+				for (i = 0; i < alu->nliteral; i++, id++) {
 					float *f = (float*)(bc->bytecode + id);
-					fprintf(stderr, "%04d %08X %f\n", id, bc->bytecode[id], *f);
+					fprintf(stderr, "%04d %08X\t%f\n", id, bc->bytecode[id], *f);
 				}
 			}
 		}




More information about the mesa-commit mailing list