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

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Created attachment 53578
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53578&action=edit
CFG of the second testcase

With -m32 one can see the full redundancy discovery is a bit fragile since it
requires an out-of-loop use to make the cross loop redundancy anticipated.
See the CFG graph for illustration.  It should be possible to create a
smaller testcase from this, when the use of external.m_initialized is
removed then the PRE does no longer work.  That somehow happens with -m32
but not -m64 ...

Reply via email to