diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2012-04-04 13:28:11 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2012-04-04 13:28:11 -0700 |
commit | 22549f7e02841d5e6fcc6654dbaddcedc485f7e3 (patch) | |
tree | d5c9bbb90f439993820c5668940d8fc3fb24f0eb /gc.c | |
parent | 546385def966f1baa475ab1552394f60a3f61a86 (diff) | |
download | txr-22549f7e02841d5e6fcc6654dbaddcedc485f7e3.tar.gz txr-22549f7e02841d5e6fcc6654dbaddcedc485f7e3.tar.bz2 txr-22549f7e02841d5e6fcc6654dbaddcedc485f7e3.zip |
* configure (gen_gc): Default to off.
Help section added for gen_gc variable.
* gc.c (gc): Some missing CONFIG_GEN_GC added.
Diffstat (limited to 'gc.c')
-rw-r--r-- | gc.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -534,7 +534,9 @@ static int_ptr_t sweep(void) void gc(void) { val gc_stack_top = nil; +#if CONFIG_GEN_GC int exhausted = (free_list == 0); +#endif if (gc_enabled) { int swept; @@ -552,10 +554,16 @@ void gc(void) mark(&mc, &gc_stack_top); hash_process_weak(); swept = sweep(); +#if CONFIG_GEN_GC if (full_gc && swept < 3 * HEAP_SIZE / 4) more(); else if (!full_gc && swept < HEAP_SIZE / 4 && exhausted) more(); +#else + if (swept < 3 * HEAP_SIZE / 4) + more(); +#endif + #if CONFIG_GEN_GC backptr_idx = 0; freshobj_idx = 0; |