https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101612
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Hmm, looks like missed PRE of the COMPLEX_EXPR to me. simplifying {complex_expr,_18,_19} translated 4 -> 3 to {complex_expr,_16,_17} to _15 Starting insert iteration 1 Skipping partial redundancy for expression {complex_expr,_18,_19} (0003), no redundancy on to be optimized for speed edge indeed there's no redundancy on the speed edge and we'd end up splitting the edge for the insertion on the speed edge.