From 98535e572deb77e88b9f2f3634171b6b385fc1b5 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Sun, 30 Apr 2023 08:15:05 +0000 Subject: [RV64_DYNAREC] Fixed potential issue on fastnan=0 for 0F 51 opcode --- src/dynarec/rv64/dynarec_rv64_f20f.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/dynarec/rv64/dynarec_rv64_f20f.c b/src/dynarec/rv64/dynarec_rv64_f20f.c index 95f526f0..35fcf562 100644 --- a/src/dynarec/rv64/dynarec_rv64_f20f.c +++ b/src/dynarec/rv64/dynarec_rv64_f20f.c @@ -184,8 +184,9 @@ uintptr_t dynarec64_F20F(dynarec_rv64_t* dyn, uintptr_t addr, uintptr_t ip, int GETEXSD(d0, 0); GETGXSD_empty(d1); if(!box64_dynarec_fastnan) { - FMVDX(d1, xZR); - FLTD(x3, d0, d1); + v0 = fpu_get_scratch(dyn); // need a scratch in case d0 == d1 + FMVDX(v0, xZR); + FLTD(x3, d0, v0); } FSQRTD(d1, d0); if(!box64_dynarec_fastnan) { -- cgit 1.4.1