]> git.ipfire.org Git - thirdparty/LuaJIT.git/log
thirdparty/LuaJIT.git
8 years agoFrom Lua 5.3: Add lua_isyieldable().
Mike Pall [Fri, 7 Apr 2017 10:27:09 +0000 (12:27 +0200)] 
From Lua 5.3: Add lua_isyieldable().

Contributed by François Perrad.

8 years agoFrom Lua 5.2: Add lua_copy().
Mike Pall [Fri, 7 Apr 2017 10:24:26 +0000 (12:24 +0200)] 
From Lua 5.2: Add lua_copy().

Contributed by François Perrad.

8 years agoFrom Lua 5.2: Add lua_version().
Mike Pall [Fri, 7 Apr 2017 10:21:41 +0000 (12:21 +0200)] 
From Lua 5.2: Add lua_version().

Contributed by François Perrad.

8 years agoRefactor with LUA_OK.
Mike Pall [Fri, 7 Apr 2017 10:12:03 +0000 (12:12 +0200)] 
Refactor with LUA_OK.

Contributed by François Perrad.

8 years agoAllow building on Haiku OS.
Mike Pall [Fri, 7 Apr 2017 10:05:18 +0000 (12:05 +0200)] 
Allow building on Haiku OS.

Note: this is not an officially supported target.
Thanks to kallisti5.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Fri, 7 Apr 2017 10:01:07 +0000 (12:01 +0200)] 
Merge branch 'master' into v2.1

8 years agoOSX: Fix build with recent XCode.
Mike Pall [Fri, 7 Apr 2017 09:59:08 +0000 (11:59 +0200)] 
OSX: Fix build with recent XCode.

Contributed by Joseph Zupko.

8 years agoAdd some more changes and extensions from Lua 5.2.
Mike Pall [Thu, 30 Mar 2017 10:43:21 +0000 (12:43 +0200)] 
Add some more changes and extensions from Lua 5.2.

Contributed by François Perrad.

8 years agoRemove old Lua 5.0 compatibility defines.
Mike Pall [Thu, 30 Mar 2017 09:40:49 +0000 (11:40 +0200)] 
Remove old Lua 5.0 compatibility defines.

Suggested by François Perrad.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Thu, 30 Mar 2017 09:38:16 +0000 (11:38 +0200)] 
Merge branch 'master' into v2.1

8 years agoFFI: Fix FOLD rules for int64_t comparisons.
Mike Pall [Thu, 30 Mar 2017 09:35:29 +0000 (11:35 +0200)] 
FFI: Fix FOLD rules for int64_t comparisons.

Thanks to Peter Cawley.

8 years agoARM64: Add big-endian support.
Mike Pall [Thu, 30 Mar 2017 09:17:15 +0000 (11:17 +0200)] 
ARM64: Add big-endian support.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.
Sponsored by Cisco Systems, Inc.

8 years agox64/LJ_GC64: Fix emit_loadk64().
Mike Pall [Tue, 21 Mar 2017 09:10:20 +0000 (10:10 +0100)] 
x64/LJ_GC64: Fix emit_loadk64().

Contributed by Peter Cawley.

8 years agoLJ_GC64: Fix BC_CALLM snapshot handling.
Mike Pall [Mon, 20 Mar 2017 23:59:38 +0000 (00:59 +0100)] 
LJ_GC64: Fix BC_CALLM snapshot handling.

8 years agox64/LJ_GC64: Fix assembly of CNEWI with 64 bit constant pointer.
Mike Pall [Mon, 20 Mar 2017 23:58:02 +0000 (00:58 +0100)] 
x64/LJ_GC64: Fix assembly of CNEWI with 64 bit constant pointer.

Tracked down by Luke Gorrie.

8 years agoARM64: Fix Nintendo Switch build.
Mike Pall [Mon, 20 Mar 2017 22:53:16 +0000 (23:53 +0100)] 
ARM64: Fix Nintendo Switch build.

