Commit Graph

1783 Commits

Author SHA1 Message Date
Mike Pall
1811c4b0f1 Windows/x64: Document MSVC flags for C++ exception interoperability.
Suggested by Julien Cugnière.
2021-09-24 12:10:44 +02:00
Mike Pall
204cee2c91 Fix stack allocation after on-trace stack check. 2021-09-21 16:42:35 +02:00
Mike Pall
68ffbd318b FFI: Don't load PC from non-function object in FFI continuation.
Reported by Yichun Zhang. #743
2021-09-20 14:36:52 +02:00
Mike Pall
a622e2eb55 FFI: Fix missing cts->L initialization in argv2ctype(). 2021-09-20 14:34:47 +02:00
Mike Pall
3a654999c6 Consider slots used by upvalues in use-def analysis.
Reported by XmiliaH.
2021-07-27 14:47:41 +02:00
Mike Pall
0e66fc9637 Prevent loop in snap_usedef().
Reported by XmiliaH.
2021-07-23 21:33:59 +02:00
Mike Pall
d87da3d5fe Fix io.close() error message.
Reported by François Perrad.
2021-07-22 16:21:45 +02:00
Mike Pall
8430f774e6 Fix io.close().
Reported by farmboy0.
2021-07-22 02:33:04 +02:00
Mike Pall
81a797373f Fix minilua vararg stack handling.
Note: this is not exploitable! minilua is only used during the LuaJIT
build process. It only runs controlled and static Lua code (DynASM),
which is entirely contained within this repo. LuaJIT itself has
completely different stack handling code and is not affected either.

This change is solely for the benefit of others, who might possibly use
minilua for purposes other than running DynASM.
2021-07-21 12:14:09 +02:00
Mike Pall
6ca580155b Avoid out-of-range number of results when compiling select(k, ...).
The interpreter will throw and abort the trace, anyway.
2021-07-19 17:03:16 +02:00
Mike Pall
44bd7437a2 Fix jit.dump() output for IR_CONV. 2021-07-19 16:05:05 +02:00
Mike Pall
98f95f6918 DynASM/x86: Add missing escape in pattern. 2021-06-08 22:34:22 +02:00
Mike Pall
ec5f6a5618 Fix HTML. 2021-06-07 12:05:34 +02:00
Mike Pall
ae533e3a6c FFI: Fix dangling reference to CType. 2021-06-01 00:26:45 +02:00
Mike Pall
c2cfa04231 PPC/PS3: Fix BC_ADD*/BC_SUB*.
Thanks to MaryWan1982.
2021-05-29 15:33:08 +02:00
Mike Pall
0e53a314d7 Fix use-def analysis for vararg functions.
Reported by Shmuel Zeigerman.
2021-05-29 15:31:13 +02:00
Mike Pall
2801500a26 Fix use-def analysis for BC_VARG.
Reported by Ryan Lucia.
2021-05-24 22:25:26 +02:00
Mike Pall
44684fa71d Fix compiler warnings. 2021-05-17 19:42:06 +02:00
Mike Pall
431e81cdff Add FAQ about table iteration order. 2021-04-25 17:44:03 +02:00
Mike Pall
33e3f4badf Detect inconsistent renames even in the presence of sunk values.
Reported by Igor Munkin.
2021-03-23 00:43:07 +01:00
Mike Pall
5ccfe94f4e Remove specific version numbers from the docs. 2021-03-11 15:32:28 +01:00
Mike Pall
9b000309cc Clarify macOS build instructions. 2021-01-12 12:59:54 +01:00
Mike Pall
f47c864b01 Bump copyright date. 2021-01-02 21:49:41 +01:00
Mike Pall
ee855749a1 Documentation cleanup. 2021-01-02 21:17:01 +01:00
Mike Pall
56c04accf9 FFI: Fix recording of union initialization.
Thanks to Alex Shpilkin.
2020-12-28 12:37:36 +01:00
Mike Pall
d67ff15a5c x64: Fix __call metamethod return dispatch.
Reported by Igor Munkin.
2020-12-04 11:16:55 +01:00
Mike Pall
7aa3e313a3 Fix warning. 2020-11-30 15:46:07 +01:00
Mike Pall
050466552b Minor changes and https-ify links. 2020-10-12 16:11:32 +02:00
Mike Pall
5c46f47736 Fix snapshot PC when linking to BC_JLOOP that was a BC_RET*.
Reported by Arseny Vakhrushev.
Fix contributed by Peter Cawley.
2020-10-12 15:45:05 +02:00
Mike Pall
de6b1a11dd Ensure full init of IR_NOP instructions. 2020-10-12 15:40:28 +02:00
Mike Pall
e8ec6fe996 Prevent patching of the GC exit check branch.
Reported by Arseny Vakhrushev.
2020-09-27 16:44:13 +02:00
Mike Pall
881d02d311 Mark CONV as non-weak, to prevent elimination of its side-effect.
An unused guarded CONV int.num cannot be omitted in general.
2020-09-22 11:56:06 +02:00
Mike Pall
412d5a4039 DynASM/x86: Fix VREG support. 2020-09-12 17:32:30 +02:00
Mike Pall
90e65514dd Limit path length passed to C library loader. 2020-09-05 20:02:54 +02:00
Mike Pall
e296f56b82 Call error function on rethrow after trace exit. 2020-08-09 22:50:31 +02:00
Mike Pall
12ab596997 Fix handling of errors during snapshot restore. 2020-08-09 18:08:38 +02:00
Mike Pall
2211f6f960 ARM: Ensure relative GG_State element alignment differently.
Thanks to jojo59516 and dwing4g.
2020-08-05 15:21:00 +02:00
Mike Pall
c4b1e0feae Fix Makefile dependencies.
Thanks to Stefanos Chaliasos.
2020-08-05 14:14:58 +02:00
Mike Pall
7eb96843ff Add FAQ about sandboxing. Minor fixes. 2020-07-12 15:09:55 +02:00
Mike Pall
53f82e6e2e Fix frame traversal for __gc handler frames.
Reported by Changochen.
2020-07-12 14:30:34 +02:00
Mike Pall
f5b0fff5a9 Fix debug.debug() for non-string errors. 2020-06-07 14:34:09 +02:00
Mike Pall
2f3f07882f Fix bytecode register allocation for comparisons. 2020-05-22 03:28:52 +02:00
Mike Pall
cc4bbec483 FFI: Always fall back to metamethods for cdata length/concat.
Thanks to Egor Skriptunoff.
2020-05-08 13:50:41 +02:00
Mike Pall
179cf2eb84 Fix overflow check in unpack().
Thanks to HybridDog.
2020-04-28 17:52:28 +02:00
Mike Pall
db0b7ec194 Fix Windows make clean. 2020-04-28 16:52:28 +02:00
Mike Pall
e613105ca9 Fix write barrier for lua_setupvalue() and debug.setupvalue(). 2020-03-20 13:35:49 +01:00
Mike Pall
522d2073da x86/x64: Fix loop realignment. 2020-02-02 18:19:44 +01:00
Mike Pall
bd907032e3 Documentation cleanup. 2020-01-26 15:37:33 +01:00
Mike Pall
18c9cf7d37 Fix POSIX install with missing or incompatible ldconfig. 2020-01-25 17:37:12 +01:00
Mike Pall
62903bacf4 Fix C file generation in jit.bcsave.
Thanks to codicodi.
2020-01-22 02:37:21 +01:00