From 527c68f40e06e7f27ef02df01f4a308489963f02 Mon Sep 17 00:00:00 2001 From: Laurent Vivier Date: Thu, 1 Mar 2018 08:58:56 -0500 Subject: [PATCH] target-m68k: Fix cmpa operand size "The size of the operation can be specified as word or long. Word length source operands are sign-extended to 32 bits for comparison." So comparison is always done using OS_LONG. Backports commit 5436c29d78957a6825a93f0eb79dfab388641017 from qemu --- qemu/target-m68k/translate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qemu/target-m68k/translate.c b/qemu/target-m68k/translate.c index 92b5e313..889a1940 100644 --- a/qemu/target-m68k/translate.c +++ b/qemu/target-m68k/translate.c @@ -2232,7 +2232,7 @@ DISAS_INSN(cmpa) } SRC_EA(env, src, opsize, 1, NULL); reg = AREG(insn, 9); - gen_update_cc_cmp(s, reg, src, opsize); + gen_update_cc_cmp(s, reg, src, OS_LONG); } DISAS_INSN(eor)