Skip to content

Commit

Permalink
Merge pull request #495 from Sonicadvance1/ARM-fix-subfic
Browse files Browse the repository at this point in the history
Fix the ARM JIT's subfic implementation.
  • Loading branch information
delroth committed Jun 15, 2014
2 parents ddf5399 + 83157ba commit 5a15606
Showing 1 changed file with 2 additions and 7 deletions.
9 changes: 2 additions & 7 deletions Source/Core/Core/PowerPC/JitArm32/JitArm_Integer.cpp
Expand Up @@ -104,16 +104,12 @@ void JitArm::FinalizeCarry(ARMReg reg)
STR(tmp, R9, PPCSTATE_OFF(spr[SPR_XER]));
gpr.Unlock(tmp);
}
// Wrong - prevents WW from loading in to a game and also inverted intro logos

void JitArm::subfic(UGeckoInstruction inst)
{
INSTRUCTION_START
JITDISABLE(bJITIntegerOff)

// FIXME
FallBackToInterpreter(inst);
return;

int a = inst.RA, d = inst.RD;

int imm = inst.SIMM_16;
Expand All @@ -127,8 +123,7 @@ void JitArm::subfic(UGeckoInstruction inst)
BIC(tmp, tmp, mask);
// Flags act exactly like subtracting from 0
RSBS(gpr.R(d), gpr.R(d), 0);
// Output carry is inverted
SetCC(CC_CC);
SetCC(CC_CS);
ORR(tmp, tmp, mask);
SetCC();
STR(tmp, R9, PPCSTATE_OFF(spr[SPR_XER]));
Expand Down

0 comments on commit 5a15606

Please sign in to comment.