Merge pull request #1150 from FioraAeterna/extsmerge

JIT: merge lbz + extsb
This commit is contained in:
skidau 2014-09-30 13:19:45 +10:00
commit 7828ddd542
1 changed files with 9 additions and 0 deletions

View File

@ -94,6 +94,15 @@ void Jit64::lXXx(UGeckoInstruction inst)
PanicAlert("Invalid instruction"); PanicAlert("Invalid instruction");
} }
// PowerPC has no 8-bit sign extended load, but x86 does, so merge extsb with the load if we find it.
if (accessSize == 8 && js.next_inst.OPCD == 31 && js.next_inst.SUBOP10 == 954 &&
js.next_inst.RS == inst.RD && js.next_inst.RA == inst.RD && !js.next_inst.Rc)
{
js.downcountAmount++;
js.skipnext = true;
signExtend = true;
}
// TODO(ector): Make it dynamically enable/disable idle skipping where appropriate // TODO(ector): Make it dynamically enable/disable idle skipping where appropriate
// Will give nice boost to dual core mode // Will give nice boost to dual core mode
// (mb2): I agree, // (mb2): I agree,