Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Small correction in assertion | Roberto Ierusalimschy | 2019-12-13 | 1 | -1/+1 |
| | |||||
* | A few changes in tests about number of bits in integers | Roberto Ierusalimschy | 2019-05-13 | 1 | -4/+0 |
| | | | | | | - The preprocessor must work with at least 'long', and therefore must do shifts of up to 31 bits correctly. - Whenever possible, use unsigned types in shifts. | ||||
* | Some improvements in 'luaconf.h' | Roberto Ierusalimschy | 2019-05-13 | 1 | -4/+7 |
| | | | | | Added '#if !defined' in some definitions to allow external definitions; more comments; other small changes. | ||||
* | Avoid the creation of too many strings in 'package' | Roberto Ierusalimschy | 2019-05-03 | 1 | -1/+1 |
| | | | | | | | | | Both when setting a path and searching for a file ('searchpath'), this commit reduces the number of intermediate strings created in Lua. (For setting a path the change is not relevant, because this is done only twice when loading the module. Anyway, it is a nice example of how to use auxlib buffers to manipulate strings in the C API.) | ||||
* | Added field 'srclen' to structure 'lua_Debug' | Roberto Ierusalimschy | 2019-04-04 | 1 | -0/+4 |
| | | | | | | This new field gets the length of 'source' in the same structure. Unlike the other strings in that structure, 'source' can be relatively large, and Lua already has its length readily available. | ||||
* | LUAI_MAXCCALLS renamed LUAI_MAXCSTACK | Roberto Ierusalimschy | 2019-03-25 | 1 | -9/+0 |
| | | | | | | | The limit LUAI_MAXCCALLS was renamed LUAI_MAXCSTACK, which better represents its meaning. Moreover, its definition was moved to 'luaconf.h', given its importance now that Lua does not use a "stackless" implementation. | ||||
* | Keep correct type for immediate operands in comparisons | Roberto Ierusalimschy | 2019-03-22 | 1 | -0/+2 |
| | | | | | | | | | | | | When calling metamethods for things like 'a < 3.0', which generates the opcode OP_LTI, the C register tells that the operand was converted to an integer, so that it can be corrected to float when calling a metamethod. This commit also includes some other stuff: - file 'onelua.c' added to the project - opcode OP_PREPVARARG renamed to OP_VARARGPREP - comparison opcodes rewritten through macros | ||||
* | Changes in the control of C-stack overflow | Roberto Ierusalimschy | 2018-12-27 | 1 | -2/+4 |
| | | | | | | | | | | * unification of the 'nny' and 'nCcalls' counters; * external C functions ('lua_CFunction') count more "slots" in the C stack (to allow for their possible use of buffers) * added a new test script specific for C-stack overflows. (Most of those tests were already present, but concentrating them in a single script easies the task of checking whether 'LUAI_MAXCCALLS' is adequate in a system.) | ||||
* | Details (comments) | Roberto Ierusalimschy | 2018-09-11 | 1 | -1/+4 |
| | |||||
* | Corrections in the implementation of '%' for floats. | Roberto Ierusalimschy | 2018-08-28 | 1 | -6/+8 |
| | | | | | | | | | The multiplication (m*b) used to test whether 'm' is non-zero and 'm' and 'b' have different signs can underflow for very small numbers, giving a wrong result. The use of explicit comparisons solves this problem. This commit also adds several new tests for '%' (both for floats and for integers) to exercise more corner cases, such as very large and very small values. | ||||
* | Removed extra information from RCS keyword strings | Roberto Ierusalimschy | 2018-08-23 | 1 | -1/+1 |
| | | | | | Version numbers and dates (mostly wrong) from RCS keyword strings removed from all source files; only the file name are kept. | ||||
* | new macro 'ispow2' | Roberto Ierusalimschy | 2018-06-15 | 1 | -1/+7 |
| | |||||
* | new macros 'likely'/'unlikely' with hints for jump predictions | Roberto Ierusalimschy | 2018-05-30 | 1 | -1/+20 |
| | | | | (used only in errors for now) | ||||
* | janitor work on casts | Roberto Ierusalimschy | 2018-01-28 | 1 | -2/+7 |
| | |||||
* | comment | Roberto Ierusalimschy | 2017-12-28 | 1 | -3/+2 |
| | |||||
* | more freedom in handling memory-allocation errors (not all allocations | Roberto Ierusalimschy | 2017-12-11 | 1 | -2/+2 |
| | | | | | automatically raise an error), which allows fixing a bug when resizing a table. | ||||
* | another value for LUAI_MAXCCALLS (must think more about that) | Roberto Ierusalimschy | 2017-12-01 | 1 | -2/+2 |
| | |||||
* | no more 'stackless' implementation; 'luaV_execute' calls itself | Roberto Ierusalimschy | 2017-11-23 | 1 | -3/+4 |
| | | | | | recursively to execute function calls. 'unroll' continues all executions suspended by an yield (through a long jump) | ||||
* | new type 'ls_byte' for signed bytes | Roberto Ierusalimschy | 2017-06-27 | 1 | -1/+2 |
| | |||||
* | avoid overflows in computation of step size | Roberto Ierusalimschy | 2017-06-01 | 1 | -1/+8 |
| | |||||
* | type 'L_Umaxalign' replaced by macro 'LUAI_MAXALIGN', which is also added | Roberto Ierusalimschy | 2017-04-24 | 1 | -16/+1 |
| | | | | to the auxlib buffer | ||||
* | details (typos in comments) | Roberto Ierusalimschy | 2015-11-19 | 1 | -2/+2 |
| | |||||
* | small changes to allow 'precall' to spend time preserving 'func' | Roberto Ierusalimschy | 2015-10-21 | 1 | -6/+7 |
| | | | | only when needed (that is, when stack actually changes) | ||||
* | detail (string cache a bit smaller by default) | Roberto Ierusalimschy | 2015-10-06 | 1 | -2/+2 |
| | |||||
* | code for string cache generalized for "associative sets" (compiler | Roberto Ierusalimschy | 2015-09-22 | 1 | -4/+7 |
| | | | | will optimize away or inline the extra loops) | ||||
* | 'lua_longassert' defined as an expression (instead of a command) | Roberto Ierusalimschy | 2015-09-08 | 1 | -2/+2 |
| | |||||
* | 'lua_Number' added to 'L_Umaxalign' union | Roberto Ierusalimschy | 2015-07-15 | 1 | -2/+8 |
| | |||||
* | comment | Roberto Ierusalimschy | 2015-06-09 | 1 | -6/+6 |
| | |||||
* | macro 'luai_apicheck'/'api_check' back with a 'lua_State' parameter | Roberto Ierusalimschy | 2015-03-06 | 1 | -8/+4 |
| | | | | (some people use it) | ||||
* | new cache for interning strings | Roberto Ierusalimschy | 2015-03-04 | 1 | -1/+9 |
| | |||||
* | 'point2int' -> 'point2uint' (to reflect its actual result type) | Roberto Ierusalimschy | 2015-03-03 | 1 | -3/+3 |
| | |||||
* | detail (use 'l_floor' instead of 'l_mathop(floor)') | Roberto Ierusalimschy | 2015-02-09 | 1 | -2/+2 |
| | |||||
* | macros 'luai_num*' (for float arithmetic operations) moved to | Roberto Ierusalimschy | 2015-02-05 | 1 | -1/+48 |
| | | | | llimits.h. | ||||
* | LUAI_MAXSHORTLEN moved from 'luaconf.h' to 'llimits.h' (does not | Roberto Ierusalimschy | 2015-01-16 | 1 | -1/+11 |
| | | | | affect the API and is seldom modified) | ||||
* | larger MINSTRTABSIZE (standard Lua starts with ~230 strings, after | Roberto Ierusalimschy | 2015-01-16 | 1 | -3/+8 |
| | | | | oppening the standard libraries) | ||||
* | comments | Roberto Ierusalimschy | 2015-01-16 | 1 | -2/+12 |
| | |||||
* | definition for 'MAXUPVAL' moved for a more "private" place and its | Roberto Ierusalimschy | 2015-01-13 | 1 | -6/+1 |
| | | | | value and comment corrected to reflect current implementation | ||||
* | old Visual Studio versions did not support 'noreturn' attribute | Roberto Ierusalimschy | 2014-12-19 | 1 | -2/+2 |
| | |||||
* | comments (references to "ANSI C" changed to "ISO C", which is the | Roberto Ierusalimschy | 2014-11-02 | 1 | -2/+2 |
| | | | | international name | ||||
* | configurations for types 'lu_mem'/'l_mem'/'Instruction' moved to here | Roberto Ierusalimschy | 2014-10-29 | 1 | -14/+26 |
| | | | | | (from 'luaconf.h'), as they are not needed by the API and probably will not be changed | ||||
* | 'MAXSTACK' -> 'MAXREGS' and moved to 'lcode.c' (there is no reason | Roberto Ierusalimschy | 2014-10-27 | 1 | -5/+1 |
| | | | | to change that constant...) | ||||
* | `name' in comments changed to 'name' | Roberto Ierusalimschy | 2014-10-25 | 1 | -3/+3 |
| | |||||
* | no more "-2" for limits. (Limits should be precise; safety is in | Roberto Ierusalimschy | 2014-07-18 | 1 | -6/+6 |
| | | | | the code that handles these limits.) | ||||
* | detail (no need to define LUAI_USER_ALIGNMENT_T when it is not | Roberto Ierusalimschy | 2014-07-18 | 1 | -4/+5 |
| | | | | defined; simpler to define 'L_Umaxalign' directly) | ||||
* | removed unused parameter Ä'L' in macro 'api_check' and company | Roberto Ierusalimschy | 2014-07-15 | 1 | -7/+4 |
| | |||||
* | 'IntPoint' -> 'point2int' + ensure that casted value fits in | Roberto Ierusalimschy | 2014-06-26 | 1 | -3/+3 |
| | | | | destination type | ||||
* | cast_u2s/cast_s2u renamed l_castS2U/l_castU2S to be configurable from | Roberto Ierusalimschy | 2014-04-15 | 1 | -5/+9 |
| | | | | outside (mostly for testing) | ||||
* | macros cast_integer/cast_unsigned replaced by cast_u2s/cast_s2u, that | Roberto Ierusalimschy | 2014-04-15 | 1 | -3/+12 |
| | | | | should be used only between lua_Integer and lua_Unsigned | ||||
* | new global macro 'LUA_MAXUNSIGNED' | Roberto Ierusalimschy | 2014-04-12 | 1 | -5/+1 |
| | |||||
* | correct definition for 'MAX_SIZE' (using singed integers as the limit, | Roberto Ierusalimschy | 2014-04-11 | 1 | -8/+9 |
| | | | | not unsigned ones) + new type 'l_uacInt' |