diff options
author | iximeow <me@iximeow.net> | 2023-07-24 06:41:02 -0700 |
---|---|---|
committer | iximeow <me@iximeow.net> | 2023-07-24 06:41:02 -0700 |
commit | ab51fd1b2c7cf1b7bb6f84c5b07e06245f6b3d99 (patch) | |
tree | 80b2a81dfb805c49a5c3a43296835bd5195e422a /test/protected_mode | |
parent | 855fa08f1d2f4bc405a1cfc205b5e9321dd4ebf5 (diff) |
fix handling of lar/lsl source register
Diffstat (limited to 'test/protected_mode')
-rw-r--r-- | test/protected_mode/mod.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/test/protected_mode/mod.rs b/test/protected_mode/mod.rs index 5229617..85d92ce 100644 --- a/test/protected_mode/mod.rs +++ b/test/protected_mode/mod.rs @@ -2270,8 +2270,14 @@ fn strange_prefixing() { #[test] fn prefixed_0f() { - test_display(&[0x0f, 0x02, 0xc0], "lar eax, ax"); - test_display(&[0x0f, 0x03, 0xc0], "lsl eax, eax"); + test_display(&[0x0f, 0x02, 0x01], "lar eax, word [ecx]"); + test_display(&[0x0f, 0x02, 0xc1], "lar eax, ecx"); + test_display(&[0x66, 0x0f, 0x02, 0x01], "lar ax, word [ecx]"); + test_display(&[0x66, 0x0f, 0x02, 0xc1], "lar ax, cx"); + test_display(&[0x0f, 0x03, 0x01], "lsl eax, word [ecx]"); + test_display(&[0x0f, 0x03, 0xc1], "lsl eax, ecx"); + test_display(&[0x66, 0x0f, 0x03, 0x01], "lsl ax, word [ecx]"); + test_display(&[0x66, 0x0f, 0x03, 0xc1], "lsl ax, cx"); test_display(&[0x0f, 0x05], "syscall"); test_display(&[0x66, 0x0f, 0x05], "syscall"); test_display(&[0x0f, 0x06], "clts"); |