Patchwork [4.5] Backport Mach-O LTO support

login
register
mail settings
Submitter Steven Bosscher
Date June 24, 2010, 8:50 p.m.
Message ID <AANLkTikc64UQvfksFJsAVVRJ-ucbGUBnXk6Ff3baNdye@mail.gmail.com>
Download mbox | patch
Permalink /patch/56841/
State New
Headers show

Comments

Steven Bosscher - June 24, 2010, 8:50 p.m.
On Thu, Jun 24, 2010 at 10:26 PM, Richard Guenther
<richard.guenther@gmail.com> wrote:
> On Thu, Jun 24, 2010 at 9:38 PM, Steven Bosscher <stevenb.gcc@gmail.com> wrote:
>> Hi,
>>
>> Pretty straight-forward port of the patches from trunk to gcc 4.5.1.
>> There are new test suite failures if configured with --enable-lto but
>> those are the same as on trunk (where some test cases have been
>> patched to xfail ELF-isms in the lto test suite).
>>
>> Bootstrapped & tested on x86_64-unknown-linux-gnu. OK for GCC 4.5?
>
> Ok.  Can you amend gcc-4.5/changes.html (adding a GCC 4.5.1 section
> like we have for previous releases)?

Sure. Like so?
Richard Guenther - June 24, 2010, 8:53 p.m.
On Thu, Jun 24, 2010 at 10:50 PM, Steven Bosscher <stevenb.gcc@gmail.com> wrote:
> On Thu, Jun 24, 2010 at 10:26 PM, Richard Guenther
> <richard.guenther@gmail.com> wrote:
>> On Thu, Jun 24, 2010 at 9:38 PM, Steven Bosscher <stevenb.gcc@gmail.com> wrote:
>>> Hi,
>>>
>>> Pretty straight-forward port of the patches from trunk to gcc 4.5.1.
>>> There are new test suite failures if configured with --enable-lto but
>>> those are the same as on trunk (where some test cases have been
>>> patched to xfail ELF-isms in the lto test suite).
>>>
>>> Bootstrapped & tested on x86_64-unknown-linux-gnu. OK for GCC 4.5?
>>
>> Ok.  Can you amend gcc-4.5/changes.html (adding a GCC 4.5.1 section
>> like we have for previous releases)?
>
> Sure. Like so?

Looks good to me!

Thanks,
Richard.

> Index: changes.html
> ===================================================================
> RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.5/changes.html,v
> retrieving revision 1.91
> diff -u -r1.91 changes.html
> --- changes.html        6 Jun 2010 13:36:29 -0000       1.91
> +++ changes.html        24 Jun 2010 20:50:08 -0000
> @@ -832,6 +832,23 @@
>     </li>
>   </ul>
>
> +<h2><a name="4.5.1">GCC 4.5.1</a></h2>
> +
> +<h3>All languages</h3>
> +  <ul>
> +    <li><p>GCC's new link-time optimizer (<code><a
> +    href="http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-flto-801"
> +    >-flto</a></code>) now also works on a few non-ELF targets:</p>
> +
> +    <ul>
> +      <li>Cygwin (*-cygwin*)</li>
> +      <li>MinGW (*-mingw*)</li>
> +      <li>Darwin on x86-64 (x86_64-apple-darwin*)</li>
> +    <ul>
> +
> +    <p>LTO is not enabled by default for these targets.  To enable LTO,
> +    you should configure with the <code>--enable-lto</code> option.</p>
> +  </ul>
>
>  </body>
>  </html>
>
Jack Howarth - June 24, 2010, 9:06 p.m.
On Thu, Jun 24, 2010 at 10:53:46PM +0200, Richard Guenther wrote:
> On Thu, Jun 24, 2010 at 10:50 PM, Steven Bosscher <stevenb.gcc@gmail.com> wrote:
> > On Thu, Jun 24, 2010 at 10:26 PM, Richard Guenther
> > <richard.guenther@gmail.com> wrote:
> >> On Thu, Jun 24, 2010 at 9:38 PM, Steven Bosscher <stevenb.gcc@gmail.com> wrote:
> >>> Hi,
> >>>
> >>> Pretty straight-forward port of the patches from trunk to gcc 4.5.1.
> >>> There are new test suite failures if configured with --enable-lto but
> >>> those are the same as on trunk (where some test cases have been
> >>> patched to xfail ELF-isms in the lto test suite).
> >>>
> >>> Bootstrapped & tested on x86_64-unknown-linux-gnu. OK for GCC 4.5?
> >>
> >> Ok.  Can you amend gcc-4.5/changes.html (adding a GCC 4.5.1 section
> >> like we have for previous releases)?
> >
> > Sure. Like so?
> 
> Looks good to me!
> 
> Thanks,
> Richard.

On a somewhat different subject, is there going to be attempt to
identify all of the LTO fixes in gcc trunk that are suitable for
backporting to gcc 4.5 branch (outside of the -fwhopr related ones)?
I noticed that gcc 4.5 branch ICEs on some fortran code with -flto
but not gcc trunk. It would be nice to have any fixes for ICEs 
with -flto backported if feasible.
                  Jack

> 
> > Index: changes.html
> > ===================================================================
> > RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.5/changes.html,v
> > retrieving revision 1.91
> > diff -u -r1.91 changes.html
> > --- changes.html        6 Jun 2010 13:36:29 -0000       1.91
> > +++ changes.html        24 Jun 2010 20:50:08 -0000
> > @@ -832,6 +832,23 @@
> >     </li>
> >   </ul>
> >
> > +<h2><a name="4.5.1">GCC 4.5.1</a></h2>
> > +
> > +<h3>All languages</h3>
> > +  <ul>
> > +    <li><p>GCC's new link-time optimizer (<code><a
> > +    href="http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-flto-801"
> > +    >-flto</a></code>) now also works on a few non-ELF targets:</p>
> > +
> > +    <ul>
> > +      <li>Cygwin (*-cygwin*)</li>
> > +      <li>MinGW (*-mingw*)</li>
> > +      <li>Darwin on x86-64 (x86_64-apple-darwin*)</li>
> > +    <ul>
> > +
> > +    <p>LTO is not enabled by default for these targets.  To enable LTO,
> > +    you should configure with the <code>--enable-lto</code> option.</p>
> > +  </ul>
> >
> >  </body>
> >  </html>
> >
Richard Guenther - June 24, 2010, 9:24 p.m.
On Thu, Jun 24, 2010 at 11:06 PM, Jack Howarth <howarth@bromo.med.uc.edu> wrote:
> On Thu, Jun 24, 2010 at 10:53:46PM +0200, Richard Guenther wrote:
>> On Thu, Jun 24, 2010 at 10:50 PM, Steven Bosscher <stevenb.gcc@gmail.com> wrote:
>> > On Thu, Jun 24, 2010 at 10:26 PM, Richard Guenther
>> > <richard.guenther@gmail.com> wrote:
>> >> On Thu, Jun 24, 2010 at 9:38 PM, Steven Bosscher <stevenb.gcc@gmail.com> wrote:
>> >>> Hi,
>> >>>
>> >>> Pretty straight-forward port of the patches from trunk to gcc 4.5.1.
>> >>> There are new test suite failures if configured with --enable-lto but
>> >>> those are the same as on trunk (where some test cases have been
>> >>> patched to xfail ELF-isms in the lto test suite).
>> >>>
>> >>> Bootstrapped & tested on x86_64-unknown-linux-gnu. OK for GCC 4.5?
>> >>
>> >> Ok.  Can you amend gcc-4.5/changes.html (adding a GCC 4.5.1 section
>> >> like we have for previous releases)?
>> >
>> > Sure. Like so?
>>
>> Looks good to me!
>>
>> Thanks,
>> Richard.
>
> On a somewhat different subject, is there going to be attempt to
> identify all of the LTO fixes in gcc trunk that are suitable for
> backporting to gcc 4.5 branch (outside of the -fwhopr related ones)?
> I noticed that gcc 4.5 branch ICEs on some fortran code with -flto
> but not gcc trunk. It would be nice to have any fixes for ICEs
> with -flto backported if feasible.

I did backport all obvious and safe stuff.  If I missed something
then I'd appreciate a pointer.

Richard.

>                  Jack
>
>>
>> > Index: changes.html
>> > ===================================================================
>> > RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.5/changes.html,v
>> > retrieving revision 1.91
>> > diff -u -r1.91 changes.html
>> > --- changes.html        6 Jun 2010 13:36:29 -0000       1.91
>> > +++ changes.html        24 Jun 2010 20:50:08 -0000
>> > @@ -832,6 +832,23 @@
>> >     </li>
>> >   </ul>
>> >
>> > +<h2><a name="4.5.1">GCC 4.5.1</a></h2>
>> > +
>> > +<h3>All languages</h3>
>> > +  <ul>
>> > +    <li><p>GCC's new link-time optimizer (<code><a
>> > +    href="http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-flto-801"
>> > +    >-flto</a></code>) now also works on a few non-ELF targets:</p>
>> > +
>> > +    <ul>
>> > +      <li>Cygwin (*-cygwin*)</li>
>> > +      <li>MinGW (*-mingw*)</li>
>> > +      <li>Darwin on x86-64 (x86_64-apple-darwin*)</li>
>> > +    <ul>
>> > +
>> > +    <p>LTO is not enabled by default for these targets.  To enable LTO,
>> > +    you should configure with the <code>--enable-lto</code> option.</p>
>> > +  </ul>
>> >
>> >  </body>
>> >  </html>
>> >
>

Patch

Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.5/changes.html,v
retrieving revision 1.91
diff -u -r1.91 changes.html
--- changes.html	6 Jun 2010 13:36:29 -0000	1.91
+++ changes.html	24 Jun 2010 20:50:08 -0000
@@ -832,6 +832,23 @@ 
     </li>
   </ul>

+<h2><a name="4.5.1">GCC 4.5.1</a></h2>
+
+<h3>All languages</h3>
+  <ul>
+    <li><p>GCC's new link-time optimizer (<code><a
+    href="http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-flto-801"
+    >-flto</a></code>) now also works on a few non-ELF targets:</p>
+
+    <ul>
+      <li>Cygwin (*-cygwin*)</li>
+      <li>MinGW (*-mingw*)</li>
+      <li>Darwin on x86-64 (x86_64-apple-darwin*)</li>
+    <ul>
+
+    <p>LTO is not enabled by default for these targets.  To enable LTO,
+    you should configure with the <code>--enable-lto</code> option.</p>
+  </ul>

 </body>
 </html>