Commit Graph

1071 Commits

Author SHA1 Message Date
Mike Pall
5b06b298a2 ARM: Add binary arithmetic instructions. 2011-03-30 21:56:05 +02:00
Mike Pall
a0e4711055 ARM: Add basic loop and branch instructions. 2011-03-30 21:54:33 +02:00
Mike Pall
7b0a125cf7 ARM: Add basic unary bytecode instructions. 2011-03-29 02:31:47 +02:00
Mike Pall
ca494b72a9 ARM: Add support to call Lua functions and return from them. 2011-03-29 02:30:41 +02:00
Mike Pall
c04a252a06 ARM: Add support to call C functions. 2011-03-29 02:29:27 +02:00
Mike Pall
cff08b2315 ARM: Add entry and exit points into VM. Add type check macros. 2011-03-29 02:24:35 +02:00
Mike Pall
3bcb48c6a1 ARM: Add frame unwind info for assembler part. 2011-03-29 02:23:05 +02:00
Mike Pall
71f976b02e ARM: Add instruction/call decode + dispatch macros. 2011-03-29 02:26:09 +02:00
Mike Pall
98e3c8a8ff ARM: Add register assignments, type definitions and stack layout. 2011-03-29 02:18:36 +02:00
Mike Pall
4c9a10f3ad Avoid compiler warning. 2011-03-28 19:22:17 +02:00
Mike Pall
492efb7e7e Clean up DynASM glue macros. Thanks to Josh Haberman. 2011-03-28 15:06:30 +02:00
Mike Pall
32aef8aee4 ARM: Add skeleton for ARM interpreter. 2011-03-26 18:42:41 +01:00
Mike Pall
b6ed984843 ARM: Add support for ARM relocations to buildvm. 2011-03-26 18:40:11 +01:00
Mike Pall
156bf15783 ARM: Add DynASM ARM module and encoding engine. 2011-03-23 01:25:14 +01:00
Mike Pall
7088abce8f DUALNUM: Fix narrowing of unary minus. 2011-03-19 17:46:10 +01:00
Mike Pall
a1c887e3b9 Fix data-flow analysis for BC_ITERC. 2011-03-19 17:30:15 +01:00
Mike Pall
642ae06916 x64: Use external unwinding for lua_yield(). 2011-03-18 23:38:05 +01:00
Mike Pall
063182d79c FFI: Fix marking of ffi.gc() finalizer table. 2011-03-17 17:31:48 +01:00
Mike Pall
ac3b1dcfc5 x64: Workaround for libgcc unwind bug (still present in RHEL 5.5). 2011-03-17 16:06:41 +01:00
Mike Pall
6299485000 DUALNUM: Narrow result of math.floor() and math.ceil(). 2011-03-15 18:15:42 +01:00
Mike Pall
dcbae09b1d DUALNUM: Narrow unary minus. 2011-03-15 18:14:18 +01:00
Mike Pall
a226fb4cc7 FFI: Force snapshot after C call to preserve semantics. 2011-03-15 14:56:42 +01:00
Mike Pall
7fb1075903 DUALNUM: Add integer variant of MIN/MAX. 2011-03-11 23:28:46 +01:00
Mike Pall
889368e921 Get rid of the remaining silly cast macros from Lua. 2011-03-10 02:13:43 +01:00
Mike Pall
bfce3c1127 DUALNUM: Handle integer type in JIT compiler. 2011-03-10 01:57:24 +01:00
Mike Pall
3f26e3a89d FFI: Fix and optimize recording of cdata[cdata]. 2011-03-10 01:41:58 +01:00
Mike Pall
1c9981ae4c x86/x64: Fix code generation for fused IR_MUL/IR_MULOV. 2011-03-10 01:09:18 +01:00
Mike Pall
a127eaf8d2 FFI: Fix x86 code generation for ffi.string(). 2011-03-10 00:57:02 +01:00
Mike Pall
30cc4d3bba Fix handling of err_loc() within cpcall frames. 2011-03-09 22:39:17 +01:00
Mike Pall
0125ee8211 DUALNUM: Add extra assertions to interpreter. 2011-03-09 22:38:53 +01:00
Mike Pall
449cee405c Fix code generation for bit.bnot(). 2011-03-07 22:11:01 +01:00
Mike Pall
54978e481b DUALNUM: Make overflow guards weak. Add IR_USE and IR_MULOV. 2011-03-07 20:21:38 +01:00
Mike Pall
a30f58b54b DUALNUM: Fix x87 code for BC_ISEQN/BC_ISNEN. 2011-03-07 20:12:39 +01:00
Mike Pall
8eb09fe820 Suppress recording of retried fast functions. 2011-03-07 20:03:38 +01:00
Mike Pall
f29a9d4341 Fix narrowing of POW. 2011-03-03 17:29:09 +01:00
Mike Pall
1cb58fb7bb Fix code generation for Intel Atom in x64 mode. 2011-03-03 00:49:45 +01:00
Mike Pall
6c43767c23 FFI: Resolve ld script redirection in ffi.load(). 2011-03-01 12:31:16 +01:00
Mike Pall
e1aa8d0d97 FFI: Fix compiled ffi.string() semantics. 2011-02-28 19:47:51 +01:00
Mike Pall
83a37aeca7 FFI: Add ffi.gc() function for finalization of cdata objects. 2011-02-28 16:48:13 +01:00
Mike Pall
cead25f928 DUALNUM: Handle integer type in x86/x64 interpreter and libraries. 2011-02-27 01:36:59 +01:00
Mike Pall
c031d4b6a0 DUALNUM: Handle integer type in FFI. 2011-02-27 01:31:22 +01:00
Mike Pall
d437086c5a x64: Improve accuracy of x^-k. 2011-02-25 11:47:34 +01:00
Mike Pall
b90d80d80a Fix table.maxn(). 2011-02-23 14:52:50 +01:00
Mike Pall
a720db409d FFI: Record calls to functions with void results. 2011-02-23 00:28:49 +01:00
Mike Pall
4c97cc7730 Eliminate dead slots in snapshots using bytecode data-flow analysis. 2011-02-22 22:39:12 +01:00
Mike Pall
8d0b073ff0 From Lua 5.2: Support load(string). 2011-02-20 21:17:49 +01:00
Mike Pall
2bae11a49a From Lua 5.2: fp:read("*L"). 2011-02-20 21:07:19 +01:00
Mike Pall
c823e26b8b From Lua 5.2: table.unpack(). Needs -DLUAJIT_ENABLE_LUA52COMPAT. 2011-02-20 20:53:09 +01:00
Mike Pall
baef199ece From Lua 5.2: Add package.searchpath().
Thanks to F. Perrad.
2011-02-20 20:48:13 +01:00
Mike Pall
f83d58d6fb From Lua 5.2: Empty statement. Needs -DLUAJIT_ENABLE_LUA52COMPAT. 2011-02-20 20:38:36 +01:00