EXCP_SEMIHOSTING can be generated by m68k class CPU with
HALT instruction, but it is never handled properly and cause
guest fall into deadlock.
Handle it as what we've done to coldfire.
Fixes: f161e723fdfd ("target/m68k: Perform the semihosting test during
translate")
Cc: qemu-stable@nongnu.org
Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
---
target/m68k/op_helper.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/target/m68k/op_helper.c b/target/m68k/op_helper.c
index
15bad5dd46518c6e86b6273d4a2b26b3b6f991de..95b3d5cf052c6ffd515afdffd5465550ae3af455
100644
--- a/target/m68k/op_helper.c
+++ b/target/m68k/op_helper.c
@@ -285,6 +285,9 @@ static void m68k_interrupt_all(CPUM68KState *env, int is_hw)
/* Return from an exception. */
m68k_rte(env);
return;
+ case EXCP_SEMIHOSTING:
+ do_m68k_semihosting(env, env->dregs[0]);
+ return;
}