[V2] rs6000: Remove unnecessary option manipulation.

Message ID 20b4a99e-dc99-a00d-cea1-41bfa1ae7ceb@suse.cz
State New
Headers
Series [V2] rs6000: Remove unnecessary option manipulation. |

Commit Message

Martin Liška Nov. 4, 2021, 12:36 p.m. UTC
  Sending the patch in a separate thread.

Ready for master?

Cheers,
Martin

gcc/ChangeLog:

	* config/rs6000/rs6000.c (rs6000_override_options_after_change):
	Do not set flag_rename_registers, it's already enabled with
	EnabledBy(funroll-loops).
	Use EnabledBy for unroll_only_small_loops.
	* config/rs6000/rs6000.opt: Use EnabledBy for
	unroll_only_small_loops.
---
  gcc/config/rs6000/rs6000.c   | 7 +------
  gcc/config/rs6000/rs6000.opt | 2 +-
  2 files changed, 2 insertions(+), 7 deletions(-)
  

Comments

Martin Liška Nov. 11, 2021, 4:42 p.m. UTC | #1
PING^1

On 11/4/21 13:36, Martin Liška wrote:
> Sending the patch in a separate thread.
> 
> Ready for master?
> 
> Cheers,
> Martin
> 
> gcc/ChangeLog:
> 
>      * config/rs6000/rs6000.c (rs6000_override_options_after_change):
>      Do not set flag_rename_registers, it's already enabled with
>      EnabledBy(funroll-loops).
>      Use EnabledBy for unroll_only_small_loops.
>      * config/rs6000/rs6000.opt: Use EnabledBy for
>      unroll_only_small_loops.
> ---
>   gcc/config/rs6000/rs6000.c   | 7 +------
>   gcc/config/rs6000/rs6000.opt | 2 +-
>   2 files changed, 2 insertions(+), 7 deletions(-)
> 
> diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
> index 01a95591a5d..b9dddcd0aa1 100644
> --- a/gcc/config/rs6000/rs6000.c
> +++ b/gcc/config/rs6000/rs6000.c
> @@ -3472,13 +3472,8 @@ rs6000_override_options_after_change (void)
>     /* Explicit -funroll-loops turns -munroll-only-small-loops off, and
>        turns -frename-registers on.  */
>     if ((OPTION_SET_P (flag_unroll_loops) && flag_unroll_loops)
> -       || (OPTION_SET_P (flag_unroll_all_loops)
> -       && flag_unroll_all_loops))
> +       || (OPTION_SET_P (flag_unroll_all_loops) && flag_unroll_all_loops))
>       {
> -      if (!OPTION_SET_P (unroll_only_small_loops))
> -    unroll_only_small_loops = 0;
> -      if (!OPTION_SET_P (flag_rename_registers))
> -    flag_rename_registers = 1;
>         if (!OPTION_SET_P (flag_cunroll_grow_size))
>       flag_cunroll_grow_size = 1;
>       }
> diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
> index 9d7878f144a..faeb7423ca7 100644
> --- a/gcc/config/rs6000/rs6000.opt
> +++ b/gcc/config/rs6000/rs6000.opt
> @@ -546,7 +546,7 @@ Target Undocumented Var(rs6000_optimize_swaps) Init(1) Save
>   Analyze and remove doubleword swaps from VSX computations.
> 
>   munroll-only-small-loops
> -Target Undocumented Var(unroll_only_small_loops) Init(0) Save
> +Target Undocumented Var(unroll_only_small_loops) Init(0) Save EnabledBy(funroll-loops)
>   ; Use conservative small loop unrolling.
> 
>   mpower9-misc
  
Segher Boessenkool Nov. 11, 2021, 5:52 p.m. UTC | #2
Hi!

On Thu, Nov 04, 2021 at 01:36:06PM +0100, Martin Liška wrote:
> Sending the patch in a separate thread.

You forgot to send the commit message though?

> 	* config/rs6000/rs6000.c (rs6000_override_options_after_change):
> 	Do not set flag_rename_registers, it's already enabled with
> 	EnabledBy(funroll-loops).
> 	Use EnabledBy for unroll_only_small_loops.
> 	* config/rs6000/rs6000.opt: Use EnabledBy for
> 	unroll_only_small_loops.

