]> git.ipfire.org Git - thirdparty/LuaJIT.git/log
thirdparty/LuaJIT.git
15 years agoTurn lj_mem_newgco() into a fastcall.
Mike Pall [Fri, 10 Dec 2010 00:10:52 +0000 (01:10 +0100)] 
Turn lj_mem_newgco() into a fastcall.

15 years agoFFI: Always specialize to the field name for struct access.
Mike Pall [Thu, 9 Dec 2010 21:48:01 +0000 (22:48 +0100)] 
FFI: Always specialize to the field name for struct access.

15 years agoAdd missing guard for check against "#" when recording select().
Mike Pall [Thu, 9 Dec 2010 21:35:49 +0000 (22:35 +0100)] 
Add missing guard for check against "#" when recording select().

15 years agoFFI: Fix alignment of scalars/vectors modified with mode attribute.
Mike Pall [Thu, 9 Dec 2010 17:48:23 +0000 (18:48 +0100)] 
FFI: Fix alignment of scalars/vectors modified with mode attribute.

15 years agoStrength-reduce 32 to 64 bit widening using scalar evolution analysis.
Mike Pall [Thu, 9 Dec 2010 15:12:59 +0000 (16:12 +0100)] 
Strength-reduce 32 to 64 bit widening using scalar evolution analysis.

15 years agoAllow integer literals in FOLD rules.
Mike Pall [Thu, 9 Dec 2010 15:11:15 +0000 (16:11 +0100)] 
Allow integer literals in FOLD rules.

Workaround before refactoring conversion ops.

15 years agox86/x64 backend: keep invariants on the right rather than fusing loads.
Mike Pall [Thu, 9 Dec 2010 15:08:55 +0000 (16:08 +0100)] 
x86/x64 backend: keep invariants on the right rather than fusing loads.

15 years agoApply narrowing optimization to IR_TOI64, too.
Mike Pall [Wed, 8 Dec 2010 20:03:45 +0000 (21:03 +0100)] 
Apply narrowing optimization to IR_TOI64, too.

15 years agoAdd FOLD rule to reassociate 64 bit (x+k1)+k2.
Mike Pall [Wed, 8 Dec 2010 19:57:21 +0000 (20:57 +0100)] 
Add FOLD rule to reassociate 64 bit (x+k1)+k2.

15 years agoFix type-based colorization of snapshot slots in debug output.
Mike Pall [Wed, 8 Dec 2010 19:37:22 +0000 (20:37 +0100)] 
Fix type-based colorization of snapshot slots in debug output.

15 years agoAvoid stack resizes while recording calls to vararg functions.
Mike Pall [Wed, 8 Dec 2010 18:11:58 +0000 (19:11 +0100)] 
Avoid stack resizes while recording calls to vararg functions.

FUNCV might have been recorded twice (with ill effects).

15 years agoFOLD (base+(idx+k)*sz)+ofs ==> (base+idx*sz)+(ofs+k*sz).
Mike Pall [Wed, 8 Dec 2010 02:33:48 +0000 (03:33 +0100)] 
FOLD (base+(idx+k)*sz)+ofs ==> (base+idx*sz)+(ofs+k*sz).

15 years agoAvoid fusing loads if there are multiple references.
Mike Pall [Wed, 8 Dec 2010 02:26:53 +0000 (03:26 +0100)] 
Avoid fusing loads if there are multiple references.

15 years agoFix IRT_NUM support for XLOAD/XSTORE.
Mike Pall [Wed, 8 Dec 2010 02:24:35 +0000 (03:24 +0100)] 
Fix IRT_NUM support for XLOAD/XSTORE.

15 years agoFFI: Turn cdata indexing into x86/x64 [base+idx*sz+ofs] addressing.
Mike Pall [Wed, 8 Dec 2010 01:36:09 +0000 (02:36 +0100)] 
FFI: Turn cdata indexing into x86/x64 [base+idx*sz+ofs] addressing.

15 years agoFFI: Record cdata index operations (preliminary, lots of NYI cases).
Mike Pall [Wed, 8 Dec 2010 01:11:18 +0000 (02:11 +0100)] 
FFI: Record cdata index operations (preliminary, lots of NYI cases).

15 years agoFFI: Treat cdata metatable+methods as immutable in trace recorder.
Mike Pall [Wed, 8 Dec 2010 01:02:21 +0000 (02:02 +0100)] 
FFI: Treat cdata metatable+methods as immutable in trace recorder.

15 years agoFix x64 code generation for A16+REX prefixed instructions.
Mike Pall [Wed, 8 Dec 2010 00:57:50 +0000 (01:57 +0100)] 
Fix x64 code generation for A16+REX prefixed instructions.

