JIT fix for the lfs instruction in x64 builds. Fixes Ultimate Spider-man.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6332 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
skidau 2010-11-02 10:27:57 +00:00
parent d5c941a3ba
commit 785154b89f

View File

@ -54,6 +54,8 @@ void Jit64::lfs(UGeckoInstruction inst)
INSTRUCTION_START
JITDISABLE(LoadStoreFloating)
Default(inst); return;
int d = inst.RD;
int a = inst.RA;
if (!a)
@ -64,7 +66,10 @@ void Jit64::lfs(UGeckoInstruction inst)
s32 offset = (s32)(s16)inst.SIMM_16;
if (jo.assumeFPLoadFromMem)
{
UnsafeLoadToEAX(gpr.R(a), 32, offset, false);
gpr.FlushLockX(ABI_PARAM1);
MOV(32, R(ABI_PARAM1), gpr.R(a));
UnsafeLoadRegToReg(ABI_PARAM1, EAX, 32, offset, false);
gpr.UnlockAllX();
}
else
{