6b5d40cc17fed5881b74cf387a56cf121a8ae22a: Implement JSOP_DOUBLE.
shaver@mozilla.org - Sun, 06 Jul 2008 07:28:36 -0400 - rev 17454
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Implement JSOP_DOUBLE.
859e409ef3796a8abd3e636595d06bb481e4d13d: Added support for semi-stable loop variables. Compiling for(...) q += 2.5; is ridiculously difficult because it flip-flops between int and double. Add support to promote integer values to doubles at the loop tail if at loop entry we expect a double. Since this isn't possible the other way around, we have to get luck that we catch a path into the loop where q is already double. For this we add 3 trigger points (10, 13, 37). We will try three times to record a trace at those iteration counts of a loop. If none succeed the loop is blacklisted. This probably needs more tuning down the road.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 23:21:53 -0700 - rev 17453
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Added support for semi-stable loop variables. Compiling for(...) q += 2.5; is ridiculously difficult because it flip-flops between int and double. Add support to promote integer values to doubles at the loop tail if at loop entry we expect a double. Since this isn't possible the other way around, we have to get luck that we catch a path into the loop where q is already double. For this we add 3 trigger points (10, 13, 37). We will try three times to record a trace at those iteration counts of a loop. If none succeed the loop is blacklisted. This probably needs more tuning down the road.
774553375994ae0990e57d95af34880e8fc6b67f: Merge and rename jsIf to ifop.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 22:23:34 -0700 - rev 17452
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Merge and rename jsIf to ifop.
6ab468ffe7f4b34721667d3eb85259d037f9eeca: Added FuncFilter from tamarin core (not part of nanojit yet since its slightly VM dependant).
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 22:20:35 -0700 - rev 17451
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Added FuncFilter from tamarin core (not part of nanojit yet since its slightly VM dependant).
b5556367172da3d22140e614f878a8c05eee47fa: Add helpers for i->f and f->i conversion. The f->i path goes via builtin calls.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 22:04:58 -0700 - rev 17450
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Add helpers for i->f and f->i conversion. The f->i path goes via builtin calls.
46aabcce02752fce4ae10eda1cfc9a6371337474: Add type primitives for numbers (isNumber and asNumber).
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 21:51:26 -0700 - rev 17449
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Add type primitives for numbers (isNumber and asNumber).
8bff19dbf023f7acfb312941c8ccb149d1c4f388: Implement JSOP_IFEQ, JSOP_IFNE, JSOP_DUP, JSOP_DUP2.
shaver@mozilla.org - Sat, 05 Jul 2008 23:47:24 -0400 - rev 17448
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Implement JSOP_IFEQ, JSOP_IFNE, JSOP_DUP, JSOP_DUP2.
3d66327238969be22f6d92dfca5fa7bde24dc8af: Add casting for objects and cleanup casting code.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 20:30:11 -0700 - rev 17447
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Add casting for objects and cleanup casting code.
b1d8fd0005e9ce0d1d0387ad1f2a2122d19bf336: let JSOP_GETELEM handle boolean values too
shaver@mozilla.org - Sat, 05 Jul 2008 23:04:42 -0400 - rev 17446
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
let JSOP_GETELEM handle boolean values too
6272876588dca9a03a207db551c0d1104c56df6c: Handle boolean lval in SETELEM; now runs access-nsieve unmodified.
shaver@mozilla.org - Sat, 05 Jul 2008 22:39:34 -0400 - rev 17445
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Handle boolean lval in SETELEM; now runs access-nsieve unmodified.
355d79be4adfe120ebcb0ee2f61ee463106f10e5: Believe it or not NEG can actually overflow the int32 range, so add an overflow bailout. This will only trap for -0x80000000.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 19:25:38 -0700 - rev 17444
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Believe it or not NEG can actually overflow the int32 range, so add an overflow bailout. This will only trap for -0x80000000.
f4c96a566c4c826d41a6249d784b90e465c66cff: Merge.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 19:18:14 -0700 - rev 17443
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Merge.
138fc2d7f4fe744306e5244549030edfb3d9469c: Added blacklisting of recording points where we failed to complete a trace (overly aggressive at this point, needs tuning, we want to try several times for each point.)
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 19:15:00 -0700 - rev 17442
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Added blacklisting of recording points where we failed to complete a trace (overly aggressive at this point, needs tuning, we want to try several times for each point.)
1a4d440c60e4d2dbc9fd3c6c50ab7c9dc6e0b0b7: Allow hole-filling JSOP_SETELEM to remain on trace.
shaver@mozilla.org - Sat, 05 Jul 2008 21:50:54 -0400 - rev 17441
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Allow hole-filling JSOP_SETELEM to remain on trace.
04f3c8fdf238f14566efd1fa27c716d3e486c4d8: Fixed boolean boxing.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 18:36:40 -0700 - rev 17440
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Fixed boolean boxing.
0523b54c86d82a7aa4dc531290557630c07a4c70: Added boolean boxing/unboxing code.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 18:34:41 -0700 - rev 17439
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Added boolean boxing/unboxing code.
e3af49ee7476edbcc11fab2097190f52c66933e9: Use default parameter in LSH/RSH/URSH to indicate we don't care for the overflow.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 18:18:06 -0700 - rev 17438
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Use default parameter in LSH/RSH/URSH to indicate we don't care for the overflow.
d23078399de1315e772b009814d1680b3edc51dc: Added missing jsbuiltins.cpp
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 17:29:55 -0700 - rev 17437
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Added missing jsbuiltins.cpp
6ffdcbdb066c1963380a2e12e4e99f601da2f8ba: Add support for some misc opcodes including binary and arithmetic and/or/not.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 17:26:00 -0700 - rev 17436
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Add support for some misc opcodes including binary and arithmetic and/or/not.
639f37f76fa0a16a05e95a5b05c2fb81026914a5: Track trace entry/exit in debug mode and count cycles.
Andreas Gal <gal@mozilla.com> - Sat, 05 Jul 2008 17:10:58 -0700 - rev 17435
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Track trace entry/exit in debug mode and count cycles.
(0) -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 +300000 tip