Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | in 'clearbykeys', clear keys of just-removed entries too | Roberto Ierusalimschy | 2018-02-23 | 1 | -3/+3 | |
| | ||||||
* | first version of empty entries in tables | Roberto Ierusalimschy | 2018-02-23 | 1 | -28/+30 | |
| | | | | (so that, in the future, tables can contain regular nil entries) | |||||
* | some reorganization in 'lobject.h' | Roberto Ierusalimschy | 2018-02-22 | 1 | -1/+6 | |
| | | | | (just moving stuff around) | |||||
* | userdata can have multiple user values | Roberto Ierusalimschy | 2018-02-20 | 1 | -16/+17 | |
| | ||||||
* | more generic way to handle 'gclist' | Roberto Ierusalimschy | 2018-02-19 | 1 | -62/+50 | |
| | ||||||
* | small corrections in generational mode | Roberto Ierusalimschy | 2018-02-05 | 1 | -7/+9 | |
| | | | | | (cannot call finalizers in emergency collections + should set everything before calling finalizers) | |||||
* | janitor work on casts | Roberto Ierusalimschy | 2018-01-28 | 1 | -2/+2 | |
| | ||||||
* | keep control of stack top in Lua functions concentrated in 'luaV_execute' | Roberto Ierusalimschy | 2017-12-28 | 1 | -8/+3 | |
| | ||||||
* | when running Lua code, there is no need to keep 'L->top' "correct"; | Roberto Ierusalimschy | 2017-12-20 | 1 | -2/+12 | |
| | | | | set it only when needed. | |||||
* | more freedom in handling memory-allocation errors (not all allocations | Roberto Ierusalimschy | 2017-12-08 | 1 | -8/+3 | |
| | | | | | automatically raise an error), which allows fixing a bug when resizing a table. | |||||
* | 'luaS_resize' can raise memory errors | Roberto Ierusalimschy | 2017-12-01 | 1 | -4/+9 | |
| | ||||||
* | warnings from Visual Studio /W3 | Roberto Ierusalimschy | 2017-11-30 | 1 | -2/+2 | |
| | ||||||
* | detail (typo in comments) | Roberto Ierusalimschy | 2017-11-23 | 1 | -3/+3 | |
| | ||||||
* | back to 'CallInfo' (no gains with its removal) | Roberto Ierusalimschy | 2017-11-07 | 1 | -3/+3 | |
| | ||||||
* | more fields moved out of 'CallInfo' | Roberto Ierusalimschy | 2017-11-03 | 1 | -3/+3 | |
| | ||||||
* | do not mess up the debt when the collector is not running | Roberto Ierusalimschy | 2017-10-31 | 1 | -7/+7 | |
| | ||||||
* | some cleaning in GC parameters | Roberto Ierusalimschy | 2017-10-11 | 1 | -14/+12 | |
| | ||||||
* | bug: dead keys with nil values can stay in weak tables | Roberto Ierusalimschy | 2017-08-31 | 1 | -10/+11 | |
| | ||||||
* | new type 'StackValue' for stack elements | Roberto Ierusalimschy | 2017-06-29 | 1 | -5/+5 | |
| | | | | (we may want to put extra info there in the future) | |||||
* | no more 'DEADKEY'. Table traversals do not need to consider dead keys; | Roberto Ierusalimschy | 2017-06-12 | 1 | -14/+7 | |
| | | | | | | if the key is dead, it cannot be given to 'next'. Instead, we now use a 'table' tag without the collectable bit, which makes it a unique tag good enough to reserve space. | |||||
* | in hash nodes, keys are stored in separate pieces to avoid wasting | Roberto Ierusalimschy | 2017-06-09 | 1 | -19/+23 | |
| | | | | space with alignments | |||||
* | avoid overflows in computation of step size | Roberto Ierusalimschy | 2017-06-01 | 1 | -2/+4 | |
| | ||||||
* | revamping the incremental collector | Roberto Ierusalimschy | 2017-05-26 | 1 | -146/+132 | |
| | | | | | | Some simplifications (not counting bytes, couting only slots visited; no more 'gcfinnum'); more GC parameters; using vararg in 'lua_gc' to set parameters in different GC modes | |||||
* | barrier for prototype's cache (with new gray list 'protogray' to keep | Roberto Ierusalimschy | 2017-05-04 | 1 | -8/+67 | |
| | | | | prototypes to have their caches visited again) + constant 'MAXMISS' | |||||
* | added 'cachemiss' field to prototype to avoid wasting time checking | Roberto Ierusalimschy | 2017-04-30 | 1 | -1/+2 | |
| | | | | hits that fail too often | |||||
* | ensures that "collectgarbage'step'" in generational mode does a | Roberto Ierusalimschy | 2017-04-24 | 1 | -4/+9 | |
| | | | | minor collection | |||||
* | 'KGC_NORMAL' -> 'KGC_INC' + emergency GC signalled by flag (instead | Roberto Ierusalimschy | 2017-04-24 | 1 | -12/+11 | |
| | | | | of mode) | |||||
* | small bug in generational control | Roberto Ierusalimschy | 2017-04-20 | 1 | -5/+6 | |
| | ||||||
* | first version of control for the generational collector | Roberto Ierusalimschy | 2017-04-19 | 1 | -5/+13 | |
| | ||||||
* | small corrections + removal of debugging functions 'count' and | Roberto Ierusalimschy | 2017-04-12 | 1 | -48/+4 | |
| | | | | 'printgray'. | |||||
* | 'mainthread' lives in 'allgc' list, like everybody else | Roberto Ierusalimschy | 2017-04-11 | 1 | -10/+6 | |
| | ||||||
* | Upvalues collected like everything else (with mark-sweep) instead | Roberto Ierusalimschy | 2017-04-11 | 1 | -57/+32 | |
| | | | | of reference count (simpler and better for generational mode) | |||||
* | Comments for generational collector | Roberto Ierusalimschy | 2017-04-10 | 1 | -63/+128 | |
| | ||||||
* | small changes in 'luaC_upvalbarrier' | Roberto Ierusalimschy | 2017-04-06 | 1 | -5/+3 | |
| | ||||||
* | generational collector (still not complete) | Roberto Ierusalimschy | 2017-04-05 | 1 | -83/+276 | |
| | ||||||
* | generational collection: new attempt (still incomplete) | Roberto Ierusalimschy | 2017-02-23 | 1 | -24/+159 | |
| | ||||||
* | detail (removing spaces at end of lines) | Roberto Ierusalimschy | 2016-12-22 | 1 | -2/+2 | |
| | ||||||
* | using 'lastfree == NULL' to signal that table is using the dummy | Roberto Ierusalimschy | 2016-11-07 | 1 | -2/+2 | |
| | | | | node for its hash part + new macro 'allocsizenode' | |||||
* | new flag in 'CallInfo.callstatus' to tell whether function is running | Roberto Ierusalimschy | 2016-10-19 | 1 | -1/+3 | |
| | | | | as a finalizer | |||||
* | do not try to ensure that 'sweepgc' points to a live object | Roberto Ierusalimschy | 2016-03-31 | 1 | -18/+11 | |
| | | | | | | when entering sweep phase ('entersweep'); that may be too expensive to be done still inside the atomic step. Walking one single object more often than not will work. | |||||
* | detail (removed fixed argument to function 'callallpendingfinalizers') | Roberto Ierusalimschy | 2015-12-10 | 1 | -4/+4 | |
| | ||||||
* | added comment and assert about dead keys | Roberto Ierusalimschy | 2015-11-03 | 1 | -3/+8 | |
| | ||||||
* | in 'luaD_call', use two functions instead of one with fixed boolean | Roberto Ierusalimschy | 2015-11-02 | 1 | -2/+2 | |
| | | | | argument | |||||
* | now that we have a counter for CallInfos, use it for a more | Roberto Ierusalimschy | 2015-11-02 | 1 | -2/+3 | |
| | | | | accurate value for the memory used by a thread | |||||
* | long strings are created directly in final position when possible | Roberto Ierusalimschy | 2015-09-08 | 1 | -3/+2 | |
| | | | | | (instead of using an auxiliar buffer to first create the string and then allocate the final string and copy result there) | |||||
* | avoid overflows (detected with 'clang -ftrapv') | Roberto Ierusalimschy | 2015-07-13 | 1 | -4/+7 | |
| | ||||||
* | 'clearapihash' -> 'luaS_clearcache' and moved to 'lstring.c' (which | Roberto Ierusalimschy | 2015-03-25 | 1 | -15/+2 | |
| | | | | keeps all code related to this cache) | |||||
* | avoid testing for NULL when marking objects that cannot be NULL | Roberto Ierusalimschy | 2015-03-04 | 1 | -11/+21 | |
| | ||||||
* | new cache for interning strings | Roberto Ierusalimschy | 2015-03-04 | 1 | -1/+15 | |
| | ||||||
* | size of short strings stored in a single byte, to reduce the size | Roberto Ierusalimschy | 2015-01-16 | 1 | -5/+10 | |
| | | | | of struct 'TString' |