15 years agoFix register allocation for 8 bit stores in x86 backend.
Mike Pall [Tue, 7 Dec 2010 00:18:10 +0000 (01:18 +0100)] 
Fix register allocation for 8 bit stores in x86 backend.

15 years agoAdd IRT_NUM support to XLOAD/XSTORE.
Mike Pall [Mon, 6 Dec 2010 18:28:51 +0000 (19:28 +0100)] 
Add IRT_NUM support to XLOAD/XSTORE.

15 years agoAdd IR_TOI64.
Mike Pall [Mon, 6 Dec 2010 15:18:18 +0000 (16:18 +0100)] 
Add IR_TOI64.

15 years agoAdd FOLD rule to turn i << 1 into i + i.
Mike Pall [Mon, 6 Dec 2010 12:26:58 +0000 (13:26 +0100)] 
Add FOLD rule to turn i << 1 into i + i.

15 years agoFix 64 bit shifts in backend. Fix shift by 0.
Mike Pall [Mon, 6 Dec 2010 12:16:35 +0000 (13:16 +0100)] 
Fix 64 bit shifts in backend. Fix shift by 0.

15 years agoFix XLOAD/XSTORE references.
Mike Pall [Mon, 6 Dec 2010 12:15:53 +0000 (13:15 +0100)] 
Fix XLOAD/XSTORE references.

15 years agoAdd support for integer IR_MUL.
Mike Pall [Mon, 6 Dec 2010 11:54:00 +0000 (12:54 +0100)] 
Add support for integer IR_MUL.

15 years agoSupport all kinds of XLOAD/XSTORE references in backend.
Mike Pall [Mon, 6 Dec 2010 02:09:52 +0000 (03:09 +0100)] 
Support all kinds of XLOAD/XSTORE references in backend.

Fuse pointer arithmetic, too.

15 years agoAvoid compiler warnings.
Mike Pall [Mon, 6 Dec 2010 02:07:10 +0000 (03:07 +0100)] 
Avoid compiler warnings.

15 years agoUse native IRT_PTR instead of IRT_LIGHTUD workaround for FILE*.
Mike Pall [Mon, 6 Dec 2010 01:14:39 +0000 (02:14 +0100)] 
Use native IRT_PTR instead of IRT_LIGHTUD workaround for FILE*.

15 years agoSimplify lj_ir_kvalue(). Fix IR_KNULL + IRT_P64 case.
Mike Pall [Mon, 6 Dec 2010 01:12:08 +0000 (02:12 +0100)] 
Simplify lj_ir_kvalue(). Fix IR_KNULL + IRT_P64 case.

15 years agoAvoid warning.
Mike Pall [Mon, 6 Dec 2010 00:59:07 +0000 (01:59 +0100)] 
Avoid warning.

15 years agoAdd IR_XSTORE.
Mike Pall [Mon, 6 Dec 2010 00:48:19 +0000 (01:48 +0100)] 
Add IR_XSTORE.

15 years agoAdd minimal set of fold rules for KINT64.
Mike Pall [Sun, 5 Dec 2010 23:38:21 +0000 (00:38 +0100)] 
Add minimal set of fold rules for KINT64.

15 years agoAdd support for 64 bit integer arithmetic to x64 backend.
Mike Pall [Sun, 5 Dec 2010 23:07:36 +0000 (00:07 +0100)] 
Add support for 64 bit integer arithmetic to x64 backend.

15 years agoFix xmm spill/restore broken by b1fb71fb.
Mike Pall [Sun, 5 Dec 2010 21:39:36 +0000 (22:39 +0100)] 
Fix xmm spill/restore broken by b1fb71fb.

15 years agoAdd IR_KINT64.
Mike Pall [Sun, 5 Dec 2010 20:50:52 +0000 (21:50 +0100)] 
Add IR_KINT64.

15 years agoCleanup 64 bit IR type handling.
Mike Pall [Sun, 5 Dec 2010 18:49:29 +0000 (19:49 +0100)] 
Cleanup 64 bit IR type handling.

15 years agoRename IRT_PTR to IRT_P32.
Mike Pall [Sun, 5 Dec 2010 17:59:34 +0000 (18:59 +0100)] 
Rename IRT_PTR to IRT_P32.

15 years agoMake sure to use irt_toitype() macro everywhere.
Mike Pall [Sun, 5 Dec 2010 17:51:37 +0000 (18:51 +0100)] 
Make sure to use irt_toitype() macro everywhere.

