This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Simple Value Range Propagation


> Josef, could you please try whether there is some change in compile-time
> performance if you include either my fibheap speedup patch
> http://gcc.gnu.org/ml/gcc-patches/2003-06/msg00698.html or use the
> simple heaps from
> http://gcc.gnu.org/ml/gcc-patches/2003-04/msg01569.html?

                          insn-attrtab.c   combine.c
total time (-O2)          ~ 20 s           ~ 5.5 s
VRP + current fibheap     0.30 s           0.09 s
VRP + speedup fibheap     0.27 s           0.07 s
VRP + normal heap         0.23 s           0.06 s

> You might also consider to precompute the function performed by
> compute_ranges_for_insn (it should only either set register range to
> range of other one, set it to constant or kill it), which would speed
> up things a bit in case you are iterating several times over single
> basic block.

During GCC bootstrap over 70% of BBs have only 1 iteration, almost every
other BB has 2 iterations, only 5% of BBs have 3 or more iterations, 31
iterations was the maximum.
Maybe precomputing will speed VRP up, maybe it will slow it down (because of
the overhead mainly for allocating/deallocating memory for precomputed effects
on ranges.

Josef


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]