mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2024-09-21 03:41:42 +02:00
JitArm64: Fix srawx.
This commit is contained in:
parent
0a3e5a0fe8
commit
5a8c52ce3a
1 changed files with 8 additions and 2 deletions
|
@ -1305,10 +1305,16 @@ void JitArm64::srawx(UGeckoInstruction inst)
|
||||||
ComputeRC(gpr.GetImm(a), 0);
|
ComputeRC(gpr.GetImm(a), 0);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (gpr.IsImm(b) && (gpr.GetImm(b) & 0x20) == 0 && !js.op->wantsCA)
|
|
||||||
|
if (gpr.IsImm(b) && !js.op->wantsCA)
|
||||||
{
|
{
|
||||||
|
int amount = gpr.GetImm(b);
|
||||||
|
if (amount & 0x20)
|
||||||
|
amount = 0x1F;
|
||||||
|
else
|
||||||
|
amount &= 0x1F;
|
||||||
gpr.BindToRegister(a, a == s);
|
gpr.BindToRegister(a, a == s);
|
||||||
ASR(gpr.R(a), gpr.R(a), gpr.GetImm(b) & 0x1F);
|
ASR(gpr.R(a), gpr.R(s), amount);
|
||||||
}
|
}
|
||||||
else if (!js.op->wantsCA)
|
else if (!js.op->wantsCA)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue