rs6000.h: Add conditional preprocessing directives to disable Power9-specific compiler...

gcc/ChangeLog:

2016-06-21  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* config/rs6000/rs6000.h: Add conditional preprocessing directives
	to disable Power9-specific compiler features if HAVE_AS_POWER9 is
	not defined.

gcc/testsuite/ChangeLog:

2016-06-21  Kelvin Nilsen  <kelvin@gcc.gnu.org>

	* gcc.target/powerpc/darn-0.c: Add dejagnu directives to disable
	test if effective-target is not powerpc_p9vector_ok, or if a -mcpu
	override other than -mcpu=power9 command-line option is specified,
	or if the target operating system is aix.
	* gcc.target/powerpc/darn-1.c: Likewise.
	* gcc.target/powerpc/darn-2.c: Likewise.
	* gcc.target/powerpc/vslv-0.c: Add dejagnu directives to disable
	test if effective-target is not powerpc_p9vector_ok or if the
	target operating system is not defined.
	* gcc.target/powerpc/vslv-1.c: Likewise.
	* gcc.target/powerpc/vsrv-0.c: Likewise.
	* gcc.target/powerpc/vsrv-1.c: Likewise.

From-SVN: r237659
This commit is contained in:
Kelvin Nilsen 2016-06-21 21:39:49 +00:00
parent d42b755992
commit caea59ff66
10 changed files with 60 additions and 2 deletions

View file

@ -1,3 +1,9 @@
2016-06-21 Kelvin Nilsen <kelvin@gcc.gnu.org>
* config/rs6000/rs6000.h: Add conditional preprocessing directives
to disable Power9-specific compiler features if HAVE_AS_POWER9 is
not defined.
2016-06-21 Eric Botcazou <ebotcazou@adacore.com>
* tree.c (verify_type_variant): Skip TYPE_SIZE and TYPE_SIZE_UNIT if

View file

@ -302,6 +302,26 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
#define TARGET_P8_VECTOR 0
#endif
/* Define the ISA 3.0 flags as 0 if the target assembler does not support
Power9 instructions. Allow -mpower9-fusion, since it does not add new
instructions. Allow -misel, since it predates ISA 3.0 and does
not require any Power9 features. */
#ifndef HAVE_AS_POWER9
#undef TARGET_FLOAT128_HW
#undef TARGET_MODULO
#undef TARGET_P9_VECTOR
#undef TARGET_P9_MINMAX
#undef TARGET_P9_DFORM_SCALAR
#undef TARGET_P9_DFORM_VECTOR
#define TARGET_FLOAT128_HW 0
#define TARGET_MODULO 0
#define TARGET_P9_VECTOR 0
#define TARGET_P9_MINMAX 0
#define TARGET_P9_DFORM_SCALAR 0
#define TARGET_P9_DFORM_VECTOR 0
#endif
/* Define TARGET_LWSYNC_INSTRUCTION if the assembler knows about lwsync. If
not, generate the lwsync code as an integer constant. */
#ifdef HAVE_AS_LWSYNC

View file

@ -1,3 +1,18 @@
2016-06-21 Kelvin Nilsen <kelvin@gcc.gnu.org>
* gcc.target/powerpc/darn-0.c: Add dejagnu directives to disable
test if effective-target is not powerpc_p9vector_ok, or if a -mcpu
override other than -mcpu=power9 command-line option is specified,
or if the target operating system is aix.
* gcc.target/powerpc/darn-1.c: Likewise.
* gcc.target/powerpc/darn-2.c: Likewise.
* gcc.target/powerpc/vslv-0.c: Add dejagnu directives to disable
test if effective-target is not powerpc_p9vector_ok or if the
target operating system is not defined.
* gcc.target/powerpc/vslv-1.c: Likewise.
* gcc.target/powerpc/vsrv-0.c: Likewise.
* gcc.target/powerpc/vsrv-1.c: Likewise.
2016-06-21 Tobias Burnus <burnus@net-b.de>
PR fortran/71068

View file

@ -1,4 +1,7 @@
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mcpu=power9" } */
/* This test should succeed on both 32- and 64-bit configurations. */

View file

@ -1,6 +1,9 @@
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-options "-mcpu=power9" } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-require-effective-target lp64 } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mcpu=power9" } */
#include <altivec.h>

View file

@ -1,6 +1,9 @@
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-options "-mcpu=power9" } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-require-effective-target lp64 } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mcpu=power9" } */
#include <altivec.h>

View file

@ -1,5 +1,7 @@
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mcpu=power9" } */
#include <altivec.h>

View file

@ -1,5 +1,7 @@
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mcpu=power9" } */
#include <altivec.h>

View file

@ -1,5 +1,7 @@
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mcpu=power9" } */
#include <altivec.h>

View file

@ -1,5 +1,7 @@
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-skip-if "" { powerpc*-*-aix* } } */
/* { dg-options "-mcpu=power9" } */
#include <altivec.h>