This patch fixes a defective macro definition, based on correct
definition in similar testcases.  The test currently passes
through luck rather than correctness.

OK for commit?

Cheers,
Ian


2014-05-08  Ian Bolton  <ian.bol...@arm.com>

gcc/testsuite
        * gcc.target/aarch64/vdup_lane_2.c (force_simd): Emit an
        actual instruction to move into the allocated register.
diff --git a/gcc/testsuite/gcc.target/aarch64/vdup_lane_2.c 
b/gcc/testsuite/gcc.target/aarch64/vdup_lane_2.c
index 7c04e75..2072c79 100644
--- a/gcc/testsuite/gcc.target/aarch64/vdup_lane_2.c
+++ b/gcc/testsuite/gcc.target/aarch64/vdup_lane_2.c
@@ -4,10 +4,11 @@
 
 #include <arm_neon.h>
 
-#define force_simd(V1)   asm volatile (""      \
-          : "=w"(V1)                           \
-          : "w"(V1)                            \
-          : /* No clobbers */)
+/* Used to force a variable to a SIMD register.  */
+#define force_simd(V1)   asm volatile ("orr %0.16b, %1.16b, %1.16b"    \
+          : "=w"(V1)                                                   \
+          : "w"(V1)                                                    \
+          : /* No clobbers */);
 
 extern void abort (void);
 

Reply via email to