Thanks to Eddie Edwards.

8 years agoARM64: Fix XLOAD/XSTORE with FP operand.
Mike Pall [Mon, 20 Mar 2017 22:49:57 +0000 (23:49 +0100)] 
ARM64: Fix XLOAD/XSTORE with FP operand.

Thanks to Stefan Pejic.

8 years agoRemove Lua 5.0 compatibility defines.
Mike Pall [Fri, 17 Mar 2017 11:07:21 +0000 (12:07 +0100)] 
Remove Lua 5.0 compatibility defines.

Suggested by François Perrad.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Wed, 8 Mar 2017 22:04:46 +0000 (23:04 +0100)] 
Merge branch 'master' into v2.1

8 years agoRemove unnecessary mcode alloc pointer check.
Mike Pall [Wed, 8 Mar 2017 22:02:24 +0000 (23:02 +0100)] 
Remove unnecessary mcode alloc pointer check.

Also fixes Illumos address space issue reported by Theo Schlossnagle.

8 years agoLimit mcode alloc probing, depending on the available pool size.
Mike Pall [Wed, 8 Mar 2017 22:01:47 +0000 (23:01 +0100)] 
Limit mcode alloc probing, depending on the available pool size.

Contributed by Alexey Kopytov.

8 years agoFix overly restrictive range calculation in mcode allocation.
Mike Pall [Wed, 8 Mar 2017 21:59:44 +0000 (22:59 +0100)] 
Fix overly restrictive range calculation in mcode allocation.

Contributed by Alexey Kopytov.

8 years agoFix out-of-scope goto handling in parser.
Mike Pall [Wed, 8 Mar 2017 21:16:43 +0000 (22:16 +0100)] 
Fix out-of-scope goto handling in parser.

Many thanks to Demetrios Obenour for tracking down this long-standing bug.

8 years agoRemove internal __mode = "K" and replace with safe check.
Mike Pall [Wed, 8 Mar 2017 21:03:17 +0000 (22:03 +0100)] 
Remove internal __mode = "K" and replace with safe check.

8 years agoFix annoying warning, due to deterministic binutils configuration.
Mike Pall [Wed, 8 Mar 2017 21:02:07 +0000 (22:02 +0100)] 
Fix annoying warning, due to deterministic binutils configuration.

8 years agoDynASM: Fix warning.
Mike Pall [Wed, 8 Mar 2017 20:59:14 +0000 (21:59 +0100)] 
DynASM: Fix warning.

8 years agoMIPS64, part 2: Add MIPS64 hard-float JIT compiler backend.
Mike Pall [Mon, 20 Feb 2017 02:43:10 +0000 (03:43 +0100)] 
MIPS64, part 2: Add MIPS64 hard-float JIT compiler backend.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.
Sponsored by Cisco Systems, Inc.

8 years agoFix FOLD rules for math.abs() and FP negation.
Mike Pall [Mon, 20 Feb 2017 01:51:31 +0000 (02:51 +0100)] 
Fix FOLD rules for math.abs() and FP negation.

Broken since SIMD constants were switched to IR_FLOAD REF_NIL.

8 years agoFix soft-float math.abs() and negation.
Mike Pall [Mon, 20 Feb 2017 01:51:05 +0000 (02:51 +0100)] 
Fix soft-float math.abs() and negation.

Broken since SIMD constants were switched to IR_FLOAD REF_NIL.

8 years agox64/LJ_GC64: Fix warning for DUALNUM build.
Mike Pall [Mon, 20 Feb 2017 01:44:29 +0000 (02:44 +0100)] 
x64/LJ_GC64: Fix warning for DUALNUM build.

8 years agox64/LJ_GC64: Fix (currently unused) integer stores in asm_tvptr().
Mike Pall [Mon, 20 Feb 2017 01:42:54 +0000 (02:42 +0100)] 
x64/LJ_GC64: Fix (currently unused) integer stores in asm_tvptr().

