Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | using more "conventional" loops in 'luaD_poscall' (probably a little | Roberto Ierusalimschy | 2015-11-02 | 1 | -7/+13 |
| | | | | more efficient?) | ||||
* | flag CIST_REENTRY changed to CIST_FRESH (its negation); fresh invocations | Roberto Ierusalimschy | 2015-11-02 | 2 | -6/+6 |
| | | | | | seem to be less frequent than reentries. (So, avoid setting flag on the frequent case.) | ||||
* | with 'fast tracks', there is no need to do raw accesses in 'ipairs' | Roberto Ierusalimschy | 2015-10-29 | 1 | -19/+6 |
| | |||||
* | corrected comparisons of signed (int) with unsigned (size_t) | Roberto Ierusalimschy | 2015-10-29 | 1 | -3/+3 |
| | |||||
* | macro 'buff2num' replaced by its body (it caused more harm than good | Roberto Ierusalimschy | 2015-10-28 | 1 | -5/+3 |
| | | | | to readability) | ||||
* | option 'c' in 'string.pack' accepts any string size (truncating | Roberto Ierusalimschy | 2015-10-28 | 1 | -3/+8 |
| | | | | if larger and padding if smaller) | ||||
* | function prepares vararg only if it really uses them (chunks | Roberto Ierusalimschy | 2015-10-28 | 3 | -7/+8 |
| | | | | are always declared vararg but seldom uses them) | ||||
* | OP_SELF can use 'luaV_fastget' specialized for strings, as it | Roberto Ierusalimschy | 2015-10-28 | 1 | -3/+8 |
| | | | | is applied only to string keys | ||||
* | comments for luaD_precall/luaD_poscall | Roberto Ierusalimschy | 2015-10-28 | 1 | -2/+12 |
| | |||||
* | details (avoid 'case' inside block + avoid using one variable for | Roberto Ierusalimschy | 2015-10-28 | 1 | -5/+5 |
| | | | | two roles) | ||||
* | use macro 'hasjumps' to test whether expression has jumps... | Roberto Ierusalimschy | 2015-10-26 | 1 | -2/+2 |
| | |||||
* | hook test in 'luaV_execute' reduced to minimum (rest done in | Roberto Ierusalimschy | 2015-10-22 | 1 | -8/+8 |
| | | | | | | 'luaG_traceexec'; no difference in performance for the non-hook case, but keeps 'luaV_execute' a little simpler) + 'base' updates replaced by 'Protect' (which serves this rule) | ||||
* | hook test in 'luaV_execute' reduced to minimum (rest done in | Roberto Ierusalimschy | 2015-10-22 | 1 | -2/+4 |
| | | | | 'luaG_traceexec' | ||||
* | small changes to allow 'precall' to spend time preserving 'func' | Roberto Ierusalimschy | 2015-10-21 | 3 | -28/+42 |
| | | | | only when needed (that is, when stack actually changes) | ||||
* | generic definitions for float types moved to before variable definitions | Roberto Ierusalimschy | 2015-10-21 | 1 | -20/+26 |
| | | | | | (so that specific cases can redefine these generic definitions if needed) | ||||
* | 'condchangemem' also may need to run 'pre'/'pos' | Roberto Ierusalimschy | 2015-10-21 | 1 | -2/+3 |
| | |||||
* | added comments | Roberto Ierusalimschy | 2015-10-20 | 1 | -1/+8 |
| | |||||
* | cleaner definition for 'luaC_condGC', using 'pre'/'pos' parameters | Roberto Ierusalimschy | 2015-10-20 | 2 | -9/+9 |
| | |||||
* | 'Protect' in table operations is not needed in the fast track | Roberto Ierusalimschy | 2015-10-20 | 1 | -20/+37 |
| | | | | + removal of a few dead macros | ||||
* | macro 'addbuff' was using external variable name, instead of using | Roberto Ierusalimschy | 2015-10-20 | 1 | -2/+2 |
| | | | | its parameter name inside the macro. | ||||
* | '*' as a number means stack size, so that "return *" returns | Roberto Ierusalimschy | 2015-10-12 | 1 | -1/+6 |
| | | | | all values in the stack. | ||||
* | avoid (undefined behavior) integer 'overflow' in left shift | Roberto Ierusalimschy | 2015-10-08 | 1 | -5/+4 |
| | |||||
* | avoid calling write function with empty block | Roberto Ierusalimschy | 2015-10-08 | 1 | -2/+2 |
| | |||||
* | detail (added assertion) | Roberto Ierusalimschy | 2015-10-08 | 1 | -1/+2 |
| | |||||
* | detail (removed unreacheable 'break') | Roberto Ierusalimschy | 2015-10-08 | 1 | -2/+2 |
| | |||||
* | allow NULL string when length is zero in 'lua_pushlstring' and | Roberto Ierusalimschy | 2015-10-06 | 2 | -9/+11 |
| | | | | 'luaL_addlstring' | ||||
* | detail (string cache a bit smaller by default) | Roberto Ierusalimschy | 2015-10-06 | 1 | -2/+2 |
| | |||||
* | in 'luaL_traceback', print correct number of levels even when | Roberto Ierusalimschy | 2015-10-02 | 1 | -9/+11 |
| | | | | initial level is not 1. | ||||
* | detail (ensure subtraction is done unsigned) | Roberto Ierusalimschy | 2015-10-02 | 1 | -2/+2 |
| | |||||
* | 'gmatch' keeps its state in a userdata (keeping the same 'MatchState' | Roberto Ierusalimschy | 2015-09-28 | 1 | -20/+26 |
| | | | | across calls) | ||||
* | implemented counter to abort non-linear behavior in pattern matching | Roberto Ierusalimschy | 2015-09-26 | 1 | -26/+46 |
| | |||||
* | code for string cache generalized for "associative sets" (compiler | Roberto Ierusalimschy | 2015-09-22 | 4 | -23/+36 |
| | | | | will optimize away or inline the extra loops) | ||||
* | 'table.move' tries to copy elements in increasing order | Roberto Ierusalimschy | 2015-09-17 | 1 | -4/+10 |
| | | | | whenever possible | ||||
* | macros 'getaddrstr' and 'getstr' unified (they do the same thing) | Roberto Ierusalimschy | 2015-09-17 | 4 | -11/+11 |
| | |||||
* | 'tablib' does not try to use raw operations when possible: fast | Roberto Ierusalimschy | 2015-09-09 | 1 | -87/+78 |
| | | | | | track should make standard operations fast enough to forgo raw accesses | ||||
* | 'setobj2t' incorporated into 'luaV_fastset' + 'invalidateTMcache' | Roberto Ierusalimschy | 2015-09-09 | 1 | -26/+21 |
| | | | | | | is not needed in the fast track (as it does not create new entries) + small bug in 'auxsetstr' (calling barrier with wrong object) + using 'setobj2t' without side effects in its arguments | ||||
* | 'setobj2t' incorporated into 'luaV_fastset' + 'invalidateTMcache' | Roberto Ierusalimschy | 2015-09-09 | 2 | -17/+24 |
| | | | | | is not needed in the fast track (as it does not create new entries) | ||||
* | new definition for macro 'checkliveness' | Roberto Ierusalimschy | 2015-09-08 | 1 | -2/+2 |
| | |||||
* | detail in macro 'checkliveness' + macro 'setobj2t' defined as an | Roberto Ierusalimschy | 2015-09-08 | 1 | -15/+16 |
| | | | | expression (to be used in macro 'luaV_fastset') | ||||
* | 'lua_longassert' defined as an expression (instead of a command) | Roberto Ierusalimschy | 2015-09-08 | 1 | -2/+2 |
| | |||||
* | small janitor work | Roberto Ierusalimschy | 2015-09-08 | 1 | -28/+23 |
| | |||||
* | long strings are created directly in final position when possible | Roberto Ierusalimschy | 2015-09-08 | 11 | -58/+62 |
| | | | | | (instead of using an auxiliar buffer to first create the string and then allocate the final string and copy result there) | ||||
* | added assert for NULL pointer in 'lua_pushlstring' | Roberto Ierusalimschy | 2015-08-25 | 1 | -1/+6 |
| | |||||
* | added ';' at the end of "expression lines" ("return exp;") so that | Roberto Ierusalimschy | 2015-08-14 | 1 | -12/+8 |
| | | | | | an extra ";" at the end is enough to stop Lua printing the result ("return exp;;" is not valid) | ||||
* | 'invalidateTMcache' not needed in all 'settable' uses | Roberto Ierusalimschy | 2015-08-03 | 3 | -6/+7 |
| | |||||
* | fast track for 'settable' | Roberto Ierusalimschy | 2015-08-03 | 3 | -39/+67 |
| | |||||
* | barrier macros rewritten as expressions | Roberto Ierusalimschy | 2015-08-03 | 1 | -13/+13 |
| | |||||
* | new entry should not be commented out | Roberto Ierusalimschy | 2015-07-23 | 1 | -2/+0 |
| | |||||
* | implementation of fast track for gettable operations | Roberto Ierusalimschy | 2015-07-20 | 3 | -38/+70 |
| | |||||
* | bug: 'io.lines' does not check maximum number of options | Roberto Ierusalimschy | 2015-07-20 | 1 | -0/+35 |
| |