Fixed some BindToRegister calls (removing unnecessary MOV instructions for speedup)
This commit is contained in:
parent
ecc63651c7
commit
60cddf0823
|
@ -1581,7 +1581,7 @@ void Jit64::rlwnmx(UGeckoInstruction inst)
|
||||||
{
|
{
|
||||||
gpr.FlushLockX(ECX);
|
gpr.FlushLockX(ECX);
|
||||||
gpr.Lock(a, b, s);
|
gpr.Lock(a, b, s);
|
||||||
gpr.BindToRegister(a, true, true);
|
gpr.BindToRegister(a, (a == b || a == s), true);
|
||||||
MOV(32, R(ECX), gpr.R(b));
|
MOV(32, R(ECX), gpr.R(b));
|
||||||
if (a != s)
|
if (a != s)
|
||||||
{
|
{
|
||||||
|
@ -1653,7 +1653,7 @@ void Jit64::srwx(UGeckoInstruction inst)
|
||||||
{
|
{
|
||||||
gpr.FlushLockX(ECX);
|
gpr.FlushLockX(ECX);
|
||||||
gpr.Lock(a, b, s);
|
gpr.Lock(a, b, s);
|
||||||
gpr.BindToRegister(a, true, true);
|
gpr.BindToRegister(a, (a == b || a == s), true);
|
||||||
MOV(32, R(ECX), gpr.R(b));
|
MOV(32, R(ECX), gpr.R(b));
|
||||||
TEST(32, R(ECX), Imm32(32));
|
TEST(32, R(ECX), Imm32(32));
|
||||||
if (a != s)
|
if (a != s)
|
||||||
|
@ -1691,7 +1691,7 @@ void Jit64::slwx(UGeckoInstruction inst)
|
||||||
{
|
{
|
||||||
gpr.FlushLockX(ECX);
|
gpr.FlushLockX(ECX);
|
||||||
gpr.Lock(a, b, s);
|
gpr.Lock(a, b, s);
|
||||||
gpr.BindToRegister(a, true, true);
|
gpr.BindToRegister(a, (a == b || a == s), true);
|
||||||
MOV(32, R(ECX), gpr.R(b));
|
MOV(32, R(ECX), gpr.R(b));
|
||||||
TEST(32, R(ECX), Imm32(32));
|
TEST(32, R(ECX), Imm32(32));
|
||||||
if (a != s)
|
if (a != s)
|
||||||
|
@ -1722,7 +1722,7 @@ void Jit64::srawx(UGeckoInstruction inst)
|
||||||
int s = inst.RS;
|
int s = inst.RS;
|
||||||
gpr.Lock(a, s, b);
|
gpr.Lock(a, s, b);
|
||||||
gpr.FlushLockX(ECX);
|
gpr.FlushLockX(ECX);
|
||||||
gpr.BindToRegister(a, true, true);
|
gpr.BindToRegister(a, (a == s || a == b), true);
|
||||||
JitClearCA();
|
JitClearCA();
|
||||||
MOV(32, R(ECX), gpr.R(b));
|
MOV(32, R(ECX), gpr.R(b));
|
||||||
if (a != s)
|
if (a != s)
|
||||||
|
|
Loading…
Reference in New Issue