From 767c604e2ee47cde4edf72b63d17998ce1767bde Mon Sep 17 00:00:00 2001 From: iximeow Date: Sat, 30 Nov 2019 19:25:23 -0800 Subject: add pxor and some others, support mm operands --- test/test.rs | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) (limited to 'test/test.rs') diff --git a/test/test.rs b/test/test.rs index f3ae928..a08dbec 100644 --- a/test/test.rs +++ b/test/test.rs @@ -142,6 +142,7 @@ fn test_sse() { test_display(&[0x67, 0x66, 0x4f, 0x0f, 0x28, 0x00], "movapd xmm8, [r8d]"); test_display(&[0x66, 0x0f, 0x29, 0x00], "movapd [rax], xmm0"); test_display(&[0x66, 0x0f, 0xef, 0xc0], "pxor xmm0, xmm0"); + test_display(&[0x66, 0x4f, 0x0f, 0xef, 0xc0], "pxor xmm8, xmm8"); test_display(&[0xf2, 0x0f, 0x10, 0x0c, 0xc6], "movsd xmm1, [rsi + rax * 8]"); test_display(&[0xf3, 0x0f, 0x10, 0x04, 0x86], "movss xmm0, [rsi + rax * 4]"); test_display(&[0xf2, 0x0f, 0x59, 0xc8], "mulsd xmm1, xmm0"); @@ -328,18 +329,18 @@ fn prefixed_0f() { test_display(&[0x0f, 0x35], "sysexit"); test_invalid(&[0x0f, 0x36]); test_display(&[0x0f, 0x37], "getsec"); - test_display(&[0x0f, 0x60, 0x00], "punpcklbw mm0, qword [rax]"); - test_display(&[0x0f, 0x61, 0x00], "punpcklwd mm0, qword [rax]"); - test_display(&[0x0f, 0x62, 0x00], "punpckldq mm0, qword [rax]"); - test_display(&[0x0f, 0x63, 0x00], "packsswb mm0, qword [rax]"); - test_display(&[0x0f, 0x64, 0x00], "pcmpgtb mm0, qword [rax]"); - test_display(&[0x0f, 0x65, 0x00], "pcmpgtw mm0, qword [rax]"); - test_display(&[0x0f, 0x66, 0x00], "pcmpgtd mm0, qword [rax]"); - test_display(&[0x0f, 0x67, 0x00], "packuswb mm0, qword [rax]"); - test_display(&[0x0f, 0x68, 0x00], "punpckhbw mm0, qword [rax]"); - test_display(&[0x0f, 0x69, 0x00], "punpckhbd mm0, qword [rax]"); - test_display(&[0x0f, 0x6a, 0x00], "punpckhdq mm0, qword [rax]"); - test_display(&[0x0f, 0x6b, 0x00], "packssdw mm0, qword [rax]"); + test_display(&[0x0f, 0x60, 0x00], "punpcklbw mm0, [rax]"); + test_display(&[0x0f, 0x61, 0x00], "punpcklwd mm0, [rax]"); + test_display(&[0x0f, 0x62, 0x00], "punpckldq mm0, [rax]"); + test_display(&[0x0f, 0x63, 0x00], "packsswb mm0, [rax]"); + test_display(&[0x0f, 0x64, 0x00], "pcmpgtb mm0, [rax]"); + test_display(&[0x0f, 0x65, 0x00], "pcmpgtw mm0, [rax]"); + test_display(&[0x0f, 0x66, 0x00], "pcmpgtd mm0, [rax]"); + test_display(&[0x0f, 0x67, 0x00], "packuswb mm0, [rax]"); + test_display(&[0x0f, 0x68, 0x00], "punpckhbw mm0, [rax]"); + test_display(&[0x0f, 0x69, 0x00], "punpckhbd mm0, [rax]"); + test_display(&[0x0f, 0x6a, 0x00], "punpckhdq mm0, [rax]"); + test_display(&[0x0f, 0x6b, 0x00], "packssdw mm0, [rax]"); test_invalid(&[0x0f, 0x6c]); test_invalid(&[0x0f, 0x6d]); test_display(&[0x0f, 0x6e], "movd mm0, dword [rax]"); -- cgit v1.1