Firefox has silently uploaded a release candidate for their upcoming version. Get it here: http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.5rc1/
I thought I'd run a few tests to see if it's faster than Safari 4 which from all the hype, it's supposed to be. Here are the results, if you wanna run the tests on your own systems let me know what kind of scores you get.
Sunspider is a Javascript benchmark created by WebKit, so Safari 4's Squirrelfish should be designed for the most part to do really well on this benchmark, with that said, the results I got suggest that apart from any possible bias Safari 4 is still quite a bit faster than the Firefox RC. Run the SunSpider benchmark yourself here: http://www2.webkit.org/perf/sunspider-0.9/sunspider.html Check out my results below.
Firefox RC - score: 1788.0ms +/- 0.6%

Safari 4 1046.4ms +/- 4.2%

Next up I ran the V8 benchmark, which is what Chrome's Javascript renderer V8 is tuned to. Try it yourself here: http://v8.googlecode.com/svn/data/benchmarks/v4/run.html Every time I ran it I got different results, here are the highest for each browser, Safari again fairs much better(note a higher score on this one is better)..
Firefox 217

Safari 1215

The final benchmark I ran is the one I blogged about earlier in this post. Run it yourself here: http://people.mozilla.com/~schrep/image12.html. I got the same results, that Firefox is about 3 times faster than Safari at rendering the image contrast and brightness. So what is it that makes Safari perform so much better in the more traditional benchmarks, and Firefox perform so much better in this one?
Safari's Squirrelfish converts javascript into byte code which is interpreted by a software virtual machine, much like Adobe Flash is today. Firefox's Tracemonkey converts javascript into machine code which is interpreted by the hardware(more or less). In theory machine code runs several times faster than byte code, but machine code would take longer to compile. So traditional benchmarks which load one test after another are completed faster in Safari, on the other hand the image rendering benchmark in which the entire application is loaded before starting Firefox does better.
To put this theory to the test I loaded Google documents, I copied 500 paragraphs of Lorem Ipsum(a massive latin text designers use for general prototyping as it reflects the average word and paragraph size of typical text) into a fresh new document. I then saved it started the test by asking it to check spelling. Because it's all latin most of the words would be spelled incorrectly when using an english spell check. I used a stop watch to time it so it may be off by up to 1 second. Here are the results:
Firefox: 27.5 seconds
Safari: 13.2 seconds
The theory doesn't hold up, Safari was twice as fast at spell checking. Ok but then what is it that makes Firefox perform better than Safari in that one test? Next I tried a slightly more subjective approach by running a few chrome experiments. It's hard to get raw numbers for these, so bare with me. Also note I'm running the tests on a Macbook with integrated graphics and 2GB of memory(but all on one side, the other side is empty cause I'm an idiot).
http://www.chromeexperiments.com/detail/lorenz-84/
Firefox: Medium - jittery, lost frames
Safari: Fast - realtime
http://www.chromeexperiments.com/detail/js-fireworks/
Firefox: Fast - realtime, slows down when screwing with the gravity control
Safari: Faster - realtime, no slowdowns at all
http://www.chromeexperiments.com/detail/monster/
Firefox: Slow - jittery, lost frames, too slow to sit and watch the whole thing
Safari: medium - jittery, lost frames, but watchable. not smooth but ok
Still across the board Safari is faster than Firefox in some cases a lot faster, except for that one image rendering benchmark I did the other day where Firefox excels. Why? I don't know, and the Google searches I'm doing don't know either. Perhaps it's as simple as the tests designed for Webkit just favor Webkit and the one by Mozilla favors Mozilla. What's clear is that Javascript benchmarking isn't as straightforward as commonly thought.