mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-02-01 03:53:33 +00:00
e16a7d8f3b
`et` means `expandtab`. ```sh rg 'vi: .* :vi' -l -0 | \ xargs -0 sed -i '' 's/vi: \(.*\) et\(.*\) :vi/vi: \1 xoet\2:vi/' rg 'vi: .* :vi' -l -0 | \ xargs -0 sed -i '' 's/vi: \(.*\)noet\(.*\):vi/vi: \1et\2 :vi/' rg 'vi: .* :vi' -l -0 | \ xargs -0 sed -i '' 's/vi: \(.*\)xoet\(.*\):vi/vi: \1noet\2:vi/' ```
3705 lines
64 KiB
C
3705 lines
64 KiB
C
/*-*- mode:c;indent-tabs-mode:nil;c-basic-offset:2;tab-width:8;coding:utf-8 -*-│
|
||
│ vi: set et ft=c ts=2 sts=2 sw=2 fenc=utf-8 :vi │
|
||
╞══════════════════════════════════════════════════════════════════════════════╡
|
||
│ Copyright 2020 Justine Alexandra Roberts Tunney │
|
||
│ │
|
||
│ Permission to use, copy, modify, and/or distribute this software for │
|
||
│ any purpose with or without fee is hereby granted, provided that the │
|
||
│ above copyright notice and this permission notice appear in all copies. │
|
||
│ │
|
||
│ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL │
|
||
│ WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED │
|
||
│ WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE │
|
||
│ AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL │
|
||
│ DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR │
|
||
│ PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER │
|
||
│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │
|
||
│ PERFORMANCE OF THIS SOFTWARE. │
|
||
╚─────────────────────────────────────────────────────────────────────────────*/
|
||
#include "libc/testlib/testlib.h"
|
||
#include "test/libc/xed/lib.h"
|
||
#include "third_party/xed/x86.h"
|
||
|
||
/**
|
||
* @fileoverview GCC's popular i386+ instruction w/ NexGen32e encoding.
|
||
*/
|
||
|
||
TEST(x86ild, test_E800000000) {
|
||
/*
|
||
ICLASS: CALL_NEAR
|
||
CATEGORY: CALL
|
||
EXTENSION: BASE
|
||
IFORM: CALL_NEAR_RELBRd
|
||
ISA_SET: I86
|
||
SHORT: call 0x5
|
||
*/
|
||
EXPECT_EQ(5, ild(u"Φ "));
|
||
EXPECT_EQ(5, ildlegacy(u"Φ "));
|
||
EXPECT_EQ(3, ildreal(u"Φ "));
|
||
}
|
||
|
||
TEST(x86ild, test_C3) {
|
||
/*
|
||
ICLASS: RET_NEAR
|
||
CATEGORY: RET
|
||
EXTENSION: BASE
|
||
IFORM: RET_NEAR
|
||
ISA_SET: I86
|
||
SHORT: ret
|
||
*/
|
||
EXPECT_EQ(1, ild(u"├"));
|
||
}
|
||
|
||
TEST(x86ild, test_5A) {
|
||
/*
|
||
ICLASS: POP
|
||
CATEGORY: POP
|
||
EXTENSION: BASE
|
||
IFORM: POP_GPRv_58
|
||
ISA_SET: I86
|
||
SHORT: pop rdx
|
||
*/
|
||
EXPECT_EQ(1, ild(u"Z"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889DF) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rdi, rbx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë▀"));
|
||
}
|
||
|
||
TEST(x86ild, test_BA00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, 0x0
|
||
*/
|
||
EXPECT_EQ(5, ild(u"║ "));
|
||
}
|
||
|
||
TEST(x86ild, test_7500) {
|
||
/*
|
||
ICLASS: JNZ
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JNZ_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jnz 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"u "));
|
||
}
|
||
|
||
TEST(x86ild, test_B800000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, 0x0
|
||
*/
|
||
EXPECT_EQ(5, ild(u"╕ "));
|
||
}
|
||
|
||
TEST(x86ild, test_7400) {
|
||
/*
|
||
ICLASS: JZ
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JZ_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jz 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"t "));
|
||
}
|
||
|
||
TEST(x86ild, test_BE00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov esi, 0x0
|
||
*/
|
||
EXPECT_EQ(5, ild(u"╛ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4889C1) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rcx, rax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë┴"));
|
||
}
|
||
|
||
TEST(x86ild, test_EB00) {
|
||
/*
|
||
ICLASS: JMP
|
||
CATEGORY: UNCOND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JMP_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jmp 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"δ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B34D500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov esi, dword ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï4╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_E900000000) {
|
||
/*
|
||
ICLASS: JMP
|
||
CATEGORY: UNCOND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JMP_RELBRd
|
||
ISA_SET: I86
|
||
SHORT: jmp 0x5
|
||
*/
|
||
EXPECT_EQ(5, ild(u"Θ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B7300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov esi, dword ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ïs "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B04D500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, dword ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï♦╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_89D0) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov eax, edx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë╨"));
|
||
}
|
||
|
||
TEST(x86ild, test_0F8400000000) {
|
||
/*
|
||
ICLASS: JZ
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JZ_RELBRd
|
||
ISA_SET: I86
|
||
SHORT: jz 0x6
|
||
*/
|
||
EXPECT_EQ(6, ild(u"☼ä "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B14CD00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rcx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï¶═ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B34CD00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov esi, dword ptr [rcx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï4═ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A4300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov al, byte ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èC "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B4700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, dword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ïG "));
|
||
}
|
||
|
||
TEST(x86ild, test_5B) {
|
||
/*
|
||
ICLASS: POP
|
||
CATEGORY: POP
|
||
EXTENSION: BASE
|
||
IFORM: POP_GPRv_58
|
||
ISA_SET: I86
|
||
SHORT: pop rbx
|
||
*/
|
||
EXPECT_EQ(1, ild(u"["));
|
||
}
|
||
|
||
TEST(x86ild, test_66C705000000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rip], 0x0
|
||
*/
|
||
EXPECT_EQ(9, ild(u"f╟♣ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A4700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov al, byte ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èG "));
|
||
}
|
||
|
||
TEST(x86ild, test_FFD0) {
|
||
/*
|
||
ICLASS: CALL_NEAR
|
||
CATEGORY: CALL
|
||
EXTENSION: BASE
|
||
IFORM: CALL_NEAR_GPRv
|
||
ISA_SET: I86
|
||
SHORT: call rax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"λ╨"));
|
||
}
|
||
|
||
TEST(x86ild, test_C7050000000000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rip], 0x0
|
||
*/
|
||
EXPECT_EQ(10, ild(u"╟♣ "));
|
||
}
|
||
|
||
TEST(x86ild, test_53) {
|
||
/*
|
||
ICLASS: PUSH
|
||
CATEGORY: PUSH
|
||
EXTENSION: BASE
|
||
IFORM: PUSH_GPRv_50
|
||
ISA_SET: I86
|
||
SHORT: push rbx
|
||
*/
|
||
EXPECT_EQ(1, ild(u"S"));
|
||
}
|
||
|
||
TEST(x86ild, test_0F8500000000) {
|
||
/*
|
||
ICLASS: JNZ
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JNZ_RELBRd
|
||
ISA_SET: I86
|
||
SHORT: jnz 0x6
|
||
*/
|
||
EXPECT_EQ(6, ild(u"☼à "));
|
||
}
|
||
|
||
TEST(x86ild, test_C6050000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_IMMb
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rip], 0x0
|
||
*/
|
||
EXPECT_EQ(7, ild(u"╞♣ "));
|
||
}
|
||
|
||
TEST(x86ild, test_668B7300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov si, word ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fïs "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B4300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rax, qword ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"HïC "));
|
||
}
|
||
|
||
TEST(x86ild, test_BF00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov edi, 0x0
|
||
*/
|
||
EXPECT_EQ(5, ild(u"┐ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4889FB) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rbx, rdi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë√"));
|
||
}
|
||
|
||
TEST(x86ild, test_48B80000000000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov rax, 0x0
|
||
*/
|
||
EXPECT_EQ(10, ild(u"H╕ "));
|
||
}
|
||
|
||
TEST(x86ild, test_48BA0000000000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, 0x0
|
||
*/
|
||
EXPECT_EQ(10, ild(u"H║ "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B5300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, qword ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"HïS "));
|
||
}
|
||
|
||
TEST(x86ild, test_66898200000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rdx], ax
|
||
*/
|
||
EXPECT_EQ(7, ild(u"fëé "));
|
||
}
|
||
|
||
TEST(x86ild, test_66894700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rdi], ax
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fëG "));
|
||
}
|
||
|
||
TEST(x86ild, test_7700) {
|
||
/*
|
||
ICLASS: JNBE
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JNBE_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jnbe 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"w "));
|
||
}
|
||
|
||
TEST(x86ild, test_894700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdi], eax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ëG "));
|
||
}
|
||
|
||
TEST(x86ild, test_66899000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rax], dx
|
||
*/
|
||
EXPECT_EQ(7, ild(u"fëÉ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4889D0) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rax, rdx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë╨"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B4700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov ax, word ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fïG "));
|
||
}
|
||
|
||
TEST(x86ild, test_89C2) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edx, eax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë┬"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B8000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov ax, word ptr [rax]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"fïÇ "));
|
||
}
|
||
|
||
TEST(x86ild, test_668B9500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov dx, word ptr [rbp]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"fïò "));
|
||
}
|
||
|
||
TEST(x86ild, test_5D) {
|
||
/*
|
||
ICLASS: POP
|
||
CATEGORY: POP
|
||
EXTENSION: BASE
|
||
IFORM: POP_GPRv_58
|
||
ISA_SET: I86
|
||
SHORT: pop rbp
|
||
*/
|
||
EXPECT_EQ(1, ild(u"]"));
|
||
}
|
||
|
||
TEST(x86ild, test_55) {
|
||
/*
|
||
ICLASS: PUSH
|
||
CATEGORY: PUSH
|
||
EXTENSION: BASE
|
||
IFORM: PUSH_GPRv_50
|
||
ISA_SET: I86
|
||
SHORT: push rbp
|
||
*/
|
||
EXPECT_EQ(1, ild(u"U"));
|
||
}
|
||
|
||
TEST(x86ild, test_89C8) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov eax, ecx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë╚"));
|
||
}
|
||
|
||
TEST(x86ild, test_8B0CD500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov ecx, dword ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï♀╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A4F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov cl, byte ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èO "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B148500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rax*4]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï¶à "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A5300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov dl, byte ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èS "));
|
||
}
|
||
|
||
TEST(x86ild, test_884F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rdi], cl
|
||
*/
|
||
EXPECT_EQ(3, ild(u"êO "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B8000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, dword ptr [rax]
|
||
*/
|
||
EXPECT_EQ(6, ild(u"ïÇ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B9500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rbp]
|
||
*/
|
||
EXPECT_EQ(6, ild(u"ïò "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A5700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov dl, byte ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èW "));
|
||
}
|
||
|
||
TEST(x86ild, test_884300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rbx], al
|
||
*/
|
||
EXPECT_EQ(3, ild(u"êC "));
|
||
}
|
||
|
||
TEST(x86ild, test_884700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rdi], al
|
||
*/
|
||
EXPECT_EQ(3, ild(u"êG "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A4800) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov cl, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èH "));
|
||
}
|
||
|
||
TEST(x86ild, test_66C780000000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rax], 0x0
|
||
*/
|
||
EXPECT_EQ(9, ild(u"fǀ "));
|
||
}
|
||
|
||
TEST(x86ild, test_885700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rdi], dl
|
||
*/
|
||
EXPECT_EQ(3, ild(u"êW "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B5700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ïW "));
|
||
}
|
||
|
||
TEST(x86ild, test_48C7050000000000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rip], 0x0
|
||
*/
|
||
EXPECT_EQ(11, ild(u"H╟♣ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B4300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, dword ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ïC "));
|
||
}
|
||
|
||
TEST(x86ild, test_E200) {
|
||
/*
|
||
ICLASS: LOOP
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: LOOP_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: loop 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"Γ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B049500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, dword ptr [rdx*4]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï♦ò "));
|
||
}
|
||
|
||
TEST(x86ild, test_89F0) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov eax, esi
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë≡"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B5300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov dx, word ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fïS "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B7700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov esi, dword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ïw "));
|
||
}
|
||
|
||
TEST(x86ild, test_66897700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rdi], si
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fëw "));
|
||
}
|
||
|
||
TEST(x86ild, test_66894300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rbx], ax
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fëC "));
|
||
}
|
||
|
||
TEST(x86ild, test_8902) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdx], eax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë☻"));
|
||
}
|
||
|
||
TEST(x86ild, test_408A7000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov sil, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"@èp "));
|
||
}
|
||
|
||
TEST(x86ild, test_88C2) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov dl, al
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ê┬"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B14AD00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov dx, word ptr [rbp*4]
|
||
*/
|
||
EXPECT_EQ(8, ild(u"fﶡ "));
|
||
}
|
||
|
||
TEST(x86ild, test_668B4300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov ax, word ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fïC "));
|
||
}
|
||
|
||
TEST(x86ild, test_4088CE) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov sil, cl
|
||
*/
|
||
EXPECT_EQ(3, ild(u"@ê╬"));
|
||
}
|
||
|
||
TEST(x86ild, test_89C1) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov ecx, eax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë┴"));
|
||
}
|
||
|
||
TEST(x86ild, test_8B14D500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï¶╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B149500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rdx*4]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï¶ò "));
|
||
}
|
||
|
||
TEST(x86ild, test_884B00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rbx], cl
|
||
*/
|
||
EXPECT_EQ(3, ild(u"êK "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B4700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rax, qword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"HïG "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B4F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov ecx, dword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ïO "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A08) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov cl, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(2, ild(u"è◘"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B5700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov dx, word ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fïW "));
|
||
}
|
||
|
||
TEST(x86ild, test_C6470000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_IMMb
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rdi], 0x0
|
||
*/
|
||
EXPECT_EQ(4, ild(u"╞G "));
|
||
}
|
||
|
||
TEST(x86ild, test_66895700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rdi], dx
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fëW "));
|
||
}
|
||
|
||
TEST(x86ild, test_FF24D500000000) {
|
||
/*
|
||
ICLASS: JMP
|
||
CATEGORY: UNCOND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JMP_MEMv
|
||
ISA_SET: I86
|
||
SHORT: jmp qword ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"λ$╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A4B00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov cl, byte ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èK "));
|
||
}
|
||
|
||
TEST(x86ild, test_7200) {
|
||
/*
|
||
ICLASS: JB
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JB_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jb 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"r "));
|
||
}
|
||
|
||
TEST(x86ild, test_88C1) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov cl, al
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ê┴"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B14D500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov dx, word ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(8, ild(u"fï¶╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A4000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov al, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"è@ "));
|
||
}
|
||
|
||
TEST(x86ild, test_C6430000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_IMMb
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rbx], 0x0
|
||
*/
|
||
EXPECT_EQ(4, ild(u"╞C "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B14ED00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rbp*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï¶φ "));
|
||
}
|
||
|
||
TEST(x86ild, test_668B14ED00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov dx, word ptr [rbp*8]
|
||
*/
|
||
EXPECT_EQ(8, ild(u"fï¶φ "));
|
||
}
|
||
|
||
TEST(x86ild, test_408A7300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov sil, byte ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"@ès "));
|
||
}
|
||
|
||
TEST(x86ild, test_7800) {
|
||
/*
|
||
ICLASS: JS
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JS_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: js 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"x "));
|
||
}
|
||
|
||
TEST(x86ild, test_40887300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rbx], sil
|
||
*/
|
||
EXPECT_EQ(4, ild(u"@ês "));
|
||
}
|
||
|
||
TEST(x86ild, test_48890500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rip], rax
|
||
*/
|
||
EXPECT_EQ(7, ild(u"Hë♣ "));
|
||
}
|
||
|
||
TEST(x86ild, test_B900000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov ecx, 0x0
|
||
*/
|
||
EXPECT_EQ(5, ild(u"╣ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B742400) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov esi, dword ptr [rsp]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"ït$ "));
|
||
}
|
||
|
||
TEST(x86ild, test_89F2) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edx, esi
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë≥"));
|
||
}
|
||
|
||
TEST(x86ild, test_4088F7) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov dil, sil
|
||
*/
|
||
EXPECT_EQ(3, ild(u"@ê≈"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B942D00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov dx, word ptr [rbp+rbp*1]
|
||
*/
|
||
EXPECT_EQ(8, ild(u"fïö- "));
|
||
}
|
||
|
||
TEST(x86ild, test_408A7700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov sil, byte ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"@èw "));
|
||
}
|
||
|
||
TEST(x86ild, test_89742400) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rsp], esi
|
||
*/
|
||
EXPECT_EQ(4, ild(u"ët$ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4889EF) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rdi, rbp
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë∩"));
|
||
}
|
||
|
||
TEST(x86ild, test_7900) {
|
||
/*
|
||
ICLASS: JNS
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JNS_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jns 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"y "));
|
||
}
|
||
|
||
TEST(x86ild, test_89FF) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edi, edi
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ëλ"));
|
||
}
|
||
|
||
TEST(x86ild, test_89CE) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov esi, ecx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë╬"));
|
||
}
|
||
|
||
TEST(x86ild, test_7600) {
|
||
/*
|
||
ICLASS: JBE
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JBE_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jbe 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"v "));
|
||
}
|
||
|
||
TEST(x86ild, test_4889C6) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rsi, rax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë╞"));
|
||
}
|
||
|
||
TEST(x86ild, test_8B048500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, dword ptr [rax*4]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï♦à "));
|
||
}
|
||
|
||
TEST(x86ild, test_415C) {
|
||
/*
|
||
ICLASS: POP
|
||
CATEGORY: POP
|
||
EXTENSION: BASE
|
||
IFORM: POP_GPRv_58
|
||
ISA_SET: I86
|
||
SHORT: pop r12
|
||
*/
|
||
EXPECT_EQ(2, ild(u"A\\"));
|
||
}
|
||
|
||
TEST(x86ild, test_488B04C500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rax, qword ptr [rax*8]
|
||
*/
|
||
EXPECT_EQ(8, ild(u"Hï♦┼ "));
|
||
}
|
||
|
||
TEST(x86ild, test_885300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rbx], dl
|
||
*/
|
||
EXPECT_EQ(3, ild(u"êS "));
|
||
}
|
||
|
||
TEST(x86ild, test_4889FD) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rbp, rdi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë²"));
|
||
}
|
||
|
||
TEST(x86ild, test_4088F0) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov al, sil
|
||
*/
|
||
EXPECT_EQ(3, ild(u"@ê≡"));
|
||
}
|
||
|
||
TEST(x86ild, test_89442400) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rsp], eax
|
||
*/
|
||
EXPECT_EQ(4, ild(u"ëD$ "));
|
||
}
|
||
|
||
TEST(x86ild, test_894300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rbx], eax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ëC "));
|
||
}
|
||
|
||
TEST(x86ild, test_88D0) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov al, dl
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ê╨"));
|
||
}
|
||
|
||
TEST(x86ild, test_4154) {
|
||
/*
|
||
ICLASS: PUSH
|
||
CATEGORY: PUSH
|
||
EXTENSION: BASE
|
||
IFORM: PUSH_GPRv_50
|
||
ISA_SET: I86
|
||
SHORT: push r12
|
||
*/
|
||
EXPECT_EQ(2, ild(u"AT"));
|
||
}
|
||
|
||
TEST(x86ild, test_7300) {
|
||
/*
|
||
ICLASS: JNB
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JNB_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jnb 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"s "));
|
||
}
|
||
|
||
TEST(x86ild, test_448A4700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov r8b, byte ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"DèG "));
|
||
}
|
||
|
||
TEST(x86ild, test_89F7) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edi, esi
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë≈"));
|
||
}
|
||
|
||
TEST(x86ild, test_89C0) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov eax, eax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë└"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B4F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov cx, word ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fïO "));
|
||
}
|
||
|
||
TEST(x86ild, test_BB00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov ebx, 0x0
|
||
*/
|
||
EXPECT_EQ(5, ild(u"╗ "));
|
||
}
|
||
|
||
TEST(x86ild, test_88C8) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov al, cl
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ê╚"));
|
||
}
|
||
|
||
TEST(x86ild, test_66894F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rdi], cx
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fëO "));
|
||
}
|
||
|
||
TEST(x86ild, test_415D) {
|
||
/*
|
||
ICLASS: POP
|
||
CATEGORY: POP
|
||
EXTENSION: BASE
|
||
IFORM: POP_GPRv_58
|
||
ISA_SET: I86
|
||
SHORT: pop r13
|
||
*/
|
||
EXPECT_EQ(2, ild(u"A]"));
|
||
}
|
||
|
||
TEST(x86ild, test_FFE0) {
|
||
/*
|
||
ICLASS: JMP
|
||
CATEGORY: UNCOND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JMP_GPRv
|
||
ISA_SET: I86
|
||
SHORT: jmp rax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"λα"));
|
||
}
|
||
|
||
TEST(x86ild, test_FFD2) {
|
||
/*
|
||
ICLASS: CALL_NEAR
|
||
CATEGORY: CALL
|
||
EXTENSION: BASE
|
||
IFORM: CALL_NEAR_GPRv
|
||
ISA_SET: I86
|
||
SHORT: call rdx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"λ╥"));
|
||
}
|
||
|
||
TEST(x86ild, test_FF24C500000000) {
|
||
/*
|
||
ICLASS: JMP
|
||
CATEGORY: UNCOND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JMP_MEMv
|
||
ISA_SET: I86
|
||
SHORT: jmp qword ptr [rax*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"λ$┼ "));
|
||
}
|
||
|
||
TEST(x86ild, test_E000) {
|
||
/*
|
||
ICLASS: LOOPNE
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: LOOPNE_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: loopne 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"α "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B4000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, dword ptr [rax]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ï@ "));
|
||
}
|
||
|
||
TEST(x86ild, test_89D1) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov ecx, edx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë╤"));
|
||
}
|
||
|
||
TEST(x86ild, test_8B14AD00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rbp*4]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ﶡ "));
|
||
}
|
||
|
||
TEST(x86ild, test_895700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdi], edx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ëW "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B5700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, qword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"HïW "));
|
||
}
|
||
|
||
TEST(x86ild, test_4155) {
|
||
/*
|
||
ICLASS: PUSH
|
||
CATEGORY: PUSH
|
||
EXTENSION: BASE
|
||
IFORM: PUSH_GPRv_50
|
||
ISA_SET: I86
|
||
SHORT: push r13
|
||
*/
|
||
EXPECT_EQ(2, ild(u"AU"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B840000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov ax, word ptr [rax+rax*1]
|
||
*/
|
||
EXPECT_EQ(8, ild(u"fïä "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B8000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rax, qword ptr [rax]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"HïÇ "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B4B00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rcx, qword ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"HïK "));
|
||
}
|
||
|
||
TEST(x86ild, test_0F8700000000) {
|
||
/*
|
||
ICLASS: JNBE
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JNBE_RELBRd
|
||
ISA_SET: I86
|
||
SHORT: jnbe 0x6
|
||
*/
|
||
EXPECT_EQ(6, ild(u"☼ç "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B5300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ïS "));
|
||
}
|
||
|
||
TEST(x86ild, test_668B048500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov ax, word ptr [rax*4]
|
||
*/
|
||
EXPECT_EQ(8, ild(u"fï♦à "));
|
||
}
|
||
|
||
TEST(x86ild, test_66898100000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rcx], ax
|
||
*/
|
||
EXPECT_EQ(7, ild(u"fëü "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B17) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
g EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, qword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hï↨"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889C2) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, rax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë┬"));
|
||
}
|
||
|
||
TEST(x86ild, test_C7400000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rax], 0x0
|
||
*/
|
||
EXPECT_EQ(7, ild(u"╟@ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4C89E7) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rdi, r12
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Lëτ"));
|
||
}
|
||
|
||
TEST(x86ild, test_488B3B) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdi, qword ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hï;"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889EE) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rsi, rbp
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hëε"));
|
||
}
|
||
|
||
TEST(x86ild, test_4488C0) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov al, r8b
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dê└"));
|
||
}
|
||
|
||
TEST(x86ild, test_415E) {
|
||
/*
|
||
ICLASS: POP
|
||
CATEGORY: POP
|
||
EXTENSION: BASE
|
||
IFORM: POP_GPRv_58
|
||
ISA_SET: I86
|
||
SHORT: pop r14
|
||
*/
|
||
EXPECT_EQ(2, ild(u"A^"));
|
||
}
|
||
|
||
TEST(x86ild, test_4156) {
|
||
/*
|
||
ICLASS: PUSH
|
||
CATEGORY: PUSH
|
||
EXTENSION: BASE
|
||
IFORM: PUSH_GPRv_50
|
||
ISA_SET: I86
|
||
SHORT: push r14
|
||
*/
|
||
EXPECT_EQ(2, ild(u"AV"));
|
||
}
|
||
|
||
TEST(x86ild, test_8B542400) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rsp]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"ïT$ "));
|
||
}
|
||
|
||
TEST(x86ild, test_89C7) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edi, eax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë╟"));
|
||
}
|
||
|
||
TEST(x86ild, test_488B8700000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rax, qword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"Hïç "));
|
||
}
|
||
|
||
TEST(x86ild, test_448A4F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov r9b, byte ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"DèO "));
|
||
}
|
||
|
||
TEST(x86ild, test_408A30) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov sil, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"@è0"));
|
||
}
|
||
|
||
TEST(x86ild, test_4189C6) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov r14d, eax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Aë╞"));
|
||
}
|
||
|
||
TEST(x86ild, test_897300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rbx], esi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ës "));
|
||
}
|
||
|
||
TEST(x86ild, test_894F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdi], ecx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ëO "));
|
||
}
|
||
|
||
TEST(x86ild, test_4489E6) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov esi, r12d
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dëμ"));
|
||
}
|
||
|
||
TEST(x86ild, test_4488C8) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov al, r9b
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dê╚"));
|
||
}
|
||
|
||
TEST(x86ild, test_8A10) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov dl, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(2, ild(u"è►"));
|
||
}
|
||
|
||
TEST(x86ild, test_894200) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdx], eax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ëB "));
|
||
}
|
||
|
||
TEST(x86ild, test_88D1) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov cl, dl
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ê╤"));
|
||
}
|
||
|
||
TEST(x86ild, test_58) {
|
||
/*
|
||
ICLASS: POP
|
||
CATEGORY: POP
|
||
EXTENSION: BASE
|
||
IFORM: POP_GPRv_58
|
||
ISA_SET: I86
|
||
SHORT: pop rax
|
||
*/
|
||
EXPECT_EQ(1, ild(u"X"));
|
||
}
|
||
|
||
TEST(x86ild, test_48B90000000000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov rcx, 0x0
|
||
*/
|
||
EXPECT_EQ(10, ild(u"H╣ "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B14D500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, qword ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(8, ild(u"Hï¶╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4489F2) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edx, r14d
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dë≥"));
|
||
}
|
||
|
||
TEST(x86ild, test_4489EA) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edx, r13d
|
||
*/
|
||
EXPECT_EQ(3, ild(u"DëΩ"));
|
||
}
|
||
|
||
TEST(x86ild, test_8B04BD00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, dword ptr [rdi*4]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"ï♦╜ "));
|
||
}
|
||
|
||
TEST(x86ild, test_89F1) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov ecx, esi
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë±"));
|
||
}
|
||
|
||
TEST(x86ild, test_488B7F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdi, qword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"Hï⌂ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4488C2) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov dl, r8b
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dê┬"));
|
||
}
|
||
|
||
TEST(x86ild, test_4189C4) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov r12d, eax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Aë─"));
|
||
}
|
||
|
||
TEST(x86ild, test_8A049500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov al, byte ptr [rdx*4]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"è♦ò "));
|
||
}
|
||
|
||
TEST(x86ild, test_89F6) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov esi, esi
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë÷"));
|
||
}
|
||
|
||
TEST(x86ild, test_89EE) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov esi, ebp
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ëε"));
|
||
}
|
||
|
||
TEST(x86ild, test_89DE) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov esi, ebx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë▐"));
|
||
}
|
||
|
||
TEST(x86ild, test_89DA) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edx, ebx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë┌"));
|
||
}
|
||
|
||
TEST(x86ild, test_89C3) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov ebx, eax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë├"));
|
||
}
|
||
|
||
TEST(x86ild, test_7E00) {
|
||
/*
|
||
ICLASS: JLE
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JLE_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jle 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"~ "));
|
||
}
|
||
|
||
TEST(x86ild, test_66897300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov word ptr [rbx], si
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fës "));
|
||
}
|
||
|
||
TEST(x86ild, test_4889F3) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rbx, rsi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë≤"));
|
||
}
|
||
|
||
TEST(x86ild, test_4489C1) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov ecx, r8d
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dë┴"));
|
||
}
|
||
|
||
TEST(x86ild, test_40886B00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rbx], bpl
|
||
*/
|
||
EXPECT_EQ(4, ild(u"@êk "));
|
||
}
|
||
|
||
TEST(x86ild, test_C7800000000000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rax], 0x0
|
||
*/
|
||
EXPECT_EQ(10, ild(u"ǀ "));
|
||
}
|
||
|
||
TEST(x86ild, test_C7420000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdx], 0x0
|
||
*/
|
||
EXPECT_EQ(7, ild(u"╟B "));
|
||
}
|
||
|
||
TEST(x86ild, test_899000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rax], edx
|
||
*/
|
||
EXPECT_EQ(6, ild(u"ëÉ "));
|
||
}
|
||
|
||
TEST(x86ild, test_59) {
|
||
/*
|
||
ICLASS: POP
|
||
CATEGORY: POP
|
||
EXTENSION: BASE
|
||
IFORM: POP_GPRv_58
|
||
ISA_SET: I86
|
||
SHORT: pop rcx
|
||
*/
|
||
EXPECT_EQ(1, ild(u"Y"));
|
||
}
|
||
|
||
TEST(x86ild, test_48D3E2) {
|
||
/*
|
||
ICLASS: SHL
|
||
CATEGORY: SHIFT
|
||
EXTENSION: BASE
|
||
IFORM: SHL_GPRv_CL_D3r4
|
||
ISA_SET: I86
|
||
SHORT: shl rdx, cl
|
||
*/
|
||
EXPECT_EQ(3, ild(u"H╙Γ"));
|
||
}
|
||
|
||
TEST(x86ild, test_48C7470000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rdi], 0x0
|
||
*/
|
||
EXPECT_EQ(8, ild(u"H╟G "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B4F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rcx, qword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"HïO "));
|
||
}
|
||
|
||
TEST(x86ild, test_4863F6) {
|
||
/*
|
||
ICLASS: MOVSXD
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: LONGMODE
|
||
IFORM: MOVSXD_GPRv_GPR32
|
||
ISA_SET: LONGMODE
|
||
SHORT: movsxd rsi, esi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hc÷"));
|
||
}
|
||
|
||
TEST(x86ild, test_4489E2) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edx, r12d
|
||
*/
|
||
EXPECT_EQ(3, ild(u"DëΓ"));
|
||
}
|
||
|
||
TEST(x86ild, test_415F) {
|
||
/*
|
||
ICLASS: POP
|
||
CATEGORY: POP
|
||
EXTENSION: BASE
|
||
IFORM: POP_GPRv_58
|
||
ISA_SET: I86
|
||
SHORT: pop r15
|
||
*/
|
||
EXPECT_EQ(2, ild(u"A_"));
|
||
}
|
||
|
||
TEST(x86ild, test_4157) {
|
||
/*
|
||
ICLASS: PUSH
|
||
CATEGORY: PUSH
|
||
EXTENSION: BASE
|
||
IFORM: PUSH_GPRv_50
|
||
ISA_SET: I86
|
||
SHORT: push r15
|
||
*/
|
||
EXPECT_EQ(2, ild(u"AW"));
|
||
}
|
||
|
||
TEST(x86ild, test_408A6B00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov bpl, byte ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"@èk "));
|
||
}
|
||
|
||
TEST(x86ild, test_4088C6) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov sil, al
|
||
*/
|
||
EXPECT_EQ(3, ild(u"@ê╞"));
|
||
}
|
||
|
||
TEST(x86ild, test_8A4600) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov al, byte ptr [rsi]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èF "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A04D500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov al, byte ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"è♦╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_89F8) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov eax, edi
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë°"));
|
||
}
|
||
|
||
TEST(x86ild, test_89C6) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov esi, eax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë╞"));
|
||
}
|
||
|
||
TEST(x86ild, test_89542400) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rsp], edx
|
||
*/
|
||
EXPECT_EQ(4, ild(u"ëT$ "));
|
||
}
|
||
|
||
TEST(x86ild, test_88CA) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov dl, cl
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ê╩"));
|
||
}
|
||
|
||
TEST(x86ild, test_4C89EF) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rdi, r13
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Lë∩"));
|
||
}
|
||
|
||
TEST(x86ild, test_48C70700000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rdi], 0x0
|
||
*/
|
||
EXPECT_EQ(7, ild(u"H╟• "));
|
||
}
|
||
|
||
TEST(x86ild, test_48897700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rdi], rsi
|
||
*/
|
||
EXPECT_EQ(4, ild(u"Hëw "));
|
||
}
|
||
|
||
TEST(x86ild, test_448B6C2400) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov r13d, dword ptr [rsp]
|
||
*/
|
||
EXPECT_EQ(5, ild(u"Dïl$ "));
|
||
}
|
||
|
||
TEST(x86ild, test_FF24CD00000000) {
|
||
/*
|
||
ICLASS: JMP
|
||
CATEGORY: UNCOND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JMP_MEMv
|
||
ISA_SET: I86
|
||
SHORT: jmp qword ptr [rcx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"λ$═ "));
|
||
}
|
||
|
||
TEST(x86ild, test_F2AE) {
|
||
/*
|
||
ICLASS: REPNE_SCASB
|
||
CATEGORY: STRINGOP
|
||
EXTENSION: BASE
|
||
IFORM: REPNE_SCASB
|
||
ISA_SET: I86
|
||
SHORT: repne scasb byte ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(2, ild(u"≥«"));
|
||
}
|
||
|
||
TEST(x86ild, test_E90083E000) {
|
||
/*
|
||
ICLASS: JMP
|
||
CATEGORY: UNCOND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JMP_RELBRd
|
||
ISA_SET: I86
|
||
SHORT: jmp 0xe08305
|
||
*/
|
||
EXPECT_EQ(5, ild(u"Θ âα "));
|
||
}
|
||
|
||
TEST(x86ild, test_C7040700000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdi+rax*1], 0x0
|
||
*/
|
||
EXPECT_EQ(7, ild(u"╟♦• "));
|
||
}
|
||
|
||
TEST(x86ild, test_C644240000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_IMMb
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rsp], 0x0
|
||
*/
|
||
EXPECT_EQ(5, ild(u"╞D$ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B9200000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edx, dword ptr [rdx]
|
||
*/
|
||
EXPECT_EQ(6, ild(u"ïÆ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B7D00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edi, dword ptr [rbp]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ï} "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A8000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov al, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(6, ild(u"èÇ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A5000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov dl, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èP "));
|
||
}
|
||
|
||
TEST(x86ild, test_89F5) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov ebp, esi
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë⌡"));
|
||
}
|
||
|
||
TEST(x86ild, test_89EA) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edx, ebp
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ëΩ"));
|
||
}
|
||
|
||
TEST(x86ild, test_89E8) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov eax, ebp
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ëΦ"));
|
||
}
|
||
|
||
TEST(x86ild, test_668B7B00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov di, word ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fï{ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4989FC) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov r12, rdi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Iëⁿ"));
|
||
}
|
||
|
||
TEST(x86ild, test_48D3E0) {
|
||
/*
|
||
ICLASS: SHL
|
||
CATEGORY: SHIFT
|
||
EXTENSION: BASE
|
||
IFORM: SHL_GPRv_CL_D3r4
|
||
ISA_SET: I86
|
||
SHORT: shl rax, cl
|
||
*/
|
||
EXPECT_EQ(3, ild(u"H╙α"));
|
||
}
|
||
|
||
TEST(x86ild, test_48BE0000000000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov rsi, 0x0
|
||
*/
|
||
EXPECT_EQ(10, ild(u"H╛ "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B6F00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rbp, qword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"Hïo "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B5500) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, qword ptr [rbp]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"HïU "));
|
||
}
|
||
|
||
TEST(x86ild, test_4889E5) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rbp, rsp
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hëσ"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889D5) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rbp, rdx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë╒"));
|
||
}
|
||
|
||
TEST(x86ild, test_448B442400) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov r8d, dword ptr [rsp]
|
||
*/
|
||
EXPECT_EQ(5, ild(u"DïD$ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4488C6) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov sil, r8b
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dê╞"));
|
||
}
|
||
|
||
TEST(x86ild, test_4189C5) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov r13d, eax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Aë┼"));
|
||
}
|
||
|
||
TEST(x86ild, test_0F8D00000000) {
|
||
/*
|
||
ICLASS: JNL
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JNL_RELBRd
|
||
ISA_SET: I86
|
||
SHORT: jnl 0x6
|
||
*/
|
||
EXPECT_EQ(6, ild(u"☼ì "));
|
||
}
|
||
|
||
TEST(x86ild, test_C6400000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_IMMb
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rax], 0x0
|
||
*/
|
||
EXPECT_EQ(4, ild(u"╞@ "));
|
||
}
|
||
|
||
TEST(x86ild, test_B000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_IMMb_B0
|
||
ISA_SET: I86
|
||
SHORT: mov al, 0x0
|
||
*/
|
||
EXPECT_EQ(2, ild(u"░ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8BB900000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov edi, dword ptr [rcx]
|
||
*/
|
||
EXPECT_EQ(6, ild(u"ï╣ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8BB000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov esi, dword ptr [rax]
|
||
*/
|
||
EXPECT_EQ(6, ild(u"ï░ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov al, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(2, ild(u"è "));
|
||
}
|
||
|
||
TEST(x86ild, test_89C5) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov ebp, eax
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë┼"));
|
||
}
|
||
|
||
TEST(x86ild, test_896A00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdx], ebp
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ëj "));
|
||
}
|
||
|
||
TEST(x86ild, test_8802) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rdx], al
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ê☻"));
|
||
}
|
||
|
||
TEST(x86ild, test_7F00) {
|
||
/*
|
||
ICLASS: JNLE
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JNLE_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jnle 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"⌂ "));
|
||
}
|
||
|
||
TEST(x86ild, test_7D00) {
|
||
/*
|
||
ICLASS: JNL
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JNL_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jnl 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"} "));
|
||
}
|
||
|
||
TEST(x86ild, test_668B7700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov si, word ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"fïw "));
|
||
}
|
||
|
||
TEST(x86ild, test_48D3EA) {
|
||
/*
|
||
ICLASS: SHR
|
||
CATEGORY: SHIFT
|
||
EXTENSION: BASE
|
||
IFORM: SHR_GPRv_CL
|
||
ISA_SET: I86
|
||
SHORT: shr rdx, cl
|
||
*/
|
||
EXPECT_EQ(3, ild(u"H╙Ω"));
|
||
}
|
||
|
||
TEST(x86ild, test_488B3D00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdi, qword ptr [rip]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"Hï= "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B14DD00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, qword ptr [rbx*8]
|
||
*/
|
||
EXPECT_EQ(8, ild(u"Hï¶▌ "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B0500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rax, qword ptr [rip]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"Hï♣ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4889FE) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rsi, rdi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë■"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889D9) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rcx, rbx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë┘"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889C8) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rax, rcx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë╚"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889C3) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rbx, rax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë├"));
|
||
}
|
||
|
||
TEST(x86ild, test_488937) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rdi], rsi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë7"));
|
||
}
|
||
|
||
TEST(x86ild, test_4863C9) {
|
||
/*
|
||
ICLASS: MOVSXD
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: LONGMODE
|
||
IFORM: MOVSXD_GPRv_GPR32
|
||
ISA_SET: LONGMODE
|
||
SHORT: movsxd rcx, ecx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hc╔"));
|
||
}
|
||
|
||
TEST(x86ild, test_448B7C2400) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov r15d, dword ptr [rsp]
|
||
*/
|
||
EXPECT_EQ(5, ild(u"Dï|$ "));
|
||
}
|
||
|
||
TEST(x86ild, test_448A5700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov r10b, byte ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"DèW "));
|
||
}
|
||
|
||
TEST(x86ild, test_448A4300) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov r8b, byte ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"DèC "));
|
||
}
|
||
|
||
TEST(x86ild, test_4488D2) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov dl, r10b
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dê╥"));
|
||
}
|
||
|
||
TEST(x86ild, test_4488C9) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_GPR8_88
|
||
ISA_SET: I86
|
||
SHORT: mov cl, r9b
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dê╔"));
|
||
}
|
||
|
||
TEST(x86ild, test_41BC00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov r12d, 0x0
|
||
*/
|
||
EXPECT_EQ(6, ild(u"A╝ "));
|
||
}
|
||
|
||
TEST(x86ild, test_4189F5) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov r13d, esi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Aë⌡"));
|
||
}
|
||
|
||
TEST(x86ild, test_40887700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMb_GPR8
|
||
ISA_SET: I86
|
||
SHORT: mov byte ptr [rdi], sil
|
||
*/
|
||
EXPECT_EQ(4, ild(u"@êw "));
|
||
}
|
||
|
||
TEST(x86ild, test_decode) {
|
||
/*
|
||
*/
|
||
EXPECT_EQ(2, ild(u"▐═"));
|
||
}
|
||
|
||
TEST(x86ild, test_D3E0) {
|
||
/*
|
||
ICLASS: SHL
|
||
CATEGORY: SHIFT
|
||
EXTENSION: BASE
|
||
IFORM: SHL_GPRv_CL_D3r4
|
||
ISA_SET: I86
|
||
SHORT: shl eax, cl
|
||
*/
|
||
EXPECT_EQ(2, ild(u"╙α"));
|
||
}
|
||
|
||
TEST(x86ild, test_BD00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_IMMv
|
||
ISA_SET: I86
|
||
SHORT: mov ebp, 0x0
|
||
*/
|
||
EXPECT_EQ(5, ild(u"╜ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B4B00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov ecx, dword ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ïK "));
|
||
}
|
||
|
||
TEST(x86ild, test_8B07) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov eax, dword ptr [rdi]
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ï•"));
|
||
}
|
||
|
||
TEST(x86ild, test_8A9000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov dl, byte ptr [rax]
|
||
*/
|
||
EXPECT_EQ(6, ild(u"èÉ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A4A00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov cl, byte ptr [rdx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èJ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A4500) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov al, byte ptr [rbp]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"èE "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A14D500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov dl, byte ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"è¶╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A0CD500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov cl, byte ptr [rdx*8]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"è♀╒ "));
|
||
}
|
||
|
||
TEST(x86ild, test_8A0C08) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPR8_MEMb
|
||
ISA_SET: I86
|
||
SHORT: mov cl, byte ptr [rax+rcx*1]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"è♀◘"));
|
||
}
|
||
|
||
TEST(x86ild, test_89D6) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov esi, edx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë╓"));
|
||
}
|
||
|
||
TEST(x86ild, test_89D5) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov ebp, edx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë╒"));
|
||
}
|
||
|
||
TEST(x86ild, test_897700) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdi], esi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ëw "));
|
||
}
|
||
|
||
TEST(x86ild, test_895A00) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rdx], ebx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ëZ "));
|
||
}
|
||
|
||
TEST(x86ild, test_895000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rax], edx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"ëP "));
|
||
}
|
||
|
||
TEST(x86ild, test_8910) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov dword ptr [rax], edx
|
||
*/
|
||
EXPECT_EQ(2, ild(u"ë►"));
|
||
}
|
||
|
||
TEST(x86ild, test_7C00) {
|
||
/*
|
||
ICLASS: JL
|
||
CATEGORY: COND_BR
|
||
EXTENSION: BASE
|
||
IFORM: JL_RELBRb
|
||
ISA_SET: I86
|
||
SHORT: jl 0x2
|
||
*/
|
||
EXPECT_EQ(2, ild(u"| "));
|
||
}
|
||
|
||
TEST(x86ild, test_4C89C1) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rcx, r8
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Lë┴"));
|
||
}
|
||
|
||
TEST(x86ild, test_498B5500) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, qword ptr [r13]
|
||
*/
|
||
EXPECT_EQ(4, ild(u"IïU "));
|
||
}
|
||
|
||
TEST(x86ild, test_4989D5) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov r13, rdx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Ië╒"));
|
||
}
|
||
|
||
TEST(x86ild, test_48D3E8) {
|
||
/*
|
||
ICLASS: SHR
|
||
CATEGORY: SHIFT
|
||
EXTENSION: BASE
|
||
IFORM: SHR_GPRv_CL
|
||
ISA_SET: I86
|
||
SHORT: shr rax, cl
|
||
*/
|
||
EXPECT_EQ(3, ild(u"H╙Φ"));
|
||
}
|
||
|
||
TEST(x86ild, test_48C7430000000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_IMMz
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rbx], 0x0
|
||
*/
|
||
EXPECT_EQ(8, ild(u"H╟C "));
|
||
}
|
||
|
||
TEST(x86ild, test_4898) {
|
||
/*
|
||
ICLASS: CDQE
|
||
CATEGORY: CONVERT
|
||
EXTENSION: LONGMODE
|
||
IFORM: CDQE
|
||
ISA_SET: LONGMODE
|
||
SHORT: cdqe
|
||
*/
|
||
EXPECT_EQ(2, ild(u"Hÿ"));
|
||
}
|
||
|
||
TEST(x86ild, test_488B9600000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rdx, qword ptr [rsi]
|
||
*/
|
||
EXPECT_EQ(7, ild(u"Hïû "));
|
||
}
|
||
|
||
TEST(x86ild, test_488B0B) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_MEMv
|
||
ISA_SET: I86
|
||
SHORT: mov rcx, qword ptr [rbx]
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hï♂"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889F7) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rdi, rsi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë≈"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889F5) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rbp, rsi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë⌡"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889F0) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rax, rsi
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë≡"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889DE) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rsi, rbx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë▐"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889D1) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rcx, rdx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë╤"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889CE) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rsi, rcx
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë╬"));
|
||
}
|
||
|
||
TEST(x86ild, test_4889C7) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov rdi, rax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë╟"));
|
||
}
|
||
|
||
TEST(x86ild, test_48893D00000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rip], rdi
|
||
*/
|
||
EXPECT_EQ(7, ild(u"Hë= "));
|
||
}
|
||
|
||
TEST(x86ild, test_48893500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rip], rsi
|
||
*/
|
||
EXPECT_EQ(7, ild(u"Hë5 "));
|
||
}
|
||
|
||
TEST(x86ild, test_48891500000000) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rip], rdx
|
||
*/
|
||
EXPECT_EQ(7, ild(u"Hë§ "));
|
||
}
|
||
|
||
TEST(x86ild, test_488903) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_MEMv_GPRv
|
||
ISA_SET: I86
|
||
SHORT: mov qword ptr [rbx], rax
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Hë♥"));
|
||
}
|
||
|
||
TEST(x86ild, test_4489FF) {
|
||
/*
|
||
ICLASS: MOV
|
||
CATEGORY: DATAXFER
|
||
EXTENSION: BASE
|
||
IFORM: MOV_GPRv_GPRv_89
|
||
ISA_SET: I86
|
||
SHORT: mov edi, r15d
|
||
*/
|
||
EXPECT_EQ(3, ild(u"Dëλ"));
|
||
}
|