From ae52f7ae9bf667c7c5e17f1c8b128a2140e0e50f Mon Sep 17 00:00:00 2001 From: Augustin Degomme Date: Fri, 15 Feb 2013 10:31:14 +0100 Subject: [PATCH] add mpi_testall binding for fortran --- src/smpi/private.h | 1 + src/smpi/smpi_f77.c | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/src/smpi/private.h b/src/smpi/private.h index 541d6dcdc9..34da3d7918 100644 --- a/src/smpi/private.h +++ b/src/smpi/private.h @@ -337,6 +337,7 @@ void mpi_alltoallv__(void* sendbuf, int* sendcounts, int* senddisps, int* sendty void* recvbuf, int* recvcounts, int* recvdisps, int* recvtype, int* comm, int* ierr); void mpi_get_processor_name__(char *name, int *resultlen, int* ierr); void mpi_test__ (int * request, int *flag, MPI_Status * status, int* ierr); +void mpi_testall__ (int* count, int * requests, int *flag, MPI_Status * statuses, int* ierr); void mpi_get_count__(MPI_Status * status, int* datatype, int *count, int* ierr); void mpi_type_extent__(int* datatype, MPI_Aint * extent, int* ierr); void mpi_attr_get__(int* comm, int* keyval, void* attr_value, int* flag, int* ierr ); diff --git a/src/smpi/smpi_f77.c b/src/smpi/smpi_f77.c index 41e837d674..e9336754ad 100644 --- a/src/smpi/smpi_f77.c +++ b/src/smpi/smpi_f77.c @@ -457,6 +457,19 @@ void mpi_test__ (int * request, int *flag, MPI_Status * status, int* ierr){ MPI_Request req = find_request(*request); *ierr= MPI_Test(&req, flag, status); } + + +void mpi_testall__ (int* count, int * requests, int *flag, MPI_Status * statuses, int* ierr){ + MPI_Request* reqs; + int i; + reqs = xbt_new(MPI_Request, *count); + for(i = 0; i < *count; i++) { + reqs[i] = find_request(requests[i]); + } + *ierr= MPI_Testall(*count, reqs, flag, statuses); +} + + void mpi_get_processor_name__(char *name, int *resultlen, int* ierr){ *ierr = MPI_Get_processor_name(name, resultlen); } -- 2.20.1