1  /* PR rtl-optimization/78526 */
       2  /* { dg-do compile { target int128 } } */
       3  /* { dg-options "-O -fno-tree-ccp -fno-tree-sra -g -w" } */
       4  /* { dg-additional-options "-mavx512bw" { target i?86-*-* x86_64-*-* } } */
       5  
       6  typedef unsigned U __attribute__ ((vector_size (64)));
       7  typedef unsigned __int128 V __attribute__ ((vector_size (64)));
       8  
       9  static inline V
      10  bar (U u, U x, V v)
      11  {
      12    v = (V)(U) { 0, ~0 };
      13    v[x[0]] <<= u[-63];
      14    return v;
      15  }
      16  
      17  V
      18  foo (U u)
      19  {
      20    return bar (u, (U) {}, (V) {});
      21  }