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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |i?86-*-*

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
I can reproduce on x86_64 with -m32.

  T (p->a1x[-1].a1);

and the both failing

  T (p->a1x[DIFF_MAX].a1);
  T (p->a1x[SIZE_MAX].a1);

resolve to the same value now.  At FRE1 we still have

  &p_74(D)->a1x[-1].a1;

and

  &p_74(D)->a1x[2147483647].a1;
  &p_74(D)->a1x[4294967295].a1;

the address calculations overflow in ways that make the addresses appear
the same.

Reply via email to