diff options
author | Rob Clark <robdclark@chromium.org> | 2019-10-25 16:15:10 -0700 |
---|---|---|
committer | Rob Clark <robdclark@chromium.org> | 2019-11-12 13:55:03 -0800 |
commit | 7a5f073da32f938242b21565414029e823924e06 (patch) | |
tree | f2a593781cf708a44ebc57b39aea46a31f0926a6 | |
parent | c00a67171c99a885ffa46aff31f9cfa165947d78 (diff) |
freedreno/ir3: show input/output wrmask's in disasm
Currently it is always 0x1 (scalar), but that will change in a later
patch.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
-rw-r--r-- | src/freedreno/ir3/ir3_shader.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/freedreno/ir3/ir3_shader.c b/src/freedreno/ir3/ir3_shader.c index 2f5777c4ec8..17369300761 100644 --- a/src/freedreno/ir3/ir3_shader.c +++ b/src/freedreno/ir3/ir3_shader.c @@ -384,9 +384,13 @@ ir3_shader_disasm(struct ir3_shader_variant *so, uint32_t *bin, FILE *out) foreach_input_n(instr, i, ir) { reg = instr->regs[0]; regid = reg->num; - fprintf(out, "@in(%sr%d.%c)\tin%d\n", + fprintf(out, "@in(%sr%d.%c)\tin%d", (reg->flags & IR3_REG_HALF) ? "h" : "", (regid >> 2), "xyzw"[regid & 0x3], i); + + if (reg->wrmask > 0x1) + fprintf(out, " (wrmask=0x%x)", reg->wrmask); + fprintf(out, "\n"); } /* print pre-dispatch texture fetches: */ @@ -402,9 +406,12 @@ ir3_shader_disasm(struct ir3_shader_variant *so, uint32_t *bin, FILE *out) foreach_output_n(instr, i, ir) { reg = instr->regs[0]; regid = reg->num; - fprintf(out, "@out(%sr%d.%c)\tout%d\n", + fprintf(out, "@out(%sr%d.%c)\tout%d", (reg->flags & IR3_REG_HALF) ? "h" : "", (regid >> 2), "xyzw"[regid & 0x3], i); + if (reg->wrmask > 0x1) + fprintf(out, " (wrmask=0x%x)", reg->wrmask); + fprintf(out, "\n"); } struct ir3_const_state *const_state = &so->shader->const_state; |