From 89dbd81f27bc8a3ad1e27d7073883f27ee15865f Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Wed, 30 Apr 2025 16:15:34 +0200 Subject: [INTERP] Improved NAN handling on VSUBPD opcode --- src/emu/x64runavx660f.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src') diff --git a/src/emu/x64runavx660f.c b/src/emu/x64runavx660f.c index f0405e4a..b08a5f6c 100644 --- a/src/emu/x64runavx660f.c +++ b/src/emu/x64runavx660f.c @@ -445,14 +445,18 @@ uintptr_t RunAVX_660F(x64emu_t *emu, vex_t vex, uintptr_t addr, int *step) GETEX(0); GETGX; GETVX; + MARK_NAN_VD_2(VX, EX); GX->d[0] = VX->d[0] - EX->d[0]; GX->d[1] = VX->d[1] - EX->d[1]; + CHECK_NAN_VD(GX); GETGY; if(vex.l) { GETEY; GETVY; + MARK_NAN_VD_2(VY, EY); GY->d[0] = VY->d[0] - EY->d[0]; GY->d[1] = VY->d[1] - EY->d[1]; + CHECK_NAN_VD(GY); } else { GY->u128 = 0; } -- cgit 1.4.1