Commit 49cc0354 by Kelvin Nilsen

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

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
parent 2482a4ec
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
......
......@@ -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
......@@ -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
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
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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"
......
/* { 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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment