Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | detail | Roberto Ierusalimschy | 2017-06-09 | 1 | -2/+2 | |
| | | | | (removed empty spaces at the end of lines) | |||||
* | macro 'luaV_fastget' may need protection ({}) to be used inside | Roberto Ierusalimschy | 2017-06-01 | 1 | -5/+9 | |
| | | | | 'if's | |||||
* | details (using proper version of 'setobj') | Roberto Ierusalimschy | 2017-05-23 | 1 | -3/+3 | |
| | ||||||
* | table field names for dedicated opcodes can be restricted to | Roberto Ierusalimschy | 2017-05-18 | 1 | -5/+5 | |
| | | | | small strings for slightly faster access | |||||
* | details in OP_CALL + comments | Roberto Ierusalimschy | 2017-05-18 | 1 | -9/+12 | |
| | ||||||
* | no more field 'base' in CallInfo (base is always equal to 'func + 1', | Roberto Ierusalimschy | 2017-05-13 | 1 | -12/+11 | |
| | | | | with old/new vararg implementation) | |||||
* | back to old-style vararg system (with vararg table collecting extra | Roberto Ierusalimschy | 2017-05-13 | 1 | -15/+3 | |
| | | | | arguments) | |||||
* | revamp of fast track for table access (table set uses the same | Roberto Ierusalimschy | 2017-05-11 | 1 | -51/+36 | |
| | | | | macros as table get + new macro for integer keys) | |||||
* | more integer fast tracks (for OP_LT, OP_LE, OP_SETTABLE, and OP_GETTABLE) | Roberto Ierusalimschy | 2017-05-10 | 1 | -17/+51 | |
| | ||||||
* | details (direct access to 'Ck' bit in instructions) | Roberto Ierusalimschy | 2017-05-08 | 1 | -3/+3 | |
| | ||||||
* | 'luaV_execute' keeps local copy of program counter and hook mask, | Roberto Ierusalimschy | 2017-05-05 | 1 | -29/+62 | |
| | | | | to avoid excessive access to globals. | |||||
* | barrier for prototype's cache (with new gray list 'protogray' to keep | Roberto Ierusalimschy | 2017-05-04 | 1 | -7/+5 | |
| | | | | 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 | -3/+9 | |
| | | | | hits that fail too often | |||||
* | new opcodes for table access with constant keys (strings and integers) | Roberto Ierusalimschy | 2017-04-28 | 1 | -13/+63 | |
| | ||||||
* | new opcode OP_ADDI (for immediate integer operand) (Experimental) | Roberto Ierusalimschy | 2017-04-26 | 1 | -3/+24 | |
| | ||||||
* | opcodes 'OP_GETTABUP'/'OP_SETTABUP' operate only with string keys, | Roberto Ierusalimschy | 2017-04-24 | 1 | -7/+15 | |
| | | | | so they can use fast-track table access | |||||
* | new opcode LOADI (for loading immediate integers) | Roberto Ierusalimschy | 2017-04-20 | 1 | -1/+6 | |
| | ||||||
* | Upvalues collected like everything else (with mark-sweep) instead | Roberto Ierusalimschy | 2017-04-11 | 1 | -3/+2 | |
| | | | | of reference count (simpler and better for generational mode) | |||||
* | small changes in 'luaC_upvalbarrier' | Roberto Ierusalimschy | 2017-04-06 | 1 | -2/+2 | |
| | ||||||
* | new macro 'vmfetch' to help changing code to computed goto's (macro | Roberto Ierusalimschy | 2016-02-05 | 1 | -8/+13 | |
| | | | | abstracts the code to run before each instruction) | |||||
* | 'luaV_fastget' only treats the real fast case (table with a non-nil | Roberto Ierusalimschy | 2016-01-05 | 1 | -24/+37 | |
| | | | | value at given key, so that it does not need to check metamethods) | |||||
* | bug: Metatable may access its own dealocated field when | Roberto Ierusalimschy | 2016-01-04 | 1 | -21/+22 | |
| | | | | it has a self reference in __newindex + some refactoring | |||||
* | details (comments) | Roberto Ierusalimschy | 2015-11-23 | 1 | -2/+2 | |
| | ||||||
* | details (typos in comments) | Roberto Ierusalimschy | 2015-11-19 | 1 | -2/+2 | |
| | ||||||
* | detail | Roberto Ierusalimschy | 2015-11-17 | 1 | -2/+2 | |
| | ||||||
* | trying to optimize a little 'luaD_poscall' | Roberto Ierusalimschy | 2015-11-13 | 1 | -2/+2 | |
| | ||||||
* | macro with empty argument can be seen as macro with no argument; better | Roberto Ierusalimschy | 2015-11-12 | 1 | -3/+3 | |
| | | | | to avoid that | |||||
* | in 'luaD_call', use two functions instead of one with fixed boolean | Roberto Ierusalimschy | 2015-11-02 | 1 | -2/+2 | |
| | | | | argument | |||||
* | in 'luaD_precall', in vararg functions, complete missing parameters | Roberto Ierusalimschy | 2015-11-02 | 1 | -10/+8 | |
| | | | | | only after moving them to final place (avoids checking the stack again) | |||||
* | flag CIST_REENTRY changed to CIST_FRESH (its negation); fresh invocations | Roberto Ierusalimschy | 2015-11-02 | 1 | -3/+3 | |
| | | | | | seem to be less frequent than reentries. (So, avoid setting flag on the frequent case.) | |||||
* | 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 | |||||
* | 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) | |||||
* | cleaner definition for 'luaC_condGC', using 'pre'/'pos' parameters | Roberto Ierusalimschy | 2015-10-20 | 1 | -5/+4 | |
| | ||||||
* | '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 | |||||
* | macros 'getaddrstr' and 'getstr' unified (they do the same thing) | Roberto Ierusalimschy | 2015-09-17 | 1 | -2/+2 | |
| | ||||||
* | 'setobj2t' incorporated into 'luaV_fastset' + 'invalidateTMcache' | Roberto Ierusalimschy | 2015-09-09 | 1 | -6/+3 | |
| | | | | | is not needed in the fast track (as it does not create new entries) | |||||
* | long strings are created directly in final position when possible | Roberto Ierusalimschy | 2015-09-08 | 1 | -15/+26 | |
| | | | | | (instead of using an auxiliar buffer to first create the string and then allocate the final string and copy result there) | |||||
* | 'invalidateTMcache' not needed in all 'settable' uses | Roberto Ierusalimschy | 2015-08-03 | 1 | -1/+2 | |
| | ||||||
* | fast track for 'settable' | Roberto Ierusalimschy | 2015-08-03 | 1 | -15/+18 | |
| | ||||||
* | implementation of fast track for gettable operations | Roberto Ierusalimschy | 2015-07-20 | 1 | -17/+15 | |
| | ||||||
* | computations in numerical for loop must avoid overflows too | Roberto Ierusalimschy | 2015-07-04 | 1 | -3/+3 | |
| | ||||||
* | detail (cast to avoid mixing types in conditional expression) | Roberto Ierusalimschy | 2015-06-25 | 1 | -2/+2 | |
| | ||||||
* | bug in order NaN x int (tests must ensure that NaN does not getv5.3.1 | Roberto Ierusalimschy | 2015-06-09 | 1 | -11/+12 | |
| | | | | converted to integer) | |||||
* | When comparing integers with floats, use float as common type when | Roberto Ierusalimschy | 2015-06-02 | 1 | -52/+69 | |
| | | | | | | possible (i.e., when integer fits in a float without losses); seems to be more efficient in architectures with native support for used Lua numbers | |||||
* | bug: interpreter cannot pop activation frame before calling return | Roberto Ierusalimschy | 2015-05-22 | 1 | -3/+2 | |
| | | | | | hook (as it may want to access local variables active by the end of the function) | |||||
* | 'l <= r' for numbers has its own function, instead of using | Roberto Ierusalimschy | 2015-05-20 | 1 | -14/+30 | |
| | | | | 'not (r < l)' (seems to be slightly more efficient) | |||||
* | new semantics for numerical order (following math regardless | Roberto Ierusalimschy | 2015-05-20 | 1 | -28/+90 | |
| | | | | representation) | |||||
* | new semantics for equality int-float | Roberto Ierusalimschy | 2015-04-29 | 1 | -5/+3 | |
| | ||||||
* | Bug: suspended '__le' metamethod can give wrong result | Roberto Ierusalimschy | 2015-04-10 | 1 | -11/+21 | |
| | ||||||
* | detail ('b + base' -> 'base + b' to follow all other similar uses) | Roberto Ierusalimschy | 2015-03-30 | 1 | -2/+2 | |
| |