From d73ff21b27b7f2fdca3f817fb37faefe388439d8 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Tue, 28 Mar 2023 13:34:45 +0200 Subject: [DYNAREC] Improved TEST_INTERPRETER with inter-block testing --- src/libtools/signals.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/libtools/signals.c') diff --git a/src/libtools/signals.c b/src/libtools/signals.c index 9526f49b..df715a0f 100755 --- a/src/libtools/signals.c +++ b/src/libtools/signals.c @@ -291,6 +291,10 @@ uint64_t RunFunctionHandler(int* exit, x64_ucontext_t* sigcontext, uintptr_t fnc #endif x64emu_t *emu = thread_get_emu(); + #ifdef DYNAREC + if(box64_dynarec_test) + emu->test.test = 0; + #endif printf_log(LOG_DEBUG, "%04d|signal function handler %p called, RSP=%p\n", GetTID(), (void*)fnc, (void*)R_RSP); @@ -326,6 +330,11 @@ uint64_t RunFunctionHandler(int* exit, x64_ucontext_t* sigcontext, uintptr_t fnc emu->quitonlongjmp = oldquitonlongjmp; + #ifdef DYNAREC + if(box64_dynarec_test) + emu->test.test = 0; + #endif + if(emu->longjmp) { // longjmp inside signal handler, lets grab all relevent value and do the actual longjmp in the signal handler emu->longjmp = 0; -- cgit 1.4.1