aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Burnus <tobias@codesourcery.com>2021-05-20 09:51:10 +0200
committerTobias Burnus <tobias@codesourcery.com>2021-05-20 09:52:31 +0200
commit9e0a5e3ea37f9d7d2b6f2dab7c0bfbeaf08466a3 (patch)
tree8c673094acb548193af64f81becd1590625d0484
parent94fa4c67b95c12482b6087d8eef2d72f7b7ea254 (diff)
downloadgcc-9e0a5e3ea37f9d7d2b6f2dab7c0bfbeaf08466a3.zip
gcc-9e0a5e3ea37f9d7d2b6f2dab7c0bfbeaf08466a3.tar.gz
gcc-9e0a5e3ea37f9d7d2b6f2dab7c0bfbeaf08466a3.tar.bz2
Testsuite/Fortran: gfortran.dg/pr96711.f90 - fix expected value for PowerPC [PR96983]
gcc/testsuite/ChangeLog: PR fortran/96983 * gfortran.dg/pr96711.f90: Use 2**digit(x) instead of a hard-coded value; add comments regarding what the code does.
-rw-r--r--gcc/testsuite/gfortran.dg/pr96711.f906
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/testsuite/gfortran.dg/pr96711.f90 b/gcc/testsuite/gfortran.dg/pr96711.f90
index 3761a8e..3fa5d99 100644
--- a/gcc/testsuite/gfortran.dg/pr96711.f90
+++ b/gcc/testsuite/gfortran.dg/pr96711.f90
@@ -10,10 +10,12 @@ program p
implicit none
real(8) :: x
real(16) :: y
+ ! Assume radix(x) == 2
+ ! 2/epsilon(x) = 2/(radix(x)**(1-digits(x)) = 2**digits(x) with that assumption
integer(16), parameter :: k1 = nint (2 / epsilon (x), kind(k1))
integer(16), parameter :: k2 = nint (2 / epsilon (y), kind(k2))
- integer(16), parameter :: m1 = 9007199254740992_16 !2**53
- integer(16), parameter :: m2 = 10384593717069655257060992658440192_16 !2**113
+ integer(16), parameter :: m1 = 2_16**digits(x) ! IEEE: 2**53
+ integer(16), parameter :: m2 = 2_16**digits(y) ! IEEE: 2**113
integer(16), volatile :: m
x = 2 / epsilon (x)
y = 2 / epsilon (y)