diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/dynarec/arm64/dynarec_arm64_00.c | 2 | ||||
| -rw-r--r-- | src/dynarec/rv64/dynarec_rv64_00_3.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/dynarec/arm64/dynarec_arm64_00.c b/src/dynarec/arm64/dynarec_arm64_00.c index 3ab1e5c4..856b107b 100644 --- a/src/dynarec/arm64/dynarec_arm64_00.c +++ b/src/dynarec/arm64/dynarec_arm64_00.c @@ -2607,7 +2607,7 @@ uintptr_t dynarec64_00(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin } else { GETIP(ip+1); // read the 0xCC STORE_XEMU_CALL(xRIP); - ADDx_U12(x3, xRIP, 8+8); // expected return address + ADDx_U12(x3, xRIP, 8+8+2); // expected return address ADDx_U12(x1, xEmu, (uint32_t)offsetof(x64emu_t, ip)); // setup addr as &emu->ip CALL_(EmuInt3, -1, x3); SMWRITE2(); diff --git a/src/dynarec/rv64/dynarec_rv64_00_3.c b/src/dynarec/rv64/dynarec_rv64_00_3.c index 868e55bb..9287f442 100644 --- a/src/dynarec/rv64/dynarec_rv64_00_3.c +++ b/src/dynarec/rv64/dynarec_rv64_00_3.c @@ -465,7 +465,7 @@ uintptr_t dynarec64_00_3(dynarec_rv64_t* dyn, uintptr_t addr, uintptr_t ip, int } else { GETIP(ip + 1, x7); // read the 0xCC STORE_XEMU_CALL(x3); - ADDI(x3, xRIP, 8 + 8); // expected return address + ADDI(x3, xRIP, 8 + 8 + 2); // expected return address ADDI(x1, xEmu, (uint32_t)offsetof(x64emu_t, ip)); // setup addr as &emu->ip CALL_(EmuInt3, -1, x3, x1, 0); LOAD_XEMU_CALL(); |