2018-03-08 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.target / i386 / pr70028.c
blobc071aad7403c2128dc7a412cce4f3d7666b1d53d
1 /* PR target/70028 */
2 /* { dg-do assemble { target avx512bw } } */
3 /* { dg-require-effective-target int128 } */
4 /* { dg-require-effective-target masm_intel } */
5 /* { dg-options "-O2 -fno-forward-propagate -mavx512bw -masm=intel" } */
7 typedef unsigned short A;
8 typedef int B __attribute__ ((vector_size (32)));
9 typedef unsigned __int128 C;
10 typedef __int128 D __attribute__ ((vector_size (32)));
13 foo (A a, int b, unsigned c, C d, A e, unsigned f, B g, D h)
15 g[1] ^= (A) ~ a;
16 a ^= (unsigned) g[0];
17 h %= (D) h | 1;
18 return a + b + c + d + e + g[0] + g[1] + h[1];