This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/35285] New: Failures in the NIST test suite FM827 with -m64
- From: "dominiq at lps dot ens dot fr" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 21 Feb 2008 23:09:15 -0000
- Subject: [Bug fortran/35285] New: Failures in the NIST test suite FM827 with -m64
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
I noticed today (gcc version 4.4.0 20080221) two failures in FM827 when running
the NIST test suite with -m64. I have reduced the code to:
PROGRAM FM827
DOUBLE PRECISION AVD, BVD, CVD, DVD, DVCORR
IVPASS = 0
IVFAIL = 0
IVDELE = 0
IVINSP = 0
IVTOTN = 0
ICZERO = 0
I01 = 05
I02 = 06
NUVI = I02
CT007* TEST 7 SQRT(X)**2 = X
IVTNUM = 7
AVD = DSQRT(9.125D0) ** 2 - 9.125D0
IF (AVD + 0.5000000000D-09) 20070, 10070, 40070
40070 IF (AVD - 0.5000000000D-09) 10070, 10070, 20070
10070 IVPASS = IVPASS + 1
WRITE (NUVI, 80002) IVTNUM
GO TO 0071
20070 IVFAIL = IVFAIL + 1
DVCORR = 0.0D+00
WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR
0071 CONTINUE
CT008* TEST 8 LN(X) = LN(10) * LOG10(X)
IVTNUM = 8
BVD = 62.5D0 / 1000.0D0
AVD = DLOG10(BVD) * DLOG(10.0D0) - DLOG(0.0625D0)
IF (AVD + 0.5000000000D-09) 20080, 10080, 40080
40080 IF (AVD - 0.5000000000D-09) 10080, 10080, 20080
10080 IVPASS = IVPASS + 1
WRITE (NUVI, 80002) IVTNUM
GO TO 0081
20080 IVFAIL = IVFAIL + 1
DVCORR = 0.0D+00
WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR
0081 CONTINUE
CT009* TEST 9 COSH**2 - SINH**2 = 1
IVTNUM = 9
BVD = 0.125D0
CVD = DSINH(2.125D0)
DVD = DCOSH(2.0D0 + BVD)
AVD = DVD ** 2 - CVD ** 2 - DCOSH(0.0D0)
IF (AVD + 0.5000000000D-09) 20090, 10090, 40090
40090 IF (AVD - 0.5000000000D-09) 10090, 10090, 20090
10090 IVPASS = IVPASS + 1
WRITE (NUVI, 80002) IVTNUM
GO TO 0091
20090 IVFAIL = IVFAIL + 1
DVCORR = 0.0D+00
WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR
0091 CONTINUE
CT010* TEST 10 TANH(X) = 1 - 2/(EXP(2X)+1)
IVTNUM = 10
BVD = 5.0D0
CVD = 2.0D0
DVD = DLOG10(BVD * CVD) - DSQRT(4.0D0) /
1 (DEXP(2.0D0 * (BVD - CVD)) + DCOS(0.0D0))
AVD = DVD - DTANH(3.0D0)
IF (AVD + 0.5000000000D-09) 20100, 10100, 40100
40100 IF (AVD - 0.5000000000D-09) 10100, 10100, 20100
10100 IVPASS = IVPASS + 1
WRITE (NUVI, 80002) IVTNUM
GO TO 0101
20100 IVFAIL = IVFAIL + 1
DVCORR = 0.0D+00
WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR
0101 CONTINUE
80002 FORMAT (" ",2X,I3,4X," PASS ",32X,A31)
80031 FORMAT (" ",2X,I3,4X," FAIL ",/," ",16X,"COMPUTED= " ,
1D17.10,/," ",16X,"CORRECT= " ,D17.10)
STOP
END
for which the executable gives:
7 PASS
8 FAIL
COMPUTED= 0.2772588722D+01
CORRECT= 0.0000000000D+00
9 PASS
10 FAIL
COMPUTED= -0.1000000000D+01
CORRECT= 0.0000000000D+00
I have tried to reduce the code further, but I cannot keep at the same time the
logic of the code and the failures. I don't get any failure on PPC. When the
tests fail, DLOG10(BVD)=0.0D0.
I am pretty sure to have run the NIST test suite with -m64 without error when
Jerry DeLisle proposed his first patch for PR35036 three weeks ago, now it
fails even with 4.2.3 and all the old gfortran I have tried. So I don't
understand what's happening. I don't know if this related, but in the last
weeks I have updated mpfr to 2.3.1 (from 2.3.0) and Darwin to 9.2 (from 9.1).
--
Summary: Failures in the NIST test suite FM827 with -m64
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dominiq at lps dot ens dot fr
GCC build triplet: i686-apple-darwin9
GCC host triplet: i686-apple-darwin9
GCC target triplet: i686-apple-darwin9
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35285