Skip to content

Commit cc8b5ac

Browse files
authored
Merge pull request open-mpi#4692 from kawashima-fj/pr/v2.x/f08-pmpi
v2.1.x: fortran: Fix PMPI bugs in mpi_f08 module
2 parents 5327dd6 + 1d3f78c commit cc8b5ac

File tree

8 files changed

+283
-64
lines changed

8 files changed

+283
-64
lines changed

ompi/mpi/fortran/use-mpi-f08/Makefile.am

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
# Copyright (c) 2015-2016 Research Organization for Information Science
1111
# and Technology (RIST). All rights reserved.
1212
# Copyright (c) 2016 IBM Corporation. All rights reserved.
13+
# Copyright (c) 2017 FUJITSU LIMITED. All rights reserved.
1314
#
1415
# $COPYRIGHT$
1516
#
@@ -753,9 +754,13 @@ pmpi_api_files += \
753754
profile/pfile_get_view_f08.F90 \
754755
profile/pfile_iread_at_f08.F90 \
755756
profile/pfile_iread_f08.F90 \
757+
profile/pfile_iread_at_all_f08.F90 \
758+
profile/pfile_iread_all_f08.F90 \
756759
profile/pfile_iread_shared_f08.F90 \
757760
profile/pfile_iwrite_at_f08.F90 \
758761
profile/pfile_iwrite_f08.F90 \
762+
profile/pfile_iwrite_at_all_f08.F90 \
763+
profile/pfile_iwrite_all_f08.F90 \
759764
profile/pfile_iwrite_shared_f08.F90 \
760765
profile/pfile_open_f08.F90 \
761766
profile/pfile_preallocate_f08.F90 \

ompi/mpi/fortran/use-mpi-f08/mpi-f08-interfaces.F90

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
! Copyright (c) 2012 Inria. All rights reserved.
1010
! Copyright (c) 2015 Research Organization for Information Science
1111
! and Technology (RIST). All rights reserved.
12+
! Copyright (c) 2017 FUJITSU LIMITED. All rights reserved.
1213
! $COPYRIGHT$
1314
!
1415
! This file provides the interface specifications for the MPI Fortran
@@ -2101,7 +2102,7 @@ subroutine MPI_Type_set_name_f08(datatype,type_name,ierror)
21012102
end subroutine MPI_Type_set_name_f08
21022103
end interface MPI_Type_set_name
21032104

2104-
interface MPI_Win_allocate
2105+
interface MPI_Win_allocate
21052106
subroutine MPI_Win_allocate_f08(size, disp_unit, info, comm, &
21062107
baseptr, win, ierror)
21072108
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
@@ -2114,9 +2115,9 @@ subroutine MPI_Win_allocate_f08(size, disp_unit, info, comm, &
21142115
TYPE(MPI_Win), INTENT(OUT) :: win
21152116
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
21162117
end subroutine MPI_Win_allocate_f08
2117-
end interface MPI_Win_allocate
2118+
end interface MPI_Win_allocate
21182119

2119-
interface MPI_Win_allocate_shared
2120+
interface MPI_Win_allocate_shared
21202121
subroutine MPI_Win_allocate_shared_f08(size, disp_unit, info, comm, &
21212122
baseptr, win, ierror)
21222123
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
@@ -2129,7 +2130,7 @@ subroutine MPI_Win_allocate_shared_f08(size, disp_unit, info, comm, &
21292130
TYPE(MPI_Win), INTENT(OUT) :: win
21302131
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
21312132
end subroutine MPI_Win_allocate_shared_f08
2132-
end interface MPI_Win_allocate_shared
2133+
end interface MPI_Win_allocate_shared
21332134

21342135
interface MPI_Win_create_keyval
21352136
subroutine MPI_Win_create_keyval_f08(win_copy_attr_fn,win_delete_attr_fn,win_keyval, &
@@ -2465,7 +2466,7 @@ function MPI_Wtick_f08( ) BIND(C,name="MPI_Wtick")
24652466
use, intrinsic :: ISO_C_BINDING
24662467
implicit none
24672468
DOUBLE PRECISION :: MPI_Wtick_f08
2468-
end function MPI_Wtick_f08
2469+
end function MPI_Wtick_f08
24692470
end interface MPI_Wtick
24702471

24712472
! MPI_Wtime is not a wrapper function
@@ -2475,7 +2476,7 @@ function MPI_Wtime_f08( ) BIND(C,name="MPI_Wtime")
24752476
use, intrinsic :: ISO_C_BINDING
24762477
implicit none
24772478
DOUBLE PRECISION :: MPI_Wtime_f08
2478-
end function MPI_Wtime_f08
2479+
end function MPI_Wtime_f08
24792480
end interface MPI_Wtime
24802481

24812482
interface MPI_Aint_add
@@ -2485,7 +2486,7 @@ function MPI_Aint_add_f08(base,diff)
24852486
INTEGER(MPI_ADDRESS_KIND) :: base
24862487
INTEGER(MPI_ADDRESS_KIND) :: diff
24872488
INTEGER(MPI_ADDRESS_KIND) :: MPI_Aint_add_f08
2488-
end function MPI_Aint_add_f08
2489+
end function MPI_Aint_add_f08
24892490
end interface MPI_Aint_add
24902491

24912492
interface MPI_Aint_diff
@@ -2495,7 +2496,7 @@ function MPI_Aint_diff_f08(addr1,addr2)
24952496
INTEGER(MPI_ADDRESS_KIND) :: addr1
24962497
INTEGER(MPI_ADDRESS_KIND) :: addr2
24972498
INTEGER(MPI_ADDRESS_KIND) :: MPI_Aint_diff_f08
2498-
end function MPI_Aint_diff_f08
2499+
end function MPI_Aint_diff_f08
24992500
end interface MPI_Aint_diff
25002501

25012502
interface MPI_Abort
@@ -3341,7 +3342,7 @@ subroutine MPI_Win_post_f08(group,assert,win,ierror)
33413342
end subroutine MPI_Win_post_f08
33423343
end interface MPI_Win_post
33433344

3344-
interface MPI_Win_shared_query
3345+
interface MPI_Win_shared_query
33453346
subroutine MPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr,&
33463347
ierror)
33473348
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
@@ -3353,7 +3354,7 @@ subroutine MPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr,&
33533354
TYPE(C_PTR), INTENT(OUT) :: baseptr
33543355
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
33553356
end subroutine MPI_Win_shared_query_f08
3356-
end interface
3357+
end interface MPI_Win_shared_query
33573358

33583359
interface MPI_Win_start
33593360
subroutine MPI_Win_start_f08(group,assert,win,ierror)

0 commit comments

Comments
 (0)