Am 19.03.2012 22:33, schrieb malc: > On Mon, 19 Mar 2012, Stefan Weil wrote: > >> The previous commit changed function tb_set_jmp_target1 and is needed >> for w64 hosts. >> >> This patch is not needed for w64, but it synchronizes tb_set_jmp_target1 >> and ppc_tb_set_jmp_target so that both functions have the same signature. >> >> Cc: malc <av1...@comtv.ru> >> Signed-off-by: Stefan Weil <s...@weilnetz.de> >> --- >> exec-all.h | 2 +- >> tcg/ppc/tcg-target.c | 2 +- >> tcg/ppc64/tcg-target.c | 2 +- >> 3 files changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/exec-all.h b/exec-all.h >> index a6d6519..9ffd778 100644 >> --- a/exec-all.h >> +++ b/exec-all.h >> @@ -199,7 +199,7 @@ static inline void tb_set_jmp_target1(uintptr_t >> jmp_addr, uintptr_t addr) >> /* no need to flush icache explicitly */ >> } >> #elif defined(_ARCH_PPC) >> -void ppc_tb_set_jmp_target(unsigned long jmp_addr, unsigned long addr); >> +void ppc_tb_set_jmp_target(uintptr_t jmp_addr, uintptr_t addr); >> #define tb_set_jmp_target1 ppc_tb_set_jmp_target >> #elif defined(__i386__) || defined(__x86_64__) >> static inline void tb_set_jmp_target1(uintptr_t jmp_addr, uintptr_t addr) >> diff --git a/tcg/ppc/tcg-target.c b/tcg/ppc/tcg-target.c >> index b0aa914..57000e5 100644 >> --- a/tcg/ppc/tcg-target.c >> +++ b/tcg/ppc/tcg-target.c >> @@ -1305,7 +1305,7 @@ static void tcg_out_brcond2 (TCGContext *s, const >> TCGArg *args, >> tcg_out_bc (s, (BC | BI (7, CR_EQ) | BO_COND_TRUE), args[5]); >> } >> >> -void ppc_tb_set_jmp_target (unsigned long jmp_addr, unsigned long addr) >> +void ppc_tb_set_jmp_target (uintptr_t jmp_addr, uintptr_t addr) >> { >> uint32_t *ptr; >> long disp = addr - jmp_addr; > > This should become intptr_t then..
> That said ppc32 code assumes 32bit addresses, and ppc64 tcg_taget_long > wide ones.. IOW needs some thinking. Hm? On both host platforms relevant here, Linux and Darwin, long and intptr_t should have the same width, on both ppc and ppc64, so no practical difference. I was about to add my Acked-by - where do you see issues? Or do you just see room for further code improvements elsewhere? Andreas -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg