Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Add array bounds check elimination (-Oabc, on by default). | Mike Pall | 2010-03-15 | 1 | -1/+39 | |
| | ||||||
* | Reorganize scalar evolution analysis. | Mike Pall | 2010-03-15 | 1 | -7/+20 | |
| | ||||||
* | Fix handling of bad argument types in recorder. | Mike Pall | 2010-03-09 | 1 | -2/+3 | |
| | ||||||
* | Fix recording of getmetatable() for non-tables. | Mike Pall | 2010-03-09 | 1 | -3/+5 | |
| | ||||||
* | Avoid tracing the nil return case of tonumber(). | Mike Pall | 2010-03-09 | 1 | -1/+5 | |
| | ||||||
* | Fix assertion in rec_check_slots. | Mike Pall | 2010-03-07 | 1 | -1/+1 | |
| | ||||||
* | Fix 64 bit conversion warning. | Mike Pall | 2010-03-03 | 1 | -1/+1 | |
| | ||||||
* | Implement down-recursion. | Mike Pall | 2010-03-01 | 1 | -2/+39 | |
| | ||||||
* | Fix 64 bit conversion warnings. | Mike Pall | 2010-02-24 | 1 | -3/+3 | |
| | ||||||
* | Fix 64 bit portability problem in rec_ret(). | Mike Pall | 2010-02-24 | 1 | -1/+1 | |
| | ||||||
* | Randomize penalties for aborts and add blacklisting. | Mike Pall | 2010-02-23 | 1 | -3/+3 | |
| | ||||||
* | Ensure function and all args have a reference for call recording. | Mike Pall | 2010-02-22 | 1 | -11/+28 | |
| | | | | In practice this is only needed after a return to a lower frame. | |||||
* | Fix TRef for (dummy) 2nd arg of __len metamethod. | Mike Pall | 2010-02-22 | 1 | -1/+1 | |
| | ||||||
* | Back out history buffer for tailcall counts. | Mike Pall | 2010-02-22 | 1 | -4/+2 | |
| | | | | Use an aggregate counter independent of frame depth. | |||||
* | Add region selection for up-recursion and tail-recursion. | Mike Pall | 2010-02-22 | 1 | -2/+4 | |
| | ||||||
* | Allow linking to already compiled functions. | Mike Pall | 2010-02-18 | 1 | -7/+24 | |
| | ||||||
* | Use a limited history buffer for tailcall counts while recording. | Mike Pall | 2010-02-18 | 1 | -13/+16 | |
| | ||||||
* | Update trace recorder infrastructure for hot calls. | Mike Pall | 2010-02-18 | 1 | -9/+10 | |
| | ||||||
* | Drop obsolete shadow frame link stack. | Mike Pall | 2010-02-18 | 1 | -35/+4 | |
| | ||||||
* | Add more assertions to compare the recorder state and the VM state. | Mike Pall | 2010-02-18 | 1 | -4/+31 | |
| | ||||||
* | Clear frame gaps in recorder to avoid resurrecting previous refs. | Mike Pall | 2010-02-18 | 1 | -2/+6 | |
| | ||||||
* | Split CALL/FUNC recording. | Mike Pall | 2010-02-16 | 1 | -444/+447 | |
| | | | | | | | | Record __call resolving and specialization for CALL* bytecodes. Record argument adjustment and fast functions for FUNC* bytecodes. Avoids all pending/immediate decisions for chained fast functions. Cleaner semantics for pcall(), xpcall() and __tostring metamethod. Prerequisite to drop the shadow frame link stack again. | |||||
* | Add missing FORI coercions in recorder. | Mike Pall | 2010-02-15 | 1 | -4/+13 | |
| | ||||||
* | Improve FOR loop const specialization and integerness checks. | Mike Pall | 2010-02-15 | 1 | -29/+61 | |
| | ||||||
* | Major redesign of function call handling. | Mike Pall | 2010-02-13 | 1 | -7/+1 | |
| | | | | | | | | | | | 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. | |||||
* | 32/64 bit memory ref cleanup, part 1: GCproto ->bc and ->k. | Mike Pall | 2010-02-05 | 1 | -7/+7 | |
| | ||||||
* | Add shadow frame link stack for trace recorder. | Mike Pall | 2010-02-04 | 1 | -8/+55 | |
| | | | | | Simplifies snapshots. Prerequisite for pre-call snapshots. Increases consistency for fast function calls, too. | |||||
* | Fix unroll limit checks and frame depth adjustment for pcall. | Mike Pall | 2010-02-03 | 1 | -13/+11 | |
| | ||||||
* | Clean up frame depth checks and loop detection. | Mike Pall | 2010-02-03 | 1 | -5/+9 | |
| | ||||||
* | Another loop formation test must check for return to lower frame. | Mike Pall | 2010-02-03 | 1 | -1/+1 | |
| | ||||||
* | Loop formation test must check for return to lower frame. | Mike Pall | 2010-01-29 | 1 | -1/+2 | |
| | ||||||
* | Compile return to lower frame. Only for Lua frames right now. | Mike Pall | 2010-01-29 | 1 | -36/+53 | |
| | ||||||
* | Followup fix: set maxslot for continuation return. | Mike Pall | 2010-01-28 | 1 | -0/+1 | |
| | ||||||
* | Drop obsolete frame shrinking after continuation return. | Mike Pall | 2010-01-28 | 1 | -4/+1 | |
| | ||||||
* | Fix recording of metamethod result adjustment. | Mike Pall | 2010-01-28 | 1 | -1/+1 | |
| | ||||||
* | Eliminate IR_FRAME. Replace with KGC and TRef/SnapEntry flags. | Mike Pall | 2010-01-27 | 1 | -34/+20 | |
| | ||||||
* | Add frame and continuation flags to TRef and SnapEntry. | Mike Pall | 2010-01-27 | 1 | -6/+7 | |
| | ||||||
* | Add missing check for return to lower frame. | Mike Pall | 2010-01-27 | 1 | -1/+2 | |
| | ||||||
* | Compress snapshots using a simple, extensible 1D-compression. | Mike Pall | 2010-01-26 | 1 | -48/+49 | |
| | | | | | | 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. | |||||
* | Fill gaps in frames (caused by metamethod calls) with nil. | Mike Pall | 2010-01-26 | 1 | -1/+1 | |
| | | | | Simplifies storing snapshots to stack. | |||||
* | Use dedicated type for snapshot map entry. | Mike Pall | 2010-01-25 | 1 | -1/+1 | |
| | | | | Preparatory work for compressed snapshots. | |||||
* | Decouple guard vs. INT check vs. TYPECHECK semantics for SLOAD. | Mike Pall | 2010-01-19 | 1 | -5/+9 | |
| | ||||||
* | Error for blacklisted loop bytecodes has no info argument. | Mike Pall | 2010-01-16 | 1 | -1/+1 | |
| | ||||||
* | Improve alias analysis of upvalues using a disambiguation hash value. | Mike Pall | 2010-01-09 | 1 | -0/+11 | |
| | | | | | | | | 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 | -3/+3 | |
| | ||||||
* | Bump all copyright dates to 2010. | Mike Pall | 2010-01-09 | 1 | -1/+1 | |
| | ||||||
* | Logical 'not' must be sign-extended for address operands. | Mike Pall | 2009-12-29 | 1 | -2/+2 | |
| | ||||||
* | Adapt primary inbound calls in x64 interpreter. | Mike Pall | 2009-12-17 | 1 | -1/+1 | |
| | | | | Change argument order for lj_vm_cpcall() to simplify x64 interpreter. | |||||
* | Fast forward to sync public repo. | Mike Pall | 2009-12-08 | 1 | -14/+111 | |
| | | | | | | | | 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 | -8/+62 | |
| |