Mike Pall
f5affaa6c4
FFI: Turn FFI finalizer table into a proper GC root.
...
Reported by Sergey Bronnikov. #1168
2024-04-19 01:33:19 +02:00
Mike Pall
0d313b2431
Merge branch 'master' into v2.1
2024-02-04 16:47:14 +01:00
Mike Pall
defe61a567
Rework stack overflow handling.
...
Reported by pwnhacker0x18. Fixed by Peter Cawley. #1152
2024-02-04 16:34:30 +01:00
Mike Pall
07b3cd3cf9
Check for upvalue state transition in IR_UREFO.
...
Thanks to Peter Cawley. #1085
2023-11-05 16:34:46 +01:00
Mike Pall
234dbc481e
Merge branch 'master' into v2.1
2023-09-21 04:44:37 +02:00
Mike Pall
aa6b15c1a8
Follow-up fix for stack overflow handling cleanup.
2023-09-21 04:43:40 +02:00
Mike Pall
a5d2f70c73
Handle OOM error on stack resize in coroutine.resume and lua_checkstack.
...
Thanks to Peter Cawley. #1066
2023-09-21 04:40:48 +02:00
Mike Pall
4b605a7da8
Merge branch 'master' into v2.1
2023-09-21 02:23:25 +02:00
Mike Pall
d2f6c55b05
Cleanup stack overflow handling.
...
Reported by Peter Cawley. #962
2023-09-21 01:58:43 +02:00
Mike Pall
ef587afb2c
Merge branch 'master' into v2.1
2023-08-20 21:33:37 +02:00
Mike Pall
158a284cc9
Bump copyright date.
2023-08-20 21:25:30 +02:00
Mike Pall
505e2c03de
Merge branch 'master' into v2.1
2023-02-21 17:07:37 +01:00
Mike Pall
8135de2a02
Improve error reporting on stack overflow.
...
Thanks to Nicolas Lebedenco.
2023-02-21 17:05:12 +01:00
Mike Pall
7306ba78d6
Merge branch 'master' into v2.1
2022-01-15 19:42:30 +01:00
Mike Pall
c4dfb625ba
Bump copyright date.
2022-01-15 19:30:54 +01:00
Mike Pall
a32aeadc68
Handle on-trace OOM errors from helper functions.
2021-03-23 00:39:50 +01:00
Mike Pall
1e66d0f9e6
Merge branch 'master' into v2.1
2021-01-02 21:56:07 +01:00
Mike Pall
f47c864b01
Bump copyright date.
2021-01-02 21:49:41 +01:00
Mike Pall
e9af1abec5
Add support for full-range 64 bit lightuserdata.
2020-09-30 01:34:49 +02:00
Mike Pall
ff34b48ddd
Redesign and harden string interning.
...
Up to 40% faster on hash-intensive benchmarks.
With some ideas from Sokolov Yura.
2020-06-23 03:06:45 +02:00
Mike Pall
a44f53acf5
Use a securely seeded global PRNG for the VM.
...
It's not 2005 anymore.
2020-06-15 12:21:05 +02:00
Mike Pall
8ae5170cdc
Improve assertions.
2020-06-15 02:52:00 +02:00
Mike Pall
87b111f0fe
Merge branch 'master' into v2.1
2020-01-20 23:34:21 +01:00
Mike Pall
38a5ed4b43
Bump copyright date.
2020-01-20 23:26:51 +01:00
Mike Pall
9c685f7003
Refactor with LUA_OK.
...
Contributed by François Perrad.
2017-04-07 12:12:03 +02:00
Mike Pall
71ff7ef8a7
Merge branch 'master' into v2.1
2017-01-17 12:41:05 +01:00
Mike Pall
b93a1dd0c8
Bump copyright date to 2017.
2017-01-17 12:35:03 +01:00
Mike Pall
58ca165737
LJ_GC64: Allow optional use of the system memory allocator.
2016-06-03 06:52:53 +02:00
Mike Pall
f4231949b5
Merge branch 'master' into v2.1
2016-03-03 12:11:37 +01:00
Mike Pall
db1b399af1
Bump copyright date to 2016.
2016-03-03 12:02:22 +01:00
Mike Pall
0a5045c34e
Merge branch 'master' into v2.1
2015-01-06 00:12:45 +01:00
Mike Pall
86913b9bbf
Bump copyright date to 2015.
2015-01-05 23:59:31 +01:00
Mike Pall
cb481ddc8f
Add LJ_GC64 mode: 64 bit GC object references.
...
Actually NaN tagging with 47 bit pointers and 13+4 bit tags.
2015-01-03 15:23:58 +01:00
Mike Pall
054e6abe37
Add LJ_FR2 mode: Two-slot frame info.
2015-01-03 15:04:38 +01:00
Mike Pall
6e9145a882
Cleanup of memory vs. GC sizes. No functional changes.
2014-12-20 00:17:50 +01:00
Mike Pall
c8d1aff0ba
Merge branch 'master' into v2.1
2014-04-22 11:29:05 +02:00
Mike Pall
f3374b5266
x64: Allow building with LUAJIT_USE_SYSMALLOC and LUAJIT_USE_VALGRIND.
...
Valgrind 3.9 killed MAP_32BIT support. Ugh. So now we have to rely on
undocumented behavior where Valgrind always allocates from the bottom
of memory. Alas, such a binary won't run properly without Valgrind.
2014-04-21 22:26:46 +02:00
Mike Pall
a9d4543601
Merge branch 'master' into v2.1
2014-01-16 23:18:34 +01:00
Mike Pall
ef59e54820
Bump copyright date to 2014.
2014-01-16 23:10:16 +01:00
Mike Pall
4dce22c40d
Add low-overhead profiler. Part 1: interpreter, low-level C API.
2013-09-02 01:49:19 +02:00
Mike Pall
517500ba48
Save currently executing lua_State in g->cur_L.
...
This is only a good approximation due to deficiencies in the design of
the Lua/C API. It indicates _some_ valid state that is/was executing.
Also reorder L->cframe stores to achieve a synchronously consistent state.
2013-08-30 23:38:17 +02:00
Mike Pall
5120240b77
Use g->jit_base for on/off-trace detection.
2013-08-26 18:28:58 +02:00
Mike Pall
9ec869b362
String buffer refactoring, part 4.
...
Add lua_State pointer to SBuf for buffer resizing.
2013-02-28 13:43:37 +01:00
Mike Pall
28cfcf7744
String buffer refactoring, part 1.
...
Move string buffer handling to lj_buf.*.
Use common buffer resizing function.
2013-02-27 17:29:35 +01:00
Mike Pall
4a44c4ff69
Bump copyright date to 2013.
2013-02-11 12:54:48 +01:00
Mike Pall
58622937c0
Fix userdata __gc separations at state close.
2012-06-10 23:40:53 +02:00
Mike Pall
44876ec99f
Limit number of userdata __gc separations at state close.
2012-04-11 15:15:50 +02:00
Mike Pall
e14b6346b4
Ensure running __gc of userdata created in __gc at state close.
2012-04-11 12:08:09 +02:00
Mike Pall
8ae38dc519
FFI: Finalize cdata before userdata when closing the state.
2012-03-05 15:05:28 +01:00
Mike Pall
10ef109eef
Bump copyright date to 2012.
2012-01-23 22:42:42 +01:00