This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug math/14803] Different ULPs depending on size of long int in GCC
- From: "joseph at codesourcery dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sources dot redhat dot com
- Date: Sun, 04 Nov 2012 22:42:15 +0000
- Subject: [Bug math/14803] Different ULPs depending on size of long int in GCC
- Auto-submitted: auto-generated
- References: <bug-14803-131@http.sourceware.org/bugzilla/>
http://sourceware.org/bugzilla/show_bug.cgi?id=14803
--- Comment #1 from joseph at codesourcery dot com <joseph at codesourcery dot com> 2012-11-04 22:42:15 UTC ---
On Sun, 4 Nov 2012, hjl.tools at gmail dot com wrote:
> Since GCC encodes float-pointing constants slightly different,
> depend on size of long int:
Which constants are involved here? Ones in the asinl source code, or ones
in the expected test results? In either case we should regenerate the
affected constant in hex float or with more decimal places, though I don't
know offhand the right software for recomputing the rational function
approximation for asinl.
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55145
Really I'd consider this just a variant on bug 21718 (real.c rounding not
perfect). That would ideally be fixed by using MPFR for this in GCC ...
except that for any MPFR versions before 3.1.1p2, the bug I found with the
ternary value from mpfr_strtofr could cause problems for subnormal
results.
But since GCC uses 160 bits internally, getting different results for a
64-bit mantissa is a bit surprising unless one of the constants is
extremely close to a half-way value.
> /export/build/gnu/glibc-test/build-x86_64-linx/math/test-ildoubl.out
> testing long double (inline functions)
We can of course also update libm-test-ulps to include these ulps, though
preferably all computed constants in libm sources would be hex float to
make unambiguous exactly what floating-point number is intended.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.