15 years agoSplit off fast function recording to lj_ffrecord.c.
Mike Pall [Sun, 5 Dec 2010 16:12:34 +0000 (17:12 +0100)] 
Split off fast function recording to lj_ffrecord.c.

15 years agoWhitespace.
Mike Pall [Sun, 5 Dec 2010 00:14:18 +0000 (01:14 +0100)] 
Whitespace.

15 years agoDon't export internal symbol.
Mike Pall [Sun, 5 Dec 2010 00:04:15 +0000 (01:04 +0100)] 
Don't export internal symbol.

15 years agoFFI: Add ffi.* library.
Mike Pall [Sat, 4 Dec 2010 23:43:47 +0000 (00:43 +0100)] 
FFI: Add ffi.* library.

15 years agoFFI: Add support for converting cdata to tonumber().
Mike Pall [Sat, 4 Dec 2010 23:40:23 +0000 (00:40 +0100)] 
FFI: Add support for converting cdata to tonumber().

15 years agoFFI: Add C declaration parser.
Mike Pall [Sat, 4 Dec 2010 23:20:59 +0000 (00:20 +0100)] 
FFI: Add C declaration parser.

15 years agoFFI: Add C data handling and C type conversions.
Mike Pall [Sat, 4 Dec 2010 23:18:07 +0000 (00:18 +0100)] 
FFI: Add C data handling and C type conversions.

15 years agoFFI: Add C type management.
Mike Pall [Sat, 4 Dec 2010 23:11:35 +0000 (00:11 +0100)] 
FFI: Add C type management.

15 years agoPOSIX is an acronym.
Mike Pall [Sat, 4 Dec 2010 19:47:51 +0000 (20:47 +0100)] 
POSIX is an acronym.

15 years agoUndo ef8c2648.
Mike Pall [Fri, 3 Dec 2010 15:58:19 +0000 (16:58 +0100)] 
Undo ef8c2648.

15 years agoAllow access to raw error messages from outside lj_err.c.
Mike Pall [Wed, 1 Dec 2010 11:54:32 +0000 (12:54 +0100)] 
Allow access to raw error messages from outside lj_err.c.

15 years agoFFI: Add define to disable the FFI library.
Mike Pall [Tue, 30 Nov 2010 20:56:57 +0000 (21:56 +0100)] 
FFI: Add define to disable the FFI library.

15 years agoAdd support for deferred library loads to lib_init.c.
Mike Pall [Tue, 30 Nov 2010 20:56:03 +0000 (21:56 +0100)] 
Add support for deferred library loads to lib_init.c.

15 years agoFix check for enabled JIT compiler in lj_trace.h.
Mike Pall [Tue, 30 Nov 2010 17:32:22 +0000 (18:32 +0100)] 
Fix check for enabled JIT compiler in lj_trace.h.

15 years agoRearrange src/Makefile. Split features and debugging support.
Mike Pall [Tue, 30 Nov 2010 15:19:20 +0000 (16:19 +0100)] 
Rearrange src/Makefile. Split features and debugging support.

15 years agoUpdate copyright for Lua 5.2-derived features.
Mike Pall [Mon, 29 Nov 2010 16:31:45 +0000 (17:31 +0100)] 
Update copyright for Lua 5.2-derived features.

15 years agoDon't mark REF_BASE in DCE.
Mike Pall [Mon, 29 Nov 2010 15:00:44 +0000 (16:00 +0100)] 
Don't mark REF_BASE in DCE.

15 years agoAdd shorter defines for endianess checks.
Mike Pall [Sun, 28 Nov 2010 16:22:45 +0000 (17:22 +0100)] 
Add shorter defines for endianess checks.

15 years agoRemove metamethod frame for errors from internal metamethods.
Mike Pall [Sat, 27 Nov 2010 19:23:39 +0000 (20:23 +0100)] 
Remove metamethod frame for errors from internal metamethods.

15 years agoFFI: Don't propagate cdata objects.
Mike Pall [Fri, 26 Nov 2010 16:27:02 +0000 (17:27 +0100)] 
FFI: Don't propagate cdata objects.

15 years agoFFI: Add macros for consistent number to integer truncation.
Mike Pall [Fri, 26 Nov 2010 12:40:40 +0000 (13:40 +0100)] 
FFI: Add macros for consistent number to integer truncation.

15 years agoFFI: Add cdata object type.
Mike Pall [Fri, 26 Nov 2010 12:28:46 +0000 (13:28 +0100)] 
FFI: Add cdata object type.

15 years agoDisplay caller location in errors from metamethods.
Mike Pall [Fri, 26 Nov 2010 12:20:56 +0000 (13:20 +0100)] 
Display caller location in errors from metamethods.

