]> git.ipfire.org Git - thirdparty/LuaJIT.git/log
thirdparty/LuaJIT.git
11 months agoARM64: Use ldr literal to load FP constants.
Mike Pall [Wed, 21 Aug 2024 09:31:29 +0000 (11:31 +0200)] 
ARM64: Use ldr literal to load FP constants.

Thanks to Peter Cawley. #1255

11 months agoFFI: Add missing coercion when recording 64-bit bit.*().
Mike Pall [Tue, 20 Aug 2024 17:13:59 +0000 (19:13 +0200)] 
FFI: Add missing coercion when recording 64-bit bit.*().

Thanks to Peter Cawley. #1252

11 months agoARM64: Make tobit conversions match JIT backend behavior.
Mike Pall [Tue, 20 Aug 2024 17:01:51 +0000 (19:01 +0200)] 
ARM64: Make tobit conversions match JIT backend behavior.

Thanks to Peter Cawley. #1253

11 months agoMerge branch 'master' into v2.1
Mike Pall [Tue, 20 Aug 2024 17:01:38 +0000 (19:01 +0200)] 
Merge branch 'master' into v2.1

11 months agoARM: Make hard-float tobit conversions match JIT backend behavior.
Mike Pall [Tue, 20 Aug 2024 17:00:47 +0000 (19:00 +0200)] 
ARM: Make hard-float tobit conversions match JIT backend behavior.

Reported by Peter Cawley. #1253

11 months agoFFI: Drop finalizer table rehash after GC cycle.
Mike Pall [Mon, 19 Aug 2024 18:00:21 +0000 (20:00 +0200)] 
FFI: Drop finalizer table rehash after GC cycle.

Reported by Sergey Kaplun. #1247

11 months agoMerge branch 'master' into v2.1
Mike Pall [Mon, 19 Aug 2024 15:33:23 +0000 (17:33 +0200)] 
Merge branch 'master' into v2.1

11 months agoFix another potential file descriptor leak in luaL_loadfile*().
Mike Pall [Mon, 19 Aug 2024 15:31:15 +0000 (17:31 +0200)] 
Fix another potential file descriptor leak in luaL_loadfile*().

Reported by Peter Cawley. #1249

11 months agoMerge branch 'master' into v2.1
Mike Pall [Mon, 19 Aug 2024 14:22:55 +0000 (16:22 +0200)] 
Merge branch 'master' into v2.1

11 months agoMIPS32: Fix little-endian IR_RETF.
Mike Pall [Mon, 19 Aug 2024 14:17:44 +0000 (16:17 +0200)] 
MIPS32: Fix little-endian IR_RETF.

Thanks to Peter Cawley. #1250

11 months agoCorrectly close VM state after early OOM during open.
Mike Pall [Mon, 19 Aug 2024 14:14:55 +0000 (16:14 +0200)] 
Correctly close VM state after early OOM during open.

Reported by Assumeru. #1248

11 months agoFix potential file descriptor leak in luaL_loadfile*().
Mike Pall [Mon, 19 Aug 2024 14:11:36 +0000 (16:11 +0200)] 
Fix potential file descriptor leak in luaL_loadfile*().

Reported by Assumeru. #1249

11 months agoReflect override of INSTALL_LJLIBD in package.path.
Mike Pall [Wed, 14 Aug 2024 22:38:43 +0000 (00:38 +0200)] 
Reflect override of INSTALL_LJLIBD in package.path.

Suggested by GitSparTV. #1239

11 months agoARM64: Use movi to materialize FP constants.
Mike Pall [Wed, 14 Aug 2024 22:22:47 +0000 (00:22 +0200)] 
ARM64: Use movi to materialize FP constants.

Thanks to Peter Cawley. #1245

11 months agoAdd more FOLD rules for integer conversions.
Mike Pall [Wed, 14 Aug 2024 22:20:54 +0000 (00:20 +0200)] 
Add more FOLD rules for integer conversions.

Thanks to Peter Cawley. #1246

11 months agoMerge branch 'master' into v2.1
Mike Pall [Wed, 14 Aug 2024 22:19:35 +0000 (00:19 +0200)] 
Merge branch 'master' into v2.1

