When gcc is called with -O3, it could add -O1 to the options it passes to the linker, when it knows that it is GNU ld. For now this is only useful with -shared, but I don't see any reason not to also pass it without -shared.
Reference: http://gcc.gnu.org/ml/gcc/2010-05/msg00193.html -- Summary: Call GNU ld with -O1 Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: other AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: marc dot glisse at normalesup dot org GCC host triplet: x86_64-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44080