(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
i386/
pr85860.c
       1  /* { dg-do compile { target int128 } } */
       2  /* { dg-options "-O2 -fno-guess-branch-probability -flive-range-shrinkage -mbmi2" } */
       3  
       4  int a, b, c, d, e;
       5  
       6  extern int bar(void);
       7  
       8  __int128
       9  foo (unsigned g, int h, long i, __int128 j, short k, __int128 l)
      10  {
      11    unsigned __int128 m = j;
      12    do
      13      {
      14        j %= 5;
      15        c = c >> (m & 31);
      16        e = __builtin_sub_overflow (b, 0, &m);
      17        d = bar ();
      18        l *= __builtin_mul_overflow_p ((unsigned) d, ~(unsigned __int128) 1,
      19  				     (unsigned __int128) 0);
      20      }
      21    while (a);
      22    return m + j + k + l;
      23  }