Missing _restvr_20 and _savevr_20 subroutines for lib/raid6/altivec8.o
Kumar Gala
galak at kernel.crashing.org
Wed Oct 23 16:28:32 EST 2013
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.
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
More information about the Linuxppc-dev
mailing list