[ShaderJIT: MOVA] Fix oopsie

This commit is contained in:
wheremyfoodat 2023-06-10 23:49:42 +03:00
parent 239cc3e495
commit 18df6f9531

View file

@ -377,13 +377,13 @@ void ShaderEmitter::recMOVA(const PICAShader& shader, u32 instruction) {
movsd(qword[statePointer + addrRegisterOffset], scratch1); // Write back bottom 2 to addr register x and ys movsd(qword[statePointer + addrRegisterOffset], scratch1); // Write back bottom 2 to addr register x and ys
} }
else if (writeX) { else if (writeX) {
cvttss2si(scratch1, src1_xmm); // Convert bottom lane cvttss2si(eax, src1_xmm); // Convert bottom lane
movss(dword[statePointer + addrRegisterOffset], scratch1); // Write it back mov(dword[statePointer + addrRegisterOffset], eax); // Write it back
} }
else if (writeY) { else if (writeY) {
psrldq(src1_xmm, sizeof(float)); // Shift y component to bottom lane psrldq(src1_xmm, sizeof(float)); // Shift y component to bottom lane
cvttss2si(scratch1, src1_xmm); // Convert bottom lane cvttss2si(eax, src1_xmm); // Convert bottom lane
movss(dword[statePointer + addrRegisterYOffset], scratch1); // Write it back to y component mov(dword[statePointer + addrRegisterYOffset], eax); // Write it back to y component
} }
} }