diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-09-16 16:10:29 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-09-16 16:10:29 +0200 |
| commit | 446d57122c78a4f475380686f21e7dc6cb298396 (patch) | |
| tree | 84b907d69967696584925182caf8fb58dba7fc8d /src/dynarec/dynarec_native_functions.c | |
| parent | 1e8807ac0a21c6eaf53d30229d94fb8fd3533f6b (diff) | |
| download | box64-446d57122c78a4f475380686f21e7dc6cb298396.tar.gz box64-446d57122c78a4f475380686f21e7dc6cb298396.zip | |
[DYNAREC] Make sure jump address is wrapped on 32bits address space
Diffstat (limited to 'src/dynarec/dynarec_native_functions.c')
| -rw-r--r-- | src/dynarec/dynarec_native_functions.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/dynarec/dynarec_native_functions.c b/src/dynarec/dynarec_native_functions.c index c29e5083..5a086018 100644 --- a/src/dynarec/dynarec_native_functions.c +++ b/src/dynarec/dynarec_native_functions.c @@ -592,9 +592,11 @@ uint8_t geted_ib(dynarec_native_t* dyn, uintptr_t addr, int ninst, uint8_t nexto } #undef F8 -int isNativeCall(dynarec_native_t* dyn, uintptr_t addr, uintptr_t* calladdress, uint16_t* retn) +int isNativeCall(dynarec_native_t* dyn, uintptr_t addr, int is32bits, uintptr_t* calladdress, uint16_t* retn) { (void)dyn; + if(is32bits) + addr &= 0xFFFFFFFFLL; #define PK(a) *(uint8_t*)(addr+a) #define PK32(a) *(int32_t*)(addr+a) |