As a former member of the V8 team I found this very interesting. (I was pre-Sea-of-Nodes and mostly not working on the compiler.)<p>Key quotes:<p><i>most instructions end up being on the effect or control chain, which imposes a strict order on the operations, and completely defeats the purpose of Sea of Nodes.</i><p>and<p><i>It’s hard to estimate the exact impact of this cache unfriendliness on memory. Still, now that we have our new CFG compiler, we can compare the number of cache misses between the two: Sea of Nodes suffers on average from about 3 times more L1 dcache misses compared to our new CFG IR, and up to 7 times more in some phases. We estimate that this costs up to 5% of compile time, although this number is a bit handwavy. Still, keep in mind that in a JIT compiler, compiling fast is essential.</i><p>I'd love to hear how the new optimizing compiler (Turboshaft) differs from the old one (Crankshaft). It's true that nobody managed to make Crankshaft work with try-catch, which was a huge gap in its coverage.