diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/long_mode/mod.rs | 10 | ||||
| -rw-r--r-- | test/protected_mode/mod.rs | 9 |
2 files changed, 17 insertions, 2 deletions
diff --git a/test/long_mode/mod.rs b/test/long_mode/mod.rs index fb38840..de113d3 100644 --- a/test/long_mode/mod.rs +++ b/test/long_mode/mod.rs @@ -1893,11 +1893,21 @@ mod system { use crate::long_mode::{TestCase, run_test}; const CASES: &'static [TestCase] = &[ + testcase!(&[0x0f, 0xb2, 0x00], "lss eax, far [rax]"), + testcase!(&[0x0f, 0xb4, 0x00], "lfs eax, far [rax]"), + testcase!(&[0x0f, 0xb5, 0x00], "lgs eax, far [rax]"), + testcase!(&[0x48, 0x0f, 0xb2, 0x00], "lss rax, mword [rax]"), + testcase!(&[0x48, 0x0f, 0xb4, 0x00], "lfs rax, mword [rax]"), + testcase!(&[0x48, 0x0f, 0xb5, 0x00], "lgs rax, mword [rax]"), testcase!(&[0x66, 0x4f, 0x0f, 0xb2, 0x00], "lss r8, mword [r8]"), testcase!(&[0x67, 0x4f, 0x0f, 0xb2, 0x00], "lss r8, mword [r8d]"), testcase!(&[0x4f, 0x0f, 0xb2, 0x00], "lss r8, mword [r8]"), + testcase!(&[0x4f, 0x0f, 0xb4, 0x00], "lfs r8, mword [r8]"), + testcase!(&[0x4f, 0x0f, 0xb5, 0x00], "lgs r8, mword [r8]"), testcase!(&[0x0f, 0xb2, 0x00], "lss eax, far [rax]"), testcase!(&[0x66, 0x0f, 0xb2, 0x00], "lss ax, dword [rax]"), + testcase!(&[0x66, 0x0f, 0xb4, 0x00], "lfs ax, dword [rax]"), + testcase!(&[0x66, 0x0f, 0xb5, 0x00], "lgs ax, dword [rax]"), testcase!(invalid: &[0x45, 0x0f, 0x22, 0xc8]), testcase!(invalid: &[0x45, 0x0f, 0x20, 0xc8]), testcase!(&[0x40, 0x0f, 0x22, 0xd0], "mov cr2, rax"), diff --git a/test/protected_mode/mod.rs b/test/protected_mode/mod.rs index 7fb3b77..2b1cc70 100644 --- a/test/protected_mode/mod.rs +++ b/test/protected_mode/mod.rs @@ -1829,12 +1829,17 @@ mod system { use crate::protected_mode::{TestCase, run_test}; const CASES: &'static [TestCase] = &[ + testcase!(&[0x0f, 0xb2, 0x00], "lss eax, far [eax]"), + testcase!(&[0x0f, 0xb4, 0x00], "lfs eax, far [eax]"), + testcase!(&[0x0f, 0xb5, 0x00], "lgs eax, far [eax]"), testcase!(&[0x63, 0xc1], "arpl cx, ax"), testcase!(&[0x63, 0x04, 0xba], "arpl word [edx + edi * 4], ax"), - testcase!(&[0x66, 0x0f, 0xb2, 0x00], "lss ax, word [eax]"), + testcase!(&[0x66, 0x0f, 0xb2, 0x00], "lss ax, dword [eax]"), + testcase!(&[0x66, 0x0f, 0xb4, 0x00], "lfs ax, dword [eax]"), + testcase!(&[0x66, 0x0f, 0xb5, 0x00], "lgs ax, dword [eax]"), testcase!(&[0x67, 0x0f, 0xb2, 0x00], "lss eax, far [bx + si * 1]"), testcase!(&[0x0f, 0xb2, 0x00], "lss eax, far [eax]"), - testcase!(&[0x66, 0x0f, 0xb2, 0x00], "lss ax, word [eax]"), + testcase!(&[0x66, 0x0f, 0xb2, 0x00], "lss ax, dword [eax]"), testcase!(invalid: &[0x0f, 0x22, 0xc8]), testcase!(invalid: &[0x0f, 0x20, 0xc8]), testcase!(&[0x0f, 0x22, 0xd0], "mov cr2, eax"), |
