From 71c3558ed2d048c27585732fe4fd2aa17566f160 Mon Sep 17 00:00:00 2001 From: balrog Date: Mon, 24 Dec 2007 13:29:55 +0000 Subject: [PATCH] Fix cmpxchg8b translation (Bernhard Kauer). git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3843 c046a42c-6fe2-441c-8c8c-71466251a162 --- target-i386/translate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target-i386/translate.c b/target-i386/translate.c index 579831e..9723e76 100644 --- a/target-i386/translate.c +++ b/target-i386/translate.c @@ -3887,7 +3887,7 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start) case 0x1c7: /* cmpxchg8b */ modrm = ldub_code(s->pc++); mod = (modrm >> 6) & 3; - if (mod == 3) + if ((mod == 3) || ((modrm & 0x38) != 0x8)) goto illegal_op; gen_jmp_im(pc_start - s->cs_base); if (s->cc_op != CC_OP_DYNAMIC) -- 2.7.4