diff options
author | Andy Wingo <wingo@pobox.com> | 2025-05-04 11:13:52 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2025-05-04 15:58:50 +0200 |
commit | b1d7d3538aea62aded68f9541b92a780b8195f73 (patch) | |
tree | ea4e0893dd99b8f30eef9e93199948eef9c3595e /libguile/gc-malloc.c | |
parent | fcf8fa3d10d8db84943dd206b461f9366b39e984 (diff) | |
download | guile-b1d7d3538aea62aded68f9541b92a780b8195f73.tar.gz |
SCM_GC_MALLOC avoids BDW API
* libguile/gc.h (SCM_GC_MALLOC, SCM_GC_MALLOC_POINTERLESS): Always
redirect to scm_gc_malloc{,_pointerless}. Don't include bdw-gc.h.
* libguile/gc-malloc.c (scm_realloc): Use Whippet gc_collect API.
* libguile/loader.c:
* libguile/scmsigs.c:
* libguile/weak-vector.c: Include bdw-gc.
Diffstat (limited to 'libguile/gc-malloc.c')
-rw-r--r-- | libguile/gc-malloc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libguile/gc-malloc.c b/libguile/gc-malloc.c index 7879212bf..69aeebf55 100644 --- a/libguile/gc-malloc.c +++ b/libguile/gc-malloc.c @@ -78,8 +78,8 @@ scm_realloc (void *mem, size_t size) if (ptr || size == 0) return ptr; - /* Time is hard: trigger a full, ``stop-the-world'' GC, and try again. */ - GC_gcollect_and_unmap (); + /* Time is hard; attempt to reclaim memory before trying again. */ + gc_collect (SCM_I_CURRENT_THREAD->mutator, GC_COLLECTION_COMPACTING); ptr = do_realloc (mem, size); if (ptr) |