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]

Memory reduction patches for 3.4, round 1


Hi,
Current 3.4 branch require 52MB to compile combine.c, mainline require 30MB, my
expreimental tree require 17MB.  I would like to propose to merge following
patches from mainline into 3.4 branch.  This include only patches that didn't
cause any breakage, I would still like to merge other cselib patches, but first
I would like to solve semi-latent bug in schedule-ebbs and gcse.c the patch to
invalidate released memory uncovered.

I would also propose the statistics patch to be applied so we can analyze the
code more easilly.
http://gcc.gnu.org/ml/gcc-patches/2004-01/msg02048.html
http://gcc.gnu.org/ml/gcc-patches/2004-01/msg02231.html

So far I would propose following patches:
genrtl.c:33 (gen_rtx_fmt_ee)                                     263694    3164328          0:5.784%
   Pertly dealt with
   http://gcc.gnu.org/ml/gcc-patches/2004-01/msg02354.html
   For more we need to move loglinks into separate datastructure, we need to deal with this later.
alias.c:2734 (init_alias_analysis)                                  828    3078144     964296:7.389%
   This is solved by http://gcc.gnu.org/ml/gcc-patches/2004-01/msg02084.html
   The new code consume about 59KB in varray overhead.

cselib.c:848 (cselib_subst_to_values)                            144581    1672936          0:3.058%
ggc-common.c:188 (ggc_calloc)                                     26909    4945088     170900:9.351%
cselib.c:150 (new_elt_list)                                      257952    2063616          0:3.772%
genrtl.c:619 (gen_rtx_fmt_0)                                     271597    2172776          0:3.971%
cselib.c:708 (new_cselib_val)                                    270230    5404600          0:9.879%
cselib.c:167 (new_elt_loc_list)                                  350759    7015180          0:12.822%

   As mentioned, I am holding the cselib patches until remaining (unrelated)
   problesm are tracked down, however following two patches reduce amount of
   cselib invocations to about 50%:
     http://gcc.gnu.org/ml/gcc-patches/2004-01/msg02317.html
     http://gcc.gnu.org/ml/gcc-patches/2004-01/msg02736.html

Finally I would like to propose
http://gcc.gnu.org/ml/gcc-patches/2004-01/msg02748.html
to speed up reload.  It makes noticeable difference at very low risc.
     
Honza


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