The Crankshaft optimization strategies (like background compilation, hybrid JIT, register allocation, hot code path computation, interpretation) were employed in Chakra since 2009. The deoptimization stuff is interesting, but they didn't share enough details to fully understand what they're doing there.

C