Home | History | Annotate | Download | only in softfloat
History log of /src/lib/libc/arch/sparc64/softfloat/qp.c
RevisionDateAuthorComments
 1.11  02-Feb-2014  martin Fix unsigned 64 bit int to long double conversion for numbers that would not
fit into a signed 64 bit int. Found by latest t_floatunditf test case
failuer, hint from Matt Thomas.
 1.10  15-Feb-2013  martin Make all conversions from 128bit (long double) floats to integral types
use rounding towards zero (casts to int/long are not affected by current
rounding mode).
Fixes PR port-sparc64/47535.
 1.9  17-Mar-2012  martin branches: 1.9.2;
Avoid lint warnings
 1.8  14-Mar-2012  martin Rename __zero to __sf128_zero to avoid clashes with the strange new
inline function in cdefs.h
 1.7  28-Apr-2008  martin branches: 1.7.4; 1.7.8; 1.7.24;
Remove clause 3 and 4 from TNF licenses
 1.6  08-Nov-2007  martin branches: 1.6.6;
When converting long double values to integer types, explicitly use the
"round to zero" variants of the softfloat conversion functions.
Add a variant to convert long double to unsigned long - the "to long"
variant checked for overflows that do not apply to unsigned results.
This fixes the regress/lib/libc/convfp tests for sparc64.
 1.5  01-May-2003  martin branches: 1.5.22;
Make _Qp_qtoui return the right value for inputs that do not fit into
an int value, but are valid unsigned ints. This should fix PR 21414.
The same problem exists for _Qp_qtoux, but there is no similar trivial
solution to that (I could think of).
Pointed out by David Laight.
 1.4  06-Feb-2003  petrov Correct unsigned to float conversions, add license, adjust style.
 1.3  27-Mar-2002  jmc branches: 1.3.2;
Fix typo in previous commit
 1.2  27-Mar-2002  jmc Correct mistaken signature for _Qp_dtoq. It gets a double passed in, not
a pointer to double which causes obvious errors on evaluation
 1.1  05-Feb-2002  jmc branches: 1.1.2;
Add softfloat and quad softfloat setup for sparc64 (thanks to Andrey Petrov
for most of this. I just integrated the build).

This adds proper functions for the _Qp* parts of the sparc64 ABI (which
handle quad softfloat). The routines work but need additional testing.
However if the compiler calls these currently bad things (core dumps)
will happen as gcc 2.95.3 generates bad calls for these.

Until that problem is fixed in the toolchain -msoft-quad-float cannot be
enabled as the default option for all builds (but the routines need to be
in libc as libgcc contains some references to these and anything including
it via --whole-archive will need the symbols to at least resolve).
 1.1.2.3  25-Apr-2002  nathanw Catch up to -current.
 1.1.2.2  22-Mar-2002  nathanw Catch up to -current.
 1.1.2.1  05-Feb-2002  nathanw file qp.c was added on branch nathanw_sa on 2002-03-22 20:41:55 +0000
 1.3.2.2  19-Oct-2003  tron Pull up revision 1.5 (requested by nakayama in ticket #1517):
Make _Qp_qtoui return the right value for inputs that do not fit into
an int value, but are valid unsigned ints. This should fix PR 21414.
The same problem exists for _Qp_qtoux, but there is no similar trivial
solution to that (I could think of).
Pointed out by David Laight.
 1.3.2.1  19-Oct-2003  tron Pull up revision 1.4 (requested by nakayama in ticket #1517):
Correct unsigned to float conversions, add license, adjust style.
 1.5.22.1  09-Jan-2008  matt sync with HEAD
 1.6.6.1  18-May-2008  yamt sync with head.
 1.7.24.1  18-Feb-2013  riz Pull up following revision(s) (requested by martin in ticket #825):
lib/libc/arch/sparc64/softfloat/qp.c: revision 1.10
Make all conversions from 128bit (long double) floats to integral types
use rounding towards zero (casts to int/long are not affected by current
rounding mode).
Fixes PR port-sparc64/47535.
 1.7.8.2  28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.7.8.1  28-Apr-2008  martin file qp.c was added on branch christos-time_t on 2008-04-28 20:22:58 +0000
 1.7.4.2  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.7.4.1  17-Apr-2012  yamt sync with head
 1.9.2.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.9.2.1  25-Feb-2013  tls resync with head

RSS XML Feed