]> git.ipfire.org Git - thirdparty/LuaJIT.git/log
thirdparty/LuaJIT.git
4 years agoHandle on-trace OOM errors from helper functions.
Mike Pall [Mon, 22 Mar 2021 23:35:46 +0000 (00:35 +0100)] 
Handle on-trace OOM errors from helper functions.

4 years agoUse weak guards for on-trace allocations.
Mike Pall [Mon, 22 Mar 2021 23:33:34 +0000 (00:33 +0100)] 
Use weak guards for on-trace allocations.

4 years agoPPC: Fix GG_State loads.
Mike Pall [Mon, 22 Mar 2021 23:28:03 +0000 (00:28 +0100)] 
PPC: Fix GG_State loads.

4 years agoMIPS: Fix handling of long-range spare jumps.
Mike Pall [Mon, 22 Mar 2021 23:26:08 +0000 (00:26 +0100)] 
MIPS: Fix handling of long-range spare jumps.

4 years agoCleanup and enable external unwinding for more platforms.
Mike Pall [Mon, 22 Mar 2021 23:22:34 +0000 (00:22 +0100)] 
Cleanup and enable external unwinding for more platforms.

4 years agoMerge branch 'master' into v2.1
Mike Pall [Thu, 11 Mar 2021 14:33:44 +0000 (15:33 +0100)] 
Merge branch 'master' into v2.1

4 years agoRemove specific version numbers from the docs.
Mike Pall [Thu, 11 Mar 2021 14:32:28 +0000 (15:32 +0100)] 
Remove specific version numbers from the docs.

4 years agoiOS: Don't use getentropy() since it's disallowed in the App Store.
Mike Pall [Wed, 10 Mar 2021 19:19:04 +0000 (20:19 +0100)] 
iOS: Don't use getentropy() since it's disallowed in the App Store.

Reported by MoNTE48.

4 years agoLinux/ARM64: Make mremap() non-moving due to VA space woes.
Mike Pall [Wed, 10 Mar 2021 18:58:31 +0000 (19:58 +0100)] 
Linux/ARM64: Make mremap() non-moving due to VA space woes.

This reduces overall performance on ARM64, but we have no choice.
Linux kernel default userspace VA is 48 bit, but we'd need 47 bit.
mremap() ignores address hints due to a kernel API issue. The mapping
may move to an undesired address which will cause an assert or crash.

Reported by Raymond W. Ko.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Tue, 12 Jan 2021 12:00:48 +0000 (13:00 +0100)] 
Merge branch 'master' into v2.1

5 years agoClarify macOS build instructions.
Mike Pall [Tue, 12 Jan 2021 11:59:54 +0000 (12:59 +0100)] 
Clarify macOS build instructions.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sat, 2 Jan 2021 20:56:07 +0000 (21:56 +0100)] 
Merge branch 'master' into v2.1

5 years agoBump copyright date.
Mike Pall [Sat, 2 Jan 2021 20:49:41 +0000 (21:49 +0100)] 
Bump copyright date.

5 years agoFix trace exit register dump for some archs.
Mike Pall [Sat, 2 Jan 2021 20:37:51 +0000 (21:37 +0100)] 
Fix trace exit register dump for some archs.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sat, 2 Jan 2021 20:32:09 +0000 (21:32 +0100)] 
Merge branch 'master' into v2.1

5 years agoDocumentation cleanup.
Mike Pall [Sat, 2 Jan 2021 20:17:01 +0000 (21:17 +0100)] 
Documentation cleanup.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Mon, 28 Dec 2020 11:40:20 +0000 (12:40 +0100)] 
Merge branch 'master' into v2.1

5 years agoFFI: Fix recording of union initialization.
Mike Pall [Mon, 28 Dec 2020 11:37:36 +0000 (12:37 +0100)] 
FFI: Fix recording of union initialization.

Thanks to Alex Shpilkin.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Fri, 4 Dec 2020 10:17:45 +0000 (11:17 +0100)] 
Merge branch 'master' into v2.1

