[AArch64] SVE tests
[official-gcc.git] / gcc / testsuite / gcc.target / aarch64 / sve / pack_float_1_run.c
blob3d7a175c9513d165c61676eb62814e5b7a1081aa
1 /* { dg-do run { target aarch64_sve_hw } } */
2 /* { dg-options "-O2 -ftree-vectorize" } */
4 #include "pack_float_1.c"
6 #define ARRAY_SIZE 107
8 #define VAL1 ((i * 886.556) - (43 * 886.556))
10 int __attribute__ ((optimize (1)))
11 main (void)
13 float array_dest[ARRAY_SIZE];
14 double array_source[ARRAY_SIZE];
16 for (int i = 0; i < ARRAY_SIZE; i++)
18 array_source[i] = VAL1;
19 asm volatile ("" ::: "memory");
22 pack_float_plus_1point1 (array_dest, array_source, ARRAY_SIZE);
23 for (int i = 0; i < ARRAY_SIZE; i++)
24 if (array_dest[i] != (float) (VAL1 + 1.1))
25 __builtin_abort ();
27 return 0;