1/* { dg-do run } */
2/* { dg-require-effective-target avx } */
3/* { dg-options "-O2 -mavx" } */
4
5#include "avx-check.h"
6
7static __m256i
8__attribute__((noinline))
9foo (char x)
10{
11  return _mm256_set_epi8 (x, x, x, x, x, x, x, x,
12			  x, x, x, x, x, x, x, x,
13			  x, x, x, x, x, x, x, x,
14			  x, x, x, x, x, x, x, x);
15}
16
17static void
18avx_test (void)
19{
20  char e = -45;
21  char v[32];
22  union256i_b u;
23  int i;
24
25  for (i = 0; i < ARRAY_SIZE (v); i++)
26    v[i] = e;
27  u.x = foo (e);
28  if (check_union256i_b (u, v))
29    abort ();
30}
31