about summary refs log tree commit diff stats
path: root/src/include
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2023-02-19 09:56:42 +0100
committerptitSeb <sebastien.chev@gmail.com>2023-02-19 09:56:42 +0100
commit3b8d6ef208d4a3f5d3402977b0978f9a294e8aae (patch)
tree324182382ea7cf79e3474539d41a24dabe75f3f1 /src/include
parent2e59b56f1691227e4a93ac1c2dd844adcc6334cd (diff)
downloadbox64-3b8d6ef208d4a3f5d3402977b0978f9a294e8aae.tar.gz
box64-3b8d6ef208d4a3f5d3402977b0978f9a294e8aae.zip
Simplified dynablock handling (reduced memory consuption)
Diffstat (limited to 'src/include')
-rw-r--r--src/include/custommem.h4
-rwxr-xr-xsrc/include/dynablock.h2
-rwxr-xr-xsrc/include/dynarec_native.h2
3 files changed, 3 insertions, 5 deletions
diff --git a/src/include/custommem.h b/src/include/custommem.h
index 42f75a89..f2a4481d 100644
--- a/src/include/custommem.h
+++ b/src/include/custommem.h
@@ -19,8 +19,8 @@ void customFree(void* p);
 #ifdef DYNAREC
 typedef struct dynablock_s dynablock_t;
 // custom protection flag to mark Page that are Write protected for Dynarec purpose
-uintptr_t AllocDynarecMap(dynablock_t* db, size_t size);
-void FreeDynarecMap(dynablock_t* db, uintptr_t addr, size_t size);
+uintptr_t AllocDynarecMap(size_t size);
+void FreeDynarecMap(uintptr_t addr);
 
 void addDBFromAddressRange(uintptr_t addr, size_t size);
 void cleanDBFromAddressRange(uintptr_t addr, size_t size, int destroy);
diff --git a/src/include/dynablock.h b/src/include/dynablock.h
index 7f28fbd7..1868deea 100755
--- a/src/include/dynablock.h
+++ b/src/include/dynablock.h
@@ -3,7 +3,6 @@
 
 typedef struct x64emu_s x64emu_t;
 typedef struct dynablock_s dynablock_t;
-typedef struct kh_dynablocks_s  kh_dynablocks_t;
 
 uint32_t X31_hash_code(void* addr, int len);
 void FreeDynablock(dynablock_t* db, int need_lock);
@@ -12,7 +11,6 @@ void MarkRangeDynablock(dynablock_t* db, uintptr_t addr, uintptr_t size);
 int FreeRangeDynablock(dynablock_t* db, uintptr_t addr, uintptr_t size);
 
 dynablock_t* FindDynablockFromNativeAddress(void* addr);    // defined in box64context.h
-dynablock_t* FindDynablockDynablocklist(void* addr, kh_dynablocks_t* dynablocks);
 
 // Handling of Dynarec block (i.e. an exectable chunk of x64 translated code)
 dynablock_t* DBGetBlock(x64emu_t* emu, uintptr_t addr, int create);   // return NULL if block is not found / cannot be created. Don't create if create==0
diff --git a/src/include/dynarec_native.h b/src/include/dynarec_native.h
index bc4cf3f6..9fe26323 100755
--- a/src/include/dynarec_native.h
+++ b/src/include/dynarec_native.h
@@ -4,7 +4,7 @@
 typedef struct dynablock_s dynablock_t;
 typedef struct x64emu_s x64emu_t;
 
-void CancelBlock64();
+void CancelBlock64(int need_lock);
 void* FillBlock64(dynablock_t* block, uintptr_t addr);
 
 #endif //__DYNAREC_ARM_H_
\ No newline at end of file