mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
KVM: x86: Add support for emulating MOVNTDQA
MOVNTDQA is a simple MOV instruction, in fact it has the same characteristics as 0F E7 (MOVNTDQ) other than the aligned-address requirement. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Link: https://patch.msgid.link/20251114003633.60689-2-pbonzini@redhat.com Signed-off-by: Sean Christopherson <seanjc@google.com>
This commit is contained in:
committed by
Sean Christopherson
parent
0b28f21ad4
commit
c57d9bafbd
@@ -4133,7 +4133,7 @@ static const struct gprefix pfx_0f_28_0f_29 = {
|
||||
I(Aligned, em_mov), I(Aligned, em_mov), N, N,
|
||||
};
|
||||
|
||||
static const struct gprefix pfx_0f_e7 = {
|
||||
static const struct gprefix pfx_0f_e7_0f_38_2a = {
|
||||
N, I(Sse, em_mov), N, N,
|
||||
};
|
||||
|
||||
@@ -4431,7 +4431,7 @@ static const struct opcode twobyte_table[256] = {
|
||||
/* 0xD0 - 0xDF */
|
||||
N, N, N, N, N, N, N, N, N, N, N, N, N, N, N, N,
|
||||
/* 0xE0 - 0xEF */
|
||||
N, N, N, N, N, N, N, GP(SrcReg | DstMem | ModRM | Mov, &pfx_0f_e7),
|
||||
N, N, N, N, N, N, N, GP(SrcReg | DstMem | ModRM | Mov, &pfx_0f_e7_0f_38_2a),
|
||||
N, N, N, N, N, N, N, N,
|
||||
/* 0xF0 - 0xFF */
|
||||
N, N, N, N, N, N, N, N, N, N, N, N, N, N, N, N
|
||||
@@ -4458,8 +4458,13 @@ static const struct gprefix three_byte_0f_38_f1 = {
|
||||
* byte.
|
||||
*/
|
||||
static const struct opcode opcode_map_0f_38[256] = {
|
||||
/* 0x00 - 0x7f */
|
||||
X16(N), X16(N), X16(N), X16(N), X16(N), X16(N), X16(N), X16(N),
|
||||
/* 0x00 - 0x1f */
|
||||
X16(N), X16(N),
|
||||
/* 0x20 - 0x2f */
|
||||
X8(N),
|
||||
X2(N), GP(SrcReg | DstMem | ModRM | Mov | Aligned, &pfx_0f_e7_0f_38_2a), N, N, N, N, N,
|
||||
/* 0x30 - 0x7f */
|
||||
X16(N), X16(N), X16(N), X16(N), X16(N),
|
||||
/* 0x80 - 0xef */
|
||||
X16(N), X16(N), X16(N), X16(N), X16(N), X16(N), X16(N),
|
||||
/* 0xf0 - 0xf1 */
|
||||
|
||||
Reference in New Issue
Block a user