1  /* PR target/77526 */
       2  /* { dg-do compile { target int128 } } */
       3  /* { dg-options "-Os -fno-forward-propagate -fno-gcse -fno-rerun-cse-after-loop -mstringop-strategy=byte_loop -Wno-psabi" } */
       4  
       5  typedef char U __attribute__((vector_size(64)));
       6  typedef __int128 V __attribute__((vector_size(64)));
       7  
       8  V
       9  foo (int a, int b, __int128 c, U u)
      10  {
      11    u = (u >> (u & 7)) | (u << -(u & 7));
      12    return a + b + c + (V)u;
      13  }