[gfortran] I/O of large integer and real kinds, round 2
Steve Kargl
sgk@troutmask.apl.washington.edu
Fri Jun 24 05:08:00 GMT 2005
On Thu, Jun 23, 2005 at 09:23:28PM -0700, Jerry DeLisle wrote:
>
> It would not make sense to me to implement higher precision and not use
> hardware support when available, so the configure scripts need to make a
> determination of the platform capabilities and build accordingly. I am
> assuming that real 10 would be IEEE extended 80 bit or similar.
Yes, I think you are correct with the caveat that the OS
needs to enforce certain aspects of IEEE to strictly conform
to 754 (e.g., rounding modes).
> I was thinking along the lines of the wrapper functions also. When
> support for real(16) in hardware comes along, which it will, then the
> implementation can be modeled after (edited from) the wrappers for real(10).
If I understand a comment made by Richard Henderson, gfortran will
map either real(10) or real(16) to C's long double. I don't know
if there is a target that supports both real(10) and real(16). If
libm contains long double versions of the functions, then we should
use those.
> Does mpfr recognize when it has hardware available and use it? That
> would be really nice.
mpfr is built on top of gmp. gmp has numerous hand optimized
assembly routines for several different CPUs. AFAIK, these
routines are low level arithmetic operations.
--
Steve
More information about the Fortran
mailing list