@samitouri / QOSamiQemu / commits / 7276d0fbe6

disas/riscv: Pass rv_opcode_data pointer to format_inst

Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-ID: <20260812223142.349142-8-richard.henderson@linaro.org> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

Richard Henderson committed Aug 12, 2026 at 15:30 UTC 7276d0fbe60d1c757ee75a52a2c33b1835b13a73
1 file changed +5 -6
disas/riscv.c
+5 -6
@@ -5111,17 +5111,16 @@ static size_t inst_length(rv_inst inst)
5111
5112 /* format instruction */
5113
5114 -static GString *format_inst(size_t tab, rv_decode *dec)
5114 +static GString *format_inst(size_t tab, rv_decode *dec,
5115 + const rv_opcode_data *op)
5116 {
5116 - const rv_opcode_data *opcode_data = dec->opcode_data;
5117 GString *buf = g_string_sized_new(64);
5118 - const char *fmt;
5118 + const char *fmt = op->format;
5119
5120 - fmt = opcode_data[dec->op].format;
5120 while (*fmt) {
5121 switch (*fmt) {
5122 case 'O':
5124 - g_string_append(buf, opcode_data[dec->op].name);
5123 + g_string_append(buf, op->name);
5124 break;
5125 case '(':
5126 case ',':
@@ -5466,7 +5465,7 @@ static GString *disasm_inst(rv_isa isa, uint64_t pc, rv_inst inst,
5465 decode_inst_operands(&dec, isa, op);
5466 op = decode_inst_decompress(&dec, isa, op);
5467 op = decode_inst_lift_pseudo(&dec, op);
5469 - return format_inst(24, &dec);
5468 + return format_inst(24, &dec, op);
5469 }
5470
5471 #define INST_FMT_2 "%04x "