This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] i386: Use the STC bb-reorder algorithm at -Os (PR67864)


On Sat, Nov 7, 2015 at 3:34 AM, Segher Boessenkool
<segher@kernel.crashing.org> wrote:
> Adding x86 maintainer, ping?
>
> On Fri, Oct 16, 2015 at 05:53:41AM -0700, Segher Boessenkool wrote:
>> For x86, STC still gives better results for optimise-for-size than
>> "simple" does.  So use STC at -Os as well.
>>
>> Is this okay for trunk?
>>
>>
>> Segher
>>
>>
>> 2015-10-16  Segher Boessenkool  <segher@kernel.crashing.org>
>>
>>       PR rtl-optimization/67864
>>       * common/config/i386/i386-common.c (ix86_option_optimization_table)
>>       <OPT_freorder_blocks_algorithm_>: Use REORDER_BLOCKS_ALGORITHM_STC
>>       at -Os and up.

OK.

Thanks,
Uros.

>> ---
>>  gcc/common/config/i386/i386-common.c | 3 +++
>>  1 file changed, 3 insertions(+)
>>
>> diff --git a/gcc/common/config/i386/i386-common.c b/gcc/common/config/i386/i386-common.c
>> index 79b2472..bb9f29c 100644
>> --- a/gcc/common/config/i386/i386-common.c
>> +++ b/gcc/common/config/i386/i386-common.c
>> @@ -1011,6 +1011,9 @@ static const struct default_options ix86_option_optimization_table[] =
>>      { OPT_LEVELS_2_PLUS, OPT_free, NULL, 1 },
>>      /* Enable function splitting at -O2 and higher.  */
>>      { OPT_LEVELS_2_PLUS, OPT_freorder_blocks_and_partition, NULL, 1 },
>> +    /* The STC algorithm produces the smallest code at -Os, for x86.  */
>> +    { OPT_LEVELS_2_PLUS, OPT_freorder_blocks_algorithm_, NULL,
>> +      REORDER_BLOCKS_ALGORITHM_STC },
>>      /* 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 },
>> --
>> 2.4.3


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]