Partial revert of 86360ad71df0070283469b8ae59f33cdd013501d, because get the "wrong" version of stl_p, the one that does byte swapping appropriate for the target.
Cc: Peter Maydell <peter.mayd...@linaro.org> Signed-off-by: Richard Henderson <r...@twiddle.net> --- include/exec/exec-all.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h index 0766e24..2c0c2d5 100644 --- a/include/exec/exec-all.h +++ b/include/exec/exec-all.h @@ -229,7 +229,8 @@ void ppc_tb_set_jmp_target(unsigned long jmp_addr, unsigned long addr); static inline void tb_set_jmp_target1(uintptr_t jmp_addr, uintptr_t addr) { /* patch the branch destination */ - stl_p((void*)jmp_addr, addr - (jmp_addr + 4)); + int32_t disp = addr - (jmp_addr + 4); + memcpy((void*)jmp_addr, &disp, 4); /* no need to flush icache explicitly */ } #elif defined(__aarch64__) -- 1.9.0