11 months agoDifferent fix for partial snapshot restore due to stack overflow.
Mike Pall [Wed, 14 Aug 2024 22:17:19 +0000 (00:17 +0200)] 
Different fix for partial snapshot restore due to stack overflow.

Reported by Junlong Li. Fixed by Peter Cawley. #1196

11 months agoFix IR_ABC hoisting.
Mike Pall [Wed, 14 Aug 2024 22:10:01 +0000 (00:10 +0200)] 
Fix IR_ABC hoisting.

Reported by pwnhacker0x18. Fixed by Peter Cawley. #1194

11 months agoLimit CSE for IR_CARG to fix loop optimizations.
Mike Pall [Wed, 14 Aug 2024 22:07:34 +0000 (00:07 +0200)] 
Limit CSE for IR_CARG to fix loop optimizations.

Thanks to Peter Cawley. #1244

13 months agoCall math.randomseed() without arguments to seed from system entropy.
Mike Pall [Wed, 3 Jul 2024 23:26:29 +0000 (01:26 +0200)] 
Call math.randomseed() without arguments to seed from system entropy.

Reminder: the math.random() PRNG is NOT SUITABLE FOR CRYPTOGRAPHIC USE.

13 months agoRestore state when recording __concat metamethod throws an error.
Mike Pall [Wed, 3 Jul 2024 22:48:49 +0000 (00:48 +0200)] 
Restore state when recording __concat metamethod throws an error.

Thanks to Sergey Kaplun. #1234

13 months agoAdd build flag LUAJIT_DISABLE_TAILCALL to disable tailcall generation.
Mike Pall [Wed, 3 Jul 2024 22:13:58 +0000 (00:13 +0200)] 
Add build flag LUAJIT_DISABLE_TAILCALL to disable tailcall generation.

Only use this for debugging purposes. NEVER set it for regular builds
or distro builds! In Lua, tailcalls are a language guarantee.
Suggested by Steve Vermeulen. #1220

13 months agoClarify that lj_buf_shrink() does not keep any buffer data.
Mike Pall [Wed, 3 Jul 2024 22:03:40 +0000 (00:03 +0200)] 
Clarify that lj_buf_shrink() does not keep any buffer data.

https://www.freelists.org/post/luajit/lj-buf-shrink-may-truncate-the-data-and-sbw-point-over-the-end-of-the-buffer,1
Thanks to Junlong li.

13 months agoOSX: Fix installed luajit.pc.
Mike Pall [Wed, 3 Jul 2024 21:59:59 +0000 (23:59 +0200)] 
OSX: Fix installed luajit.pc.

Reported by leleliu008. #1221

13 months agoMerge branch 'master' into v2.1
Mike Pall [Wed, 3 Jul 2024 21:59:03 +0000 (23:59 +0200)] 
Merge branch 'master' into v2.1

13 months agoFFI: Fix various issues in recff_cdata_arith.
Mike Pall [Wed, 3 Jul 2024 21:46:47 +0000 (23:46 +0200)] 
FFI: Fix various issues in recff_cdata_arith.

Thanks to Sergey Kaplun. #1224

13 months agoFix predict_next() in parser (for real now).
Mike Pall [Wed, 3 Jul 2024 21:45:16 +0000 (23:45 +0200)] 
Fix predict_next() in parser (for real now).

Reported by Sergey Kaplun. #1226 #1054

13 months agoFFI: Fix __tostring metamethod access to enum cdata value.
Mike Pall [Wed, 3 Jul 2024 21:43:57 +0000 (23:43 +0200)] 
FFI: Fix __tostring metamethod access to enum cdata value.

Thanks to Sergey Kaplun. #1232

13 months agoFix typo.
Mike Pall [Wed, 3 Jul 2024 21:43:29 +0000 (23:43 +0200)] 
Fix typo.

Reported by Sergey Bronnikov. #1223

13 months agoMerge branch 'master' into v2.1
Mike Pall [Wed, 3 Jul 2024 21:42:38 +0000 (23:42 +0200)] 
Merge branch 'master' into v2.1

13 months agoHandle partial snapshot restore due to stack overflow.
Mike Pall [Wed, 3 Jul 2024 19:42:21 +0000 (21:42 +0200)] 
Handle partial snapshot restore due to stack overflow.

