------- Comment #18 from rguenth at gcc dot gnu dot org  2006-11-28 12:38 
-------
Most of the memory used is spent in the string pool:

String pool
entries         68980
identifiers     68980 (100.00%)
slots           131072
bytes           1012M (10M overhead)
table size      1024k
coll/search     0.7816
ins/search      0.2876
avg. entry      15394.37 bytes (+/- 68924.74)
longest entry   2130575

if you add -g to the compilation, dwarf2out.c happily xstrdup()s most of
them a few times and memory consumption goes up to 3.9GB.

All the stringpool handling and it's usage by classtype_mangled_name is
not very well optimized for such large strings (after all, we know the
string length there for example).


-- 


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

Reply via email to