Mike Pall
a9d4543601
Merge branch 'master' into v2.1
2014-01-16 23:18:34 +01:00
Mike Pall
ef59e54820
Bump copyright date to 2014.
2014-01-16 23:10:16 +01:00
Mike Pall
d0b48ec996
Merge branch 'master' into v2.1
2013-10-14 19:34:06 +02:00
Mike Pall
5d25645a21
FFI: Rehash finalizer table after GC cycle, if needed.
2013-10-14 19:31:24 +02:00
Mike Pall
4dce22c40d
Add low-overhead profiler. Part 1: interpreter, low-level C API.
2013-09-02 01:49:19 +02:00
Mike Pall
517500ba48
Save currently executing lua_State in g->cur_L.
...
This is only a good approximation due to deficiencies in the design of
the Lua/C API. It indicates _some_ valid state that is/was executing.
Also reorder L->cframe stores to achieve a synchronously consistent state.
2013-08-30 23:38:17 +02:00
Mike Pall
5120240b77
Use g->jit_base for on/off-trace detection.
2013-08-26 18:28:58 +02:00
Mike Pall
625ffca739
Refactor raw object to pointer or string conversions.
2013-05-13 01:23:33 +02:00
Mike Pall
7950894d70
ARM: Rearrange global_State to satisfy imm12 encoding constraints.
2013-03-13 17:12:23 +01:00
Mike Pall
9ec869b362
String buffer refactoring, part 4.
...
Add lua_State pointer to SBuf for buffer resizing.
2013-02-28 13:43:37 +01:00
Mike Pall
116cdd7e9a
String buffer refactoring, part 2.
...
Switch to pointers for start/pos/end of buffer.
Abstract out some buffer writers.
2013-02-27 21:28:28 +01:00
Mike Pall
28cfcf7744
String buffer refactoring, part 1.
...
Move string buffer handling to lj_buf.*.
Use common buffer resizing function.
2013-02-27 17:29:35 +01:00
Mike Pall
b359ce804b
Remove obsolete non-truncating number to integer conversions.
2013-02-23 01:19:00 +01:00
Mike Pall
4a44c4ff69
Bump copyright date to 2013.
2013-02-11 12:54:48 +01:00
Mike Pall
23932a6c8b
Use 0/1 macro for Lua 5.2 compatibility.
2012-09-12 11:20:47 +02:00
Mike Pall
0648fd47cb
FFI: Handle __pairs/__ipairs metamethods for cdata objects.
2012-09-03 21:11:08 +02:00
Mike Pall
3636a720a5
Turn loads from immutable upvalues into constants.
2012-07-20 18:54:52 +02:00
Mike Pall
f20ff8a30d
Avoid compiler warnings about redefined C++ keywords.
2012-07-09 16:02:05 +02:00
Mike Pall
17d3fc47f3
Avoid pesky compiler warnings about C++ keywords (eh?).
2012-07-03 13:19:32 +02:00
Mike Pall
8b71ab1080
FFI: Check for __new metamethod when calling a constructor.
2012-06-20 18:28:25 +02:00
Mike Pall
10ef109eef
Bump copyright date to 2012.
2012-01-23 22:42:42 +01:00
Mike Pall
cecbe3c15f
Specialize to prototype for non-monomorphic functions.
...
Solves the trace-explosion problem with closure-heavy programming.
2011-11-20 19:16:40 +01: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
4994fcc32c
Add support for bytecode loading/saving.
2011-06-13 01:04:11 +02:00
Mike Pall
b6a7fc5330
Cleanup prototype flags.
2011-06-09 13:54:40 +02:00
Mike Pall
8c32b38ca3
Flatten and compress in-memory debug info (saves ~70%).
2011-06-09 01:27:37 +02:00
Mike Pall
1ac71f1fa8
ARM: Add LJ_SOFTFP define. Add support for soft-float slot handling.
2011-05-16 02:38:07 +02:00
Mike Pall
87553d9e77
Avoid name clash with Windows MM_MAX define.
2011-05-08 22:31:03 +02:00
Mike Pall
89022b4c3e
Use lj_vm_tobit() on targets without FPU.
2011-04-10 16:58:22 +02:00
Mike Pall
bfce3c1127
DUALNUM: Handle integer type in JIT compiler.
2011-03-10 01:57:24 +01:00
Mike Pall
03946ac978
DUALNUM: Add integer type to core VM.
2011-02-17 00:44:14 +01:00
Mike Pall
0ec7f5ed92
FFI: Add 64 bit integer comparisons and pointer comparisons.
2011-01-13 02:35:29 +01:00
Mike Pall
ddf6596333
FFI: Add ffi.load() and ffi.C default namespace.
2011-01-10 03:43:18 +01:00
Mike Pall
06f99fc3df
Bump copyright date to 2011.
2011-01-09 17:12:53 +01:00
Mike Pall
0005b2c2b9
Add support for uint64_t <-> FP conversions to x64 backend.
2011-01-02 18:24:31 +01:00
Mike Pall
dc4b82c33d
Add lj_num2u64 for number to uint64_t conversion.
2010-12-31 00:46:29 +01:00
Mike Pall
44935dae0d
FFI: Add 64 bit integer arithmetic.
2010-12-25 22:54:25 +01:00
Mike Pall
100a00dd40
Undo ef8c2648
.
2010-12-03 16:58:19 +01:00
Mike Pall
ef8c264873
FFI: Add macros for consistent number to integer truncation.
2010-11-26 13:40:40 +01:00
Mike Pall
2fd1292955
FFI: Add cdata object type.
2010-11-26 13:28:46 +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
24baf77955
Cleanup architecture, ABI and OS definitions.
2010-11-16 15:03:40 +01: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
e1efd0d871
Minor tweaks to integration of assembler part.
...
Remove unneeded PC restore in vm_growstack_*.
Don't declare symbols that are unused in interpreter-only builds.
Don't embed lj_vm_foldfpm in interpreter-only builds.
Add 2nd temporary TValue in lua_State.
2010-08-29 20:04:40 +02:00
Mike Pall
420124372b
Switch to fast string hash.
2010-07-21 22:53:27 +02:00
Mike Pall
28cfccf748
Turn TValue setter macros into inline functions.
2010-04-26 00:28:44 +02:00
Mike Pall
41379126a2
Treat the tag of a TValue as unsigned everywhere.
2010-04-25 23:21:15 +02:00
Mike Pall
ef0904e80b
Make metamethod names proper GC roots.
2010-04-25 18:35:47 +02:00
Mike Pall
721b73fecb
Turn traces into true GC objects (GCtrace).
2010-04-25 03:32:29 +02:00