Commit Graph

  • d77a7a8c26 detail (comment) Roberto Ierusalimschy 2016-03-31 16:01:21 -0300
  • e747491b96 comments Roberto Ierusalimschy 2016-03-23 15:08:26 -0300
  • acff3ad88d bug: 'gmatch' iterator fails when called from a coroutine different from the one that created it Roberto Ierusalimschy 2016-03-23 14:12:17 -0300
  • e7b2e01d43 bug: label between local definitions can mix-up their initializations Roberto Ierusalimschy 2016-03-07 16:25:39 -0300
  • 03ca6385dc call 'checkGC' *after* creating new objects (this is how 'execute' does it) (It increases the changes that 'allgc' start with a non-white object, which helps 'entersweep') Roberto Ierusalimschy 2016-02-29 11:27:14 -0300
  • 7777b412de When available, use metafield '__name' in error messages Roberto Ierusalimschy 2016-02-26 16:20:15 -0300
  • c3e9b14d24 '\0' is a control character, no need to check it explicitly Roberto Ierusalimschy 2016-02-25 16:42:55 -0300
  • 7d6b78ee79 in 'table.move', destination table can be source table even if given as an explicit extra argument Roberto Ierusalimschy 2016-02-25 16:41:54 -0300
  • 5f3ad5731e simpler yet definition for 'checkoption' Roberto Ierusalimschy 2016-02-09 10:16:11 -0200
  • 494e9ba0f4 simpler code for 'checkoption' + added conversion specifiers specific to Windows Roberto Ierusalimschy 2016-02-08 12:42:46 -0200
  • f79b4568ae details (removed silly use of 'luaL_opt' + better error messages in cases of "table expected") Roberto Ierusalimschy 2016-02-08 10:55:19 -0200
  • fd51651684 new macro 'vmfetch' to help changing code to computed goto's (macro abstracts the code to run before each instruction) Roberto Ierusalimschy 2016-02-05 17:59:14 -0200
  • 994374c4df new release number + new year Roberto Ierusalimschy 2016-01-13 15:55:19 -0200
  • 62f6652d53 no more extra space in 'luaL_checkstack'. (It was already useless for the first call, and function works ok without that space anyway (just error message misses the 'msg' component) Roberto Ierusalimschy 2016-01-08 13:33:09 -0200
  • 9945253d57 details (comments + text of error messages) Roberto Ierusalimschy 2016-01-06 11:43:05 -0200
  • 1f259be52a 'getcode' -> 'getinstruction' Roberto Ierusalimschy 2016-01-05 14:22:37 -0200
  • 1a44e82200 'luaV_fastget' only treats the real fast case (table with a non-nil value at given key, so that it does not need to check metamethods) Roberto Ierusalimschy 2016-01-05 14:07:21 -0200
  • a272fa66f0 bug: Metatable may access its own dealocated field when it has a self reference in __newindex + some refactoring Roberto Ierusalimschy 2016-01-04 14:44:50 -0200
  • b12b635a90 more refactoring Roberto Ierusalimschy 2016-01-04 11:40:57 -0200
  • 7cd7c2e0a1 Metatable may access its own dealocated field when it has a self reference in __newindex. Roberto Ierusalimschy 2016-01-04 11:35:56 -0200
  • 07cf8415e3 more comments + reordeing of union inside 'expdesc' to allow static initialization of a VKINT value Roberto Ierusalimschy 2015-12-30 16:16:13 -0200
  • c0836dda74 avoid empty macro arguments (invalid in C89) Roberto Ierusalimschy 2015-12-21 11:02:14 -0200
  • 384d1b47b0 comments (*lots* of them) + asserts Roberto Ierusalimschy 2015-12-18 11:53:36 -0200
  • 19770b03a9 comments. (More explanation about kinds of expressions.) Roberto Ierusalimschy 2015-12-17 13:44:50 -0200
  • a01eba657e reordering of some functions + 'code_label' renamed to 'code_loadbool' Roberto Ierusalimschy 2015-12-17 13:02:44 -0200
  • b7446ea88d detail ('while' -> 'for') in 'luaK_patchclose' Roberto Ierusalimschy 2015-12-17 12:52:53 -0200
  • a051b3323e comments (about hooks vs signals) Roberto Ierusalimschy 2015-12-16 14:40:07 -0200
  • c4e01c568a make 'hook' volatile (as it may be changed in signal handling) Roberto Ierusalimschy 2015-12-16 14:39:38 -0200
  • bda090b961 comments + small code changes around stack usage when 'luaL_checkstack' raises an error (and needs the stack to create the error message...) Roberto Ierusalimschy 2015-12-14 09:59:27 -0200
  • e383941652 in 'table.sort': 'typedef' for type of indices + removed stack check (recursion is in the C stack, not in the Lua stack!) Roberto Ierusalimschy 2015-12-14 09:57:38 -0200
  • 656b3cea1b using 'sig_atomic_t' for 'hookmask' (as it can be changed inside a signal) Roberto Ierusalimschy 2015-12-14 09:54:49 -0200
  • 2d1d57bc18 comments Roberto Ierusalimschy 2015-12-14 09:53:27 -0200
  • 03412af06e detail (removed fixed argument to function 'callallpendingfinalizers') Roberto Ierusalimschy 2015-12-10 16:12:30 -0200
  • 542dbd4c65 detail (moving bodies of 'while' to a separate line) Roberto Ierusalimschy 2015-12-09 13:21:28 -0200
  • c25d59a6bd format "%s" in 'string.format' accepts embedded zeros when it has no modifiers v5.3.2 Roberto Ierusalimschy 2015-11-25 14:28:17 -0200
  • 5936eb16d8 randomness in 'table.sort' used only when needed (big imbalance in partition result) + small refactoring Roberto Ierusalimschy 2015-11-25 10:48:57 -0200
  • 7dc3ca7b8e handling 'clock_t' and 'time_t' correctly in ISO C point of view Roberto Ierusalimschy 2015-11-24 14:54:32 -0200
  • 71344b5cac easy the way to accept other modifiers for 'mode' in 'io.open' Roberto Ierusalimschy 2015-11-23 09:36:11 -0200
  • f230898ad6 tiny code refactoring in 'luaS_hash' Roberto Ierusalimschy 2015-11-23 09:32:51 -0200
  • 3feb702df8 ensure argument to 'string.format("%s")' does not contain zeros Roberto Ierusalimschy 2015-11-23 09:31:21 -0200
  • c5112f7b15 details (comments) Roberto Ierusalimschy 2015-11-23 09:30:45 -0200
  • c231a5e2b6 using unsigned int (instead of int) in 'table.sort' to avoid overflows (when computing the pivot and in original table size) Roberto Ierusalimschy 2015-11-23 09:17:31 -0200
  • dc9ac5b8c2 details (merging declarations with initialization) Roberto Ierusalimschy 2015-11-23 09:09:27 -0200
  • 146508b28e randomness in pivot for 'table.sort' done by a macro (easier to change) Roberto Ierusalimschy 2015-11-20 10:30:20 -0200
  • d103312661 details (typos in comments) Roberto Ierusalimschy 2015-11-19 17:16:22 -0200
  • 2e8f8a18e4 detail Roberto Ierusalimschy 2015-11-17 14:00:28 -0200
  • f5b0459aba details Roberto Ierusalimschy 2015-11-13 15:19:46 -0200
  • d682b3c9ec added separator for bugs in 5.3.1 Roberto Ierusalimschy 2015-11-13 15:19:07 -0200
  • fc085aa627 new release number (5.3.2) Roberto Ierusalimschy 2015-11-13 15:18:42 -0200
  • 9a5d6aedb7 trying to optimize a little 'luaD_poscall' Roberto Ierusalimschy 2015-11-13 11:24:26 -0200
  • 89e3a84344 removed field 'n' from 'CallInfo' (not being used right now) Roberto Ierusalimschy 2015-11-13 10:16:51 -0200
  • 04587b6256 macro with empty argument can be seen as macro with no argument; better to avoid that Roberto Ierusalimschy 2015-11-12 16:08:58 -0200
  • bde03eeb48 in 'table.sort': tighter checks for invalid order function + "random" pivot for larger intervals (to avoid attacks with bad data) Roberto Ierusalimschy 2015-11-12 16:07:25 -0200
  • 330d426ffd avoid the use of deprecated functions 'luaL_checkunsigned'/ 'lua_pushunsigned' Roberto Ierusalimschy 2015-11-11 17:08:09 -0200
  • 02340375be janitor work on 'table.sort': added comments, partition code moved to a separated function, code conventions updated, etc. No changes at all in the logic/algorithm Roberto Ierusalimschy 2015-11-06 14:07:14 -0200
  • 5100bc8aa1 no need for a special case to get long strings (not that common) Roberto Ierusalimschy 2015-11-03 16:35:21 -0200
  • ebb2afa54b allow 'set' macros to be used when 'L' is not available (as it was needed only for assertions) Roberto Ierusalimschy 2015-11-03 16:33:10 -0200
  • 7485512384 added comment and assert about dead keys Roberto Ierusalimschy 2015-11-03 16:10:44 -0200
  • 46de77b219 bug: despite its name, 'luaH_getstr' did not work for strings in general, but only for short strings Roberto Ierusalimschy 2015-11-03 13:47:30 -0200
  • d356183402 new function 'luaS_hashlongstr' Roberto Ierusalimschy 2015-11-03 13:36:01 -0200
  • e61ee8a036 in 'luaD_call', use two functions instead of one with fixed boolean argument + stack error handling in 'luaD_call' moved to a separated function Roberto Ierusalimschy 2015-11-02 16:48:49 -0200
  • ff1289a361 in 'luaD_call', use two functions instead of one with fixed boolean argument Roberto Ierusalimschy 2015-11-02 16:48:07 -0200
  • cd73f3ccc5 now that we have a counter for CallInfos, use it for a more accurate value for the memory used by a thread Roberto Ierusalimschy 2015-11-02 14:19:29 -0200
  • 8c1fb91802 macro 'incr_top' replaced by function 'luaD_inctop'. (It is not used in critical time pathes, can save a few bytes without the macro) Roberto Ierusalimschy 2015-11-02 14:09:30 -0200
  • 33b366ec32 added counters for total and individual CallInfo entries (to allow better syncronization between CallInfo size and stack size) Roberto Ierusalimschy 2015-11-02 14:01:41 -0200
  • c5363a1b58 in 'luaD_precall', in vararg functions, complete missing parameters only after moving them to final place (avoids checking the stack again) Roberto Ierusalimschy 2015-11-02 12:06:01 -0200
  • 332a06bbd1 'luaO_pushvfstring' now uses 'incr_top' to increment top. Roberto Ierusalimschy 2015-11-02 12:02:35 -0200
  • ffd0d1232d using more "conventional" loops in 'luaD_poscall' (probably a little more efficient?) Roberto Ierusalimschy 2015-11-02 09:48:59 -0200
  • 07a2dcacbf flag CIST_REENTRY changed to CIST_FRESH (its negation); fresh invocations seem to be less frequent than reentries. (So, avoid setting flag on the frequent case.) Roberto Ierusalimschy 2015-11-02 09:43:17 -0200
  • c874abac98 with 'fast tracks', there is no need to do raw accesses in 'ipairs' Roberto Ierusalimschy 2015-10-29 13:21:04 -0200
  • 789e423b32 corrected comparisons of signed (int) with unsigned (size_t) Roberto Ierusalimschy 2015-10-29 13:11:41 -0200
  • 96ec8671b1 macro 'buff2num' replaced by its body (it caused more harm than good to readability) Roberto Ierusalimschy 2015-10-28 16:51:47 -0200
  • cc3a42b190 option 'c' in 'string.pack' accepts any string size (truncating if larger and padding if smaller) Roberto Ierusalimschy 2015-10-28 15:56:51 -0200
  • 6707ce6349 function prepares vararg only if it really uses them (chunks are always declared vararg but seldom uses them) Roberto Ierusalimschy 2015-10-28 15:28:40 -0200
  • 257961c601 OP_SELF can use 'luaV_fastget' specialized for strings, as it is applied only to string keys Roberto Ierusalimschy 2015-10-28 12:50:09 -0200
  • ae515a346c comments for luaD_precall/luaD_poscall Roberto Ierusalimschy 2015-10-28 10:25:36 -0200
  • 3cdf1d676b details (avoid 'case' inside block + avoid using one variable for two roles) Roberto Ierusalimschy 2015-10-28 10:06:45 -0200
  • 82129b9266 use macro 'hasjumps' to test whether expression has jumps... Roberto Ierusalimschy 2015-10-26 12:27:47 -0200
  • 8004ab756f hook test in 'luaV_execute' reduced to minimum (rest done in '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) Roberto Ierusalimschy 2015-10-22 12:40:47 -0200
  • ee5ef0f295 hook test in 'luaV_execute' reduced to minimum (rest done in 'luaG_traceexec' Roberto Ierusalimschy 2015-10-22 12:40:47 -0200
  • 5bdee4f810 small changes to allow 'precall' to spend time preserving 'func' only when needed (that is, when stack actually changes) Roberto Ierusalimschy 2015-10-21 16:40:47 -0200
  • 48098c42ff generic definitions for float types moved to before variable definitions (so that specific cases can redefine these generic definitions if needed) Roberto Ierusalimschy 2015-10-21 16:17:40 -0200
  • 3ad55386c4 'condchangemem' also may need to run 'pre'/'pos' Roberto Ierusalimschy 2015-10-21 16:15:15 -0200
  • caf8278710 added comments Roberto Ierusalimschy 2015-10-20 16:00:19 -0200
  • f7670781cf cleaner definition for 'luaC_condGC', using 'pre'/'pos' parameters Roberto Ierusalimschy 2015-10-20 15:56:21 -0200
  • df8b996bcc 'Protect' in table operations is not needed in the fast track + removal of a few dead macros Roberto Ierusalimschy 2015-10-20 15:41:35 -0200
  • 75d5a8924c macro 'addbuff' was using external variable name, instead of using its parameter name inside the macro. Roberto Ierusalimschy 2015-10-20 11:11:05 -0200
  • 880f82d089 '*' as a number means stack size, so that "return *" returns all values in the stack. Roberto Ierusalimschy 2015-10-12 13:38:19 -0300
  • 1a741157cb avoid (undefined behavior) integer 'overflow' in left shift Roberto Ierusalimschy 2015-10-08 12:55:35 -0300
  • 0c78de0d6d avoid calling write function with empty block Roberto Ierusalimschy 2015-10-08 12:53:49 -0300
  • df45f7118b detail (added assertion) Roberto Ierusalimschy 2015-10-08 12:53:31 -0300
  • 880df57e52 detail (removed unreacheable 'break') Roberto Ierusalimschy 2015-10-08 12:53:05 -0300
  • 8949904783 allow NULL string when length is zero in 'lua_pushlstring' and 'luaL_addlstring' Roberto Ierusalimschy 2015-10-06 13:10:22 -0300
  • 9294466234 detail (string cache a bit smaller by default) Roberto Ierusalimschy 2015-10-06 11:29:49 -0300
  • e290bd6760 in 'luaL_traceback', print correct number of levels even when initial level is not 1. Roberto Ierusalimschy 2015-10-02 12:46:49 -0300
  • dc4232379d detail (ensure subtraction is done unsigned) Roberto Ierusalimschy 2015-10-02 12:39:23 -0300
  • 10fffcd80a 'gmatch' keeps its state in a userdata (keeping the same 'MatchState' across calls) Roberto Ierusalimschy 2015-09-28 15:05:01 -0300
  • 8264dbc2bb implemented counter to abort non-linear behavior in pattern matching Roberto Ierusalimschy 2015-09-26 15:45:03 -0300
  • 9fae7b6d3f code for string cache generalized for "associative sets" (compiler will optimize away or inline the extra loops) Roberto Ierusalimschy 2015-09-22 11:18:24 -0300
  • 0f1f51be4b 'table.move' tries to copy elements in increasing order whenever possible Roberto Ierusalimschy 2015-09-17 12:53:50 -0300