Core: Have COP1_W_CVT_S handle the initialization of exceptions

This commit is contained in:
zilmar 2023-12-28 11:19:06 +10:30
parent 17288c90c0
commit dafa1fb24d
1 changed files with 13 additions and 1 deletions

View File

@ -8463,7 +8463,19 @@ void CX86RecompilerOps::COP1_D_CMP()
// COP1: W functions
void CX86RecompilerOps::COP1_W_CVT_S()
{
CompileCop1Test();
if (FpuExceptionInRecompiler())
{
CompileInitFpuOperation(CRegBase::RoundUnknown);
if (m_RegWorkingSet.RegInStack(m_Opcode.fs, CRegInfo::FPU_Any) || m_RegWorkingSet.RegInStack(m_Opcode.fd, CRegInfo::FPU_Any))
{
g_Notify->BreakPoint(__FILE__, __LINE__);
return;
}
}
else
{
CompileCop1Test();
}
if (m_Opcode.fd != m_Opcode.fs || !m_RegWorkingSet.RegInStack(m_Opcode.fd, CRegInfo::FPU_Dword))
{
m_RegWorkingSet.Load_FPR_ToTop(m_Opcode.fd, m_Opcode.fs, CRegInfo::FPU_Dword);