From 90e9b6ca14ac745b4a8cea2305417f099e95010a Mon Sep 17 00:00:00 2001 From: Jeff Squyres Date: Sat, 26 Mar 2005 04:03:54 +0000 Subject: [PATCH] - Name all the parameters in the fortran attribute callbacks to be less confusing (when you have 5-6 parameters, it's easy to mis-count and have the wrong type if you don't have the associated names). - Use proper types for the fortran callbacks - Simplify the predefined Fortran attribute callbacks; do the work right there rather than calling the predefined C attribute callbacks (which would simply require further FINT_2_INT / INT_2_FINT translation anyway) This commit was SVN r5038. --- src/attribute/attribute.h | 14 ++- src/mpi/f77/attr_fn_f.c | 185 ++++++++++++++++++----------------- src/mpi/f77/prototypes_mpi.h | 120 +++++++++++------------ 3 files changed, 163 insertions(+), 156 deletions(-) diff --git a/src/attribute/attribute.h b/src/attribute/attribute.h index 70e56cc7b2..1a620b2cb7 100644 --- a/src/attribute/attribute.h +++ b/src/attribute/attribute.h @@ -58,9 +58,14 @@ typedef enum ompi_attribute_type_t ompi_attribute_type_t; /* Fortran function pointer declarations for copy and delete. These will only be used here and not in the front end functions */ -typedef void (MPI_F_copy_function)(int *, int *, int *, int *, int *, - int *, int *); -typedef void (MPI_F_delete_function)(int *, int *, int *, int *, int *); +typedef void (MPI_F_copy_function)(MPI_Fint *oldcomm, MPI_Fint *keyval, + MPI_Fint *extra_state, + MPI_Fint *attr_in, MPI_Fint *attr_out, + ompi_fortran_logical_t *flag, + MPI_Fint *ierr); +typedef void (MPI_F_delete_function)(MPI_Fint *comm, MPI_Fint *keyval, + MPI_Fint *attr_in, + MPI_Fint *extra_state, MPI_Fint *ierr); /* Union to take care of proper casting of the function pointers @@ -125,8 +130,9 @@ int ompi_attr_hash_init(ompi_hash_table_t **keyhash) fprintf(stderr, "Error while creating the local attribute list\n"); return MPI_ERR_SYSRESOURCE; } - if (ompi_hash_table_init(*keyhash, ATTR_HASH_SIZE) != OMPI_SUCCESS) + if (OMPI_SUCCESS != ompi_hash_table_init(*keyhash, ATTR_HASH_SIZE)) { return MPI_ERR_SYSRESOURCE; + } return MPI_SUCCESS; } diff --git a/src/mpi/f77/attr_fn_f.c b/src/mpi/f77/attr_fn_f.c index add5e4890a..22e707729b 100644 --- a/src/mpi/f77/attr_fn_f.c +++ b/src/mpi/f77/attr_fn_f.c @@ -17,6 +17,7 @@ #include "ompi_config.h" #include "mpi/f77/bindings.h" +#include "mpi/f77/fint_2_int.h" #include "datatype/datatype.h" #include "win/win.h" #include "communicator/communicator.h" @@ -79,63 +80,63 @@ OMPI_GENERATE_F77_BINDINGS( MPI_TYPE_NULL_DELETE_FN, mpi_type_null_delete_fn_, mpi_type_null_delete_fn__, mpi_type_null_delete_fn_f, - (MPI_Fint* type, int* type_keyval,void* attribute_val_out, int* flag, int* ierr), - (type, type_keyval, attribute_val_out, flag, ierr) ) + (MPI_Fint* type, MPI_Fnt* type_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr), + (type, type_keyval, attribute_val_out, extra_state, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_TYPE_NULL_COPY_FN, mpi_type_null_copy_fn, mpi_type_null_copy_fn_, mpi_type_null_copy_fn__, mpi_type_null_copy_fn_f, - (MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr), + (MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr), (type, type_keyval, extra_state, attribute_val_in, attribute_val_out, flag, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_TYPE_DUP_FN, mpi_type_dup_fn, mpi_type_dup_fn_, mpi_type_dup_fn__, mpi_type_dup_fn_f, - (MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr), + (MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr), (type, type_keyval, extra_state, attribute_val_in, attribute_val_out, flag, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_COMM_NULL_DELETE_FN, mpi_comm_null_delete_fn, mpi_comm_null_delete_fn_, mpi_comm_null_delete_fn__, mpi_comm_null_delete_fn_f, - (MPI_Fint* comm, int* comm_keyval,void* attribute_val_out, int* flag, int* ierr ), - (comm, comm_keyval, attribute_val_out, flag, ierr) ) + (MPI_Fint* comm, MPI_Fint* comm_keyval,MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr ), + (comm, comm_keyval, attribute_val_out, extra_state, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_COMM_NULL_COPY_FN, mpi_comm_null_copy_fn, mpi_comm_null_copy_fn_, mpi_comm_null_copy_fn__, mpi_comm_null_copy_fn_f, - (MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr), + (MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr), (comm, comm_keyval, extra_state, attribute_val_in, attribute_val_out, flag, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_COMM_DUP_FN, mpi_comm_dup_fn, mpi_comm_dup_fn_, mpi_comm_dup_fn__, mpi_comm_dup_fn_f, - (MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr), + (MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr), (comm, comm_keyval, extra_state, attribute_val_in, attribute_val_out, flag, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_NULL_DELETE_FN, mpi_null_delete_fn, mpi_null_delete_fn_, mpi_null_delete_fn__, mpi_null_delete_fn_f, - (MPI_Fint* comm, int* comm_keyval,void* attribute_val_out, int* flag, int* ierr ), - (comm, comm_keyval, attribute_val_out, flag, ierr) ) + (MPI_Fint* comm, MPI_Fint* comm_keyval,MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr ), + (comm, comm_keyval, attribute_val_out, extra_state, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_NULL_COPY_FN, mpi_null_copy_fn, mpi_null_copy_fn_, mpi_null_copy_fn__, mpi_null_copy_fn_f, - (MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr), + (MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr), (comm, comm_keyval, extra_state, attribute_val_in, attribute_val_out, flag, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_DUP_FN, mpi_dup_fn, mpi_dup_fn_, mpi_dup_fn__, mpi_dup_fn_f, - (MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr), + (MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr), (comm, comm_keyval, extra_state, attribute_val_in, attribute_val_out, flag, ierr) ) #if OMPI_WANT_MPI2_ONE_SIDED @@ -144,21 +145,21 @@ OMPI_GENERATE_F77_BINDINGS( MPI_WIN_NULL_DELETE_FN, mpi_win_null_delete_fn_, mpi_win_null_delete_fn__, mpi_win_null_delete_fn_f, - (MPI_Fint* type, int* type_keyval,void* attribute_val_out, int* flag, int* ierr ), - (type, type_keyval, attribute_val_out, flag, ierr) ) + (MPI_Fint* type, MPI_Fint* type_keyval,MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr ), + (type, type_keyval, attribute_val_out, extra_state, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_WIN_NULL_COPY_FN, mpi_win_null_copy_fn, mpi_win_null_copy_fn_, mpi_win_null_copy_fn__, mpi_win_null_copy_fn_f, - (MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr), + (MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr), (window, win_keyval, extra_state, attribute_val_in, attribute_val_out, flag, ierr) ) OMPI_GENERATE_F77_BINDINGS( MPI_WIN_DUP_FN, mpi_win_dup_fn, mpi_win_dup_fn_, mpi_win_dup_fn__, mpi_win_dup_fn_f, - (MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr), + (MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr), (window, win_keyval, extra_state, attribute_val_in, attribute_val_out, flag, ierr) ) #endif #endif @@ -186,116 +187,116 @@ OMPI_GENERATE_F77_BINDINGS( MPI_WIN_DUP_FN, * * The reason why is discussed in a lengthy comment in mpi.h. */ -void mpi_type_null_delete_fn_f( MPI_Fint* type, int* type_keyval, - void* attribute_val_out, int* flag, int* ierr ) +void mpi_type_null_delete_fn_f(MPI_Fint* type, MPI_Fint* type_keyval, + MPI_Fint* attribute_val_out, + MPI_Fint* extra_state, MPI_Fint* ierr) { - MPI_Datatype c_type = MPI_Type_f2c(*type); - - *ierr = OMPI_C_MPI_TYPE_NULL_DELETE_FN( c_type, *type_keyval, - attribute_val_out, flag ); + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_type_null_copy_fn_f( MPI_Fint* type, int* type_keyval, void* extra_state, - void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr ) +void mpi_type_null_copy_fn_f(MPI_Fint* type, MPI_Fint* type_keyval, + MPI_Fint* extra_state, + MPI_Fint* attribute_val_in, + MPI_Fint* attribute_val_out, + ompi_fortran_logical_t* flag, MPI_Fint* ierr) { - MPI_Datatype c_type = MPI_Type_f2c(*type); - - *ierr = OMPI_C_MPI_TYPE_NULL_COPY_FN( c_type, *type_keyval, extra_state, - attribute_val_in, attribute_val_out, - flag ); + *flag = (ompi_fortran_logical_t) 0; + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_type_dup_fn_f( MPI_Fint* type, int* type_keyval, void* extra_state, - void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr ) +void mpi_type_dup_fn_f(MPI_Fint* type, MPI_Fint* type_keyval, + MPI_Fint* extra_state, + MPI_Fint* attribute_val_in, + MPI_Fint* attribute_val_out, + ompi_fortran_logical_t* flag, MPI_Fint* ierr ) { - MPI_Datatype c_type = MPI_Type_f2c(*type); - - *ierr = OMPI_C_MPI_TYPE_DUP_FN( c_type, *type_keyval, extra_state, - attribute_val_in, attribute_val_out, flag ); + *flag = (ompi_fortran_logical_t) 1; + *attribute_val_out = *attribute_val_in; + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_comm_null_delete_fn_f( MPI_Fint* comm, int* comm_keyval, - void* attribute_val_out, int* flag, int* ierr ) +void mpi_comm_null_delete_fn_f( MPI_Fint* comm, MPI_Fint* comm_keyval, + MPI_Fint* attribute_val_out, + MPI_Fint* extra_state, MPI_Fint* ierr ) { - MPI_Comm c_comm = MPI_Comm_f2c( *comm ); - - *ierr = OMPI_C_MPI_COMM_NULL_DELETE_FN( c_comm, *comm_keyval, - attribute_val_out, flag ); + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_comm_null_copy_fn_f( MPI_Fint* comm, int* comm_keyval, void* extra_state, - void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr ) +void mpi_comm_null_copy_fn_f( MPI_Fint* comm, MPI_Fint* comm_keyval, + MPI_Fint* extra_state, + MPI_Fint* attribute_val_in, + MPI_Fint* attribute_val_out, + ompi_fortran_logical_t* flag, MPI_Fint* ierr ) { - MPI_Comm c_comm = MPI_Comm_f2c( *comm ); - - *ierr = OMPI_C_MPI_COMM_NULL_COPY_FN( c_comm, *comm_keyval, extra_state, - attribute_val_in, attribute_val_out, - flag ); + *flag = (ompi_fortran_logical_t) 0; + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_comm_dup_fn_f( MPI_Fint* comm, int* comm_keyval, void* extra_state, - void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr ) +void mpi_comm_dup_fn_f( MPI_Fint* comm, MPI_Fint* comm_keyval, + MPI_Fint* extra_state, + MPI_Fint* attribute_val_in, + MPI_Fint* attribute_val_out, + ompi_fortran_logical_t* flag, MPI_Fint* ierr ) { - MPI_Comm c_comm = MPI_Comm_f2c( *comm ); - - *ierr = OMPI_C_MPI_COMM_DUP_FN( c_comm, *comm_keyval, extra_state, - attribute_val_in, attribute_val_out, flag ); + *flag = (ompi_fortran_logical_t) 1; + *attribute_val_out = *attribute_val_in; + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_null_delete_fn_f( MPI_Fint* comm, int* comm_keyval, - void* attribute_val_out, int* flag, int* ierr ) +void mpi_null_delete_fn_f( MPI_Fint* comm, MPI_Fint* comm_keyval, + MPI_Fint* attribute_val_out, + MPI_Fint* extra_state, MPI_Fint* ierr ) { - MPI_Comm c_comm = MPI_Comm_f2c( *comm ); - - *ierr = OMPI_C_MPI_NULL_DELETE_FN( c_comm, *comm_keyval, - attribute_val_out, flag ); + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_null_copy_fn_f( MPI_Fint* comm, int* comm_keyval, void* extra_state, - void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr ) +void mpi_null_copy_fn_f( MPI_Fint* comm, MPI_Fint* comm_keyval, + MPI_Fint* extra_state, + MPI_Fint* attribute_val_in, + MPI_Fint* attribute_val_out, + ompi_fortran_logical_t* flag, MPI_Fint* ierr ) { - MPI_Comm c_comm = MPI_Comm_f2c( *comm ); - - *ierr = OMPI_C_MPI_NULL_COPY_FN( c_comm, *comm_keyval, extra_state, - attribute_val_in, attribute_val_out, - flag ); + *flag = (ompi_fortran_logical_t) 0; + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_dup_fn_f( MPI_Fint* comm, int* comm_keyval, void* extra_state, - void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr ) +void mpi_dup_fn_f( MPI_Fint* comm, MPI_Fint* comm_keyval, + MPI_Fint* extra_state, + MPI_Fint* attribute_val_in, + MPI_Fint* attribute_val_out, + ompi_fortran_logical_t* flag, MPI_Fint* ierr ) { - MPI_Comm c_comm = MPI_Comm_f2c( *comm ); - - *ierr = OMPI_C_MPI_DUP_FN( c_comm, *comm_keyval, extra_state, - attribute_val_in, attribute_val_out, flag ); + *flag = (ompi_fortran_logical_t) 1; + *attribute_val_out = *attribute_val_in; + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } #if OMPI_WANT_MPI2_ONE_SIDED -void mpi_win_null_delete_fn_f( MPI_Fint* window, int* win_keyval, - void* attribute_val_out, int* flag, int* ierr ) +void mpi_win_null_delete_fn_f( MPI_FMPI_Fint* window, MPI_Fint* win_keyval, + MPI_Fint* attribute_val_out, + MPI_Fint* extra_state, MPI_Fint* ierr ) { - MPI_Win c_window = MPI_Win_f2c( *window ); - - *ierr = OMPI_C_MPI_WIN_NULL_DELETE_FN( c_window, *win_keyval, - attribute_val_out, flag ); + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_win_null_copy_fn_f( MPI_Fint* window, int* win_keyval, void* extra_state, - void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr ) +void mpi_win_null_copy_fn_f( MPI_Fint* window, MPI_Fint* win_keyval, + MPI_Fint* extra_state, + MPI_Fint* attribute_val_in, + MPI_Fint* attribute_val_out, + ompi_fortran_logical_t* flag, MPI_Fint* ierr ) { - MPI_Win c_window = MPI_Win_f2c( *window ); - - *ierr = OMPI_C_MPI_WIN_NULL_COPY_FN( c_window, *win_keyval, extra_state, - attribute_val_in, attribute_val_out, - flag ); + *flag = (ompi_fortran_logical_t) 0; + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } -void mpi_win_dup_fn_f( MPI_Fint* window, int* win_keyval, void* extra_state, - void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr ) +void mpi_win_dup_fn_f( MPI_Fint* window, MPI_Fint* win_keyval, + MPI_Fint* extra_state, + MPI_Fint* attribute_val_in, + MPI_Fint* attribute_val_out, + ompi_fortran_logical_t* flag, MPI_Fint* ierr ) { - MPI_Win c_window = MPI_Win_f2c( *window ); - - *ierr = OMPI_C_MPI_WIN_DUP_FN( c_window, *win_keyval, extra_state, - attribute_val_in, attribute_val_out, flag ); + *flag = (ompi_fortran_logical_t) 1; + *attribute_val_out = *attribute_val_in; + *ierr = OMPI_INT_2_FINT(MPI_SUCCESS); } #endif diff --git a/src/mpi/f77/prototypes_mpi.h b/src/mpi/f77/prototypes_mpi.h index bde5aefd2a..374a90a728 100644 --- a/src/mpi/f77/prototypes_mpi.h +++ b/src/mpi/f77/prototypes_mpi.h @@ -335,18 +335,18 @@ void mpi_win_wait_f(MPI_Fint *win, MPI_Fint *ierr); double mpi_wtick_f(void); double mpi_wtime_f(void); -void mpi_type_null_delete_fn_f(MPI_Fint* type, int* type_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_type_null_copy_fn_f(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_type_dup_fn_f(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_dup_fn_f(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_null_copy_fn_f(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_null_delete_fn_f(MPI_Fint* window, int* win_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_null_delete_fn_f(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_null_copy_fn_f(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_dup_fn_f(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_null_delete_fn_f(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_null_copy_fn_f(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_dup_fn_f(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); +void mpi_type_null_delete_fn_f(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_type_null_copy_fn_f(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_type_dup_fn_f(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_dup_fn_f(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_null_copy_fn_f(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_null_delete_fn_f(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_null_delete_fn_f(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_null_copy_fn_f(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_dup_fn_f(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_comm_null_delete_fn_f(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_comm_null_copy_fn_f(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_comm_dup_fn_f(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); #endif @@ -638,18 +638,18 @@ void mpi_win_wait(MPI_Fint *win, MPI_Fint *ierr); double mpi_wtick(void); double mpi_wtime(void); -void mpi_type_null_delete_fn(MPI_Fint* type, int* type_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_type_null_copy_fn(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_type_dup_fn(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_dup_fn(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_null_copy_fn(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_null_delete_fn(MPI_Fint* window, int* win_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_null_delete_fn(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_null_copy_fn(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_dup_fn(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_null_delete_fn(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_null_copy_fn(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_dup_fn(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); +void mpi_type_null_delete_fn(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_type_null_copy_fn(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_type_dup_fn(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_dup_fn(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_null_copy_fn(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_null_delete_fn(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_null_delete_fn(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_null_copy_fn(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_dup_fn(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_comm_null_delete_fn(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_comm_null_copy_fn(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_comm_dup_fn(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); /* These are all the single underscore prototypes */ @@ -939,18 +939,18 @@ void mpi_win_wait_(MPI_Fint *win, MPI_Fint *ierr); double mpi_wtick_(void); double mpi_wtime_(void); -void mpi_type_null_delete_fn_(MPI_Fint* type, int* type_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_type_null_copy_fn_(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_type_dup_fn_(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_dup_fn_(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_null_copy_fn_(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_null_delete_fn_(MPI_Fint* window, int* win_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_null_delete_fn_(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_null_copy_fn_(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_dup_fn_(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_null_delete_fn_(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_null_copy_fn_(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_dup_fn_(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); +void mpi_type_null_delete_fn_(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_type_null_copy_fn_(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_type_dup_fn_(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_dup_fn_(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_null_copy_fn_(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_null_delete_fn_(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_null_delete_fn_(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_null_copy_fn_(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_dup_fn_(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_comm_null_delete_fn_(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_comm_null_copy_fn_(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_comm_dup_fn_(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); /* These are all the double underscore prototypes */ @@ -1240,18 +1240,18 @@ void mpi_win_wait__(MPI_Fint *win, MPI_Fint *ierr); double mpi_wtick__(void); double mpi_wtime__(void); -void mpi_type_null_delete_fn__(MPI_Fint* type, int* type_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_type_null_copy_fn__(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_type_dup_fn__(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_dup_fn__(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_null_copy_fn__(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_win_null_delete_fn__(MPI_Fint* window, int* win_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_null_delete_fn__(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_null_copy_fn__(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_dup_fn__(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_null_delete_fn__(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_null_copy_fn__(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void mpi_comm_dup_fn__(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); +void mpi_type_null_delete_fn__(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_type_null_copy_fn__(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_type_dup_fn__(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_dup_fn__(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_null_copy_fn__(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_win_null_delete_fn__(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_null_delete_fn__(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_null_copy_fn__(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_dup_fn__(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_comm_null_delete_fn__(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void mpi_comm_null_copy_fn__(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void mpi_comm_dup_fn__(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); /* These are all the upper case prototypes */ @@ -1541,17 +1541,17 @@ void MPI_WIN_WAIT(MPI_Fint *win, MPI_Fint *ierr); double MPI_WTICK(void); double MPI_WTIME(void); -void MPI_TYPE_NULL_DELETE_FN(MPI_Fint* type, int* type_keyval, void* attribute_val_out, int* flag, int* ierr); -void MPI_TYPE_NULL_COPY_FN(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void MPI_TYPE_DUP_FN(MPI_Fint* type, int* type_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void MPI_WIN_DUP_FN(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void MPI_WIN_NULL_COPY_FN(MPI_Fint* window, int* win_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void MPI_WIN_NULL_DELETE_FN(MPI_Fint* window, int* win_keyval, void* attribute_val_out, int* flag, int* ierr); -void MPI_NULL_DELETE_FN(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void MPI_NULL_COPY_FN(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void MPI_DUP_FN(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void MPI_COMM_NULL_DELETE_FN(MPI_Fint* comm, int* comm_keyval, void* attribute_val_out, int* flag, int* ierr); -void MPI_COMM_NULL_COPY_FN(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); -void MPI_COMM_DUP_FN(MPI_Fint* comm, int* comm_keyval, void* extra_state, void* attribute_val_in, void* attribute_val_out, int* flag, int* ierr); +void MPI_TYPE_NULL_DELETE_FN(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void MPI_TYPE_NULL_COPY_FN(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void MPI_TYPE_DUP_FN(MPI_Fint* type, MPI_Fint* type_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void MPI_WIN_DUP_FN(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void MPI_WIN_NULL_COPY_FN(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void MPI_WIN_NULL_DELETE_FN(MPI_Fint* window, MPI_Fint* win_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void MPI_NULL_DELETE_FN(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void MPI_NULL_COPY_FN(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void MPI_DUP_FN(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void MPI_COMM_NULL_DELETE_FN(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* attribute_val_out, MPI_Fint* extra_state, MPI_Fint* ierr); +void MPI_COMM_NULL_COPY_FN(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); +void MPI_COMM_DUP_FN(MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Fint* extra_state, MPI_Fint* attribute_val_in, MPI_Fint* attribute_val_out, ompi_fortran_logical_t* flag, MPI_Fint* ierr); #endif