Lines Matching full:objects

89 ** Protected access to objects in values
180 ** table. Non-collectable objects are never removed from weak
182 ** other objects: if really collected, cannot keep them; for objects
200 ** objects. So, it is marked as OLD0. In the next cycle it will become
291 ** by the thread or by 'remarkupvals'. Other objects are added to the
343 ** mark all objects in list of being-finalized
423 ** post-processing by 'correctgraylist'. (It could put all old objects
426 ** TOUCHED1 objects need to be in the list. TOUCHED2 doesn't need to go
618 ** ensures that the entire stack have valid (non-dead) objects.
620 ** at every cycle, because they might point to young objects. In inc.
817 ** objects, where a dead object is one marked with the old (non current)
818 ** white; change all non-dead objects back to white, preparing for next
966 ** Move all unreachable objects (or 'all' objects) that need
968 ** (Note that objects after 'finobjold1' cannot be white, so they
976 while ((curr = *p) != g->finobjold1) { /* traverse all finalizable objects */ in separatetobefnz()
1002 ** Correct pointers to objects inside 'allgc' list when
1072 ** Sweep a list of objects to enter generational mode. Deletes dead
1073 ** objects and turns the non dead to old. All non-dead threads---which
1086 else { /* all surviving objects become old */ in sweep2old()
1103 ** Sweep for generational mode. Delete dead objects. (Because the
1104 ** collection is not incremental, there are no "new white" objects
1106 ** non-dead objects, advance their ages and clear the color of
1107 ** new objects. (Old objects keep their colors.)
1108 ** The ages of G_TOUCHED1 and G_TOUCHED2 objects cannot be advanced
1109 ** here, because these old-generation objects are usually not swept
1111 ** will also remove objects turned white here from any gray list.
1133 if (getage(curr) == G_NEW) { /* new objects go back to white */ in sweepgen()
1137 else { /* all other objects will be old, and so keep their color */ in sweepgen()
1151 ** age. In incremental mode, all objects are 'new' all the time,
1162 ** Correct a list of gray objects. Return pointer to where rest of the
1164 ** Because this correction is done after sweeping, young objects might
1166 ** 'TOUCHED1' objects are advanced to 'TOUCHED2' and remain on the list;
1167 ** Non-white threads also remain on the list; 'TOUCHED2' objects become
1175 goto remove; /* remove all white objects */ in correctgraylist()
1187 lua_assert(isold(curr)); /* young objects should be white here */ in correctgraylist()
1215 ** Mark black 'OLD1' objects when starting a new young collection.
1216 ** Gray objects are already in some gray list, and so will be visited
1245 ** Does a young collection. First, mark 'OLD1' objects. Then does the
1253 if (g->firstold1) { /* are there regular OLD1 objects? */ in youngcollection()
1255 g->firstold1 = NULL; /* no more OLD1 objects (for now) */ in youngcollection()
1285 ** Clears all gray lists, sweeps objects, and prepare sublists to enter
1286 ** generational mode. The sweeps remove dead objects and turn all
1287 ** surviving objects to old. Threads go back to 'grayagain'; everything
1297 g->firstold1 = NULL; /* there are no OLD1 objects anywhere */ in atomic2gen()
1323 ** to ensure that all objects are correctly marked and weak tables
1324 ** are cleared. Then, turn all objects into old and finishes the
1339 ** Enter incremental mode. Turn all objects white, make all
1386 ** collection that frees too few objects. To avoid the cost of switching
1390 ** after a "good" collection (one that traverses less than 9/8 objects
1396 ** number of objects traversed (returned by 'atomic') as a proxy. The
1401 lu_mem newatomic; /* count of traversed objects */ in stepgenfull()
1481 ** not need to skip objects created between "now" and the start of the
1493 ** Delete all objects in list 'p' until (but not including) object
1506 ** Call all finalizers of the objects in the given Lua state, and
1507 ** then free all objects, except for the main thread.
1513 separatetobefnz(g, 1); /* separate all objects with finalizers */ in luaC_freeallobjects()
1518 deletelist(L, g->fixedgc, NULL); /* collect fixed objects */ in luaC_freeallobjects()
1543 /* at this point, all strongly accessible objects are marked. */ in atomic()
1548 separatetobefnz(g, 0); /* separate objects to be finalized */ in atomic()
1549 work += markbeingfnz(g); /* mark objects that will be finalized */ in atomic()
1552 /* at this point, all resurrected objects are marked. */ in atomic()
1553 /* remove dead objects from weak tables */ in atomic()
1596 if (g->gray == NULL) { /* no more gray objects? */ in singlestep()
1610 case GCSswpallgc: { /* sweep "regular" objects */ in singlestep()
1614 case GCSswpfinobj: { /* sweep objects with finalizers */ in singlestep()
1618 case GCSswptobefnz: { /* sweep objects to be finalized */ in singlestep()
1704 ** there may be some objects marked as black, so the collector has
1705 ** to sweep all objects to turn them back to white (as white has not
1709 if (keepinvariant(g)) /* black objects? */ in fullinc()