about summary refs log tree commit diff stats
path: root/src/dynarec/dynablock_private.h
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2023-04-16 10:50:12 +0200
committerptitSeb <sebastien.chev@gmail.com>2023-04-16 10:50:12 +0200
commit3adf31c85b8bb4366d063fbe8f7d9fc36084366d (patch)
tree42d8fb12e6079f362c54226a862cabd8b1980ad9 /src/dynarec/dynablock_private.h
parent9b2c6caf22e6dc91ad72f4d90116b80237bd3487 (diff)
downloadbox64-3adf31c85b8bb4366d063fbe8f7d9fc36084366d.tar.gz
box64-3adf31c85b8bb4366d063fbe8f7d9fc36084366d.zip
[DYNAREC] General fixes and improvment for multithread and jit program. Helps Java, mono and Unity3d program... (should help #519, #464, #433, #272, #232, #193, #112...)
Diffstat (limited to 'src/dynarec/dynablock_private.h')
-rwxr-xr-xsrc/dynarec/dynablock_private.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/dynarec/dynablock_private.h b/src/dynarec/dynablock_private.h
index dbe8c502..18666e04 100755
--- a/src/dynarec/dynablock_private.h
+++ b/src/dynarec/dynablock_private.h
@@ -9,14 +9,15 @@ typedef struct instsize_s {
 typedef struct dynablock_s {
     void*           block;  // block-sizeof(void*) == self
     void*           actual_block;   // the actual start of the block (so block-sizeof(void*))
+    struct dynablock_s*    previous;   // a previous block that might need to be freed
     int             size;
     void*           x64_addr;
     uintptr_t       x64_size;
     uint32_t        hash;
-    uint8_t         need_test;
     uint8_t         done;
     uint8_t         gone;
-    uint8_t         dummy;
+    uint8_t         always_test;
+    uint8_t         dirty;      // if need to be tested as soon as it's created
     int             isize;
     instsize_t*     instsize;
     void*           jmpnext;    // a branch jmpnext code when block is marked