5 years agox64: Fix __call metamethod return dispatch.
Mike Pall [Fri, 4 Dec 2020 10:16:55 +0000 (11:16 +0100)] 
x64: Fix __call metamethod return dispatch.

Reported by Igor Munkin.

5 years agoFix binary number literal parsing.
Mike Pall [Mon, 30 Nov 2020 14:48:34 +0000 (15:48 +0100)] 
Fix binary number literal parsing.

Reported by Egor Skriptunoff.

5 years agoFix warning.
Mike Pall [Mon, 30 Nov 2020 14:47:14 +0000 (15:47 +0100)] 
Fix warning.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Mon, 30 Nov 2020 14:46:56 +0000 (15:46 +0100)] 
Merge branch 'master' into v2.1

5 years agoFix warning.
Mike Pall [Mon, 30 Nov 2020 14:46:07 +0000 (15:46 +0100)] 
Fix warning.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Mon, 12 Oct 2020 14:18:02 +0000 (16:18 +0200)] 
Merge branch 'master' into v2.1

5 years agoMinor changes and https-ify links.
Mike Pall [Mon, 12 Oct 2020 14:11:32 +0000 (16:11 +0200)] 
Minor changes and https-ify links.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Mon, 12 Oct 2020 13:51:31 +0000 (15:51 +0200)] 
Merge branch 'master' into v2.1

5 years agoFix snapshot PC when linking to BC_JLOOP that was a BC_RET*.
Mike Pall [Mon, 12 Oct 2020 13:45:05 +0000 (15:45 +0200)] 
Fix snapshot PC when linking to BC_JLOOP that was a BC_RET*.

Reported by Arseny Vakhrushev.
Fix contributed by Peter Cawley.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Mon, 12 Oct 2020 13:43:18 +0000 (15:43 +0200)] 
Merge branch 'master' into v2.1

5 years agoEnsure full init of IR_NOP instructions.
Mike Pall [Mon, 12 Oct 2020 13:40:28 +0000 (15:40 +0200)] 
Ensure full init of IR_NOP instructions.

5 years agoAdd support for full-range 64 bit lightuserdata.
Mike Pall [Tue, 29 Sep 2020 23:31:27 +0000 (01:31 +0200)] 
Add support for full-range 64 bit lightuserdata.

5 years agoARM64: Followup fix for exit branch patching.
Mike Pall [Mon, 28 Sep 2020 16:17:58 +0000 (18:17 +0200)] 
ARM64: Followup fix for exit branch patching.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 27 Sep 2020 15:20:37 +0000 (17:20 +0200)] 
Merge branch 'master' into v2.1

5 years agoPrevent patching of the GC exit check branch.
Mike Pall [Sun, 27 Sep 2020 14:44:13 +0000 (16:44 +0200)] 
Prevent patching of the GC exit check branch.

Reported by Arseny Vakhrushev.

5 years agox64: Fix 64 bit shift code generation.
Mike Pall [Fri, 25 Sep 2020 20:49:23 +0000 (22:49 +0200)] 
x64: Fix 64 bit shift code generation.

Reported by Philipp Kutin.
Fix contributed by Peter Cawley.

5 years agoAnother fix for lua_yield() from C hook.
Mike Pall [Tue, 22 Sep 2020 21:37:43 +0000 (23:37 +0200)] 
Another fix for lua_yield() from C hook.

Reported by Jason Carr.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Tue, 22 Sep 2020 10:01:09 +0000 (12:01 +0200)] 
Merge branch 'master' into v2.1

5 years agoMark CONV as non-weak, to prevent elimination of its side-effect.
Mike Pall [Tue, 22 Sep 2020 09:56:06 +0000 (11:56 +0200)] 
Mark CONV as non-weak, to prevent elimination of its side-effect.

An unused guarded CONV int.num cannot be omitted in general.

5 years agoFix lua_yield() from C hook.
Mike Pall [Mon, 14 Sep 2020 23:02:24 +0000 (01:02 +0200)] 
Fix lua_yield() from C hook.

