[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.1.3-56-gb3d837d

Service Account noreply at mpich.org
Wed Oct 29 19:19:12 CDT 2014


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  b3d837d5ef71b483e135d7903f9c2f51bc81fafa (commit)
       via  63a6a286c007d5487b625a9b65049c2776db5ccc (commit)
       via  9ade37d6fc31c07f5003605567a663e042c7ce5c (commit)
      from  36d11a1383cfecd65bfbf429692aa1afd5395a12 (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/b3d837d5ef71b483e135d7903f9c2f51bc81fafa

commit b3d837d5ef71b483e135d7903f9c2f51bc81fafa
Author: Junchao Zhang <jczhang at mcs.anl.gov>
Date:   Mon Oct 27 15:39:27 2014 -0500

    Make F08 buildiface also support MPIX_ subroutines
    
    No review since F08 binding is experimental now.

diff --git a/src/binding/fortran/use_mpi_f08/buildiface b/src/binding/fortran/use_mpi_f08/buildiface
index a4bfd93..0431474 100755
--- a/src/binding/fortran/use_mpi_f08/buildiface
+++ b/src/binding/fortran/use_mpi_f08/buildiface
@@ -25,7 +25,9 @@ open($pmpi_f08_fh, ">", $pmpi_f08_file) || die "Error: Could not open $pmpi_f08_
 while (<$mpi_f08_fh>) {
     if (/pmpi_f08/) {
         next; # Skip the "use :: pmpi_f08" line
-    } elsif (/module\s+mpi_f08/) {
+    }
+    # MPI_ part
+    elsif (/module\s+mpi_f08/) {
         $_ =~ s/module\s+mpi_f08/module pmpi_f08/;
     } elsif (/interface\s+MPI_/) {
         $_ =~ s/interface\s+MPI_/interface PMPI_/;
@@ -34,6 +36,14 @@ while (<$mpi_f08_fh>) {
     } elsif (/function\s+MPI_/) {
         $_ =~ s/function\s+MPI_/function PMPIR_/;
     }
+    # MPIX_ part
+    elsif (/interface\s+MPIX_/) {
+        $_ =~ s/interface\s+MPIX_/interface PMPIX_/;
+    } elsif (/subroutine\s+MPIX_/) {
+        $_ =~ s/subroutine\s+MPIX_/subroutine PMPIXR_/;
+    } elsif (/function\s+MPIX_/) {
+        $_ =~ s/function\s+MPIX_/function PMPIXR_/;
+    }
     print $pmpi_f08_fh $_;
 }
 
@@ -59,6 +69,12 @@ foreach my $mpi_file (glob("$wrappers_f_dir/*.F90")) {
         } elsif (/function\s+MPI_/) {
             $_ =~ s/function\s+MPI_/function PMPIR_/
         }
+        elsif (/subroutine\s+MPIX_/) {
+            $_ =~ s/subroutine\s+MPIX_/subroutine PMPIXR_/
+        } elsif (/function\s+MPIX_/) {
+            $_ =~ s/function\s+MPIX_/function PMPIXR_/
+        }
+
         print $pmpi_fh $_;
     }
 

http://git.mpich.org/mpich.git/commitdiff/63a6a286c007d5487b625a9b65049c2776db5ccc

commit 63a6a286c007d5487b625a9b65049c2776db5ccc
Author: Junchao Zhang <jczhang at mcs.anl.gov>
Date:   Mon Oct 27 15:45:13 2014 -0500

    Revise F08 MPI_Wtime/Wtick to make buildiface simpler
    
    No review since F08 binding is experimental now.

diff --git a/src/binding/fortran/use_mpi_f08/buildiface b/src/binding/fortran/use_mpi_f08/buildiface
index 7f61bae..a4bfd93 100755
--- a/src/binding/fortran/use_mpi_f08/buildiface
+++ b/src/binding/fortran/use_mpi_f08/buildiface
@@ -33,10 +33,6 @@ while (<$mpi_f08_fh>) {
         $_ =~ s/subroutine\s+MPI_/subroutine PMPIR_/;
     } elsif (/function\s+MPI_/) {
         $_ =~ s/function\s+MPI_/function PMPIR_/;
-    } elsif (/MPI_Wtick_f08/) { # Replace return value
-        $_ =~ s/MPI_Wtick_f08/PMPIR_Wtick_f08/;
-    } elsif (/MPI_Wtime_f08/) { # Replace return value
-        $_ =~ s/MPI_Wtime_f08/PMPIR_Wtime_f08/;
     }
     print $pmpi_f08_fh $_;
 }
diff --git a/src/binding/fortran/use_mpi_f08/mpi_f08.F90 b/src/binding/fortran/use_mpi_f08/mpi_f08.F90
index 4b3cb9e..bd4c52d 100644
--- a/src/binding/fortran/use_mpi_f08/mpi_f08.F90
+++ b/src/binding/fortran/use_mpi_f08/mpi_f08.F90
@@ -4090,16 +4090,16 @@ interface MPI_Ineighbor_alltoallw
 end interface MPI_Ineighbor_alltoallw
 
 interface MPI_Wtick
-    function  MPI_Wtick_f08()
+    function  MPI_Wtick_f08() result(res)
         implicit none
-        double precision :: MPI_Wtick_f08
+        double precision :: res
     end function MPI_Wtick_f08
 end interface MPI_Wtick
 
 interface MPI_Wtime
-    function MPI_Wtime_f08()
+    function MPI_Wtime_f08() result(res)
         implicit none
-        double precision :: MPI_Wtime_f08
+        double precision :: res
     end function MPI_Wtime_f08
 end interface MPI_Wtime
 

http://git.mpich.org/mpich.git/commitdiff/9ade37d6fc31c07f5003605567a663e042c7ce5c

commit 9ade37d6fc31c07f5003605567a663e042c7ce5c
Author: Junchao Zhang <jczhang at mcs.anl.gov>
Date:   Wed Oct 29 16:36:20 2014 -0500

    Add the missing value attribute to intent(in) arguments
    
    This is needed since we pass these arguments by value
    
    No review since F08 binding is experimental now.

diff --git a/src/binding/fortran/use_mpi_f08/mpi_c_interface_cdesc.F90 b/src/binding/fortran/use_mpi_f08/mpi_c_interface_cdesc.F90
index 9c4738a..af7b15d 100644
--- a/src/binding/fortran/use_mpi_f08/mpi_c_interface_cdesc.F90
+++ b/src/binding/fortran/use_mpi_f08/mpi_c_interface_cdesc.F90
@@ -805,10 +805,10 @@ function MPIR_Compare_and_swap_cdesc(origin_addr, compare_addr, result_addr, dat
     type(*), dimension(..), intent(in), asynchronous :: origin_addr
     type(*), dimension(..), intent(in), asynchronous :: compare_addr
     type(*), dimension(..), asynchronous :: result_addr
-    integer(c_Datatype), intent(in) :: datatype
-    integer(c_int), intent(in) :: target_rank
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
-    integer(c_Win), intent(in) :: win
+    integer(c_Datatype), value, intent(in) :: datatype
+    integer(c_int), value, intent(in) :: target_rank
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: target_disp
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Compare_and_swap_cdesc
 
@@ -821,11 +821,11 @@ function MPIR_Fetch_and_op_cdesc(origin_addr, result_addr, datatype, target_rank
     implicit none
     type(*), dimension(..), intent(in), asynchronous :: origin_addr
     type(*), dimension(..), asynchronous :: result_addr
-    integer(c_Datatype), intent(in) :: datatype
-    integer(c_int), intent(in) :: target_rank
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
-    integer(c_Op), intent(in) :: op
-    integer(c_Win), intent(in) :: win
+    integer(c_Datatype), value, intent(in) :: datatype
+    integer(c_int), value, intent(in) :: target_rank
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: target_disp
+    integer(c_Op), value, intent(in) :: op
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Fetch_and_op_cdesc
 
@@ -855,11 +855,11 @@ function MPIR_Get_accumulate_cdesc(origin_addr, origin_count, origin_datatype, r
     implicit none
     type(*), dimension(..), intent(in), asynchronous :: origin_addr
     type(*), dimension(..), asynchronous :: result_addr
-    integer(c_int), intent(in) :: origin_count, result_count, target_rank, target_count
-    integer(c_Datatype), intent(in) :: origin_datatype, target_datatype, result_datatype
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
-    integer(c_Op), intent(in) :: op
-    integer(c_Win), intent(in) :: win
+    integer(c_int), value, intent(in) :: origin_count, result_count, target_rank, target_count
+    integer(c_Datatype), value, intent(in) :: origin_datatype, target_datatype, result_datatype
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: target_disp
+    integer(c_Op), value, intent(in) :: op
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Get_accumulate_cdesc
 
@@ -887,11 +887,11 @@ function MPIR_Raccumulate_cdesc(origin_addr, origin_count, origin_datatype, targ
     use :: mpi_f08_compile_constants, only : MPI_ADDRESS_KIND
     implicit none
     type(*), dimension(..), intent(in), asynchronous :: origin_addr
-    integer, intent(in) :: origin_count, target_rank, target_count
-    integer(c_Datatype), intent(in) :: origin_datatype, target_datatype
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
-    integer(c_Op), intent(in) :: op
-    integer(c_Win), intent(in) :: win
+    integer, value, intent(in) :: origin_count, target_rank, target_count
+    integer(c_Datatype), value, intent(in) :: origin_datatype, target_datatype
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: target_disp
+    integer(c_Op), value, intent(in) :: op
+    integer(c_Win), value, intent(in) :: win
     integer(c_Request), intent(out) :: request
     integer(c_int) :: ierror
 end function MPIR_Raccumulate_cdesc
@@ -904,10 +904,10 @@ function MPIR_Rget_cdesc(origin_addr, origin_count, origin_datatype, target_rank
     use :: mpi_f08_compile_constants, only : MPI_ADDRESS_KIND
     implicit none
     type(*), dimension(..), asynchronous :: origin_addr
-    integer, intent(in) :: origin_count, target_rank, target_count
-    integer(c_Datatype), intent(in) :: origin_datatype, target_datatype
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
-    integer(c_Win), intent(in) :: win
+    integer, value, intent(in) :: origin_count, target_rank, target_count
+    integer(c_Datatype), value, intent(in) :: origin_datatype, target_datatype
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: target_disp
+    integer(c_Win), value, intent(in) :: win
     integer(c_Request), intent(out) :: request
     integer(c_int) :: ierror
 end function MPIR_Rget_cdesc
@@ -922,11 +922,11 @@ function MPIR_Rget_accumulate_cdesc(origin_addr, origin_count, origin_datatype,
     implicit none
     type(*), dimension(..), intent(in), asynchronous :: origin_addr
     type(*), dimension(..), asynchronous :: result_addr
-    integer, intent(in) :: origin_count, result_count, target_rank, target_count
-    integer(c_Datatype), intent(in) :: origin_datatype, target_datatype, result_datatype
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
-    integer(c_Op), intent(in) :: op
-    integer(c_Win), intent(in) :: win
+    integer, value, intent(in) :: origin_count, result_count, target_rank, target_count
+    integer(c_Datatype), value, intent(in) :: origin_datatype, target_datatype, result_datatype
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: target_disp
+    integer(c_Op), value, intent(in) :: op
+    integer(c_Win), value, intent(in) :: win
     integer(c_Request), intent(out) :: request
     integer(c_int) :: ierror
 end function MPIR_Rget_accumulate_cdesc
@@ -939,10 +939,10 @@ function MPIR_Rput_cdesc(origin_addr, origin_count, origin_datatype, target_rank
     use :: mpi_f08_compile_constants, only : MPI_ADDRESS_KIND
     implicit none
     type(*), dimension(..), intent(in), asynchronous :: origin_addr
-    integer, intent(in) :: origin_count, target_rank, target_count
-    integer(c_Datatype), intent(in) :: origin_datatype, target_datatype
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: target_disp
-    integer(c_Win), intent(in) :: win
+    integer, value, intent(in) :: origin_count, target_rank, target_count
+    integer(c_Datatype), value, intent(in) :: origin_datatype, target_datatype
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: target_disp
+    integer(c_Win), value, intent(in) :: win
     integer(c_Request), intent(out) :: request
     integer(c_int) :: ierror
 end function MPIR_Rput_cdesc
@@ -953,9 +953,9 @@ function MPIR_Win_attach_cdesc(win, base, size) &
     use :: mpi_c_interface_types, only : c_Win
     use :: mpi_f08_compile_constants, only : MPI_ADDRESS_KIND
     implicit none
-    integer(c_Win), intent(in) :: win
+    integer(c_Win), value, intent(in) :: win
     type(*), dimension(..), asynchronous :: base
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: size
     integer(c_int) :: ierror
 end function MPIR_Win_attach_cdesc
 
@@ -979,7 +979,7 @@ function MPIR_Win_detach_cdesc(win, base) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win
     implicit none
-    integer(c_Win), intent(in) :: win
+    integer(c_Win), value, intent(in) :: win
     type(*), dimension(..), asynchronous :: base
     integer(c_int) :: ierror
 end function MPIR_Win_detach_cdesc
diff --git a/src/binding/fortran/use_mpi_f08/mpi_c_interface_nobuf.F90 b/src/binding/fortran/use_mpi_f08/mpi_c_interface_nobuf.F90
index 306db6f..d1676b8 100644
--- a/src/binding/fortran/use_mpi_f08/mpi_c_interface_nobuf.F90
+++ b/src/binding/fortran/use_mpi_f08/mpi_c_interface_nobuf.F90
@@ -755,7 +755,7 @@ function MPIR_Comm_get_info_c(comm, info_used) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Comm, c_Info
     implicit none
-    integer(c_Comm), intent(in) :: comm
+    integer(c_Comm), value, intent(in) :: comm
     integer(c_Info), intent(out) :: info_used
     integer(c_int) :: ierror
 end function MPIR_Comm_get_info_c
@@ -765,8 +765,8 @@ function MPIR_Comm_set_info_c(comm, info) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Comm, c_Info
     implicit none
-    integer(c_Comm), intent(in) :: comm
-    integer(c_Info), intent(in) :: info
+    integer(c_Comm), value, intent(in) :: comm
+    integer(c_Info), value, intent(in) :: info
     integer(c_int) :: ierror
 end function MPIR_Comm_set_info_c
 
@@ -1787,10 +1787,10 @@ function MPIR_Win_allocate_c(size, disp_unit, info, comm, baseptr, win) &
     use :: mpi_c_interface_types, only : c_Info, c_Comm, c_Win
     use :: mpi_f08_compile_constants, only : MPI_ADDRESS_KIND
     implicit none
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
-    integer(c_int), intent(in) :: disp_unit
-    integer(c_Info), intent(in) :: info
-    integer(c_Comm), intent(in) :: comm
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: size
+    integer(c_int), value, intent(in) :: disp_unit
+    integer(c_Info), value, intent(in) :: info
+    integer(c_Comm), value, intent(in) :: comm
     type(c_ptr), intent(out) :: baseptr
     integer(c_Win), intent(out) :: win
     integer(c_int) :: ierror
@@ -1802,10 +1802,10 @@ function MPIR_Win_allocate_shared_c(size, disp_unit, info, comm, baseptr, win) &
     use :: mpi_c_interface_types, only : c_Info, c_Comm, c_Win
     use :: mpi_f08_compile_constants, only : MPI_ADDRESS_KIND
     implicit none
-    integer(kind=MPI_ADDRESS_KIND), intent(in) :: size
-    integer(c_int), intent(in) :: disp_unit
-    integer(c_Info), intent(in) :: info
-    integer(c_Comm), intent(in) :: comm
+    integer(kind=MPI_ADDRESS_KIND), value, intent(in) :: size
+    integer(c_int), value, intent(in) :: disp_unit
+    integer(c_Info), value, intent(in) :: info
+    integer(c_Comm), value, intent(in) :: comm
     type(c_ptr), intent(out) :: baseptr
     integer(c_Win), intent(out) :: win
     integer(c_int) :: ierror
@@ -1825,8 +1825,8 @@ function MPIR_Win_create_dynamic_c(info, comm, win) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Info, c_Comm, c_Win
     implicit none
-    integer(c_Info), intent(in) :: info
-    integer(c_Comm), intent(in) :: comm
+    integer(c_Info), value, intent(in) :: info
+    integer(c_Comm), value, intent(in) :: comm
     integer(c_Win), intent(out) :: win
     integer(c_int) :: ierror
 end function MPIR_Win_create_dynamic_c
@@ -1846,8 +1846,8 @@ function MPIR_Win_flush_c(rank, win) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win
     implicit none
-    integer(c_int), intent(in) :: rank
-    integer(c_Win), intent(in) :: win
+    integer(c_int), value, intent(in) :: rank
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Win_flush_c
 
@@ -1856,7 +1856,7 @@ function MPIR_Win_flush_all_c(win) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win
     implicit none
-    integer(c_Win), intent(in) :: win
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Win_flush_all_c
 
@@ -1865,8 +1865,8 @@ function MPIR_Win_flush_local_c(rank, win) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win
     implicit none
-    integer(c_int), intent(in) :: rank
-    integer(c_Win), intent(in) :: win
+    integer(c_int), value, intent(in) :: rank
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Win_flush_local_c
 
@@ -1875,7 +1875,7 @@ function MPIR_Win_flush_local_all_c(win) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win
     implicit none
-    integer(c_Win), intent(in) :: win
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Win_flush_local_all_c
 
@@ -1903,7 +1903,7 @@ function MPIR_Win_get_info_c(win, info_used) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win, c_Info
     implicit none
-    integer(c_Win), intent(in) :: win
+    integer(c_Win), value, intent(in) :: win
     integer(c_Info), intent(out) :: info_used
     integer(c_int) :: ierror
 end function MPIR_Win_get_info_c
@@ -1923,8 +1923,8 @@ function MPIR_Win_lock_all_c(assert, win) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win
     implicit none
-    integer(c_int), intent(in) :: assert
-    integer(c_Win), intent(in) :: win
+    integer(c_int), value, intent(in) :: assert
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Win_lock_all_c
 
@@ -1944,8 +1944,8 @@ function MPIR_Win_set_info_c(win, info) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win, c_Info
     implicit none
-    integer(c_Win), intent(in) :: win
-    integer(c_Info), intent(in) :: info
+    integer(c_Win), value, intent(in) :: win
+    integer(c_Info), value, intent(in) :: info
     integer(c_int) :: ierror
 end function MPIR_Win_set_info_c
 
@@ -1955,8 +1955,8 @@ function MPIR_Win_shared_query_c(win, rank, size, disp_unit, baseptr) &
     use :: mpi_c_interface_types, only : c_Win
     use :: mpi_f08_compile_constants, only : MPI_ADDRESS_KIND
     implicit none
-    integer(c_Win), intent(in) :: win
-    integer(c_int), intent(in) :: rank
+    integer(c_Win), value, intent(in) :: win
+    integer(c_int), value, intent(in) :: rank
     integer(kind=MPI_ADDRESS_KIND), intent(out) :: size
     integer(c_int), intent(out) :: disp_unit
     type(c_ptr), intent(out) :: baseptr
@@ -1979,7 +1979,7 @@ function MPIR_Win_sync_c(win) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win
     implicit none
-    integer(c_Win), intent(in) :: win
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Win_sync_c
 
@@ -2008,7 +2008,7 @@ function MPIR_Win_unlock_all_c(win) &
     use, intrinsic :: iso_c_binding, only : c_int
     use :: mpi_c_interface_types, only : c_Win
     implicit none
-    integer(c_Win), intent(in) :: win
+    integer(c_Win), value, intent(in) :: win
     integer(c_int) :: ierror
 end function MPIR_Win_unlock_all_c
 

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

Summary of changes:
 src/binding/fortran/use_mpi_f08/buildiface         |   22 +++++--
 .../fortran/use_mpi_f08/mpi_c_interface_cdesc.F90  |   70 ++++++++++----------
 .../fortran/use_mpi_f08/mpi_c_interface_nobuf.F90  |   56 ++++++++--------
 src/binding/fortran/use_mpi_f08/mpi_f08.F90        |    8 +-
 4 files changed, 84 insertions(+), 72 deletions(-)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list