Simpler control for major collections

This commit is contained in:
Roberto Ierusalimschy
2022-11-29 10:37:08 -03:00
parent 152b51955a
commit d324a0ccf9
6 changed files with 76 additions and 135 deletions

View File

@@ -297,7 +297,7 @@ static int testobjref1 (global_State *g, GCObject *f, GCObject *t) {
if (isdead(g,t)) return 0;
if (issweepphase(g))
return 1; /* no invariants */
else if (g->gckind == KGC_INC)
else if (g->gckind != KGC_GEN)
return !(isblack(f) && iswhite(t)); /* basic incremental invariant */
else { /* generational mode */
if ((getage(f) == G_OLD && isblack(f)) && !isold(t))