From 4d9c0a32e7eccc4850e5e495954d108a9cd5f170 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Wed, 5 May 2021 10:13:36 -0400 Subject: [PATCH] pan/mdg: Use _output_ type for outmod printing Fixes incorrect outmods printed for conversions. Signed-off-by: Alyssa Rosenzweig Part-of: --- src/panfrost/midgard/disassemble.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/panfrost/midgard/disassemble.c b/src/panfrost/midgard/disassemble.c index 5bb6fef829d..dfeb10b9854 100644 --- a/src/panfrost/midgard/disassemble.c +++ b/src/panfrost/midgard/disassemble.c @@ -820,6 +820,7 @@ print_vector_field(FILE *fp, const char *name, uint16_t *words, uint16_t reg_wor midgard_alu_op op = alu_field->op; unsigned shrink_mode = alu_field->shrink_mode; bool is_int = midgard_is_integer_op(op); + bool is_int_out = midgard_is_integer_out_op(op); if (verbose) fprintf(fp, "%s.", name); @@ -827,7 +828,7 @@ print_vector_field(FILE *fp, const char *name, uint16_t *words, uint16_t reg_wor print_alu_opcode(fp, alu_field->op); /* Print lane width */ - fprintf(fp, ".%c%d", is_int ? 'i' : 'f', bits_for_mode(mode)); + fprintf(fp, ".%c%d", is_int_out ? 'i' : 'f', bits_for_mode(mode)); fprintf(fp, " "); @@ -860,7 +861,7 @@ print_vector_field(FILE *fp, const char *name, uint16_t *words, uint16_t reg_wor /* Print output modifiers */ - print_alu_outmod(fp, alu_field->outmod, is_int, shrink_mode != midgard_shrink_mode_none); + print_alu_outmod(fp, alu_field->outmod, is_int_out, shrink_mode != midgard_shrink_mode_none); /* Mask out unused components based on the writemask, but don't mask out * components that are used for interlane instructions like fdot3. */