aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/long_mode/mod.rs2
-rw-r--r--test/protected_mode/mod.rs8
-rw-r--r--test/real_mode/mod.rs4
3 files changed, 12 insertions, 2 deletions
diff --git a/test/long_mode/mod.rs b/test/long_mode/mod.rs
index eaca39d..c7fb2be 100644
--- a/test/long_mode/mod.rs
+++ b/test/long_mode/mod.rs
@@ -1341,6 +1341,8 @@ fn test_control_flow() {
test_display(&[0xe2, 0x12], "loop $+0x12");
test_display(&[0xe3, 0x12], "jrcxz $+0x12");
test_display(&[0xe3, 0xf0], "jrcxz $-0x10");
+ test_display(&[0x67, 0xe3, 0x12], "jecxz $+0x12");
+ test_display(&[0x67, 0xe3, 0xf0], "jecxz $-0x10");
test_display(&[0xc3], "ret");
}
diff --git a/test/protected_mode/mod.rs b/test/protected_mode/mod.rs
index 50b4887..f6e69cf 100644
--- a/test/protected_mode/mod.rs
+++ b/test/protected_mode/mod.rs
@@ -1160,6 +1160,8 @@ fn test_control_flow() {
test_display(&[0xe2, 0x12], "loop $+0x12");
test_display(&[0xe3, 0x12], "jecxz $+0x12");
test_display(&[0xe3, 0xf0], "jecxz $-0x10");
+ test_display(&[0x67, 0xe3, 0x12], "jcxz $+0x12");
+ test_display(&[0x67, 0xe3, 0xf0], "jcxz $-0x10");
test_display(&[0xc3], "ret");
}
@@ -2528,8 +2530,10 @@ fn only_32bit() {
test_display(&[0x67, 0xa1, 0xc0, 0xb0], "mov eax, dword [0xb0c0]");
test_display(&[0x66, 0x67, 0xa1, 0xc0, 0xb0], "mov ax, word [0xb0c0]");
- test_display(&[0x60], "pusha");
- test_display(&[0x61], "popa");
+ test_display(&[0x60], "pushad");
+ test_display(&[0x61], "popad");
+ test_display(&[0x66, 0x60], "pusha");
+ test_display(&[0x66, 0x61], "popa");
test_display(&[0xce], "into");
test_display(&[0x06], "push es");
test_display(&[0x07], "pop es");
diff --git a/test/real_mode/mod.rs b/test/real_mode/mod.rs
index 67798eb..bce199b 100644
--- a/test/real_mode/mod.rs
+++ b/test/real_mode/mod.rs
@@ -440,6 +440,8 @@ fn test_real_mode() {
test_display(&[0x5e], "pop si");
test_display(&[0x60], "pusha");
test_display(&[0x61], "popa");
+ test_display(&[0x66, 0x60], "pushad");
+ test_display(&[0x66, 0x61], "popad");
test_display(&[0x62, 0xf1, 0x7c, 0x08, 0x10, 0x0a], "vmovups xmm1, xmmword [bp + si * 1]");
test_display(&[0x62, 0xf1, 0x7c, 0x08, 0x10, 0x4a, 0x01], "vmovups xmm1, xmmword [bp + si * 1 + 0x10]");
test_display(&[0x62, 0xf1, 0x7c, 0x08, 0x10, 0xca], "vmovups xmm1, xmm2");
@@ -17974,6 +17976,8 @@ fn test_real_mode() {
test_display(&[0xe2, 0x12], "loop $+0x12");
test_display(&[0xe3, 0x12], "jcxz $+0x12");
test_display(&[0xe3, 0xf0], "jcxz $-0x10");
+ test_display(&[0x67, 0xe3, 0x12], "jecxz $+0x12");
+ test_display(&[0x67, 0xe3, 0xf0], "jecxz $-0x10");
test_display(&[0xe4, 0x99], "in al, 0x99");
test_display(&[0xe5, 0x99], "in ax, 0x99");
test_display(&[0xe6, 0x99], "out 0x99, al");