https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88533
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org --- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- So we do rely on loop header copying (our single "loop rotation" pass) to hoist invariant conditions out of loops. As said determining whether a condition is invariant or not is a bit awkward at the point of CH. But reverting the revision in question and re-instantiating the effect on the added testcase by adding heuristic to should_duplicate_loop_header_p should hopefully work.