Revision 1 as of 2011-06-09 19:40:37

Clear message

Notes for the next BdwGc conversion attempt:

Begin by removing conservative stack marking support and anything enabled by "--enable-checking".

Simplify allocation functions to remove any block allocation techniques. Use the vector allocation code as a model.

Check GC support functions for special behavior. E.g., Fgarbage_collect trims the undo list before anything else. Some fields may be effectively weak pointers, too.

It may be useful to keep staticpro for the time being. I think someone on the GC list mentioned that GCJ explicitly lists static roots to improve performance.

Maybe move weak hash table code into "alloc.c".

Move mark bits into external data structures? Or at least make it completely regular.

GTK code is somewhat tricky to convert; I don't understand what the callbacks are actually for and Emacs was crashing doing toolbar-related things.

Be careful about removing malloc-related conditionals (DOUG_LEA_MALLOC, etc.); Emacs does some stuff like installing malloc hooks which would still be useful for library functions that malloc.


CategoryGuileEmacs