This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Re: AMD x86_64 linux binaries for gfortran
On Tue, Mar 22, 2005 at 06:06:47PM -0800, Tim Prince wrote:
> At 12:21 PM 3/22/2005, Steve Kargl wrote:
>
> >On Tue, Mar 22, 2005 at 09:07:47PM +0100, Fran?ois-Xavier Coudert wrote:
> >>
> >> 64bits linux). These seems to default integers to 32 bits,
> >> if you feel the other behavior (default 64 bits integers) is better I'll
> >> be happy to do it, if someone can tell me what is the magic option
> >> for configure.
> >
> >I don't think you want to default to 64 bit integer for
> >the default integer kind. If you do, then this implies
> >that we have 64-bit reals for the default real kind and
> >then we would need REAL(10) to work for the additional
> >kind with higher precision as specified by the standard.
> >We have no support for intrinsic procedures with REAL(10),
> >nor do we have IO routines.
>
> As these x86-64 machines are designed to take advantage of 32-bit data for
> best performance, and existing 64-bit compilers have 32-bit default kinds,
> this is good advice. In gcc, only long and pointer types become 64
> bits. I'd like to see a "64-bit" Windows gfortran as well, and there the
> ABI even more clearly favors 32-bit default data types. I don't favor
> making gcc for Windows inconsistent with gcc for linux, but let's not go
> out of our way to make gfortran inconsistent with Windows ABI. There is a
> movement to add a 64-bit integer type to the common MPI implementations,
> but even that isn't there yet.
>
On FreeBSD-amd64, we have INTEGER(1), INTEGER(2), INTEGER(4),
INTEGER(8), and INTEGER(16); we also have REAL(4), REAL(8), and
REAL(10). I suspect these are also present on 64-bit linux. We
do not have IO routines for INTEGER(16) and REAL(10). We do not
have intrinsic procedures for REAL(10). I haven't looked to see
if intrinsics are available for INTEGER(16).
--
Steve