diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d1c9a2f6253..6c2709696aa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2011-12-22 Uros Bizjak + + * common/config/i386/i386-common.c (ix86_option_optimization_table): + Move OPT_free processing from ... + * config/i386/i386.c (ix86_option_override_internal): ... here. + 2011-12-21 Richard Earnshaw PR target/51643 @@ -7,7 +13,7 @@ 2011-12-21 Jonathan Wakely Jim Avera - * doc/extend.texi (__builtin_expect): Improve example. + * doc/extend.texi (__builtin_expect): Improve example. 2011-12-21 Uros Bizjak diff --git a/gcc/common/config/i386/i386-common.c b/gcc/common/config/i386/i386-common.c index 99643d65f9b..ac4232fffff 100644 --- a/gcc/common/config/i386/i386-common.c +++ b/gcc/common/config/i386/i386-common.c @@ -599,6 +599,8 @@ ix86_handle_option (struct gcc_options *opts, static const struct default_options ix86_option_optimization_table[] = { + /* Enable redundant extension instructions removal at -O2 and higher. */ + { OPT_LEVELS_2_PLUS, OPT_free, NULL, 1 }, /* Turn off -fschedule-insns by default. It tends to make the problem with not enough registers even worse. */ { OPT_LEVELS_ALL, OPT_fschedule_insns, NULL, 0 }, diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index af075242e37..af58f7cf681 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -3445,10 +3445,6 @@ ix86_option_override_internal (bool main_args_p) #define USE_X86_64_FRAME_POINTER 0 #endif - /* Enable redundant extension instructions removal at -O2 and higher. */ - if (optimize >= 2 && !global_options_set.x_flag_ree) - flag_ree = 1; - /* Set the default values for switches whose default depends on TARGET_64BIT in case they weren't overwritten by command line options. */ if (TARGET_64BIT)