aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2018-07-02 13:43:10 +0100
committerPeter Maydell <peter.maydell@linaro.org>2018-07-02 13:43:10 +0100
commit2d58e33ec1b76990f09bc1e3412e0b36e1ac4634 (patch)
tree70bc5d872cbdffd8b6337d4e713922ff3d7fa1c4
parent646f34fa5482e495483de230b4cf0f2ae4fd2781 (diff)
parentd9345f1e1b1936b9ed7026b83091cf701f7ce07e (diff)
Merge remote-tracking branch 'remotes/vivier/tags/m68k-for-3.0-pull-request' into staging
Fix move16 instruction disassembly # gpg: Signature made Mon 02 Jul 2018 11:25:51 BST # gpg: using RSA key F30C38BD3F2FBE3C # gpg: Good signature from "Laurent Vivier <lvivier@redhat.com>" # gpg: aka "Laurent Vivier <laurent@vivier.eu>" # gpg: aka "Laurent Vivier (Red Hat) <lvivier@redhat.com>" # Primary key fingerprint: CD2F 75DD C8E3 A4DC 2E4F 5173 F30C 38BD 3F2F BE3C * remotes/vivier/tags/m68k-for-3.0-pull-request: target/m68k: correctly disassemble move16 Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--disas/m68k.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/disas/m68k.c b/disas/m68k.c
index 61b689ef3e..a687df437c 100644
--- a/disas/m68k.c
+++ b/disas/m68k.c
@@ -2017,6 +2017,20 @@ print_insn_m68k (bfd_vma memaddr, disassemble_info *info)
}
}
+ /* Don't match FPU insns with non-default coprocessor ID. */
+ if (*d == '\0')
+ {
+ for (d = opc->args; *d; d += 2)
+ {
+ if (d[0] == 'I')
+ {
+ val = fetch_arg (buffer, 'd', 3, info);
+ if (val != 1)
+ break;
+ }
+ }
+ }
+
if (*d == '\0')
if ((val = match_insn_m68k (memaddr, info, opc, & priv)))
return val;