diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2024-09-06 14:38:39 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2024-09-06 14:38:39 -0300 |
commit | a04e0ffdb9be42a77b5657f46cac8d7faa5a0f43 (patch) | |
tree | eb96915b808cf929015452bd08ca1e5c571683ce /lgc.c | |
parent | 007b8c7a01eaa97d796561a19c7e9af1ec474495 (diff) | |
download | lua-a04e0ffdb9be42a77b5657f46cac8d7faa5a0f43.tar.gz lua-a04e0ffdb9be42a77b5657f46cac8d7faa5a0f43.tar.bz2 lua-a04e0ffdb9be42a77b5657f46cac8d7faa5a0f43.zip |
Rename of fields in global state that control GC
All fields in the global state that control the pace of the garbage
collector prefixed with 'GC'.
Diffstat (limited to 'lgc.c')
-rw-r--r-- | lgc.c | 28 |
1 files changed, 14 insertions, 14 deletions
@@ -290,7 +290,7 @@ GCObject *luaC_newobj (lua_State *L, lu_byte tt, size_t sz) { | |||
290 | ** (only closures can), and a userdata's metatable must be a table. | 290 | ** (only closures can), and a userdata's metatable must be a table. |
291 | */ | 291 | */ |
292 | static void reallymarkobject (global_State *g, GCObject *o) { | 292 | static void reallymarkobject (global_State *g, GCObject *o) { |
293 | g->marked++; | 293 | g->GCmarked++; |
294 | switch (o->tt) { | 294 | switch (o->tt) { |
295 | case LUA_VSHRSTR: | 295 | case LUA_VSHRSTR: |
296 | case LUA_VLNGSTR: { | 296 | case LUA_VLNGSTR: { |
@@ -401,7 +401,7 @@ static void cleargraylists (global_State *g) { | |||
401 | */ | 401 | */ |
402 | static void restartcollection (global_State *g) { | 402 | static void restartcollection (global_State *g) { |
403 | cleargraylists(g); | 403 | cleargraylists(g); |
404 | g->marked = NFIXED; | 404 | g->GCmarked = NFIXED; |
405 | markobject(g, g->mainthread); | 405 | markobject(g, g->mainthread); |
406 | markvalue(g, &g->l_registry); | 406 | markvalue(g, &g->l_registry); |
407 | markmt(g); | 407 | markmt(g); |
@@ -781,7 +781,7 @@ static void freeupval (lua_State *L, UpVal *uv) { | |||
781 | 781 | ||
782 | 782 | ||
783 | static void freeobj (lua_State *L, GCObject *o) { | 783 | static void freeobj (lua_State *L, GCObject *o) { |
784 | G(L)->totalobjs--; | 784 | G(L)->GCtotalobjs--; |
785 | switch (o->tt) { | 785 | switch (o->tt) { |
786 | case LUA_VPROTO: | 786 | case LUA_VPROTO: |
787 | luaF_freeproto(L, gco2p(o)); | 787 | luaF_freeproto(L, gco2p(o)); |
@@ -1052,7 +1052,7 @@ void luaC_checkfinalizer (lua_State *L, GCObject *o, Table *mt) { | |||
1052 | ** approximately (marked * pause / 100). | 1052 | ** approximately (marked * pause / 100). |
1053 | */ | 1053 | */ |
1054 | static void setpause (global_State *g) { | 1054 | static void setpause (global_State *g) { |
1055 | l_obj threshold = applygcparam(g, PAUSE, g->marked); | 1055 | l_obj threshold = applygcparam(g, PAUSE, g->GCmarked); |
1056 | l_obj debt = threshold - gettotalobjs(g); | 1056 | l_obj debt = threshold - gettotalobjs(g); |
1057 | if (debt < 0) debt = 0; | 1057 | if (debt < 0) debt = 0; |
1058 | luaE_setdebt(g, debt); | 1058 | luaE_setdebt(g, debt); |
@@ -1236,7 +1236,7 @@ static void finishgencycle (lua_State *L, global_State *g) { | |||
1236 | ** in generational mode. | 1236 | ** in generational mode. |
1237 | */ | 1237 | */ |
1238 | static void minor2inc (lua_State *L, global_State *g, lu_byte kind) { | 1238 | static void minor2inc (lua_State *L, global_State *g, lu_byte kind) { |
1239 | g->GCmajorminor = g->marked; /* number of live objects */ | 1239 | g->GCmajorminor = g->GCmarked; /* number of live objects */ |
1240 | g->gckind = kind; | 1240 | g->gckind = kind; |
1241 | g->reallyold = g->old1 = g->survival = NULL; | 1241 | g->reallyold = g->old1 = g->survival = NULL; |
1242 | g->finobjrold = g->finobjold1 = g->finobjsur = NULL; | 1242 | g->finobjrold = g->finobjold1 = g->finobjsur = NULL; |
@@ -1260,7 +1260,7 @@ static void minor2inc (lua_State *L, global_State *g, lu_byte kind) { | |||
1260 | static int checkminormajor (global_State *g, l_obj addedold1) { | 1260 | static int checkminormajor (global_State *g, l_obj addedold1) { |
1261 | l_obj step = applygcparam(g, MINORMUL, g->GCmajorminor); | 1261 | l_obj step = applygcparam(g, MINORMUL, g->GCmajorminor); |
1262 | l_obj limit = applygcparam(g, MINORMAJOR, g->GCmajorminor); | 1262 | l_obj limit = applygcparam(g, MINORMAJOR, g->GCmajorminor); |
1263 | return (addedold1 >= (step >> 1) || g->marked >= limit); | 1263 | return (addedold1 >= (step >> 1) || g->GCmarked >= limit); |
1264 | } | 1264 | } |
1265 | 1265 | ||
1266 | /* | 1266 | /* |
@@ -1270,7 +1270,7 @@ static int checkminormajor (global_State *g, l_obj addedold1) { | |||
1270 | */ | 1270 | */ |
1271 | static void youngcollection (lua_State *L, global_State *g) { | 1271 | static void youngcollection (lua_State *L, global_State *g) { |
1272 | l_obj addedold1 = 0; | 1272 | l_obj addedold1 = 0; |
1273 | l_obj marked = g->marked; /* preserve 'g->marked' */ | 1273 | l_obj marked = g->GCmarked; /* preserve 'g->GCmarked' */ |
1274 | GCObject **psurvival; /* to point to first non-dead survival object */ | 1274 | GCObject **psurvival; /* to point to first non-dead survival object */ |
1275 | GCObject *dummy; /* dummy out parameter to 'sweepgen' */ | 1275 | GCObject *dummy; /* dummy out parameter to 'sweepgen' */ |
1276 | lua_assert(g->gcstate == GCSpropagate); | 1276 | lua_assert(g->gcstate == GCSpropagate); |
@@ -1304,12 +1304,12 @@ static void youngcollection (lua_State *L, global_State *g) { | |||
1304 | sweepgen(L, g, &g->tobefnz, NULL, &dummy, &addedold1); | 1304 | sweepgen(L, g, &g->tobefnz, NULL, &dummy, &addedold1); |
1305 | 1305 | ||
1306 | /* keep total number of added old1 objects */ | 1306 | /* keep total number of added old1 objects */ |
1307 | g->marked = marked + addedold1; | 1307 | g->GCmarked = marked + addedold1; |
1308 | 1308 | ||
1309 | /* decide whether to shift to major mode */ | 1309 | /* decide whether to shift to major mode */ |
1310 | if (checkminormajor(g, addedold1)) { | 1310 | if (checkminormajor(g, addedold1)) { |
1311 | minor2inc(L, g, KGC_GENMAJOR); /* go to major mode */ | 1311 | minor2inc(L, g, KGC_GENMAJOR); /* go to major mode */ |
1312 | g->marked = 0; /* avoid pause in first major cycle */ | 1312 | g->GCmarked = 0; /* avoid pause in first major cycle */ |
1313 | } | 1313 | } |
1314 | else | 1314 | else |
1315 | finishgencycle(L, g); /* still in minor mode; finish it */ | 1315 | finishgencycle(L, g); /* still in minor mode; finish it */ |
@@ -1338,8 +1338,8 @@ static void atomic2gen (lua_State *L, global_State *g) { | |||
1338 | sweep2old(L, &g->tobefnz); | 1338 | sweep2old(L, &g->tobefnz); |
1339 | 1339 | ||
1340 | g->gckind = KGC_GENMINOR; | 1340 | g->gckind = KGC_GENMINOR; |
1341 | g->GCmajorminor = g->marked; /* "base" for number of objects */ | 1341 | g->GCmajorminor = g->GCmarked; /* "base" for number of objects */ |
1342 | g->marked = 0; /* to count the number of added old1 objects */ | 1342 | g->GCmarked = 0; /* to count the number of added old1 objects */ |
1343 | finishgencycle(L, g); | 1343 | finishgencycle(L, g); |
1344 | } | 1344 | } |
1345 | 1345 | ||
@@ -1407,14 +1407,14 @@ static int checkmajorminor (lua_State *L, global_State *g) { | |||
1407 | l_obj numobjs = gettotalobjs(g); | 1407 | l_obj numobjs = gettotalobjs(g); |
1408 | l_obj addedobjs = numobjs - g->GCmajorminor; | 1408 | l_obj addedobjs = numobjs - g->GCmajorminor; |
1409 | l_obj limit = applygcparam(g, MAJORMINOR, addedobjs); | 1409 | l_obj limit = applygcparam(g, MAJORMINOR, addedobjs); |
1410 | l_obj tobecollected = numobjs - g->marked; | 1410 | l_obj tobecollected = numobjs - g->GCmarked; |
1411 | if (tobecollected > limit) { | 1411 | if (tobecollected > limit) { |
1412 | atomic2gen(L, g); /* return to generational mode */ | 1412 | atomic2gen(L, g); /* return to generational mode */ |
1413 | setminordebt(g); | 1413 | setminordebt(g); |
1414 | return 0; /* exit incremental collection */ | 1414 | return 0; /* exit incremental collection */ |
1415 | } | 1415 | } |
1416 | } | 1416 | } |
1417 | g->GCmajorminor = g->marked; /* prepare for next collection */ | 1417 | g->GCmajorminor = g->GCmarked; /* prepare for next collection */ |
1418 | return 1; /* stay doing incremental collections */ | 1418 | return 1; /* stay doing incremental collections */ |
1419 | } | 1419 | } |
1420 | 1420 | ||
@@ -1692,7 +1692,7 @@ static void fullinc (lua_State *L, global_State *g) { | |||
1692 | luaC_runtilstate(L, GCSpause, 1); | 1692 | luaC_runtilstate(L, GCSpause, 1); |
1693 | luaC_runtilstate(L, GCScallfin, 1); /* run up to finalizers */ | 1693 | luaC_runtilstate(L, GCScallfin, 1); /* run up to finalizers */ |
1694 | /* 'marked' must be correct after a full GC cycle */ | 1694 | /* 'marked' must be correct after a full GC cycle */ |
1695 | lua_assert(g->marked == gettotalobjs(g)); | 1695 | lua_assert(g->GCmarked == gettotalobjs(g)); |
1696 | luaC_runtilstate(L, GCSpause, 1); /* finish collection */ | 1696 | luaC_runtilstate(L, GCSpause, 1); /* finish collection */ |
1697 | setpause(g); | 1697 | setpause(g); |
1698 | } | 1698 | } |