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

--- Comment #12 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:be2c74fdcd0e8d66c3667008ba2561ab5dcc379b

commit r13-3897-gbe2c74fdcd0e8d66c3667008ba2561ab5dcc379b
Author: Richard Biener <rguent...@suse.de>
Date:   Thu Nov 10 15:04:10 2022 +0100

    Make last DCE remove empty loops

    The following makes the last DCE pass CD-DCE and in turn the
    last CD-DCE pass a DCE one.  That ensues we remove empty loops
    that become empty between the two.  I've also moved the tail-call
    pass after DCE since DCE can only improve things here.

    The two testcases were the only ones scanning cddce3 so I've
    changed them to scan the dce7 pass that's now in this place.
    The testcases scanning dce7 also work when that's in the earlier
    position.

            PR tree-optimization/84646
            * tree-ssa-dce.cc (pass_dce::set_pass_param): Add param
            wheter to run update-address-taken.
            (pass_dce::execute): Honor it.
            * passes.def: Exchange last DCE and CD-DCE invocations.
            Swap pass_tail_calls and the last DCE.

            * g++.dg/tree-ssa/pr106922.C: Continue to scan earlier DCE dump.
            * gcc.dg/tree-ssa/20030808-1.c: Likewise.

Reply via email to