Reported by Jason Carr.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sat, 12 Sep 2020 15:36:04 +0000 (17:36 +0200)] 
Merge branch 'master' into v2.1

5 years agoDynASM/x86: Fix VREG support.
Mike Pall [Sat, 12 Sep 2020 15:32:30 +0000 (17:32 +0200)] 
DynASM/x86: Fix VREG support.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sat, 5 Sep 2020 18:05:44 +0000 (20:05 +0200)] 
Merge branch 'master' into v2.1

5 years agoLimit path length passed to C library loader.
Mike Pall [Sat, 5 Sep 2020 18:02:54 +0000 (20:02 +0200)] 
Limit path length passed to C library loader.

5 years agoLJ_GC64: Always snapshot functions for non-base frames.
Mike Pall [Thu, 27 Aug 2020 16:05:32 +0000 (18:05 +0200)] 
LJ_GC64: Always snapshot functions for non-base frames.

Reported by Arseny Vakhrushev.
Analysis and fix contributed by Peter Cawley.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 9 Aug 2020 21:12:48 +0000 (23:12 +0200)] 
Merge branch 'master' into v2.1

5 years agoCall error function on rethrow after trace exit.
Mike Pall [Sun, 9 Aug 2020 20:50:31 +0000 (22:50 +0200)] 
Call error function on rethrow after trace exit.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 9 Aug 2020 16:19:19 +0000 (18:19 +0200)] 
Merge branch 'master' into v2.1

5 years agoFix handling of errors during snapshot restore.
Mike Pall [Sun, 9 Aug 2020 16:08:38 +0000 (18:08 +0200)] 
Fix handling of errors during snapshot restore.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Wed, 5 Aug 2020 13:26:59 +0000 (15:26 +0200)] 
Merge branch 'master' into v2.1

5 years agoARM: Ensure relative GG_State element alignment differently.
Mike Pall [Wed, 5 Aug 2020 13:21:00 +0000 (15:21 +0200)] 
ARM: Ensure relative GG_State element alignment differently.

Thanks to jojo59516 and dwing4g.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Wed, 5 Aug 2020 12:17:41 +0000 (14:17 +0200)] 
Merge branch 'master' into v2.1

5 years agoFix Makefile dependencies.
Mike Pall [Wed, 5 Aug 2020 12:14:58 +0000 (14:14 +0200)] 
Fix Makefile dependencies.

Thanks to Stefanos Chaliasos.

5 years agoHandle old OSX/iOS without getentropy().
Mike Pall [Mon, 13 Jul 2020 09:54:08 +0000 (11:54 +0200)] 
Handle old OSX/iOS without getentropy().

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 12 Jul 2020 13:16:09 +0000 (15:16 +0200)] 
Merge branch 'master' into v2.1

5 years agoAdd FAQ about sandboxing. Minor fixes.
Mike Pall [Sun, 12 Jul 2020 13:09:55 +0000 (15:09 +0200)] 
Add FAQ about sandboxing. Minor fixes.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 12 Jul 2020 12:33:01 +0000 (14:33 +0200)] 
Merge branch 'master' into v2.1

5 years agoFix frame traversal for __gc handler frames.
Mike Pall [Sun, 12 Jul 2020 12:30:34 +0000 (14:30 +0200)] 
Fix frame traversal for __gc handler frames.

Reported by Changochen.

5 years agoFix Clang build.
Mike Pall [Wed, 1 Jul 2020 23:24:39 +0000 (01:24 +0200)] 
Fix Clang build.

5 years agoAndroid/ARM: Fix build with recent NDK.
Mike Pall [Wed, 1 Jul 2020 23:23:41 +0000 (01:23 +0200)] 
Android/ARM: Fix build with recent NDK.

5 years agoFix compiler warning.
Mike Pall [Thu, 25 Jun 2020 13:19:48 +0000 (15:19 +0200)] 
Fix compiler warning.

5 years agoFix OSX build.
Mike Pall [Tue, 23 Jun 2020 17:17:13 +0000 (19:17 +0200)] 
Fix OSX build.

