blob: 0993155f0c469f4ad2e1c5a072b2e4374c7fbd66 [file] [log] [blame]
/* PR debug/86194 */
/* { dg-do compile { target int128 } } */
/* { dg-options "-O -g -mavx512bw" } */
typedef unsigned U __attribute__ ((vector_size (64)));
typedef unsigned long V __attribute__ ((vector_size (64)));
typedef unsigned __int128 W __attribute__ ((vector_size (64)));
U u;
W
bar (W w)
{
U k = u;
w <<= (W)(U) { 5, 3, 3, 0, 7, 3, 1, 3, k[7] };
k += (U) { -(char)w[3] } != k;
return (W)k + w;
}
void
foo (void)
{
u = (U){ bar ((W)(V) { 0, ~0, 0, 0, 0, 0, ~0 })[0] };
}