1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-18 17:50:29 +02:00

Merge remote-tracking branch 'whippet/main' into wip-whippet

This commit is contained in:
Andy Wingo 2025-04-23 17:30:27 +02:00
commit 975860e5e2
7 changed files with 54 additions and 65 deletions

View file

@ -140,6 +140,7 @@ static inline void* gc_allocate_small_fast_freelist(struct gc_mutator *mut,
return NULL;
*freelist_loc = *(void**)head;
*(void**)head = NULL;
gc_update_alloc_table(gc_ref_from_heap_object(head), size, kind);
@ -153,12 +154,12 @@ static inline void* gc_allocate_small_fast(struct gc_mutator *mut, size_t size,
GC_ASSERT(size != 0);
GC_ASSERT(size <= gc_allocator_large_threshold());
switch (gc_allocator_kind()) {
case GC_ALLOCATOR_INLINE_BUMP_POINTER:
switch (gc_inline_allocator_kind(kind)) {
case GC_INLINE_ALLOCATOR_BUMP_POINTER:
return gc_allocate_small_fast_bump_pointer(mut, size, kind);
case GC_ALLOCATOR_INLINE_FREELIST:
case GC_INLINE_ALLOCATOR_FREELIST:
return gc_allocate_small_fast_freelist(mut, size, kind);
case GC_ALLOCATOR_INLINE_NONE:
case GC_INLINE_ALLOCATOR_NONE:
return NULL;
default:
GC_CRASH();