1
0
mirror of https://github.com/lua/lua synced 2026-06-08 15:34:49 +00:00

Commit Graph

  • 4d5de1c1fb Fixed bug in line info. when using 'not' operator Roberto Ierusalimschy 2018-07-11 12:53:23 -03:00
  • 9a825f6bb9 In tests of opcodes, avoid coercion in bitwise operation Roberto Ierusalimschy 2018-07-10 14:55:16 -03:00
  • 941b189d98 Improvements in the manual Roberto Ierusalimschy 2018-07-10 13:48:19 -03:00
  • 21f663d29f Added missing $Id$ to file 'ljumptab.h' Roberto Ierusalimschy 2018-07-10 13:40:30 -03:00
  • 626cf0581b Generational mode may wait longer after a major collection Roberto Ierusalimschy 2018-07-09 14:22:09 -03:00
  • ccf6d098f6 'searchpath' creates less temporary strings Roberto Ierusalimschy 2018-07-09 13:29:08 -03:00
  • de2caf7ee4 Bit-library file removed from the project (as it was deprecated) Roberto Ierusalimschy 2018-07-09 12:54:51 -03:00
  • b08c9079c5 Opcode names moved to a new header file Roberto Ierusalimschy 2018-07-09 12:50:51 -03:00
  • 06e08c6d05 Fixed bug in OP_IDIVI Roberto Ierusalimschy 2018-07-09 12:41:24 -03:00
  • 7c519dfbd0 Added manual and tests for version 5.4-w2 Roberto Ierusalimschy 2018-07-09 12:33:01 -03:00
  • f59e6a93c0 opening functions must be exported! v5.4-w2 Roberto Ierusalimschy 2018-06-19 16:23:57 -03:00
  • 6683f83b51 several details Roberto Ierusalimschy 2018-06-18 15:25:19 -03:00
  • a314409dba in generational mode, an emergency collection can turn any object black during any memory allocation + 'luaT_getvarargs' may reallocate the stack, and therefore the top must be correct. Roberto Ierusalimschy 2018-06-18 14:58:21 -03:00
  • 15ce8d0904 in generational mode, an emergency collection can turn any object black during any memory allocation. Roberto Ierusalimschy 2018-06-18 14:57:20 -03:00
  • b43300c14f change in 'LUAI_DDEC' to allow variables to be static in 'onelua' + change in 'LUAMOD_API' as opening functions do not need to be global Roberto Ierusalimschy 2018-06-18 09:51:05 -03:00
  • af70905246 no need to check whether libraries and host use the same kernel; Lua should work correctly with several copies of the kernel Roberto Ierusalimschy 2018-06-18 09:08:10 -03:00
  • b95e466218 new field 'nilvalue' in struct 'global_State' to avoid the use of addresses of static variables Roberto Ierusalimschy 2018-06-15 16:31:22 -03:00
  • d406d3d05f removed unused macros 'isstackindex'/'api_checkstackindex' + macro 'api_checkvalidindex' (used only once) expanded and removed Roberto Ierusalimschy 2018-06-15 14:30:52 -03:00
  • b6780ee41b detail (removed unused definition for 'LUA_QS') Roberto Ierusalimschy 2018-06-15 12:49:28 -03:00
  • 2c107e13a8 warning (comparison between signed and unsigned integers) Roberto Ierusalimschy 2018-06-15 11:18:40 -03:00
  • 6e600695f8 field 'sizearray' in struct 'Table' changed to 'alimit', which can be used as a hint for '#t' Roberto Ierusalimschy 2018-06-15 11:14:20 -03:00
  • 06127927ff new macro 'ispow2' Roberto Ierusalimschy 2018-06-15 11:13:45 -03:00
  • aedcfb9414 type 'Rand64' may not be long long, so it should not use 'LL' in its constants Roberto Ierusalimschy 2018-06-14 15:47:22 -03:00
  • 992b6d2712 no more 'TESTGRAYBIT' (to free this bit for real uses) Roberto Ierusalimschy 2018-06-11 11:19:50 -03:00
  • 588dfa4ce5 detail in comment Roberto Ierusalimschy 2018-06-08 16:07:27 -03:00
  • 6f2b8e21c4 added 'const' to 'Proto*' when possible Roberto Ierusalimschy 2018-06-08 16:06:59 -03:00
  • c5dc521d65 added patch for bug 5.3.4-7 Roberto Ierusalimschy 2018-06-08 13:23:18 -03:00
  • 505fc91222 no more 'luaO_nilobject' to avoid comparison of global variable addresses (now uses static variables) Roberto Ierusalimschy 2018-06-01 14:40:38 -03:00
  • fb8fa66136 no more 'luaH_emptyobject' and comparisons of addresses of global variables (instead, use a different kind of nil to signal the fake entry returned when a key is not found in a table) Roberto Ierusalimschy 2018-06-01 13:51:34 -03:00
  • b397064955 avoid craches when loading tampered code with NULL as a string constant Roberto Ierusalimschy 2018-06-01 13:45:58 -03:00
  • 34aa0c5bd7 new macros 'likely'/'unlikely' with hints for jump predictions (used only in errors for now) Roberto Ierusalimschy 2018-05-30 11:25:52 -03:00
  • 97e394ba18 macro 'luai_makeseed' now controls the whole process of making the seed Roberto Ierusalimschy 2018-05-29 15:02:51 -03:00
  • 950fbcb971 detail ('l_castU2S' should only be used over lua_Unsigned values) Roberto Ierusalimschy 2018-05-29 15:01:50 -03:00
  • b2d4d06428 avoid possible overflows when checking sizes in 'string.unpack' Roberto Ierusalimschy 2018-05-25 10:39:32 -03:00
  • 3b8dba5279 added patches for two bugs (5.3.4-2 and 5.3.4-3) Roberto Ierusalimschy 2018-05-24 17:25:14 -03:00
  • 892aff2a07 avoid circular inclusion between ltm.h <-> lstate.h Roberto Ierusalimschy 2018-05-23 11:41:20 -03:00
  • 02ed0b2c30 in 'luaD_poscall', there is no need to compute 'firstResult' when 'nres==0' Roberto Ierusalimschy 2018-05-22 09:02:36 -03:00
  • de53c2ec7e using some weak "randomness" (time and memory address) to initialize seeds for the PRNG Roberto Ierusalimschy 2018-05-16 08:27:59 -03:00
  • 80bd4a8940 correction on xoshiro256** algorithm (should use state[1] instead of state[0] for output) Roberto Ierusalimschy 2018-05-09 11:54:37 -03:00
  • 3e7415e846 reorganization of '#if's for sellecting a type for 'Rand64' + comments Roberto Ierusalimschy 2018-05-04 17:01:45 -03:00
  • e64e20ac81 minimizing the code ran by 'vmfetch' + no more 'vra' (the code is simpler without 'vra' and conversion is a no-op) Roberto Ierusalimschy 2018-05-02 15:17:59 -03:00
  • deb807837c 'luaO_pushvfstring' does not need to reallocate stack (less error cases in the API) Roberto Ierusalimschy 2018-04-25 13:26:20 -03:00
  • 26eb144541 no need to define 'luaP_opnames' in regular builds Roberto Ierusalimschy 2018-04-19 12:42:41 -03:00
  • f9c3d6fdbe use test mode to test the interpreter without jump tables Roberto Ierusalimschy 2018-04-11 13:49:36 -03:00
  • 762baf0548 detail (trim constants are unsigned) Roberto Ierusalimschy 2018-04-06 14:52:42 -03:00
  • b8a04658b2 PRNG changed from 'xoroshiro128+' to 'xoshiro256**' + "I' renamed 'Rand64' + implementation can use integer types larger than 64 (or 32) bits Roberto Ierusalimschy 2018-04-06 12:41:29 -03:00
  • b44787652b using 'xoroshiro128+' for PRNG (plus a rotate at the final result to have better lower bits) Roberto Ierusalimschy 2018-04-04 13:12:53 -03:00
  • 03c6a05ec8 no more nil-in-table Roberto Ierusalimschy 2018-04-04 11:23:41 -03:00
  • 3d0b5edfe4 using unsigned comparison in 'l_intfitsf' (avoids one comparison) Roberto Ierusalimschy 2018-04-02 14:52:07 -03:00
  • 8d50a998e3 definition for LUA_UNSIGNEDBITS (number of bits in a LUA_UNSIGNED) Roberto Ierusalimschy 2018-04-02 10:58:33 -03:00
  • bdd10a08b1 in 'random', uses high-order bits instead of low-order (better statistical properties) Roberto Ierusalimschy 2018-03-26 16:48:46 -03:00
  • c5e3b2f814 in random/'project', remove the special case for "small" intervals; it is slower than the general case. Roberto Ierusalimschy 2018-03-22 16:54:49 -03:00
  • 6486762463 missing LUAI_FUNC in prototype for 'luaK_patchgoto' Roberto Ierusalimschy 2018-03-19 17:03:44 -03:00
  • 4907444db9 'fTransfer' -> 'ftransfer' / 'nTransfer' -> 'ntransfer' (keep the standard of names in lower case) Roberto Ierusalimschy 2018-03-16 12:33:34 -03:00
  • c3cb31fa9a some extra goodies for 'readline' ('rl_readline_name' and 'rl_inhibit_completion') Roberto Ierusalimschy 2018-03-16 11:23:08 -03:00
  • 0c7738240e FALLTHROUGH comment must be last "statement" (so it does not work when inside a block) Roberto Ierusalimschy 2018-03-16 11:22:09 -03:00
  • 7b0b6b3b39 cannot use 'defined' inside a macro + call to 'luaT_keydef' must be protected Roberto Ierusalimschy 2018-03-16 11:21:20 -03:00
  • 89da4168df avoid functions named 'pack' (name too common, may collide when doing 'onelua.c') Roberto Ierusalimschy 2018-03-16 11:18:18 -03:00
  • 6b01b6cf6a 'lu_int32' may not be 'int' Roberto Ierusalimschy 2018-03-12 09:39:03 -03:00
  • e3388ebfad more explicit casts when converting an integer to a random float (to ensure computations are done with all bits) Roberto Ierusalimschy 2018-03-11 11:48:09 -03:00
  • 9e3db70482 details (casts between 'lua_Number' and 'double') Roberto Ierusalimschy 2018-03-09 16:24:45 -03:00
  • dbec41f34c random floats of different sizes get exactly needed number of random bits (up to 64) Roberto Ierusalimschy 2018-03-09 16:23:39 -03:00
  • 0b3db69e41 slight simplification in 'xorshift128plus' Roberto Ierusalimschy 2018-03-09 12:05:13 -03:00
  • 80ae1c1c16 fairer projection of random integers into an integer interval Roberto Ierusalimschy 2018-03-09 11:56:25 -03:00
  • 40683b4934 added definition for LUA_MAXUNSIGNED Roberto Ierusalimschy 2018-03-09 11:56:02 -03:00
  • 6480e73599 details (avoid using non-C89 '//' comment) Roberto Ierusalimschy 2018-03-07 13:26:01 -03:00
  • 4a1612ff9b new experimental syntax using reserved word 'undef' Roberto Ierusalimschy 2018-03-07 12:55:38 -03:00
  • 464658b16a better modularization of the code for the REPL Roberto Ierusalimschy 2018-03-06 17:30:17 -03:00
  • bdcde45d05 updated to use jump tables Roberto Ierusalimschy 2018-03-05 11:26:18 -03:00
  • 8b0434e5e6 both 'fTransfer' and 'nTransfer' may not fit in a 'char' Roberto Ierusalimschy 2018-03-05 11:15:32 -03:00
  • 8b0b675149 added casts (warnings in VS) Roberto Ierusalimschy 2018-03-05 11:15:04 -03:00
  • 8c429311a3 typo in comment Roberto Ierusalimschy 2018-03-05 11:13:55 -03:00
  • 66b7b075a6 'math.random' using the xorshift128+ algorithm Roberto Ierusalimschy 2018-03-05 11:07:48 -03:00
  • 62a392ff46 using jump tables when available Roberto Ierusalimschy 2018-03-02 15:59:19 -03:00
  • 893f382e94 Jump Table for the interpreter Roberto Ierusalimschy 2018-03-02 15:56:14 -03:00
  • 0eb10c6303 'LUA_USE_READLINE' moved to the make file Roberto Ierusalimschy 2018-03-02 15:31:51 -03:00
  • 00008b8ed0 back to one format per argument Roberto Ierusalimschy 2018-03-02 15:25:00 -03:00
  • df49384516 year in copyright changed to 2018 Roberto Ierusalimschy 2018-03-02 13:30:47 -03:00
  • fbea553ca2 'lua_setiuservalue' removes value from the stack even in case of error Roberto Ierusalimschy 2018-02-27 17:01:55 -03:00
  • 34b00c16e2 removed compatibility code with older versions Roberto Ierusalimschy 2018-02-27 15:47:32 -03:00
  • 12110dec0e module has been deprecated. Roberto Ierusalimschy 2018-02-27 15:46:26 -03:00
  • 4105cafb84 no more 'bitlib' Roberto Ierusalimschy 2018-02-27 15:27:30 -03:00
  • 76ff55750e no optimizations in test mode + no more compat with 5.2 + a few more options in comments Roberto Ierusalimschy 2018-02-27 15:24:23 -03:00
  • b7edf5d2d8 metamethods for 'removekey'/'keyin' Roberto Ierusalimschy 2018-02-27 14:48:28 -03:00
  • ef8263f81f better names for macros for tags and types. rttype -> rawtt; ttyperaw -> withvariant; ttype -> ttypetag; tnov -> ttype Roberto Ierusalimschy 2018-02-26 11:16:05 -03:00
  • 2952bc5fc9 special compact representation for userdata with no user values (a common case) Roberto Ierusalimschy 2018-02-26 10:35:03 -03:00
  • 38d3bc8909 using 'offsetof' to compute the size of parts of a structure Roberto Ierusalimschy 2018-02-25 10:40:00 -03:00
  • 75efc6722b avoid variant tags with the same value of the original type (to expose bugs more easily) Roberto Ierusalimschy 2018-02-25 09:52:32 -03:00
  • d766e2ae17 first (parcial) implementation of 'keyin'/'removekey' (still no metamethods, no raw verssions) Roberto Ierusalimschy 2018-02-25 09:48:16 -03:00
  • f055a9dffd added check in 'obj2gco' to prevent its use in non Lua-object pointers (otherwise its cast is blind, casting any value given to it) Roberto Ierusalimschy 2018-02-25 09:43:52 -03:00
  • 4a7fe61806 in 'clearbykeys', clear keys of just-removed entries too Roberto Ierusalimschy 2018-02-23 10:21:27 -03:00
  • 9243c414d9 first version of empty entries in tables (so that, in the future, tables can contain regular nil entries) Roberto Ierusalimschy 2018-02-23 10:16:18 -03:00
  • 477ca2fe8c some reorganization in 'lobject.h' (just moving stuff around) Roberto Ierusalimschy 2018-02-22 14:28:10 -03:00
  • c72ac048b9 conditional jumps "deunified" (if a jump table is used, the unification may harm jump prediction.) Roberto Ierusalimschy 2018-02-21 16:43:44 -03:00
  • b03dddf9e4 removed coercion string->number in bitwise operations (can be done with a Lua module) Roberto Ierusalimschy 2018-02-21 14:48:31 -03:00
  • c80c7a49fd details (comments) Roberto Ierusalimschy 2018-02-21 13:28:12 -03:00
  • 212095a601 new opcodes OP_GTI/OP_GEI Roberto Ierusalimschy 2018-02-21 12:49:32 -03:00
  • c67603fafb using new 'lua_newuserdatauv' instead of 'lua_newuserdata' Roberto Ierusalimschy 2018-02-21 10:48:44 -03:00
  • 06865aa01d simpler implementation for 'LTintfloat'/'LEintfloat' + 'LTfloatint'/'LEfloatint' Roberto Ierusalimschy 2018-02-21 10:47:03 -03:00
  • 465b474899 small reorganization of 'luaV_flttointeger'/'luaV_tointeger' Roberto Ierusalimschy 2018-02-21 09:54:26 -03:00