instrs: Fix INVEPT/INVVPID memory operand size

This commit is contained in:
Alexis Engelke
2022-11-25 14:34:57 +01:00
parent b817713ae8
commit 180cc059ed
2 changed files with 6 additions and 2 deletions

View File

@@ -408,6 +408,10 @@ main(int argc, char** argv)
TEST64("\xf3\x0f\x09", "wbnoinvd"); TEST64("\xf3\x0f\x09", "wbnoinvd");
TEST32("\x66\x0f\x38\x82\x01", "invpcid eax, xmmword ptr [ecx]"); TEST32("\x66\x0f\x38\x82\x01", "invpcid eax, xmmword ptr [ecx]");
TEST64("\x66\x0f\x38\x82\x01", "invpcid rax, xmmword ptr [rcx]"); TEST64("\x66\x0f\x38\x82\x01", "invpcid rax, xmmword ptr [rcx]");
TEST32("\x66\x0f\x38\x80\x02", "invept eax, xmmword ptr [edx]");
TEST64("\x66\x0f\x38\x80\x02", "invept rax, xmmword ptr [rdx]");
TEST32("\x66\x0f\x38\x81\x02", "invvpid eax, xmmword ptr [edx]");
TEST64("\x66\x0f\x38\x81\x02", "invvpid rax, xmmword ptr [rdx]");
TEST32("\x66\x0f\x38\xf8\x01", "movdir64b eax, zmmword ptr [ecx]"); TEST32("\x66\x0f\x38\xf8\x01", "movdir64b eax, zmmword ptr [ecx]");
TEST64("\x66\x0f\x38\xf8\x01", "movdir64b rax, zmmword ptr [rcx]"); TEST64("\x66\x0f\x38\xf8\x01", "movdir64b rax, zmmword ptr [rcx]");
// TODO: MOVDIR64B first operand has address size. // TODO: MOVDIR64B first operand has address size.

View File

@@ -1483,8 +1483,8 @@ F3.0fa7e0 NP - - - - REP_XCRYPTCFB F=PADLOCK ONLYVI
F3.0fa7e8 NP - - - - REP_XCRYPTOFB F=PADLOCK ONLYVIA F3.0fa7e8 NP - - - - REP_XCRYPTOFB F=PADLOCK ONLYVIA
# VMX # VMX
66.0f3880/m RM Gy M - - INVEPT D64 F=VMX 66.0f3880/m RM Gy Mdq - - INVEPT D64 F=VMX
66.0f3881/m RM Gy M - - INVVPID D64 F=VMX 66.0f3881/m RM Gy Mdq - - INVVPID D64 F=VMX
NP.0f01c1 NP - - - - VMCALL F=VMX NP.0f01c1 NP - - - - VMCALL F=VMX
66.0fc7/6m M Mq - - - VMCLEAR F=VMX 66.0fc7/6m M Mq - - - VMCLEAR F=VMX
NP.0f01d4 NP - - - - VMFUNC F=VMX NP.0f01d4 NP - - - - VMFUNC F=VMX