diff options
author | Alan Modra <amodra@gmail.com> | 2022-03-13 22:54:25 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2022-03-14 09:16:37 +1030 |
commit | fcf60fe8482346f543efdc4879a34c6bbd9cfea9 (patch) | |
tree | e475463b5d8f5d2ef29201eb6fdd23ec62724db6 | |
parent | e4a35c7319628045302d4c597cb27f1b0a08c858 (diff) |
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.
(cherry picked from commit b508e46bf9c5b2cef5821b399dfc3b8009a81836)
-rw-r--r-- | opcodes/ppc-dis.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/opcodes/ppc-dis.c b/opcodes/ppc-dis.c index 07f4e34a65..38ddeca262 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. */ |