aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | Correct anchoring and GC barriers in 'loadString'Roberto Ierusalimschy2023-11-132-42/+37
| | | | | | | | | | | | Call to 'luaH_setint' could call the GC with the string unanchored. Moreover, previously saved strings were being assigned to the prototype without a barrier.
* | Fixed buffers save long strings as external.Roberto Ierusalimschy2023-11-104-16/+29
| |
* | External stringsRoberto Ierusalimschy2023-11-099-14/+195
| | | | | | | | Strings can use external buffers to store their contents.
* | Towards external stringsRoberto Ierusalimschy2023-11-084-22/+36
| | | | | | | | Long strings have a pointer to string contents.
* | DetailsRoberto Ierusalimschy2023-11-081-9/+18
| | | | | | | | Comments and parameter name in header file.
* | Solving merge issue with use of tables in dump/undumpRoberto Ierusalimschy2023-11-082-6/+7
| | | | | | | | | | | | The use of tables in dump/undump to reuse strings did not exist in the version that changed the representation of arrays, so it was not corrected for the new API for tables.
* | Merge branch 'newarray' into nextversionRoberto Ierusalimschy2023-11-0712-273/+528
|\ \
| * | Merge branch 'master' into newarrayRoberto Ierusalimschy2023-11-0336-278/+369
| |\|
| * | Full implementation of new representation for arraysRoberto Ierusalimschy2023-11-035-29/+96
| | |
| * | Full abstraction for representation of array valuesRoberto Ierusalimschy2023-10-309-93/+128
| | |
| * | Avoid direct accesses to the array part of a tableRoberto Ierusalimschy2023-10-271-49/+79
| | |
| * | Some cleaning in the new table APIRoberto Ierusalimschy2023-05-168-210/+189
| | |
| * | New table API for 'set' functionsRoberto Ierusalimschy2023-05-165-71/+180
| | |
| * | Towards a new implementation of arraysRoberto Ierusalimschy2023-05-155-59/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The array part of a table wastes too much space, due to padding. To avoid that, we need to store values in the array as something different from a TValue. Therefore, the API for table access should not assume that any value in a table lives in a *TValue. This commit is the first step to remove that assumption: functions luaH_get*, instead of returning a *TValue where the value lives, receive a *TValue where to put the value being accessed. (We still have to change the luaH_set* functions.)
* | | Merge branch 'master' into nextversionRoberto Ierusalimschy2023-11-076-102/+137
|\ \ \ | | |/ | |/|
| * | Bug: Recursion in 'getobjname' can stack overflowRoberto Ierusalimschy2023-11-012-69/+87
| | | | | | | | | | | | | | | | | | 'getobjname' now broken in two, a basic version that handles locals, upvalues, and constants, and a full version, which uses the basic version to handle table accesses (globals and fields).
| * | Simpler test in 'luaH_getint'Roberto Ierusalimschy2023-10-261-11/+25
| | | | | | | | | | | | | | | The test whether key is inside the array part of a table uses a bit trick to avoid computing the real size of the array part.
| * | Removed test for "corrupted binary dump"Roberto Ierusalimschy2023-09-082-15/+1
| | | | | | | | | | | | | | | Test is too non portable. (For instance, it does not work for different number types.)
| * | Avoid casts from unsigned long to floating-pointRoberto Ierusalimschy2023-09-081-7/+24
| | | | | | | | | | | | Old Microsoft compilers do not support those casts.
| * | Cannot use 'getshrstr' before setting 'shrlen'Roberto Ierusalimschy2023-08-251-1/+1
| | |
* | | Added suport for Fixed BuffersRoberto Ierusalimschy2023-09-0512-34/+160
| | | | | | | | | | | | | | | A fixed buffer keeps a binary chunk "forever", so that the program does not need to copy some of its parts when loading it.
* | | New macro 'getlstr'Roberto Ierusalimschy2023-08-305-22/+37
| | | | | | | | | | | | Accesses content and length of a 'TString'.
* | | Field 'Proto.is_vararg' uses only one bitRoberto Ierusalimschy2023-08-308-13/+20
| | | | | | | | | | | | So that the other bits can be used for other purposes.
* | | Opcode in dumps is stored properly alignedRoberto Ierusalimschy2023-08-252-1/+30
| | |
* | | Merge branch 'master' into nextversionRoberto Ierusalimschy2023-08-2322-88/+134
|\| |
| * | Documentation for "LUA_NOENV"Roberto Ierusalimschy2023-08-231-0/+4
| | | | | | | | | | | | | | | Registry field "LUA_NOENV" (that signals to libraries that option -E is on) now part of the "official" API of Lua stand-alone.
| * | Bug: Wrong line number for function callsRoberto Ierusalimschy2023-08-232-10/+10
| | |
| * | More disciplined use of 'getstr' and 'tsslen'Roberto Ierusalimschy2023-08-179-33/+37
| | | | | | | | | | | | | | | We may want to add other string variants in the future; this change documents better where the code may need to handle those variants.
| * | More control over encoding of test filesRoberto Ierusalimschy2023-08-176-28/+49
| | | | | | | | | | | | | | | The few UTF-8 test files are commented as such, and there is only one non UTF-8 test file (to test non UTF-8 sources).
| * | Bug: Call hook may be called twice when count hook yieldsRoberto Ierusalimschy2023-07-254-11/+27
| | | | | | | | | | | | | | | Took the opportunity and moved the code that controls call hooks in 'luaV_execute' into a function.
| * | Thread stacks resized in the atomic phaseRoberto Ierusalimschy2023-07-131-3/+5
| | | | | | | | | | | | | | | | | | | | | Although stack resize can be a little expensive, it seems unusual to have too many threads needing resize during one GC cycle. On the other hand, the change allows full collections to skip the propagate phase, going straight from a pause to the atomic phase.
| * | DetailsRoberto Ierusalimschy2023-07-032-3/+2
| | |
* | | Merge branch 'master' into nextversionRoberto Ierusalimschy2023-06-2233-205/+305
|\| |
| * | Removed redundancy in definitions of version/releaseRoberto Ierusalimschy2023-06-211-11/+21
| | | | | | | | | | | | String rendering now derived from the numeric original definitions.
| * | Avoid inclusion loop in 'ltm.h'Roberto Ierusalimschy2023-06-161-3/+2
| | |
| * | Bug: read overflow in 'l_strcmp'Roberto Ierusalimschy2023-06-141-18/+20
| | | | | | | | | | | | | | | Equality according to 'strcoll' does not imply that strings have the same length.
| * | Several functions turned 'static'Roberto Ierusalimschy2023-05-227-23/+18
| | | | | | | | | | | | | | | Several functions that were already being used only inside their own file have been declared as 'static'.
| * | Option '-l' discards version sufix from file nameRoberto Ierusalimschy2023-05-154-11/+26
| | | | | | | | | | | | | | | | | | Like 'require', the command-line option '-l' discards an optional version suffix (everything after an hyphen) from a file name when creating the module name.
| * | Small improvements in testsRoberto Ierusalimschy2023-05-152-21/+24
| | |
| * | DetailsRoberto Ierusalimschy2023-05-155-14/+14
| |/ | | | | | | | | - Better comments about short strings in opcodes. - luaH_newkey made static.
| * "Emergency" new version 5.4.6v5.4.6Roberto Ierusalimschy2023-05-025-22/+41
| | | | | | | | | | | | 'lua_resetthread' is back to its original signature, to avoid incompatibilities in the ABI between releases of the same version. New function 'lua_closethread' added with the "correct" signature.
| * Detailsv5.4.5Roberto Ierusalimschy2023-04-187-14/+14
| | | | | | | | Typos in comments and details in the manual.
| * New year (2023)Roberto Ierusalimschy2023-03-313-5/+4
| | | | | | | | | | Also, small tweak in makefile. (-Wsign-compare is already enabled by -Wextra.)
| * More orderliness in casts of enumerationsRoberto Ierusalimschy2023-03-272-27/+57
| |
| * More regularity in uses of enums in 'lcode.c'Roberto Ierusalimschy2023-03-241-18/+18
| |
| * Bug: Loading a corrupted binary file can segfaultRoberto Ierusalimschy2023-03-173-2/+22
| | | | | | | | | | The size of the list of upvalue names are stored separated from the size of the list of upvalues, but they share the same array.
| * DetailsRoberto Ierusalimschy2023-03-091-3/+17
| | | | | | | | Comments in 'onelua.c'
| * Corrected support for 16-bit systemsRoberto Ierusalimschy2023-03-093-10/+8
| | | | | | | | | | We still need access to a 16-bit system to correctly test these changes.
| * Bug: Wrong line in error message for arith. errorsRoberto Ierusalimschy2023-02-082-0/+12
| | | | | | | | | | It also causes 'L->top' to be wrong when the error happens, triggering an 'assert'.
| * Simpler definition for LUA_STRFTIMEOPTIONSRoberto Ierusalimschy2023-02-071-15/+6
| | | | | | | | There is no need for those intermediate definitions.