From b508e46bf9c5b2cef5821b399dfc3b8009a81836 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Sun, 13 Mar 2022 22:54:25 +1030 Subject: PR28959, obdump doesn't disassemble mftb instruction Without a -M cpu option given, powerpc objdump defaults currently to -Mpower10 but -Many is also given. Commit 1ff6a3b8e562 regressed -Many disassembly of instructions that are encoded differently depending on cpu, such as mftb which has pre- and post-power4 encodings. PR 28959 * ppc-dis.c (lookup_powerpc): Revert 2021-05-28 change. Instead only look at deprecated PPC_OPCODE_RAW bit when -Many. --- opcodes/ppc-dis.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'opcodes') diff --git a/opcodes/ppc-dis.c b/opcodes/ppc-dis.c index 07f4e34..38ddeca 100644 --- a/opcodes/ppc-dis.c +++ b/opcodes/ppc-dis.c @@ -598,8 +598,9 @@ lookup_powerpc (uint64_t insn, ppc_cpu_t dialect) if ((insn & opcode->mask) != opcode->opcode || ((dialect & PPC_OPCODE_ANY) == 0 - && (opcode->flags & dialect) == 0) - || (opcode->deprecated & dialect) != 0) + && ((opcode->flags & dialect) == 0 + || (opcode->deprecated & dialect) != 0)) + || (opcode->deprecated & dialect & PPC_OPCODE_RAW) != 0) continue; /* Check validity of operands. */ -- cgit v1.1