On Wed, Mar 16, 2011 at 03:50:20PM +0100, Richard Guenther wrote:
> On Wed, 16 Mar 2011, Jack Howarth wrote:
> 
> >   The assembler bug in Xcode 3.2.6/4.0 only impacts darwin10, so lto can
> > be renabled for darwin9 (for which it has been well tested on the regress
> > server). Re-enabling lto for *-apple-darwin9 on darwin allows us to
> > continue to monitor the status of darwin lto support while the containerized
> > lto changes for PR48108 are completed. Okay for gcc trunk and 4.6.0?
> 
> I'm ok with that if Mike is ok with it.
> 
> Thanks,
> Richard.

Richard,
    Thanks. After reviewing my e-mails with the darwin linker developer, I now 
recall
that when Steve Bosscher implemented lto on darwin and had to resort to placing 
the gnu lto
sections at the end. I asked the linker developer via radar about this approach.
I was never able to get a clear response on that issue despite a couple 
attempts. While it is
unfortunate that Apple disabled this feature, it could be considered undefined 
behavior
in the sense that the mach-o format doesn't define an upper limit for 
non-relocation
bearing sections. What is annoying is that this approach was declared invalid 
for mach-o
without proper notification on the original radar. Hopefully Apple can improve 
its
communication on such issues via radar.
           Jack

> 
> >       Jack
> > ps While we could in theory enable it for darwin8 as well, that target is
> > rather poorly tested compared to darwin9.
> > 
> > 2011-03-16  Jack Howarth  <howa...@bromo.med.uc.edu>
> > 
> >     * configure.ac: Re-enable LTO on *-apple-darwin9.
> >     * configure: Regenerate.
> > 
> > Index: configure.ac
> > ===================================================================
> > --- configure.ac    (revision 171047)
> > +++ configure.ac    (working copy)
> > @@ -1743,7 +1743,7 @@ ACX_ELF_TARGET_IFELSE([# ELF platforms b
> >    build_lto_plugin=yes
> >  ],[if test x"$default_enable_lto" = x"yes" ; then
> >      case $target in
> > -      *-cygwin* | *-mingw*) ;;
> > +      *-apple-darwin9 | *-cygwin* | *-mingw*) ;;
> >        # On other non-ELF platforms, LTO has yet to be validated.
> >        *) enable_lto=no ;;
> >      esac
> > 
> > 

Reply via email to