[U-Boot-Users] software FP yada yada yada
Brent Cook
bcook at bpointsys.com
Thu Oct 12 23:57:48 CEST 2006
On Thursday 12 October 2006 16:44, Ulf Samuelsson wrote:
> >> According to the crosstool documentation at www.kegel.com:
> >>
> >> Most combinations of gcc 3.x.x and binutils fails when you try to build
> >> a softfloat toolchain All tested combinations of gcc-4.x.x and binutils
> >> fails if softfloat is enabled. If you want to use gcc 4, you cannot
> >> build u-boot as is.
> >
> > FYI, I have successfully used GCC 4.1.1 and binutils 2.16.1 to build not
> > only a working armv5teb softfloat toolchain (with glibc 2.4 to boot), but
> > also build and use u-boot 1.1.4 and the latest git head with no problems
> > at all.
> >
> > Granted, I built the toolchain from scratch - it takes a number of tweaks
> > to build correctly, all of which are not in crosstool.
>
> Is there any true benefit of using a softfloat toochain?
> The number of floating point operation is surely minimal in U.boot.
> Anyone got an idea if there is any code saving.
>
> Best Regards
> Ulf Samuelsson
It's pretty darn minimal in u-boot. If you build Linux with this toolchain
however, and have a non-trivial number of floating point operations in your
application code, you could end up causing a lot of processor exceptions,
which get caught by the kernel and run through the FP emulator. The gist
would be that userland code has to do a context switch to the kernel for
every FP operation if you build with a hard-float toolchain. With a
soft-float toolchain, it stays in userland, and is a bit faster and more
efficient (as efficient as soft floating point can be.)
- Brent
More information about the U-Boot
mailing list