[var-tracking] small speed-ups

2011-08-22 Thread Dimitrios Apostolou
Hello list, this patch has all of my changes to var-tracking that I believe are worth keeping. These are all minor changes not touching algorithmic issues, I lost much time trying to understand what is actually done in var-tracking.c but I still don't get it. I wish there was some document de

Re: [var-tracking] small speed-ups

2011-08-22 Thread Jakub Jelinek
On Mon, Aug 22, 2011 at 01:30:33PM +0300, Dimitrios Apostolou wrote: > --- gcc/var-tracking.c2011-06-03 01:42:31 + > +++ gcc/var-tracking.c2011-08-22 09:52:08 + > @@ -1069,14 +1067,14 @@ adjust_insn (basic_block bb, rtx insn) > static inline bool > dv_is_decl_p (decl_or_va

Re: [var-tracking] small speed-ups

2011-08-23 Thread Dimitrios Apostolou
Hi jakub, On Mon, 22 Aug 2011, Jakub Jelinek wrote: On Mon, Aug 22, 2011 at 01:30:33PM +0300, Dimitrios Apostolou wrote: @@ -1191,7 +1189,7 @@ dv_uid2hash (dvuid uid) static inline hashval_t dv_htab_hash (decl_or_value dv) { - return dv_uid2hash (dv_uid (dv)); + return (hashval_t) (dv_uid

Re: [var-tracking] small speed-ups

2011-08-23 Thread Jakub Jelinek
On Tue, Aug 23, 2011 at 02:40:56PM +0300, Dimitrios Apostolou wrote: > I was hoping you'd ask so I'll ask back :-) Why are we doing it that > way? Why so much indirection in the first place? Why create inline > functions just to typecast and why do we need this CONST_CAST2 > ugliness in C code. I b

Re: [var-tracking] small speed-ups

2011-08-23 Thread Dimitrios Apostolou
On Tue, 23 Aug 2011, Jakub Jelinek wrote: On Tue, Aug 23, 2011 at 02:40:56PM +0300, Dimitrios Apostolou wrote: dst->vars = (shared_hash) pool_alloc (shared_hash_pool); dst->vars->refcount = 1; dst->vars->htab -= htab_create (MAX (src1_elems, src2_elems), variable_htab_hash, += hta