Imported Upstream version 4.8.1
[platform/upstream/gcc48.git] / gcc / testsuite / gcc.target / arm / neon-vld1_dupQ.c
1 /* Test the `vld1q_s64' ARM Neon intrinsic.  */
2
3 /* { dg-do run } */
4 /* { dg-require-effective-target arm_neon_hw } */
5 /* { dg-options "-O0" } */
6 /* { dg-add-options arm_neon } */
7
8 #include "arm_neon.h"
9 #include <stdlib.h>
10
11 int main (void)
12 {
13   int64x1_t input[2] = {(int64x1_t)0x0123456776543210LL,
14                         (int64x1_t)0x89abcdeffedcba90LL};
15   int64x1_t output[2] = {0, 0};
16   int64x2_t var = vld1q_dup_s64((int64_t *)input);
17
18   vst1q_s64((int64_t *)output, var);
19   if (output[0] != (int64x1_t)0x0123456776543210LL)
20     abort();
21   if (output[1] != (int64x1_t)0x0123456776543210LL)
22     abort();
23   return 0;
24 }