Reported by jnozsc.

5 years agoFollow-up fix for iOS build.
Mike Pall [Tue, 23 Jun 2020 09:28:46 +0000 (11:28 +0200)] 
Follow-up fix for iOS build.

5 years agoOSX/iOS: Handle iOS simulator and ARM64 Macs.
Mike Pall [Tue, 23 Jun 2020 01:24:40 +0000 (03:24 +0200)] 
OSX/iOS: Handle iOS simulator and ARM64 Macs.

5 years agoFix pointer check for non-GC64 mode.
Mike Pall [Tue, 23 Jun 2020 01:14:35 +0000 (03:14 +0200)] 
Fix pointer check for non-GC64 mode.

Thanks to Stefan Hett.

5 years agoWindows: Fix NtAllocateVirtualMemory prototype.
Mike Pall [Tue, 23 Jun 2020 01:13:54 +0000 (03:13 +0200)] 
Windows: Fix NtAllocateVirtualMemory prototype.

5 years agoAdd jit.security().
Mike Pall [Tue, 23 Jun 2020 01:12:32 +0000 (03:12 +0200)] 
Add jit.security().

5 years agoRedesign and harden string interning.
Mike Pall [Tue, 23 Jun 2020 01:06:45 +0000 (03:06 +0200)] 
Redesign and harden string interning.

Up to 40% faster on hash-intensive benchmarks.
With some ideas from Sokolov Yura.

5 years agoUse a securely seeded global PRNG for the VM.
Mike Pall [Mon, 15 Jun 2020 10:21:05 +0000 (12:21 +0200)] 
Use a securely seeded global PRNG for the VM.

It's not 2005 anymore.

5 years agoCleanup some arch defines and fix builds.
Mike Pall [Mon, 15 Jun 2020 09:23:04 +0000 (11:23 +0200)] 
Cleanup some arch defines and fix builds.

5 years agoARM: Implement FLOAD from GG_State.
Mike Pall [Fri, 12 Jun 2020 23:12:14 +0000 (01:12 +0200)] 
ARM: Implement FLOAD from GG_State.

5 years agoImprove assertions.
Mike Pall [Fri, 12 Jun 2020 22:52:54 +0000 (00:52 +0200)] 
Improve assertions.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 7 Jun 2020 12:35:18 +0000 (14:35 +0200)] 
Merge branch 'master' into v2.1

5 years agoFix debug.debug() for non-string errors.
Mike Pall [Sun, 7 Jun 2020 12:34:09 +0000 (14:34 +0200)] 
Fix debug.debug() for non-string errors.

5 years agoOptimize table length computation with hinting.
Mike Pall [Wed, 27 May 2020 17:20:44 +0000 (19:20 +0200)] 
Optimize table length computation with hinting.

10x faster on loop with t[#t+1] = x idiom. Also used by table.insert.

5 years agoRemove pow() splitting and cleanup backends.
Mike Pall [Sat, 23 May 2020 19:33:01 +0000 (21:33 +0200)] 
Remove pow() splitting and cleanup backends.

5 years agoCleanup math function compilation and fix inconsistencies.
Mike Pall [Fri, 22 May 2020 02:53:35 +0000 (04:53 +0200)] 
Cleanup math function compilation and fix inconsistencies.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Fri, 22 May 2020 01:30:55 +0000 (03:30 +0200)] 
Merge branch 'master' into v2.1

5 years agoFix bytecode register allocation for comparisons.
Mike Pall [Fri, 22 May 2020 01:28:52 +0000 (03:28 +0200)] 
Fix bytecode register allocation for comparisons.

5 years agoDon't compile math.modf() anymore.
Mike Pall [Fri, 22 May 2020 01:10:50 +0000 (03:10 +0200)] 
Don't compile math.modf() anymore.

It's rarely used and properly compiling it would be difficult.

5 years agoFix math.min()/math.max() inconsistencies.
Mike Pall [Fri, 22 May 2020 00:45:47 +0000 (02:45 +0200)] 
Fix math.min()/math.max() inconsistencies.

