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

Add field-logging write barrier (fast path only)

Add a new kind of write barrier, one which has a bit per field; the
mutator that sets the bit will need to add the field's location (the
edge) to a remembered set.  Here we just have the fast-path
implementation.
This commit is contained in:
Andy Wingo 2024-10-01 10:34:27 +02:00
parent 3955d2ad96
commit 1f4e3bdf37
11 changed files with 89 additions and 22 deletions

View file

@ -149,8 +149,9 @@ void gc_collect(struct gc_mutator *mut,
}
}
void gc_write_barrier_extern(struct gc_ref obj, size_t obj_size,
struct gc_edge edge, struct gc_ref new_val) {
void gc_write_barrier_slow(struct gc_mutator *mut, struct gc_ref obj,
size_t obj_size, struct gc_edge edge,
struct gc_ref new_val) {
}
int* gc_safepoint_flag_loc(struct gc_mutator *mut) { GC_CRASH(); }