Mike Pall
889368e921
Get rid of the remaining silly cast macros from Lua.
2011-03-10 02:13:43 +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
06f99fc3df
Bump copyright date to 2011.
2011-01-09 17:12:53 +01:00
Mike Pall
05973ee440
FFI: Add C type management.
2010-12-05 00:11:35 +01:00
Mike Pall
32bfececc5
Release all memory when using the builtin allocator.
...
Blocks >128K are not kept in the segment list and were not destroyed.
2010-09-13 19:48:31 +02:00
Mike Pall
96957a4551
Turn some lua_State fields into 32 bit pointers.
...
lua_State now fits into one cache line on x64.
2010-09-09 12:28:17 +02:00
Mike Pall
420124372b
Switch to fast string hash.
2010-07-21 22:53:27 +02:00
Mike Pall
361266518c
Move free node pos to t->node[0].freetop. Saves 4 bytes in GCtab.
2010-03-22 15:05:37 +01:00
Mike Pall
37a3ca330f
Reorder various structs to reduce padding (thanks to /usr/bin/pahole).
2010-03-15 23:29:10 +01:00
Mike Pall
7e696124ec
Resize stack up to the true limit.
2010-03-01 05:51:04 +01:00
Mike Pall
8cc50cf6b1
Conditionally compile functions that are unused with JIT disabled.
2010-02-28 21:58:40 +01:00
Mike Pall
ec78d3177e
Correctly align and free allocated machine code areas.
...
Bump default mcode area size to 64K for x64.
2010-02-27 20:18:11 +01:00
Mike Pall
52b7651327
Place dynamically generated code near static code on x64.
2010-02-26 18:20:24 +01:00
Mike Pall
b95294572c
Move SIMD constants to jit_State to keep them in the low 4GB.
2010-02-24 23:17:17 +01:00
Mike Pall
c93138b59e
Major redesign of function call handling.
...
Drop call gates. Use function headers, dispatched like bytecodes.
Emit BC_FUNCF/BC_FUNCV bytecode at PC 0 for all Lua functions.
C functions and ASM fast functions get extra bytecodes.
Modify internal calling convention: new base in BASE (formerly in RA).
Can now use better C function wrapper semantics (dynamic on/off).
Prerequisite for call hooks with zero-overhead if disabled.
Prerequisite for compiling recursive calls.
Prerequisite for efficient 32/64 bit prototype guards.
2010-02-13 04:51:56 +01:00
Mike Pall
b2067236c5
Move dispatch tables out of GG_State struct.
2010-02-11 16:21:18 +01:00
Mike Pall
ab90b8fc2b
Switch to pre-initialized stacks. Drop frame clearing in interpreter.
2010-02-11 01:21:40 +01:00
Mike Pall
055396a69d
Force error if lua_newstate() is used in 64 bit mode.
2010-01-24 15:50:59 +01:00
Mike Pall
4e39597ba6
Add some sanity checks for allocator in 64 bit mode.
2010-01-18 01:32:33 +01:00
Mike Pall
a33204ae5e
Fix 32/64 bit portability issue with upval->v.
2010-01-09 21:11:35 +01:00
Mike Pall
4d9be5b8f8
Bump all copyright dates to 2010.
2010-01-09 14:28:11 +01:00
Mike Pall
24429ed1f5
Fix alloc/free sizes of internal GCRef arrays.
2009-12-29 04:36:35 +01:00
Mike Pall
bc47063708
Use fastcall for remaining 1-arg/2-arg calls from interpreter.
...
Simplifies conversion to x64 calling conventions.
2009-12-27 17:42:41 +01:00
Mike Pall
6adab430af
Adapt primary inbound calls in x64 interpreter.
...
Change argument order for lj_vm_cpcall() to simplify x64 interpreter.
2009-12-17 22:08:20 +01:00
Mike Pall
55b1695971
RELEASE LuaJIT-2.0.0-beta1
2009-12-08 19:46:35 +01:00