https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86835
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org --- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Created attachment 44500 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44500&action=edit gcc9-pr86835.patch Untested fix. There was a thinko, in the gsi = *def_gsi; gsi_insert_after (def_gsi, new_stmt, GSI_NEW_STMT); case doing: gsi_insert_before (&gsi, new_square_stmt, GSI_SAME_STMT); results exactly in new_square_stmt being two stmts before new_stmt, when it should be after it (i.e. def_gsi points to some stmt, new_stmt is inserted after it and new_square_stmt before it.