Are you an EPFL student looking for a semester project?
Work with us on data science and visualisation projects, and deploy your project as an app on top of Graph Search.
This lecture covers techniques to speed up dataflow analyses, such as work-list algorithms, equation ordering, smaller CFGs, and bit-vectors. It illustrates these techniques using a live variables example and discusses the importance of node ordering and post-order traversal. The lecture also delves into the work-list algorithm in Scala, basic blocks, and the use of bit vectors to represent sets. Additionally, it explores the significance of intermediate representations (IRs) in optimizations, focusing on machine-independent rewriting optimizations in CPS/L3. The session concludes with discussions on dead code elimination, common subexpression elimination, inlining, and constant folding, emphasizing the impact of optimization contexts and heuristics.