diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2025-01-02 20:41:36 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2025-01-02 20:41:36 +0100 |
| commit | da6b799a10d34f00fb51164a6d108fd7c8fd81af (patch) | |
| tree | 92a97bc51bbb6441b9f9b44ea6f9c075f32da494 /src | |
| parent | 967c73efd1cd7b794f598c781a21cbe008466acf (diff) | |
| download | box64-da6b799a10d34f00fb51164a6d108fd7c8fd81af.tar.gz box64-da6b799a10d34f00fb51164a6d108fd7c8fd81af.zip | |
[ARM64_DYNAREC] Small fixes to sse info retreiving on signal
Diffstat (limited to 'src')
| -rw-r--r-- | src/dynarec/arm64/dynarec_arm64_arch.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/dynarec/arm64/dynarec_arm64_arch.c b/src/dynarec/arm64/dynarec_arm64_arch.c index 42cc8817..f9a45425 100644 --- a/src/dynarec/arm64/dynarec_arm64_arch.c +++ b/src/dynarec/arm64/dynarec_arm64_arch.c @@ -215,8 +215,8 @@ void adjust_arch(dynablock_t* db, x64emu_t* emu, ucontext_t* p, uintptr_t x64pc) } } if(arch->sse) { -//printf_log(LOG_INFO, " sse "); arch_sse_t* sse = (arch_sse_t*)((uintptr_t)arch + sz); +//printf_log(LOG_INFO, " sse[%x (fpsimd=%p)] ", sse->sse, fpsimd); sz += sizeof(arch_sse_t); for(int i=0; i<16; ++i) if(fpsimd && (sse->sse>>i)&1) { @@ -226,8 +226,7 @@ void adjust_arch(dynablock_t* db, x64emu_t* emu, ucontext_t* p, uintptr_t x64pc) } else { idx = XMM0 + i; } - - emu->xmm[i].u128 = fpsimd->vregs[i]; + emu->xmm[i].u128 = fpsimd->vregs[idx]; } } //printf_log(LOG_INFO, "\n"); |