152
|
1 /* PR tree-optimization/94300 */
|
|
2 /* { dg-do run { target { avx512f } } } */
|
|
3 /* { dg-options "-O1 -mavx512f -mprefer-vector-width=512 -mtune=skylake-avx512" } */
|
|
4
|
|
5 #include "avx512f-check.h"
|
|
6
|
|
7 typedef double V __attribute__((vector_size (64)));
|
|
8
|
|
9 static void
|
|
10 avx512f_test (void)
|
|
11 {
|
|
12 double mem[16];
|
|
13 const V a = { 0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0 };
|
|
14 const V b = { 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0 };
|
|
15 V c;
|
|
16 __builtin_memcpy (mem, &a, 64);
|
|
17 __builtin_memcpy (mem + 8, &b, 64);
|
|
18 __builtin_memcpy (&c, mem + 4, 64);
|
|
19 if (c[5] != 9.0)
|
|
20 __builtin_abort ();
|
|
21 }
|