From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8069 invoked by alias); 15 May 2003 00:00:02 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 7999 invoked by uid 48); 15 May 2003 00:00:01 -0000 Date: Thu, 15 May 2003 00:00:00 -0000 Message-ID: <20030515000001.7957.qmail@sources.redhat.com> To: gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org, giovannibajo@libero.it, gonz@ratloop.com, nobody@gcc.gnu.org From: giovannibajo@libero.it Reply-To: giovannibajo@libero.it, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org, giovannibajo@libero.it, gonz@ratloop.com, nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org Subject: Re: middle-end/10776: [3.3/3.4 regression] Large aggregate initializers with a single relocated entry causes excessive compile time regression X-SW-Source: 2003-05/txt/msg01730.txt.bz2 List-Id: Old Synopsis: [3.3 regression] Large aggregate initializers cause GCC to fail New Synopsis: [3.3/3.4 regression] Large aggregate initializers with a single relocated entry causes excessive compile time regression State-Changed-From-To: open->analyzed State-Changed-By: bajo State-Changed-When: Thu May 15 00:00:00 2003 State-Changed-Why: I have attached the reduced testcase as "pr10776.cpp.bz2". There is a huge compile time regression when the code is being compiled with -O[123], in 3.3 and 3.4 (and 3.2). The same code compiles in a decent amount of time (and memory usage) with 2.95. Notice that the whole regression can be eliminated by commenting a single relocated entry in the initializers (in the code, just comment the macro COMPILE_TIME_BUG defined at the beginning of the file). It looks like the optimizer is dieing because too much code is generated in the constructor/destructor initializer function. I think this is a middle-end bug, and I moved it to the middle-end category: probably GCC should be smarter and use memcpy whenever it's possible. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=10776