[Mesa-dev] [PATCH 52/95] i965/vec4: print subnr in dump_instruction()
Iago Toral Quiroga
itoral at igalia.com
Tue Jul 19 10:40:49 UTC 2016
Also, we use reg_offset=1 with DF uniforms when we try to access
components Z/W, so print reg_offset for them too.
---
src/mesa/drivers/dri/i965/brw_vec4.cpp | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_vec4.cpp b/src/mesa/drivers/dri/i965/brw_vec4.cpp
index 2bb6a8a..9400baa 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4.cpp
+++ b/src/mesa/drivers/dri/i965/brw_vec4.cpp
@@ -1429,7 +1429,9 @@ vec4_visitor::dump_instruction(backend_instruction *be_inst, FILE *file)
switch (inst->dst.file) {
case VGRF:
- fprintf(file, "vgrf%d.%d", inst->dst.nr, inst->dst.reg_offset);
+ fprintf(file, "vgrf%d", inst->dst.nr);
+ if (inst->dst.reg_offset || inst->dst.subnr)
+ fprintf(file, "+%d.%d", inst->dst.reg_offset, inst->dst.subnr);
break;
case FIXED_GRF:
fprintf(file, "g%d", inst->dst.nr);
@@ -1490,6 +1492,8 @@ vec4_visitor::dump_instruction(backend_instruction *be_inst, FILE *file)
switch (inst->src[i].file) {
case VGRF:
fprintf(file, "vgrf%d", inst->src[i].nr);
+ if (inst->src[i].reg_offset || inst->src[i].subnr)
+ fprintf(file, "+%d.%d", inst->src[i].reg_offset, inst->src[i].subnr);
break;
case FIXED_GRF:
fprintf(file, "g%d", inst->src[i].nr);
@@ -1499,6 +1503,8 @@ vec4_visitor::dump_instruction(backend_instruction *be_inst, FILE *file)
break;
case UNIFORM:
fprintf(file, "u%d", inst->src[i].nr);
+ if (inst->src[i].reg_offset || inst->src[i].subnr)
+ fprintf(file, "+%d.%d", inst->src[i].reg_offset, inst->src[i].subnr);
break;
case IMM:
switch (inst->src[i].type) {
@@ -1554,12 +1560,6 @@ vec4_visitor::dump_instruction(backend_instruction *be_inst, FILE *file)
unreachable("not reached");
}
- /* Don't print .0; and only VGRFs have reg_offsets and sizes */
- if (inst->src[i].reg_offset != 0 &&
- inst->src[i].file == VGRF &&
- alloc.sizes[inst->src[i].nr] != 1)
- fprintf(file, ".%d", inst->src[i].reg_offset);
-
if (inst->src[i].file != IMM) {
static const char *chans[4] = {"x", "y", "z", "w"};
fprintf(file, ".");
--
2.7.4
More information about the mesa-dev
mailing list