Every compiler comes with a set of local optimization rules, such as x +0 → x and x&x → x, that do not require any global analysis. These rules reflect the wisdom of the compiler developers about mathematical identities that hold for the operations of their intermediate representation. Unfortunately, these sets of hand-crafted rules guarantee neither correctness nor completeness. Optgen solves this problem by generating all local optimizations up to a given cost limit. Since Optgen verifies each rule using an SMT solver, it guarantees correctness and completeness of the generated rule set. Using Optgen, we tested the latest versions of GCC, ICC and LLVM and identified more than 50 missing local optimizations that involve only two operations.
CITATION STYLE
Buchwald, S. (2015). OPTGEN: A generator for local optimizations. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 9031, 171–189. https://doi.org/10.1007/978-3-662-46663-6_9
Mendeley helps you to discover research relevant for your work.