8 years agoARM64: Cleanup and de-cargo-cult TValue store generation.
Mike Pall [Mon, 20 Feb 2017 01:41:35 +0000 (02:41 +0100)] 
ARM64: Cleanup and de-cargo-cult TValue store generation.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Mon, 20 Feb 2017 01:39:57 +0000 (02:39 +0100)] 
Merge branch 'master' into v2.1

8 years agoMIPS: Don't use RID_GP as a scratch register.
Mike Pall [Mon, 20 Feb 2017 01:35:24 +0000 (02:35 +0100)] 
MIPS: Don't use RID_GP as a scratch register.

8 years agoMIPS: Fix emitted code for U32 to float conversion.
Mike Pall [Mon, 20 Feb 2017 01:35:00 +0000 (02:35 +0100)] 
MIPS: Fix emitted code for U32 to float conversion.

8 years agoMIPS: Backport workaround for compact unwind tables.
Mike Pall [Mon, 20 Feb 2017 01:29:42 +0000 (02:29 +0100)] 
MIPS: Backport workaround for compact unwind tables.

8 years agoMake checkptrGC() actually work.
Mike Pall [Sat, 18 Feb 2017 21:47:19 +0000 (22:47 +0100)] 
Make checkptrGC() actually work.

Neither LJ_64 nor LJ_GC64 are defined when lj_def.h is included.
So we'll need to use lazy C macro evaluation.

8 years agoARM64: Fix AREF/HREF/UREF fusion.
Mike Pall [Thu, 16 Feb 2017 19:41:46 +0000 (20:41 +0100)] 
ARM64: Fix AREF/HREF/UREF fusion.

Thanks to Zhongwei Yao.

8 years agoFix extension docs about package.searchers.
Mike Pall [Wed, 18 Jan 2017 00:45:47 +0000 (01:45 +0100)] 
Fix extension docs about package.searchers.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Tue, 17 Jan 2017 11:41:05 +0000 (12:41 +0100)] 
Merge branch 'master' into v2.1

8 years agoBump copyright date to 2017.
Mike Pall [Tue, 17 Jan 2017 11:35:03 +0000 (12:35 +0100)] 
Bump copyright date to 2017.

8 years agoLJ_GC64: Add build options and install instructions.
Mike Pall [Tue, 17 Jan 2017 11:21:12 +0000 (12:21 +0100)] 
LJ_GC64: Add build options and install instructions.

8 years agoAdd some more extensions from Lua 5.2/5.3.
Mike Pall [Tue, 17 Jan 2017 10:37:28 +0000 (11:37 +0100)] 
Add some more extensions from Lua 5.2/5.3.

Contributed by François Perrad.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Tue, 17 Jan 2017 09:55:41 +0000 (10:55 +0100)] 
Merge branch 'master' into v2.1

8 years agoFix HTML formatting.
Mike Pall [Tue, 17 Jan 2017 09:55:31 +0000 (10:55 +0100)] 
Fix HTML formatting.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Tue, 17 Jan 2017 09:47:42 +0000 (10:47 +0100)] 
Merge branch 'master' into v2.1

8 years agoFix cross-endian jit.bcsave for MIPS target.
Mike Pall [Tue, 17 Jan 2017 09:46:45 +0000 (10:46 +0100)] 
Fix cross-endian jit.bcsave for MIPS target.

8 years agoARM64: Remove unused variables in disassembler.
Mike Pall [Fri, 30 Dec 2016 16:54:10 +0000 (17:54 +0100)] 
ARM64: Remove unused variables in disassembler.

Thanks to François Perrad.

8 years agoARM64: Fuse BOR/BXOR and BNOT into ORN/EON.
Mike Pall [Thu, 15 Dec 2016 21:47:40 +0000 (22:47 +0100)] 
ARM64: Fuse BOR/BXOR and BNOT into ORN/EON.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Thu, 15 Dec 2016 21:46:26 +0000 (22:46 +0100)] 
Merge branch 'master' into v2.1

