Bug 46508 - [4.6 regression] "Add ARM VFP ABI support to libffi" broke build for armv5tel-linux-gnueabi with binutils-2.20.1
Summary: [4.6 regression] "Add ARM VFP ABI support to libffi" broke build for armv5tel...
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: libffi (show other bugs)
Version: 4.6.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-11-16 21:11 UTC by Mikael Pettersson
Modified: 2010-12-27 13:31 UTC (History)
1 user (show)

See Also:
Host:
Target: arm
Build:
Known to work:
Known to fail:
Last reconfirmed: 2010-12-03 10:04:41


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mikael Pettersson 2010-11-16 21:11:05 UTC
Attempting to build gcc-4.6-20101113 with --enable-languages=java (which enables libffi) for armv5tel-linux-gnueabi with binutils-2.20.1 fails due to the assembler complaining about VFP instructions in libffi's arm sysv.S:

> /tmp/gcc-4.6-20101113/configure --target=armv5tel-unknown-linux-gnueabi --with-arch=armv5te --prefix=/home/mikpe/pkgs/linux-x86/cross-armv5tel --disable-nls --disable-shared --disable-libmudflap --disable-multilib --enable-threads=posix --enable-checking=release --enable-languages=c,c++,java
> make
...
libtool: compile:  /tmp/objdir/./gcc/xgcc -B/tmp/objdir/./gcc/ -B/home/mikpe/pkgs/linux-x86/cross-armv5tel/armv5tel-unknown-linux-gnueabi/bin/ -B/home/mikpe/pkgs/linux-x86/cross-armv5tel/armv5tel-unknown-linux-gnueabi/lib/ -isystem /home/mikpe/pkgs/linux-x86/cross-armv5tel/armv5tel-unknown-linux-gnueabi/include -isystem /home/mikpe/pkgs/linux-x86/cross-armv5tel/armv5tel-unknown-linux-gnueabi/sys-include -DHAVE_CONFIG_H -I. -I/tmp/gcc-4.6-20101113/libffi -I. -I/tmp/gcc-4.6-20101113/libffi/include -Iinclude -I/tmp/gcc-4.6-20101113/libffi/src -I. -I/tmp/gcc-4.6-20101113/libffi/include -Iinclude -I/tmp/gcc-4.6-20101113/libffi/src -g -O2 -MT src/arm/sysv.lo -MD -MP -MF src/arm/.deps/sysv.Tpo -c /tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S -o src/arm/sysv.o
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S: Assembler messages:
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:266: Error: selected processor does not support `flddle d0,[ip]'
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:267: Error: selected processor does not support `fldmiadgt ip,{d0-d7}'
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:307: Error: selected processor does not support `fstseq s0,[r2]'
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:311: Error: selected processor does not support `fstdeq d0,[r2]'
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:316: Error: selected processor does not support `fstmiadeq r2,{d0-d3}'
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:400: Error: selected processor does not support `fstmfdd sp!,{d0-d7}'
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:438: Error: selected processor does not support `flds s0,[sp]'
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:441: Error: selected processor does not support `fldd d0,[sp]'
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:450: Error: selected processor does not support `fldmiad sp,{d0-d1}'
/tmp/gcc-4.6-20101113/libffi/src/arm/sysv.S:453: Error: selected processor does not support `fldmiad sp,{d0-d3}'
make[4]: *** [src/arm/sysv.lo] Error 1
make[4]: Leaving directory `/tmp/objdir/armv5tel-unknown-linux-gnueabi/libffi'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/objdir/armv5tel-unknown-linux-gnueabi/libffi'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/tmp/objdir/armv5tel-unknown-linux-gnueabi/libffi'
make[1]: *** [all-target-libffi] Error 2
make[1]: Leaving directory `/tmp/objdir'
make: *** [all] Error 2

Notes:
1. If binutils is downgraded to 2.19.1 then gas no longer complains.
2. gcc-4.6-20101023 built Ok with the same configuration (a number of bootstrap-unbreaking patches were applied though). This error is a regression from r166032, "Add ARM VFP ABI support to libffi":
http://gcc.gnu.org/ml/gcc-cvs/2010-10/msg01219.html
http://gcc.gnu.org/ml/gcc-patches/2010-10/msg02419.html
Comment 1 Ramana Radhakrishnan 2010-12-03 10:04:41 UTC
A patch was submitted here. Does this fix your problem ? 

http://gcc.gnu.org/ml/gcc-patches/2010-11/msg02878.html
Comment 2 Mikael Pettersson 2010-12-03 10:20:59 UTC
(In reply to comment #1)
> A patch was submitted here. Does this fix your problem ? 
> 
> http://gcc.gnu.org/ml/gcc-patches/2010-11/msg02878.html

I'm currently doing a 4.6 bootstrap and testsuite run with this patch applied.
It should be finished in a couple of hours.
Comment 3 Mikael Pettersson 2010-12-27 13:31:21 UTC
Fixed, presumably by r167434.