Mike Pall
0a5045c34e
Merge branch 'master' into v2.1
2015-01-06 00:12:45 +01:00
Mike Pall
86913b9bbf
Bump copyright date to 2015.
2015-01-05 23:59:31 +01:00
Mike Pall
054e6abe37
Add LJ_FR2 mode: Two-slot frame info.
2015-01-03 15:04:38 +01:00
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
b5d741fa7e
Add trace stitching.
2013-12-25 02:55:25 +01:00
Mike Pall
e6e760ca9f
Compile getfenv(0).
2013-10-09 20:34:40 +02:00
Mike Pall
6850d795b6
Minor change to lj_lib_pushcc().
2013-05-29 14:54:06 +02:00
Mike Pall
8f90a1279e
Big renaming of string buffer/formatting/conversion functions.
2013-05-13 10:15:07 +02:00
Mike Pall
625ffca739
Refactor raw object to pointer or string conversions.
2013-05-13 01:23:33 +02:00
Mike Pall
d1645c88a1
Clean up TValue to buffer conversions.
2013-03-18 17:08:37 +01:00
Mike Pall
4a44c4ff69
Bump copyright date to 2013.
2013-02-11 12:54:48 +01:00
Mike Pall
fcddd5a3a0
From Lua 5.2: Add luaL_traceback().
2012-10-01 20:45:30 +02:00
Mike Pall
ca0bb4881f
From Lua 5.2: Add rawlen(). Needs -DLUAJIT_ENABLE_LUA52COMPAT.
2012-09-24 17:33:32 +02:00
Mike Pall
4c7c2c8319
Rearrange library functions to get a fixed FF_next.
2012-09-24 17:13:53 +02:00
Mike Pall
2ba16862c7
From Lua 5.2: Add mode and env arguments to load*().
2012-09-21 16:33:14 +02: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
4c882fe714
Replace strtod() with builtin string to number conversion.
2012-08-25 23:02:29 +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
97b7edb206
Fix argument checks for coroutine.create().
2012-05-28 21:38:23 +02:00
Mike Pall
10ef109eef
Bump copyright date to 2012.
2012-01-23 22:42:42 +01:00
Mike Pall
5bed11e6b4
MIPS: Add interpreter. Enable MIPS build rules.
2012-01-23 22:24:11 +01:00
Mike Pall
585cf05dbd
Move debugging/introspection functionality to lj_debug.c.
2011-06-07 21:37:24 +02:00
Mike Pall
22946f268b
FFI: Change tonumber(cdata) semantics. Return nil for non-numbers.
2011-06-06 19:56:55 +02:00
Mike Pall
cead25f928
DUALNUM: Handle integer type in x86/x64 interpreter and libraries.
2011-02-27 01:36:59 +01:00
Mike Pall
8d0b073ff0
From Lua 5.2: Support load(string).
2011-02-20 21:17:49 +01:00
Mike Pall
d82022a656
From Lua 5.2: coroutine.running(). Needs -DLUAJIT_ENABLE_LUA52COMPAT.
2011-02-20 20:33:00 +01:00
Mike Pall
03946ac978
DUALNUM: Add integer type to core VM.
2011-02-17 00:44:14 +01:00
Mike Pall
2c8945d3e7
Use names defined in lualib.h for library registration.
2011-02-02 02:38:59 +01:00
Mike Pall
06f99fc3df
Bump copyright date to 2011.
2011-01-09 17:12:53 +01:00
Mike Pall
55a9be7809
FFI: Record tonumber() for boxed cdata.
2011-01-02 18:30:02 +01:00
Mike Pall
513b0ba18f
FFI: Add support for converting cdata to tonumber().
2010-12-05 00:40:23 +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
3754a8fe7a
Allow running C functions with coroutine.create(), too.
2010-11-17 20:07:55 +01:00
Mike Pall
ad29c1f39f
Rename character type handling from lj_ctype* to lj_char*.
2010-11-09 12:09:54 +01:00
Mike Pall
ab1b67f73a
Fix collectgarbage("count") result if more than 2GB is in use.
...
Thanks to Tony Finch.
2010-10-25 14:53:37 +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
5baf0f9dc2
Fix stack growth for coroutine.wrap().
2010-09-22 21:16:16 +02:00
Mike Pall
4ba0eb5f80
Record select().
2010-09-13 01:21:44 +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
f708d31bcc
Explicitly indicate tailcall from fast function fallback.
2010-09-02 17:16:56 +02:00
Mike Pall
cdc37a33b3
Fallback to metamethod resolving for tostring in print().
2010-06-16 19:43:07 +02:00
Mike Pall
926f688cd0
Canonicalize string conversion of nan, inf, -inf.
2010-05-20 00:40:51 +02:00
Mike Pall
41379126a2
Treat the tag of a TValue as unsigned everywhere.
2010-04-25 23:21:15 +02:00
Mike Pall
721b73fecb
Turn traces into true GC objects (GCtrace).
2010-04-25 03:32:29 +02:00
Mike Pall
ab45481199
No longer let the GC replace dead keys with the LJ_TDEADKEY tag.
...
Important: this changes the semantics of the write barrier!
Carefully read the big comment block in lj_obj.h
This helps HREFK key slot specialization and allows safely hoisting
HREF/HREFK across GC steps, too (fix for a barely reproducible bug).
Dead keys are only removed during a table resize (as before).
2010-04-21 01:45:58 +02:00