diff --git a/Source/Core/Core/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp b/Source/Core/Core/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp index f6d63087d7..e88d97b3cf 100644 --- a/Source/Core/Core/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp +++ b/Source/Core/Core/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp @@ -427,6 +427,13 @@ void Interpreter::frsqrtex(UGeckoInstruction inst) if (FPSCR.ZE == 0) PowerPC::UpdateFPRF(result); } + else if (Common::IsSNAN(b)) + { + SetFPException(FPSCR_VXSNAN); + + if (FPSCR.VE == 0) + PowerPC::UpdateFPRF(result); + } else { PowerPC::UpdateFPRF(result);