From 3c84242cf2be8e586666f56ea4cd4c6a792fff45 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Sat, 16 Apr 2022 10:22:22 +0200 Subject: [DYNAREC] Fixed an issue with internal loop to 1st instruction that then use last_ip (fixes Geekbench 5) --- src/dynarec/dynarec_native_pass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/dynarec/dynarec_native_pass.c b/src/dynarec/dynarec_native_pass.c index f46b3623..e4c5d047 100755 --- a/src/dynarec/dynarec_native_pass.c +++ b/src/dynarec/dynarec_native_pass.c @@ -41,7 +41,7 @@ uintptr_t native_pass(dynarec_native_t* dyn, uintptr_t addr) dyn->f.dfnone = 0; fpu_reset(dyn); int reset_n = -1; - dyn->last_ip = ip; // RIP is always set at start of block! + dyn->last_ip = (dyn->insts && dyn->insts[0].pred_sz)?0:ip; // RIP is always set at start of block unless there is a predecessor! // ok, go now INIT; while(ok) { -- cgit 1.4.1