Reported by pwnhacker0x18. Fixed by Peter Cawley. #1196

14 months agoUpdate Nintendo Switch build script.
Mike Pall [Sat, 25 May 2024 17:01:18 +0000 (19:01 +0200)] 
Update Nintendo Switch build script.

Thanks to IoriBranford. #1214

14 months agoMerge branch 'master' into v2.1
Mike Pall [Sat, 25 May 2024 14:41:53 +0000 (16:41 +0200)] 
Merge branch 'master' into v2.1

14 months agoPrevent sanitizer warning in snap_restoredata().
Mike Pall [Sat, 25 May 2024 14:38:05 +0000 (16:38 +0200)] 
Prevent sanitizer warning in snap_restoredata().

Thanks to Sergey Kaplun. #1193

14 months agoTypo.
Mike Pall [Sat, 25 May 2024 14:25:35 +0000 (16:25 +0200)] 
Typo.

14 months agoLimit number of string format elements to compile.
Mike Pall [Sat, 25 May 2024 14:22:39 +0000 (16:22 +0200)] 
Limit number of string format elements to compile.

Reported by pwnhacker0x18. #1203

14 months agoFFI: Clarify scalar boxing behavior.
Mike Pall [Sat, 25 May 2024 13:48:07 +0000 (15:48 +0200)] 
FFI: Clarify scalar boxing behavior.

Prevent misunderstandings like in #1216

14 months agoFix internal link in docs.
Mike Pall [Sat, 25 May 2024 12:56:15 +0000 (14:56 +0200)] 
Fix internal link in docs.

Thanks to GitSparTV. #1219

15 months agoOSX/iOS: Fix SDK incompatibility.
Mike Pall [Mon, 22 Apr 2024 08:06:42 +0000 (10:06 +0200)] 
OSX/iOS: Fix SDK incompatibility.

Thanks to Ryan Carsten Schmidt. #1189

15 months agoWindows/MSVC: Cleanup msvcbuild.bat and always generate PDB.
Mike Pall [Fri, 19 Apr 2024 09:01:13 +0000 (11:01 +0200)] 
Windows/MSVC: Cleanup msvcbuild.bat and always generate PDB.

Thanks to Miku AuahDark. #1127

15 months agoMerge branch 'master' into v2.1
Mike Pall [Thu, 18 Apr 2024 23:47:48 +0000 (01:47 +0200)] 
Merge branch 'master' into v2.1

15 months agoFix segment release check in internal memory allocator.
Mike Pall [Thu, 18 Apr 2024 23:44:19 +0000 (01:44 +0200)] 
Fix segment release check in internal memory allocator.

Thanks to Jinji Zeng. #1179 #1157

15 months agoFix compiler warning.
Mike Pall [Thu, 18 Apr 2024 23:41:12 +0000 (01:41 +0200)] 
Fix compiler warning.

15 months agoFFI: Turn FFI finalizer table into a proper GC root.
Mike Pall [Thu, 18 Apr 2024 23:33:19 +0000 (01:33 +0200)] 
FFI: Turn FFI finalizer table into a proper GC root.

Reported by Sergey Bronnikov. #1168

15 months agoOSX/iOS: Always generate 64 bit non-FAT Mach-O object files.
Mike Pall [Thu, 18 Apr 2024 22:31:06 +0000 (00:31 +0200)] 
OSX/iOS: Always generate 64 bit non-FAT Mach-O object files.

Reported by Sergey Bronnikov. #1181

15 months agoShow name of NYI bytecode in -jv and -jdump.
Mike Pall [Thu, 18 Apr 2024 22:12:22 +0000 (00:12 +0200)] 
Show name of NYI bytecode in -jv and -jdump.

Suggested by Sergey Kaplun. #1176 #567

15 months agoUse generic trace error for OOM during trace stitching.
Mike Pall [Thu, 18 Apr 2024 21:57:53 +0000 (23:57 +0200)] 
Use generic trace error for OOM during trace stitching.

Thanks to Sergey Kaplun. #1166

15 months agoFix serialization format docs.
Mike Pall [Thu, 18 Apr 2024 21:49:43 +0000 (23:49 +0200)] 
Fix serialization format docs.

