diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-06-18 16:23:32 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-06-18 16:23:32 +0200 |
| commit | 8138ba6ecbbd35ec61385a076a44b4745fe75fd1 (patch) | |
| tree | 6a9769cebfec2849b44ac40580b015a5a353fcd4 | |
| parent | f1c0b52677c6260b2f5a9b2807aacfb87b58988a (diff) | |
| download | box64-8138ba6ecbbd35ec61385a076a44b4745fe75fd1.tar.gz box64-8138ba6ecbbd35ec61385a076a44b4745fe75fd1.zip | |
[ARM64_DYNAREC] Added a warning if allocating a scratch register after some YMM
| -rw-r--r-- | src/dynarec/arm64/dynarec_arm64_functions.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/dynarec/arm64/dynarec_arm64_functions.c b/src/dynarec/arm64/dynarec_arm64_functions.c index cad5427a..46ee4450 100644 --- a/src/dynarec/arm64/dynarec_arm64_functions.c +++ b/src/dynarec/arm64/dynarec_arm64_functions.c @@ -30,6 +30,7 @@ int fpu_get_scratch(dynarec_arm_t* dyn, int ninst) { int ret = SCRATCH0 + dyn->n.fpu_scratch++; + if(dyn->n.ymm_used) printf_log(LOG_INFO, "Warning, getting a scratch register after getting some YMM at inst=%d\n", ninst); if(dyn->n.neoncache[ret].t==NEON_CACHE_YMMR || dyn->n.neoncache[ret].t==NEON_CACHE_YMMW) { // should only happens in step 0... dyn->insts[ninst].purge_ymm |= (1<<dyn->n.neoncache[ret].n); // mark as purged @@ -41,6 +42,7 @@ int fpu_get_scratch(dynarec_arm_t* dyn, int ninst) int fpu_get_double_scratch(dynarec_arm_t* dyn, int ninst) { int ret = SCRATCH0 + dyn->n.fpu_scratch; + if(dyn->n.ymm_used) printf_log(LOG_INFO, "Warning, getting a double scratch register after getting some YMM at inst=%d\n", ninst); if(dyn->n.neoncache[ret].t==NEON_CACHE_YMMR || dyn->n.neoncache[ret].t==NEON_CACHE_YMMW) { // should only happens in step 0... dyn->insts[ninst].purge_ymm |= (1<<dyn->n.neoncache[ret].n); // mark as purged |