------- Comment #40 from hubicka at gcc dot gnu dot org  2009-02-21 12:40 
-------
I happen to have compiler with statistics around:
We still need about 400MB, mostly integer constants:
c-decl.c:473 (bind)                                  125040: 0.0%          0:
0.0%          0: 0.0%          0: 0.0%       2605
tree.c:5905 (build_function_type)                     13000: 0.0%          0:
0.0%     113400: 0.1%       5056: 0.0%        632
stringpool.c:73 (alloc_node)                           6032: 0.0%          0:
0.0%     174096: 0.1%      13856: 0.0%       1732
langhooks.c:543 (add_builtin_function_common)             0: 0.0%          0:
0.0%     442224: 0.2%      59760: 0.2%       1494
c-typeck.c:6472 (output_init_element)                     0: 0.0%  
47910400:100.0%   45541112:23.7%   26342936:66.6%         19
convert.c:752 (convert_to_integer)                117415728:44.6%          0:
0.0%          0: 0.0%   13046192:33.0%    1630774
ggc-common.c:187 (ggc_calloc)                      67094608:25.5%          0:
0.0%   67162736:34.9%       1088: 0.0%         58
tree.c:1004 (build_int_cst_wide)                   78264768:29.8%          0:
0.0%   78266496:40.7%          0: 0.0%    3261068
Total                                             262986355         47910416   
    192171521         39527780          4905807
source location                                     Garbage            Freed   
         Leak         Overhead            Times


It seems that we produce awful amount of garbage during the initializer
construction.  Perhaps by forcing ggc_collect there we can get down to 200MB
that we need to reprezent it at the end?

Honza


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12245

Reply via email to