1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-27 21:40:34 +02:00

Add ephemeron implementation

This commit adds support for ephemerons to the API and wires it into the
collectors.  It also adds a new test.
This commit is contained in:
Andy Wingo 2022-11-26 22:28:57 +01:00
parent 44f37a373c
commit 78da8d5811
18 changed files with 1455 additions and 56 deletions

View file

@ -1,8 +1,11 @@
#ifndef GC_EMBEDDER_API_H
#define GC_EMBEDDER_API_H
#include <stddef.h>
#include "gc-config.h"
#include "gc-edge.h"
#include "gc-inline.h"
#include "gc-forwarding.h"
#ifndef GC_EMBEDDER_API
@ -13,6 +16,7 @@ struct gc_mutator_roots;
struct gc_heap_roots;
struct gc_atomic_forward;
struct gc_heap;
struct gc_ephemeron;
GC_EMBEDDER_API inline int gc_is_valid_conservative_ref_displacement(uintptr_t displacement);