Our existing DFG optimizing compiler is pretty good, but not as good as it could be. In fact, we've even gone so far as de-tuned it to do fewer optimizations. This is because we care about compile times, and we want the DFG to be able to give profit to even very-short-running functions. Right now it can produce significant speed-ups even for things that only run for ~2ms or less, and even in cases where the relevant functions are relatively complex. But this approach also means that for longer-running code, we get less win.
This can be fixed by having an alternate, more powerful, but longer-compiling, tier of the DFG. This would be the fourth tier of JSC. Here's the wishlist for this tier:
1) Bring back the optimization fixpoint to allow CFG simplification to feed back into things like CSE.
2) Run the compiler on a separate thread.
3) Use a proper compiler backend that does global register allocation, GVN, PRE, LICM, etc.
Branched for this work in http://trac.webkit.org/changeset/146384
Why not 5 onion.com/bWBRid ?
(In reply to comment #2)
> Why not 5 onion.com/bWBRid ?
Assign that bug to Gavin. He was saying something about doing AST interpretation for really simple code.
(In reply to comment #1)
> Branched for this work in http://trac.webkit.org/changeset/146384
The branch is called "fourthTier". I'm prefixing all bugs that are intended to land on this branch with "fourthTier: ".
Aaaannnnnd we're done.