about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorYang Liu <liuyang22@iscas.ac.cn>2023-12-25 23:32:03 +0800
committerGitHub <noreply@github.com>2023-12-25 16:32:03 +0100
commit1f28b9f98d4cb26fb464ca56c042c227cfe4f3af (patch)
treee667ded29e9474de7646adc5db66fab60da4f6ed /src
parent7fcc0ba8a478be8a6169191e505ac66e30c646e8 (diff)
downloadbox64-1f28b9f98d4cb26fb464ca56c042c227cfe4f3af.tar.gz
box64-1f28b9f98d4cb26fb464ca56c042c227cfe4f3af.zip
[INTERP] Added 64 66 39 CMP opcode (#1166)
Diffstat (limited to 'src')
-rw-r--r--src/emu/x64run6664.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/emu/x64run6664.c b/src/emu/x64run6664.c
index 48a3be99..0331e532 100644
--- a/src/emu/x64run6664.c
+++ b/src/emu/x64run6664.c
@@ -92,6 +92,15 @@ uintptr_t Run6664(x64emu_t *emu, rex_t rex, int seg, uintptr_t addr)
             }

             break;

 

+        case 0x39: /* CMP FS:Ew,Gw */

+            nextop = F8;

+            GETEW_OFFS(0, tlsdata);

+            GETGW;

+            if (rex.w)

+                cmp64(emu, EW->q[0], GW->q[0]);

+            else

+                cmp16(emu, EW->word[0], GW->word[0]);

+            break;

         case 0x89:                              /* MOV FS:Ew,Gw */

             nextop = F8;

             GETEW_OFFS(0, tlsdata);