From 3c18ddcc410f8d6af950807b7ccb94c90e117ac7 Mon Sep 17 00:00:00 2001 From: mio Date: Fri, 28 Oct 2022 16:23:50 +0200 Subject: [PATCH] Fix PC write for PPC32/64 --- uc.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/uc.c b/uc.c index 965d772a..b8469aa6 100644 --- a/uc.c +++ b/uc.c @@ -811,7 +811,11 @@ uc_err uc_emu_start(uc_engine *uc, uint64_t begin, uint64_t until, #endif #ifdef UNICORN_HAS_PPC case UC_ARCH_PPC: - uc_reg_write(uc, UC_PPC_REG_PC, &begin); + if (uc->mode & UC_MODE_PPC64) { + uc_reg_write(uc, UC_PPC_REG_PC, &begin); + } else { + uc_reg_write(uc, UC_PPC_REG_PC, &begin_pc32); + } break; #endif #ifdef UNICORN_HAS_RISCV