about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2023-05-04 21:34:13 +0200
committerptitSeb <sebastien.chev@gmail.com>2023-05-04 21:34:13 +0200
commit0e14d42dcfc308fe011066c01394d72cbc8ee009 (patch)
treecc12197409c5257b2d4ed0ec29793ad9fefd2815 /src
parent987ff861fdf865dda513ebbc12b8089262b99f85 (diff)
downloadbox64-0e14d42dcfc308fe011066c01394d72cbc8ee009.tar.gz
box64-0e14d42dcfc308fe011066c01394d72cbc8ee009.zip
[ARM64_DYNAREC] Small improvment for signal handling
Diffstat (limited to 'src')
-rwxr-xr-xsrc/libtools/signals.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/libtools/signals.c b/src/libtools/signals.c
index 6ed5f807..7f68f598 100755
--- a/src/libtools/signals.c
+++ b/src/libtools/signals.c
@@ -946,12 +946,13 @@ void my_box64signalhandler(int32_t sig, siginfo_t* info, void * ucntx)
             if(ejb->jmpbuf_ok) {
                 copyUCTXreg2Emu(ejb->emu, p, getX64Address(db, (uintptr_t)pc));
 #ifdef ARM64
-                if(fpsimd) {
+                //TODO: Need proper SIMD/x87 register traking!
+                /*if(fpsimd) {
                     ejb->emu->xmm[0].u128 = fpsimd->vregs[0];
                     ejb->emu->xmm[1].u128 = fpsimd->vregs[1];
                     ejb->emu->xmm[2].u128 = fpsimd->vregs[2];
                     ejb->emu->xmm[3].u128 = fpsimd->vregs[3];
-                }
+                }*/
 #elif defined(LA464)
                 /*if(fpsimd) {
                     ejb->emu->xmm[0].u128 = fpsimd->vregs[0];
@@ -979,6 +980,7 @@ void my_box64signalhandler(int32_t sig, siginfo_t* info, void * ucntx)
                 #ifdef DYNAREC
                 if(Locks & is_dyndump_locked)
                     CancelBlock64(1);
+                ejb->emu->test.clean = 0;
                 #endif
                 siglongjmp(ejb->jmpbuf, 2);
             }