From 152b51955aabb9dfb32302569fac810e999eda03 Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Thu, 24 Nov 2022 10:20:15 -0300 Subject: Removed GC checks from function calls Function calls do not create new objects. (It may use memory with stack reallocation, but now that is irrelevant to the GC.) --- lgc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'lgc.c') diff --git a/lgc.c b/lgc.c index 0e4e5552..aa95c028 100644 --- a/lgc.c +++ b/lgc.c @@ -1700,8 +1700,9 @@ static void fullinc (lua_State *L, global_State *g) { /* finish any pending sweep phase to start a new cycle */ luaC_runtilstate(L, bitmask(GCSpause)); luaC_runtilstate(L, bitmask(GCScallfin)); /* run up to finalizers */ - luaC_runtilstate(L, bitmask(GCSpause)); /* finish collection */ /* estimate must be correct after a full GC cycle */ + lua_assert(g->marked == gettotalobjs(g)); + luaC_runtilstate(L, bitmask(GCSpause)); /* finish collection */ setpause(g); } -- cgit v1.2.3-55-g6feb