Please don't put newlines in random places.  It makes reading changelogs
much harder than needed.

> --- a/gcc/config/rs6000/rs6000.c
> +++ b/gcc/config/rs6000/rs6000.c
> @@ -3472,13 +3472,8 @@ rs6000_override_options_after_change (void)
>    /* Explicit -funroll-loops turns -munroll-only-small-loops off, and
>       turns -frename-registers on.  */
>    if ((OPTION_SET_P (flag_unroll_loops) && flag_unroll_loops)
> -       || (OPTION_SET_P (flag_unroll_all_loops)
> -	   && flag_unroll_all_loops))
> +       || (OPTION_SET_P (flag_unroll_all_loops) && flag_unroll_all_loops))
>      {
> -      if (!OPTION_SET_P (unroll_only_small_loops))
> -	unroll_only_small_loops = 0;
> -      if (!OPTION_SET_P (flag_rename_registers))
> -	flag_rename_registers = 1;
>        if (!OPTION_SET_P (flag_cunroll_grow_size))
>  	flag_cunroll_grow_size = 1;
>      }

So some explanation for these two changes would be good to have.

> diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
> index 9d7878f144a..faeb7423ca7 100644
> --- a/gcc/config/rs6000/rs6000.opt
> +++ b/gcc/config/rs6000/rs6000.opt
> @@ -546,7 +546,7 @@ Target Undocumented Var(rs6000_optimize_swaps) Init(1) 
> Save
>  Analyze and remove doubleword swaps from VSX computations.
>  
>  munroll-only-small-loops
> -Target Undocumented Var(unroll_only_small_loops) Init(0) Save
> +Target Undocumented Var(unroll_only_small_loops) Init(0) Save 
> EnabledBy(funroll-loops)

You used format=flowed it seems?  Don't.  Patches are mangled with it :-(


Segher
  
Martin Liška Nov. 12, 2021, 2:34 p.m. UTC | #3
On 11/11/21 18:52, Segher Boessenkool wrote:
> Hi!
> 
> On Thu, Nov 04, 2021 at 01:36:06PM +0100, Martin Liška wrote:
>> Sending the patch in a separate thread.
> 

Hello.

> You forgot to send the commit message though?

No, the patch is simple so I didn't write any message (except commit title).

> 
>> 	* config/rs6000/rs6000.c (rs6000_override_options_after_change):
>> 	Do not set flag_rename_registers, it's already enabled with
>> 	EnabledBy(funroll-loops).
>> 	Use EnabledBy for unroll_only_small_loops.
>> 	* config/rs6000/rs6000.opt: Use EnabledBy for
>> 	unroll_only_small_loops.
> 
> Please don't put newlines in random places.  It makes reading changelogs
> much harder than needed.

All right, I'm going to update it in V3.

> 
>> --- a/gcc/config/rs6000/rs6000.c
>> +++ b/gcc/config/rs6000/rs6000.c
>> @@ -3472,13 +3472,8 @@ rs6000_override_options_after_change (void)
>>     /* Explicit -funroll-loops turns -munroll-only-small-loops off, and
>>        turns -frename-registers on.  */
>>     if ((OPTION_SET_P (flag_unroll_loops) && flag_unroll_loops)
>> -       || (OPTION_SET_P (flag_unroll_all_loops)
>> -	   && flag_unroll_all_loops))
>> +       || (OPTION_SET_P (flag_unroll_all_loops) && flag_unroll_all_loops))
>>       {
>> -      if (!OPTION_SET_P (unroll_only_small_loops))
>> -	unroll_only_small_loops = 0;
>> -      if (!OPTION_SET_P (flag_rename_registers))
>> -	flag_rename_registers = 1;
>>         if (!OPTION_SET_P (flag_cunroll_grow_size))
>>   	flag_cunroll_grow_size = 1;
>>       }
> 
> So some explanation for these two changes would be good to have.

It's explained in the ChangeLog entry.