15 years agoShrink slots for 'break' statement to help data-flow analysis.
Mike Pall [Thu, 25 Nov 2010 11:09:21 +0000 (12:09 +0100)] 
Shrink slots for 'break' statement to help data-flow analysis.

15 years agoImprove unrolling heuristics for non-looping inner loops.
Mike Pall [Thu, 25 Nov 2010 10:38:48 +0000 (11:38 +0100)] 
Improve unrolling heuristics for non-looping inner loops.

15 years agoSupport os.exit(status|true|false [,close]) (from Lua 5.2).
Mike Pall [Mon, 22 Nov 2010 21:39:06 +0000 (22:39 +0100)] 
Support os.exit(status|true|false [,close]) (from Lua 5.2).

15 years agoParse '\*' escape in strings (from Lua 5.2).
Mike Pall [Mon, 22 Nov 2010 21:22:12 +0000 (22:22 +0100)] 
Parse '\*' escape in strings (from Lua 5.2).

15 years agoTighter check on table.sort function compliance (from Lua 5.2).
Mike Pall [Fri, 19 Nov 2010 17:44:59 +0000 (18:44 +0100)] 
Tighter check on table.sort function compliance (from Lua 5.2).

15 years agoAdd support for "%g" character class in patterns (from Lua 5.2).
Mike Pall [Fri, 19 Nov 2010 17:37:10 +0000 (18:37 +0100)] 
Add support for "%g" character class in patterns (from Lua 5.2).

15 years agostring.format("%q", str) is now fully reversible (from Lua 5.2).
Mike Pall [Fri, 19 Nov 2010 17:22:08 +0000 (18:22 +0100)] 
string.format("%q", str) is now fully reversible (from Lua 5.2).

15 years agoParse hexadecimal escapes in strings (from Lua 5.2).
Mike Pall [Fri, 19 Nov 2010 16:39:33 +0000 (17:39 +0100)] 
Parse hexadecimal escapes in strings (from Lua 5.2).

15 years agoDisable Lua 5.2 features by default. See -DLUAJIT_ENABLE_LUA52COMPAT.
Mike Pall [Fri, 19 Nov 2010 16:00:11 +0000 (17:00 +0100)] 
Disable Lua 5.2 features by default. See -DLUAJIT_ENABLE_LUA52COMPAT.

15 years agoAdd support for __pairs and __ipairs metamethods (from Lua 5.2).
Mike Pall [Wed, 17 Nov 2010 23:23:24 +0000 (00:23 +0100)] 
Add support for __pairs and __ipairs metamethods (from Lua 5.2).

15 years agoAllow running C functions with coroutine.create(), too.
Mike Pall [Wed, 17 Nov 2010 19:07:55 +0000 (20:07 +0100)] 
Allow running C functions with coroutine.create(), too.

15 years agoAdd jit.os string.
Mike Pall [Tue, 16 Nov 2010 14:05:21 +0000 (15:05 +0100)] 
Add jit.os string.

15 years agoCleanup architecture, ABI and OS definitions.
Mike Pall [Tue, 16 Nov 2010 13:06:59 +0000 (14:06 +0100)] 
Cleanup architecture, ABI and OS definitions.

15 years agoAvoid using negative hex numbers with DynASM.
Mike Pall [Tue, 16 Nov 2010 12:41:58 +0000 (13:41 +0100)] 
Avoid using negative hex numbers with DynASM.

15 years agoSplit up extension/API docs into sub-pages.
Mike Pall [Tue, 9 Nov 2010 17:11:35 +0000 (18:11 +0100)] 
Split up extension/API docs into sub-pages.

15 years agoRename character type handling from lj_ctype* to lj_char*.
Mike Pall [Tue, 9 Nov 2010 11:09:54 +0000 (12:09 +0100)] 
Rename character type handling from lj_ctype* to lj_char*.

15 years agoFix conflict between loop branch inversion and HREF+NE/EQ merging.
Mike Pall [Fri, 5 Nov 2010 22:12:43 +0000 (23:12 +0100)] 
Fix conflict between loop branch inversion and HREF+NE/EQ merging.

15 years agoNumber parser shouldn't accept '0x' without hex digits.
Mike Pall [Tue, 2 Nov 2010 15:01:26 +0000 (16:01 +0100)] 
Number parser shouldn't accept '0x' without hex digits.

15 years agoFix parsing of hex floats.
Mike Pall [Mon, 1 Nov 2010 16:53:04 +0000 (17:53 +0100)] 
Fix parsing of hex floats.

