diff mbox

Properly deprecate -fipa-cp-alignment

Message ID 20170208124124.hufnye2g2es4s6fv@virgil.suse.cz
State New
Headers show

Commit Message

Martin Jambor Feb. 8, 2017, 12:41 p.m. UTC
Hi,

the patch below is my attempt at properly deprecating switch
-fipa-cp-alignment.  I have not found any clear example to follow but
hopefully I have not missed anything.  If so, please let me know.

So far I have only tested this with a normal build and "make info" but
I will give it a proper bootstrap before committing if ACKed.  OK for
trunk as it is?

Thanks,

Martin


2017-02-08  Martin Jambor  <mjambor@suse.cz>

	* common.opt (-finstrument-functions-exclude-file-list): Remove Var
	and Optimization, Document as deprecated and superseded by
	-fipa-bit-cp.
	* doc/invoke.texi (Option Summary): Remove -fipa-cp-alignment.
	(Optimize Options): Likewise.
	(-fipa-cp-alignment): Document as deprecated.
---
 gcc/common.opt      |  4 ++--
 gcc/doc/invoke.texi | 11 +++--------
 2 files changed, 5 insertions(+), 10 deletions(-)

Comments

Jakub Jelinek Feb. 8, 2017, 12:49 p.m. UTC | #1
On Wed, Feb 08, 2017 at 01:41:24PM +0100, Martin Jambor wrote:
> 2017-02-08  Martin Jambor  <mjambor@suse.cz>
> 
> 	* common.opt (-finstrument-functions-exclude-file-list): Remove Var
> 	and Optimization, Document as deprecated and superseded by
> 	-fipa-bit-cp.
> 	* doc/invoke.texi (Option Summary): Remove -fipa-cp-alignment.
> 	(Optimize Options): Likewise.
> 	(-fipa-cp-alignment): Document as deprecated.
> ---
>  gcc/common.opt      |  4 ++--
>  gcc/doc/invoke.texi | 11 +++--------
>  2 files changed, 5 insertions(+), 10 deletions(-)
> 
> diff --git a/gcc/common.opt b/gcc/common.opt
> index ad6baa3db68..661235ee4a9 100644
> --- a/gcc/common.opt
> +++ b/gcc/common.opt
> @@ -1612,8 +1612,8 @@ Common Report Var(flag_ipa_cp_clone) Optimization
>  Perform cloning to make Interprocedural constant propagation stronger.
>  
>  fipa-cp-alignment
> -Common Report Var(flag_ipa_cp_alignment) Optimization
> -Perform alignment discovery and propagation to make Interprocedural constant propagation stronger.
> +Common Report
> +This switch is deprecated.  Use -fipa-bit-cp instead.

I think this should be
Common Ignore
Does nothing. Preserved for backward compatibility.
instead, but Joseph is the option handling maintainer, so CCing him.

	Jakub
Richard Biener Feb. 8, 2017, 1:12 p.m. UTC | #2
On Wed, Feb 8, 2017 at 1:49 PM, Jakub Jelinek <jakub@redhat.com> wrote:
> On Wed, Feb 08, 2017 at 01:41:24PM +0100, Martin Jambor wrote:
>> 2017-02-08  Martin Jambor  <mjambor@suse.cz>
>>
>>       * common.opt (-finstrument-functions-exclude-file-list): Remove Var
>>       and Optimization, Document as deprecated and superseded by
>>       -fipa-bit-cp.
>>       * doc/invoke.texi (Option Summary): Remove -fipa-cp-alignment.
>>       (Optimize Options): Likewise.
>>       (-fipa-cp-alignment): Document as deprecated.
>> ---
>>  gcc/common.opt      |  4 ++--
>>  gcc/doc/invoke.texi | 11 +++--------
>>  2 files changed, 5 insertions(+), 10 deletions(-)
>>
>> diff --git a/gcc/common.opt b/gcc/common.opt
>> index ad6baa3db68..661235ee4a9 100644
>> --- a/gcc/common.opt
>> +++ b/gcc/common.opt
>> @@ -1612,8 +1612,8 @@ Common Report Var(flag_ipa_cp_clone) Optimization
>>  Perform cloning to make Interprocedural constant propagation stronger.
>>
>>  fipa-cp-alignment
>> -Common Report Var(flag_ipa_cp_alignment) Optimization
>> -Perform alignment discovery and propagation to make Interprocedural constant propagation stronger.
>> +Common Report
>> +This switch is deprecated.  Use -fipa-bit-cp instead.
>
> I think this should be
> Common Ignore
> Does nothing. Preserved for backward compatibility.
> instead, but Joseph is the option handling maintainer, so CCing him.

