[parisc-linux] glibc 2.3.1 - It's alive! - patches

John David Anglin dave@hiauly1.hia.nrc.ca
Sun, 17 Nov 2002 16:54:40 -0500 (EST)


> testing double (without inline functions)
> Failure: Real part of: cacos (inf + NaN i) == NaN + inf i plus sign of zero/inf not specified: Exception "Invalid operation" set

It occurred to me these might be a gcc problem on PA1 machines.  These
machines don't have fneg and negation is currently implemented as the
product with -1.  This may cause invalid operation to be set if the
value is a signaling NaN.

A better way to do the negation is to toggle the sign bit but this is
inefficient as the value needs to be copied from a FPR to a GPR and
back again.

A quick check would be to run the tests with "-mpa-risc-2-0" and see
if this makes any difference.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)