> 
>> diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
>> index 9d7878f144a..faeb7423ca7 100644
>> --- a/gcc/config/rs6000/rs6000.opt
>> +++ b/gcc/config/rs6000/rs6000.opt
>> @@ -546,7 +546,7 @@ Target Undocumented Var(rs6000_optimize_swaps) Init(1)
>> Save
>>   Analyze and remove doubleword swaps from VSX computations.
>>   
>>   munroll-only-small-loops
>> -Target Undocumented Var(unroll_only_small_loops) Init(0) Save
>> +Target Undocumented Var(unroll_only_small_loops) Init(0) Save
>> EnabledBy(funroll-loops)
> 
> You used format=flowed it seems?  Don't.  Patches are mangled with it :-(

No, it's correct:
https://gcc.gnu.org/pipermail/gcc-patches/2021-November/583310.html

Martin

> 
> 
> Segher
>
  
Segher Boessenkool Nov. 12, 2021, 3:58 p.m. UTC | #4
On Fri, Nov 12, 2021 at 03:34:17PM +0100, Martin Liška wrote:
> On 11/11/21 18:52, Segher Boessenkool wrote:
> >You forgot to send the commit message though?
> 
> No, the patch is simple so I didn't write any message (except commit title).

How is a maintainer supposed to know what the patch is about, then?  Not
all of us are clairvoyant.

> >>--- a/gcc/config/rs6000/rs6000.c
> >>+++ b/gcc/config/rs6000/rs6000.c
> >>@@ -3472,13 +3472,8 @@ rs6000_override_options_after_change (void)
> >>    /* Explicit -funroll-loops turns -munroll-only-small-loops off, and
> >>       turns -frename-registers on.  */
> >>    if ((OPTION_SET_P (flag_unroll_loops) && flag_unroll_loops)
> >>-       || (OPTION_SET_P (flag_unroll_all_loops)
> >>-	   && flag_unroll_all_loops))
> >>+       || (OPTION_SET_P (flag_unroll_all_loops) && 
> >>flag_unroll_all_loops))
> >>      {
> >>-      if (!OPTION_SET_P (unroll_only_small_loops))
> >>-	unroll_only_small_loops = 0;
> >>-      if (!OPTION_SET_P (flag_rename_registers))
> >>-	flag_rename_registers = 1;
> >>        if (!OPTION_SET_P (flag_cunroll_grow_size))
> >>  	flag_cunroll_grow_size = 1;
> >>      }
> >
> >So some explanation for these two changes would be good to have.
> 
> It's explained in the ChangeLog entry.

It is not.  Besides, a changelog should describe *what* changed, not
*why*, anyway.

> >>diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
> >>index 9d7878f144a..faeb7423ca7 100644
> >>--- a/gcc/config/rs6000/rs6000.opt
> >>+++ b/gcc/config/rs6000/rs6000.opt
> >>@@ -546,7 +546,7 @@ Target Undocumented Var(rs6000_optimize_swaps) Init(1)
> >>Save
> >>  Analyze and remove doubleword swaps from VSX computations.
> >>  
> >>  munroll-only-small-loops
> >>-Target Undocumented Var(unroll_only_small_loops) Init(0) Save
> >>+Target Undocumented Var(unroll_only_small_loops) Init(0) Save
> >>EnabledBy(funroll-loops)
> >
> >You used format=flowed it seems?  Don't.  Patches are mangled with it :-(
> 
> No, it's correct:
> https://gcc.gnu.org/pipermail/gcc-patches/2021-November/583310.html

Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

It is not correct.  Please fix.


Segher
  
Martin Liška Nov. 12, 2021, 4:13 p.m. UTC | #5
On 11/12/21 16:58, Segher Boessenkool wrote:
> On Fri, Nov 12, 2021 at 03:34:17PM +0100, Martin Liška wrote:
>> On 11/11/21 18:52, Segher Boessenkool wrote:
>>> You forgot to send the commit message though?
>>
>> No, the patch is simple so I didn't write any message (except commit title).
> 
> How is a maintainer supposed to know what the patch is about, then?  Not
> all of us are clairvoyant.

Oh yeah, lemme explain it.

