aboutsummaryrefslogtreecommitdiff
path: root/test/protected_mode
diff options
context:
space:
mode:
authoriximeow <me@iximeow.net>2020-05-23 21:02:32 -0700
committeriximeow <me@iximeow.net>2020-05-23 21:02:32 -0700
commit79cd0c80a858448713aedd3d607dc363be891d8c (patch)
tree8767f8c59c11c47a7f6996d0655206fa6917b2ba /test/protected_mode
parent9b965525afced37e99543e3a412218207a41e793 (diff)
fix important memory decode error in long mode
add tests for modrm/sib decoding, xsave extensions
Diffstat (limited to 'test/protected_mode')
-rw-r--r--test/protected_mode/mod.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/test/protected_mode/mod.rs b/test/protected_mode/mod.rs
index fc1db2d..3443565 100644
--- a/test/protected_mode/mod.rs
+++ b/test/protected_mode/mod.rs
@@ -509,6 +509,11 @@ fn test_0fae() {
test_display(&[0x0f, 0xae, 0x14, 0x4f], "ldmxcsr [edi + ecx * 2]");
test_display(&[0x0f, 0xae, 0x1c, 0x4f], "stmxcsr [edi + ecx * 2]");
test_display(&[0x0f, 0xae, 0x24, 0x4f], "xsave [edi + ecx * 2]");
+ test_display(&[0x0f, 0xc7, 0x5c, 0x24, 0x40], "xrstors [esp + 0x40]");
+ test_display(&[0x0f, 0xc7, 0x64, 0x24, 0x40], "xsavec [esp + 0x40]");
+ test_display(&[0x0f, 0xc7, 0x6c, 0x24, 0x40], "xsaves [esp + 0x40]");
+ test_display(&[0x0f, 0xc7, 0x74, 0x24, 0x40], "vmptrld [esp + 0x40]");
+ test_display(&[0x0f, 0xc7, 0x7c, 0x24, 0x40], "vmptrst [esp + 0x40]");
test_display(&[0x0f, 0xae, 0x2c, 0x4f], "xrstor [edi + ecx * 2]");
test_display(&[0x0f, 0xae, 0x34, 0x4f], "xsaveopt [edi + ecx * 2]");
test_display(&[0x0f, 0xae, 0x3c, 0x4f], "clflush [edi + ecx * 2]");