diff options
author | swhite <swhite@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2006-06-08 12:28:28 +0000 |
---|---|---|
committer | swhite <swhite@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2006-06-08 12:28:28 +0000 |
commit | e31cd14a1e55fc994a571c4426788df7445385b7 (patch) | |
tree | 08bc95814e957493d6dbc517d0ba92f6f61db43c /src/main/WarnLevel.c | |
parent | baf9598633e6ea9c9476855e636e5bd32da6d0d8 (diff) |
Application of patch
Fortran REAL*16 detection
http://www.cactuscode.org/old/pipermail/patches/2006-April/000164.html
... a patch that makes Cactus directly detect Fortran support
for a REAL*16 type.
The problem has been that Cactus based CCTK_REAL16 on support for the C type
'long double'. This would cause it to create Fortran code for REAL*16, a
type which was sometimes not supported.
In particular, on a 64-bit Athlon machine with Gnu 4.1.0, gfortran
defines REAL*8 but not REAL*16, while gcc defines 'long double'.
This caused thorn AEIThorns/Fortran to fail to compile.
This patch causes the configuration to directly compile Fortran code that
features REAL*16, and define CCTK_REAL16 only if that compiles *and* C's
'long double' is supported.
When you make config, you will see a new line about Fortran REAL*16.
I have tested the enclosed patch on
my laptop with Gnu 4.10 and Intel 9.0 compilers
64-bit AMD Athlon with same compilers
POWER4 with IBM XL compilers
BUT NOTE: I have severe doubts about using REAL*16 on any of these
architectures. That 16-byte (128-bit) type is not natively supported
on the Xeon, Athlon, or POWER machines. While some compilers support
such types, calculation is done in software, not on the FPU.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4314 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'src/main/WarnLevel.c')
0 files changed, 0 insertions, 0 deletions