This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH rs6000] Fix up BMI/BMI2 intrinsic DG tests
- From: Steven Munroe <munroesj at linux dot vnet dot ibm dot com>
- To: gcc-patches <gcc-patches at gcc dot gnu dot org>
- Cc: Segher Boessenkool <segher at kernel dot crashing dot org>, David Edelsohn <dje dot gcc at gmail dot com>
- Date: Mon, 17 Jul 2017 13:28:20 -0500
- Subject: [PATCH rs6000] Fix up BMI/BMI2 intrinsic DG tests
- Authentication-results: sourceware.org; auth=none
- Reply-to: munroesj at linux dot vnet dot ibm dot com
After a resent GCC change the previously submitted BMI/BMI2 intrinsic
test started to fail with the following warning/error.
ppc_cpu_supports_hw_available122373.c: In function 'main':
ppc_cpu_supports_hw_available122373.c:9:10: warning:
__builtin_cpu_supports need
s GLIBC (2.23 and newer) that exports hardware capability bits
The does not occur on systems with the newer (2.23) GLIBC but is common
on older (stable) distos.
As this is coming from the bmi-check.h and bmi2-check.h includes (and
not the tests directly) it seems simpler to simply skip the test unless
__BUILTIN_CPU_SUPPORTS__ is defined.
[gcc/testsuite]
2017-07-17 Steven Munroe <munroesj@gcc.gnu.org>
*gcc.target/powerpc/bmi-check.h (main): Skip unless
__BUILTIN_CPU_SUPPORTS__ defined.
*gcc.target/powerpc/bmi2-check.h (main): Skip unless
__BUILTIN_CPU_SUPPORTS__ defined.
Index: gcc/testsuite/gcc.target/powerpc/bmi-check.h
===================================================================
--- gcc/testsuite/gcc.target/powerpc/bmi-check.h (revision 250212)
+++ gcc/testsuite/gcc.target/powerpc/bmi-check.h (working copy)
@@ -13,6 +13,7 @@ do_test (void)
int
main ()
{
+#ifdef __BUILTIN_CPU_SUPPORTS__
/* Need 64-bit for 64-bit longs as single instruction. */
if ( __builtin_cpu_supports ("ppc64") )
{
@@ -25,6 +26,6 @@ main ()
else
printf ("SKIPPED\n");
#endif
-
+#endif /* __BUILTIN_CPU_SUPPORTS__ */
return 0;
}
Index: gcc/testsuite/gcc.target/powerpc/bmi2-check.h
===================================================================
--- gcc/testsuite/gcc.target/powerpc/bmi2-check.h (revision 250212)
+++ gcc/testsuite/gcc.target/powerpc/bmi2-check.h (working copy)
@@ -13,6 +13,7 @@ do_test (void)
int
main ()
{
+#ifdef __BUILTIN_CPU_SUPPORTS__
/* The BMI2 test for pext test requires the Bit Permute doubleword
(bpermd) instruction added in PowerISA 2.06 along with the VSX
facility. So we can test for arch_2_06. */
@@ -27,7 +28,7 @@ main ()
else
printf ("SKIPPED\n");
#endif
-
+#endif /* __BUILTIN_CPU_SUPPORTS__ */
return 0;
}