mirror of https://github.com/PCSX2/pcsx2.git
MicroVU: Purge Min/Max speedhack
This commit is contained in:
parent
17fdc6a0f3
commit
18311d6a4c
|
@ -354,12 +354,6 @@ static const bool doDBitHandling = false;
|
|||
// This hack only updates the Status Flag on blocks that will read it.
|
||||
// Most blocks do not read status flags, so this is a big speedup.
|
||||
|
||||
// Min/Max Speed Hack
|
||||
#define CHECK_VU_MINMAXHACK 0 //(EmuConfig.Speedhacks.vuMinMax)
|
||||
// This hack uses SSE min/max instructions instead of emulated "logical min/max"
|
||||
// The PS2 does not consider denormals as zero on the mini/max opcodes.
|
||||
// This speedup is minor, but on AMD X2 CPUs it can be a 1~3% speedup
|
||||
|
||||
//------------------------------------------------------------------
|
||||
// Unknown Data
|
||||
//------------------------------------------------------------------
|
||||
|
|
|
@ -477,31 +477,19 @@ void ADD_SS_TriAceHack(microVU& mVU, const xmm& to, const xmm& from)
|
|||
|
||||
void SSE_MAXPS(mV, const xmm& to, const xmm& from, const xmm& t1 = xEmptyReg, const xmm& t2 = xEmptyReg)
|
||||
{
|
||||
if (CHECK_VU_MINMAXHACK)
|
||||
xMAX.PS(to, from);
|
||||
else
|
||||
MIN_MAX_PS(mVU, to, from, t1, t2, false);
|
||||
MIN_MAX_PS(mVU, to, from, t1, t2, false);
|
||||
}
|
||||
void SSE_MINPS(mV, const xmm& to, const xmm& from, const xmm& t1 = xEmptyReg, const xmm& t2 = xEmptyReg)
|
||||
{
|
||||
if (CHECK_VU_MINMAXHACK)
|
||||
xMIN.PS(to, from);
|
||||
else
|
||||
MIN_MAX_PS(mVU, to, from, t1, t2, true);
|
||||
MIN_MAX_PS(mVU, to, from, t1, t2, true);
|
||||
}
|
||||
void SSE_MAXSS(mV, const xmm& to, const xmm& from, const xmm& t1 = xEmptyReg, const xmm& t2 = xEmptyReg)
|
||||
{
|
||||
if (CHECK_VU_MINMAXHACK)
|
||||
xMAX.SS(to, from);
|
||||
else
|
||||
MIN_MAX_SS(mVU, to, from, t1, false);
|
||||
MIN_MAX_SS(mVU, to, from, t1, false);
|
||||
}
|
||||
void SSE_MINSS(mV, const xmm& to, const xmm& from, const xmm& t1 = xEmptyReg, const xmm& t2 = xEmptyReg)
|
||||
{
|
||||
if (CHECK_VU_MINMAXHACK)
|
||||
xMIN.SS(to, from);
|
||||
else
|
||||
MIN_MAX_SS(mVU, to, from, t1, true);
|
||||
MIN_MAX_SS(mVU, to, from, t1, true);
|
||||
}
|
||||
void SSE_ADD2SS(mV, const xmm& to, const xmm& from, const xmm& t1 = xEmptyReg, const xmm& t2 = xEmptyReg)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue