target/i386: Do not apply REX to MMX operands
Cc: qemu-stable@nongnu.org Fixes: b3e22b2318a ("target/i386: add core of new i386 decoder") Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2495 Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Link: https://lore.kernel.org/r/20240812025844.58956-2-richard.henderson@linaro.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
fe68cc0923
commit
416f2b16c0
@ -1979,7 +1979,10 @@ static bool decode_op(DisasContext *s, CPUX86State *env, X86DecodedInsn *decode,
|
|||||||
op->unit = X86_OP_SSE;
|
op->unit = X86_OP_SSE;
|
||||||
}
|
}
|
||||||
get_reg:
|
get_reg:
|
||||||
op->n = ((get_modrm(s, env) >> 3) & 7) | REX_R(s);
|
op->n = ((get_modrm(s, env) >> 3) & 7);
|
||||||
|
if (op->unit != X86_OP_MMX) {
|
||||||
|
op->n |= REX_R(s);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case X86_TYPE_E: /* ALU modrm operand */
|
case X86_TYPE_E: /* ALU modrm operand */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user