This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/44483] [4.6 regression] gcc consumes all available memory when optimizing



------- Comment #6 from spop at gcc dot gnu dot org  2010-06-11 18:28 -------
Subject: Bug 44483

Author: spop
Date: Fri Jun 11 18:28:17 2010
New Revision: 160625

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=160625
Log:
Fix PR44483: incrementally gimplify BB predicates to avoid redundant
computations.

2010-06-11  Sebastian Pop  <sebastian.pop@amd.com>

        PR middle-end/44483
        * tree-if-conv.c (bb_predicate_s): New struct.
        (bb_predicate_p): New.
        (bb_has_predicate): New.
        (bb_predicate): New.
        (set_bb_predicate): New.
        (bb_predicate_gimplified_stmts): New.
        (set_bb_predicate_gimplified_stmts): New.
        (add_bb_predicate_gimplified_stmts): New.
        (init_bb_predicate): New.
        (free_bb_predicate): New.
        (is_predicated): Use bb_predicate.
        (add_to_predicate_list): Use bb_predicate and set_bb_predicate.
        (predicate_bbs): Same.  Gimplify the condition of the basic blocks
        before processing their successors.
        (clean_predicate_lists): Removed.
        (find_phi_replacement_condition): Use bb_predicate.
        (process_phi_nodes): Renamed ifconvert_phi_nodes.  Avoid useless
        computations.
        (insert_gimplified_predicates): New.
        (combine_blocks): Call insert_gimplified_predicates.
        (tree_if_conversion): Call free_bb_predicate instead of
        clean_predicate_lists.

        * gcc.dg/tree-ssa/pr44483.c: New.

Added:
    trunk/gcc/testsuite/gcc.dg/tree-ssa/pr44483.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-if-conv.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44483


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]