summaryrefslogtreecommitdiff
path: root/src/lj_record.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Add array bounds check elimination (-Oabc, on by default).Mike Pall2010-03-151-1/+39
|
* Reorganize scalar evolution analysis.Mike Pall2010-03-151-7/+20
|
* Fix handling of bad argument types in recorder.Mike Pall2010-03-091-2/+3
|
* Fix recording of getmetatable() for non-tables.Mike Pall2010-03-091-3/+5
|
* Avoid tracing the nil return case of tonumber().Mike Pall2010-03-091-1/+5
|
* Fix assertion in rec_check_slots.Mike Pall2010-03-071-1/+1
|
* Fix 64 bit conversion warning.Mike Pall2010-03-031-1/+1
|
* Implement down-recursion.Mike Pall2010-03-011-2/+39
|
* Fix 64 bit conversion warnings.Mike Pall2010-02-241-3/+3
|
* Fix 64 bit portability problem in rec_ret().Mike Pall2010-02-241-1/+1
|
* Randomize penalties for aborts and add blacklisting.Mike Pall2010-02-231-3/+3
|
* Ensure function and all args have a reference for call recording.Mike Pall2010-02-221-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 Pall2010-02-221-1/+1
|
* Back out history buffer for tailcall counts.Mike Pall2010-02-221-4/+2
| | | | Use an aggregate counter independent of frame depth.
* Add region selection for up-recursion and tail-recursion.Mike Pall2010-02-221-2/+4
|
* Allow linking to already compiled functions.Mike Pall2010-02-181-7/+24
|
* Use a limited history buffer for tailcall counts while recording.Mike Pall2010-02-181-13/+16
|
* Update trace recorder infrastructure for hot calls.Mike Pall2010-02-181-9/+10
|
* Drop obsolete shadow frame link stack.Mike Pall2010-02-181-35/+4
|
* Add more assertions to compare the recorder state and the VM state.Mike Pall2010-02-181-4/+31
|
* Clear frame gaps in recorder to avoid resurrecting previous refs.Mike Pall2010-02-181-2/+6
|
* Split CALL/FUNC recording.Mike Pall2010-02-161-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 Pall2010-02-151-4/+13
|
* Improve FOR loop const specialization and integerness checks.Mike Pall2010-02-151-29/+61
|
* Major redesign of function call handling.Mike Pall2010-02-131-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 Pall2010-02-051-7/+7
|
* Add shadow frame link stack for trace recorder.Mike Pall2010-02-041-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 Pall2010-02-031-13/+11
|
* Clean up frame depth checks and loop detection.Mike Pall2010-02-031-5/+9
|
* Another loop formation test must check for return to lower frame.Mike Pall2010-02-031-1/+1
|
* Loop formation test must check for return to lower frame.Mike Pall2010-01-291-1/+2
|
* Compile return to lower frame. Only for Lua frames right now.Mike Pall2010-01-291-36/+53
|
* Followup fix: set maxslot for continuation return.Mike Pall2010-01-281-0/+1
|
* Drop obsolete frame shrinking after continuation return.Mike Pall2010-01-281-4/+1
|
* Fix recording of metamethod result adjustment.Mike Pall2010-01-281-1/+1
|
* Eliminate IR_FRAME. Replace with KGC and TRef/SnapEntry flags.Mike Pall2010-01-271-34/+20
|
* Add frame and continuation flags to TRef and SnapEntry.Mike Pall2010-01-271-6/+7
|
* Add missing check for return to lower frame.Mike Pall2010-01-271-1/+2
|
* Compress snapshots using a simple, extensible 1D-compression.Mike Pall2010-01-261-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 Pall2010-01-261-1/+1
| | | | Simplifies storing snapshots to stack.
* Use dedicated type for snapshot map entry.Mike Pall2010-01-251-1/+1
| | | | Preparatory work for compressed snapshots.
* Decouple guard vs. INT check vs. TYPECHECK semantics for SLOAD.Mike Pall2010-01-191-5/+9
|
* Error for blacklisted loop bytecodes has no info argument.Mike Pall2010-01-161-1/+1
|
* Improve alias analysis of upvalues using a disambiguation hash value.Mike Pall2010-01-091-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 Pall2010-01-091-3/+3
|
* Bump all copyright dates to 2010.Mike Pall2010-01-091-1/+1
|
* Logical 'not' must be sign-extended for address operands.Mike Pall2009-12-291-2/+2
|
* Adapt primary inbound calls in x64 interpreter.Mike Pall2009-12-171-1/+1
| | | | Change argument order for lj_vm_cpcall() to simplify x64 interpreter.
* Fast forward to sync public repo.Mike Pall2009-12-081-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-beta2Mike Pall2009-12-081-8/+62
|