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
Fedora-kernel-list@redhat.com
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
Fedora-kernel-list@redhat.com
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
 Fedora-kernel-list@redhat.com
 https://www.redhat.com/mailman/listinfo/fedora-kernel-list
 

___
Fedora-kernel-list mailing list
Fedora-kernel-list@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-kernel-list


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
Fedora-kernel-list@redhat.com
https://www.redhat.com/mailman/listinfo/fedora-kernel-list