Mike Pall
635371c212
FFI: Add unwind definitions for lj_vm_ffi_call.
...
Adds exception interoperability for C/C++ functions called via FFI
from the interpreter.
2011-11-12 01:16:10 +01:00
Mike Pall
bec4d20fb6
PPC: Fix write barrier in USETV/USETS.
2011-10-25 00:30:41 +02:00
Mike Pall
96d8611d1b
PPC: Fix/improve interpreter/JIT integration.
...
Switch to per-trace exit stubs.
Drop register holding current trace number.
2011-10-24 16:24:47 +02:00
Mike Pall
1a899ff671
PPC: Fix GC barrier for TSETM.
2011-09-14 16:03:02 +02:00
Mike Pall
ae3317b186
PPC: Interpreter/JIT integration.
2011-09-05 20:22:55 +02:00
Mike Pall
bab2f0efae
PPC: Fix or remove assembler helper functions.
2011-09-05 18:34:11 +02:00
Mike Pall
690ff909f5
PPC: More interpreter tuning. Use y-bit for branch predictions.
2011-09-05 18:30:36 +02:00
Mike Pall
d84207b8b6
PPC: Save/restore cr2, cr3 and cr4 when entering/leaving VM.
2011-08-10 21:56:10 +02:00
Mike Pall
28b98acd75
PPC: Tune and reschedule interpreter for PPC/e300.
2011-08-10 20:28:14 +02:00
Mike Pall
4008b351f4
PPC: Add machine-specific part of FFI.
2011-08-01 18:59:16 +02:00
Mike Pall
26106759d4
PPC: Fix floor/ceil for dual-number mode.
2011-07-25 10:06:06 +02:00
Mike Pall
551f09cebd
PPC: Add dual-number mode interpreter. Enable by default.
2011-07-25 00:18:20 +02:00
Mike Pall
ca8dadb328
PPC: Add dual-number mode interpreter.
2011-07-13 21:36:17 +02:00
Mike Pall
0239a56d37
PPC: Add build rules for PPC interpreter (non-functional, yet).
2011-07-03 15:19:34 +02:00
Mike Pall
31d566428f
From Lua 5.2: __len for tables. Needs -DLUAJIT_ENABLE_LUA52COMPAT.
2011-06-20 20:45:41 +02:00
Mike Pall
a175754ab7
PPC: Add lj_vm_floor which is callable from C.
2011-06-05 23:36:49 +02:00
Mike Pall
1fa0cc09b3
PPC: Fix L->status for resume after yield.
2011-04-13 02:28:25 +02:00
Mike Pall
fa5cd010e8
Add support for tailcalls from internal C functions.
...
PPC: Fix __call metamethod for tailcalls.
2011-04-12 19:13:11 +02:00
Mike Pall
f69524f7f1
PPC: Misc. fixes for interpreter.
2011-04-10 17:04:10 +02:00
Mike Pall
959683c77c
PPC: Minor cleanups of interpreter.
2011-04-04 02:00:38 +02:00
Mike Pall
0622ad9adc
Fix comments for BC_ITERN.
2011-01-26 19:55:55 +01:00
Mike Pall
8396c3cdbc
PPC: Fix ipairs() for keys in the hash part.
2011-01-20 12:25:56 +01:00
Mike Pall
06f99fc3df
Bump copyright date to 2011.
2011-01-09 17:12:53 +01:00
Mike Pall
fb0a18ca0b
FFI: Add support for calling C functions.
2011-01-06 23:30:04 +01:00
Mike Pall
461bf77331
FFI: Parse complex and 64 bit integer literals.
2010-12-24 01:31:39 +01:00
Mike Pall
57cd5026eb
Disable Lua 5.2 features by default. See -DLUAJIT_ENABLE_LUA52COMPAT.
2010-11-19 17:00:11 +01:00
Mike Pall
ba602c9578
Add support for __pairs and __ipairs metamethods (from Lua 5.2).
2010-11-18 00:23:24 +01:00
Mike Pall
1de05d1147
Avoid using negative hex numbers with DynASM.
2010-11-16 13:41:58 +01:00
Mike Pall
65dec38e44
PPC: Preserve RD during array resizing in BC_TSETM.
2010-10-18 16:12:27 +02:00
Mike Pall
a7caa4894c
PPC: Use ZERO register instead of extra load immediate.
2010-10-07 02:21:54 +02:00
Mike Pall
9d201c972a
PPC: Add coroutine.resume/wrap_aux/yield() fast functions.
2010-10-07 02:16:44 +02:00
Mike Pall
9f14e03d6e
PPC: Add string.sub() fast function.
2010-10-06 16:18:24 +02:00
Mike Pall
b4f3d4525e
PPC: Add string.rep/reverse/lower/upper() fast functions.
2010-10-06 16:17:07 +02:00
Mike Pall
82b2f6156a
PPC: Add string.len/byte/char() fast functions.
2010-10-06 16:11:02 +02:00
Mike Pall
443d28bc9a
PPC: Fix math.deg/rad() fast functions.
2010-10-05 19:39:07 +02:00
Mike Pall
8f5efb2c43
PPC: Use own implementation for math.floor/ceil() fast functions.
2010-10-05 19:37:56 +02:00
Mike Pall
793fb4a9ad
PPC: Add math.ldexp/frexp/modf() fast functions.
2010-10-05 19:36:02 +02:00
Mike Pall
52b67fd3ea
PPC: Add math.abs/deg/rad/min/max() fast functions.
2010-10-05 19:35:04 +02:00
Mike Pall
3418512862
PPC: Remove pointless optimization in BC_UNM.
2010-10-05 19:27:33 +02:00
Mike Pall
14cd10e322
PPC: Add table.getn() fast function.
2010-10-05 01:47:39 +02:00
Mike Pall
2f5f6290e7
PPC: Add tonumber() and tostring() fast functions.
2010-10-05 01:46:23 +02:00
Mike Pall
08ac8b0c96
PPC: Add getmetatable(), setmetatable() and rawget() fast functions.
2010-10-05 01:41:51 +02:00
Mike Pall
8b096c5d08
PPC: Add assert() and type() fast functions.
2010-10-05 01:39:48 +02:00
Mike Pall
e396bef7d8
PPC: Add pcall() and xpcall() fast functions.
2010-10-01 23:47:29 +02:00
Mike Pall
05099f0764
PPC: Add ipairs() fast function and its iterator.
2010-10-01 23:45:56 +02:00
Mike Pall
61d498be87
PPC: Add next() and pairs() fast functions.
2010-10-01 23:43:39 +02:00
Mike Pall
dcf006bfa2
PPC: Add BC_ITERN and BC_ISNEXT.
2010-10-01 01:44:02 +02:00
Mike Pall
ac76493df1
Specialize bytecode for pairs()/next() iterator. Speedup: 3.5x.
...
Parser predict pairs/next and emits specialized bytecode.
Bytecode is descpecialized at runtime if the prediction was wrong.
Store slot index in hidden control var to avoid key lookups.
2010-09-30 21:55:32 +02:00
Mike Pall
c0a8f5fb32
PPC: Add dispatch to fast function fallback handlers.
2010-09-30 02:58:29 +02:00
Mike Pall
4afff973a4
PPC: Add bit.* fast functions.
2010-09-30 02:56:54 +02:00