8 years agoAdd "proto" field to jit.util.funcinfo().
Mike Pall [Thu, 15 Dec 2016 21:45:28 +0000 (22:45 +0100)] 
Add "proto" field to jit.util.funcinfo().

Backport.

8 years agoAdd "proto" field to jit.util.funcinfo().
Mike Pall [Tue, 13 Dec 2016 20:30:13 +0000 (21:30 +0100)] 
Add "proto" field to jit.util.funcinfo().

8 years agoARM64: Use the correct FUSE check.
Mike Pall [Fri, 9 Dec 2016 17:24:48 +0000 (18:24 +0100)] 
ARM64: Use the correct FUSE check.

Oops, my bad.

8 years agoARM64: Fuse BOR(BSHL, BSHR) into EXTR/ROR.
Mike Pall [Fri, 9 Dec 2016 17:16:12 +0000 (18:16 +0100)] 
ARM64: Fuse BOR(BSHL, BSHR) into EXTR/ROR.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.

8 years agoAdd missing FOLD rule for 64 bit shift+BAND simplification.
Mike Pall [Thu, 8 Dec 2016 21:38:35 +0000 (22:38 +0100)] 
Add missing FOLD rule for 64 bit shift+BAND simplification.

8 years agoARM64: Fix code generation for S19 offsets.
Mike Pall [Thu, 8 Dec 2016 04:53:36 +0000 (05:53 +0100)] 
ARM64: Fix code generation for S19 offsets.

Contributed by Zhongwei Yao.

8 years agoARM64: Fuse various BAND/BSHL/BSHR/BSAR combinations.
Mike Pall [Thu, 8 Dec 2016 03:09:29 +0000 (04:09 +0100)] 
ARM64: Fuse various BAND/BSHL/BSHR/BSAR combinations.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.

8 years agoARM64: Fuse FP multiply-add/sub.
Mike Pall [Thu, 8 Dec 2016 00:38:09 +0000 (01:38 +0100)] 
ARM64: Fuse FP multiply-add/sub.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.

8 years agoARM64: Fuse XLOAD/XSTORE with STRREF/ADD/BSHL/CONV.
Mike Pall [Wed, 7 Dec 2016 17:40:31 +0000 (18:40 +0100)] 
ARM64: Fuse XLOAD/XSTORE with STRREF/ADD/BSHL/CONV.

8 years agoARM64: Reorganize operand extension definitions.
Mike Pall [Wed, 7 Dec 2016 17:38:32 +0000 (18:38 +0100)] 
ARM64: Reorganize operand extension definitions.

8 years agoARM64: Add missing ldrb/strb instructions to disassembler.
Mike Pall [Wed, 7 Dec 2016 17:34:10 +0000 (18:34 +0100)] 
ARM64: Add missing ldrb/strb instructions to disassembler.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.

8 years agoARM64: Fix pc-relative loads of consts. Cleanup branch codegen.
Mike Pall [Wed, 7 Dec 2016 08:42:43 +0000 (09:42 +0100)] 
ARM64: Fix pc-relative loads of consts. Cleanup branch codegen.

Thanks to Zhongwei Yao.

8 years agoARM64: Make use of tbz/tbnz and cbz/cbnz.
Mike Pall [Tue, 29 Nov 2016 18:30:40 +0000 (19:30 +0100)] 
ARM64: Make use of tbz/tbnz and cbz/cbnz.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.

8 years agoDocument 47 bit limit for lightuserdata.
Mike Pall [Fri, 25 Nov 2016 08:23:08 +0000 (09:23 +0100)] 
Document 47 bit limit for lightuserdata.

8 years agoEliminate use of lightuserdata derived from static data pointers.
Mike Pall [Thu, 24 Nov 2016 18:14:17 +0000 (19:14 +0100)] 
Eliminate use of lightuserdata derived from static data pointers.

