]>
git.ipfire.org Git - thirdparty/LuaJIT.git/log
Mike Pall [Sat, 26 Mar 2011 17:42:41 +0000 (18:42 +0100)]
ARM: Add skeleton for ARM interpreter.
Mike Pall [Sat, 26 Mar 2011 17:40:11 +0000 (18:40 +0100)]
ARM: Add support for ARM relocations to buildvm.
Mike Pall [Wed, 23 Mar 2011 00:25:14 +0000 (01:25 +0100)]
ARM: Add DynASM ARM module and encoding engine.
Mike Pall [Sat, 19 Mar 2011 16:46:10 +0000 (17:46 +0100)]
DUALNUM: Fix narrowing of unary minus.
Mike Pall [Sat, 19 Mar 2011 16:30:15 +0000 (17:30 +0100)]
Fix data-flow analysis for BC_ITERC.
Mike Pall [Fri, 18 Mar 2011 22:38:05 +0000 (23:38 +0100)]
x64: Use external unwinding for lua_yield().
Mike Pall [Thu, 17 Mar 2011 16:31:48 +0000 (17:31 +0100)]
FFI: Fix marking of ffi.gc() finalizer table.
Mike Pall [Thu, 17 Mar 2011 15:05:04 +0000 (16:05 +0100)]
x64: Workaround for libgcc unwind bug (still present in RHEL 5.5).
Mike Pall [Tue, 15 Mar 2011 17:15:42 +0000 (18:15 +0100)]
DUALNUM: Narrow result of math.floor() and math.ceil().
Mike Pall [Tue, 15 Mar 2011 16:56:55 +0000 (17:56 +0100)]
DUALNUM: Narrow unary minus.
Mike Pall [Tue, 15 Mar 2011 13:56:42 +0000 (14:56 +0100)]
FFI: Force snapshot after C call to preserve semantics.
Mike Pall [Fri, 11 Mar 2011 22:28:46 +0000 (23:28 +0100)]
DUALNUM: Add integer variant of MIN/MAX.
Mike Pall [Thu, 10 Mar 2011 01:13:43 +0000 (02:13 +0100)]
Get rid of the remaining silly cast macros from Lua.
Mike Pall [Thu, 10 Mar 2011 00:57:24 +0000 (01:57 +0100)]
DUALNUM: Handle integer type in JIT compiler.
Mike Pall [Thu, 10 Mar 2011 00:41:58 +0000 (01:41 +0100)]
FFI: Fix and optimize recording of cdata[cdata].
Mike Pall [Thu, 10 Mar 2011 00:09:18 +0000 (01:09 +0100)]
x86/x64: Fix code generation for fused IR_MUL/IR_MULOV.
Mike Pall [Wed, 9 Mar 2011 23:57:02 +0000 (00:57 +0100)]
FFI: Fix x86 code generation for ffi.string().
Mike Pall [Wed, 9 Mar 2011 21:39:17 +0000 (22:39 +0100)]
Fix handling of err_loc() within cpcall frames.
Mike Pall [Wed, 9 Mar 2011 21:38:53 +0000 (22:38 +0100)]
DUALNUM: Add extra assertions to interpreter.
Mike Pall [Mon, 7 Mar 2011 21:11:01 +0000 (22:11 +0100)]
Fix code generation for bit.bnot().
Mike Pall [Mon, 7 Mar 2011 19:21:38 +0000 (20:21 +0100)]
DUALNUM: Make overflow guards weak. Add IR_USE and IR_MULOV.
Mike Pall [Mon, 7 Mar 2011 19:12:39 +0000 (20:12 +0100)]
DUALNUM: Fix x87 code for BC_ISEQN/BC_ISNEN.
Mike Pall [Mon, 7 Mar 2011 19:03:38 +0000 (20:03 +0100)]
Suppress recording of retried fast functions.
Mike Pall [Thu, 3 Mar 2011 16:29:09 +0000 (17:29 +0100)]
Fix narrowing of POW.
Mike Pall [Wed, 2 Mar 2011 23:49:45 +0000 (00:49 +0100)]
Fix code generation for Intel Atom in x64 mode.
Mike Pall [Tue, 1 Mar 2011 11:31:16 +0000 (12:31 +0100)]
FFI: Resolve ld script redirection in ffi.load().
Mike Pall [Mon, 28 Feb 2011 18:46:55 +0000 (19:46 +0100)]
FFI: Fix compiled ffi.string() semantics.
Mike Pall [Mon, 28 Feb 2011 15:48:13 +0000 (16:48 +0100)]
FFI: Add ffi.gc() function for finalization of cdata objects.
Mike Pall [Sun, 27 Feb 2011 00:36:59 +0000 (01:36 +0100)]
DUALNUM: Handle integer type in x86/x64 interpreter and libraries.
Mike Pall [Sun, 27 Feb 2011 00:31:22 +0000 (01:31 +0100)]
DUALNUM: Handle integer type in FFI.
Mike Pall [Fri, 25 Feb 2011 10:46:29 +0000 (11:46 +0100)]
x64: Improve accuracy of x^-k.
Mike Pall [Wed, 23 Feb 2011 13:52:50 +0000 (14:52 +0100)]
Fix table.maxn().
Mike Pall [Tue, 22 Feb 2011 23:28:49 +0000 (00:28 +0100)]
FFI: Record calls to functions with void results.
Mike Pall [Tue, 22 Feb 2011 21:39:12 +0000 (22:39 +0100)]
Eliminate dead slots in snapshots using bytecode data-flow analysis.
Mike Pall [Sun, 20 Feb 2011 20:17:49 +0000 (21:17 +0100)]
From Lua 5.2: Support load(string).
Mike Pall [Sun, 20 Feb 2011 20:07:19 +0000 (21:07 +0100)]
From Lua 5.2: fp:read("*L").
Mike Pall [Sun, 20 Feb 2011 19:53:09 +0000 (20:53 +0100)]
From Lua 5.2: table.unpack(). Needs -DLUAJIT_ENABLE_LUA52COMPAT.
Mike Pall [Sun, 20 Feb 2011 19:48:13 +0000 (20:48 +0100)]
From Lua 5.2: Add package.searchpath().
Thanks to F. Perrad.
Mike Pall [Sun, 20 Feb 2011 19:38:36 +0000 (20:38 +0100)]
From Lua 5.2: Empty statement. Needs -DLUAJIT_ENABLE_LUA52COMPAT.
Mike Pall [Sun, 20 Feb 2011 19:33:00 +0000 (20:33 +0100)]
From Lua 5.2: coroutine.running(). Needs -DLUAJIT_ENABLE_LUA52COMPAT.
Mike Pall [Sun, 20 Feb 2011 01:13:32 +0000 (02:13 +0100)]
FFI: Fix recording of userdata conversions.
Mike Pall [Sat, 19 Feb 2011 23:18:46 +0000 (00:18 +0100)]
FFI: Fix 64 bit to 32 bit truncations on x64.
Mike Pall [Sat, 19 Feb 2011 22:04:16 +0000 (23:04 +0100)]
FFI: Fix recording of ffi.copy() and ffi.fill().
Mike Pall [Sat, 19 Feb 2011 11:56:12 +0000 (12:56 +0100)]
FFI: Improve conversion error messages.
Mike Pall [Fri, 18 Feb 2011 19:35:44 +0000 (20:35 +0100)]
FFI: Fix docs about C bool -> Lua boolean conversion.
Thanks to M. Kottman.
Mike Pall [Wed, 16 Feb 2011 23:44:14 +0000 (00:44 +0100)]
DUALNUM: Add integer type to core VM.
Mike Pall [Wed, 16 Feb 2011 23:42:57 +0000 (00:42 +0100)]
DUALNUM: Add build infrastructure.
Note: DUALNUM is disabled by default and won't work yet.
Mike Pall [Wed, 16 Feb 2011 22:52:18 +0000 (23:52 +0100)]
FFI: Fix management of C library handles for default namespace.
Mike Pall [Tue, 15 Feb 2011 23:38:23 +0000 (00:38 +0100)]
Fix error handling within metamethods. Special-case FFI mm.
Mike Pall [Tue, 15 Feb 2011 00:02:08 +0000 (01:02 +0100)]
Add workaround for lj_meta_tset() newkey inconsistency.
Mike Pall [Mon, 14 Feb 2011 22:25:18 +0000 (23:25 +0100)]
PPC: Disable FFI due to NYI: comparisons and calls.
Mike Pall [Mon, 14 Feb 2011 22:02:16 +0000 (23:02 +0100)]
Fix type mismatch in XSTORE forwarding.
Mike Pall [Fri, 11 Feb 2011 15:28:37 +0000 (16:28 +0100)]
RELEASE LuaJIT-2.0.0-beta6
Mike Pall [Fri, 11 Feb 2011 15:22:58 +0000 (16:22 +0100)]
FFI: Disable unused code for some build modes.
Mike Pall [Fri, 11 Feb 2011 14:52:31 +0000 (15:52 +0100)]
Update changelog.
Mike Pall [Fri, 11 Feb 2011 12:50:01 +0000 (13:50 +0100)]
Cleanup of docs.
Mike Pall [Fri, 11 Feb 2011 00:21:46 +0000 (01:21 +0100)]
FFI: Finish FFI docs.
Mike Pall [Thu, 10 Feb 2011 02:12:09 +0000 (03:12 +0100)]
FFI: Finish docs on FFI semantics. Phew.
Mike Pall [Thu, 10 Feb 2011 02:10:38 +0000 (03:10 +0100)]
Fix various HTML errors in the docs.
Mike Pall [Wed, 9 Feb 2011 00:26:02 +0000 (01:26 +0100)]
FFI: Add more docs on FFI semantics.
Mike Pall [Tue, 8 Feb 2011 00:20:53 +0000 (01:20 +0100)]
FFI: Document current FFI implementation status.
Mike Pall [Tue, 8 Feb 2011 00:00:47 +0000 (01:00 +0100)]
Fix bytecode optimization of and/or operators.
Mike Pall [Mon, 7 Feb 2011 23:09:33 +0000 (00:09 +0100)]
FFI: Record ffi.abi().
Mike Pall [Mon, 7 Feb 2011 22:49:27 +0000 (23:49 +0100)]
FFI: Record ffi.copy() and ffi.fill().
Mike Pall [Mon, 7 Feb 2011 22:42:51 +0000 (23:42 +0100)]
FFI: Fix recording of pointer arithmetic.
Mike Pall [Mon, 7 Feb 2011 20:59:25 +0000 (21:59 +0100)]
Add IR_XBAR, a barrier against XLOAD/XSTORE optimizations.
Mike Pall [Mon, 7 Feb 2011 20:44:01 +0000 (21:44 +0100)]
Improve static assertion macro.
Mike Pall [Mon, 7 Feb 2011 16:13:14 +0000 (17:13 +0100)]
FFI: Allow cdata types for integer arguments of ffi.* functions.
Mike Pall [Mon, 7 Feb 2011 15:41:51 +0000 (16:41 +0100)]
FFI: Fix handling of enum arguments to C calls.
Mike Pall [Sun, 6 Feb 2011 11:46:18 +0000 (12:46 +0100)]
FFI: Perform stricter checks in ffi.cast(). Record ffi.cast().
Mike Pall [Sun, 6 Feb 2011 11:23:58 +0000 (12:23 +0100)]
FFI: Simplify and fix tonumber() for cdata objects.
Mike Pall [Sat, 5 Feb 2011 23:45:39 +0000 (00:45 +0100)]
Strength-reduce 32 to 64 bit widening for XLOAD U8/U16 inputs.
Mike Pall [Sat, 5 Feb 2011 22:01:10 +0000 (23:01 +0100)]
FFI: Limit number of arguments for recorded calls.
Mike Pall [Sat, 5 Feb 2011 20:50:15 +0000 (21:50 +0100)]
FFI: Record simple C function calls.
Only handles cdecl and fixarg C functions.
Doesn't handle pass-by-value aggregates.
Doesn't handle 64 bit args/returns on 32 bit CPUs.
Mike Pall [Sat, 5 Feb 2011 17:54:08 +0000 (18:54 +0100)]
FFI: Optimize snapshots for cdata comparisons.
Mike Pall [Sat, 5 Feb 2011 15:32:08 +0000 (16:32 +0100)]
Fix metamethod comparisons triggered by BC_ISEQP/BC_ISNEP.
Mike Pall [Sat, 5 Feb 2011 13:16:16 +0000 (14:16 +0100)]
FFI: Record C library namespace lookups.
Mike Pall [Sat, 5 Feb 2011 13:09:50 +0000 (14:09 +0100)]
Treat metatables of special userdata objects as immutable.
Mike Pall [Sat, 5 Feb 2011 00:05:56 +0000 (01:05 +0100)]
FFI: Record ffi.string().
Mike Pall [Sat, 5 Feb 2011 00:04:41 +0000 (01:04 +0100)]
FFI: Avoid intermediate boxes for tonumber(), too.
Mike Pall [Thu, 3 Feb 2011 19:10:13 +0000 (20:10 +0100)]
FFI: Disable MUL => BSHL FOLD rule on 32 bit.
Mike Pall [Thu, 3 Feb 2011 03:13:51 +0000 (04:13 +0100)]
FFI: Rename IR_CNEWP to IR_CNEWI and use it to box 64 bit integers.
Generates smaller IR and DCE eliminates many intermediate boxes.
Needs allocation sinking to eliminate the boxes kept alive by PHIs.
Mike Pall [Wed, 2 Feb 2011 20:33:11 +0000 (21:33 +0100)]
Rename IR_POWI to IR_POW.
Mike Pall [Wed, 2 Feb 2011 20:25:43 +0000 (21:25 +0100)]
FFI: Add basic FOLD rules for 64 bit integer DIV, MOD and POWI.
Mike Pall [Wed, 2 Feb 2011 19:53:10 +0000 (20:53 +0100)]
FFI: Record 64 bit integer divide and modulo.
Mike Pall [Wed, 2 Feb 2011 01:38:59 +0000 (02:38 +0100)]
Use names defined in lualib.h for library registration.
Mike Pall [Wed, 2 Feb 2011 01:31:59 +0000 (02:31 +0100)]
Fix OSX build to work with newer ld64 versions.
Mike Pall [Wed, 2 Feb 2011 01:29:37 +0000 (02:29 +0100)]
Add SPLIT pass to split 64 bit IR instructions for 32 bit CPUs.
Add generic HIOP instruction for extra backend functionality.
Add support for HIOP to x86 backend.
Use POWI for 64 bit integer x^k, too.
POWI is lowered to a call by SPLIT or the x64 backend.
Mike Pall [Tue, 1 Feb 2011 18:28:03 +0000 (19:28 +0100)]
Add SSE3 CPU feature detection.
Mike Pall [Sat, 29 Jan 2011 18:47:37 +0000 (19:47 +0100)]
FFI: Limit index range for complex numbers.
Mike Pall [Sat, 29 Jan 2011 12:04:16 +0000 (13:04 +0100)]
FFI: Implement POSIX/x64 struct-by-value calling conventions.
Mike Pall [Fri, 28 Jan 2011 01:17:35 +0000 (02:17 +0100)]
Fix 64 bit case of (SUB x x) and (BXOR x x) FOLD rules.
Mike Pall [Fri, 28 Jan 2011 01:15:30 +0000 (02:15 +0100)]
FFI: Split up 64 bit x^k helper into signed/unsigned.
Mike Pall [Thu, 27 Jan 2011 15:28:24 +0000 (16:28 +0100)]
FFI: Fix various issues with C type table reallocations.
Mike Pall [Thu, 27 Jan 2011 15:07:02 +0000 (16:07 +0100)]
FFI: Fix symbol name redirection.
Mike Pall [Wed, 26 Jan 2011 20:46:02 +0000 (21:46 +0100)]
FFI: Move code for cdata arithmetic to lj_carith.c.
Mike Pall [Wed, 26 Jan 2011 20:14:58 +0000 (21:14 +0100)]
FFI: Record cdata indexing with integer cdata.
Mike Pall [Wed, 26 Jan 2011 20:12:54 +0000 (21:12 +0100)]
FFI: Allow cdata indexing with integer cdata.
Mike Pall [Wed, 26 Jan 2011 18:55:55 +0000 (19:55 +0100)]
Fix comments for BC_ITERN.
Mike Pall [Wed, 26 Jan 2011 13:18:12 +0000 (14:18 +0100)]
FFI: Convert enum return value of C function to underlying type.