zack's todo list
Mark Mitchell
mark@codesourcery.com
Mon Nov 13 10:23:00 GMT 2000
* GC performance
- Get strings out of the GC arena. (patch submitted)
- Get Laurnyas and Alexandre's patch to make ggc-page usable without
mmap applied, so we can throw away ggc-simple.
- Split arena into separate tree, RTL, misc pools.
- Dual mark bits for trees; avoids millions of calls to ggc_set_mark.
(Requires separate pools.)
- Look into not rounding all allocations up to powers of two.
(Saves large amount of memory.)
- Better GC statistics.
These are all good things. We want to go to a generational collector,
methinks, and I think I know how -- it's actually not a major change
once trees and rtl are in their own pools.
* Junk allocations
- Make __FUNCTION__ et al allocate the string only when used.
(Avoids pointless allocation of strings and decl structures for
every function. May mean we don't need prune_unused_decls
anymore.)
- Lazy make_decl_rtl - avoid allocating symbol_ref RTLs when they
won't ever be used.
- Don't create a complete IDENTIFIER_NODE for DECL_ASSEMBLER_NAME.
Likewise, these are good -- but may not be required for 3.0. I don't
see these as necessary; the GC work may be in order to get back lost
compile-time performance.
* Makefile cleanups
- Run mklibgcc at configure time and merge output into the big
Makefile
- Compile libiberty for build, get rid of private copies of several
libiberty files (Kaveh has patch already?)
- Do installation in separate shell script?
Probably not necessary for 3.0 -- but probably not risky either.
* Misc
- Templatized hashtab.c (avoids abstraction overhead, minor speed
win)
- Update cpp.texi
Likewise.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
More information about the Gcc
mailing list