mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2025-03-23 06:25:12 +00:00
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. Backports commit 5d4e1a1081d3f1ec2908ff0eaebe312389971ab4 from qemu
This commit is contained in:
parent
7db1bffdee
commit
eae07f4767
|
@ -756,7 +756,6 @@ static inline void tcg_gen_exit_tb(TCGContext *s, uintptr_t val)
|
|||
void tcg_gen_goto_tb(TCGContext *s, unsigned idx);
|
||||
|
||||
#if TARGET_LONG_BITS == 32
|
||||
#define TCGv TCGv_i32
|
||||
#define tcg_temp_new(s) tcg_temp_new_i32(s)
|
||||
#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(TCGContext *s, 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(s) tcg_temp_new_i64(s)
|
||||
#define tcg_global_reg_new tcg_global_reg_new_i64
|
||||
#define tcg_global_mem_new tcg_global_mem_new_i64
|
||||
|
|
|
@ -312,6 +312,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 a new issue