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]

LTO Status Report (2007-06-10)


Besides my duties as RM, I plan to focus my GCC development time on LTO.
 This project has been dormant for a while, due to a variety of
constraints, but we (my fellow Sourcerers and I) will be able to put
more effort into LTO in the near future.  Kenny plans to work on LTO
once dataflow is merged.  Google has resources available as well.  And,
hopefully, other volunteers will be interested as well.  So, I think
we're in position to kick off a more substantial effort to move this
from design to substantial proof of concept.

In particular, the goal that Kenny and I have in mind, after
consultation with David Edelsohn, is to get to the point where we can
build the C benchmarks in SPEC in LTO mode.

To kick things off, I've created some pages on the GCC Wiki that go into
more detail about concrete tasks required for LTO.  Start here:

  http://gcc.gnu.org/wiki/LinkTimeOptimization

and look for the "LTO Driver", "LTO Reader/Writer", and "LTO
Representation Changes" subpages.

There's something here for everyone:

1. Changes to the driver and collect2.
2. Definition of new DWARF attributes.
3. Reading and writing those DWARF attributes.
4. Eliminating hooks and other bits of global state.
5. Eliminating pre-GIMPLE generation/use of RTL.
6. Poking at the ELF symbol table to determine DECL_SECTION_NAME in the
LTO reader.

and more!

Although these Wiki pages are written in an authoritative form, I do not
mean to dicate anything.  It's just easier to write "X does Y" than "I
think X should do Y" everywhere.

That said, I think one of the ways in which I can be most useful is as
an architect and coordinator.  So, I would appreciate it if people who
wish to make substantive changes to the design sketch ask me about that
before changing the Wiki pages.  I would also appreciate if people would
keep me informed as to what they are working on, so that I can keep
track of what's happening, from a high level.  Certainly, CodeSourcery
will keep the community informed regarding what pieces we are tackling.
 (Since we're just now restarting the project, nobody has yet been
assigned concrete tasks.)

At present, I know that Daniel Berlin is currently moving the existing
LTO patches forward to a new branch based on the current mainline.
Daniel will let us know when the new branch is ready.

Thanks,

-- 
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713


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