This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Link-time optimzation


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]