rs6000.c (rs6000_option_override_internal): Issue warning message if user requests...
authorKelvin Nilsen <kelvin@gcc.gnu.org>
Wed, 14 Feb 2018 19:20:30 +0000 (19:20 +0000)
committerKelvin Nilsen <kelvin@gcc.gnu.org>
Wed, 14 Feb 2018 19:20:30 +0000 (19:20 +0000)
gcc/ChangeLog:

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

* config/rs6000/rs6000.c (rs6000_option_override_internal): Issue
warning message if user requests -maltivec=be.
* doc/invoke.texi: Document deprecation of -maltivec=be.

gcc/testsuite/ChangeLog:

2018-02-14  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.

From-SVN: r257668

29 files changed:
gcc/ChangeLog
gcc/config/rs6000/rs6000.c
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/vmx/extract-be-order.c
gcc/testsuite/gcc.dg/vmx/extract-vsx-be-order.c
gcc/testsuite/gcc.dg/vmx/insert-be-order.c
gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c
gcc/testsuite/gcc.dg/vmx/ld-be-order.c
gcc/testsuite/gcc.dg/vmx/ld-vsx-be-order.c
gcc/testsuite/gcc.dg/vmx/lde-be-order.c
gcc/testsuite/gcc.dg/vmx/ldl-be-order.c
gcc/testsuite/gcc.dg/vmx/ldl-vsx-be-order.c
gcc/testsuite/gcc.dg/vmx/merge-be-order.c
gcc/testsuite/gcc.dg/vmx/merge-vsx-be-order.c
gcc/testsuite/gcc.dg/vmx/mult-even-odd-be-order.c
gcc/testsuite/gcc.dg/vmx/pack-be-order.c
gcc/testsuite/gcc.dg/vmx/perm-be-order.c
gcc/testsuite/gcc.dg/vmx/splat-be-order.c
gcc/testsuite/gcc.dg/vmx/splat-vsx-be-order.c
gcc/testsuite/gcc.dg/vmx/st-be-order.c
gcc/testsuite/gcc.dg/vmx/st-vsx-be-order.c
gcc/testsuite/gcc.dg/vmx/ste-be-order.c
gcc/testsuite/gcc.dg/vmx/stl-be-order.c
gcc/testsuite/gcc.dg/vmx/stl-vsx-be-order.c
gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c
gcc/testsuite/gcc.dg/vmx/unpack-be-order.c
gcc/testsuite/gcc.dg/vmx/vsums-be-order.c
gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c

index 62c7863..e0b2e0f 100644 (file)
@@ -1,3 +1,9 @@
+2018-02-14  Kelvin Nilsen  <kelvin@gcc.gnu.org>
+
+       * config/rs6000/rs6000.c (rs6000_option_override_internal): Issue
+       warning message if user requests -maltivec=be.
+       * doc/invoke.texi: Document deprecation of -maltivec=be.
+
 2018-02-14  Will Schmidt  <will_schmidt@vnet.ibm.com>
 
        PR target/84220
index ddfc106..3bb8d2a 100644 (file)
@@ -4028,6 +4028,13 @@ rs6000_option_override_internal (bool global_init_p)
   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 48194c8..f0b11a0 100644 (file)
@@ -23371,7 +23371,9 @@ little-endian platform.
 @opindex maltivec=be
 Generate AltiVec instructions using big-endian element order,
 regardless of whether the target is big- or little-endian.  This is
-the default when targeting a big-endian platform.
+the default when targeting a big-endian platform.  Using this option
+is currently deprecated.  Support for this feature will be removed in
+GCC 9.
 
 The element order is used to interpret element numbers in AltiVec
 intrinsics such as @code{vec_splat}, @code{vec_extract}, and
index 7b6ba1d..33967f2 100644 (file)
@@ -1,3 +1,32 @@
+2018-02-14  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.
+
 2018-02-14  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR c++/84350
index 5c09471..f03c356 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx -w" } */
 
 #include "harness.h"
 
index 8c965f6..509a7b6 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx -w" } */
 
 #include "harness.h"
 
index 592ef28..7aa28f8 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 6cb59dd..569a866 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
index 903b997..f7361cf 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index c870c55..f023667 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
index 9a6d5ba..53c3b78 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 397849f..49ba48b 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 222d1db..edac676 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
index 2de888f..4cc0d44 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index b01208d..6719327 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
index 6ba12d0..84a8951 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index c400fc8..3e71b31 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 604f63d..3a79428 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index e265ae4..96d0869 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 620a31f..e0dca6b 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
index 1a7b01b..e1cd826 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 4881446..1ce8f41 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
index 75f2004..cfc6877 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 7f00a03..28fd9e7 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 65e2f25..1abd3ed 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
 /* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
 
 #include "harness.h"
 
index 0981cc1..03c6faa 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 6eb98f4..0d65a4f 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx -Wno-shift-overflow" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx -Wno-shift-overflow" } */
 
 #include "harness.h"
 
index e4a34e9..1f640e7 100644 (file)
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be.  */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
 
 #include "harness.h"
 
index 492cd2d..691b378 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-do run { target { powerpc64le*-*-linux* } } } */
 /* { dg-require-effective-target vsx_hw } */
-/* { dg-options "-O2 -mvsx -maltivec=be" } */
+/* Disable warnings to squelch deprecation message about -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