From b66386623176e0b0f3bd270640bdb8ac8431c732 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Wed, 18 Sep 2013 14:54:45 -0700 Subject: [PATCH] tcg: More use of TCGReg where appropriate Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- tcg/tcg.c | 26 +++++++++++++++----------- tcg/tcg.h | 8 ++++---- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/tcg/tcg.c b/tcg/tcg.c index 70c0cff..c0145ea 100644 --- a/tcg/tcg.c +++ b/tcg/tcg.c @@ -448,7 +448,7 @@ static inline TCGTemp *tcg_global_alloc(TCGContext *s) } static int tcg_global_reg_new_internal(TCGContext *s, TCGType type, - int reg, const char *name) + TCGReg reg, const char *name) { TCGTemp *ts; @@ -467,7 +467,7 @@ static int tcg_global_reg_new_internal(TCGContext *s, TCGType type, return temp_idx(s, ts); } -void tcg_set_frame(TCGContext *s, int reg, intptr_t start, intptr_t size) +void tcg_set_frame(TCGContext *s, TCGReg reg, intptr_t start, intptr_t size) { int idx; s->frame_start = start; @@ -476,7 +476,7 @@ void tcg_set_frame(TCGContext *s, int reg, intptr_t start, intptr_t size) s->frame_temp = &s->temps[idx]; } -TCGv_i32 tcg_global_reg_new_i32(int reg, const char *name) +TCGv_i32 tcg_global_reg_new_i32(TCGReg reg, const char *name) { TCGContext *s = &tcg_ctx; int idx; @@ -488,7 +488,7 @@ TCGv_i32 tcg_global_reg_new_i32(int reg, const char *name) return MAKE_TCGV_I32(idx); } -TCGv_i64 tcg_global_reg_new_i64(int reg, const char *name) +TCGv_i64 tcg_global_reg_new_i64(TCGReg reg, const char *name) { TCGContext *s = &tcg_ctx; int idx; @@ -1609,7 +1609,8 @@ static void dump_regs(TCGContext *s) static void check_regs(TCGContext *s) { - int reg, k; + TCGReg reg; + int k; TCGTemp *ts; char buf[64]; @@ -1662,7 +1663,7 @@ static void temp_allocate_frame(TCGContext *s, int temp) } /* sync register 'reg' by saving it to the corresponding temporary */ -static inline void tcg_reg_sync(TCGContext *s, int reg) +static inline void tcg_reg_sync(TCGContext *s, TCGReg reg) { TCGTemp *ts; int temp; @@ -1680,7 +1681,7 @@ static inline void tcg_reg_sync(TCGContext *s, int reg) } /* free register 'reg' by spilling the corresponding temporary if necessary */ -static void tcg_reg_free(TCGContext *s, int reg) +static void tcg_reg_free(TCGContext *s, TCGReg reg) { int temp; @@ -1693,9 +1694,10 @@ static void tcg_reg_free(TCGContext *s, int reg) } /* Allocate a register belonging to reg1 & ~reg2 */ -static int tcg_reg_alloc(TCGContext *s, TCGRegSet reg1, TCGRegSet reg2) +static TCGReg tcg_reg_alloc(TCGContext *s, TCGRegSet reg1, TCGRegSet reg2) { - int i, reg; + int i; + TCGReg reg; TCGRegSet reg_ct; tcg_regset_andnot(reg_ct, reg1, reg2); @@ -1960,7 +1962,8 @@ static void tcg_reg_alloc_op(TCGContext *s, uint8_t sync_args) { TCGRegSet allocated_regs; - int i, k, nb_iargs, nb_oargs, reg; + int i, k, nb_iargs, nb_oargs; + TCGReg reg; TCGArg arg; const TCGArgConstraint *arg_ct; TCGTemp *ts; @@ -2136,7 +2139,8 @@ static void tcg_reg_alloc_call(TCGContext *s, int nb_oargs, int nb_iargs, const TCGArg * const args, uint16_t dead_args, uint8_t sync_args) { - int flags, nb_regs, i, reg; + int flags, nb_regs, i; + TCGReg reg; TCGArg arg; TCGTemp *ts; intptr_t stack_offset; diff --git a/tcg/tcg.h b/tcg/tcg.h index 8b7efed..3674739 100644 --- a/tcg/tcg.h +++ b/tcg/tcg.h @@ -448,7 +448,7 @@ typedef enum TCGTempVal { } TCGTempVal; typedef struct TCGTemp { - unsigned int reg:8; + TCGReg reg:8; TCGTempVal val_type:8; TCGType base_type:8; TCGType type:8; @@ -628,12 +628,12 @@ void tcg_func_start(TCGContext *s); int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf); -void tcg_set_frame(TCGContext *s, int reg, intptr_t start, intptr_t size); +void tcg_set_frame(TCGContext *s, TCGReg reg, intptr_t start, intptr_t size); int tcg_global_mem_new_internal(TCGType, TCGv_ptr, intptr_t, const char *); -TCGv_i32 tcg_global_reg_new_i32(int reg, const char *name); -TCGv_i64 tcg_global_reg_new_i64(int reg, const char *name); +TCGv_i32 tcg_global_reg_new_i32(TCGReg reg, const char *name); +TCGv_i64 tcg_global_reg_new_i64(TCGReg reg, const char *name); TCGv_i32 tcg_temp_new_internal_i32(int temp_local); TCGv_i64 tcg_temp_new_internal_i64(int temp_local); -- 2.7.4