Core: Get R4300iOp::CheckFPUInput64 to return true on exception
This commit is contained in:
parent
bc1b027c94
commit
5ff45c43c4
|
@ -2434,7 +2434,7 @@ void R4300iOp::COP1_D_ADD()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]) || !CheckFPUInput64(*(double *)_FPR_D[m_Opcode.ft]))
|
if (CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]) || CheckFPUInput64(*(double *)_FPR_D[m_Opcode.ft]))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -2453,7 +2453,7 @@ void R4300iOp::COP1_D_SUB()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]) || !CheckFPUInput64(*(double *)_FPR_D[m_Opcode.ft]))
|
if (CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]) || CheckFPUInput64(*(double *)_FPR_D[m_Opcode.ft]))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -2472,7 +2472,7 @@ void R4300iOp::COP1_D_MUL()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]) || !CheckFPUInput64(*(double *)_FPR_D[m_Opcode.ft]))
|
if (CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]) || CheckFPUInput64(*(double *)_FPR_D[m_Opcode.ft]))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -2491,7 +2491,7 @@ void R4300iOp::COP1_D_DIV()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]) || !CheckFPUInput64(*(double *)_FPR_D[m_Opcode.ft]))
|
if (CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]) || CheckFPUInput64(*(double *)_FPR_D[m_Opcode.ft]))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -2510,7 +2510,7 @@ void R4300iOp::COP1_D_SQRT()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]))
|
if (CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -2529,7 +2529,7 @@ void R4300iOp::COP1_D_ABS()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]))
|
if (CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -2558,7 +2558,7 @@ void R4300iOp::COP1_D_NEG()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]))
|
if (CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -2724,7 +2724,7 @@ void R4300iOp::COP1_D_CVT_S()
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]))
|
if (CheckFPUInput64(*(double *)_FPR_D[m_Opcode.fs]))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -3162,9 +3162,9 @@ bool R4300iOp::CheckFPUInput64(const double & Value)
|
||||||
if (Exception)
|
if (Exception)
|
||||||
{
|
{
|
||||||
g_Reg->TriggerException(EXC_FPE);
|
g_Reg->TriggerException(EXC_FPE);
|
||||||
return false;
|
return true;
|
||||||
}
|
}
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool R4300iOp::CheckFPUInput64Conv(const double & Value)
|
bool R4300iOp::CheckFPUInput64Conv(const double & Value)
|
||||||
|
|
Loading…
Reference in New Issue