Reported by nounwind.

17 months agoHandle all types of errors during trace stitching.
Mike Pall [Sun, 10 Mar 2024 16:29:48 +0000 (17:29 +0100)] 
Handle all types of errors during trace stitching.

Thanks to Sergey Kaplun and Peter Cawley. #1166 #720

17 months agoFix recording of __concat metamethod.
Mike Pall [Sun, 10 Mar 2024 16:26:36 +0000 (17:26 +0100)] 
Fix recording of __concat metamethod.

Thanks to Sergey Kaplun. #1164

17 months agoMerge branch 'master' into v2.1
Mike Pall [Sun, 10 Mar 2024 16:26:03 +0000 (17:26 +0100)] 
Merge branch 'master' into v2.1

17 months agoPrevent down-recursion for side traces.
Mike Pall [Sun, 10 Mar 2024 16:23:21 +0000 (17:23 +0100)] 
Prevent down-recursion for side traces.

Thanks to Sergey Kaplun. #1169

17 months agoCheck frame size limit before returning to a lower frame.
Mike Pall [Sun, 10 Mar 2024 16:19:29 +0000 (17:19 +0100)] 
Check frame size limit before returning to a lower frame.

Thanks to Sergey Kaplun. #1173

17 months agoFFI: Treat cdata finalizer table as a GC root.
Mike Pall [Sun, 10 Mar 2024 16:16:41 +0000 (17:16 +0100)] 
FFI: Treat cdata finalizer table as a GC root.

Thanks to Sergey Bronnikov. #1168

17 months agoHandle stack reallocation in debug.setmetatable() and lua_setmetatable().
Mike Pall [Sun, 10 Mar 2024 16:13:28 +0000 (17:13 +0100)] 
Handle stack reallocation in debug.setmetatable() and lua_setmetatable().

Thanks to Sergey Kaplun. #1172

18 months agoMerge branch 'master' into v2.1
Mike Pall [Sun, 4 Feb 2024 15:47:14 +0000 (16:47 +0100)] 
Merge branch 'master' into v2.1

18 months agoRework stack overflow handling.
Mike Pall [Sun, 4 Feb 2024 15:34:30 +0000 (16:34 +0100)] 
Rework stack overflow handling.

Reported by pwnhacker0x18. Fixed by Peter Cawley. #1152

18 months agoMerge branch 'master' into v2.1
Mike Pall [Wed, 31 Jan 2024 13:39:50 +0000 (14:39 +0100)] 
Merge branch 'master' into v2.1

18 months agoPreserve keys with dynamic values in template tables when saving bytecode.
Mike Pall [Wed, 31 Jan 2024 13:32:04 +0000 (14:32 +0100)] 
Preserve keys with dynamic values in template tables when saving bytecode.

Reported by Lyrthras. Fixed by Peter Cawley. #1155

18 months agoMerge branch 'master' into v2.1
Mike Pall [Wed, 31 Jan 2024 13:31:40 +0000 (14:31 +0100)] 
Merge branch 'master' into v2.1

18 months agoPrevent include of luajit_rolling.h.
Mike Pall [Wed, 31 Jan 2024 13:29:23 +0000 (14:29 +0100)] 
Prevent include of luajit_rolling.h.

Thanks to Peter Cawley. #1145

18 months agoMerge branch 'master' into v2.1
Mike Pall [Fri, 26 Jan 2024 22:18:02 +0000 (23:18 +0100)] 
Merge branch 'master' into v2.1

18 months agoFix documentation bug about '\z' string escape.
Mike Pall [Fri, 26 Jan 2024 22:17:33 +0000 (23:17 +0100)] 
Fix documentation bug about '\z' string escape.

18 months agoFix zero stripping in %g number formatting.
Mike Pall [Thu, 25 Jan 2024 12:23:48 +0000 (13:23 +0100)] 
Fix zero stripping in %g number formatting.

Reported by pwnhacker0x18. #1149

18 months agoMerge branch 'master' into v2.1
Mike Pall [Tue, 23 Jan 2024 18:01:46 +0000 (19:01 +0100)] 
Merge branch 'master' into v2.1

