http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56787

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |rguenth at gcc dot 
gnu.org

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
The clobbers are dead and useless btw, but we only remove clobbers from
within remove_unused_locals which doesn't run inbetween after IPA inlining
and right before RTL expansion (rightfully so).

Vectorizing without removing the clobbers requires us to honor them at least
for placement of aliasing vectorized stores / loads and also IV adjustments
in case the clobber is a MEM of an SSA name and that is loop variant
(now possible, but not on the 4.8 branch).

So the simplest solution is to discard all clobbers inside the vectorized
loop body.

Reply via email to