diff options
-rw-r--r-- | src/freedreno/ir3/disasm-a3xx.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/freedreno/ir3/disasm-a3xx.c b/src/freedreno/ir3/disasm-a3xx.c index 7b2a773df46..956c168fa94 100644 --- a/src/freedreno/ir3/disasm-a3xx.c +++ b/src/freedreno/ir3/disasm-a3xx.c @@ -463,9 +463,11 @@ static void print_instr_cat5(struct disasm_ctx *ctx, instr_t *instr) } if (cat5->is_s2en) { - fprintf(ctx->out, ", "); - print_reg_src(ctx, (reg_t)(cat5->s2en.src2), cat5->full, false, false, false, - false, false, false); + if (cat5->is_o || info[cat5->opc].src2) { + fprintf(ctx->out, ", "); + print_reg_src(ctx, (reg_t)(cat5->s2en.src2), cat5->full, + false, false, false, false, false, false); + } fprintf(ctx->out, ", "); print_reg_src(ctx, (reg_t)(cat5->s2en.src3), false, false, false, false, false, false, false); |