Disables NEON optimized instructions.

These are causing issues in games. In particular you get pink on the screen in Animal Crossing.
Disable until fully investigated.

This also disables fastmem on floating point loadstore instructions which are horribly broken and won't actually backpatch when an invalid read/write
is encountered.
This commit is contained in:
Ryan Houdek committed 2014-11-14 15:13:13 +00:00
1 parent 00f4217382
commit 69c3e6516c
3 files changed
+10 -2

No files matched your search

@@ -27,6 +27,7 @@ void JitArm::fctiwx(UGeckoInstruction inst)
{
INSTRUCTION_START
JITDISABLE(bJITFloatingPointOff);
FALLBACK_IF(true);
u32 b = inst.FB;
u32 d = inst.FD;
@@ -134,6 +135,8 @@ void JitArm::fctiwzx(UGeckoInstruction inst)
{
INSTRUCTION_START
JITDISABLE(bJITFloatingPointOff);
FALLBACK_IF(true);
u32 b = inst.FB;
u32 d = inst.FD;
@@ -493,6 +496,8 @@ void JitArm::frsqrtex(UGeckoInstruction inst)
{
INSTRUCTION_START
JITDISABLE(bJITPairedOff);
FALLBACK_IF(true);
FALLBACK_IF(inst.Rc);
u32 b = inst.FB, d = inst.FD;
@@ -134,7 +134,7 @@ void JitArm::lfXX(UGeckoInstruction inst)
if (update)
MOV(RA, rB);
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bFastmem)
if (false)
{
Operand2 mask(2, 1); // ~(Memory::MEMVIEW32_MASK)
BIC(rB, rB, mask); // 1
@@ -301,7 +301,8 @@ void JitArm::stfXX(UGeckoInstruction inst)
MOV(RA, rB);
SetCC();
}
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bFastmem)
if (false)
{
Operand2 mask(2, 1); // ~(Memory::MEMVIEW32_MASK)
BIC(rB, rB, mask); // 1
@@ -21,6 +21,8 @@ void JitArm::ps_rsqrte(UGeckoInstruction inst)
{
INSTRUCTION_START
JITDISABLE(bJITPairedOff);
FALLBACK_IF(true);
FALLBACK_IF(inst.Rc);
u32 b = inst.FB, d = inst.FD;