Scott Robert Ladd wrote: > > My conclusion is the composite switches like -O2 are good only for > general-purpose code. Anyone explicitly interested in squeezing out the > most performance needs to do analysis and use application-specific switches. >
Probably this situation is created by the fact that code transformations are applied based on heuristic functions that were written, well, in a very artisanal way. http://www-osl.cs.umass.edu/~cavazos/thesis.ps describes how to automatize the tuning of heuristic functions based on dynamic feedback and pattern matching. The only difficulty remaining to the charge of the compiler constructor is to effectively characterize the fingerprints of programs with respect to a given transformation. Lots of engineering, and cool speedups... Sebastian