------- Comment #8 from joseph at codesourcery dot com 2005-11-23 14:54 ------- Subject: Re: [4.2 Regression] Build failure on sparc-sun-solaris2.9/arm: undefined symbol __floatunsitf
On Wed, 23 Nov 2005, rearnsha at gcc dot gnu dot org wrote: > Not that simple, because the implementation of __floatunsidf is tightly > integrated with the implementation of __adddf3. And we don't want to > override that because the ieee754-df.S implementation does not support > raising signals. In that case there's the possibility of a trivial C implementation along the lines of double __floatunsidf (unsigned i) { double r = (double)(int)i; if ((int)i < 0) r += 0x1p32f; return r; } (with a bit more complexity for correct rounding in the "float" case, as expand_float does). Adding such implementations to libgcc2.c is the simplest workaround for this bug, but I'd hope that most issues can be resolved separately so such implementations are only needed in the case of __float* in libc. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24998