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

--- Comment #14 from GCC 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:8ff02df62935429d8956361cfdb897122492523d

commit r14-6181-g8ff02df62935429d8956361cfdb897122492523d
Author: Richard Biener <rguent...@suse.de>
Date:   Tue Dec 5 08:50:57 2023 +0100

    tree-optimization/112856 - fix LC SSA after loop header copying

    When loop header copying unloops loops we have to possibly fixup
    LC SSA.  I've take the opportunity to streamline the unloop_loops
    API, removing the use of a ivcanon local global variable.

            PR tree-optimization/109689
            PR tree-optimization/112856
            * cfgloopmanip.h (unloop_loops): Adjust API.
            * tree-ssa-loop-ivcanon.cc (unloop_loops): Take edges_to_remove
            as parameter.
            (canonicalize_induction_variables): Adjust.
            (tree_unroll_loops_completely): Likewise.
            * tree-ssa-loop-ch.cc (ch_base::copy_headers): Rewrite into
            LC SSA if we unlooped some loops and we are in LC SSA.

            * gcc.dg/torture/pr109689.c: New testcase.
            * gcc.dg/torture/pr112856.c: Likewise.

Reply via email to