AArch64 - fix invalid assembler in testcase
authoribolton <ibolton@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 May 2013 14:59:20 +0000 (14:59 +0000)
committeribolton <ibolton@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 May 2013 14:59:20 +0000 (14:59 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199294 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/scalar_intrinsics.c

index cd0842d..bf8ba0b 100644 (file)
@@ -1,3 +1,10 @@
+2013-05-24  Ian Bolton  <ian.bolton@arm.com>
+
+       * gcc.target/aarch64/scalar_intrinsics.c
+       (force_simd): Use a valid instruction.
+       (test_vdupd_lane_s64): Pass a valid lane argument.
+       (test_vdupd_lane_u64): Likewise.
+
 2013-05-24  Richard Biener  <rguenther@suse.de>
 
        PR tree-optimization/57287
index 7427c62..16537ce 100644 (file)
@@ -4,7 +4,7 @@
 #include <arm_neon.h>
 
 /* Used to force a variable to a SIMD register.  */
-#define force_simd(V1)   asm volatile ("mov %d0, %d1"          \
+#define force_simd(V1)   asm volatile ("mov %d0, %1.d[0]"      \
           : "=w"(V1)                                           \
           : "w"(V1)                                            \
           : /* No clobbers */);
@@ -228,13 +228,13 @@ test_vdups_lane_u32 (uint32x4_t a)
 int64x1_t
 test_vdupd_lane_s64 (int64x2_t a)
 {
-  return vdupd_lane_s64 (a, 2);
+  return vdupd_lane_s64 (a, 1);
 }
 
 uint64x1_t
 test_vdupd_lane_u64 (uint64x2_t a)
 {
-  return vdupd_lane_u64 (a, 2);
+  return vdupd_lane_u64 (a, 1);
 }
 
 /* { dg-final { scan-assembler-times "\\tcmtst\\td\[0-9\]+, d\[0-9\]+, d\[0-9\]+" 2 } } */