83
83
#pragma _CRI duplicate mpi_type_free_keyval_ as pmpi_type_free_keyval_
86
#elif defined(HAVE_WEAK_ATTRIBUTE)
87
#if defined(F77_NAME_UPPER)
88
extern FORT_DLL_SPEC void FORT_CALL MPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("PMPI_TYPE_FREE_KEYVAL")));
89
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("PMPI_TYPE_FREE_KEYVAL")));
90
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("PMPI_TYPE_FREE_KEYVAL")));
91
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("PMPI_TYPE_FREE_KEYVAL")));
93
#elif defined(F77_NAME_LOWER_2USCORE)
94
extern FORT_DLL_SPEC void FORT_CALL MPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval__")));
95
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval__")));
96
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval__")));
97
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval__")));
99
#elif defined(F77_NAME_LOWER_USCORE)
100
extern FORT_DLL_SPEC void FORT_CALL MPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval_")));
101
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval_")));
102
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval_")));
103
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval_")));
106
extern FORT_DLL_SPEC void FORT_CALL MPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval")));
107
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval")));
108
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval")));
109
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval")));
85
112
#endif /* HAVE_PRAGMA_WEAK */
86
113
#endif /* USE_WEAK_SYMBOLS */
87
114
/* End MPI profiling block */
90
117
/* These definitions are used only for generating the Fortran wrappers */
91
#if defined(USE_WEAK_SYMBOLS) && defined(HAVE_MULTIPLE_PRAGMA_WEAK) && \
92
defined(USE_ONLY_MPI_NAMES)
118
#if defined(USE_WEAK_SYMBOLS) && defined(USE_ONLY_MPI_NAMES)
119
#if defined(HAVE_MULTIPLE_PRAGMA_WEAK)
93
120
extern FORT_DLL_SPEC void FORT_CALL MPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * );
94
121
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval__( MPI_Fint *, MPI_Fint * );
95
122
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval( MPI_Fint *, MPI_Fint * );
112
139
#pragma weak mpi_type_free_keyval__ = mpi_type_free_keyval
113
140
#pragma weak mpi_type_free_keyval_ = mpi_type_free_keyval
142
#elif defined(HAVE_WEAK_ATTRIBUTE)
143
#if defined(F77_NAME_UPPER)
144
extern FORT_DLL_SPEC void FORT_CALL MPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * );
145
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("MPI_TYPE_FREE_KEYVAL")));
146
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("MPI_TYPE_FREE_KEYVAL")));
147
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("MPI_TYPE_FREE_KEYVAL")));
149
#elif defined(F77_NAME_LOWER_2USCORE)
150
extern FORT_DLL_SPEC void FORT_CALL MPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("mpi_type_free_keyval__")));
151
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval__( MPI_Fint *, MPI_Fint * );
152
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("mpi_type_free_keyval__")));
153
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("mpi_type_free_keyval__")));
155
#elif defined(F77_NAME_LOWER_USCORE)
156
extern FORT_DLL_SPEC void FORT_CALL MPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("mpi_type_free_keyval_")));
157
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("mpi_type_free_keyval_")));
158
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval_( MPI_Fint *, MPI_Fint * );
159
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("mpi_type_free_keyval_")));
162
extern FORT_DLL_SPEC void FORT_CALL MPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("mpi_type_free_keyval")));
163
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("mpi_type_free_keyval")));
164
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("mpi_type_free_keyval")));
165
extern FORT_DLL_SPEC void FORT_CALL mpi_type_free_keyval( MPI_Fint *, MPI_Fint * );
118
172
/* Map the name to the correct form */
119
173
#ifndef MPICH_MPI_FROM_PMPI
120
#if defined(USE_WEAK_SYMBOLS) && defined(HAVE_MULTIPLE_PRAGMA_WEAK)
174
#if defined(USE_WEAK_SYMBOLS)
175
#if defined(HAVE_MULTIPLE_PRAGMA_WEAK)
121
176
/* Define the weak versions of the PMPI routine*/
122
177
#ifndef F77_NAME_UPPER
123
178
extern FORT_DLL_SPEC void FORT_CALL PMPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * );
150
205
#pragma weak pmpi_type_free_keyval__ = pmpi_type_free_keyval
151
206
#pragma weak pmpi_type_free_keyval_ = pmpi_type_free_keyval
152
207
#endif /* Test on name mapping */
153
#endif /* Use multiple pragma weak */
209
#elif defined(HAVE_WEAK_ATTRIBUTE)
210
#if defined(F77_NAME_UPPER)
211
extern FORT_DLL_SPEC void FORT_CALL pmpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("PMPI_TYPE_FREE_KEYVAL")));
212
extern FORT_DLL_SPEC void FORT_CALL pmpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("PMPI_TYPE_FREE_KEYVAL")));
213
extern FORT_DLL_SPEC void FORT_CALL pmpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("PMPI_TYPE_FREE_KEYVAL")));
215
#elif defined(F77_NAME_LOWER_2USCORE)
216
extern FORT_DLL_SPEC void FORT_CALL PMPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval__")));
217
extern FORT_DLL_SPEC void FORT_CALL pmpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval__")));
218
extern FORT_DLL_SPEC void FORT_CALL pmpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval__")));
220
#elif defined(F77_NAME_LOWER_USCORE)
221
extern FORT_DLL_SPEC void FORT_CALL PMPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval_")));
222
extern FORT_DLL_SPEC void FORT_CALL pmpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval_")));
223
extern FORT_DLL_SPEC void FORT_CALL pmpi_type_free_keyval( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval_")));
226
extern FORT_DLL_SPEC void FORT_CALL PMPI_TYPE_FREE_KEYVAL( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval")));
227
extern FORT_DLL_SPEC void FORT_CALL pmpi_type_free_keyval__( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval")));
228
extern FORT_DLL_SPEC void FORT_CALL pmpi_type_free_keyval_( MPI_Fint *, MPI_Fint * ) __attribute__((weak,alias("pmpi_type_free_keyval")));
230
#endif /* Test on name mapping */
231
#endif /* HAVE_MULTIPLE_PRAGMA_WEAK */
232
#endif /* USE_WEAK_SYMBOLS */
155
234
#ifdef F77_NAME_UPPER
156
235
#define mpi_type_free_keyval_ PMPI_TYPE_FREE_KEYVAL