From e7dec7baa9c6649d71e1b349d93dce6b0cd588bf Mon Sep 17 00:00:00 2001 From: iximeow Date: Sun, 19 Dec 2021 11:23:18 -0800 Subject: fix incorrect memory size for f30f1e-style nop not only did the instruction have wrong data, but if displayed, the formatter would panic. --- test/long_mode/mod.rs | 1 + test/protected_mode/mod.rs | 1 + test/real_mode/mod.rs | 1 + 3 files changed, 3 insertions(+) (limited to 'test') diff --git a/test/long_mode/mod.rs b/test/long_mode/mod.rs index 0bef224..97e9a74 100644 --- a/test/long_mode/mod.rs +++ b/test/long_mode/mod.rs @@ -3396,6 +3396,7 @@ fn from_reports() { // negative compressed evex displacements should not overflow and panic test_display(&[0x62, 0xf2, 0x6d, 0xac, 0x00, 0x59, 0xa7], "vpshufb ymm3{k4}{z}, ymm2, ymmword [rcx - 0xb20]"); test_display(&[0x62, 0xf2, 0xfd, 0x0f, 0x8a, 0x62, 0xf2], "vcompresspd xmmword [rdx - 0x70]{k7}, xmm4"); + test_display(&[0xf3, 0x0f, 0x1e, 0x0f], "nop dword [rdi], ecx"); } mod reg_masks { diff --git a/test/protected_mode/mod.rs b/test/protected_mode/mod.rs index 9f34019..744d006 100644 --- a/test/protected_mode/mod.rs +++ b/test/protected_mode/mod.rs @@ -3083,6 +3083,7 @@ fn from_reports() { // negative compressed evex displacements should not overflow and panic test_display(&[0x62, 0xf2, 0x6d, 0xac, 0x00, 0x59, 0xa7], "vpshufb ymm3{k4}{z}, ymm2, ymmword [ecx - 0xb20]"); test_display(&[0x62, 0xf2, 0xfd, 0x0f, 0x8a, 0x62, 0xf2], "vcompresspd xmmword [edx - 0x70]{k7}, xmm4"); + test_display(&[0xf3, 0x0f, 0x1e, 0x0f], "nop dword [edi], ecx"); } mod reg_masks { diff --git a/test/real_mode/mod.rs b/test/real_mode/mod.rs index bf2ae8c..60f4c47 100644 --- a/test/real_mode/mod.rs +++ b/test/real_mode/mod.rs @@ -18368,6 +18368,7 @@ fn from_reports() { // negative compressed evex displacements should not overflow and panic test_display(&[0x62, 0xf2, 0x6d, 0xac, 0x00, 0x59, 0xa7], "vpshufb ymm3{k4}{z}, ymm2, ymmword [bx + di - 0xb20]"); test_display(&[0x62, 0xf2, 0xfd, 0x0f, 0x8a, 0x62, 0xf2], "vcompresspd xmmword [bp + si - 0x70]{k7}, xmm4"); + test_display(&[0xf3, 0x0f, 0x1e, 0x0f], "nop word [bx], cx"); } mod reg_masks { -- cgit v1.1