15 years agoFix anchors in API docs.
Mike Pall [Mon, 1 Nov 2010 16:49:31 +0000 (17:49 +0100)] 
Fix anchors in API docs.

15 years agoFix collectgarbage("count") result if more than 2GB is in use.
Mike Pall [Mon, 25 Oct 2010 12:53:37 +0000 (14:53 +0200)] 
Fix collectgarbage("count") result if more than 2GB is in use.

Thanks to Tony Finch.

15 years agoReduce 32GB RLIMIT_DATA on FreeBSD/x64 to allocate low-2GB memory.
Mike Pall [Sat, 23 Oct 2010 14:31:27 +0000 (16:31 +0200)] 
Reduce 32GB RLIMIT_DATA on FreeBSD/x64 to allocate low-2GB memory.

Thanks to Tony Finch.

15 years agoAvoid compiler warning.
Mike Pall [Sat, 23 Oct 2010 13:28:28 +0000 (15:28 +0200)] 
Avoid compiler warning.

15 years agoPPC: Preserve RD during array resizing in BC_TSETM.
Mike Pall [Mon, 18 Oct 2010 14:12:27 +0000 (16:12 +0200)] 
PPC: Preserve RD during array resizing in BC_TSETM.

15 years agoFix recording of y = select(n, ...) for non-int indexes.
Mike Pall [Mon, 11 Oct 2010 19:52:22 +0000 (21:52 +0200)] 
Fix recording of y = select(n, ...) for non-int indexes.

15 years agoDecouple SLOAD type and optional conversion.
Mike Pall [Mon, 11 Oct 2010 19:13:37 +0000 (21:13 +0200)] 
Decouple SLOAD type and optional conversion.

15 years agox64: Fix type check for numbers in compiled code.
Mike Pall [Mon, 11 Oct 2010 16:03:25 +0000 (18:03 +0200)] 
x64: Fix type check for numbers in compiled code.

15 years agox64: Optimize internal/external tag conversion in lua_type().
Mike Pall [Mon, 11 Oct 2010 15:26:07 +0000 (17:26 +0200)] 
x64: Optimize internal/external tag conversion in lua_type().

15 years agoReorganize compatibility table in install docs.
Mike Pall [Mon, 11 Oct 2010 14:26:48 +0000 (16:26 +0200)] 
Reorganize compatibility table in install docs.

15 years agoFix external link in docs.
Mike Pall [Mon, 11 Oct 2010 13:29:12 +0000 (15:29 +0200)] 
Fix external link in docs.

15 years agoPPC: Update DynASM-generated file.
Mike Pall [Thu, 7 Oct 2010 00:24:57 +0000 (02:24 +0200)] 
PPC: Update DynASM-generated file.

PPC/e500v2 interpreter port is now feature-complete.

15 years agoPPC: Use ZERO register instead of extra load immediate.
Mike Pall [Thu, 7 Oct 2010 00:21:54 +0000 (02:21 +0200)] 
PPC: Use ZERO register instead of extra load immediate.

15 years agoPPC: Add coroutine.resume/wrap_aux/yield() fast functions.
Mike Pall [Thu, 7 Oct 2010 00:16:44 +0000 (02:16 +0200)] 
PPC: Add coroutine.resume/wrap_aux/yield() fast functions.

15 years agoPPC: Add string.sub() fast function.
Mike Pall [Wed, 6 Oct 2010 14:18:24 +0000 (16:18 +0200)] 
PPC: Add string.sub() fast function.

15 years agoPPC: Add string.rep/reverse/lower/upper() fast functions.
Mike Pall [Wed, 6 Oct 2010 14:17:07 +0000 (16:17 +0200)] 
PPC: Add string.rep/reverse/lower/upper() fast functions.

15 years agoPPC: Add string.len/byte/char() fast functions.
Mike Pall [Wed, 6 Oct 2010 14:11:02 +0000 (16:11 +0200)] 
PPC: Add string.len/byte/char() fast functions.

15 years agoPPC: Fix math.deg/rad() fast functions.
Mike Pall [Tue, 5 Oct 2010 17:39:07 +0000 (19:39 +0200)] 
PPC: Fix math.deg/rad() fast functions.

15 years agoPPC: Use own implementation for math.floor/ceil() fast functions.
Mike Pall [Tue, 5 Oct 2010 17:37:56 +0000 (19:37 +0200)] 
PPC: Use own implementation for math.floor/ceil() fast functions.

15 years agoPPC: Add math.ldexp/frexp/modf() fast functions.
Mike Pall [Tue, 5 Oct 2010 17:36:02 +0000 (19:36 +0200)] 
PPC: Add math.ldexp/frexp/modf() fast functions.