Index: tcg/tcg-op.h =================================================================== --- tcg/tcg-op.h (revision 5809) +++ tcg/tcg-op.h (working copy) @@ -132,7 +132,7 @@ TCGArg offset) { *gen_opc_ptr++ = opc; - *gen_opparam_ptr++ = GET_TCGV_I32(val); + *gen_opparam_ptr++ = GET_TCGV_I64(val); *gen_opparam_ptr++ = GET_TCGV_PTR(base); *gen_opparam_ptr++ = offset; } @@ -166,7 +166,7 @@ } static inline void tcg_gen_op4_i64(int opc, TCGv_i64 arg1, TCGv_i64 arg2, - TCGv_i64 arg3, TCGv_i32 arg4) + TCGv_i64 arg3, TCGv_i64 arg4) { *gen_opc_ptr++ = opc; *gen_opparam_ptr++ = GET_TCGV_I64(arg1); Index: tcg/tcg.c =================================================================== --- tcg/tcg.c (revision 5809) +++ tcg/tcg.c (working copy) @@ -746,7 +746,7 @@ char *tcg_get_arg_str_i64(TCGContext *s, char *buf, int buf_size, TCGv_i64 arg) { - return tcg_get_arg_str_idx(s, buf, buf_size, GET_TCGV_I32(arg)); + return tcg_get_arg_str_idx(s, buf, buf_size, GET_TCGV_I64(arg)); } static int helper_cmp(const void *p1, const void *p2) Index: tcg/tcg.h =================================================================== --- tcg/tcg.h (revision 5809) +++ tcg/tcg.h (working copy) @@ -126,20 +126,20 @@ typedef struct { - int n; + int i32; } TCGv_i32; typedef struct { - int n; + int i64; } TCGv_i64; #define MAKE_TCGV_I32(i) __extension__ \ ({ TCGv_i32 make_tcgv_tmp = {i}; make_tcgv_tmp;}) #define MAKE_TCGV_I64(i) __extension__ \ ({ TCGv_i64 make_tcgv_tmp = {i}; make_tcgv_tmp;}) -#define GET_TCGV_I32(t) ((t).n) -#define GET_TCGV_I64(t) ((t).n) +#define GET_TCGV_I32(t) ((t).i32) +#define GET_TCGV_I64(t) ((t).i64) #if TCG_TARGET_REG_BITS == 32 #define TCGV_LOW(t) MAKE_TCGV_I32(GET_TCGV_I64(t)) #define TCGV_HIGH(t) MAKE_TCGV_I32(GET_TCGV_I64(t) + 1)