1  /* PR middle-end/78540 */
       2  /* { dg-do compile { target int128 } } */
       3  /* { dg-options "-O2 -Wno-psabi" } */
       4  /* { dg-additional-options "-march=core2" { target i?86-*-* x86_64-*-* } } */
       5  
       6  typedef unsigned __int128 V __attribute__ ((vector_size (64)));
       7  V g;
       8  
       9  static inline V
      10  foo (V a)
      11  {
      12    V b, c;
      13    c[0] = 0;
      14    a += 2281559097;
      15    c ^= 0;
      16    b[0] = 0;
      17    return 1 + c + b + a;
      18  }
      19  
      20  V
      21  bar ()
      22  {
      23    V a = g, b = g;
      24    a[1] ^= 1;
      25    b[foo (a)[0] & 3] |= 1;
      26    return b;
      27  }