B:BD[
2.11669] → [
2.11669:12087]
# for debugging garbage collector:
# logg_dbg("rep", "auto-gc at N " N)
# _dump_dot("pre-gc-" N ".dot")
# _gc_dot(_cons(_GLOBALS,
# _cons(_MACROS,
# _cons(_COMPARED_SYMBOLS,
# _nil()))),
# "auto-gc-" N "-marks.dot",
# "auto-gc-" N "-sweeps.dot")
# _dump_dot("post-gc-" N ".dot")
# cons this list up before we start using N, so N will be the
# same in all the debuggy statements below.
roots = _cons(_GLOBALS,
_cons(_MACROS,
_cons(_COMPARED_SYMBOLS,
_nil())))
if(DEBUG_GC) { # this would only be set if you use awk -v DEBUG_GC=1
logg_dbg("_maybe_gc", "auto-gc at N " N ". live cells: " length(_TYPE))
_dump_dot("pre-gc-" N ".dot")
_gc_dot(roots,
"auto-gc-" N "-marks.dot",
"auto-gc-" N "-sweeps.dot")
_dump_dot("post-gc-" N ".dot")
logg_dbg("_maybe_gc", "now, live cells: " length(_TYPE))
} else {
_gc(roots)
}