[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.2b3-165-g931b5db

Service Account noreply at mpich.org
Fri Jun 26 20:06:36 CDT 2015


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "MPICH primary repository".

The branch, master has been updated
       via  931b5dbcb34c2e3d2c4bedc1dd5e08908a18520e (commit)
       via  a9631042bb787caf3dad252568a34059635ac5c0 (commit)
       via  1faf56639e809a85fcf49ddf7e1c09d6d5ec8de7 (commit)
       via  288591be9e4dc82e3e18be8f84de5dcf4552f071 (commit)
      from  fb1985578bdc6858e4b3a15a8775e6b9868dc0f8 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.mpich.org/mpich.git/commitdiff/931b5dbcb34c2e3d2c4bedc1dd5e08908a18520e

commit 931b5dbcb34c2e3d2c4bedc1dd5e08908a18520e
Author: Junchao Zhang <jczhang at mcs.anl.gov>
Date:   Fri Jun 26 15:14:16 2015 -0500

    Move MPI dataypes out of array initialization
    
    So that the tests are also compilable with other MPI implementations such as OpenMPI,
    where predefined MPI dataypes are not compile-time constants.
    
    No reviewer

diff --git a/test/mpi/f08/datatype/get_elem_d.f90 b/test/mpi/f08/datatype/get_elem_d.f90
index 500ffb5..cef411c 100644
--- a/test/mpi/f08/datatype/get_elem_d.f90
+++ b/test/mpi/f08/datatype/get_elem_d.f90
@@ -20,7 +20,7 @@ program get_elem_d
   TYPE(MPI_Status) :: status
   integer :: i,ii,count,ka,j,jj,k,kj
   integer :: blklen(nb)=(/2,2/)
-  TYPE(MPI_Datatype) :: types(nb)=(/MPI_DOUBLE_PRECISION,MPI_INTEGER/)
+  TYPE(MPI_Datatype) :: types(nb)
   integer(kind=MPI_ADDRESS_KIND) :: disp(nb)
   integer :: ntlen,ians(20),ians0(0:3),ians1(24),ians2(20)
   TYPE(MPI_Datatype) :: newtype
@@ -30,6 +30,8 @@ program get_elem_d
 
   call MPI_Init(ierror)
   comm=MPI_COMM_WORLD
+  types(1) = MPI_DOUBLE_PRECISION
+  types(2) = MPI_INTEGER
   call MPI_Comm_size(comm, size, ierror)
   dest=size-1
   call MPI_Comm_rank(comm, rank, ierror)
diff --git a/test/mpi/f08/datatype/get_elem_u.f90 b/test/mpi/f08/datatype/get_elem_u.f90
index e972a69..1b4f113 100644
--- a/test/mpi/f08/datatype/get_elem_u.f90
+++ b/test/mpi/f08/datatype/get_elem_u.f90
@@ -18,7 +18,7 @@ PROGRAM get_elem_u
 
   INTEGER, PARAMETER :: nb=2
   INTEGER :: blklen(nb)=(/1,1/)
-  TYPE(MPI_DATATYPE) :: types(nb)=(/MPI_DOUBLE_PRECISION,MPI_CHAR/)
+  TYPE(MPI_DATATYPE) :: types(nb)
   INTEGER(kind=MPI_ADDRESS_KIND) :: disp(nb)=(/0,8/)
 
   INTEGER, PARAMETER :: amax=200
@@ -29,6 +29,8 @@ PROGRAM get_elem_u
   errs = 0
   CALL MPI_Init( ierr )
   COMM = MPI_COMM_WORLD
+  types(1) = MPI_DOUBLE_PRECISION
+  types(2) = MPI_CHAR
   CALL MPI_Comm_rank(COMM,RANK,IERR)
   CALL MPI_Comm_size(COMM,SIZE,IERR)
   dest=size-1
diff --git a/test/mpi/f90/datatype/get_elem_d.f90 b/test/mpi/f90/datatype/get_elem_d.f90
index 45130ce..a0ac661 100644
--- a/test/mpi/f90/datatype/get_elem_d.f90
+++ b/test/mpi/f90/datatype/get_elem_d.f90
@@ -19,7 +19,7 @@ program get_elem_d
   integer :: status(MPI_STATUS_SIZE)
   integer :: i,ii,count,ka,j,jj,k,kj
   integer :: blklen(nb)=(/2,2/)
-  integer :: types(nb)=(/MPI_DOUBLE_PRECISION,MPI_INTEGER/)
+  integer :: types(nb)
   integer(kind=MPI_ADDRESS_KIND) :: disp(nb)
   integer :: newtype,ntlen,ians(20),ians0(0:3),ians1(24),ians2(20)
   double precision :: dbuff(dmax), a
@@ -28,6 +28,8 @@ program get_elem_d
 
   call MPI_Init(ierror)
   comm=MPI_COMM_WORLD
+  types(1) = MPI_DOUBLE_PRECISION
+  types(2) = MPI_INTEGER
   call MPI_Comm_size(comm, size, ierror)
   dest=size-1
   call MPI_Comm_rank(comm, rank, ierror)
diff --git a/test/mpi/f90/datatype/get_elem_u.f90 b/test/mpi/f90/datatype/get_elem_u.f90
index aa9f8fe..0772146 100644
--- a/test/mpi/f90/datatype/get_elem_u.f90
+++ b/test/mpi/f90/datatype/get_elem_u.f90
@@ -17,7 +17,7 @@ PROGRAM get_elem_u
 
   INTEGER, PARAMETER :: nb=2
   INTEGER :: blklen(nb)=(/1,1/)
-  INTEGER :: types(nb)=(/MPI_DOUBLE_PRECISION,MPI_CHAR/)
+  INTEGER :: types(nb)
   INTEGER(kind=MPI_ADDRESS_KIND) :: disp(nb)=(/0,8/)
 
   INTEGER, PARAMETER :: amax=200
@@ -27,6 +27,8 @@ PROGRAM get_elem_u
   errs = 0 
   CALL MPI_Init( ierr ) 
   COMM = MPI_COMM_WORLD 
+  types(1) = MPI_DOUBLE_PRECISION
+  types(2) = MPI_CHAR
   CALL MPI_Comm_rank(COMM,RANK,IERR) 
   CALL MPI_Comm_size(COMM,SIZE,IERR) 
   dest=size-1

http://git.mpich.org/mpich.git/commitdiff/a9631042bb787caf3dad252568a34059635ac5c0

commit a9631042bb787caf3dad252568a34059635ac5c0
Author: Junchao Zhang <jczhang at mcs.anl.gov>
Date:   Fri Jun 26 16:59:26 2015 -0500

    Add a mechanism to remove F77 only lines in f77to90 translation
    
    No reviewer

diff --git a/maint/f77tof90.in b/maint/f77tof90.in
index 340b047..7f3d732 100644
--- a/maint/f77tof90.in
+++ b/maint/f77tof90.in
@@ -144,6 +144,10 @@ sub ConvertToF90 {
         if (/^CF90/) {
 	    s/^CF90/    /;
 	}
+    # Remove lines used only for F77, such as external MPI function declarations
+    if (/!\s*F77ONLY\s*$/i) {
+        $_ = "";
+    }
 	# Since we use interface statements for the error handlers,
 	# remove their external declaration
 	if (/^\s+external myerrhanfunc/) {
diff --git a/test/mpi/f77/rma/aintf.f b/test/mpi/f77/rma/aintf.f
index 88739f6..87464ba 100644
--- a/test/mpi/f77/rma/aintf.f
+++ b/test/mpi/f77/rma/aintf.f
@@ -21,8 +21,8 @@
       integer :: win
       integer :: intsize
 
-      integer(kind=MPI_ADDRESS_KIND), external :: MPI_Aint_add
-      integer(kind=MPI_ADDRESS_KIND), external :: MPI_Aint_diff
+      integer(kind=MPI_ADDRESS_KIND), external :: MPI_Aint_add !F77ONLY
+      integer(kind=MPI_ADDRESS_KIND), external :: MPI_Aint_diff !F77ONLY
 
       errs = 0
       call mtest_init(ierr);

http://git.mpich.org/mpich.git/commitdiff/1faf56639e809a85fcf49ddf7e1c09d6d5ec8de7

commit 1faf56639e809a85fcf49ddf7e1c09d6d5ec8de7
Author: Junchao Zhang <jczhang at mcs.anl.gov>
Date:   Fri Jun 26 15:07:09 2015 -0500

    Add prototypes of MPI_Aint_add/diff to the F90 mpi module
    
    No reviewer

diff --git a/src/binding/fortran/use_mpi/buildiface b/src/binding/fortran/use_mpi/buildiface
index cc6dc72..a2e5939 100755
--- a/src/binding/fortran/use_mpi/buildiface
+++ b/src/binding/fortran/use_mpi/buildiface
@@ -450,6 +450,18 @@ if ($is_MPI) {
             \@WTIME_DOUBLE_TYPE\@ MPI_WTICK
         END FUNCTION MPI_WTICK
 
+        FUNCTION MPI_AINT_ADD(base, disp)
+            USE MPI_CONSTANTS,ONLY: MPI_ADDRESS_KIND
+            INTEGER(KIND=MPI_ADDRESS_KIND) MPI_AINT_ADD
+            INTEGER(KIND=MPI_ADDRESS_KIND), INTENT(IN) :: base, disp
+        END FUNCTION MPI_AINT_ADD
+
+        FUNCTION MPI_AINT_DIFF(addr1, addr2)
+            USE MPI_CONSTANTS,ONLY: MPI_ADDRESS_KIND
+            INTEGER(KIND=MPI_ADDRESS_KIND) MPI_AINT_DIFF
+            INTEGER(KIND=MPI_ADDRESS_KIND), INTENT(IN) :: addr1, addr2
+        END FUNCTION MPI_AINT_DIFF
+
 ! style:PMPIuse:PMPI_WTIME:3 sig:0
         FUNCTION PMPI_WTIME()
             \@WTIME_DOUBLE_TYPE\@ PMPI_WTIME

http://git.mpich.org/mpich.git/commitdiff/288591be9e4dc82e3e18be8f84de5dcf4552f071

commit 288591be9e4dc82e3e18be8f84de5dcf4552f071
Author: Junchao Zhang <jczhang at mcs.anl.gov>
Date:   Fri Jun 26 14:55:59 2015 -0500

    Move (P)MPI_Aint_add/diff up before (P)MPI_T
    
    No reviewer

diff --git a/src/include/mpi.h.in b/src/include/mpi.h.in
index 41387a7..39cdec3 100644
--- a/src/include/mpi.h.in
+++ b/src/include/mpi.h.in
@@ -1494,6 +1494,9 @@ int MPI_Type_size_x(MPI_Datatype datatype, MPI_Count *size);
 /* Noncollective communicator creation */
 int MPI_Comm_create_group(MPI_Comm comm, MPI_Group group, int tag, MPI_Comm *newcomm);
 
+/* MPI_Aint addressing arithmetic */
+MPI_Aint MPI_Aint_add(MPI_Aint base, MPI_Aint disp);
+MPI_Aint MPI_Aint_diff(MPI_Aint addr1, MPI_Aint addr2);
 
 /* MPI_T interface */
 /* The MPI_T routines are available only in C bindings - tell tools that they
@@ -1548,9 +1551,6 @@ int MPIX_Comm_revoke(MPI_Comm comm);
 int MPIX_Comm_shrink(MPI_Comm comm, MPI_Comm *newcomm);
 int MPIX_Comm_agree(MPI_Comm comm, int *flag);
 
-/* MPI_Aint addressing arithmetic */
-MPI_Aint MPI_Aint_add(MPI_Aint base, MPI_Aint disp);
-MPI_Aint MPI_Aint_diff(MPI_Aint addr1, MPI_Aint addr2);
 
 /* End Prototypes */
 #endif /* MPICH_SUPPRESS_PROTOTYPES */
@@ -2140,6 +2140,9 @@ int PMPI_Type_get_extent_x(MPI_Datatype datatype, MPI_Count *lb, MPI_Count *exte
 int PMPI_Type_get_true_extent_x(MPI_Datatype datatype, MPI_Count *lb, MPI_Count *extent);
 int PMPI_Type_size_x(MPI_Datatype datatype, MPI_Count *size);
 
+/* MPI_Aint addressing arithmetic */
+MPI_Aint PMPI_Aint_add(MPI_Aint base, MPI_Aint disp);
+MPI_Aint PMPI_Aint_diff(MPI_Aint addr1, MPI_Aint addr2);
 
 /* MPI_T interface */
 /* The MPI_T routines are available only in C bindings - tell tools that they
@@ -2194,10 +2197,6 @@ int PMPIX_Comm_revoke(MPI_Comm comm);
 int PMPIX_Comm_shrink(MPI_Comm comm, MPI_Comm *newcomm);
 int PMPIX_Comm_agree(MPI_Comm comm, int *flag);
 
-/* MPI_Aint addressing arithmetic */
-MPI_Aint PMPI_Aint_add(MPI_Aint base, MPI_Aint disp);
-MPI_Aint PMPI_Aint_diff(MPI_Aint addr1, MPI_Aint addr2);
-
 #endif  /* MPI_BUILD_PROFILING */
 /* End of MPI bindings */
 

-----------------------------------------------------------------------

Summary of changes:
 maint/f77tof90.in                      |    4 ++++
 src/binding/fortran/use_mpi/buildiface |   12 ++++++++++++
 src/include/mpi.h.in                   |   13 ++++++-------
 test/mpi/f08/datatype/get_elem_d.f90   |    4 +++-
 test/mpi/f08/datatype/get_elem_u.f90   |    4 +++-
 test/mpi/f77/rma/aintf.f               |    4 ++--
 test/mpi/f90/datatype/get_elem_d.f90   |    4 +++-
 test/mpi/f90/datatype/get_elem_u.f90   |    4 +++-
 8 files changed, 36 insertions(+), 13 deletions(-)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list