This is GCC Bugzilla
This is GCC Bugzilla Version 2.20+
View Bug Activity | Format For Printing | Clone This Bug
Building today's gcc-trunk (rev. 132088/2008-02-04) for arm-rtems4.9 fails with: ... /users/rtems/src/toolchains/BUILD/arm-rtems4.9/./gcc/xgcc -B/users/rtems/src/toolchains/BUILD/arm-rtems4.9/./gcc/ -nostdinc -B/users/rtems/src/toolchains/BUILD/arm-rtems4.9/arm-rtems4.9/newlib/ -isystem /users/rtems/src/toolchains/BUILD/arm-rtems4.9/arm-rtems4.9/newlib/targ-include -isystem /users/rtems/src/toolchains/gcc-trunk/newlib/libc/include -B/opt/rtems-4.9/arm-rtems4.9/bin/ -B/opt/rtems-4.9/arm-rtems4.9/lib/ -isystem /opt/rtems-4.9/arm-rtems4.9/include -isystem /opt/rtems-4.9/arm-rtems4.9/sys-include -O2 -g -g -O2 -mhard-float -O2 -I../../../gcc-trunk/gcc/../newlib/libc/sys/rtems/include -O2 -g -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fno-inline -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I. -I../../.././gcc -I../../../../../gcc-trunk/libgcc -I../../../../../gcc-trunk/libgcc/. -I../../../../../gcc-trunk/libgcc/../gcc -I../../../../../gcc-trunk/libgcc/../include -DHAVE_CC_TLS -o _addsubdf3.o -MT _addsubdf3.o -MD -MP -MF _addsubdf3.dep -DL_addsubdf3 -xassembler-with-cpp \ -c ../../../../../gcc-trunk/libgcc/../gcc/config/arm/lib1funcs.asm ../../../../../gcc-trunk/libgcc/../gcc/config/arm/ieee754-df.S: Assembler messages: ../../../../../gcc-trunk/libgcc/../gcc/config/arm/ieee754-df.S:529: Error: bad instruction `do_itt eq' make[4]: *** [_addsubdf3.o] Error 1 make[4]: Leaving directory `/users/rtems/src/toolchains/BUILD/arm-rtems4.9/arm-rtems4.9/fpu/libgcc'
I've seem the same error building for arm-elf. Perhaps I need a newer (experimental) binutils?
(In reply to comment #1) > I've seem the same error building for arm-elf. Perhaps I need a newer > (experimental) binutils? Just a wild guess, could this be a typo? [uros@localhost arm]$ grep do_itt * ieee754-df.S: do_itt eq ieee754-sf.S: do_itt eq However, we have: lib1funcs.asm:.macro do_it cond, suffix="" and many references to "do_it" macro in asm sources.
(In reply to comment #2) > (In reply to comment #1) > > I've seem the same error building for arm-elf. Perhaps I need a newer > > (experimental) binutils? > > Just a wild guess, could this be a typo? > > [uros@localhost arm]$ grep do_itt * > ieee754-df.S: do_itt eq > ieee754-sf.S: do_itt eq > I guessed the same and changed it, allowing it to compile. Whether or not that's good, I don't know, but I'll keep the tree alive in the case I need to recompile it :-)
Perhaps Paul could provide some insight. :) $ svn blame ieee754-df.S ieee754-df.S | grep do_itt 120408 pbrook do_itt eq 120408 pbrook do_itt eq
Looks like it should be "do_it eq, t". Each additional "t" or "e" predicates one more instruction. The mvfeqd has to be predicated and so does the RETc(eq).
(In reply to comment #5) > Looks like it should be "do_it eq, t". Each additional "t" or "e" predicates > one more instruction. The mvfeqd has to be predicated and so does the > RETc(eq). > Do you want to commit that?
Created an attachment (id=15150) [edit] patch implementing drow's proposal I have no idea what this patch actually does, but it at least lets arm-rtems*-gcc bootstrap ;)
Subject: Bug 35071 Author: pbrook Date: Tue Feb 19 01:29:09 2008 New Revision: 132404 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=132404 Log: 2008-02-19 Paul Brook <paul@codesourcery.com> PR target/35071 * config/arm/ieee754-df.S: Fix do_it typo. * config/arm/ieee754-sf.S: Fix do_it typo. Modified: trunk/gcc/ChangeLog trunk/gcc/config/arm/ieee754-df.S trunk/gcc/config/arm/ieee754-sf.S
Fixed
Paul, notice that you fixed this *after* GCC 4.3 branched, so if your intention was to fix it also for GCC 4.3, you would need to commit the fix to the branch (and get a RM to approve it).
Subject: Bug 35071 Author: pbrook Date: Tue Feb 19 04:32:15 2008 New Revision: 132408 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=132408 Log: 2008-02-19 Paul Brook <paul@codesourcery.com> PR target/35071 * config/arm/ieee754-df.S: Fix do_it typo. * config/arm/ieee754-sf.S: Fix do_it typo. Modified: branches/gcc-4_3-branch/gcc/ChangeLog branches/gcc-4_3-branch/gcc/config/arm/ieee754-df.S branches/gcc-4_3-branch/gcc/config/arm/ieee754-sf.S