Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Improve FOR loop const specialization and integerness checks. | Mike Pall | 2010-02-15 | 1 | -5/+7 | |
| | ||||||
* | Major redesign of function call handling. | Mike Pall | 2010-02-13 | 1 | -2/+2 | |
| | | | | | | | | | | | 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. | |||||
* | Move dispatch tables out of GG_State struct. | Mike Pall | 2010-02-11 | 1 | -2/+2 | |
| | ||||||
* | Drop frame clearing in exit handling and JIT compiled code. | Mike Pall | 2010-02-11 | 1 | -17/+1 | |
| | ||||||
* | Add shadow frame link stack for trace recorder. | Mike Pall | 2010-02-04 | 1 | -3/+3 | |
| | | | | | Simplifies snapshots. Prerequisite for pre-call snapshots. Increases consistency for fast function calls, too. | |||||
* | Improve coalescing of BASE register in side traces. | Mike Pall | 2010-02-01 | 1 | -21/+47 | |
| | ||||||
* | Revise hardcoded inlining in lj_asm.c. Saves 1-2K. | Mike Pall | 2010-01-30 | 1 | -4/+4 | |
| | ||||||
* | Add support for weak IR references to register allocator. | Mike Pall | 2010-01-30 | 1 | -18/+51 | |
| | | | | | | Spilling a weak ref forces a spill slot, but omits the restore. Spill slots for snapshot refs override the register, anyway. Marking snapshot refs weak avoids pointless restores. | |||||
* | Compile return to lower frame. Only for Lua frames right now. | Mike Pall | 2010-01-29 | 1 | -3/+21 | |
| | ||||||
* | Avoid reuse of PHI registers, even for duplicate right PHIs. | Mike Pall | 2010-01-27 | 1 | -1/+1 | |
| | ||||||
* | Eliminate IR_FRAME. Replace with KGC and TRef/SnapEntry flags. | Mike Pall | 2010-01-27 | 1 | -39/+28 | |
| | ||||||
* | Add frame and continuation flags to TRef and SnapEntry. | Mike Pall | 2010-01-27 | 1 | -17/+17 | |
| | ||||||
* | Compress snapshots using a simple, extensible 1D-compression. | Mike Pall | 2010-01-26 | 1 | -53/+48 | |
| | | | | | | Typically reduces storage overhead for snapshot maps by 60%. The extensible format is a prerequisite for the next redesign steps: Eliminate IR_FRAME and implement return-to-lower-frame. | |||||
* | Add missing eviction in asm_obar(). | Mike Pall | 2010-01-26 | 1 | -0/+1 | |
| | ||||||
* | Fill gaps in frames (caused by metamethod calls) with nil. | Mike Pall | 2010-01-26 | 1 | -2/+2 | |
| | | | | Simplifies storing snapshots to stack. | |||||
* | Use dedicated type for snapshot map entry. | Mike Pall | 2010-01-25 | 1 | -5/+5 | |
| | | | | Preparatory work for compressed snapshots. | |||||
* | Decouple guard vs. INT check vs. TYPECHECK semantics for SLOAD. | Mike Pall | 2010-01-19 | 1 | -2/+4 | |
| | ||||||
* | Fix broken intarith + testop optimization. | Mike Pall | 2010-01-19 | 1 | -1/+1 | |
| | ||||||
* | Improve alias analysis of upvalues using a disambiguation hash value. | Mike Pall | 2010-01-09 | 1 | -3/+3 | |
| | | | | | | | | 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. | |||||
* | Fix 32/64 bit portability issue with upval->v. | Mike Pall | 2010-01-09 | 1 | -1/+1 | |
| | ||||||
* | Bump all copyright dates to 2010. | Mike Pall | 2010-01-09 | 1 | -1/+1 | |
| | ||||||
* | Add SSE variant of pow/powi to interpreter. | Mike Pall | 2009-12-25 | 1 | -39/+72 | |
| | | | | | | Use SSE pow/powi helper functions from compiled code. Cleanup use of helper functions. Related cleanups of folding functions in x64 interpreter. | |||||
* | Use SSE variants for IRFPM_FLOOR/CEIL/TRUNC unless SSE4.1 available. | Mike Pall | 2009-12-22 | 1 | -0/+18 | |
| | ||||||
* | Fast forward to sync public repo. | Mike Pall | 2009-12-08 | 1 | -251/+347 | |
| | | | | | | | | 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 | -4/+7 | |
| | ||||||
* | RELEASE LuaJIT-2.0.0-beta1v2.0.0-beta1 | Mike Pall | 2009-12-08 | 1 | -0/+3324 | |