Required for >47 bit VA, e.g. ARM64.

8 years agoARM64: Emit more efficient trace exits.
Mike Pall [Thu, 24 Nov 2016 17:56:19 +0000 (18:56 +0100)] 
ARM64: Emit more efficient trace exits.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Mon, 21 Nov 2016 15:02:41 +0000 (16:02 +0100)] 
Merge branch 'master' into v2.1

8 years agoUpdate contact info.
Mike Pall [Mon, 21 Nov 2016 15:02:10 +0000 (16:02 +0100)] 
Update contact info.

8 years agoGeneralize deferred constant handling in backend to 64 bit.
Mike Pall [Mon, 21 Nov 2016 14:43:17 +0000 (15:43 +0100)] 
Generalize deferred constant handling in backend to 64 bit.

8 years agoARM64: Reject special case in emit_isk13().
Mike Pall [Sun, 20 Nov 2016 22:32:17 +0000 (23:32 +0100)] 
ARM64: Reject special case in emit_isk13().

8 years agoARM64: Allow full VA range for mcode allocation.
Mike Pall [Sun, 20 Nov 2016 22:17:45 +0000 (23:17 +0100)] 
ARM64: Allow full VA range for mcode allocation.

8 years agoARM64: Add JIT compiler backend.
Mike Pall [Sun, 20 Nov 2016 21:16:08 +0000 (22:16 +0100)] 
ARM64: Add JIT compiler backend.

Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com.
Sponsored by Cisco Systems, Inc.

8 years agoWhitespace.
Mike Pall [Sun, 20 Nov 2016 21:14:09 +0000 (22:14 +0100)] 
Whitespace.

8 years agoFix amalgamated build.
Mike Pall [Sat, 19 Nov 2016 19:53:31 +0000 (20:53 +0100)] 
Fix amalgamated build.

8 years agoIncrease range of GG_State loads via IR_FLOAD with REF_NIL.
Mike Pall [Sat, 19 Nov 2016 18:53:46 +0000 (19:53 +0100)] 
Increase range of GG_State loads via IR_FLOAD with REF_NIL.

Require 32 bit alignment and store offset/4 instead.
Otherwise this can overflow the 10 bit limit for the FOLD op2 key.

8 years agoMIPS: Fix TSETR barrier.
Mike Pall [Wed, 16 Nov 2016 10:18:10 +0000 (11:18 +0100)] 
MIPS: Fix TSETR barrier.

Thanks to tongwell.

8 years agoReport parent of stitched trace.
Mike Pall [Sun, 13 Nov 2016 19:03:01 +0000 (20:03 +0100)] 
Report parent of stitched trace.

Thanks to Nick Zavaritsky.

8 years agoLJ_GC64: Various followup fixes.
Mike Pall [Thu, 20 Oct 2016 18:55:12 +0000 (20:55 +0200)] 
LJ_GC64: Various followup fixes.

Contributed by Peter Cawley.

8 years agoLJ_GC64: Fix HREF for pointers.
Mike Pall [Wed, 19 Oct 2016 07:48:38 +0000 (09:48 +0200)] 
LJ_GC64: Fix HREF for pointers.

Contributed by Peter Cawley.

8 years agoLJ_FR2: Fix slot 1 handling.
Mike Pall [Sun, 16 Oct 2016 19:04:38 +0000 (21:04 +0200)] 
LJ_FR2: Fix slot 1 handling.

Contributed by Peter Cawley.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Thu, 13 Oct 2016 16:38:22 +0000 (18:38 +0200)] 
Merge branch 'master' into v2.1

8 years agoFix GC step size calculation.
Mike Pall [Thu, 13 Oct 2016 16:36:39 +0000 (18:36 +0200)] 
Fix GC step size calculation.

Thanks to Igor Ehrlich.

