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

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Thu Sep 13 14:15:41 2018
New Revision: 264273

URL: https://gcc.gnu.org/viewcvs?rev=264273&root=gcc&view=rev
Log:
2018-09-13  Richard Biener  <rguent...@suse.de>

        PR tree-optimization/87263
        * tree-ssa-sccvn.c (visit_phi): Revert some earlier changes.
        (struct unwind_state): Add max_rpo field.
        (do_rpo_vn): Allow up-to-date loop state to be used when not iterating.
        Compute max_rpo, the max RPO number a block can be backwards reached
        from.  Re-write non-iterating mode to a RPO ordered worklist approach,
        separating it from the iterating mode.

        * gcc.dg/torture/pr87263.c: New testcase.
        * gcc.dg/torture/ssa-fre-2.c: Likewise.
        * gcc.dg/torture/ssa-fre-3.c: Likewise.
        * gcc.dg/torture/ssa-fre-4.c: Likewise.

Added:
    trunk/gcc/testsuite/gcc.dg/torture/pr87263.c
    trunk/gcc/testsuite/gcc.dg/torture/ssa-fre-2.c
    trunk/gcc/testsuite/gcc.dg/torture/ssa-fre-3.c
    trunk/gcc/testsuite/gcc.dg/torture/ssa-fre-4.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-ssa-sccvn.c

Reply via email to