modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/compile/pr37341.c (about)

     1  /* PR rtl-optimization/37341 */
     2  
     3  short int a;
     4  int b;
     5  
     6  static inline int
     7  f1 (int x, int y)
     8  {
     9    if (x < 0 || y < 0 || y >= sizeof (int) * 8 || x > (1 >> y))
    10      return x;
    11  }
    12  
    13  static inline unsigned int
    14  f2 (int x, int y)
    15  {
    16    if (y <= 0 && x && y < __INT_MAX__ / x)
    17      return x;
    18    return x * y;
    19  }
    20  
    21  int
    22  f3 (void)
    23  {
    24    return (signed char) 0xb6;
    25  }
    26  
    27  unsigned int
    28  f4 (unsigned int x)
    29  {
    30    while (1)
    31      {
    32        if ((f2 (f3 (), (f1 (a, b)))) < x)
    33  	return 1;
    34      }
    35  }