Or make it an alias for -fipa-bit-cp.

Richard.

>         Jakub
Joseph Myers Feb. 8, 2017, 9:26 p.m. UTC | #3
On Wed, 8 Feb 2017, Jakub Jelinek wrote:

> >  fipa-cp-alignment
> > -Common Report Var(flag_ipa_cp_alignment) Optimization
> > -Perform alignment discovery and propagation to make Interprocedural constant propagation stronger.
> > +Common Report
> > +This switch is deprecated.  Use -fipa-bit-cp instead.
> 
> I think this should be
> Common Ignore
> Does nothing. Preserved for backward compatibility.

Indeed, for any non-semantic option being obsoleted.
Jan Hubicka Feb. 9, 2017, 12:53 p.m. UTC | #4
> 
> Or make it an alias for -fipa-bit-cp.

I double programs are going on -fno-ipa-alignment for longer term - it would be very fragile
because inlining and other transformations could do the same.
I would just ignore it and mention that it no longer has effect  in changes.html (in entry decsribing
-fipa-bit-cp).

Honza
> 
> Richard.
> 
> >         Jakub
diff mbox

Patch

diff --git a/gcc/common.opt b/gcc/common.opt
index ad6baa3db68..661235ee4a9 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -1612,8 +1612,8 @@  Common Report Var(flag_ipa_cp_clone) Optimization
 Perform cloning to make Interprocedural constant propagation stronger.
 
 fipa-cp-alignment
-Common Report Var(flag_ipa_cp_alignment) Optimization
-Perform alignment discovery and propagation to make Interprocedural constant propagation stronger.
+Common Report
+This switch is deprecated.  Use -fipa-bit-cp instead.
 
 fipa-bit-cp
 Common Report Var(flag_ipa_bit_cp) Optimization
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 08d26a1d858..ba70b0f0cc7 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -371,7 +371,7 @@  Objective-C and Objective-C++ Dialects}.
 -fif-conversion2  -findirect-inlining @gol
 -finline-functions  -finline-functions-called-once  -finline-limit=@var{n} @gol
 -finline-small-functions  -fipa-cp  -fipa-cp-clone @gol
--fipa-cp-alignment  -fipa-bit-cp @gol
+-fipa-bit-cp @gol
 -fipa-pta  -fipa-profile  -fipa-pure-const  -fipa-reference  -fipa-icf @gol
 -fira-algorithm=@var{algorithm} @gol
 -fira-region=@var{region}  -fira-hoist-pressure @gol
@@ -7040,7 +7040,6 @@  also turns on the following optimization flags:
 -finline-small-functions @gol
 -findirect-inlining @gol
 -fipa-cp @gol
--fipa-cp-alignment @gol
 -fipa-bit-cp @gol
 -fipa-sra @gol
 -fipa-icf @gol
@@ -8052,12 +8051,8 @@  This flag is enabled by default at @option{-O3}.
 
 @item -fipa-cp-alignment
 @opindex -fipa-cp-alignment
-When enabled, this optimization propagates alignment of function
-parameters to support better vectorization and string operations.
-
-This flag is enabled by default at @option{-O2} and @option{-Os}.  It
-requires that @option{-fipa-cp} is enabled.
-@option{-fipa-cp-alignment} is obsolete, use @option{-fipa-bit-cp} instead.
+This option has been superseded by @option{-fipa-bit-cp} and is now
+deprecated.  Use @option{-fipa-bit-cp} instead.
 
 @item -fipa-bit-cp
 @opindex -fipa-bit-cp