Jit_LoadStoreFloating: stfiwx
This commit is contained in:
parent
dcfe955087
commit
459f977483
|
@ -195,12 +195,16 @@ void Jit64::stfiwx(UGeckoInstruction inst)
|
||||||
int a = inst.RA;
|
int a = inst.RA;
|
||||||
int b = inst.RB;
|
int b = inst.RB;
|
||||||
|
|
||||||
MOV_sum(32, RSCRATCH2, a ? gpr.R(a) : Imm32(0), gpr.R(b));
|
RCOpArg Ra = a ? gpr.Use(a, RCMode::Read) : RCOpArg::Imm32(0);
|
||||||
|
RCOpArg Rb = gpr.Use(b, RCMode::Read);
|
||||||
|
RCOpArg Rs = fpr.Use(s, RCMode::Read);
|
||||||
|
RegCache::Realize(Ra, Rb, Rs);
|
||||||
|
|
||||||
if (fpr.R(s).IsSimpleReg())
|
MOV_sum(32, RSCRATCH2, Ra, Rb);
|
||||||
MOVD_xmm(R(RSCRATCH), fpr.RX(s));
|
|
||||||
|
if (Rs.IsSimpleReg())
|
||||||
|
MOVD_xmm(R(RSCRATCH), Rs.GetSimpleReg());
|
||||||
else
|
else
|
||||||
MOV(32, R(RSCRATCH), fpr.R(s));
|
MOV(32, R(RSCRATCH), Rs);
|
||||||
SafeWriteRegToReg(RSCRATCH, RSCRATCH2, 32, 0, CallerSavedRegistersInUse());
|
SafeWriteRegToReg(RSCRATCH, RSCRATCH2, 32, 0, CallerSavedRegistersInUse());
|
||||||
gpr.UnlockAllX();
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue