Commit 71c3558ed2d048c27585732fe4fd2aa17566f160
1 parent
1e080d5d
Fix cmpxchg8b translation (Bernhard Kauer).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3843 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
1 additions
and
1 deletions
target-i386/translate.c
... | ... | @@ -3887,7 +3887,7 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start) |
3887 | 3887 | case 0x1c7: /* cmpxchg8b */ |
3888 | 3888 | modrm = ldub_code(s->pc++); |
3889 | 3889 | mod = (modrm >> 6) & 3; |
3890 | - if (mod == 3) | |
3890 | + if ((mod == 3) || ((modrm & 0x38) != 0x8)) | |
3891 | 3891 | goto illegal_op; |
3892 | 3892 | gen_jmp_im(pc_start - s->cs_base); |
3893 | 3893 | if (s->cc_op != CC_OP_DYNAMIC) | ... | ... |