aboutsummaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Enable tracing of recursion.Mike Pall2010-03-014-70/+75
| | | | | Now compiles tail-recursion, up-recursion and down-recursion. Benchmarks vs. Lua: fib 20x, ack 23x, binary-trees 4.7x.
* Implement down-recursion.Mike Pall2010-03-017-13/+114
|
* Fix pc to line number translation for GDB JIT API.Mike Pall2010-03-011-1/+4
|
* Resize stack up to the true limit.Mike Pall2010-03-011-2/+11
|
* Fix error message generation for OOM error.Mike Pall2010-02-282-2/+3
|
* Conditionally compile functions that are unused with JIT disabled.Mike Pall2010-02-288-0/+18
|
* Enable JIT compiler for x64.Mike Pall2010-02-282-8/+9
| | | | | | | Only works on Linux/x64 and Windows/x64 right now. Force an x64 build on Linux/x64 with: make CC="gcc -m64" NYI: handle on-trace OOM errors. NYI: improve register allocation for x64.
* Add frame info for x64 GDB JIT API.Mike Pall2010-02-282-3/+12
|
* Save/restore remaining callee-save regs on trace<->interp transitions.Mike Pall2010-02-276-1447/+1511
|
* Correctly align and free allocated machine code areas.Mike Pall2010-02-274-12/+15
| | | | Bump default mcode area size to 64K for x64.
* Place dynamically generated code near static code on x64.Mike Pall2010-02-263-12/+59
|
* Make penalty PRNG available for general use by compiler.Mike Pall2010-02-262-10/+10
|
* Add x64 call argument setup. More 32/64 bit cleanups in assembler.Mike Pall2010-02-252-47/+79
|
* Move SIMD constants to jit_State to keep them in the low 4GB.Mike Pall2010-02-246-18/+41
|
* Handle negative continuation offsets (WIN64 with debug).Mike Pall2010-02-241-1/+2
|
* Fix 64 bit conversion warnings.Mike Pall2010-02-243-5/+5
|
* Major 32/64 bit cleanups in assembler and exit handling.Mike Pall2010-02-244-79/+193
| | | | | | | | | 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).
* Fix 64 bit portability problem in rec_ret().Mike Pall2010-02-241-1/+1
|
* Add trace exit helper for x64. Fix trace entry for x64.Mike Pall2010-02-244-2853/+2916
|
* Check relative jump distances for x64.Mike Pall2010-02-241-9/+18
|
* Fix type() implementation for x64 lightuserdata.Mike Pall2010-02-241-0/+12
|
* Fix exit state for 64 bit mode.Mike Pall2010-02-242-2/+2
|
* Randomize penalties for aborts and add blacklisting.Mike Pall2010-02-235-20/+45
|
* Mark renamed registers as modified.Mike Pall2010-02-231-1/+2
|
* Don't eliminate SLOAD restores across RETF.Mike Pall2010-02-233-6/+13
| | | | Move restore-elimination logic into snapshot_slots().
* Do not patch parent exit for a stack check.Mike Pall2010-02-221-0/+8
|
* 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-222-5/+3
| | | | Use an aggregate counter independent of frame depth.
* Add region selection for up-recursion and tail-recursion.Mike Pall2010-02-223-4/+5
|
* Refactor Lua stack handling in lj_asm.c.Mike Pall2010-02-211-104/+115
|
* Eliminate redundant stack checks. Add checks for growing root traces.Mike Pall2010-02-212-8/+26
|
* Rethrow errors from trace exit handling from the right C frame.Mike Pall2010-02-199-1679/+1719
|
* Allow linking to already compiled functions.Mike Pall2010-02-182-8/+24
|
* Use a limited history buffer for tailcall counts while recording.Mike Pall2010-02-182-14/+17
|
* Adapt bytecode patching/unpatching for hot calls.Mike Pall2010-02-181-9/+6
|
* Update trace recorder infrastructure for hot calls.Mike Pall2010-02-183-15/+17
|
* Fix some uses of tref_isint().Mike Pall2010-02-181-2/+2
|
* Drop obsolete shadow frame link stack.Mike Pall2010-02-185-47/+38
|
* 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
|
* Just disable JIT compiler for non-SSE2 CPUs instead of aborting.Mike Pall2010-02-163-14/+20
|
* Split CALL/FUNC recording.Mike Pall2010-02-162-447/+455
| | | | | | | | 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.
* Improve error reporting for traces aborted in non-Lua functions.Mike Pall2010-02-151-2/+13
|
* Change record vmevent parameters. Dump function id on FUNC*.Mike Pall2010-02-151-12/+6
|
* Use a different marker for hot calls.Mike Pall2010-02-155-1081/+1097
|
* Add generic function handling for debug modules.Mike Pall2010-02-152-14/+18
| | | | Don't call record vmevent for non-Lua functions.
* Minor cleanup of trace event handling.Mike Pall2010-02-155-37/+33
|
* Add missing FORI coercions in recorder.Mike Pall2010-02-151-4/+13
|
* Improve FOR loop const specialization and integerness checks.Mike Pall2010-02-152-34/+68
|