mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-11-14 01:59:34 +01:00
Fix VROT on 32-bit x86
This commit is contained in:
1 parent
6ecd0194fa
commit
3341e7e7fc
1 file changed
+10
@@ -1235,8 +1235,18 @@ void Jit::Comp_VRot(u32 op) {
|
||||
|
||||
bool negSin = (imm & 0x10) ? true : false;
|
||||
|
||||
#ifdef _M_X64
|
||||
MOVSS(XMM0, fpr.V(sreg));
|
||||
ABI_CallFunction(negSin ? (void *)&SinCosNegSin : (void *)&SinCos);
|
||||
#else
|
||||
// Sigh, passing floats with cdecl isn't pretty.
|
||||
MOVSS(XMM0, fpr.V(sreg));
|
||||
SUB(32, R(ESP), Imm32(4));
|
||||
MOVSS(MatR(ESP), XMM0);
|
||||
ABI_CallFunction(negSin ? (void *)&SinCosNegSin : (void *)&SinCos);
|
||||
ADD(32, R(ESP), Imm32(4));
|
||||
#endif
|
||||
|
||||
MOVSS(XMM0, M(&sincostemp[0]));
|
||||
MOVSS(XMM1, M(&sincostemp[1]));
|
||||
|
||||
|
||||
Reference in new issue
Block a user