summaryrefslogtreecommitdiff
path: root/lgc.h
Commit message (Collapse)AuthorAgeFilesLines
* 'iswhite' and related macros now can work directly on any objectRoberto Ierusalimschy2014-07-191-4/+4
| | | | (no need to convert to 'GCObject')
* put the restriction that 'luaC_barrierback' works only on tablesRoberto Ierusalimschy2014-07-191-3/+3
| | | | in its prototype
* no need for field 'gch' anymoreRoberto Ierusalimschy2014-07-171-8/+8
|
* detail (removed unused prototype)Roberto Ierusalimschy2014-03-191-2/+1
|
* no need to keep threads in a different GC list, now that there is theRoberto Ierusalimschy2014-02-181-7/+6
| | | | 'twups' list
* change in the way 'collectgarbage("step", size)' interprets 'size'Roberto Ierusalimschy2014-02-141-2/+1
| | | | | (mimicking the way the GC itself behaves when Lua allocates 'size' Kbytes)
* better control for number of finalizers called at each GC cycleRoberto Ierusalimschy2014-02-131-2/+3
| | | | (increases progressively)
* no more local collectionRoberto Ierusalimschy2014-02-131-20/+11
|
* keep a single list of objects to be finalized (with local and non-localRoberto Ierusalimschy2014-02-111-8/+7
| | | | objects), to ensure finalization order
* detail (setmetatable do not need to use a back GC barrier)Roberto Ierusalimschy2013-09-111-5/+1
|
* new names and better order for GC states (sweep first lists thatRoberto Ierusalimschy2013-09-111-9/+9
| | | | can have dead objects)
* threads are kept in a separated GC list, linked after the main threadRoberto Ierusalimschy2013-09-111-4/+5
|
* objects in list 'tobefnz' have a GC life-cycle like all othersRoberto Ierusalimschy2013-09-111-3/+4
| | | | (specifically they are cleaned during sweep phase)
* 'luaC_newobj' does not handle special cases; only special caseRoberto Ierusalimschy2013-09-111-6/+5
| | | | now is threads, which do not use 'luaC_newobj' anymore.
* local collection now calls finalizersRoberto Ierusalimschy2013-09-031-5/+6
|
* new GC state to sweep 'localgc' list + small changes in sweep controlRoberto Ierusalimschy2013-08-301-5/+7
|
* details (a few casts moved from macro invocation to macro definition)Roberto Ierusalimschy2013-08-291-3/+3
|
* LOCALBLACK changed to LOCALMARK and used also to control whether objectRoberto Ierusalimschy2013-08-271-2/+2
| | | | | is in 'localgc' list + luaC_newobj by default puts object in 'localgc' list
* upvalues collected by reference countRoberto Ierusalimschy2013-08-271-4/+10
|
* C functions and strings now go to the local list; first versionRoberto Ierusalimschy2013-08-231-1/+2
| | | | of the local collector
* "fixed" objects kept in a separated list (instead of being kept inRoberto Ierusalimschy2013-08-211-3/+3
| | | | 'allgc' list with a bit marking them)
* change in string table: string table is now independent of GC lists; allRoberto Ierusalimschy2013-08-211-6/+5
| | | | strings live in 'normal' GC lists
* GC bits SEPARATED and FINALIZEDBIT mixed in FINALIZEDBIT (with simplerRoberto Ierusalimschy2013-08-201-5/+5
| | | | control)
* "barrier" for link prototype->cache changed to be consistent withRoberto Ierusalimschy2013-08-191-4/+1
| | | | GC behavior (link is cleared to preserve invariant)
* added 'local' bit (true => object is only refered by local variables)Roberto Ierusalimschy2013-08-161-6/+14
|
* barrier conditions rewritten to test first 'isblack' and then 'iswhite'Roberto Ierusalimschy2013-08-131-8/+8
| | | | | (during a pause all objects are white, so 'isblack' fails much more often than 'iswhite')
* no more generational collection !!!Roberto Ierusalimschy2013-08-051-23/+5
|
* small bug: generational mode is always in 'propagate' mode onlyRoberto Ierusalimschy2012-09-111-5/+14
| | | | | outside the collector: during collection of course it must go to other modes.
* collector in generational mode must be in 'propagate' state whenRoberto Ierusalimschy2012-07-041-3/+4
| | | | not running a collection
* definition of 'GCSTEPSIZE' moved to header file + small changesRoberto Ierusalimschy2012-05-231-5/+11
|
* simpler macro 'luaC_condGC' + better 'step' in 'lua_gc' +Roberto Ierusalimschy2012-05-211-2/+2
| | | | | micro bug in 'luaC_checkfinalizer' (current sweep object could be removed from 'allgc' list)
* test for whether collector is running moved from function toRoberto Ierusalimschy2012-05-111-2/+2
| | | | macro 'luaC_condGC'.
* documentation comment (small correction about strings beingRoberto Ierusalimschy2012-01-231-3/+5
| | | | gray)
* 'luaC_separateudata' renamed to 'separatetobefnz' and called onlyRoberto Ierusalimschy2011-10-031-2/+1
| | | | from 'lgc.c'
* lint (unused macros)Roberto Ierusalimschy2011-09-301-4/+1
|
* detail (cleaning trailing spaces)Roberto Ierusalimschy2011-01-261-2/+2
|
* full collection does not restart collector + avoid changing GCRoberto Ierusalimschy2010-12-291-1/+2
| | | | state if an error happens in a step
* better control for GC running or stoppedRoberto Ierusalimschy2010-12-201-5/+1
|
* new macro 'luaC_condGC' to allow extra code to be run in caseRoberto Ierusalimschy2010-12-171-2/+4
| | | | of GC steps
* commentsRoberto Ierusalimschy2010-12-021-3/+3
|
* finalizers (__gc) for tablesRoberto Ierusalimschy2010-11-261-2/+2
|
* typo in commentsRoberto Ierusalimschy2010-06-301-2/+2
|
* better barrier for prototypesRoberto Ierusalimschy2010-06-071-4/+4
|
* Lua closures are cached for reuseRoberto Ierusalimschy2010-06-041-9/+13
|
* corrected some places where an old object could end up in frontRoberto Ierusalimschy2010-05-101-1/+4
| | | | of a new one + minimal documentation about this problem
* new macro 'resetoldbit'Roberto Ierusalimschy2010-05-101-1/+3
|
* slightly better definition for 'isgray'Roberto Ierusalimschy2010-05-071-2/+3
|
* new macro 'isgenerational' + new macro 'isold' + better deffinitionRoberto Ierusalimschy2010-05-071-3/+7
| | | | for 'isdead', compatible with the code used by 'sweeplist'
* commentsRoberto Ierusalimschy2010-05-061-18/+9
|
* new function 'luaC_changemode'Roberto Ierusalimschy2010-05-051-1/+2
|