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

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Aldy Hernandez <al...@gcc.gnu.org>:

https://gcc.gnu.org/g:c9b840db504d15db01f06fe1fec38282dbafee07

commit r13-3341-gc9b840db504d15db01f06fe1fec38282dbafee07
Author: Aldy Hernandez <al...@redhat.com>
Date:   Mon Oct 17 18:56:24 2022 +0200

    Make sure exported range for SSA post-dominates the DEF in
set_global_ranges_from_unreachable_edges.

    The problem here is that we're exporting a range for an SSA range that
    happens on the other side of a __builtin_unreachable, but the SSA does
    not post-dominate the definition point.  This is causing ivcanon to
    unroll things incorrectly.

    This was a snafu when converting the code from evrp.

            PR tree-optimization/107293

    gcc/ChangeLog:

            * tree-ssa-dom.cc
            (dom_opt_dom_walker::set_global_ranges_from_unreachable_edges):
            Check that condition post-dominates the definition point.

    gcc/testsuite/ChangeLog:

            * gcc.dg/tree-ssa/pr107293.c: New test.

Reply via email to