8 years agoLJ_GC64: Various fixes.
Mike Pall [Wed, 12 Oct 2016 15:36:45 +0000 (17:36 +0200)] 
LJ_GC64: Various fixes.

Contributed by Peter Cawley.

8 years agoLJ_GC64: Fix jit.on/off.
Mike Pall [Sat, 8 Oct 2016 09:30:01 +0000 (11:30 +0200)] 
LJ_GC64: Fix jit.on/off.

8 years agoFix -jp=a mode for builtins.
Mike Pall [Sun, 2 Oct 2016 12:33:31 +0000 (14:33 +0200)] 
Fix -jp=a mode for builtins.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 2 Oct 2016 12:25:04 +0000 (14:25 +0200)] 
Merge branch 'master' into v2.1

8 years agoARM: Fix BLX encoding for Thumb interworking calls.
Mike Pall [Sun, 2 Oct 2016 12:24:04 +0000 (14:24 +0200)] 
ARM: Fix BLX encoding for Thumb interworking calls.

Thanks to Charles Baylis.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Mon, 19 Sep 2016 19:23:35 +0000 (21:23 +0200)] 
Merge branch 'master' into v2.1

8 years agoLooks like COLORTERM has gone out of fashion.
Mike Pall [Mon, 19 Sep 2016 19:22:19 +0000 (21:22 +0200)] 
Looks like COLORTERM has gone out of fashion.

8 years agoMerge branch 'master' into v2.1
Mike Pall [Mon, 19 Sep 2016 19:19:07 +0000 (21:19 +0200)] 
Merge branch 'master' into v2.1

8 years agoInitialize uv->immutable for upvalues of loaded chunks.
Mike Pall [Mon, 19 Sep 2016 19:17:58 +0000 (21:17 +0200)] 
Initialize uv->immutable for upvalues of loaded chunks.

Thanks to Peter Cawley.

8 years agoWindows/x86: Add MSVC flags for debug build with exception interop.
Mike Pall [Tue, 6 Sep 2016 17:37:30 +0000 (19:37 +0200)] 
Windows/x86: Add MSVC flags for debug build with exception interop.

9 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 31 Jul 2016 11:42:49 +0000 (13:42 +0200)] 
Merge branch 'master' into v2.1

9 years agoRevert "OSX: Switch to Clang as the default compiler."
Mike Pall [Sun, 31 Jul 2016 11:26:58 +0000 (13:26 +0200)] 
Revert "OSX: Switch to Clang as the default compiler."

It breaks cross-compilation to Android.
And host "gcc" aliases to "clang", anyway.

9 years agoFix exit status for 'luajit -b'.
Mike Pall [Fri, 22 Jul 2016 14:42:09 +0000 (16:42 +0200)] 
Fix exit status for 'luajit -b'.

9 years agoMust preserve J->fold.ins (fins) around call to lj_ir_ksimd().
Mike Pall [Fri, 22 Jul 2016 14:35:46 +0000 (16:35 +0200)] 
Must preserve J->fold.ins (fins) around call to lj_ir_ksimd().

9 years agoMerge branch 'master' into v2.1
Mike Pall [Sun, 17 Jul 2016 14:25:37 +0000 (16:25 +0200)] 
Merge branch 'master' into v2.1

9 years agoEmit bytecode in .c/.h files with unsigned char type.
Mike Pall [Sun, 17 Jul 2016 14:24:30 +0000 (16:24 +0200)] 
Emit bytecode in .c/.h files with unsigned char type.

9 years agoSet arg table before evaluating LUA_INIT and -e chunks.
Mike Pall [Sun, 17 Jul 2016 14:23:49 +0000 (16:23 +0200)] 
Set arg table before evaluating LUA_INIT and -e chunks.

9 years agoAdjust comment with defines.
Mike Pall [Sun, 17 Jul 2016 14:05:25 +0000 (16:05 +0200)] 
Adjust comment with defines.