summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cpu_threaded.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/cpu_threaded.c b/cpu_threaded.c
index 557b197..2d61b4a 100644
--- a/cpu_threaded.c
+++ b/cpu_threaded.c
@@ -3115,6 +3115,12 @@ s32 translate_block_arm(u32 pc, translation_region_type
generate_cycle_update();
}
}
+
+ /* This can happen if the last instruction is *not* inconditional */
+ if ((last_condition & 0x0F) != 0x0E) {
+ generate_branch_patch_conditional(backpatch_address, translation_ptr);
+ }
+
for(i = 0; i < translation_gate_targets; i++)
{
if(pc == translation_gate_target_pc[i])