From: Alyssa Rosenzweig Date: Sat, 19 Sep 2020 19:04:02 +0000 (-0400) Subject: pan/bi: Inline dump_instr X-Git-Tag: upstream/21.0.0~5143 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=43c6623c9eb106ef54191b7f404db669f8c9aec4;p=platform%2Fupstream%2Fmesa.git pan/bi: Inline dump_instr Tuple dumping is trivial now that we autogenerate most of it. Signed-off-by: Alyssa Rosenzweig Part-of: --- diff --git a/src/panfrost/bifrost/disassemble.c b/src/panfrost/bifrost/disassemble.c index dead633..92aab8b 100644 --- a/src/panfrost/bifrost/disassemble.c +++ b/src/panfrost/bifrost/disassemble.c @@ -399,21 +399,6 @@ dump_src(FILE *fp, unsigned src, struct bifrost_regs srcs, uint64_t *consts, boo } } -static void dump_instr(FILE *fp, const struct bifrost_alu_inst *instr, - struct bifrost_regs next_regs, uint64_t *consts, - unsigned data_reg, unsigned offset, bool verbose) -{ - struct bifrost_regs regs; - memcpy((char *) ®s, (char *) &instr->reg_bits, sizeof(regs)); - - if (verbose) { - fprintf(fp, "# regs: %016" PRIx64 "\n", instr->reg_bits); - dump_regs(fp, regs); - } - bi_disasm_fma(fp, instr->fma_bits, ®s, &next_regs, data_reg, offset, consts); - bi_disasm_add(fp, instr->add_bits, ®s, &next_regs, data_reg, offset, consts); -} - static bool dump_clause(FILE *fp, uint32_t *words, unsigned *size, unsigned offset, bool verbose) { // State for a decoded clause @@ -622,7 +607,7 @@ static bool dump_clause(FILE *fp, uint32_t *words, unsigned *size, unsigned offs fprintf(fp, "{\n"); for (i = 0; i < num_instrs; i++) { - struct bifrost_regs next_regs; + struct bifrost_regs regs, next_regs; if (i + 1 == num_instrs) { memcpy((char *) &next_regs, (char *) &instrs[0].reg_bits, sizeof(next_regs)); @@ -631,7 +616,15 @@ static bool dump_clause(FILE *fp, uint32_t *words, unsigned *size, unsigned offs sizeof(next_regs)); } - dump_instr(fp, &instrs[i], next_regs, consts, header.datareg, offset, verbose); + memcpy((char *) ®s, (char *) &instrs[i].reg_bits, sizeof(regs)); + + if (verbose) { + fprintf(fp, "# regs: %016" PRIx64 "\n", instrs->reg_bits); + dump_regs(fp, regs); + } + + bi_disasm_fma(fp, instrs[i].fma_bits, ®s, &next_regs, header.datareg, offset, consts); + bi_disasm_add(fp, instrs[i].add_bits, ®s, &next_regs, header.datareg, offset, consts); } fprintf(fp, "}\n");