diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-05-03 18:42:03 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-05-03 18:42:03 +0200 |
| commit | 12467916a4ce5bf8042324f0dbb10a93da41d834 (patch) | |
| tree | b617fe857d5aff21c4df1404c19dba1dcb7be452 /src/libtools | |
| parent | 6f0eb5662177f83458a8ad6db29501851f5d66b8 (diff) | |
| download | box64-12467916a4ce5bf8042324f0dbb10a93da41d834.tar.gz box64-12467916a4ce5bf8042324f0dbb10a93da41d834.zip | |
[DYNAREC] Re-introduce a simple HotPage handling, to speedup heavily obfuscated program loading
Diffstat (limited to 'src/libtools')
| -rw-r--r-- | src/libtools/signals.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libtools/signals.c b/src/libtools/signals.c index 94946b9e..e9ff125a 100644 --- a/src/libtools/signals.c +++ b/src/libtools/signals.c @@ -1396,6 +1396,7 @@ void my_box64signalhandler(int32_t sig, siginfo_t* info, void * ucntx) if(repeated_page == ((uintptr_t)addr&~(box64_pagesize-1))) { ++repeated_count; // Access eoor multiple time on same page, disable dynarec on this page a few time... dynarec_log(LOG_DEBUG, "Detecting a Hotpage at %p (%d)\n", (void*)repeated_page, repeated_count); + SetHotPage(repeated_page); } else { repeated_page = (uintptr_t)addr&~(box64_pagesize-1); repeated_count = 0; |