summaryrefslogtreecommitdiff
path: root/lgc.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* "gray lists" only need to be valid when 'keepinvariant' is trueRoberto Ierusalimschy2010-04-301-13/+8
|
* nasty GC bug: upvalue must be turned white when not keeping invariant,Roberto Ierusalimschy2010-04-291-1/+21
| | | | but barrier was not being called when uv->v were already white.
* 'luaC_linkupval' moved into 'lfunc.c' code + new way to control GC speedRoberto Ierusalimschy2010-04-291-76/+60
|
* lots of new comments + small changes in loop controls + other smallRoberto Ierusalimschy2010-04-261-117/+161
| | | | "janitor work"
* "to-be-finalized" objects marked and sweeped like all other objectsRoberto Ierusalimschy2010-04-201-13/+13
|
* new macro LUA_NUMTAGSRoberto Ierusalimschy2010-04-121-2/+2
|
* cannot sweep main thread in sweepstring phaseRoberto Ierusalimschy2010-04-051-7/+16
|
* added proper code to trace garbage collectionRoberto Ierusalimschy2010-04-021-7/+1
|
* global table now is only kept in the registryRoberto Ierusalimschy2010-03-291-3/+1
|
* no more fenvs!Roberto Ierusalimschy2010-03-261-5/+2
|
* major collections in generational modeRoberto Ierusalimschy2010-03-251-6/+14
|
* 'mainthread' is not inserted in the 'allgc' list anymore, but sweptRoberto Ierusalimschy2010-03-251-9/+10
| | | | separately.
* generational mode no longer sweep old objectsRoberto Ierusalimschy2010-03-241-18/+38
|
* userdata with finalizers are kept in a separated list ('udgc'), insteadRoberto Ierusalimschy2010-03-241-26/+30
| | | | | of at the end of 'rootgc' (which was renamed to 'allgc', as it is not "root" in the usual meaning for collectors)
* BUG: emergency collector might resize 'strt' (string table) whenRoberto Ierusalimschy2010-03-231-11/+27
| | | | | | | creating a new string + atomic and markroot steps has some cost + full collection must leave collector in proper state when mode is generational
* draft version of a generational mode for garbage collection. (Not wellRoberto Ierusalimschy2010-03-221-27/+54
| | | | tested; no major collections; ...)
* no more pseudoindex LUA_GLOBALSINDEX; global table now accessibleRoberto Ierusalimschy2009-12-221-4/+3
| | | | through registry
* allocator function receives the tag of object being allocated in 'osize'Roberto Ierusalimschy2009-12-171-4/+12
| | | | when 'ptr' is NULL.
* better to keep GC state numbers sequential, to optimize switch inRoberto Ierusalimschy2009-12-111-8/+8
| | | | 'singlestep'
* new function 'luaC_runtilstate' to advance GC until a "valid" stateRoberto Ierusalimschy2009-12-111-8/+20
|
* comment typosRoberto Ierusalimschy2009-11-261-2/+2
|
* (huge) simplification of GC managementRoberto Ierusalimschy2009-11-181-91/+42
|
* registry and global table may be changed through the API without aRoberto Ierusalimschy2009-11-091-1/+4
| | | | write barrier, so GC should visit them in the atomic phase.
* avoid using 'ttype' when there is an explicit test + macro 'checkdeadkey'Roberto Ierusalimschy2009-11-061-5/+7
| | | | to avoid repetitions
* better control over accesses to TValue fieldsRoberto Ierusalimschy2009-11-051-4/+4
|
* no more one environment per thread: all threads share a single globalRoberto Ierusalimschy2009-10-231-5/+4
| | | | environment
* information about upvalues (where they come from) kept in Proto structure,Roberto Ierusalimschy2009-09-281-4/+4
| | | | instead of sequence of pseudo-opcodes after OP_CLOSURE
* some operations may shrink g->totalbytes so g->estimate must beRoberto Ierusalimschy2009-09-281-4/+9
| | | | more flexible
* bug: stack must be cleared until its end (including extra size) +Roberto Ierusalimschy2009-07-161-26/+9
| | | | control of stack size moved to 'ldo.c'
* new macro 'condmovestack' instead of 'condhardstacktests'Roberto Ierusalimschy2009-06-081-2/+2
|
* errors in finalizers are propagated with code LUA_ERRGCMM (ERRor inRoberto Ierusalimschy2009-05-211-6/+15
| | | | __gc MetaMethod)
* resize string hash table only when new size is smaller than current oneRoberto Ierusalimschy2009-04-291-3/+7
|
* new way to GC stacks: the entire stack must be correct all the times;Roberto Ierusalimschy2009-04-281-30/+40
| | | | | the 'dead' part of a stack (after the top) must have only nil's, so that 'top' may go up without cleaning the stack.
* 'CallInfo' stack implemented as double-linked list instead of an arrayRoberto Ierusalimschy2009-04-171-20/+19
|
* yielding across lua_call (first version)Roberto Ierusalimschy2009-03-101-2/+2
|
* finalizers always called protectedRoberto Ierusalimschy2009-02-171-2/+8
|
* simplification in the handling of finalizers: no more 'tmudata' list +Roberto Ierusalimschy2008-06-261-72/+34
| | | | no more GCSsweeptmu collector's state
* bug: when closing the state, 'luaC_separateudata' might markRoberto Ierusalimschy2008-06-231-5/+3
| | | | | userdata in the wrong phase of collection, therefore avoiding their traversal
* code reorganization (only changed comments and order of functions)Roberto Ierusalimschy2008-06-231-154/+203
|
* userdata with finalizers are kept in a separated listRoberto Ierusalimschy2008-02-191-102/+135
|
* more options for 'kinds' of Garbage Collection + more agressiveRoberto Ierusalimschy2008-02-111-29/+26
| | | | shrinking of stacks and string hash
* first implementation of ephemeronsRoberto Ierusalimschy2007-10-311-43/+77
|
* some changes toward ephemeronsRoberto Ierusalimschy2007-10-291-46/+89
|
* avoid trailing white spacesRoberto Ierusalimschy2006-09-111-4/+4
|
* emergency garbage collector (core forces a GC when allocation fails)Roberto Ierusalimschy2006-07-111-30/+46
|
* bug: collector did not compensate enough for userdata with finalizersRoberto Ierusalimschy2006-05-241-4/+8
|
* small changes in castsRoberto Ierusalimschy2005-12-221-9/+8
|
* detailsRoberto Ierusalimschy2005-08-241-5/+1
|
* a small bugRoberto Ierusalimschy2005-08-041-3/+3
|
* small bug (type error)Roberto Ierusalimschy2005-06-071-3/+4
|