https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103690
--- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Richard Biener <rgue...@gcc.gnu.org>: https://gcc.gnu.org/g:ebc853deb7cc0487de9ef6e891a007ba853d1933 commit r12-6208-gebc853deb7cc0487de9ef6e891a007ba853d1933 Author: Richard Biener <rguent...@suse.de> Date: Tue Jan 4 11:59:35 2022 +0100 tree-optimization/103690 - not up-to-date SSA and PRE DCE This avoids running simple_dce_from_worklist on partially not up-to-date SSA form (in unreachable code regions) by scheduling CFG cleanup manually as is done anyway when tail-merging runs. 2022-01-04 Richard Biener <rguent...@suse.de> PR tree-optimization/103690 * tree-pass.h (tail_merge_optimize): Adjust. * tree-ssa-tail-merge.c (tail_merge_optimize): Pass in whether to re-split critical edges, move CFG cleanup ... * tree-ssa-pre.c (pass_pre::execute): ... here, before simple_dce_from_worklist and delay freeing inserted_exprs from ... (fini_pre): .. here.