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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|marxin at gcc dot gnu.org          |rguenth at gcc dot 
gnu.org

--- Comment #16 from Richard Biener <rguenth at gcc dot gnu.org> ---
So the issue is that CFG cleanup has to run before update_ssa and update_ssa
will have the job to replace _1 with _25.  But then BB merging done as part
of later cleanup ends up folding stmts with out-of-date SSA form.  We have

  /* Start by iterating over all basic blocks in PRE order looking for
     edge removal opportunities.  Do this first because incoming SSA form
     may be invalid and we want to avoid performing SSA related tasks such
     as propgating out a PHI node during BB merging in that state.  */
  retval |= cleanup_control_flow_pre ();

but regular SSA update is still not done here.

Reply via email to