18 months agoFix unsinking of IR_FSTORE for NULL metatable.
Mike Pall [Tue, 23 Jan 2024 17:58:52 +0000 (18:58 +0100)] 
Fix unsinking of IR_FSTORE for NULL metatable.

Reported by pwnhacker0x18. #1147

18 months agoDynASM/x86: Add endbr instruction.
Mike Pall [Mon, 22 Jan 2024 18:17:45 +0000 (19:17 +0100)] 
DynASM/x86: Add endbr instruction.

Thanks to Dmitry Stogov. #1143 #1142

18 months agoMIPS64 R2/R6: Fix FP to integer conversions.
Mike Pall [Mon, 22 Jan 2024 18:12:13 +0000 (19:12 +0100)] 
MIPS64 R2/R6: Fix FP to integer conversions.

Thanks to Peter Cawley. #1146

18 months agoAdd cross-32/64 bit and deterministic bytecode generation.
Mike Pall [Mon, 22 Jan 2024 18:06:36 +0000 (19:06 +0100)] 
Add cross-32/64 bit and deterministic bytecode generation.

Contributed by Peter Cawley. #993 #1008

19 months agoDynASM/x86: Allow [&expr] operand.
Mike Pall [Sat, 23 Dec 2023 19:06:17 +0000 (20:06 +0100)] 
DynASM/x86: Allow [&expr] operand.

Thanks to Dmitry Stogov. #1138

19 months agoMerge branch 'master' into v2.1
Mike Pall [Sat, 23 Dec 2023 18:49:43 +0000 (19:49 +0100)] 
Merge branch 'master' into v2.1

19 months agoCheck for IR_HREF vs. IR_HREFK aliasing in non-nil store check.
Mike Pall [Sat, 23 Dec 2023 18:43:03 +0000 (19:43 +0100)] 
Check for IR_HREF vs. IR_HREFK aliasing in non-nil store check.

Thanks to Peter Cawley. #1133

19 months agoMerge branch 'master' into v2.1
Mike Pall [Sat, 23 Dec 2023 18:23:12 +0000 (19:23 +0100)] 
Merge branch 'master' into v2.1

19 months agoRespect jit.off() on pending trace exit.
Mike Pall [Sat, 23 Dec 2023 18:22:34 +0000 (19:22 +0100)] 
Respect jit.off() on pending trace exit.

Thanks to Sergey Kaplun. #1134

19 months agoMerge branch 'master' into v2.1
Mike Pall [Sat, 23 Dec 2023 18:15:57 +0000 (19:15 +0100)] 
Merge branch 'master' into v2.1

19 months agoSimplify handling of instable types in TNEW/TDUP load forwarding.
Mike Pall [Sat, 23 Dec 2023 18:14:32 +0000 (19:14 +0100)] 
Simplify handling of instable types in TNEW/TDUP load forwarding.

Thanks to Peter Cawley. #994

19 months agoMerge branch 'master' into v2.1
Mike Pall [Mon, 11 Dec 2023 12:04:43 +0000 (13:04 +0100)] 
Merge branch 'master' into v2.1

19 months agoOnly emit proper parent references in snapshot replay.
Mike Pall [Mon, 11 Dec 2023 12:01:36 +0000 (13:01 +0100)] 
Only emit proper parent references in snapshot replay.

Thanks to Peter Cawley. #1132

20 months agoFix anchoring for string buffer set() method (again).
Mike Pall [Sun, 10 Dec 2023 18:42:22 +0000 (19:42 +0100)] 
Fix anchoring for string buffer set() method (again).

Thanks to Peter Cawley. #1125

20 months agoMerge branch 'master' into v2.1
Mike Pall [Sun, 10 Dec 2023 15:13:34 +0000 (16:13 +0100)] 
Merge branch 'master' into v2.1

20 months agoARM: Fix stack restore for FP slots.
Mike Pall [Sun, 10 Dec 2023 15:10:48 +0000 (16:10 +0100)] 
ARM: Fix stack restore for FP slots.

Thanks to Peter Cawley. #1131

20 months agoMerge branch 'master' into v2.1
Mike Pall [Sun, 10 Dec 2023 14:50:14 +0000 (15:50 +0100)] 
Merge branch 'master' into v2.1

