------- Comment #8 from hjl dot tools at gmail dot com 2008-12-03 21:28 ------- (In reply to comment #5) > (In reply to comment #4) > > 4.3: > > -O3 -march=native -funroll-loops -ffast-math ==> 4.376 > > -O3 -march=native -funroll-loops -ffast-math -fschedule-insns ==> 3.372 > > strangely: > > http://gcc.gnu.org/onlinedocs/gcc-4.3.2/gcc/Optimize-Options.html#Optimize-Options > suggests -fschedule-insns is enabled by default at -O3 ? >
This may be related to PR 37565. i386.c has void optimization_options (int level, int size ATTRIBUTE_UNUSED) { /* For -O2 and beyond, turn off -fschedule-insns by default. It tends to make the problem with not enough registers even worse. */ #ifdef INSN_SCHEDULING if (level > 1) flag_schedule_insns = 0; #endif -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38306