From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24409 invoked by alias); 16 Nov 2005 22:26:39 -0000 Received: (qmail 24399 invoked by uid 22791); 16 Nov 2005 22:26:37 -0000 Received: from dumbledore.codesourcery.com (HELO mail.codesourcery.com) (65.74.133.11) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Wed, 16 Nov 2005 22:26:37 +0000 Received: (qmail 17572 invoked from network); 16 Nov 2005 22:26:36 -0000 Received: from unknown (HELO ?192.168.0.2?) (mitchell@127.0.0.2) by mail.codesourcery.com with ESMTPA; 16 Nov 2005 22:26:36 -0000 Message-ID: <437BB214.1070306@codesourcery.com> Date: Wed, 16 Nov 2005 22:26:00 -0000 From: Mark Mitchell User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923) MIME-Version: 1.0 To: gcc mailing list Subject: Link-time optimzation Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2005-11/txt/msg00735.txt.bz2 The GCC community has talked about link-time optimization for some time. In addition to results with other compilers, Geoff Keating's work on inter-module optimization has demonstrated the potential for improved code-generation from applying optimizations across translation units. Some of us (Dan Berlin, David Edelsohn, Steve Ellcey, Shin-Ming Liu, Tony Linthicum, Mike Meissner, Kenny Zadeck, and myself) have developed a high-level proposal for doing link-time optimization in GCC. At this point, this is just a design sketch. We look forward to jointly developing this with the GCC community when the design stabilizes. Our goal has been to develop a proposal that was sufficiently mature that it would serve as a plausible approach for consideration -- but we fully expect comments from the community to shape and change what we've written, perhaps in quite significant ways. Certainly, readers will find many details that are unresolved; we are not claiming that this is a final, formal specification. We would prefer not to have this thread devolve into a discussion about legal and "political" issues relating to reading and writing GCC's internal representation. I've said publicly for a couple of years that GCC would need to have this ability, and, more constructively, David Edelsohn has talked with the FSF (both RMS and Eben Moglen) about it. The FSF has indicated that GCC now can explore adding this feature, although there are still some legal details to resolve. Therefore, we have taken it as our mission to focus purely on technical considerations -- and that's what this discussion should be about. When we have a technical plan we like, then, before we implement it, we will get approval from the SC and the FSF -- but, first, lets develop the technical plan. The document is on the web here: http://gcc.gnu.org/projects/lto/lto.pdf The LaTeX sources are in htdocs/projects/lto/*.tex. Thoughts? -- Mark Mitchell CodeSourcery, LLC mark@codesourcery.com (916) 791-8304