From patchwork Sun Aug 22 14:06:42 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [Fortran, committed] PR 45367/36158 - Increase numeric tolerance in bessel_{6, 7}.f90 Date: Sun, 22 Aug 2010 04:06:42 -0000 From: Tobias Burnus X-Patchwork-Id: 62388 Message-Id: <4C712EF2.4020404@net-b.de> To: gcc patches , gfortran Tobias Burnus wrote: > I increased now the tolerance based on Dominique's values and cross > checked using -m32 on x86-64-linux. I hope it will now work on most > systems Dominique found additional failures for bessel_6.f90. Let's see how many systems still fail with the numbers below. I have still the hope that there are reasonable numbers which work on all systems with working jn/yn functions ... Committed as Rev. 163460 Tobias Index: gcc/testsuite/ChangeLog =================================================================== --- gcc/testsuite/ChangeLog (Revision 163458) +++ gcc/testsuite/ChangeLog (Arbeitskopie) @@ -1,6 +1,12 @@ 2010-08-22 Tobias Burnus + Dominique d'Humieres PR fortran/45367 + * gfortran.dg/bessel_6.f90: Further reduce required accuracy. + +2010-08-22 Tobias Burnus + + PR fortran/45367 * gfortran.dg/bessel_6.f90: Fix numeric tolerence. 2010-08-22 Tobias Burnus Index: gcc/testsuite/gfortran.dg/bessel_6.f90 =================================================================== --- gcc/testsuite/gfortran.dg/bessel_6.f90 (Revision 163458) +++ gcc/testsuite/gfortran.dg/bessel_6.f90 (Arbeitskopie) @@ -8,12 +8,12 @@ implicit none real,parameter :: values(*) = [0.0, 0.5, 1.0, 0.9, 1.8,2.0,3.0,4.0,4.25,8.0,34.53, 475.78] real,parameter :: myeps(size(values)) = epsilon(0.0) & - * [2, 7, 5, 6, 9, 12, 12, 7, 7, 8, 75, 6 ] + * [2, 7, 5, 6, 9, 12, 12, 7, 7, 8, 75, 15 ] ! The following is sufficient for me - the values above are a bit ! more tolerant ! * [0, 5, 3, 4, 6, 7, 7, 5, 5, 6, 66, 4 ] integer,parameter :: mymax(size(values)) = & - [100, 17, 23, 21, 27, 28, 32, 35, 36, 41, 49, 50 ] + [100, 17, 23, 21, 27, 28, 32, 35, 36, 41, 47, 37 ] integer, parameter :: Nmax = 100 real :: rec(0:Nmax), lib(0:Nmax) integer :: i