aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* flag CIST_REENTRY changed to CIST_FRESH (its negation); fresh invocationsRoberto Ierusalimschy2015-11-022-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 Ierusalimschy2015-10-291-19/+6
|
* corrected comparisons of signed (int) with unsigned (size_t)Roberto Ierusalimschy2015-10-291-3/+3
|
* macro 'buff2num' replaced by its body (it caused more harm than goodRoberto Ierusalimschy2015-10-281-5/+3
| | | | to readability)
* option 'c' in 'string.pack' accepts any string size (truncatingRoberto Ierusalimschy2015-10-281-3/+8
| | | | if larger and padding if smaller)
* function prepares vararg only if it really uses them (chunksRoberto Ierusalimschy2015-10-283-7/+8
| | | | are always declared vararg but seldom uses them)
* OP_SELF can use 'luaV_fastget' specialized for strings, as itRoberto Ierusalimschy2015-10-281-3/+8
| | | | is applied only to string keys
* comments for luaD_precall/luaD_poscallRoberto Ierusalimschy2015-10-281-2/+12
|
* details (avoid 'case' inside block + avoid using one variable forRoberto Ierusalimschy2015-10-281-5/+5
| | | | two roles)
* use macro 'hasjumps' to test whether expression has jumps...Roberto Ierusalimschy2015-10-261-2/+2
|
* hook test in 'luaV_execute' reduced to minimum (rest done inRoberto Ierusalimschy2015-10-221-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 inRoberto Ierusalimschy2015-10-221-2/+4
| | | | 'luaG_traceexec'
* small changes to allow 'precall' to spend time preserving 'func'Roberto Ierusalimschy2015-10-213-28/+42
| | | | only when needed (that is, when stack actually changes)
* generic definitions for float types moved to before variable definitionsRoberto Ierusalimschy2015-10-211-20/+26
| | | | | (so that specific cases can redefine these generic definitions if needed)
* 'condchangemem' also may need to run 'pre'/'pos'Roberto Ierusalimschy2015-10-211-2/+3
|
* added commentsRoberto Ierusalimschy2015-10-201-1/+8
|
* cleaner definition for 'luaC_condGC', using 'pre'/'pos' parametersRoberto Ierusalimschy2015-10-202-9/+9
|
* 'Protect' in table operations is not needed in the fast trackRoberto Ierusalimschy2015-10-201-20/+37
| | | | + removal of a few dead macros
* macro 'addbuff' was using external variable name, instead of usingRoberto Ierusalimschy2015-10-201-2/+2
| | | | its parameter name inside the macro.
* '*' as a number means stack size, so that "return *" returnsRoberto Ierusalimschy2015-10-121-1/+6
| | | | all values in the stack.
* avoid (undefined behavior) integer 'overflow' in left shiftRoberto Ierusalimschy2015-10-081-5/+4
|
* avoid calling write function with empty blockRoberto Ierusalimschy2015-10-081-2/+2
|
* detail (added assertion)Roberto Ierusalimschy2015-10-081-1/+2
|
* detail (removed unreacheable 'break')Roberto Ierusalimschy2015-10-081-2/+2
|
* allow NULL string when length is zero in 'lua_pushlstring' andRoberto Ierusalimschy2015-10-062-9/+11
| | | | 'luaL_addlstring'
* detail (string cache a bit smaller by default)Roberto Ierusalimschy2015-10-061-2/+2
|
* in 'luaL_traceback', print correct number of levels even whenRoberto Ierusalimschy2015-10-021-9/+11
| | | | initial level is not 1.
* detail (ensure subtraction is done unsigned)Roberto Ierusalimschy2015-10-021-2/+2
|
* 'gmatch' keeps its state in a userdata (keeping the same 'MatchState'Roberto Ierusalimschy2015-09-281-20/+26
| | | | across calls)
* implemented counter to abort non-linear behavior in pattern matchingRoberto Ierusalimschy2015-09-261-26/+46
|
* code for string cache generalized for "associative sets" (compilerRoberto Ierusalimschy2015-09-224-23/+36
| | | | will optimize away or inline the extra loops)
* 'table.move' tries to copy elements in increasing orderRoberto Ierusalimschy2015-09-171-4/+10
| | | | whenever possible
* macros 'getaddrstr' and 'getstr' unified (they do the same thing)Roberto Ierusalimschy2015-09-174-11/+11
|
* 'tablib' does not try to use raw operations when possible: fastRoberto Ierusalimschy2015-09-091-87/+78
| | | | | track should make standard operations fast enough to forgo raw accesses
* 'setobj2t' incorporated into 'luaV_fastset' + 'invalidateTMcache'Roberto Ierusalimschy2015-09-091-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 Ierusalimschy2015-09-092-17/+24
| | | | | is not needed in the fast track (as it does not create new entries)
* new definition for macro 'checkliveness'Roberto Ierusalimschy2015-09-081-2/+2
|
* detail in macro 'checkliveness' + macro 'setobj2t' defined as anRoberto Ierusalimschy2015-09-081-15/+16
| | | | expression (to be used in macro 'luaV_fastset')
* 'lua_longassert' defined as an expression (instead of a command)Roberto Ierusalimschy2015-09-081-2/+2
|
* small janitor workRoberto Ierusalimschy2015-09-081-28/+23
|
* long strings are created directly in final position when possibleRoberto Ierusalimschy2015-09-0811-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 Ierusalimschy2015-08-251-1/+6
|
* added ';' at the end of "expression lines" ("return exp;") so thatRoberto Ierusalimschy2015-08-141-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' usesRoberto Ierusalimschy2015-08-033-6/+7
|
* fast track for 'settable'Roberto Ierusalimschy2015-08-033-39/+67
|
* barrier macros rewritten as expressionsRoberto Ierusalimschy2015-08-031-13/+13
|
* new entry should not be commented outRoberto Ierusalimschy2015-07-231-2/+0
|
* implementation of fast track for gettable operationsRoberto Ierusalimschy2015-07-203-38/+70
|
* bug: 'io.lines' does not check maximum number of optionsRoberto Ierusalimschy2015-07-201-0/+35
|
* in 'lua_number2strx', use the call to 'l_sprintf' to add exponentRoberto Ierusalimschy2015-07-201-4/+3
| | | | to result directly