disas/nanomips: Tidy read for 48-bit opcodes
There is no point in looking for a 48-bit opcode if we've not read the second word for a 32-bit opcode. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20221106023735.5277-5-richard.henderson@linaro.org>
This commit is contained in:
parent
1414e3f565
commit
bb3daca71b
@ -21964,14 +21964,14 @@ int print_insn_nanomips(bfd_vma memaddr, struct disassemble_info *info)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
length = 4;
|
length = 4;
|
||||||
}
|
|
||||||
|
|
||||||
/* Handle 48-bit opcodes. */
|
/* Handle 48-bit opcodes. */
|
||||||
if ((words[0] >> 10) == 0x18) {
|
if ((words[0] >> 10) == 0x18) {
|
||||||
if (!read_u16(&words[1], memaddr + 4, info)) {
|
if (!read_u16(&words[1], memaddr + 4, info)) {
|
||||||
return -1;
|
return -1;
|
||||||
|
}
|
||||||
|
length = 6;
|
||||||
}
|
}
|
||||||
length = 6;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 0; i < ARRAY_SIZE(words); i++) {
|
for (int i = 0; i < ARRAY_SIZE(words); i++) {
|
||||||
|
Loading…
Reference in New Issue
Block a user