README.txt
1.04 KB
"softfloat": Unaltered files from SoftFloat v3c.
http://www.jhauser.us/arithmetic/SoftFloat.html
"openbsd": Unaltered files from OpenBSD 4.9. Original path is "lib/libm/src"
"openbsd/include": Compatibility headers needed to build files from OpenBSD.
http://www.openbsd.org
Why use OpenBSD's libm? First and foremost, nearly everyone use fdlibm in a way
or another, and OpenBSD is no exception. That being said, OpenBSD comes with a
single-precision variant (which fdlibm itself lacks). And more interestingly,
this variant does all its computation in single-precision (it never upgrades to
double-precision). In our case, this is very interesting because we're doing
single-precision computation when we better performance at the cost of accuracy,
and in our case our hardware has a single-precision FPU so switching to double
can yield much lower performances.
Last but not least, we're using OpenBSD 4.9 and not the latest one because this
version still has all the double precision code (some of it got removed later on
in favor of a "long double" version).