From f2a2a09688421f2c532ab6f02527bf68f095407a Mon Sep 17 00:00:00 2001 From: iximeow Date: Mon, 25 May 2026 17:32:57 +0000 Subject: j*cxz/pusha/popa alternate size forms these all existed since forever but the library did not distinguish them and did not provide prefix information for users to tell which had been decoded. --- test/real_mode/mod.rs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'test/real_mode/mod.rs') 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"); -- cgit v1.1