On 10/25/2010 07:31 PM, Dennis Gilmore wrote:
Id like to have us look at what we need to do to support both
software floating
point and hardware floating point support.
I had been under the impression that all we would need to do is to build glibc
with hardfp support. however that may not be the case. and we may need to
build everything with hardfp support.
this is just to get discussion rolling
See this thread for a little context:
http://cygwin.com/ml/libc-ports/2009-04/msg00020.html
Basically, soft floating point on ARM is done with helper functions. By
default, these are statically linked in, but they do not need to be. If
you dynamically link in the aeabi floating point helper code (basically
libgcc) and have a multilib glibc, then there is the ability to have
softfp binaries that can take advantage of hardfp when available. These
binaries will be slower than real hardfp binaries though. And it is not
clear that multilib alone is sufficient, it may be that the new IFUNC
stuff is really needed for good performance across different VFP variants.
Adam