aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr105528.c
blob: e380d56ee060771a6bcc8d56ea9889a1e38a86e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* PR tree-optimization/105528 */
/* { dg-do compile } */
/* { dg-options "-O2 -Wno-psabi -fcompare-debug" } */
/* { dg-additional-options "-mavx512f" { target i?86-*-* x86_64-*-* } } */

typedef unsigned V __attribute__((__vector_size__ (64)));
V g;

V
bar (V v)
{
  V w;
  v <<= (V){(V){}[53]} >= v & 5;
  w[w[5]] -= ~0;
  v %= ~0;
  return v + w;
}

void
foo (void)
{
  g -= (V){bar((V){~0})[3]};
}