about summary refs log tree commit diff stats
path: root/src/include
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-11-11 20:47:10 +0100
committerptitSeb <sebastien.chev@gmail.com>2021-11-11 20:47:10 +0100
commit6a1b9e050a488cb5b2e1217fd3a01e484c3d7bb7 (patch)
treeee38007ce576f32a13b6c8f9ec298002300d74ba /src/include
parent6675b43dd0d7eb567227bea204ee663b1e7aab4a (diff)
downloadbox64-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-xsrc/include/debug.h1
-rwxr-xr-xsrc/include/dynablock.h2
-rwxr-xr-xsrc/include/dynarec_arm64.h1
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