https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109925

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
                 CC|                            |hubicka at gcc dot gnu.org,
                   |                            |jakub at gcc dot gnu.org
   Target Milestone|---                         |10.5
          Component|c                           |tree-optimization
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2023-05-21
            Summary|Wrong code at -O2 on        |[10/11/12/13/14 Regression]
                   |x86_64-linux-gnu since      |Wrong code at -O2 on
                   |GCC-12                      |x86_64-linux-gnu since
                   |                            |GCC-12

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
With
int a, c, f;

int
main ()
{
  int g[2];
  for (c = 0; c < 2; c++)
    {
      {
        char h[20], *b = h;
        int d = 48, e = 0;
        while (d && e < 5)
          b[e++] = d /= 10;
        f = e;
      }
      g[f - 2 + c] = 0;
    }
  for (;;)
    {
      for (; a <= 4; a++)
        if (g[0])
          break;
      break;
    }
  if (a != 5)
    __builtin_abort ();
  return 0;
}
at -O2 this started with r7-1513-g1dc8d15bc6d7d55c7731093e

Reply via email to