1
1

Don't bother to get the alignmnet of an f90 type -- the DDT engine

only uses the F77 alignments anyway.  Plus, it is currently unknown
how to reliably get the F90 alignments because compilers *may* reorder
things and/or give different alignments than the f77 tests.

This commit was SVN r9698.
Этот коммит содержится в:
Jeff Squyres 2006-04-24 14:28:51 +00:00
родитель 10ae27dd25
Коммит e57300da4c

Просмотреть файл

@ -10,6 +10,7 @@ dnl Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
dnl University of Stuttgart. All rights reserved.
dnl Copyright (c) 2004-2005 The Regents of the University of California.
dnl All rights reserved.
dnl Copyright (c) 2006 Cisco Systems, Inc.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@ -23,7 +24,6 @@ dnl
# - whether compiler supports or not
# - size of type
# - equal to expected size
# - alignment
# - range (optional)
# - precision (optional)
#
@ -34,7 +34,6 @@ AC_DEFUN([OMPI_F90_CHECK], [
ofc_have_type=0
ofc_type_size=$ac_cv_sizeof_int
ofc_type_alignment=$ac_cv_sizeof_int
# Only check if we actually want the F90 bindings / have a F90
# compiler. This allows us to call this macro even if there is
@ -90,26 +89,6 @@ AC_DEFUN([OMPI_F90_CHECK], [
fi
fi
# Get the alignment of the type and check against its F77
# counterpart
OMPI_F90_GET_ALIGNMENT([$1], [ofc_type_alignment])
ofc_f77_alignment=$[OMPI_ALIGNMENT_FORTRAN_]m4_bpatsubst(m4_bpatsubst([$1], [*], []), [[^a-zA-Z0-9_]], [_])
if test "$ofc_f77_alignment" != ""; then
AC_MSG_CHECKING([if Fortran 77 and 90 type alignments match])
if test "$ofc_f77_alignment" != "$ofc_type_alignment"; then
AC_MSG_RESULT([no])
AC_MSG_WARN([*** Fortran 77 alignment for $1 ($ofc_f77_alignment) does not match])
AC_MSG_WARN([*** Fortran 90 alignment for $1 ($ofc_type_alignment)])
# JMS Commented out for now so that a) people can continue developing
# with f90, b) we stop breaking "make dist", and c) we can find out
# the Real Deal from Fortran compiler vendors.
# AC_MSG_ERROR([*** Cannot continue])
AC_MSG_WARN([*** OMPI-F90-CHECK macro needs to be updated!])
else
AC_MSG_RESULT([yes])
fi
fi
# If we passed in the expected size, then also add the
# type to the relevant list of types found.
if test "$ofc_expected_size" != ""; then
@ -131,10 +110,10 @@ AC_DEFUN([OMPI_F90_CHECK], [
# first part of the provided fortran type (e.g.,
# "logical(selected_int_kind(2))" -> logical1")
# Note that there is no need to AC_DEFINE the size and alignment
# of the F90 datatype. We have ensured (above) that they are the
# same as the corresponding F77 datatypes, and that's good enough
# (i.e., the DDT engine only looks at the F77 sizes/alignments).
# Note that there is no need to AC_DEFINE the size of the F90
# datatype. We have ensured (above) that they are the same as the
# corresponding F77 datatypes, and that's good enough (i.e., the
# DDT engine only looks at the F77 sizes).
# Finally, note that it is necessary to use the Big Long Ugly m4
# expressions in the AC_DEFINE_UNQUOTEDs. If you don't (e.g., put
@ -154,7 +133,7 @@ AC_DEFUN([OMPI_F90_CHECK], [
# Clean up
unset ofc_fortran_type ofc_expected_size ofc_want_range ofc_pretty_name
unset ofc_have_type ofc_type_size ofc_type_alignment ofc_letter ofc_str
unset ofc_have_type ofc_type_size ofc_letter ofc_str
unset ofc_type_range ofc_type_precision
unset ofc_f77_sizeof ofc_f77_alignment
unset ofc_f77_sizeof
])dnl