]>
git.ipfire.org Git - thirdparty/LuaJIT.git/log
Mike Pall [Mon, 20 Jul 2026 20:55:05 +0000 (22:55 +0200)]
Fix documentation about Lua 5.2 extensions/compatibility.
Reported by goodusername123. #1487
Mike Pall [Mon, 20 Jul 2026 08:23:09 +0000 (10:23 +0200)]
Document bit operator bytecode compatibility.
Mike Pall [Mon, 20 Jul 2026 08:20:49 +0000 (10:20 +0200)]
Backport some v3.0 syntax extensions.
Documentation in #1475. Backport discussion in #1476.
Thanks to Appla, slashOwO, Sergey Kaplun, CppCXY.
Mike Pall [Sat, 18 Jul 2026 07:48:48 +0000 (09:48 +0200)]
x64/LJ_GC64: Avoid store-to-load forwarding stall after stack restore.
Thanks to Sergey Kaplun. #1485
Mike Pall [Sat, 11 Jul 2026 12:41:15 +0000 (14:41 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Sat, 11 Jul 2026 12:37:49 +0000 (14:37 +0200)]
x64: Fix callback result handling.
Reported by Matt Gerassimoff.
Mike Pall [Fri, 10 Jul 2026 08:38:55 +0000 (10:38 +0200)]
DynASM/x86: Fix insertps instruction encoding.
Thanks to Dmitry Stogov. #1483
Mike Pall [Thu, 9 Jul 2026 08:24:06 +0000 (10:24 +0200)]
Don't use destroyed lock when profiler has been stopped.
Reported by Miku AuahDark. #1482 #1460
Mike Pall [Tue, 7 Jul 2026 09:07:19 +0000 (11:07 +0200)]
x64/ARM64/MIPS64: Fix constant bit shift code generation.
Reported by Sergey Kaplun. #1480
Mike Pall [Mon, 29 Jun 2026 09:40:02 +0000 (11:40 +0200)]
FFI/MacOS: Fix calling convention for on-stack varargs.
Thanks to Sergey Kaplun. #1455
Mike Pall [Thu, 25 Jun 2026 10:00:59 +0000 (12:00 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Thu, 25 Jun 2026 09:59:34 +0000 (11:59 +0200)]
Make check in os.time() consistent.
Thanks to Temir Galeev. #1470
Mike Pall [Wed, 24 Jun 2026 14:20:30 +0000 (16:20 +0200)]
iOS: Avoid macro name collision.
Reported by Andrey Filipenkov. #1477
Mike Pall [Tue, 16 Jun 2026 09:38:02 +0000 (11:38 +0200)]
Optionally return PC position in jit.util.tracesnap().
Suggested by Sergey Bronnikov. #1472
Mike Pall [Tue, 16 Jun 2026 09:13:38 +0000 (11:13 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Tue, 16 Jun 2026 09:12:21 +0000 (11:12 +0200)]
Fix stack overflow relimit handling.
Thanks to Sergey Kaplun. #1471
Mike Pall [Sat, 13 Jun 2026 09:00:59 +0000 (11:00 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Sat, 13 Jun 2026 08:59:29 +0000 (10:59 +0200)]
Fix corner case of os.time().
Thanks to Temir Galeev. #1470
Mike Pall [Fri, 29 May 2026 17:38:47 +0000 (19:38 +0200)]
FFI/MacOS: Fix calling convention for enums.
Thanks to Sergey Kaplun. #1455
Mike Pall [Sun, 24 May 2026 23:28:32 +0000 (01:28 +0200)]
Prevent sanitizer warnings for lj_tab_new*() and table.new().
Reported by Sergey Bronnikov. #1458
Mike Pall [Sun, 24 May 2026 23:28:03 +0000 (01:28 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Sun, 24 May 2026 23:26:26 +0000 (01:26 +0200)]
FFI: Prevent sanitizer warning in carith_ptr().
Reported by Sergey Bronnikov. #1459
Mike Pall [Sun, 24 May 2026 23:25:32 +0000 (01:25 +0200)]
Prevent sanitizer warning in os.time().
Reported by Sergey Bronnikov. #1454
Mike Pall [Sun, 24 May 2026 23:23:26 +0000 (01:23 +0200)]
Avoid race condition with profiler thread during dispatch table update.
Reported by artemking4. #1460
Mike Pall [Sun, 24 May 2026 23:18:53 +0000 (01:18 +0200)]
x86/x64: Change ipairs_aux to match JIT backend behavior.
Thanks to Sergey Kaplun. #1463
Mike Pall [Sun, 24 May 2026 23:15:29 +0000 (01:15 +0200)]
FFI: Various ABI and calling convention fixes.
Thanks to Sergey Kaplun. #1455
Mike Pall [Mon, 30 Mar 2026 18:43:18 +0000 (20:43 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Mon, 30 Mar 2026 18:41:59 +0000 (20:41 +0200)]
FFI: Shrink container of packed bitfield.
Reported by Huang Haiyang. #1451
Mike Pall [Fri, 27 Mar 2026 19:04:50 +0000 (20:04 +0100)]
Fix VM event error handling for finalizers.
Reported by Sergey Kaplun. #1445
Mike Pall [Fri, 27 Mar 2026 18:54:29 +0000 (19:54 +0100)]
Avoid use of subnormals for internal registry keys.
Non-ABI-compliant FPU modes (-ffast-math, -Ofast, FTZ/DAZ set) may
still cause erratic behavior and are not supported. #1448
Mike Pall [Fri, 27 Mar 2026 18:51:15 +0000 (19:51 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Fri, 27 Mar 2026 18:49:05 +0000 (19:49 +0100)]
Prevent false positive sanitizer warning in unpack().
Reported by Sergey Bronnikov. #1450
Mike Pall [Fri, 27 Mar 2026 18:47:27 +0000 (19:47 +0100)]
FFI: Fix pointer difference operation on 64 bit platforms.
Thanks to cuiweixie. #1449
Mike Pall [Wed, 4 Mar 2026 10:20:47 +0000 (11:20 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Wed, 4 Mar 2026 10:18:28 +0000 (11:18 +0100)]
Fix edge cases when recording string.byte/sub.
Thanks to Sergey Kaplun. #1443
Mike Pall [Thu, 26 Feb 2026 23:33:30 +0000 (00:33 +0100)]
Add ffi.abi("dualnum").
Thanks to Sergey Kaplun. #1442
Mike Pall [Tue, 24 Feb 2026 21:17:01 +0000 (22:17 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Tue, 24 Feb 2026 21:13:15 +0000 (22:13 +0100)]
FFI: Fix constructor index resolution in JIT compiler.
Reported by Vladimir Davydov and Sergey Kaplun. #1441
Mike Pall [Mon, 16 Feb 2026 17:00:33 +0000 (18:00 +0100)]
DUALNUM: Fix recording of loops broken by previous change.
Thanks to Nicholas Davies. #1432 #1433 #1438
Mike Pall [Fri, 13 Feb 2026 13:24:23 +0000 (14:24 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Fri, 13 Feb 2026 13:21:42 +0000 (14:21 +0100)]
Fix compiler warning.
Thanks to Holger Hoffstätte. #1436
Mike Pall [Wed, 11 Feb 2026 22:16:59 +0000 (23:16 +0100)]
Fix G->jit_base relocation on stack resize.
Reported by f32y. #1435
Mike Pall [Wed, 11 Feb 2026 22:14:13 +0000 (23:14 +0100)]
Prevent recording of loops with -0 step or NaN values.
Thanks to Sergey Kaplun. #1432 #1433
Mike Pall [Wed, 11 Feb 2026 22:12:53 +0000 (23:12 +0100)]
Avoid recording interference due to invocation of VM hooks.
Thanks to Sergey Kaplun. #1429 #1434
Mike Pall [Wed, 11 Feb 2026 22:09:57 +0000 (23:09 +0100)]
x64/!LJ_GC64: The allocation limit is required for a no-JIT build, too.
Thanks to Sergey Kaplun. #1430
Mike Pall [Wed, 11 Feb 2026 22:06:36 +0000 (23:06 +0100)]
MIPS64: Avoid unaligned load in lj_vm_exit_interp.
Thanks to Sergey Kaplun. #1428
Mike Pall [Wed, 11 Feb 2026 22:04:42 +0000 (23:04 +0100)]
Prevent snapshot purge while recording a function header.
Thanks to Sergey Kaplun. #1425
Mike Pall [Fri, 9 Jan 2026 17:46:32 +0000 (18:46 +0100)]
DUALNUM: Improve/fix edge cases of unary minus.
Thanks to Sergey Kaplun. #1422 #1418
Mike Pall [Fri, 9 Jan 2026 16:37:57 +0000 (17:37 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Fri, 9 Jan 2026 16:34:15 +0000 (17:34 +0100)]
Fix minilua undefined behavior in bit.tohex.
Note: this is not a vulnerability! 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 and does not trigger the
undefined behavior.
This change is solely for the benefit of others, who might possibly use
minilua for purposes other than running DynASM.
Reported by quart27219. #1424
Mike Pall [Fri, 9 Jan 2026 16:27:35 +0000 (17:27 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Fri, 9 Jan 2026 16:26:13 +0000 (17:26 +0100)]
Ignore PDB files for git.
Thanks to Michael Fisher. #1423
Mike Pall [Fri, 9 Jan 2026 16:25:02 +0000 (17:25 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Fri, 9 Jan 2026 16:18:03 +0000 (17:18 +0100)]
Bump copyright date.
Mike Pall [Mon, 8 Dec 2025 21:18:40 +0000 (22:18 +0100)]
Fix string.format for limited precision FP conversions.
Enforce round-to-even semantics. #1363
Mike Pall [Sat, 6 Dec 2025 07:44:03 +0000 (08:44 +0100)]
PPC: Fix soft-float lj_num2u64().
Reported by Doug Crawford. #1411
Mike Pall [Sat, 6 Dec 2025 07:42:18 +0000 (08:42 +0100)]
ARM64: More fixes for ARM BTI.
Reported by Yuichiro Naito. #1415
Mike Pall [Sat, 6 Dec 2025 07:39:11 +0000 (08:39 +0100)]
DUALNUM: Fix narrowing of unary minus.
Reported by Sergey Kaplun. #1418
Mike Pall [Sat, 6 Dec 2025 07:38:49 +0000 (08:38 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Sat, 6 Dec 2025 07:35:19 +0000 (08:35 +0100)]
DUALNUM: Add missing type conversion for FORI slots.
Reported by Sergey Kaplun. #1413
Mike Pall [Mon, 1 Dec 2025 12:50:32 +0000 (13:50 +0100)]
Remove pointless GCC/MSVC const function attributes.
They are only called from JIT-compiled code and not from C.
Reported by Richard Beckmann. #1414
Mike Pall [Thu, 27 Nov 2025 19:04:42 +0000 (20:04 +0100)]
Fix MSVC LJ_CONSTF declaration.
Reading MS docs is hard. #1412
Mike Pall [Thu, 27 Nov 2025 19:02:00 +0000 (20:02 +0100)]
Back out MSVC LJ_CONSTF declaration.
The reason for the error message is still unclear. #1412.
Mike Pall [Thu, 27 Nov 2025 16:48:44 +0000 (17:48 +0100)]
Remove compiler flag for FP conversions. Now unnecessary.
Undo #1355. #1397 #1411
Mike Pall [Thu, 27 Nov 2025 16:45:17 +0000 (17:45 +0100)]
Unify Lua number to FFI integer conversions.
Phew. #1411
Mike Pall [Thu, 27 Nov 2025 15:39:15 +0000 (16:39 +0100)]
ARM64: Fix disassembly of certain sub-word-size loads/stores.
Mike Pall [Sun, 16 Nov 2025 18:41:51 +0000 (19:41 +0100)]
ELF/Mach-O: Force default visibility for public API functions.
Thanks to Dymphna. #1409
Mike Pall [Sun, 16 Nov 2025 18:36:40 +0000 (19:36 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Sun, 16 Nov 2025 18:34:11 +0000 (19:34 +0100)]
x86/x64: Backport fix for math.min()/math.max() argument check.
Reported by puffy.
Mike Pall [Fri, 14 Nov 2025 19:22:24 +0000 (20:22 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Fri, 14 Nov 2025 19:15:44 +0000 (20:15 +0100)]
Fix edge cases when generating IR for string.byte/sub/find.
Contributed by XmiliaH. #1407
Mike Pall [Mon, 10 Nov 2025 17:18:19 +0000 (18:18 +0100)]
Merge branch 'master' into v2.1
Mike Pall [Mon, 10 Nov 2025 17:15:11 +0000 (18:15 +0100)]
FFI: Avoid dangling cts->L.
Reported by ZumiKua. #1405
Mike Pall [Mon, 10 Nov 2025 17:11:26 +0000 (18:11 +0100)]
Run VM events and finalizers in separate state.
Reported by Sergey Kaplun. #1403
Mike Pall [Sat, 8 Nov 2025 15:54:00 +0000 (16:54 +0100)]
macOS: Change Mach-O object file layout required by XCode 15.0.
Reported by George Zhao. #1404
Mike Pall [Sat, 8 Nov 2025 14:41:42 +0000 (15:41 +0100)]
ARM64: Enable unaligned accesses if indicated by the toolchain.
If you get a crash in jit_init() then you need to fix your toolchain.
Mike Pall [Wed, 5 Nov 2025 23:42:02 +0000 (00:42 +0100)]
Allow mcode allocations outside of the jump range to the support code.
Thank you for your patience. #285
Mike Pall [Wed, 5 Nov 2025 23:30:22 +0000 (00:30 +0100)]
ARM64: Fix disassembly of >2GB branch targets.
Mike Pall [Wed, 29 Oct 2025 08:38:41 +0000 (09:38 +0100)]
x64: Fix CET IBT.
Reported by Yuichiro Naito. #1400
Mike Pall [Wed, 29 Oct 2025 08:38:31 +0000 (09:38 +0100)]
ARM64: Fix ARM BTI.
Reported by Yuichiro Naito. #1400
Mike Pall [Tue, 28 Oct 2025 03:59:18 +0000 (04:59 +0100)]
Windows: Fix lua52compat option for msvcbuild.bat.
Thanks to Alex Orlenko. #1395 #1366
Mike Pall [Tue, 28 Oct 2025 03:46:10 +0000 (04:46 +0100)]
ARM64: Add support for ARM BTI.
Note: this is not enabled by default, look for CET in lj_arch.h.
Thanks to Yuichiro Naito. #1398
Mike Pall [Mon, 27 Oct 2025 23:27:15 +0000 (00:27 +0100)]
x64: Various fixes for CET IBT.
Also add ELF notes. #1391
Mike Pall [Thu, 16 Oct 2025 12:24:52 +0000 (14:24 +0200)]
x64: Add support for CET IBT.
Note: this is not enabled by default, look for CET in lj_arch.h
Contributed by Yuichiro Naito. #1391
Mike Pall [Thu, 16 Oct 2025 11:23:51 +0000 (13:23 +0200)]
Gracefully handle broken custom allocator.
Reported by Alex Orlenko. #1393
Mike Pall [Thu, 16 Oct 2025 11:17:45 +0000 (13:17 +0200)]
Add GNU/Hurd build support.
Note: this is not an officially supported target.
Contributed by Pino Toscano and Samuel Thibault. #1383 #1384
Mike Pall [Thu, 16 Oct 2025 11:13:51 +0000 (13:13 +0200)]
Fix io.write() of newly created buffer.
Reported by vfprintf. #1386
Mike Pall [Thu, 16 Oct 2025 11:11:02 +0000 (13:11 +0200)]
Fix reporting of an error during error handling.
Reported by Sergey Kaplun. #1381
Mike Pall [Thu, 24 Jul 2025 13:45:24 +0000 (15:45 +0200)]
Windows: Add lua52compat option to msvcbuild.bat.
Thanks to Gil Reis. #1366
Mike Pall [Thu, 24 Jul 2025 13:41:35 +0000 (15:41 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Thu, 24 Jul 2025 13:38:45 +0000 (15:38 +0200)]
x86/x64: Don't use undefined MUL/IMUL zero flag.
Reported by VrIgHtEr. #1376
Mike Pall [Thu, 24 Jul 2025 13:35:56 +0000 (15:35 +0200)]
Avoid out-of-range PC for stack overflow error from snapshot restore.
Reported by Sergey Kaplun. #1369
Mike Pall [Thu, 24 Jul 2025 13:29:54 +0000 (15:29 +0200)]
FFI: Fix dangling CType references (again).
Reported by Sergey Kaplun. Collateral of #1360
Mike Pall [Wed, 28 May 2025 19:14:47 +0000 (21:14 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Wed, 28 May 2025 19:13:17 +0000 (21:13 +0200)]
Fix JIT slot overflow during up-recursion.
Reported by Sergey Kaplun. #1358
Mike Pall [Wed, 28 May 2025 19:06:44 +0000 (21:06 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Wed, 28 May 2025 19:02:31 +0000 (21:02 +0200)]
Avoid out-of-range PC for stack overflow error from snapshot restore.
Reported by Sergey Kaplun. #1359
Mike Pall [Wed, 28 May 2025 18:39:05 +0000 (20:39 +0200)]
Merge branch 'master' into v2.1
Mike Pall [Wed, 28 May 2025 18:36:24 +0000 (20:36 +0200)]
FFI: Fix dangling CType references.
Reported by Sergey Kaplun. Collateral of #1360
Mike Pall [Thu, 10 Apr 2025 20:53:50 +0000 (22:53 +0200)]
Prevent Clang UB 'optimization' which breaks integerness checks.
Thanks to Kacper Michajłow. #1351 #1355