diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-11-11 20:47:10 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-11-11 20:47:10 +0100 |
| commit | 6a1b9e050a488cb5b2e1217fd3a01e484c3d7bb7 (patch) | |
| tree | ee38007ce576f32a13b6c8f9ec298002300d74ba /src/include | |
| parent | 6675b43dd0d7eb567227bea204ee663b1e7aab4a (diff) | |
| download | box64-6a1b9e050a488cb5b2e1217fd3a01e484c3d7bb7.tar.gz box64-6a1b9e050a488cb5b2e1217fd3a01e484c3d7bb7.zip | |
[DYNAREC] Changed Dynarec a bit to try stabilise program using many threads and a JIT (help RimWorld Linux, but not enough to be 100% stable)
Diffstat (limited to 'src/include')
| -rwxr-xr-x | src/include/debug.h | 1 | ||||
| -rwxr-xr-x | src/include/dynablock.h | 2 | ||||
| -rwxr-xr-x | src/include/dynarec_arm64.h | 1 |
3 files changed, 3 insertions, 1 deletions
diff --git a/src/include/debug.h b/src/include/debug.h index af433dd2..80288c96 100755 --- a/src/include/debug.h +++ b/src/include/debug.h @@ -13,6 +13,7 @@ extern int box64_dynarec_dump; extern int box64_dynarec_trace; extern int box64_dynarec_forced; extern uintptr_t box64_nodynarec_start, box64_nodynarec_end; +extern int box64_dynarec_bigblock; #ifdef ARM64 extern int arm64_asimd; extern int arm64_aes; diff --git a/src/include/dynablock.h b/src/include/dynablock.h index d6424c4f..b83262cc 100755 --- a/src/include/dynablock.h +++ b/src/include/dynablock.h @@ -9,7 +9,7 @@ typedef struct kh_dynablocks_s kh_dynablocks_t; uint32_t X31_hash_code(void* addr, int len); dynablocklist_t* NewDynablockList(uintptr_t text, int textsz, int direct); void FreeDynablockList(dynablocklist_t** dynablocks); -void FreeDynablock(dynablock_t* db); +void FreeDynablock(dynablock_t* db, int need_lock); void MarkDynablock(dynablock_t* db); //return 1 if Dynareblock is empty int FreeRangeDynablock(dynablocklist_t* dynablocks, uintptr_t addr, uintptr_t size); diff --git a/src/include/dynarec_arm64.h b/src/include/dynarec_arm64.h index 1225153d..bc4cf3f6 100755 --- a/src/include/dynarec_arm64.h +++ b/src/include/dynarec_arm64.h @@ -4,6 +4,7 @@ typedef struct dynablock_s dynablock_t; typedef struct x64emu_s x64emu_t; +void CancelBlock64(); void* FillBlock64(dynablock_t* block, uintptr_t addr); #endif //__DYNAREC_ARM_H_ \ No newline at end of file |