Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Improve register allocation on x64. | Mike Pall | 2010-03-02 | 1 | -0/+5 | |
| | ||||||
* | Implement down-recursion. | Mike Pall | 2010-03-01 | 1 | -1/+7 | |
| | ||||||
* | Add x64 call argument setup. More 32/64 bit cleanups in assembler. | Mike Pall | 2010-02-25 | 1 | -42/+58 | |
| | ||||||
* | Fix 64 bit conversion warnings. | Mike Pall | 2010-02-24 | 1 | -1/+1 | |
| | ||||||
* | Major 32/64 bit cleanups in assembler and exit handling. | Mike Pall | 2010-02-24 | 1 | -66/+152 | |
| | | | | | | | | | Add 64 bit lightuserdata handling. Keep the tagged 64 bit value. Allocate/save/restore 64 bit spill slots for 64 bit lightuserdata. Fix code generation for 64 bit loads/stores/moves/compares. Fix code generation for stack pointer adjustments. Add fixed spill slot definitions for x64. Reduce reserved spill slots. Disable STRREF + ADD fusion in 64 bit mode (avoid negative 32 bit ofs). | |||||
* | Check relative jump distances for x64. | Mike Pall | 2010-02-24 | 1 | -9/+18 | |
| | ||||||
* | Mark renamed registers as modified. | Mike Pall | 2010-02-23 | 1 | -1/+2 | |
| | ||||||
* | Don't eliminate SLOAD restores across RETF. | Mike Pall | 2010-02-23 | 1 | -3/+1 | |
| | | | | Move restore-elimination logic into snapshot_slots(). | |||||
* | Do not patch parent exit for a stack check. | Mike Pall | 2010-02-22 | 1 | -0/+8 | |
| | ||||||
* | Refactor Lua stack handling in lj_asm.c. | Mike Pall | 2010-02-21 | 1 | -104/+115 | |
| | ||||||
* | Eliminate redundant stack checks. Add checks for growing root traces. | Mike Pall | 2010-02-21 | 1 | -7/+21 | |
| | ||||||
* | Drop obsolete shadow frame link stack. | Mike Pall | 2010-02-18 | 1 | -3/+3 | |
| | ||||||
* | 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 | |