mirror of https://github.com/xemu-project/xemu.git
tcg: Move definition of type TCGv
The target-dependant type TCGv must be defined in "tcg/tcg.h" before including the tracing helper wrappers in "tcg/tcg-op.h". It also makes more sense to define it here, where other TCG types are defined too. Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu> Message-id: 145641860129.30295.17554707227384022653.stgit@localhost Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
1bcea73e13
commit
5d4e1a1081
|
@ -756,7 +756,6 @@ static inline void tcg_gen_exit_tb(uintptr_t val)
|
|||
void tcg_gen_goto_tb(unsigned idx);
|
||||
|
||||
#if TARGET_LONG_BITS == 32
|
||||
#define TCGv TCGv_i32
|
||||
#define tcg_temp_new() tcg_temp_new_i32()
|
||||
#define tcg_global_reg_new tcg_global_reg_new_i32
|
||||
#define tcg_global_mem_new tcg_global_mem_new_i32
|
||||
|
@ -768,7 +767,6 @@ void tcg_gen_goto_tb(unsigned idx);
|
|||
#define tcg_gen_qemu_ld_tl tcg_gen_qemu_ld_i32
|
||||
#define tcg_gen_qemu_st_tl tcg_gen_qemu_st_i32
|
||||
#else
|
||||
#define TCGv TCGv_i64
|
||||
#define tcg_temp_new() tcg_temp_new_i64()
|
||||
#define tcg_global_reg_new tcg_global_reg_new_i64
|
||||
#define tcg_global_mem_new tcg_global_mem_new_i64
|
||||
|
|
|
@ -309,6 +309,13 @@ typedef struct TCGv_i32_d *TCGv_i32;
|
|||
typedef struct TCGv_i64_d *TCGv_i64;
|
||||
typedef struct TCGv_ptr_d *TCGv_ptr;
|
||||
typedef TCGv_ptr TCGv_env;
|
||||
#if TARGET_LONG_BITS == 32
|
||||
#define TCGv TCGv_i32
|
||||
#elif TARGET_LONG_BITS == 64
|
||||
#define TCGv TCGv_i64
|
||||
#else
|
||||
#error Unhandled TARGET_LONG_BITS value
|
||||
#endif
|
||||
|
||||
static inline TCGv_i32 QEMU_ARTIFICIAL MAKE_TCGV_I32(intptr_t i)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue