Hi all,

This recently added test fails on arm. We haven't implemented these intrinsics 
for arm
(any volunteers?) so for now let's XFAIL these on that target.
Also, the float64 versions of these intrinsics are not supposed to be available 
on arm
so this patch slightly adjusts the test to not include them for aarch32.
In any case the entire test is XFAILed on arm, so this doesn't have any 
noticeable
effect.

The same number of tests (PASS) still occur on aarch64 but now they appear as 
XFAIL
rather than FAIL on arm.

Ok for trunk? (from an aarch64 perspective).

Thanks,
Kyrill

2018-01-11  Kyrylo Tkachov  <kyrylo.tkac...@arm.com>

    * gcc.target/aarch64/advsimd-intrinsics/vld1x2.c: Make float64
    tests specific to aarch64.  XFAIL test on arm.
diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x2.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x2.c
index 0a43d0daf8c39949d447d29d7a5fa37a60b97134..92a139bc52313ef52d8bd97c6eb64dd8a7f7769a 100644
--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x2.c
+++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x2.c
@@ -1,3 +1,5 @@
+/* We haven't implemented these intrinsics for arm yet.  */
+/* { dg-xfail-if "" { arm*-*-* } } */
 /* { dg-do run } */
 /* { dg-options "-O3" } */
 
@@ -26,7 +28,7 @@ test_vld##SUFFIX##_x2 ()			\
   return 0;					\
 }
 
-#define VARIANTS(VARIANT)	\
+#define VARIANTS_1(VARIANT)	\
 VARIANT (uint8, 8, _u8)		\
 VARIANT (uint16, 4, _u16)	\
 VARIANT (uint32, 2, _u32)	\
@@ -39,7 +41,6 @@ VARIANT (poly8, 8, _p8)		\
 VARIANT (poly16, 4, _p16)	\
 VARIANT (float16, 4, _f16)	\
 VARIANT (float32, 2, _f32)	\
-VARIANT (float64, 1, _f64)	\
 VARIANT (uint8, 16, q_u8)	\
 VARIANT (uint16, 8, q_u16)	\
 VARIANT (uint32, 4, q_u32)	\
@@ -51,8 +52,15 @@ VARIANT (int64, 2, q_s64)	\
 VARIANT (poly8, 16, q_p8)	\
 VARIANT (poly16, 8, q_p16)	\
 VARIANT (float16, 8, q_f16)	\
-VARIANT (float32, 4, q_f32)	\
+VARIANT (float32, 4, q_f32)
+
+#ifdef __aarch64__
+#define VARIANTS(VARIANT) VARIANTS_1(VARIANT)	\
+VARIANT (float64, 1, _f64)			\
 VARIANT (float64, 2, q_f64)
+#else
+#define VARIANTS(VARIANT) VARIANTS_1(VARIANT)
+#endif
 
 /* Tests of vld1_x2 and vld1q_x2.  */
 VARIANTS (TESTMETH)

Reply via email to