20 months agoDocument workaround for multilib vs. cross-compiler conflict.
Mike Pall [Sun, 10 Dec 2023 14:45:10 +0000 (15:45 +0100)] 
Document workaround for multilib vs. cross-compiler conflict.

Reported by igorpupkinable. #1126

20 months agoFix anchoring for string buffer set() method.
Mike Pall [Sun, 10 Dec 2023 14:33:47 +0000 (15:33 +0100)] 
Fix anchoring for string buffer set() method.

Thanks to Peter Cawley. #1125

20 months agoMerge branch 'master' into v2.1
Mike Pall [Sun, 10 Dec 2023 14:02:26 +0000 (15:02 +0100)] 
Merge branch 'master' into v2.1

20 months agoFix runtime library flags for MSVC debug builds.
Mike Pall [Sun, 10 Dec 2023 14:00:52 +0000 (15:00 +0100)] 
Fix runtime library flags for MSVC debug builds.

Reported by igor725. #1127

20 months agoMerge branch 'master' into v2.1
Mike Pall [Sun, 10 Dec 2023 13:50:29 +0000 (14:50 +0100)] 
Merge branch 'master' into v2.1

20 months agoFix .debug_abbrev section in GDB JIT API.
Mike Pall [Sun, 10 Dec 2023 13:48:34 +0000 (14:48 +0100)] 
Fix .debug_abbrev section in GDB JIT API.

Thanks to Dmitry Stogov. #1129

20 months agoOptimize table.new() with constant args to (sinkable) IR_TNEW.
Mike Pall [Sun, 10 Dec 2023 13:41:56 +0000 (14:41 +0100)] 
Optimize table.new() with constant args to (sinkable) IR_TNEW.

Thanks to Peter Cawley. #1128

20 months agoMerge branch 'master' into v2.1
Mike Pall [Sun, 10 Dec 2023 13:33:48 +0000 (14:33 +0100)] 
Merge branch 'master' into v2.1

20 months agoEmit sunk IR_NEWREF only once per key on snapshot replay.
Mike Pall [Sun, 10 Dec 2023 13:29:45 +0000 (14:29 +0100)] 
Emit sunk IR_NEWREF only once per key on snapshot replay.

Thanks to Sergey Kaplun and Peter Cawley. #1128

20 months agoFix last commit.
Mike Pall [Wed, 15 Nov 2023 00:41:31 +0000 (01:41 +0100)] 
Fix last commit.

20 months agoMerge branch 'master' into v2.1
Mike Pall [Tue, 14 Nov 2023 21:56:09 +0000 (22:56 +0100)] 
Merge branch 'master' into v2.1

20 months agox86/x64: Don't fuse loads across IR_NEWREF.
Mike Pall [Tue, 14 Nov 2023 21:50:21 +0000 (22:50 +0100)] 
x86/x64: Don't fuse loads across IR_NEWREF.

Reported by Peter Cawley. #1117

20 months agoImprove last commit.
Mike Pall [Sun, 12 Nov 2023 15:11:11 +0000 (16:11 +0100)] 
Improve last commit.

20 months agox86/x64: Don't fuse loads across table.clear.
Mike Pall [Sun, 12 Nov 2023 14:41:52 +0000 (15:41 +0100)] 
x86/x64: Don't fuse loads across table.clear.

Reported by Peter Cawley. #1117

20 months agoMerge branch 'master' into v2.1
Mike Pall [Sun, 12 Nov 2023 14:25:14 +0000 (15:25 +0100)] 
Merge branch 'master' into v2.1

20 months agox86/x64: Add more red zone checks to assembler backend.
Mike Pall [Sun, 12 Nov 2023 14:18:44 +0000 (15:18 +0100)] 
x86/x64: Add more red zone checks to assembler backend.

Thanks to Peter Cawley. #1116

20 months agoMerge branch 'master' into v2.1
Mike Pall [Sun, 12 Nov 2023 14:11:29 +0000 (15:11 +0100)] 
Merge branch 'master' into v2.1

20 months agoAdd stack check to pcall/xpcall.
Mike Pall [Sun, 12 Nov 2023 13:42:24 +0000 (14:42 +0100)] 
Add stack check to pcall/xpcall.

Analyzed by Peter Cawley. #1048