modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/20060930-1.c (about)

     1  /* PR rtl-optimization/28096 */
     2  /* Origin: Jan Stein <jan@gatespacetelematics.com> */
     3  
     4  extern void abort (void);
     5  
     6  int bar (int, int) __attribute__((noinline));
     7  int bar (int a, int b)
     8  {
     9    if (b != 1)
    10      abort ();
    11  }
    12  
    13  void foo(int, int) __attribute__((noinline));
    14  void foo (int e, int n)
    15  {
    16    int i, bb2, bb5;
    17  
    18    if (e > 0)
    19      e = -e;
    20  
    21    for (i = 0; i < n; i++)
    22      {
    23        if (e >= 0)
    24  	{
    25  	  bb2 = 0;
    26  	  bb5 = 0;
    27  	}
    28        else
    29  	{
    30  	  bb5 = -e;
    31  	  bb2 = bb5;
    32  	}
    33  
    34        bar (bb5, bb2);
    35      }
    36  }
    37  
    38  int main(void)
    39  {
    40    foo (1, 1);
    41    return 0;
    42  }