From 6c399ce9aef5b2a379bc35289ef6e01b272d5bdd Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Sat, 29 Nov 2014 02:20:31 +0000 Subject: [PATCH] [ARM32] Removes a block of conditional execution in the dispatcher. --- Source/Core/Core/PowerPC/JitArm32/JitAsm.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/Core/Core/PowerPC/JitArm32/JitAsm.cpp b/Source/Core/Core/PowerPC/JitArm32/JitAsm.cpp index bb19c300c4..9e630810d0 100644 --- a/Source/Core/Core/PowerPC/JitArm32/JitAsm.cpp +++ b/Source/Core/Core/PowerPC/JitArm32/JitAsm.cpp @@ -134,7 +134,7 @@ void JitArmAsmRoutineManager::Generate() // R12 Confirmed this is the correct iCache Location loaded. TST(R12, 0x80); // Test to see if it is a JIT block. - SetCC(CC_EQ); + FixupBranch no_block = B_CC(CC_NEQ); // Success, it is our Jitblock. MOVI2R(R14, (u32)jit->GetBlockCache()->GetCodePointers()); // LDR R14 right here to get CodePointers()[0] pointer. @@ -143,7 +143,7 @@ void JitArmAsmRoutineManager::Generate() B(R14); // No need to jump anywhere after here, the block will go back to dispatcher start - SetCC(); + SetJumpTarget(no_block); // If we get to this point, that means that we don't have the block cached to execute // So call ArmJit to compile the block and then execute it.