JitArm64: Drop icbi instruction
It was already just a fallback + exit. Now we emit the exit for all affected fallbacks.
This commit is contained in:
parent
dc83c8912f
commit
0054c4e0d9
|
@ -114,7 +114,6 @@ public:
|
||||||
void mtspr(UGeckoInstruction inst);
|
void mtspr(UGeckoInstruction inst);
|
||||||
|
|
||||||
// LoadStore
|
// LoadStore
|
||||||
void icbi(UGeckoInstruction inst);
|
|
||||||
void lXX(UGeckoInstruction inst);
|
void lXX(UGeckoInstruction inst);
|
||||||
void stX(UGeckoInstruction inst);
|
void stX(UGeckoInstruction inst);
|
||||||
void lmw(UGeckoInstruction inst);
|
void lmw(UGeckoInstruction inst);
|
||||||
|
|
|
@ -18,15 +18,6 @@
|
||||||
|
|
||||||
using namespace Arm64Gen;
|
using namespace Arm64Gen;
|
||||||
|
|
||||||
void JitArm64::icbi(UGeckoInstruction inst)
|
|
||||||
{
|
|
||||||
gpr.Flush(FlushMode::FLUSH_ALL);
|
|
||||||
fpr.Flush(FlushMode::FLUSH_ALL);
|
|
||||||
|
|
||||||
FallBackToInterpreter(inst);
|
|
||||||
WriteExit(js.compilerPC + 4);
|
|
||||||
}
|
|
||||||
|
|
||||||
void JitArm64::SafeLoadToReg(u32 dest, s32 addr, s32 offsetReg, u32 flags, s32 offset, bool update)
|
void JitArm64::SafeLoadToReg(u32 dest, s32 addr, s32 offsetReg, u32 flags, s32 offset, bool update)
|
||||||
{
|
{
|
||||||
// We want to make sure to not get LR as a temp register
|
// We want to make sure to not get LR as a temp register
|
||||||
|
|
|
@ -302,7 +302,7 @@ static GekkoOPTemplate table31[] =
|
||||||
|
|
||||||
{4, &JitArm64::twx}, // tw
|
{4, &JitArm64::twx}, // tw
|
||||||
{598, &JitArm64::DoNothing}, // sync
|
{598, &JitArm64::DoNothing}, // sync
|
||||||
{982, &JitArm64::icbi}, // icbi
|
{982, &JitArm64::FallBackToInterpreter}, // icbi
|
||||||
|
|
||||||
// Unused instructions on GC
|
// Unused instructions on GC
|
||||||
{310, &JitArm64::FallBackToInterpreter}, // eciwx
|
{310, &JitArm64::FallBackToInterpreter}, // eciwx
|
||||||
|
|
Loading…
Reference in New Issue