
Package Overview for Berkeley SoftFloat Release 3d

John R. Hauser
2017 August 10

Berkeley SoftFloat is a software implementation of binary floating-point
that conforms to the IEEE Standard for Floating-Point Arithmetic.  SoftFloat
is distributed in the form of C source code.  Building the SoftFloat sources
generates a library file (typically "softfloat.a" or "libsoftfloat.a")
containing the floating-point subroutines.

The SoftFloat package is documented in the following files in the "doc"
subdirectory:

    SoftFloat.html          Documentation for using the SoftFloat functions.
    SoftFloat-source.html   Documentation for building SoftFloat.
    SoftFloat-history.html  History of the major changes to SoftFloat.

Other files in the package comprise the source code for SoftFloat.

