diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-07-07 11:28:54 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-07-07 11:28:54 +0200 |
| commit | d7e8da632183e6ceece1230710f6dda722d2f8ae (patch) | |
| tree | a569ec0648d6b7f895dec31c59ac38f8ae0e4a7f /src | |
| parent | aec3fd524a028d3375d3688c463546d1f8e60c65 (diff) | |
| download | box64-d7e8da632183e6ceece1230710f6dda722d2f8ae.tar.gz box64-d7e8da632183e6ceece1230710f6dda722d2f8ae.zip | |
[ARM64_DYNAREC] Fixed reflect cache for ymm0
Diffstat (limited to 'src')
| -rw-r--r-- | src/dynarec/arm64/dynarec_arm64_helper.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/dynarec/arm64/dynarec_arm64_helper.c b/src/dynarec/arm64/dynarec_arm64_helper.c index 04fa97f6..86b09cc6 100644 --- a/src/dynarec/arm64/dynarec_arm64_helper.c +++ b/src/dynarec/arm64/dynarec_arm64_helper.c @@ -2371,7 +2371,8 @@ void fpu_reflectcache(dynarec_arm_t* dyn, int ninst, int s1, int s2, int s3) if(dyn->ymm_zero) { ADDx_U12(s1, xEmu, offsetof(x64emu_t, ymm[0])); for(int i=0; i<16; ++i) - STPx_S7_offset(xZR, xZR, s1, 16*i); + if(dyn->ymm_zero&(1<<i)) + STPx_S7_offset(xZR, xZR, s1, 16*i); } } |