Message ID | 1432022374-10496-1-git-send-email-pbonzini@redhat.com |
---|---|
State | New |
Headers | show |
On 05/19/2015 12:59 AM, Paolo Bonzini wrote: > tcg-target.h does not use any QEMU-specific symbols, save for tci's usage > of CPUArchState. Pull that up to tcg/tcg.h. Reviewed-by: Richard Henderson <rth@twiddle.net> > This will make it possible to include tcg-target.h in cpu-defs.h. Why? r~
On 20/05/2015 21:21, Richard Henderson wrote: > On 05/19/2015 12:59 AM, Paolo Bonzini wrote: >> tcg-target.h does not use any QEMU-specific symbols, save for tci's usage >> of CPUArchState. Pull that up to tcg/tcg.h. > > Reviewed-by: Richard Henderson <rth@twiddle.net> > >> This will make it possible to include tcg-target.h in cpu-defs.h. > > Why? For TCG_TARGET_DISPLACEMENT_BITS. The patch to use it in cpu-defs.h broke TCI. Alex, can you queue this patch too with Richard's R-b? Paolo
On 21.05.15 14:34, Paolo Bonzini wrote: > > > On 20/05/2015 21:21, Richard Henderson wrote: >> On 05/19/2015 12:59 AM, Paolo Bonzini wrote: >>> tcg-target.h does not use any QEMU-specific symbols, save for tci's usage >>> of CPUArchState. Pull that up to tcg/tcg.h. >> >> Reviewed-by: Richard Henderson <rth@twiddle.net> >> >>> This will make it possible to include tcg-target.h in cpu-defs.h. >> >> Why? > > For TCG_TARGET_DISPLACEMENT_BITS. The patch to use it in cpu-defs.h > broke TCI. > > Alex, can you queue this patch too with Richard's R-b? Sure. Thanks, applied to ppc-next. Alex
diff --git a/tcg/tcg.h b/tcg/tcg.h index fbb3daf..647aa4e 100644 --- a/tcg/tcg.h +++ b/tcg/tcg.h @@ -876,7 +876,9 @@ static inline size_t tcg_current_code_size(TCGContext *s) #define TB_EXIT_ICOUNT_EXPIRED 2 #define TB_EXIT_REQUESTED 3 -#if !defined(tcg_qemu_tb_exec) +#ifdef HAVE_TCG_QEMU_TB_EXEC +uintptr_t tcg_qemu_tb_exec(CPUArchState *env, uint8_t *tb_ptr); +#else # define tcg_qemu_tb_exec(env, tb_ptr) \ ((uintptr_t (*)(void *, void *))tcg_ctx.code_gen_prologue)(env, tb_ptr) #endif diff --git a/tcg/tci/tcg-target.h b/tcg/tci/tcg-target.h index bd1e974..662d45c 100644 --- a/tcg/tci/tcg-target.h +++ b/tcg/tci/tcg-target.h @@ -175,8 +175,7 @@ typedef enum { void tci_disas(uint8_t opc); -uintptr_t tcg_qemu_tb_exec(CPUArchState *env, uint8_t *tb_ptr); -#define tcg_qemu_tb_exec tcg_qemu_tb_exec +#define HAVE_TCG_QEMU_TB_EXEC static inline void flush_icache_range(uintptr_t start, uintptr_t stop) {
tcg-target.h does not use any QEMU-specific symbols, save for tci's usage of CPUArchState. Pull that up to tcg/tcg.h. This will make it possible to include tcg-target.h in cpu-defs.h. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- tcg/tcg.h | 4 +++- tcg/tci/tcg-target.h | 3 +-- 2 files changed, 4 insertions(+), 3 deletions(-)