Abstract. Optimizations in a traditional compiler are applied sequentially, with each optimization destructively modifying the program to produce a transformed program that is then passed to the next optimization. We present a new approach for structuring the optimization phase of a compiler. In our approach, optimizations take the form of equality analyses that add equality information to a common intermediate representation. The op-timizer works by repeatedly applying these analyses to infer equivalences between program fragments, thus saturating the intermediate representation with equalities. Once saturated, the intermediate representation encodes multiple optimized versions of the input program. At this point, a profitability heuristic...
Abstract. Current compilers fail to deliver satisfactory levels of performance on modern processors,...
Modern compilers implement a large number of optimizations which all interact in complex ways, and w...
Traditional optimizers have viewed imperative functions as a sequence or graph of commands. Some of ...
In this dissertation, I describe the Peggy system for performing program optimization and translatio...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
We describe a technique for automatically proving compiler optimizations sound, meaning that their t...
We present an automated technique for generating compiler op-timizations from examples of concrete p...
To meet the demands of modern architectures, optimizing compilers must incorporate an ever larger nu...
The highest optimization level of a compiler, such as-O3 in GCC, does not ensure the best performanc...
Current compilers fail to deliver satisfactory levels of performance on modern processors, due to ra...
Cavazos, JohnThe number of optimizations that are available in modern day compilers are in their hun...
Abstract. Writing performance-critical programs can be frustrating be-cause optimizing compilers for...
To meet the demands of modern architectures, optimizing compilers must incorporate an ever larger nu...
Compile-time optimizations generally improve program performance. Nevertheless, degradations caused ...
Iterative optimization is a popular compiler optimization approach that has been studied extensively...
Abstract. Current compilers fail to deliver satisfactory levels of performance on modern processors,...
Modern compilers implement a large number of optimizations which all interact in complex ways, and w...
Traditional optimizers have viewed imperative functions as a sequence or graph of commands. Some of ...
In this dissertation, I describe the Peggy system for performing program optimization and translatio...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
We describe a technique for automatically proving compiler optimizations sound, meaning that their t...
We present an automated technique for generating compiler op-timizations from examples of concrete p...
To meet the demands of modern architectures, optimizing compilers must incorporate an ever larger nu...
The highest optimization level of a compiler, such as-O3 in GCC, does not ensure the best performanc...
Current compilers fail to deliver satisfactory levels of performance on modern processors, due to ra...
Cavazos, JohnThe number of optimizations that are available in modern day compilers are in their hun...
Abstract. Writing performance-critical programs can be frustrating be-cause optimizing compilers for...
To meet the demands of modern architectures, optimizing compilers must incorporate an ever larger nu...
Compile-time optimizations generally improve program performance. Nevertheless, degradations caused ...
Iterative optimization is a popular compiler optimization approach that has been studied extensively...
Abstract. Current compilers fail to deliver satisfactory levels of performance on modern processors,...
Modern compilers implement a large number of optimizations which all interact in complex ways, and w...
Traditional optimizers have viewed imperative functions as a sequence or graph of commands. Some of ...