From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9888 invoked by alias); 14 Oct 2004 17:08:56 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 9877 invoked from network); 14 Oct 2004 17:08:55 -0000 Received: from unknown (HELO commerce-01.cilia.org) (65.174.6.28) by sourceware.org with SMTP; 14 Oct 2004 17:08:55 -0000 Received: from naturalbridge.com (ool-4357e295.dyn.optonline.net [67.87.226.149]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by commerce-01.cilia.org (Postfix) with ESMTP id 0C6FA4060EE; Thu, 14 Oct 2004 13:08:55 -0400 (EDT) Message-ID: <416EB2A4.6040705@naturalbridge.com> Date: Thu, 14 Oct 2004 17:22:00 -0000 From: Kenneth Zadeck User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040114 MIME-Version: 1.0 To: Razya Ladelsky Cc: Jan Hubicka , Ayal Zaks , "Berlin, Daniel" , "Novillo, Diego" , gcc-patches@gcc.gnu.org, hubicka@ucw.cz, Mircea Namolaru , Steven Bosscher Subject: Re: IPA References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2004-10/txt/msg01197.txt.bz2 If you look at most other optimizing compilers (i.e. sun, ibm, llvm), they have enhanced .o formats that contain the intermediate code that can then be further optimized. This solves a huge number of legistical problems, such as getting the user to change their entire build procedures and makefiles. All you have to do is add a few options onto the link command. It also means that if a single file changes, all you do is recompile the one file and do a (notably more expensive) link. The other benefit is that since a fair amount of the analysis is done locally before you do the intermodular stuff, it is generally faster to rebuild after small changes to a single file. However, this violates one of the stallman principals of not wanting to have a defined api for the intermediate form of the compiler. So we are forced to do something that is inferior and that, most likely, will not be widely used. Kenny Razya Ladelsky wrote: >Jan Hubicka wrote on 12/10/2004 16:31:57: > > > > >>>I am a big advocate of the whole world at link time plan but I >>>understand the political problems with this. >>> >>> >>I am trying to keep organization of the current GCC implementation of >>IPA optimizers in a shape so they will scale up to the link time >>optimization approach and I really hope that sooner or later we will >>find way how to avoid the political issues with this scheme. >> >>Honza >> >> > >IPA provides valuable information to help subsequent optimizations, >so it must be followed by intraprocedural optimizations. How does this fit >with link time ? > >Razya > >