X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=deps%2Flightrec%2Fdisassembler.c;fp=deps%2Flightrec%2Fdisassembler.c;h=8bfaf4d0c288ab3c23ae8840f00bfb5fefc4adbe;hb=684432ad1a2eb287f74d7211762d273843426966;hp=f687d28c5cd1ee346479d56512641c7c3596cc22;hpb=ba86ff938a6b17c171dd68ebdf897ca3e30550f8;p=pcsx_rearmed.git diff --git a/deps/lightrec/disassembler.c b/deps/lightrec/disassembler.c index f687d28c..8bfaf4d0 100644 --- a/deps/lightrec/disassembler.c +++ b/deps/lightrec/disassembler.c @@ -157,6 +157,10 @@ static const char * const opcode_branch_flags[] = { "local branch", }; +static const char * const opcode_movi_flags[] = { + "movi", +}; + static const char * const opcode_multdiv_flags[] = { "No LO", "No HI", @@ -403,10 +407,13 @@ static int print_op(union code c, u32 pc, char *buf, size_t len, pc + 4 + ((s16)c.i.imm << 2)); case OP_ADDI: case OP_ADDIU: + case OP_ORI: + *flags_ptr = opcode_movi_flags; + *nb_flags = ARRAY_SIZE(opcode_movi_flags); + fallthrough; case OP_SLTI: case OP_SLTIU: case OP_ANDI: - case OP_ORI: case OP_XORI: return snprintf(buf, len, "%s%s,%s,0x%04hx", std_opcodes[c.i.op], @@ -415,6 +422,8 @@ static int print_op(union code c, u32 pc, char *buf, size_t len, (u16)c.i.imm); case OP_LUI: + *flags_ptr = opcode_movi_flags; + *nb_flags = ARRAY_SIZE(opcode_movi_flags); return snprintf(buf, len, "%s%s,0x%04hx", std_opcodes[c.i.op], lightrec_reg_name(c.i.rt),