core: jam-scaper/garbage-collector: Use only one arena.
authorJan Nieuwenhuizen <janneke@gnu.org>
Wed, 25 Apr 2018 06:35:05 +0000 (08:35 +0200)
committerJan Nieuwenhuizen <janneke@gnu.org>
Wed, 25 Apr 2018 06:35:05 +0000 (08:35 +0200)
commite3b929aa878178773eb19bf10143be5f81e32e06
tree6b1c12de406f7a7e5888cfd54b48ff1f620b48d7
parente628b311d691b0ea1ec71897b43dc0ae1be2e69e
core: jam-scaper/garbage-collector: Use only one arena.

* src/mes.c (ARENA_SIZE): Lower to 200000.
  (MES_MAX_ARENA): Bump to 300000000.
  (JAM_SIZE): New global.
  (make_cell__): Remove ARENA assert.
  (gc_init_cells): Alloc ARENA_SIZE + JAM_SIZE.
  (mes_symbols): Do not init news.
  (gc_init_news): Remove.
  (main): Initialize JAM_SIZE, consider MES_JAM environment variable.
* src/gc.c (gc_init_news): Move from mes.c.  Start at g_free.
  (gc_flip): Do not flip to g_news, instead copy g_news to cells.
  (gc_up_arena): Realloc to ARENA_SIZE + JAM_SIZE.
  (gc_): Init news.  Only up arena if g_news is safe.
src/gc.c
src/mes.c