summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2014-03-11 00:11:42 -0700
committerKenneth Graunke <kenneth@whitecape.org>2014-03-14 13:17:57 -0700
commit13782dcf9d34a1bd276312cdecc44deb8f7caafd (patch)
tree0ec839b4cb2edbdad6e73fd0555a9b0576248e8d
parent01d9023a9b9a50b42f7a4ef4799d0e35e0b045ca (diff)
i965/fs: Print "+reladdr" on variably-indexed uniform arrays.
Previously, dump_instruction() would print output such as: { 2} 3: mov vgrf1:F, u0:F { 3} 4: mov vgrf7:F, u0:F { 4} 5: mov vgrf8:F, u0:F which looked like either a scalar access or perhaps a constant-indexed access of element 0, when it was really a variable index. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Matt Turner <mattst88@gmail.com>
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index 9081aafb30f..3fab30953c1 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -3088,10 +3088,13 @@ fs_visitor::dump_instruction(backend_instruction *be_inst)
break;
case UNIFORM:
fprintf(stderr, "u%d", inst->src[i].reg);
- if (virtual_grf_sizes[inst->src[i].reg] != 1 ||
- inst->src[i].subreg_offset)
+ if (inst->src[i].reladdr) {
+ fprintf(stderr, "+reladdr");
+ } else if (virtual_grf_sizes[inst->src[i].reg] != 1 ||
+ inst->src[i].subreg_offset) {
fprintf(stderr, "+%d.%d", inst->src[i].reg_offset,
inst->src[i].subreg_offset);
+ }
break;
case BAD_FILE:
fprintf(stderr, "(null)");