Mike Pall
c3219b7d17
x86/x64: Drop xmm register/memory move tuning for K8.
2013-02-21 17:04:00 +01:00
Mike Pall
57768cd588
x86: Remove x87 support from interpreter.
...
SSE2 required from now on.
2013-02-21 16:56:59 +01:00
Mike Pall
4a44c4ff69
Bump copyright date to 2013.
2013-02-11 12:54:48 +01:00
Mike Pall
1c626112a0
FFI: Compile ffi.sizeof(), ffi.alignof() and ffi.offsetof().
2012-10-10 18:16:18 +02:00
Mike Pall
24fa85760c
Use an explicit flag to signal SINK tags for a trace.
2012-07-11 16:45:15 +02:00
Mike Pall
b23a7830d2
Clean up ARM capability flags. Only set highest arch version.
2012-07-08 22:20:11 +02:00
Mike Pall
0af3f47ba0
Add allocation sinking and store sinking optimization.
2012-07-02 23:47:12 +02:00
Mike Pall
b8f5727ab4
CONSOLE: Fix PS3 build.
2012-06-10 02:01:25 +02:00
Mike Pall
37be8a5478
CONSOLE: Handle unimplemented features for console toolchains.
2012-06-09 20:54:34 +02:00
Mike Pall
2225c9aafc
MIPS: Add MIPS32R2 compile-time/runtime CPU detection.
2012-03-30 01:34:17 +02:00
Mike Pall
10ef109eef
Bump copyright date to 2012.
2012-01-23 22:42:42 +01:00
Mike Pall
c142b6c53e
FFI: Record C function calls with bool return values.
2011-11-25 19:36:35 +01:00
Mike Pall
f8a4769fb2
Keep maximum frame extent in snap->topslot.
2011-11-20 17:56:47 +01:00
Mike Pall
dc2a39e46d
Get rid of snap->depth.
2011-11-20 13:23:25 +01:00
Mike Pall
ee2bb5efed
Use different workaround for alignment of jit_State.
2011-07-23 17:53:09 +02:00
Mike Pall
82eca898db
Prefer recording loops over calls.
...
Hotcounts are decremented by 2 for loops and by 1 for calls.
2011-06-29 01:52:23 +02:00
Mike Pall
deeb8196c4
Reorganize trace linking and track link types.
2011-06-28 23:23:34 +02:00
Mike Pall
ae3179926a
ARM: Add CPU detection.
2011-05-26 17:58:29 +02:00
Mike Pall
138f54352a
Split up FP IR instructions with SPLIT pass for soft-float targets.
2011-05-22 17:44:58 +02:00
Mike Pall
fb46370e56
Cleanup of target dependencies.
2011-05-16 19:32:47 +02:00
Mike Pall
1ac71f1fa8
ARM: Add LJ_SOFTFP define. Add support for soft-float slot handling.
2011-05-16 02:38:07 +02:00
Mike Pall
67d3ac9b19
Fix some portability issues with the JIT compiler.
2011-05-09 20:46:58 +02:00
Mike Pall
139175f8c4
Tune loop unrolling heuristics. Increase trace recorder limits.
2011-05-03 21:14:18 +02:00
Mike Pall
8eb09fe820
Suppress recording of retried fast functions.
2011-03-07 20:03:38 +01:00
Mike Pall
c39ca7c35b
FFI: Record ffi.abi().
2011-02-08 00:09:33 +01:00
Mike Pall
bf05209e14
FFI: Optimize snapshots for cdata comparisons.
2011-02-05 18:54:08 +01:00
Mike Pall
b613216efc
Add SPLIT pass to split 64 bit IR instructions for 32 bit CPUs.
...
Add generic HIOP instruction for extra backend functionality.
Add support for HIOP to x86 backend.
Use POWI for 64 bit integer x^k, too.
POWI is lowered to a call by SPLIT or the x64 backend.
2011-02-02 02:29:37 +01:00
Mike Pall
c539c0cac8
Add SSE3 CPU feature detection.
2011-02-01 19:28:03 +01:00
Mike Pall
751eff9f97
Cleanup and fix trace flush logic.
2011-01-18 21:08:23 +01:00
Mike Pall
66ba1e68aa
Add trace recorder infrastructure for instruction post-processing.
2011-01-17 01:20:10 +01:00
Mike Pall
06f99fc3df
Bump copyright date to 2011.
2011-01-09 17:12:53 +01:00
Mike Pall
1716540c55
Refactoring of conversion ops, part 4: use CONV instead of TOINT/TONUM.
...
Also narrow CONV.int.num and CONV.i64.num.
2010-12-31 03:56:30 +01:00
Mike Pall
5a13fa69d9
Add IR_KINT64.
2010-12-05 22:12:31 +01:00
Mike Pall
24baf77955
Cleanup architecture, ABI and OS definitions.
2010-11-16 15:03:40 +01:00
Mike Pall
b3cf2c70f4
Decouple SLOAD type and optional conversion.
2010-10-11 21:13:37 +02:00
Mike Pall
c88169dc46
Record y = select(x, ...) idiom.
2010-09-13 01:23:19 +02:00
Mike Pall
2e24770ed3
Simplify management of current trace. Drop lazy save.
2010-04-25 13:53:33 +02:00
Mike Pall
721b73fecb
Turn traces into true GC objects (GCtrace).
2010-04-25 03:32:29 +02:00
Mike Pall
db756430ee
Don't copy SNAP_NORESTORE mark into loops and suppress restore in exit.
2010-04-08 01:32:26 +02:00
Mike Pall
37a3ca330f
Reorder various structs to reduce padding (thanks to /usr/bin/pahole).
2010-03-15 23:29:10 +01:00
Mike Pall
c4727220e8
Add array bounds check elimination (-Oabc, on by default).
2010-03-15 17:02:53 +01:00
Mike Pall
24402ede04
Reorganize scalar evolution analysis.
2010-03-15 16:23:02 +01:00
Mike Pall
e7b737aa12
Implement down-recursion.
2010-03-01 06:45:30 +01:00
Mike Pall
ec78d3177e
Correctly align and free allocated machine code areas.
...
Bump default mcode area size to 64K for x64.
2010-02-27 20:18:11 +01:00
Mike Pall
a0fbb05bf0
Make penalty PRNG available for general use by compiler.
2010-02-26 17:01:33 +01:00
Mike Pall
b95294572c
Move SIMD constants to jit_State to keep them in the low 4GB.
2010-02-24 23:17:17 +01:00
Mike Pall
8ae2f9feaa
Randomize penalties for aborts and add blacklisting.
2010-02-23 19:41:32 +01:00
Mike Pall
c1362dcac9
Don't eliminate SLOAD restores across RETF.
...
Move restore-elimination logic into snapshot_slots().
2010-02-23 03:08:49 +01:00
Mike Pall
86494c783d
Back out history buffer for tailcall counts.
...
Use an aggregate counter independent of frame depth.
2010-02-22 16:57:59 +01:00
Mike Pall
19af483166
Add region selection for up-recursion and tail-recursion.
2010-02-22 14:35:47 +01:00