> 
>>>> --- a/gcc/config/rs6000/rs6000.c
>>>> +++ b/gcc/config/rs6000/rs6000.c
>>>> @@ -3472,13 +3472,8 @@ rs6000_override_options_after_change (void)
>>>>     /* Explicit -funroll-loops turns -munroll-only-small-loops off, and
>>>>        turns -frename-registers on.  */
>>>>     if ((OPTION_SET_P (flag_unroll_loops) && flag_unroll_loops)
>>>> -       || (OPTION_SET_P (flag_unroll_all_loops)
>>>> -	   && flag_unroll_all_loops))
>>>> +       || (OPTION_SET_P (flag_unroll_all_loops) &&
>>>> flag_unroll_all_loops))
>>>>       {
>>>> -      if (!OPTION_SET_P (unroll_only_small_loops))
>>>> -	unroll_only_small_loops = 0;
>>>> -      if (!OPTION_SET_P (flag_rename_registers))
>>>> -	flag_rename_registers = 1;
>>>>         if (!OPTION_SET_P (flag_cunroll_grow_size))
>>>>   	flag_cunroll_grow_size = 1;
>>>>       }
>>>
>>> So some explanation for these two changes would be good to have.
>>
>> It's explained in the ChangeLog entry.
> 
> It is not.  Besides, a changelog should describe *what* changed, not
> *why*, anyway.

All right.

> 
>>>> diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
>>>> index 9d7878f144a..faeb7423ca7 100644
>>>> --- a/gcc/config/rs6000/rs6000.opt
>>>> +++ b/gcc/config/rs6000/rs6000.opt
>>>> @@ -546,7 +546,7 @@ Target Undocumented Var(rs6000_optimize_swaps) Init(1)
>>>> Save
>>>>   Analyze and remove doubleword swaps from VSX computations.
>>>>   
>>>>   munroll-only-small-loops
>>>> -Target Undocumented Var(unroll_only_small_loops) Init(0) Save
>>>> +Target Undocumented Var(unroll_only_small_loops) Init(0) Save
>>>> EnabledBy(funroll-loops)
>>>
>>> You used format=flowed it seems?  Don't.  Patches are mangled with it :-(
>>
>> No, it's correct:
>> https://gcc.gnu.org/pipermail/gcc-patches/2021-November/583310.html
> 
> Content-Type: text/plain; charset=UTF-8; format=flowed
> Content-Transfer-Encoding: 8bit
> 
> It is not correct.  Please fix.

Ok, I've just used directly git send-email, please search for V4.

Thanks,
Martin

> 
> 
> Segher
>
  

Patch

diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 01a95591a5d..b9dddcd0aa1 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -3472,13 +3472,8 @@  rs6000_override_options_after_change (void)
    /* Explicit -funroll-loops turns -munroll-only-small-loops off, and
       turns -frename-registers on.  */
    if ((OPTION_SET_P (flag_unroll_loops) && flag_unroll_loops)
-       || (OPTION_SET_P (flag_unroll_all_loops)
-	   && flag_unroll_all_loops))
+       || (OPTION_SET_P (flag_unroll_all_loops) && flag_unroll_all_loops))
      {
-      if (!OPTION_SET_P (unroll_only_small_loops))
-	unroll_only_small_loops = 0;
-      if (!OPTION_SET_P (flag_rename_registers))
-	flag_rename_registers = 1;
        if (!OPTION_SET_P (flag_cunroll_grow_size))
  	flag_cunroll_grow_size = 1;
      }
diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
index 9d7878f144a..faeb7423ca7 100644
--- a/gcc/config/rs6000/rs6000.opt
+++ b/gcc/config/rs6000/rs6000.opt
@@ -546,7 +546,7 @@  Target Undocumented Var(rs6000_optimize_swaps) Init(1) Save
  Analyze and remove doubleword swaps from VSX computations.
  
  munroll-only-small-loops
-Target Undocumented Var(unroll_only_small_loops) Init(0) Save
+Target Undocumented Var(unroll_only_small_loops) Init(0) Save EnabledBy(funroll-loops)
  ; Use conservative small loop unrolling.
  
  mpower9-misc