From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26404 invoked by alias); 26 Feb 2010 13:30:30 -0000 Received: (qmail 25935 invoked by uid 48); 26 Feb 2010 13:29:59 -0000 Date: Fri, 26 Feb 2010 13:30:00 -0000 Message-ID: <20100226132959.25931.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug tree-optimization/43186] [4.5 Regression] A loop in tree_unroll_loops_completely never ends In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "rguenth at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-02/txt/msg02675.txt.bz2 ------- Comment #3 from rguenth at gcc dot gnu dot org 2010-02-26 13:29 ------- For some reason we inline 8 recursive calls of foo resulting in a load of loops that we all completely unroll. And in fact this is profitable but very slow because we estimate induction variable computations to be optimized (which they are), but we don't do that until we unrolled all loops - so we generate lots of new SSA names. Not too bad, but we are left with trivially dead branches from cfgcleanup. I have a patch. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43186