From 8c991cb6762d3a1384cec16d6e54402ce276ea9e Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Wed, 9 Apr 2025 15:19:45 +0200 Subject: [DYNAREC] Better handling of self-loop and added CALLRET=2 settings (ARM64 only, RV64 and LA64 todo) --- src/include/dynablock.h | 3 +++ src/include/env.h | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'src/include') diff --git a/src/include/dynablock.h b/src/include/dynablock.h index 757ca4ae..b9aeddc0 100644 --- a/src/include/dynablock.h +++ b/src/include/dynablock.h @@ -21,4 +21,7 @@ dynablock_t* DBAlternateBlock(x64emu_t* emu, uintptr_t addr, uintptr_t filladdr, // for use in signal handler void cancelFillBlock(void); +// clear instruction cache on a range +void ClearCache(void* start, size_t len); + #endif //__DYNABLOCK_H_ \ No newline at end of file diff --git a/src/include/env.h b/src/include/env.h index d820931d..3398f3b0 100644 --- a/src/include/env.h +++ b/src/include/env.h @@ -38,7 +38,7 @@ extern char* ftrace_name; BOOLEAN(BOX64_DYNAREC_ALIGNED_ATOMICS, dynarec_aligned_atomics, 0) \ INTEGER(BOX64_DYNAREC_BIGBLOCK, dynarec_bigblock, 2, 0, 3) \ BOOLEAN(BOX64_DYNAREC_BLEEDING_EDGE, dynarec_bleeding_edge, 1) \ - BOOLEAN(BOX64_DYNAREC_CALLRET, dynarec_callret, 0) \ + INTEGER(BOX64_DYNAREC_CALLRET, dynarec_callret, 0, 0, 2) \ BOOLEAN(BOX64_DYNAREC_DF, dynarec_df, 1) \ INTEGER(BOX64_DYNAREC_DIRTY, dynarec_dirty, 0, 0, 2) \ BOOLEAN(BOX64_DYNAREC_DIV0, dynarec_div0, 0) \ -- cgit 1.4.1