Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Watch a 23-minute conference presentation from POPL 2018 exploring how speculative optimizations interact with dynamic deoptimization in high-performance dynamic language implementations. Learn how making assumptions explicit in program representation simplifies reasoning about speculation, demonstrated through a compiler intermediate representation called sourir. Discover the correctness proofs for traditional compiler optimizations like constant folding and function inlining when working with assumptions, as well as deoptimization-specific transformations including unrestricted deoptimization, predicate hoisting, and assume composition. The presentation, delivered by researchers from Northeastern University, Czech Technical University and Inria, provides insights into achieving near static language performance while maintaining semantic equivalence during on-the-fly deoptimization.