------- Comment #18 from joseph at codesourcery dot com  2005-12-21 17:39 
-------
Subject:  Patch for arm-none-linux-gnueabi build failure

This patch fixes another piece of bug 24998, fallout from adding
__floatun*.  Unlike the problems with missing functions, this is one
with duplicate functions: builds for arm-none-linux-gnueabi fail
because __floatundisf and __floatundidf are multiply defined, once in
libgcc2.c and once in ieee754-[ds]f.S.  Where a target defines its own
version of a function in libgcc2.c, it needs to be listed in
LIB1ASMFUNCS to avoid the libgcc2.c version being compiled.  (In this
case, a group of functions are all included in the same object file so
inclusion in LIB1ASMFUNCS wasn't needed for the ARM version to get
compiled in the first place.)

Tested with cross-compiler to arm-none-linux-gnueabi; it fixes the
build of the compiler.  OK to commit?

2005-12-21  Joseph S. Myers  <[EMAIL PROTECTED]>

        PR middle-end/24998
        * config/arm/t-arm-elf (LIB1ASMFUNCS): Add _floatundidf and
        _floatundisf.

diff -rupN GCC.orig/gcc/config/arm/t-arm-elf GCC/gcc/config/arm/t-arm-elf
--- GCC.orig/gcc/config/arm/t-arm-elf   2005-10-28 23:33:56.000000000 +0000
+++ GCC/gcc/config/arm/t-arm-elf        2005-12-21 16:40:19.000000000 +0000
@@ -4,7 +4,7 @@ LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3
        _lshrdi3 _ashrdi3 _ashldi3 \
        _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
        _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
-       _fixsfsi _fixunssfsi _floatdidf _floatdisf
+       _fixsfsi _fixunssfsi _floatdidf _floatdisf _floatundidf _floatundisf

 MULTILIB_OPTIONS     = marm/mthumb
 MULTILIB_DIRNAMES    = arm thumb


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24998

Reply via email to