public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH, rs6000] Begin deprecation of -maltivec=be
@ 2018-02-13 22:11 Kelvin Nilsen
  2018-02-13 23:33 ` Segher Boessenkool
  0 siblings, 1 reply; 2+ messages in thread
From: Kelvin Nilsen @ 2018-02-13 22:11 UTC (permalink / raw)
  To: gcc-patches; +Cc: Segher Boessenkool


PR 78303 was recently marked RESOLVED, WONTFIX.  The resolution was to
deprecate the troublesome command-line option.

This patch begins the process of deprecation by issuing a warning
message when this command-line option is specified.  The patch has
bootstrapped and tested without regressions on
powerpc64le-unknown-linux.  Is this ok for trunk?

gcc/ChangeLog:

2018-02-13  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* config/rs6000/rs6000.c (rs6000_option_override_internal): Issue
	warning message if user requests -maltivec=be.

gcc/testsuite/ChangeLog:

2018-02-13  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* gcc.dg/vmx/extract-be-order.c: Disable -maltivec=be warning so
	this test case still works ok.
	* gcc.dg/vmx/extract-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/insert-be-order.c: Likewise.
	* gcc.dg/vmx/insert-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/ld-be-order.c: Likewise.
	* gcc.dg/vmx/ld-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/lde-be-order.c: Likewise.
	* gcc.dg/vmx/ldl-be-order.c: Likewise.
	* gcc.dg/vmx/ldl-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/merge-be-order.c: Likewise.
	* gcc.dg/vmx/merge-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/mult-even-odd-be-order.c: Likewise.
	* gcc.dg/vmx/pack-be-order.c: Likewise.
	* gcc.dg/vmx/perm-be-order.c: Likewise.
	* gcc.dg/vmx/splat-be-order.c: Likewise.
	* gcc.dg/vmx/splat-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/st-be-order.c: Likewise.
	* gcc.dg/vmx/st-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/ste-be-order.c: Likewise.
	* gcc.dg/vmx/stl-be-order.c: Likewise.
	* gcc.dg/vmx/stl-vsx-be-order.c: Likewise.
	* gcc.dg/vmx/sum2s-be-order.c: Likewise.
	* gcc.dg/vmx/unpack-be-order.c: Likewise.
	* gcc.dg/vmx/vsums-be-order.c: Likewise.
	* gcc.target/powerpc/vec-setup-be-long.c: Likewise.

Index: gcc/config/rs6000/rs6000.c
===================================================================
--- gcc/config/rs6000/rs6000.c	(revision 257395)
+++ gcc/config/rs6000/rs6000.c	(working copy)
@@ -4028,6 +4028,13 @@ rs6000_option_override_internal (bool global_init_
   if (global_init_p)
     rs6000_isa_flags_explicit = global_options_set.x_rs6000_isa_flags;
 
+  /* We plan to deprecate the -maltivec=be option.  For now, just
+     issue a warning message.  */
+  if (global_init_p
+      && (rs6000_altivec_element_order == 2))
+    warning (0, "%qs command-line option is deprecated",
+	     "-maltivec=be");
+
   /* On 64-bit Darwin, power alignment is ABI-incompatible with some C
      library functions, so warn about it. The flag may be useful for
      performance studies from time to time though, so don't disable it
Index: gcc/testsuite/gcc.dg/vmx/extract-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/extract-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/extract-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx -w" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/extract-vsx-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/extract-vsx-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/extract-vsx-be-order.c	(working copy)
@@ -1,6 +1,6 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx -w" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/insert-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/insert-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/insert-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c	(working copy)
@@ -1,6 +1,6 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/ld-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/ld-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/ld-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/ld-vsx-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/ld-vsx-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/ld-vsx-be-order.c	(working copy)
@@ -1,6 +1,6 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/lde-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/lde-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/lde-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/ldl-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/ldl-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/ldl-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/ldl-vsx-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/ldl-vsx-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/ldl-vsx-be-order.c	(working copy)
@@ -1,6 +1,6 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/merge-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/merge-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/merge-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/merge-vsx-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/merge-vsx-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/merge-vsx-be-order.c	(working copy)
@@ -1,6 +1,6 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/mult-even-odd-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/mult-even-odd-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/mult-even-odd-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/pack-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/pack-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/pack-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/perm-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/perm-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/perm-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/splat-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/splat-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/splat-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/splat-vsx-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/splat-vsx-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/splat-vsx-be-order.c	(working copy)
@@ -1,6 +1,6 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/st-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/st-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/st-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/st-vsx-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/st-vsx-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/st-vsx-be-order.c	(working copy)
@@ -1,6 +1,6 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/ste-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/ste-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/ste-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/stl-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/stl-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/stl-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/stl-vsx-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/stl-vsx-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/stl-vsx-be-order.c	(working copy)
@@ -1,6 +1,6 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/unpack-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/unpack-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/unpack-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx -Wno-shift-overflow" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx -Wno-shift-overflow" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.dg/vmx/vsums-be-order.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/vsums-be-order.c	(revision 257395)
+++ gcc/testsuite/gcc.dg/vmx/vsums-be-order.c	(working copy)
@@ -1,4 +1,4 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
Index: gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c
===================================================================
--- gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c	(revision 257395)
+++ gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c	(working copy)
@@ -1,6 +1,6 @@
 /* { dg-do run { target { powerpc64le*-*-linux* } } } */
 /* { dg-require-effective-target vsx_hw } */
-/* { dg-options "-O2 -mvsx -maltivec=be" } */
+/* { dg-options "-w -O2 -mvsx -maltivec=be" } */
 
 /* Test various ways of creating vectors with 2 double words and accessing the
    elements.  This test uses the long (on 64-bit systems) or long long datatype

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH, rs6000] Begin deprecation of -maltivec=be
  2018-02-13 22:11 [PATCH, rs6000] Begin deprecation of -maltivec=be Kelvin Nilsen
@ 2018-02-13 23:33 ` Segher Boessenkool
  0 siblings, 0 replies; 2+ messages in thread
