Initial tricolor gc

This commit is contained in:
2026-01-22 01:31:20 -08:00
parent 656846ddc0
commit 1a0906206a
7 changed files with 239 additions and 197 deletions

View File

@ -43,11 +43,13 @@ static ALWAYS_INLINE LispVal *XCDR_SAFE(LispVal *cons) {
static ALWAYS_INLINE void RPLACA(LispVal *cons, LispVal *newcar) {
assert(CONSP(cons));
((LispCons *) cons)->car = newcar;
MARK_OBJECT_ADDED(newcar, cons);
}
static ALWAYS_INLINE void RPLACD(LispVal *cons, LispVal *newcdr) {
assert(CONSP(cons));
((LispCons *) cons)->cdr = newcdr;
MARK_OBJECT_ADDED(newcdr, cons);
}
static ALWAYS_INLINE LispVal *LIST1(LispVal *v1) {