Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | typo in comments | Roberto Ierusalimschy | 2010-06-30 | 1 | -2/+2 | |
| | ||||||
* | macro 'key2tal' replaced by 'gkey' (as both were equal) | Roberto Ierusalimschy | 2010-06-25 | 1 | -3/+3 | |
| | ||||||
* | better barrier for prototypes | Roberto Ierusalimschy | 2010-06-07 | 1 | -28/+20 | |
| | ||||||
* | Lua closures are cached for reuse | Roberto Ierusalimschy | 2010-06-04 | 1 | -8/+42 | |
| | ||||||
* | bug: generational collection was not running collector! (must write | Roberto Ierusalimschy | 2010-06-02 | 1 | -2/+3 | |
| | | | | a test for this...) | |||||
* | really stop collection during finalizers | Roberto Ierusalimschy | 2010-05-17 | 1 | -2/+2 | |
| | ||||||
* | avoid "strong" cast | Roberto Ierusalimschy | 2010-05-11 | 1 | -2/+3 | |
| | ||||||
* | corrected some places where an old object could end up in front | Roberto Ierusalimschy | 2010-05-10 | 1 | -5/+4 | |
| | | | | of a new one + minimal documentation about this problem | |||||
* | new macro 'resetoldbit' | Roberto Ierusalimschy | 2010-05-10 | 1 | -6/+6 | |
| | ||||||
* | avoid 'else assert' (which may result in an empty else) | Roberto Ierusalimschy | 2010-05-07 | 1 | -4/+4 | |
| | ||||||
* | bug: incremental sweep was not cleaning old bits (as it stopped in the | Roberto Ierusalimschy | 2010-05-07 | 1 | -28/+28 | |
| | | | | | | first old object) + bug: moving udata to 'udgc' list might put old object in front a new one + some new macros + generational mode may be in 'pause' state (it just skips 'markroot') | |||||
* | some cleaning in 'sweeplist' (threads do not need to be traversed | Roberto Ierusalimschy | 2010-05-06 | 1 | -28/+29 | |
| | | | | | if they are going to be collected + use of bit masks to unify differences in generational and incremental modes) | |||||
* | new function 'luaC_changemode' + | Roberto Ierusalimschy | 2010-05-05 | 1 | -13/+42 | |
| | | | | | | | bug: objects entering the 'allgc' list must have their OLDBIT cleared (upvalues being cleared) + bug: in 'checkSizes', KGC_EMERGENCY is stored in 'gckind' field, not in 'gcstate' + current white changes when entering sweep phase (so there are dead objects only in that phase) | |||||
* | better documentation of GC costs | Roberto Ierusalimschy | 2010-05-05 | 1 | -12/+26 | |
| | ||||||
* | full GC must run finalizers only after finishing everything else | Roberto Ierusalimschy | 2010-05-04 | 1 | -5/+5 | |
| | | | | (including a return to generational mode if needed) | |||||
* | no need of a KGC_FORCED collection kind; it has the same behavior of | Roberto Ierusalimschy | 2010-05-03 | 1 | -5/+4 | |
| | | | | a normal collection | |||||
* | no more 'finalize' phase in GC; finalizers are called along the | Roberto Ierusalimschy | 2010-05-03 | 1 | -25/+28 | |
| | | | | entire cycle | |||||
* | items in 'tobefnz' are kept black (as before recent change) and changed | Roberto Ierusalimschy | 2010-05-03 | 1 | -8/+11 | |
| | | | | | to white only when needed (being moved to 'allgc' when not keeping invariant). | |||||
* | "gray lists" only need to be valid when 'keepinvariant' is true | Roberto Ierusalimschy | 2010-04-30 | 1 | -13/+8 | |
| | ||||||
* | nasty GC bug: upvalue must be turned white when not keeping invariant, | Roberto Ierusalimschy | 2010-04-29 | 1 | -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 speed | Roberto Ierusalimschy | 2010-04-29 | 1 | -76/+60 | |
| | ||||||
* | lots of new comments + small changes in loop controls + other small | Roberto Ierusalimschy | 2010-04-26 | 1 | -117/+161 | |
| | | | | "janitor work" | |||||
* | "to-be-finalized" objects marked and sweeped like all other objects | Roberto Ierusalimschy | 2010-04-20 | 1 | -13/+13 | |
| | ||||||
* | new macro LUA_NUMTAGS | Roberto Ierusalimschy | 2010-04-12 | 1 | -2/+2 | |
| | ||||||
* | cannot sweep main thread in sweepstring phase | Roberto Ierusalimschy | 2010-04-05 | 1 | -7/+16 | |
| | ||||||
* | added proper code to trace garbage collection | Roberto Ierusalimschy | 2010-04-02 | 1 | -7/+1 | |
| | ||||||
* | global table now is only kept in the registry | Roberto Ierusalimschy | 2010-03-29 | 1 | -3/+1 | |
| | ||||||
* | no more fenvs! | Roberto Ierusalimschy | 2010-03-26 | 1 | -5/+2 | |
| | ||||||
* | major collections in generational mode | Roberto Ierusalimschy | 2010-03-25 | 1 | -6/+14 | |
| | ||||||
* | 'mainthread' is not inserted in the 'allgc' list anymore, but swept | Roberto Ierusalimschy | 2010-03-25 | 1 | -9/+10 | |
| | | | | separately. | |||||
* | generational mode no longer sweep old objects | Roberto Ierusalimschy | 2010-03-24 | 1 | -18/+38 | |
| | ||||||
* | userdata with finalizers are kept in a separated list ('udgc'), instead | Roberto Ierusalimschy | 2010-03-24 | 1 | -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) when | Roberto Ierusalimschy | 2010-03-23 | 1 | -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 well | Roberto Ierusalimschy | 2010-03-22 | 1 | -27/+54 | |
| | | | | tested; no major collections; ...) | |||||
* | no more pseudoindex LUA_GLOBALSINDEX; global table now accessible | Roberto Ierusalimschy | 2009-12-22 | 1 | -4/+3 | |
| | | | | through registry | |||||
* | allocator function receives the tag of object being allocated in 'osize' | Roberto Ierusalimschy | 2009-12-17 | 1 | -4/+12 | |
| | | | | when 'ptr' is NULL. | |||||
* | better to keep GC state numbers sequential, to optimize switch in | Roberto Ierusalimschy | 2009-12-11 | 1 | -8/+8 | |
| | | | | 'singlestep' | |||||
* | new function 'luaC_runtilstate' to advance GC until a "valid" state | Roberto Ierusalimschy | 2009-12-11 | 1 | -8/+20 | |
| | ||||||
* | comment typos | Roberto Ierusalimschy | 2009-11-26 | 1 | -2/+2 | |
| | ||||||
* | (huge) simplification of GC management | Roberto Ierusalimschy | 2009-11-18 | 1 | -91/+42 | |
| | ||||||
* | registry and global table may be changed through the API without a | Roberto Ierusalimschy | 2009-11-09 | 1 | -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 Ierusalimschy | 2009-11-06 | 1 | -5/+7 | |
| | | | | to avoid repetitions | |||||
* | better control over accesses to TValue fields | Roberto Ierusalimschy | 2009-11-05 | 1 | -4/+4 | |
| | ||||||
* | no more one environment per thread: all threads share a single global | Roberto Ierusalimschy | 2009-10-23 | 1 | -5/+4 | |
| | | | | environment | |||||
* | information about upvalues (where they come from) kept in Proto structure, | Roberto Ierusalimschy | 2009-09-28 | 1 | -4/+4 | |
| | | | | instead of sequence of pseudo-opcodes after OP_CLOSURE | |||||
* | some operations may shrink g->totalbytes so g->estimate must be | Roberto Ierusalimschy | 2009-09-28 | 1 | -4/+9 | |
| | | | | more flexible | |||||
* | bug: stack must be cleared until its end (including extra size) + | Roberto Ierusalimschy | 2009-07-16 | 1 | -26/+9 | |
| | | | | control of stack size moved to 'ldo.c' | |||||
* | new macro 'condmovestack' instead of 'condhardstacktests' | Roberto Ierusalimschy | 2009-06-08 | 1 | -2/+2 | |
| | ||||||
* | errors in finalizers are propagated with code LUA_ERRGCMM (ERRor in | Roberto Ierusalimschy | 2009-05-21 | 1 | -6/+15 | |
| | | | | __gc MetaMethod) | |||||
* | resize string hash table only when new size is smaller than current one | Roberto Ierusalimschy | 2009-04-29 | 1 | -3/+7 | |
| |