aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/i386/pr85328.c
blob: 987ea82fdebb6ffa09bfbbb8ce37c661dd72c983 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/* PR target/85328 */
/* { dg-do assemble { target avx512f } } */
/* { dg-options "-O3 -fno-caller-saves -mavx512f" } */

typedef char U __attribute__((vector_size (64)));
typedef int V __attribute__((vector_size (64)));
U a, b;

extern void bar (void);

V
foo (V f)
{
  b <<= (U){(V){}[63]} & 7;
  bar ();
  a = (U)f & 7;
  return (V)b;
}