Merge pull request #7290 from degasus/branch_following
Jit: Fix branch following.
This commit is contained in:
commit
ae0748ab07
|
@ -714,9 +714,7 @@ u32 PPCAnalyzer::Analyze(u32 address, CodeBlock* block, CodeBuffer* buffer, std:
|
||||||
if (inst.OPCD == 18 && block_size > 1)
|
if (inst.OPCD == 18 && block_size > 1)
|
||||||
{
|
{
|
||||||
// Always follow BX instructions.
|
// Always follow BX instructions.
|
||||||
// TODO: Loop unrolling might bloat the code size too much.
|
follow = true;
|
||||||
// Enable it carefully.
|
|
||||||
follow = destination != block->m_address;
|
|
||||||
destination = SignExt26(inst.LI << 2) + (inst.AA ? 0 : address);
|
destination = SignExt26(inst.LI << 2) + (inst.AA ? 0 : address);
|
||||||
if (inst.LK)
|
if (inst.LK)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue