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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |alias

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
But DSE removes the stores:
```
  Deleted dead store: # .MEM_26 = VDEF <.MEM_11>
typesD.4024[2] = 2;

  Deleted dead store: # .MEM_11 = VDEF <.MEM_24>
typesD.4024[1] = 1;

  Deleted dead store: # .MEM_24 = VDEF <.MEM_3>
typesD.4024[0] = 0;
```

Manually doing these stores are not removed though. So maybe there is oddity of
how SRA adds these assignments.
  # VUSE <.MEM_5(D)>
  SR.4_7 = *.LC0D_4043[0l];
  # VUSE <.MEM_5(D)>
  SR.5_8 = *.LC0D_4043[1l];
  # VUSE <.MEM_5(D)>
  SR.6_9 = *.LC0D_4043[2l];
...

  # .MEM_24 = VDEF <.MEM_3>
  typesD_4024[0l] = SR.4_7;
  # .MEM_11 = VDEF <.MEM_24>
  typesD_4024[1l] = SR.5_8;
  # .MEM_26 = VDEF <.MEM_11>
  typesD_4024[2l] = SR.6_9;

Reply via email to