1
1

MPI_Win_create_dynamic : add Fortran bindings

Этот коммит содержится в:
Gilles Gouaillardet 2015-06-02 17:44:37 +09:00
родитель 16abe2e4f3
Коммит f45244d5a5
8 изменённых файлов: 58 добавлений и 0 удалений

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

@ -395,6 +395,7 @@ libmpi_mpifh_la_SOURCES += \
win_allocate_shared_f.c \
win_call_errhandler_f.c \
win_complete_f.c \
win_create_dynamic_errhandler_f.c \
win_create_errhandler_f.c \
win_create_f.c \
win_create_keyval_f.c \

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

@ -320,6 +320,7 @@ linked_files = \
pwin_allocate_shared_f.c \
pwin_call_errhandler_f.c \
pwin_complete_f.c \
pwin_create_dynamic_f.c \
pwin_create_errhandler_f.c \
pwin_create_f.c \
pwin_create_keyval_f.c \

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

@ -351,6 +351,7 @@
#define ompi_win_call_errhandler_f pompi_win_call_errhandler_f
#define ompi_win_complete_f pompi_win_complete_f
#define ompi_win_create_f pompi_win_create_f
#define ompi_win_create_dynamic_f pompi_win_create_dynamic_f
#define ompi_win_create_errhandler_f pompi_win_create_errhandler_f
#define ompi_win_create_keyval_f pompi_win_create_keyval_f
#define ompi_win_delete_attr_f pompi_win_delete_attr_f

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

@ -408,6 +408,7 @@ PN2(void, MPI_Win_allocate_shared_cptr, mpi_win_allocate_shared_cptr, MPI_WIN_AL
PN2(void, MPI_Win_call_errhandler, mpi_win_call_errhandler, MPI_WIN_CALL_ERRHANDLER, (MPI_Fint *win, MPI_Fint *errorcode, MPI_Fint *ierr));
PN2(void, MPI_Win_complete, mpi_win_complete, MPI_WIN_COMPLETE, (MPI_Fint *win, MPI_Fint *ierr));
PN2(void, MPI_Win_create, mpi_win_create, MPI_WIN_CREATE, (char *base, MPI_Aint *size, MPI_Fint *disp_unit, MPI_Fint *info, MPI_Fint *comm, MPI_Fint *win, MPI_Fint *ierr));
PN2(void, MPI_Win_create_dynamic, mpi_win_create_dynamic, MPI_WIN_CREATE_DYNAMIC, (MPI_Fint *info, MPI_Fint *comm, MPI_Fint *win, MPI_Fint *ierr));
PN2(void, MPI_Win_create_errhandler, mpi_win_create_errhandler, MPI_WIN_CREATE_ERRHANDLER, (ompi_errhandler_fortran_handler_fn_t* function, MPI_Fint *errhandler, MPI_Fint *ierr));
PN2(void, MPI_Win_create_keyval, mpi_win_create_keyval, MPI_WIN_CREATE_KEYVAL, (ompi_mpi2_fortran_copy_attr_function* win_copy_attr_fn, ompi_mpi2_fortran_delete_attr_function* win_delete_attr_fn, MPI_Fint *win_keyval, MPI_Aint *extra_state, MPI_Fint *ierr));
PN2(void, MPI_Win_delete_attr, mpi_win_delete_attr, MPI_WIN_DELETE_ATTR, (MPI_Fint *win, MPI_Fint *win_keyval, MPI_Fint *ierr));

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

@ -339,6 +339,7 @@ mpi_api_files = \
win_allocate_shared_f08.F90 \
win_call_errhandler_f08.F90 \
win_complete_f08.F90 \
win_create_dynamic_f08.F90 \
win_create_errhandler_f08.F90 \
win_create_f08.F90 \
win_create_keyval_f08.F90 \

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

@ -7,6 +7,8 @@
! of Tennessee Research Foundation. All rights
! reserved.
! Copyright (c) 2012 Inria. All rights reserved.
! Copyright (c) 2015 Research Organization for Information Science
! and Technology (RIST). All rights reserved.
! $COPYRIGHT$
!
! This file provides the interface specifications for the MPI Fortran
@ -2369,6 +2371,15 @@ subroutine ompi_win_create_f(base,size,disp_unit,info,comm,win,ierror) &
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_win_create_f
subroutine ompi_win_create_dynamic_f(info,comm,win,ierror) &
BIND(C, name="ompi_win_create_dynamic_f")
implicit none
INTEGER, INTENT(IN) :: info
INTEGER, INTENT(IN) :: comm
INTEGER, INTENT(OUT) :: win
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_win_create_dynamic_f
subroutine ompi_win_flush_f(rank,win,ierror) &
BIND(C, name="ompi_win_flush_f")
implicit none

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

@ -7,6 +7,8 @@
! of Tennessee Research Foundation. All rights
! reserved.
! Copyright (c) 2012 Inria. All rights reserved.
! Copyright (c) 2015 Research Organization for Information Science
! and Technology (RIST). All rights reserved.
! $COPYRIGHT$
!
! This file provides the interface specifications for the MPI Fortran
@ -3203,6 +3205,17 @@ subroutine MPI_Win_create_f08(base,size,disp_unit,info,comm,win,ierror)
end subroutine MPI_Win_create_f08
end interface MPI_Win_create
interface MPI_Win_create_dynamic
subroutine MPI_Win_create_dynamic_f08(info,comm,win,ierror)
use :: mpi_f08_types, only : MPI_Info, MPI_Comm, MPI_Win
implicit none
TYPE(MPI_Info), INTENT(IN) :: info
TYPE(MPI_Comm), INTENT(IN) :: comm
TYPE(MPI_Win), INTENT(OUT) :: win
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
end subroutine MPI_Win_create_dynamic_f08
end interface MPI_Win_create_dynamic
interface MPI_Win_fence
subroutine MPI_Win_fence_f08(assert,win,ierror)
use :: mpi_f08_types, only : MPI_Win

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

@ -9,6 +9,8 @@
! Copyright (c) 2012 Inria. All rights reserved.
! Copyright (c) 2013-2014 Los Alamos National Security, LLC. All rights
! reserved.
! Copyright (c) 2015 Research Organization for Information Science
! and Technology (RIST). All rights reserved.
! $COPYRIGHT$
!
! Additional copyrights may follow
@ -7389,6 +7391,33 @@ end subroutine PMPI_Win_create
end interface
interface MPI_Win_create_dynamic
subroutine MPI_Win_create_dynamic(info, comm, &
win, ierror)
include 'mpif-config.h'
integer, intent(in) :: info
integer, intent(in) :: comm
integer, intent(out) :: win
integer, intent(out) :: ierror
end subroutine MPI_Win_create_dynamic
end interface
interface PMPI_Win_create_dynamic
subroutine PMPI_Win_create_dynamic(info, comm, &
win, ierror)
include 'mpif-config.h'
integer, intent(in) :: info
integer, intent(in) :: comm
integer, intent(out) :: win
integer, intent(out) :: ierror
end subroutine PMPI_Win_create_dynamic
end interface
interface MPI_Win_create_errhandler
subroutine MPI_Win_create_errhandler(function, errhandler, ierror)