summaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2018-11-02 11:27:46 +0000
committerPeter Maydell <peter.maydell@linaro.org>2018-11-02 11:27:46 +0000
commitfbdd2b2b03cb42d6a1e54ae23199b7c2b401f898 (patch)
tree878565f3edc8a144a9b47f823dddf04a3d3443f4 /target
parent2959fb7fe50c3c22aabaaabf198a1b87d10e51f6 (diff)
parentb9f8e55bf7e994e192ab7360830731580384b813 (diff)
Merge remote-tracking branch 'remotes/vivier/tags/m68k-for-3.1-pull-request' into staging
Fix illegal instruction exception number # gpg: Signature made Thu 01 Nov 2018 11:34:49 GMT # 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.1-pull-request: target/m68k: use EXCP_ILLEGAL instead of EXCP_UNSUPPORTED Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target')
-rw-r--r--target/m68k/cpu.h1
-rw-r--r--target/m68k/translate.c6
2 files changed, 3 insertions, 4 deletions
diff --git a/target/m68k/cpu.h b/target/m68k/cpu.h
index c63adf772f..b288a3864e 100644
--- a/target/m68k/cpu.h
+++ b/target/m68k/cpu.h
@@ -70,7 +70,6 @@
#define EXCP_MMU_CONF 56 /* MMU Configuration Error */
#define EXCP_MMU_ILLEGAL 57 /* MMU Illegal Operation Error */
#define EXCP_MMU_ACCESS 58 /* MMU Access Level Violation Error */
-#define EXCP_UNSUPPORTED 61
#define EXCP_RTE 0x100
#define EXCP_HALT_INSN 0x101
diff --git a/target/m68k/translate.c b/target/m68k/translate.c
index ae3651b867..752e46ef63 100644
--- a/target/m68k/translate.c
+++ b/target/m68k/translate.c
@@ -1553,7 +1553,7 @@ DISAS_INSN(undef)
but actually illegal for CPU32 or pre-68020. */
qemu_log_mask(LOG_UNIMP, "Illegal instruction: %04x @ %08x\n",
insn, s->base.pc_next);
- gen_exception(s, s->base.pc_next, EXCP_UNSUPPORTED);
+ gen_exception(s, s->base.pc_next, EXCP_ILLEGAL);
}
DISAS_INSN(mulw)
@@ -2800,7 +2800,7 @@ DISAS_INSN(mull)
if (ext & 0x400) {
if (!m68k_feature(s->env, M68K_FEATURE_QUAD_MULDIV)) {
- gen_exception(s, s->base.pc_next, EXCP_UNSUPPORTED);
+ gen_exception(s, s->base.pc_next, EXCP_ILLEGAL);
return;
}
@@ -4510,7 +4510,7 @@ DISAS_INSN(strldsr)
addr = s->pc - 2;
ext = read_im16(env, s);
if (ext != 0x46FC) {
- gen_exception(s, addr, EXCP_UNSUPPORTED);
+ gen_exception(s, addr, EXCP_ILLEGAL);
return;
}
ext = read_im16(env, s);