SpiderMonkey is on a diet
blog.mozilla.com
blog.mozilla.com
I would be very interested to read their learnings from TraceMonkey, though.
The picking of types at record-time in the tracer doesn't always work well. In particular, you can end up generating code for ints when really you have floats, or vice versa, which gives bad perf. Likewise arrays-of-ints/arrays-of-floats.
TraceMonkey was also written in a great hurry, which partly explains the hairball-ness.
I remember this too. It seems not so long ago I was reading benchmarks on shaver's blog demonstrating TraceMonkey's performance as largely comparable to the then-new V8. I agree that is kind of weird to hear that people hate the code and that Mozilla is throwing it out already.
I have perhaps not kept super informed on Firefox's JS internals, just reading a stray article here and there, but it raises some concerning questions for me that something that was brand shiny new and a major development effort just a few years ago would be discarded as a "hairball" that no one wants to maintain anymore. I can understand how that can happen in a reasonable environment, but it can also be a sign of a seriously flawed process.