1  /* { dg-do compile } */
       2  /* { dg-require-effective-target fgraphite } */
       3  /* { dg-require-effective-target pthread } */
       4  /* { dg-options "-floop-parallelize-all -fsave-optimization-record -ftree-parallelize-loops=2 -ftree-slp-vectorize" } */
       5  
       6  #include <stdint.h>
       7  #include <stdlib.h>
       8  
       9  signed char qq;
      10  int rm, mu, l9;
      11  long long unsigned int ip;
      12  
      13  void
      14  fi (void)
      15  {
      16  }
      17  
      18  void
      19  il (long long unsigned int c5)
      20  {
      21    int *na = μ
      22  
      23    while (l9 < 1)
      24      {
      25        if (qq < 1)
      26          {
      27            short int ds = 0;
      28  
      29            if ((ip - *na - ip / c5 != 0) && (*na / ((c5 + c5) && !!ip) != 0))
      30              __builtin_trap ();
      31  
      32            rm = -1 / (!!rm && !!c5);
      33  
      34            while (qq < 1)
      35              {
      36                ++*na;
      37                ++ip;
      38                if (*na < (int) ip)
      39                  while (ds < 2)
      40                    {
      41                      ++qq;
      42                      ++ds;
      43                    }
      44              }
      45          }
      46  
      47        ++l9;
      48      }
      49  
      50    for (;;)
      51      {
      52      }
      53  }
      54  
      55  void
      56  uu (short int wk)
      57  {
      58    int64_t tl = ip;
      59  
      60    while (ip < 2)
      61      {
      62        signed char vn;
      63  
      64        for (vn = 1; vn != 0; ++vn)
      65          {
      66            int rh;
      67  
      68            if (qq < 1)
      69              {
      70                while (mu < 1)
      71                  ip = 0;
      72  
      73                while (rm != 0)
      74                  ++rm;
      75              }
      76  
      77            for (rh = 0; rh < 3; ++rh)
      78              {
      79                int ab;
      80  
      81                for (ab = 0; ab < 5; ++ab)
      82                  {
      83                    tl -= qq;
      84                    wk += rh - tl;
      85                    ip += (ab < wk) + wk;
      86                  }
      87              }
      88          }
      89      }
      90  }
      91  
      92  void
      93  im (uint8_t kt)
      94  {
      95    int wu = 0;
      96  
      97    for (;;)
      98      {
      99        ++rm;
     100        if (rm < 1)
     101          {
     102            short int ms = 0;
     103  
     104            while (kt < 1)
     105              {
     106                ms += rm < 0;
     107  
     108                if (wu != 0)
     109                  for (;;)
     110                    {
     111                    }
     112  
     113                while (ms < 4)
     114                  {
     115                    while (wu < 1)
     116                      wu += 2;
     117  
     118                    ++ms;
     119                  }
     120              }
     121  
     122            if (ms == 0 || wu == 0)
     123              break;
     124          }
     125      }
     126  
     127    while (wu < 1)
     128      while (qq < 1)
     129        ++qq;
     130  }