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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[9/10 Regression] wrong     |[9/10 Regression] wrong
                   |code at -O3 on              |code at -O3 on
                   |x86_64-linux-gnu            |x86_64-linux-gnu since
                   |                            |r9-1732

--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
So one can turn it into:
/* PR tree-optimization/93820 */
/* { dg-do run } */
/* { dg-options "-O2 -fno-tree-dse" } */

typedef int v4si __attribute__((vector_size(4 * sizeof (int))));
int a[10];

__attribute__((noipa)) int
foo (int *p)
{
  a[6] = *p;
  a[4] = 1;
  *(((v4si *)&a[0]) + 1) = (v4si) { 0, 0, 0, 0 };
  a[3] = 0;
}

int
main ()
{
  int i = 0;
  foo (&i);
  for (i = 0; i < 10; i++)
    if (a[i])
      __builtin_abort ();
  return 0;
}

which started to be miscompiled with
r9-1732-ga7fe6482214cb17e37b1099b2e0e7b2a6babdc47
Thus, I'll have a look.

Reply via email to