21 is released (release notes). This is not really a groundbreaking milestone, but it is a noticeably quicker one; we're finally getting on the other end of the JM+TI curve after we took a bad hit around 19-20. In fact, V8 is about 10% faster on the G5, mostly due to improvements to regular expressions, although I'm still unhappy with V8-Crypto's performance and I'd like to unregress that if we end up stuck on JaegerMonkey. I also got canvas compositing working with the 10.4 CoreGraphics backend, though I really need some reftests to verify if it's actually doing it correctly (but to my eye and some basic examples, it appears to be). 21 also includes a fix for a crash in the CoreGraphics backend (issue 217) which will also be fixed in 17.0.6, due out this weekend.
21 also includes the Firefox Health Report, which because of our branding work comes out as the "TenFourFox Health Report." I'm not sure what to do with this yet. It's disabled because the stuff currently gets sent to Mozilla, not me, and I imagine they don't really care. The time and performance standards are also based on computers considerably newer than our cheerfully geriatric workstations, so I don't even consider them relevant. I'll probably completely strike it from the UI for 24. Play with it if you like; I don't really see this as worth building infrastructure for, since the necessary knobs to twiddle it are mostly out of my control.
The IonMonkey work still doesn't build yet, though the assembler and the macroassembler do parse; the lowering and move emitter code need to be reworked now that the former two pieces are done using different assumptions, and then stubs need to be written to let it link. At that point it should be able to crash successfully, sigh. Mozilla has not made any promises about keeping JaegerMonkey in 24, and those of you using Firefox on Linux PowerPC may wish to keep an eye on the interpreter changes because it's being drastically simplified (and this is likely to make using the interpreter even less performant, though given that V8 doesn't even have one you should be consider yourselves fortunate there's an interpreter at all). If the worst case happens and Mozilla yanks JM before the 24ESR switchover, I might issue interim 17 and 22 releases until ionjit gets mounted, but I really don't want to be in that position. Alas, Ben's PowerBook is out of commission, so he is unable to contribute. You can help! Voice your love, affection and ability to program in issue 178.
Speaking of 22, I'm not terribly worried about that port, since JM-solo builds were still supported in this release; there might be some build system changes to work around, but the merge work should not be major, he says while rapping his knuckles on a convenient plank of wood. This port will start early because I'm actually due to take a vacation (ha! fat chance) in June for the first time in nearly two years, and I want to make sure the bulk of the porting work is done in advance. But don't worry, the 22 and 17.0.7 builds will still be out on time. Don't worry, baby. Everything will turn out all right. Smile.