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

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Tue Jun  4 09:05:10 2019
New Revision: 271903

URL: https://gcc.gnu.org/viewcvs?rev=271903&root=gcc&view=rev
Log:
2019-06-04  Richard Biener  <rguent...@suse.de>

        PR middle-end/90726
        * tree-chrec.c (chrec_contains_symbols): Add to visited.
        (tree_contains_chrecs): Likewise.
        (chrec_contains_symbols_defined_in_loop): Move here and avoid
        exponential behaivor from ...
        * tree-scalar-evolution.c (chrec_contains_symbols_defined_in_loop):
        ... here.
        (expression_expensive_p): Avoid exponential behavior and compute
        expanded size, rejecting any expansion.
        * tree-ssa-loop-ivopts.c (abnormal_ssa_name_p): Remove.
        (idx_contains_abnormal_ssa_name_p): Likewise.
        (contains_abnormal_ssa_name_p_1): New helper for walk_tree.
        (contains_abnormal_ssa_name_p): Simplify and use
        walk_tree_without_duplicates.

        * gcc.dg/pr90726.c: New testcase.

Added:
    trunk/gcc/testsuite/gcc.dg/pr90726.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-chrec.c
    trunk/gcc/tree-scalar-evolution.c
    trunk/gcc/tree-ssa-loop-ivopts.c

Reply via email to