diff mbox

tci: do not use CPUArchState in tcg-target.h

Message ID 1432022374-10496-1-git-send-email-pbonzini@redhat.com
State New
Headers show

Commit Message

Paolo Bonzini May 19, 2015, 7:59 a.m. UTC
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(-)

Comments

Richard Henderson May 20, 2015, 7:21 p.m. UTC | #1
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~
Paolo Bonzini May 21, 2015, 12:34 p.m. UTC | #2
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
Alexander Graf May 21, 2015, 5:22 p.m. UTC | #3
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 mbox

Patch

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)
 {