OOElala: order-of-evaluation based alias analysis for compiler optimization
Ankush Phulia, Vaibhav Bhagee, Sorav Bansal
摘要
In C, the order of evaluation of expressions is unspecified; further for expressions that do not involve function calls, C semantics ensure that there cannot be a data race between two evaluations that can proceed in either order (or concurrently). We explore the optimization opportunity enabled by these non-deterministic expression evaluation semantics in C, and provide a sound compile-time alias analysis to realize the same. Our algorithm is implemented as a part of the Clang/LLVM infrastructure, in a tool called OOElala. Our experimental results demonstrate that the untapped optimization opportunity is significant: code patterns that enable such optimizations are common; the enabled transformations can range from vectorization to improved instruction selection and register allocation; and the resulting speedups can be as high as 2.6x on already-optimized code.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper1
问问它们各自怎么用它相关 Paper
- Relaxing Alias Analysis: Exploring the Unexplored SpaceMichel Weber, Theodoros Theodoridis, Zhendong SuPLDI 2025 · 被引用 1 次
- The road not taken: exploring alias analysis based optimizations missed by the compilerKhushboo Chitre, Piyus Kedia, Rahul PurandareOOPSLA 2022 · 被引用 13 次
- Visibility Algorithms for Dynamic Dependence Analysis and Distributed CoherenceMichael Bauer, Elliott Slaughter, Sean Treichler, Wonchan Lee 等PPoPP 2023 · 被引用 6 次
- Semiring optimizations: dynamic elision of expressions with identity and absorbing elementsGuilherme V. Leobas, Fernando Magno Quintão PereiraOOPSLA 2020 · 被引用 9 次
- Accurate Static Data Race Detection for CEmerson Sales, Omar Inverso, Emilio TuostoFM 2024 · 被引用 1 次
