bug-glibc
[Top][All Lists]
Advanced

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

glibc/ppc/soft-float (bogus?) test failures


From: Edward Welbourne
Subject: glibc/ppc/soft-float (bogus?) test failures
Date: Tue, 03 Dec 2002 13:42:19 +0100

First a note: http://bugs.gnu.org/cgi-bin/gnatsweb.pl
tells me
> If you do not have a gnats account, use username "guest" and password "guest".
but doing that gets me a *momentary* glimpse of some other page before
returning me to the same gnatsweb.pl entry-point.  I haven't a clue
what the fleeting page is, of course.

So I haven't used gnatsweb for this report.

[Further to that: by default I have JavaSpit turned off; but got a
notice about cookies on the page and how the page needs to know I've
got them turned on, for which it needs JavaSpit on.  So I turned on
JavaSpit (I trust you) and it still didn't work.  So I turned off
cookie-filtering (i.e. accepted cookies for any server, rather than
limiting them) and it *still* didn't work, so I gave up.
And turned all the insecurity features back off again.]

I've just built glibc on a ppc --without-fp.  The only add-on I've
actually installed (aside from any intrinsically present in the base
glibc download) is the linuxthreads one.  I'm actually building on a
machine *with* hardware FP, but building *for* a machine I don't have
that has no FP.  Library build was (once I'd upgraded binutils and
gcc) a success (yippedeedoodah).  Flags to configure were:

../glibc-2.3.1/configure --enable-add-ons --without-fp

(with a prefix).  Target type powerpc-unknown-linux-gnu was
autodetected, consistent with what I know of the box.  (I'd give you
skreeds more information, but that box is on the other end of a
precarious piece of salty string and doesn't know how to e-mail stuff
out; I can get the logs from configure, make, make check if you
*really* need them, it'll just involve a load of hassle.  All data in
this e-mail has come via pen-and-notepad-net.)

I note that the build got warnings about conjl, cimagl and creall;
which the info pages list as having [complex] long double output and
complex long double input; but I believe the macros declaring them in
the library omit the `long', which is presumably why the compiler is
grumbling about math/bits/cmathcalls.h (lines 117, 126, 129) while
building, e.g., sysdeps/generic/s_ctanh.c and other complex functions.
The error message says: "warning: conflicting types for the built-in
function `...'" with ... as the function name.

More significantly, make check got some failures: e.g. in
math/libm-test.c; most relate to feclearexcept() which is "not
implemented and will always fail", the rest said similar about
fetestexcept().

Presumably the whole FPU status word API is pretty much irrelevant
without FPU: but should the library have built emulators for this API,
to deal with the fpu-emulator encountering the equivalent conditions ?
Either it should and neglected to (or at least neglected to declare
the API in its headers), or the tests need tweaked to omit the calls
to the API when testing a --without-fpu build.

I duly #define'd feclearexcept and fetestexcept after the last
#include in libm-test.c, to simply yield 0, and ignored a few compiler
warnings about useless expressions in void context.  This let the
tests run, though they failed: generally with tiny errors in the
output of math functions (one part in a million and less), and with
various zeros and infinities having the wrong sign.  The following
briefly lists the maximal error in the function with the biggest such,
plus the values of F/T+E with these numbers taken from the final
message saying
  T test cases plus E tests for exception flags executed.
  F errors.
in each of the files for which I got errors:

math/test-float.out:    cacosh ~ 7+3i ulp; 175/2501+2297
math/test-double.out:   casinh ~ 5+3i ulp; 124/2518+2306
math/test-ifloat.out:   cacosh ~ 7+3i ulp; 175/2439+2235
math/test-idouble.out:  casinh ~ 5+3i ulp; 124/2456+2244

The errors are small enough that I don't care.
I have all the log files, so shout if you need them ...

        Eddy.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]