Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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. | ||||
* | Avoid int16_t widening for pt->uv elements. | Mike Pall | 2010-01-09 | 1 | -1/+1 |
| | |||||
* | Fix 32/64 bit portability issue with upval->v. | Mike Pall | 2010-01-09 | 1 | -4/+3 |
| | |||||
* | Bump all copyright dates to 2010. | Mike Pall | 2010-01-09 | 1 | -1/+1 |
| | |||||
* | Fix size calculation for closure structs. | Mike Pall | 2009-12-28 | 1 | -2/+2 |
| | |||||
* | Fast forward to sync public repo. | Mike Pall | 2009-12-08 | 1 | -3/+20 |
| | | | | | | | | Compile math.sinh(), math.cosh(), math.tanh() and math.random(). Compile various io.*() functions. Drive the GC forward on string allocations in the parser. Improve KNUM fuse vs. load heuristics. Add abstract C call handling to IR. | ||||
* | RELEASE LuaJIT-2.0.0-beta2v2.0.0-beta2 | Mike Pall | 2009-12-08 | 1 | -1/+2 |
| | |||||
* | RELEASE LuaJIT-2.0.0-beta1v2.0.0-beta1 | Mike Pall | 2009-12-08 | 1 | -0/+676 |