5 years agoFix narrowing of unary minus.
Mike Pall [Fri, 22 May 2020 00:45:03 +0000 (02:45 +0200)] 
Fix narrowing of unary minus.

5 years agoCleanup CPU detection and tuning for old CPUs.
Mike Pall [Wed, 20 May 2020 18:42:04 +0000 (20:42 +0200)] 
Cleanup CPU detection and tuning for old CPUs.

5 years agoARM64: Fix {AHUV}LOAD specialized to nil/false/true.
Mike Pall [Mon, 18 May 2020 20:24:53 +0000 (22:24 +0200)] 
ARM64: Fix {AHUV}LOAD specialized to nil/false/true.

Reported by caohongqing.

5 years agoARM, ARM64, PPC: Fix TSETR fallback.
Mike Pall [Mon, 18 May 2020 20:06:50 +0000 (22:06 +0200)] 
ARM, ARM64, PPC: Fix TSETR fallback.

Thanks to Javier Guerra Giraldez.

5 years agoRemove unused file.
Mike Pall [Fri, 8 May 2020 12:00:19 +0000 (14:00 +0200)] 
Remove unused file.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Fri, 8 May 2020 12:00:07 +0000 (14:00 +0200)] 
Merge branch 'master' into v2.1

5 years agoFFI: Always fall back to metamethods for cdata length/concat.
Mike Pall [Fri, 8 May 2020 11:50:41 +0000 (13:50 +0200)] 
FFI: Always fall back to metamethods for cdata length/concat.

Thanks to Egor Skriptunoff.

5 years agoWindows: Make actual use of internal allocator optimization.
Mike Pall [Tue, 5 May 2020 10:32:55 +0000 (12:32 +0200)] 
Windows: Make actual use of internal allocator optimization.

Thanks to Nicholas Ham.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Tue, 28 Apr 2020 15:54:03 +0000 (17:54 +0200)] 
Merge branch 'master' into v2.1

5 years agoFix overflow check in unpack().
Mike Pall [Tue, 28 Apr 2020 15:52:28 +0000 (17:52 +0200)] 
Fix overflow check in unpack().

Thanks to HybridDog.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Tue, 28 Apr 2020 14:53:32 +0000 (16:53 +0200)] 
Merge branch 'master' into v2.1

5 years agoFix Windows make clean.
Mike Pall [Tue, 28 Apr 2020 14:52:28 +0000 (16:52 +0200)] 
Fix Windows make clean.

5 years agoFFI/ARM64: Fix pass-by-value struct calling conventions.
Mike Pall [Fri, 20 Mar 2020 13:10:18 +0000 (14:10 +0100)] 
FFI/ARM64: Fix pass-by-value struct calling conventions.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Fri, 20 Mar 2020 12:38:05 +0000 (13:38 +0100)] 
Merge branch 'master' into v2.1

5 years agoFix write barrier for lua_setupvalue() and debug.setupvalue().
Mike Pall [Fri, 20 Mar 2020 12:35:49 +0000 (13:35 +0100)] 
Fix write barrier for lua_setupvalue() and debug.setupvalue().

5 years agoMake string to number conversions fail on NUL char.
Mike Pall [Thu, 13 Feb 2020 16:39:51 +0000 (17:39 +0100)] 
Make string to number conversions fail on NUL char.

Contributed by Igor Munkin.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 2 Feb 2020 17:20:35 +0000 (18:20 +0100)] 
Merge branch 'master' into v2.1

5 years agox86/x64: Fix loop realignment.
Mike Pall [Sun, 2 Feb 2020 17:19:44 +0000 (18:19 +0100)] 
x86/x64: Fix loop realignment.

5 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 26 Jan 2020 14:44:40 +0000 (15:44 +0100)] 
Merge branch 'master' into v2.1

5 years agoDocumentation cleanup.
Mike Pall [Sun, 26 Jan 2020 14:37:33 +0000 (15:37 +0100)] 
Documentation cleanup.