Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Bump copyright date to 2013. | Mike Pall | 2013-02-11 | 1 | -1/+1 |
| | |||||
* | Use 0/1 macro for Lua 5.2 compatibility. | Mike Pall | 2012-09-12 | 1 | -1/+1 |
| | |||||
* | FFI: Handle __pairs/__ipairs metamethods for cdata objects. | Mike Pall | 2012-09-03 | 1 | -4/+6 |
| | |||||
* | Turn loads from immutable upvalues into constants. | Mike Pall | 2012-07-20 | 1 | -1/+5 |
| | |||||
* | Avoid compiler warnings about redefined C++ keywords. | Mike Pall | 2012-07-09 | 1 | -1/+1 |
| | |||||
* | Avoid pesky compiler warnings about C++ keywords (eh?). | Mike Pall | 2012-07-03 | 1 | -1/+1 |
| | |||||
* | FFI: Check for __new metamethod when calling a constructor. | Mike Pall | 2012-06-20 | 1 | -1/+7 |
| | |||||
* | Bump copyright date to 2012. | Mike Pall | 2012-01-23 | 1 | -1/+1 |
| | |||||
* | Specialize to prototype for non-monomorphic functions. | Mike Pall | 2011-11-20 | 1 | -0/+3 |
| | | | | Solves the trace-explosion problem with closure-heavy programming. | ||||
* | From Lua 5.2: __len for tables. Needs -DLUAJIT_ENABLE_LUA52COMPAT. | Mike Pall | 2011-06-20 | 1 | -3/+3 |
| | |||||
* | Add support for bytecode loading/saving. | Mike Pall | 2011-06-13 | 1 | -5/+5 |
| | |||||
* | Cleanup prototype flags. | Mike Pall | 2011-06-09 | 1 | -6/+9 |
| | |||||
* | Flatten and compress in-memory debug info (saves ~70%). | Mike Pall | 2011-06-09 | 1 | -19/+10 |
| | |||||
* | ARM: Add LJ_SOFTFP define. Add support for soft-float slot handling. | Mike Pall | 2011-05-16 | 1 | -4/+4 |
| | |||||
* | Avoid name clash with Windows MM_MAX define. | Mike Pall | 2011-05-08 | 1 | -3/+3 |
| | |||||
* | Use lj_vm_tobit() on targets without FPU. | Mike Pall | 2011-04-10 | 1 | -0/+8 |
| | |||||
* | DUALNUM: Handle integer type in JIT compiler. | Mike Pall | 2011-03-10 | 1 | -2/+0 |
| | |||||
* | DUALNUM: Add integer type to core VM. | Mike Pall | 2011-02-17 | 1 | -5/+58 |
| | |||||
* | FFI: Add 64 bit integer comparisons and pointer comparisons. | Mike Pall | 2011-01-13 | 1 | -1/+1 |
| | |||||
* | FFI: Add ffi.load() and ffi.C default namespace. | Mike Pall | 2011-01-10 | 1 | -0/+1 |
| | |||||
* | Bump copyright date to 2011. | Mike Pall | 2011-01-09 | 1 | -1/+1 |
| | |||||
* | Add support for uint64_t <-> FP conversions to x64 backend. | Mike Pall | 2011-01-02 | 1 | -2/+1 |
| | |||||
* | Add lj_num2u64 for number to uint64_t conversion. | Mike Pall | 2010-12-31 | 1 | -0/+11 |
| | |||||
* | FFI: Add 64 bit integer arithmetic. | Mike Pall | 2010-12-25 | 1 | -0/+2 |
| | |||||
* | Undo ef8c2648. | Mike Pall | 2010-12-03 | 1 | -7/+0 |
| | |||||
* | FFI: Add macros for consistent number to integer truncation. | Mike Pall | 2010-11-26 | 1 | -0/+7 |
| | |||||
* | FFI: Add cdata object type. | Mike Pall | 2010-11-26 | 1 | -4/+34 |
| | |||||
* | Disable Lua 5.2 features by default. See -DLUAJIT_ENABLE_LUA52COMPAT. | Mike Pall | 2010-11-19 | 1 | -1/+7 |
| | |||||
* | Add support for __pairs and __ipairs metamethods (from Lua 5.2). | Mike Pall | 2010-11-18 | 1 | -1/+1 |
| | |||||
* | Cleanup architecture, ABI and OS definitions. | Mike Pall | 2010-11-16 | 1 | -1/+1 |
| | |||||
* | Turn some lua_State fields into 32 bit pointers. | Mike Pall | 2010-09-09 | 1 | -2/+2 |
| | | | | lua_State now fits into one cache line on x64. | ||||
* | Minor tweaks to integration of assembler part. | Mike Pall | 2010-08-29 | 1 | -1/+1 |
| | | | | | | | 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. | ||||
* | Switch to fast string hash. | Mike Pall | 2010-07-21 | 1 | -1/+2 |
| | |||||
* | Turn TValue setter macros into inline functions. | Mike Pall | 2010-04-26 | 1 | -110/+119 |
| | |||||
* | Treat the tag of a TValue as unsigned everywhere. | Mike Pall | 2010-04-25 | 1 | -28/+26 |
| | |||||
* | Make metamethod names proper GC roots. | Mike Pall | 2010-04-25 | 1 | -4/+6 |
| | |||||
* | Turn traces into true GC objects (GCtrace). | Mike Pall | 2010-04-25 | 1 | -1/+1 |
| | |||||
* | No longer let the GC replace dead keys with the LJ_TDEADKEY tag. | Mike Pall | 2010-04-21 | 1 | -8/+33 |
| | | | | | | | | 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). | ||||
* | Move free node pos to t->node[0].freetop. Saves 4 bytes in GCtab. | Mike Pall | 2010-03-22 | 1 | -2/+1 |
| | |||||
* | Reorder various structs to reduce padding (thanks to /usr/bin/pahole). | Mike Pall | 2010-03-15 | 1 | -1/+1 |
| | |||||
* | Major redesign of function call handling. | Mike Pall | 2010-02-13 | 1 | -4/+5 |
| | | | | | | | | | | | 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. | ||||
* | Replace GCproto reference with bytecode PC in GCfuncL. | Mike Pall | 2010-02-10 | 1 | -2/+3 |
| | |||||
* | Drop bc field in GCproto since the bytecode is colocated. | Mike Pall | 2010-02-08 | 1 | -6/+1 |
| | |||||
* | Redesign of prototype generation, part 5: colocation of protoype arrays. | Mike Pall | 2010-02-08 | 1 | -7/+7 |
| | |||||
* | 32/64 bit memory ref cleanup, part 4: GCproto ->varinfo. | Mike Pall | 2010-02-05 | 1 | -2/+3 |
| | |||||
* | 32/64 bit memory ref cleanup, part 3: GCproto ->lineinfo. | Mike Pall | 2010-02-05 | 1 | -1/+4 |
| | |||||
* | 32/64 bit memory ref cleanup, part 2: GCproto ->uvname and ->chunkname. | Mike Pall | 2010-02-05 | 1 | -3/+8 |
| | |||||
* | 32/64 bit memory ref cleanup, part 1: GCproto ->bc and ->k. | Mike Pall | 2010-02-05 | 1 | -8/+14 |
| | |||||
* | Reduce non-numeric tag range by bumping up 64 bit lightud tag. | Mike Pall | 2010-01-18 | 1 | -6/+6 |
| | |||||
* | Improve alias analysis of upvalues using a disambiguation hash value. | Mike Pall | 2010-01-09 | 1 | -1/+1 |
| | | | | | | | | All upvalue objects hold a disambiguation hash value now. It's built from the parent prototype and the slot number. Different hash values imply the upvalues cannot alias. Same hash values don't imply anything (collision or different closures). Upvalue disambiguation makes use of a reduced hash due to IR contraints. |