mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-04-09 18:45:40 +00:00
Use unaligned stores to save XMM regs to stack.
On Win32, the stack isn't aligned, so aligned stores will cause crashes.
This commit is contained in:
parent
5fc6ce59c3
commit
e4081b29f9
@ -92,7 +92,7 @@ void XEmitter::ABI_PushRegistersAndAdjustStack(u32 mask, bool noProlog)
|
|||||||
{
|
{
|
||||||
if (mask & (1 << (16 + x)))
|
if (mask & (1 << (16 + x)))
|
||||||
{
|
{
|
||||||
MOVAPD(MDisp(RSP, offset), (X64Reg) x);
|
MOVUPD(MDisp(RSP, offset), (X64Reg) x);
|
||||||
offset += 16;
|
offset += 16;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -114,7 +114,7 @@ void XEmitter::ABI_PopRegistersAndAdjustStack(u32 mask, bool noProlog)
|
|||||||
{
|
{
|
||||||
if (mask & (1 << (16 + x)))
|
if (mask & (1 << (16 + x)))
|
||||||
{
|
{
|
||||||
MOVAPD((X64Reg) x, MDisp(RSP, size));
|
MOVUPD((X64Reg) x, MDisp(RSP, size));
|
||||||
size += 16;
|
size += 16;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user