PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gcc.target / i386 / vect-unpack-2.c
blob51c518e6111d51ccd4741fee8c217a6c70db9c8b
1 /* { dg-do run } */
2 /* { dg-options "-O2 -ftree-vectorize -ffast-math -mavx512bw -save-temps" } */
3 /* { dg-require-effective-target avx512bw } */
5 #include "avx512bw-check.h"
7 #define N 120
8 signed int yy[10000];
9 signed char zz[10000];
11 void
12 __attribute__ ((noinline,noclone)) foo (int s)
14 int i;
15 for (i = 0; i < s; i++)
16 yy[i] = zz[i];
19 void
20 avx512bw_test ()
22 signed char i;
23 for (i = 0; i < N; i++)
24 zz[i] = i;
25 foo (N);
26 for (i = 0; i < N; i++)
27 if ( (signed int)i != yy [i] )
28 abort ();
31 /* { dg-final { scan-assembler-times "vpmovsxbw\[ \\t\]+\[^\n\]*%zmm" 2 } } */