(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
pr89435.c
       1  /* PR rtl-optimization/89435 */
       2  /* { dg-do run } */
       3  /* { dg-options "-O1 -fno-forward-propagate -fno-tree-forwprop -fno-tree-ccp" } */
       4  
       5  unsigned short a;
       6  unsigned int b, c, d, e, f;
       7  
       8  int
       9  main ()
      10  {
      11  #if __CHAR_BIT__ == 8 && __SIZEOF_INT__ == 4
      12    unsigned char g = e = __builtin_mul_overflow_p (5, 542624702, 0);
      13    d = __builtin_bswap64 (a);
      14    b = __builtin_sub_overflow ((unsigned char) -e, (unsigned int) d, &g);
      15    e = __builtin_mul_overflow (b, c, &a);
      16    f = g + e;
      17    if (f != 0xff)
      18      __builtin_abort ();
      19  #endif
      20    return 0;
      21  }