I find trigger-secondary-gc-daemons! is called only in gc-clean,
which is called only in runtime/make.scm and disk-save.
GC-FINISH also calls GC-CLEAN when there are fewer than 4096 words
remaining in the heap after garbage collection. When this happens,
Scheme will abort to the nearest REPL and exclaim `out of memory!'.
Ideally, in this case, Scheme would instead expand the heap, rather
than aborting; and, independently, the OS could tell Scheme when
physical memory is scarce, in which case Scheme could try to shrink
the heap by running secondary GC daemons, aborting to the nearest
REPL, &c. But no OS does this, and we don't have a scalable GC, so
this strategy doesn't work and would perform badly anyway.