diff options
author | Richard Henderson <rth@twiddle.net> | 2016-06-22 20:43:29 -0700 |
---|---|---|
committer | Richard Henderson <rth@twiddle.net> | 2016-08-05 21:44:40 +0530 |
commit | bee158cb4dde35c41632a3a129c869f14a32f8f0 (patch) | |
tree | 918c611a3e7363bfbe1c00990a26dc4d1b3aaa00 /tcg/tcg.c | |
parent | dcb8e75870e2de199db853697f8839cb603beefe (diff) |
tcg: Fold life data into TCGOp
Reduce the size of other bitfields to make room.
This reduces the cache footprint of compilation.
Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'tcg/tcg.c')
-rw-r--r-- | tcg/tcg.c | 9 |
1 files changed, 3 insertions, 6 deletions
@@ -1342,10 +1342,7 @@ static inline void tcg_la_bb_end(TCGContext *s, uint8_t *dead_temps, static void tcg_liveness_analysis(TCGContext *s) { uint8_t *dead_temps, *mem_temps; - int oi, oi_prev, nb_ops; - - nb_ops = s->gen_next_op_idx; - s->op_arg_life = tcg_malloc(nb_ops * sizeof(TCGLifeData)); + int oi, oi_prev; dead_temps = tcg_malloc(s->nb_temps); mem_temps = tcg_malloc(s->nb_temps); @@ -1568,7 +1565,7 @@ static void tcg_liveness_analysis(TCGContext *s) } break; } - s->op_arg_life[oi] = arg_life; + op->life = arg_life; } } #else @@ -2410,7 +2407,7 @@ int tcg_gen_code(TCGContext *s, TranslationBlock *tb) TCGArg * const args = &s->gen_opparam_buf[op->args]; TCGOpcode opc = op->opc; const TCGOpDef *def = &tcg_op_defs[opc]; - TCGLifeData arg_life = s->op_arg_life[oi]; + TCGLifeData arg_life = op->life; oi_next = op->next; #ifdef CONFIG_PROFILER |