After many days of non-stop debugging by Ben, Tobias and yours truly,
% ./jit_test.py --jitflags=mp ../../../obj-ff-dbg/dist/TenFourFoxDebug.app/Contents/MacOS/js # straight methodjit
[1775| 0|1775] 100% ===============================================>| 257.0s
PASSED ALL
% ./jit_test.py --jitflags=mnp ../../../obj-ff-dbg/dist/TenFourFoxDebug.app/Contents/MacOS/js # JM+TI
[1775| 0|1775] 100% ===============================================>| 270.0s
PASSED ALL
Now, how did Santa fit all that down the chimney? Again, this is an unoptimized JS, so ignore the timings.
The bugs that were repaired to get type inference working are systemic bugs, so they may actually fix the failure cases for straight methodjit. For G3/G4, we are simply going to prevent the optimizer from using a square root instruction for the time being and just use the JS math library routine (and later develop our own optimized assembly version that can be inlined). I'm going to do some more internal conformance testing this week and if this all checks out, hopefully we will have a 9.0.1pre for you to test by New Year's.
And keep Chris out of the eggnog.
9 is unusable on my powerbook with trace or method or both (idling at 50% even in safe mode)
ReplyDeleteHopefully 9.0.1 will redeem the version
In the meanwhile very content with 8 (and tracejit)
Happy Holidays
Safe mode disables JIT (both varieties). If you're observing that, it's not the JIT.
ReplyDelete