mirror of https://github.com/PCSX2/pcsx2.git
VU-JIT: Avoid writeReg stealing loadReg GPR
This commit is contained in:
parent
dc93e861c7
commit
dc4ce58248
|
@ -1015,6 +1015,9 @@ public:
|
||||||
microMapGPR& mapI = gprMap[i];
|
microMapGPR& mapI = gprMap[i];
|
||||||
if (mapI.VIreg == viLoadReg)
|
if (mapI.VIreg == viLoadReg)
|
||||||
{
|
{
|
||||||
|
// Do this first, there is a case where when loadReg != writeReg, the findFreeGPR can steal the loadReg
|
||||||
|
gprMap[i].count = this_counter;
|
||||||
|
|
||||||
if (viWriteReg >= 0) // Reg will be modified
|
if (viWriteReg >= 0) // Reg will be modified
|
||||||
{
|
{
|
||||||
if (viLoadReg != viWriteReg)
|
if (viLoadReg != viWriteReg)
|
||||||
|
@ -1058,7 +1061,7 @@ public:
|
||||||
xMOVZX(xRegister32(i), xRegister16(i));
|
xMOVZX(xRegister32(i), xRegister16(i));
|
||||||
gprMap[i].isZeroExtended = true;
|
gprMap[i].isZeroExtended = true;
|
||||||
}
|
}
|
||||||
gprMap[i].count = this_counter;
|
|
||||||
gprMap[i].isNeeded = true;
|
gprMap[i].isNeeded = true;
|
||||||
|
|
||||||
if (backup)
|
if (backup)
|
||||||
|
|
Loading…
Reference in New Issue