When I build a cross compiler for mipsel-linux, the libgcc.a is not built with -msoft-float. This leads to an ABI mismatch (arguments passed in FP regs) between the FP emulation in libgcc, and the code compiled with -msoft-float that tries to use the FP emulation. From what I can see, this problem is not limited to just the mipsel-linux target Release: gcc-3.2.1 Environment: mipsel-linux
Fix: compile libgcc.a with -msoft-float. I modified config/t-linux, but that's probably not the only file that should be changed.
Does this still happen with 3.3?
I can confirm that mipsel-linux is not multi-libed for msoft-float.
Subject: Re: -msoft-float does not work for mipsel-linux, and probably others At Wed, 6 Aug 2003 05:47:54 +0000 (UTC), "pinskia at physics dot uc dot edu" wrote: > I can confirm that mipsel-linux is not multi-libed for msoft-float. At least to my mind, it shouldn't be, either. If you're building a soft-float system, you should build a compiler and build glibc that uses soft-float. There's no well-defined place for soft-float multilibs to go. (compare with n32/n64, which have well-defined places in the file system to live when installed together with o32. There's no such place for soft-float.) cgd
There should, however be an easy way to build a cross to a non-multilibbed soft-float system. I'm not clear from this report whether *that* is a problem.
Subject: Re: -msoft-float does not work for mipsel-linux, and probably others "neroden at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> writes: > There should, however be an easy way to build a cross to a > non-multilibbed soft-float system. I'm not clear from this report > whether *that* is a problem. Well, as far as I know, we don't support a -msoft-float version of mips-linux-gnu. Richard
Sounds like mipsel-uClibc uses soft-floats.
Subject: Re: -msoft-float does not work for mipsel-linux, and probably others On Thu, Aug 07, 2003 at 06:09:48PM -0000, rsandifo at redhat dot com wrote: > Well, as far as I know, we don't support a -msoft-float version of > mips-linux-gnu. It works, though. Try --with-float=soft.
Subject: Re: Daniel Jacobowitz 2003-08-19 21:19 I've tried building GCC 3.3.1 with --with-float=soft. I receive NAN's as output in the binaries, too. Modifying config/t-linux seems to fix the problems.
GCC 3.3.1 doesn't support --with-float=soft. Try CVS HEAD.
So does --with-float=soft works on 3.4.0 and above?
No feedback in over two years now.