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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |15.0
             Status|UNCONFIRMED                 |NEW
                 CC|                            |rguenth at gcc dot gnu.org
           Keywords|                            |alias
   Last reconfirmed|                            |2024-05-22
     Ever confirmed|0                           |1

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Confirmed.
```
  Deleted dead call: # .MEM_6 = VDEF <.MEM_4>
# PT = null { D.2790 }
# ALIGN = 8, MISALIGN = 0
e_7 = memcpyD.1670 (f_5, "z", 1);
```

Note the volatile makes the difference. It seems like we miss that the memory
escapes through the volatile store so we delete the memcpy as being dead.

Reply via email to