mirror of https://github.com/PCSX2/pcsx2.git
Vif: Don't use non-volatile register in simple unpack
The Vif normally reserves Xmm3-Xmm6 for the columns and row. However, code emitted for simple unpacks never used them. Instead, lets use Xmm3 to avoid clobbering a non-volatile register.
This commit is contained in:
parent
bd4a6a10f9
commit
6334082e6f
|
@ -328,12 +328,12 @@ VifUnpackSSE_Simple::VifUnpackSSE_Simple(bool usn_, bool domask_, int curCycle_)
|
|||
|
||||
void VifUnpackSSE_Simple::doMaskWrite(const xRegisterSSE& regX) const
|
||||
{
|
||||
xMOVAPS(xmm7, ptr[dstIndirect]);
|
||||
xMOVAPS(xmm3, ptr[dstIndirect]);
|
||||
const int offX = std::min(curCycle, 3);
|
||||
xPAND(regX, ptr32[nVifMask[0][offX]]);
|
||||
xPAND(xmm7, ptr32[nVifMask[1][offX]]);
|
||||
xPAND(xmm3, ptr32[nVifMask[1][offX]]);
|
||||
xPOR (regX, ptr32[nVifMask[2][offX]]);
|
||||
xPOR (regX, xmm7);
|
||||
xPOR (regX, xmm3);
|
||||
xMOVAPS(ptr[dstIndirect], regX);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue