Re: [ppc64] newer gcc breaks kernel build?

2009-09-17 Thread Roland McGrath
> On Thu, Sep 17, 2009 at 09:31:52PM +0200, Jakub Jelinek wrote:
> > I've noticed the dot in front of the symbol, is kernel using still the for
> > years deprecated oldish ppc64 ABI instead of the new one (i.e. uses
> > -mcall-aixdesc instead of not using this option at all)?  Maybe it is broken
> > only in that case.

It would be nice if -mcall-aixdesc were even in the GCC manual.

___
Fedora-kernel-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/fedora-kernel-list


Re: [ppc64] newer gcc breaks kernel build?

2009-09-17 Thread Kyle McMartin
On Thu, Sep 17, 2009 at 09:31:52PM +0200, Jakub Jelinek wrote:
> I've noticed the dot in front of the symbol, is kernel using still the for
> years deprecated oldish ppc64 ABI instead of the new one (i.e. uses
> -mcall-aixdesc instead of not using this option at all)?  Maybe it is broken
> only in that case.
> 

arch/powerpc/Makefile:
CFLAGS-$(CONFIG_PPC64)  := -mminimal-toc -mtraceback=none
-mcall-aixdesc

Seems to... :/

> > Would a workaround be to switch ppc64 back to -O2 until ld is fixed?
> 
> Sure, at -O2 those aren't emitted.
> 

Groovy, I just kicked off a build with CC_OPTIMIZE_FOR_SIZE unset on
ppc64, and it seems to have made it farther.

Thanks!
 Kyle

>   Jakub
> 
> ___
> Fedora-kernel-list mailing list
> [email protected]
> https://www.redhat.com/mailman/listinfo/fedora-kernel-list
> 

___
Fedora-kernel-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/fedora-kernel-list


Re: [ppc64] newer gcc breaks kernel build?

2009-09-17 Thread Jakub Jelinek
On Thu, Sep 17, 2009 at 03:25:51PM -0400, Kyle McMartin wrote:
> On Thu, Sep 17, 2009 at 09:04:33PM +0200, Jakub Jelinek wrote:
> > On Thu, Sep 17, 2009 at 01:44:42PM -0400, Kyle McMartin wrote:
> > > - fix ppc/ppc64 -mmultiple and out of line gpr/fpr saving bugs
> > >   (#519409, PR target/40677, PR target/41175)
> > > 
> > > My guess is this has broken the kernel build on powerpc64:
> > > init/built-in.o: In function `arch_disable_smp_support':
> > > /builddir/build/BUILD/kernel-2.6.31/linux-2.6.31.ppc64/init/main.c:139: 
> > > undefined reference to `._savegpr0_31'
> > > /builddir/build/BUILD/kernel-2.6.31/linux-2.6.31.ppc64/init/main.c:139: 
> > > undefined reference to `._restgpr0_31'
> > > 
> > > by generating calls to out of line handlers, which are only supplied for
> > > PPC32 in arch/powerpc/lib/.
> > > 
> > > Any thoughts? If it's not this, it must have been something hitting 
> > > rawhide
> > > between:
> > > 2009-09-16 22:06:38   and
> > > 2009-09-17 15:25:47
> > 
> > For 64-bit code it is ld that is supposed to synthetize those symbols on the
> > fly.  gcc uses them (newly, starting with gcc 4.5 as of a few days ago
> > upstream and gcc-4.4.1-14 in rawhide) even for 64-bit code when -Os, as the
> > out of line savers/restorers are smaller than inline register
> > saving/restoring.
> > 
> 
> Ah, so it's a binutils bug? (Sorry, the only reason I fingered gcc was because
> binutils hadn't been updated recently.)

I've noticed the dot in front of the symbol, is kernel using still the for
years deprecated oldish ppc64 ABI instead of the new one (i.e. uses
-mcall-aixdesc instead of not using this option at all)?  Maybe it is broken
only in that case.

> Would a workaround be to switch ppc64 back to -O2 until ld is fixed?

Sure, at -O2 those aren't emitted.

Jakub

___
Fedora-kernel-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/fedora-kernel-list


Re: [ppc64] newer gcc breaks kernel build?

2009-09-17 Thread Jakub Jelinek
On Thu, Sep 17, 2009 at 01:44:42PM -0400, Kyle McMartin wrote:
> - fix ppc/ppc64 -mmultiple and out of line gpr/fpr saving bugs
>   (#519409, PR target/40677, PR target/41175)
> 
> My guess is this has broken the kernel build on powerpc64:
> init/built-in.o: In function `arch_disable_smp_support':
> /builddir/build/BUILD/kernel-2.6.31/linux-2.6.31.ppc64/init/main.c:139: 
> undefined reference to `._savegpr0_31'
> /builddir/build/BUILD/kernel-2.6.31/linux-2.6.31.ppc64/init/main.c:139: 
> undefined reference to `._restgpr0_31'
> 
> by generating calls to out of line handlers, which are only supplied for
> PPC32 in arch/powerpc/lib/.
> 
> Any thoughts? If it's not this, it must have been something hitting rawhide
> between:
> 2009-09-16 22:06:38   and
> 2009-09-17 15:25:47

For 64-bit code it is ld that is supposed to synthetize those symbols on the
fly.  gcc uses them (newly, starting with gcc 4.5 as of a few days ago
upstream and gcc-4.4.1-14 in rawhide) even for 64-bit code when -Os, as the
out of line savers/restorers are smaller than inline register
saving/restoring.

Jakub

___
Fedora-kernel-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/fedora-kernel-list


Re: [ppc64] newer gcc breaks kernel build?

2009-09-17 Thread Kyle McMartin
On Thu, Sep 17, 2009 at 09:04:33PM +0200, Jakub Jelinek wrote:
> On Thu, Sep 17, 2009 at 01:44:42PM -0400, Kyle McMartin wrote:
> > - fix ppc/ppc64 -mmultiple and out of line gpr/fpr saving bugs
> >   (#519409, PR target/40677, PR target/41175)
> > 
> > My guess is this has broken the kernel build on powerpc64:
> > init/built-in.o: In function `arch_disable_smp_support':
> > /builddir/build/BUILD/kernel-2.6.31/linux-2.6.31.ppc64/init/main.c:139: 
> > undefined reference to `._savegpr0_31'
> > /builddir/build/BUILD/kernel-2.6.31/linux-2.6.31.ppc64/init/main.c:139: 
> > undefined reference to `._restgpr0_31'
> > 
> > by generating calls to out of line handlers, which are only supplied for
> > PPC32 in arch/powerpc/lib/.
> > 
> > Any thoughts? If it's not this, it must have been something hitting rawhide
> > between:
> > 2009-09-16 22:06:38 and
> > 2009-09-17 15:25:47
> 
> For 64-bit code it is ld that is supposed to synthetize those symbols on the
> fly.  gcc uses them (newly, starting with gcc 4.5 as of a few days ago
> upstream and gcc-4.4.1-14 in rawhide) even for 64-bit code when -Os, as the
> out of line savers/restorers are smaller than inline register
> saving/restoring.
> 

Ah, so it's a binutils bug? (Sorry, the only reason I fingered gcc was because
binutils hadn't been updated recently.)

Would a workaround be to switch ppc64 back to -O2 until ld is fixed?

regards, Kyle

___
Fedora-kernel-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/fedora-kernel-list