core: Use 0.25% safety region.

* gc.c (gc_up_arena): Up GC_SAFETY too.
* scripts/repl.mes: Remove MES_ARENA override.
This commit is contained in:
Jan Nieuwenhuizen 2017-04-02 12:58:18 +02:00
parent f9aedd1466
commit f79adb637f
3 changed files with 7 additions and 3 deletions

2
gc.c
View file

@ -23,9 +23,11 @@ gc_up_arena () ///((internal))
{
#if _POSIX_SOURCE
ARENA_SIZE *= 2;
GC_SAFETY *= 2;
void *p = realloc (g_cells-1, 2*ARENA_SIZE*sizeof(struct scm));
#else
ARENA_SIZE = ARENA_SIZE * 2;
GC_SAFETY = GC_SAFETY * 2;
//p = realloc (g_cells-1, 2*ARENA_SIZE*sizeof(struct scm));
int size = ARENA_SIZE * 2;
size = size * 12;

4
mes.c
View file

@ -43,7 +43,9 @@ typedef int bool;
int ARENA_SIZE = 100000;
int MAX_ARENA_SIZE = 20000000;
int GC_SAFETY = 20000;
//int GC_SAFETY_DIV = 400;
//int GC_SAFETY = ARENA_SIZE / 400;
int GC_SAFETY = 250;
typedef int SCM;
enum type_t {TCHAR, TCLOSURE, TCONTINUATION, TFUNCTION, TKEYWORD, TMACRO, TNUMBER, TPAIR, TREF, TSPECIAL, TSTRING, TSYMBOL, TVALUES, TVECTOR, TBROKEN_HEART};

View file

@ -1,8 +1,8 @@
#! /bin/sh
# -*-scheme-*-
MES=${MES-$(dirname $0)/mes}
MES_ARENA=${MES_ARENA-30000000}
export MES_ARENA
#MES_ARENA=${MES_ARENA-30000000}
#export MES_ARENA
prefix=module/
cat $prefix/mes/base-0.mes $0 /dev/stdin | $MES $MES_FLAGS "$@"
#paredit:|