From: Segher Boessenkool @ 2018-02-13 23:33 UTC (permalink / raw)
  To: Kelvin Nilsen; +Cc: gcc-patches

On Tue, Feb 13, 2018 at 04:11:36PM -0600, Kelvin Nilsen wrote:
> PR 78303 was recently marked RESOLVED, WONTFIX.  The resolution was to
> deprecate the troublesome command-line option.
> 
> This patch begins the process of deprecation by issuing a warning
> message when this command-line option is specified.  The patch has
> bootstrapped and tested without regressions on
> powerpc64le-unknown-linux.  Is this ok for trunk?

Is -w appropriate for all these testcases, i.e. would we want to see
any other warnings that are generated for them?  Or will we remember
to remove -w when we remove -maltivec=be :-)

Will you write a wwwdocs patch as well, please?  Is the plan to remove
this in GCC 9 already?

> --- gcc/config/rs6000/rs6000.c	(revision 257395)
> +++ gcc/config/rs6000/rs6000.c	(working copy)
> @@ -4028,6 +4028,13 @@ rs6000_option_override_internal (bool global_init_
>    if (global_init_p)
>      rs6000_isa_flags_explicit = global_options_set.x_rs6000_isa_flags;
>  
> +  /* We plan to deprecate the -maltivec=be option.  For now, just
> +     issue a warning message.  */
> +  if (global_init_p
> +      && (rs6000_altivec_element_order == 2))

Please remove the useless parens.

Otherwise okay for trunk.  Thanks!


Segher

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-02-13 23:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-13 22:11 [PATCH, rs6000] Begin deprecation of -maltivec=be Kelvin Nilsen
2018-02-13 23:33 ` Segher Boessenkool

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).