1
1

Fixes from Ake Sandgren for MPI_SIZEOF for the TKR mpi module

implementation.  This was already fixed in the ignore TKR mpi module.

This commit was SVN r27392.
Этот коммит содержится в:
Jeff Squyres 2012-10-02 16:29:06 +00:00
родитель 9200473a59
Коммит 82171eef9d
2 изменённых файлов: 33 добавлений и 12 удалений

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

@ -19,6 +19,7 @@
! This file is used by scripts/mpi_sizeof.f90.sh (and therefore mpi_sizeof.f90) ! This file is used by scripts/mpi_sizeof.f90.sh (and therefore mpi_sizeof.f90)
integer :: OMPI_SIZEOF_F90_CHARACTER
integer :: OMPI_SIZEOF_F90_LOGICAL integer :: OMPI_SIZEOF_F90_LOGICAL
integer :: OMPI_SIZEOF_F90_INT1 integer :: OMPI_SIZEOF_F90_INT1
@ -36,6 +37,7 @@ integer :: OMPI_SIZEOF_F90_COMPLEX8
integer :: OMPI_SIZEOF_F90_COMPLEX16 integer :: OMPI_SIZEOF_F90_COMPLEX16
integer :: OMPI_SIZEOF_F90_COMPLEX32 integer :: OMPI_SIZEOF_F90_COMPLEX32
parameter(OMPI_SIZEOF_F90_CHARACTER = @OMPI_SIZEOF_FORTRAN_CHARACTER@)
parameter(OMPI_SIZEOF_F90_LOGICAL = @OMPI_SIZEOF_FORTRAN_LOGICAL@) parameter(OMPI_SIZEOF_F90_LOGICAL = @OMPI_SIZEOF_FORTRAN_LOGICAL@)
parameter(OMPI_SIZEOF_F90_INT1 = @OMPI_SIZEOF_FORTRAN_INTEGER1@) parameter(OMPI_SIZEOF_F90_INT1 = @OMPI_SIZEOF_FORTRAN_INTEGER1@)

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

@ -23,20 +23,30 @@
procedure='MPI_Sizeof' procedure='MPI_Sizeof'
rank=0 rank=0
for kind in $lkinds
do proc="${procedure}${rank}DCH"
proc="${procedure}${rank}DL${kind}"
echo "subroutine ${proc}(x, size, ierr)" echo "subroutine ${proc}(x, size, ierr)"
echo " implicit none" echo " implicit none"
echo " include 'fortran_sizes.h'" echo " include 'fortran_sizes.h'"
echo " logical*${kind}, intent(in) :: x" echo " character, intent(in) :: x"
echo " integer, intent(out) :: size" echo " integer, intent(out) :: size"
echo " integer, intent(out) :: ierr" echo " integer, intent(out) :: ierr"
echo " size = OMPI_SIZEOF_F90_LOGICAL${kind}" echo " size = OMPI_SIZEOF_F90_CHARACTER"
echo " ierr = 0"
echo "end subroutine ${proc}"
echo
proc="${procedure}${rank}DL"
echo "subroutine ${proc}(x, size, ierr)"
echo " implicit none"
echo " include 'fortran_sizes.h'"
echo " logical, intent(in) :: x"
echo " integer, intent(out) :: size"
echo " integer, intent(out) :: ierr"
echo " size = OMPI_SIZEOF_F90_LOGICAL"
echo " ierr = 0" echo " ierr = 0"
echo "end subroutine ${proc}" echo "end subroutine ${proc}"
echo echo
done
for kind in $ikinds for kind in $ikinds
do do
@ -94,20 +104,29 @@ do
case "$rank" in 6) dim='1,1,1,1,1,*' ; esac case "$rank" in 6) dim='1,1,1,1,1,*' ; esac
case "$rank" in 7) dim='1,1,1,1,1,1,*' ; esac case "$rank" in 7) dim='1,1,1,1,1,1,*' ; esac
for kind in $lkinds proc="${procedure}${rank}DCH"
do
proc="${procedure}${rank}DL${kind}"
echo "subroutine ${proc}(x, size, ierr)" echo "subroutine ${proc}(x, size, ierr)"
echo " implicit none" echo " implicit none"
echo " include 'fortran_sizes.h'" echo " include 'fortran_sizes.h'"
echo " logical*${kind}, dimension(${dim}), intent(in) :: x" echo " character, dimension(${dim}), intent(in) :: x"
echo " integer, intent(out) :: size" echo " integer, intent(out) :: size"
echo " integer, intent(out) :: ierr" echo " integer, intent(out) :: ierr"
echo " size = OMPI_SIZEOF_F90_LOGICAL${kind}" echo " size = OMPI_SIZEOF_F90_CHARACTER"
echo " ierr = 0"
echo "end subroutine ${proc}"
echo
proc="${procedure}${rank}DL"
echo "subroutine ${proc}(x, size, ierr)"
echo " implicit none"
echo " include 'fortran_sizes.h'"
echo " logical, dimension(${dim}), intent(in) :: x"
echo " integer, intent(out) :: size"
echo " integer, intent(out) :: ierr"
echo " size = OMPI_SIZEOF_F90_LOGICAL"
echo " ierr = 0" echo " ierr = 0"
echo "end subroutine ${proc}" echo "end subroutine ${proc}"
echo echo
done
for kind in $ikinds for kind in $ikinds
do do