[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[patches] Proposal for submission of dfp add-on to EGLIBC


IBM is interested in submitting the Decimal Floating Point C-library
add-on (Libdfp) to EGLIBC.

The dfp GLIBC add-on was developed by IBM.

GLIBC proper has declined to accept Libdfp because they feel that the
DFP C-specification Draft Technical Report ISO/IEC WDTR 24732 isn't
mature enough at this point for their consideration.

Here's the current Technical Report.


In lieu of this we'd like to submit Libdfp to EGLIBC so that the
community can benefit from our progress thus far and contribute to it as

Caveats to inclusion in EGLIBC:

o Libdecnumber:

  * The following toolchain packages rely upon libdecnumber:

	Libgcc (runtime support)

  * Libdecnumber v3.24 was originally contributed by IBM to GCC and has
recently had it's license amended to GPL+exceptions.  I intend to help
port GCC's libdecnumber version to v3.37 soon (with the blessing of IBM
of course).

  * Libdfp has an internal version of libdecnumber v3.37 that is
currently licensed LGPLv2.1.  In order to contribute Libdfp to EGLIBC
this internal version of libdecnumber must be removed from Libdfp
because the FSF doesn't allow the same source code to have multiple

  * When libdecnumber is removed from Libdfp the libdecnumber symbols
libdfp needs will come from libgcc rather than from Libdfp.  This will
require some work because part of Libdfp is a math library which makes
use of some decNumber internal (non-exported) symbols.  I didn't write
these functions but I will try to break this dependency.

o arithmetic/conversion/comparison functions:

  e.g. adddd3/extendddxf/eqdd2

  * Libdfp provides clean-room versions of all the arith/conv/comp
routines normally found in libgcc in order to provide exception support.
Eventually these should be shared with GCC akin to what is done with
soft-fp currently.

o Certain GLIBC files are overridden in the dfp add-on so as to not
intrude on the base GLIBC versions of these files.  They can either
remain overrides or they can be merged with the EGlibc base versions.
These include:


Penguinppc.org has been temporarily holding development point releases
of Libdfp while we search for a home for Libdfp.

http://www.penguinppc.org/dev/glibc/dfp.html (v0.05 coming soon)

Libdfp is currently copyright IBM in order to retain the maximum amount
of flexibility/freedom with regard to copyright and license until we can
find a community home for Libdfp.  If EGLIBC accepts Libdfp we'll adjust
the copyright and license under the terms and conditions of the EGLIBC
license and FSF copyright strictures.


Ryan S. Arnold
Linux Technology Center
Linux Toolchain Development

P.S. Yes, I have FSF copyright assignment.