On Wed, 2013-10-23 at 00:28 -0500, Kumar Gala wrote: > On Oct 19, 2013, at 5:24 PM, Ben Hutchings wrote: > > > When building lib/raid6/altivec8.o with gcc 4.8 on Debian, the compiler > > is generating references to two new runtime subroutines which are > > apparently not included in the kernel: > > > > ERROR: "_restvr_20" [lib/raid6/raid6_pq.ko] undefined! > > ERROR: "_savevr_20" [lib/raid6/raid6_pq.ko] undefined! > > > > The save/restore subroutines are specified in > > http://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.7.1.html#SAVE-RESTORE > > and we do have the _restgpr_* and _savegpr_* subroutines in > > arch/powerpc/boot/crtsavres.S. I'm not sure whether these subroutines > > should be added or whether this indicates the compiler is doing > > something wrong. > > > > A configuration that triggers this is included below. > > > > Ben. > > Try with CONFIG_CC_OPTIMIZE_FOR_SIZE=n. A feature was added to gcc > for -Os to "outline" the save/restore routines. I'm surprised this > hasn't shown up sooner.
That does avoid the problem, thanks. Ben. > Well need to add _restvr_* / _savevr_* to the version in lib/crtsaveres.S. > > http://gcc.gnu.org/git/?p=gcc.git;a=blob_plain;f=libgcc/config/rs6000/crtrestvr.S;hb=HEAD > http://gcc.gnu.org/git/?p=gcc.git;a=blob_plain;f=libgcc/config/rs6000/crtsavevr.S;hb=HEAD > > - k -- Ben Hutchings friends: People who know you well, but like you anyway.
signature.asc
Description: This is a digitally signed message part