From 7bec96e4b239d3d9167b9945af2ab0cbdd4251af Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Mon, 17 Jun 2024 22:15:03 +0200 Subject: [COSIM] Some improvment to avoid segfault in edge cases --- src/emu/x64run.c | 2 +- src/emu/x64run660f.c | 2 +- src/emu/x64runf30f.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/emu/x64run.c b/src/emu/x64run.c index ff08d3fb..e56a0431 100644 --- a/src/emu/x64run.c +++ b/src/emu/x64run.c @@ -436,7 +436,7 @@ x64emurun: break; case 0x63: /* MOVSXD Gd,Ed */ nextop = F8; - GETED(0); + GETE4(0); GETGD; if(rex.is32bits) { // ARPL here diff --git a/src/emu/x64run660f.c b/src/emu/x64run660f.c index e5bf347e..aacf2768 100644 --- a/src/emu/x64run660f.c +++ b/src/emu/x64run660f.c @@ -2255,7 +2255,7 @@ uintptr_t Run660F(x64emu_t *emu, rex_t rex, uintptr_t addr) break; case 0xD6: /* MOVQ Ex,Gx */ nextop = F8; - GETEX(0); + GETEX8(0); GETGX; EX->q[0] = GX->q[0]; if(MODREG) diff --git a/src/emu/x64runf30f.c b/src/emu/x64runf30f.c index 1c650469..d42586fe 100644 --- a/src/emu/x64runf30f.c +++ b/src/emu/x64runf30f.c @@ -54,7 +54,7 @@ uintptr_t RunF30F(x64emu_t *emu, rex_t rex, uintptr_t addr) case 0x10: /* MOVSS Gx Ex */ nextop = F8; - GETEX(0); + GETEX4(0); GETGX; GX->ud[0] = EX->ud[0]; if(!MODREG) { @@ -64,7 +64,7 @@ uintptr_t RunF30F(x64emu_t *emu, rex_t rex, uintptr_t addr) break; case 0x11: /* MOVSS Ex Gx */ nextop = F8; - GETEX(0); + GETEX4(0); GETGX; EX->ud[0] = GX->ud[0]; break; -- cgit 1.4.1