This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Promote a math test for sNaN handling to the top-level.


On Mon, 18 Mar 2013, Thomas Schwinge wrote:

> +static int sNaN_tests;

Surely you should only disable tests for float and double, not long double 
(that is, the tests should be controlled independently for each type)?

> +# On 32-bit x86, GCC is happy to use FPU load instructions for sNaN values, and
> +# loading a float or double sNaN value will already raise an INVALID exception
> +# as well as turn the sNaN into a qNan, rendering certain tests infeasible in
> +# this scenario.

How do you propose to condition this on the GCC version?  Is the makefile 
the best place, or would a sysdeps header be better for compiler-version 
conditionals?

(Sysdeps headers used by libm tests could be useful for other things.  
For example, they could declare "rounding modes and exceptions are 
supported for float and double but not long double" (MIPS64) - another 
case of an architecture-specific floating-point peculiarity.  Maybe there 
should be a math-tests.h that communicates to the testsuite information 
about what features are expected to be supported, for cases where it's 
hard for the testsuite to do runtime tests or to point out where runtime 
tests unexpectedly failed.)

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]