/* { dg-do compile } */ /* { dg-require-effective-target int128 } */ /* { dg-options "-O -mavx512f" } */ typedef unsigned long V __attribute__((vector_size(64))); typedef unsigned __int128 W __attribute__((vector_size(64))); V foo(int i, V v) { i *= ((W)(V){0, 0, 0, 0, 0, 1, v[0]})[2]; v[i] = 0; i--; return v + i; }