]> sourceware.org Git - glibc.git/commit
PowerPC floating point little-endian [3 of 15]
authorAlan Modra <amodra@gmail.com>
Sat, 17 Aug 2013 08:54:58 +0000 (18:24 +0930)
committerAlan Modra <amodra@gmail.com>
Fri, 4 Oct 2013 01:02:36 +0000 (10:32 +0930)
commit765714cafcad7e6168518c61111f07bd955a9fee
tree27c4ab59ddc279114f3d0b7064a47317cb91c3ca
parent4ebd120cd983c8d2ac7a234884b3ac6805d82973
PowerPC floating point little-endian [3 of 15]
http://sourceware.org/ml/libc-alpha/2013-08/msg00083.html

Further replacement of ieee854 macros and unions.  These files also
have some optimisations for comparison against 0.0L, infinity and nan.
Since the ABI specifies that the high double of an IBM long double
pair is the value rounded to double, a high double of 0.0 means the
low double must also be 0.0.  The ABI also says that infinity and
nan are encoded in the high double, with the low double unspecified.
This means that tests for 0.0L, +/-Infinity and +/-NaN need only check
the high double.

* sysdeps/ieee754/ldbl-128ibm/e_atan2l.c (__ieee754_atan2l): Rewrite
all uses of ieee854 long double macros and unions.  Simplify tests
for long doubles that are fully specified by the high double.
* sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (__ieee754_gammal_r):
Likewise.
* sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c (__ieee754_ilogbl): Likewise.
Remove dead code too.
* sysdeps/ieee754/ldbl-128ibm/e_jnl.c (__ieee754_jnl): Likewise.
(__ieee754_ynl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/e_log10l.c (__ieee754_log10l): Likewise.
* sysdeps/ieee754/ldbl-128ibm/e_logl.c (__ieee754_logl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/e_powl.c (__ieee754_powl): Likewise.
Remove dead code too.
* sysdeps/ieee754/ldbl-128ibm/k_tanl.c (__kernel_tanl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_frexpl.c (__frexpl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c (__isinf_nsl): Likewise.
Simplify.
* sysdeps/ieee754/ldbl-128ibm/s_isinfl.c (___isinfl): Likewise.
Simplify.
* sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_modfl.c (__modfl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Likewise.
Comment on variable precision.
* sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c (__nexttowardf):
Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_remquol.c (__remquol): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c (__scalblnl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c (__scalbnl): Likewise.
* sysdeps/ieee754/ldbl-128ibm/s_tanhl.c (__tanhl): Likewise.
* sysdeps/powerpc/fpu/libm-test-ulps: Adjust tan_towardzero ulps.
23 files changed:
ChangeLog
sysdeps/ieee754/ldbl-128ibm/e_atan2l.c
sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c
sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c
sysdeps/ieee754/ldbl-128ibm/e_jnl.c
sysdeps/ieee754/ldbl-128ibm/e_log10l.c
sysdeps/ieee754/ldbl-128ibm/e_logl.c
sysdeps/ieee754/ldbl-128ibm/e_powl.c
sysdeps/ieee754/ldbl-128ibm/k_tanl.c
sysdeps/ieee754/ldbl-128ibm/s_expm1l.c
sysdeps/ieee754/ldbl-128ibm/s_frexpl.c
sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c
sysdeps/ieee754/ldbl-128ibm/s_isinfl.c
sysdeps/ieee754/ldbl-128ibm/s_log1pl.c
sysdeps/ieee754/ldbl-128ibm/s_modfl.c
sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
sysdeps/ieee754/ldbl-128ibm/s_remquol.c
sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c
sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c
sysdeps/ieee754/ldbl-128ibm/s_tanhl.c
sysdeps/powerpc/fpu/libm-test-ulps
This page took 0.048028 seconds and 5 git commands to generate.