core: gc: Enable memory dump debugging.

* src/gc.c (gc): If MES_DUMP is set, dump arena.  [POINTER_CELLS &&
!GC_NOFLIP]: Run gc_ twice to enable comparing memory dumps.
This commit is contained in:
Jan (janneke) Nieuwenhuizen 2020-09-20 09:35:56 +02:00
parent b05558ec00
commit 20595cd044
No known key found for this signature in database
GPG key ID: F3C1A0D9C1D65273

View file

@ -742,6 +742,8 @@ gc_ ()
SCM
gc ()
{
if (getenv ("MES_DUMP") != 0)
gc_dump_arena (g_cells, gc_free ());
if (g_debug > 5)
{
eputs ("symbols: ");
@ -753,6 +755,9 @@ gc ()
}
gc_push_frame ();
gc_ ();
#if POINTER_CELLS && !GC_NOFLIP
gc_ ();
#endif
gc_pop_frame ();
if (g_debug > 5)
{
@ -763,6 +768,8 @@ gc ()
write_error_ (R0);
eputs ("\n");
}
if (getenv ("MES_DUMP") != 0)
gc_dump_arena (g_cells, gc_free ());
return cell_unspecified;
}