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:
commit
975860e5e2
7 changed files with 54 additions and 65 deletions
|
@ -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();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue