Where are optimizations applied? On first glance it seems like it would be done in the compilation step, but on the other hand I can imagine that proper optimization can only be done after linking.
valid question