From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24292 invoked by alias); 20 Oct 2009 15:17:58 -0000 Received: (qmail 24271 invoked by uid 22791); 20 Oct 2009 15:17:55 -0000 X-SWARE-Spam-Status: No, hits=-7.7 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI X-Spam-Check-By: sourceware.org Received: from cantor.suse.de (HELO mx1.suse.de) (195.135.220.2) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 20 Oct 2009 15:17:49 +0000 Received: from relay2.suse.de (mail2.suse.de [195.135.221.8]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.suse.de (Postfix) with ESMTP id 079A390847; Tue, 20 Oct 2009 17:17:47 +0200 (CEST) Date: Tue, 20 Oct 2009 15:22:00 -0000 From: Richard Guenther To: Jan Hubicka Cc: gcc-patches@gcc.gnu.org, Martin Jambor , Diego Novillo Subject: Re: LTO/WHOPR summary streaming fixes In-Reply-To: Message-ID: References: <20091020145324.GA8676@kam.mff.cuni.cz> User-Agent: Alpine 2.00 (LNX 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2009-10/txt/msg01290.txt.bz2 On Tue, 20 Oct 2009, Richard Guenther wrote: > On Tue, 20 Oct 2009, Richard Guenther wrote: > > > On Tue, 20 Oct 2009, Jan Hubicka wrote: > > > > > Hi, > > > this patch fixes summary generation issues with LTO and WHOPR. The main changes are: > > > > > > 1) We used to re-compute all summaries at LTO read in. This is not correct, we should > > > use what we wrote into disk. > > > 2) We used to write summaries into ltrans files and re-execute all IPA passes. This is > > > wrong since all decisions should've been mae at WPA > > > 3) Jump functions are not streamed out. > > > Note that I did not include patch to stream in/out indirect call notes. This is not > > > needed for testsuite so I want to handle this independently. > > > 4) ipa-reference was saving summaries only for overwrittable functions. > > > > > > Note that whopr is still somewhat broken. We now apply the inline plan > > > changes, but other passes are not run and we now lose some optimization by > > > not re-doing all IPA passes at ltrans stage. I have incremental patches for this, > > > I am just trying to avoid snowballing effect. > > > > > > I've bootstrapped/regtested earlier vesion of this patch on x86_64-linux and I > > > am re-testing current version. I think I can approve myself all changes except > > > for the streaming part. OK? > > > > It looks good to me. Let me build a piece of SPEC2006 with the patch, > > I'll report on IRC before I leave today. > > Even trivial files now ICE with > > alloca.c:202:1: internal compiler error: in ipa_write_node_info, at > ipa-prop.c:1977 typedef long unsigned int size_t; static int stack_dir; static void find_stack_direction () { static char *addr = ((void *)0); auto char dummy; if (addr == ((void *)0)) { addr = &(dummy); find_stack_direction (); } } void * C_alloca (size) size_t size; { if (stack_dir == 0) find_stack_direction (); } > /space/rguenther/install/lto/bin/gcc -c -O2 -flto alloca.3.i alloca.3.i:14:1: internal compiler error: in ipa_write_node_info, at ipa-prop.c:1977 Please submit a full bug report, with preprocessed source if appropriate. See for instructions.