From d3c57eecbca09b77d0ad9647d89f12fc9b4b0939 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Fri, 8 Mar 2024 15:00:47 +0100 Subject: [INTERPRETER] Added 66 64 0F 6F opcode (for #1349) --- src/emu/x64run6664.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/emu/x64run6664.c b/src/emu/x64run6664.c index 6d937743..c91b3cbc 100644 --- a/src/emu/x64run6664.c +++ b/src/emu/x64run6664.c @@ -78,13 +78,12 @@ uintptr_t Run6664(x64emu_t *emu, rex_t rex, int seg, uintptr_t addr) CLEAR_FLAG(F_OF); CLEAR_FLAG(F_AF); CLEAR_FLAG(F_SF); break; - case 0xD6: /* MOVQ Ex,Gx */ + case 0x6F: /* MOVDQA Gx, Ex */ nextop = F8; GETEX_OFFS(0, tlsdata); GETGX; - EX->q[0] = GX->q[0]; - if(MODREG) - EX->q[1] = 0; + GX->q[0] = EX->q[0]; + GX->q[1] = EX->q[1]; break; case 0x7F: /* MOVDQA Ex,Gx */ @@ -95,6 +94,15 @@ uintptr_t Run6664(x64emu_t *emu, rex_t rex, int seg, uintptr_t addr) EX->q[1] = GX->q[1]; break; + case 0xD6: /* MOVQ Ex,Gx */ + nextop = F8; + GETEX_OFFS(0, tlsdata); + GETGX; + EX->q[0] = GX->q[0]; + if(MODREG) + EX->q[1] = 0; + break; + default: return 0; } -- cgit 1.4.1