From 95a2b265facfb8c6e50895326c90f7fd75d5c1d6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Christian=20K=C3=B6nig?= Date: Fri, 17 Dec 2010 22:57:36 +0100 Subject: [PATCH] r600g: fix alu dumping --- src/gallium/drivers/r600/r600_asm.c | 32 ++++++++++++----------------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/src/gallium/drivers/r600/r600_asm.c b/src/gallium/drivers/r600/r600_asm.c index 48007218152..e911f977f75 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); } } } -- 2.30.2