(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
i386/
pr77856.c
       1  /* { dg-do run } */
       2  /* { dg-options "-O2" } */
       3  
       4  extern void abort (void);
       5  
       6  unsigned a, e;
       7  
       8  struct S0
       9  {
      10    int f1;
      11    int f8;
      12  } c = {4, 6};
      13  
      14  int b, f, g, h, i, j, l, p;
      15  short d, o = -7;
      16  char k, n = 5;
      17  
      18  unsigned fn1 (int p1, int p2)
      19  {
      20    return p2 >= 2 || p1 >> p2 ? p1 : p1 << p2;
      21  }
      22  
      23  static short fn2 (struct S0 p1)
      24  {
      25    int *q = 0;
      26    int r = 7;
      27    if (!a)
      28      {
      29        c.f1 = 1;
      30        for (; c.f1; c.f1--)
      31  	if (fn1 (10 != 0, p1.f8))
      32  	  {
      33  	    short s = 9 << ~o % (d ^ n);
      34  	    int t = s >> h % ~d;
      35  	    p = r;
      36  	    r = s | p * (d && 9) | t;
      37  	    int u = i & c.f1;
      38  	    unsigned v = ~(~(u & h) | (~(8 >> c.f1) & i));
      39  	    int w = v;
      40  	    if (u < 9)
      41  	      w = c.f1;
      42  	    if (i > h && u)
      43  	      {
      44  		__builtin_printf ("%d\n", c.f1);
      45  		continue;
      46  	      }
      47  	    c.f1 = w;
      48  	    if (!p)
      49  	      continue;
      50  	    return 0;
      51  	  }
      52        for (;;)
      53  	*q = 0;
      54      }
      55    return 0;
      56  }
      57  
      58  static void fn3 ()
      59  {
      60    fn2 (c);
      61    l = c.f1 < b;
      62    if (l)
      63      {
      64      L1:
      65        e = l | j / e % ~f;
      66        j = f - 4 % k < c.f1 / e / b - j - 1;
      67        if (l)
      68  	{
      69  	  __builtin_printf ("%d\n", b);
      70  	  goto L1;
      71  	}
      72        int m[245];
      73        g = m[2];
      74      }
      75  }
      76  
      77  int main ()
      78  {
      79    fn3 ();
      80    if (c.f1 != 1)
      81      abort ();
      82    return 0;
      83  }