1
1

The OMPI_GENERATE_F77_BINDINGS work only for the most common F77 bindings, the

one that does not return any value. There are 2 exceptions MPI_Wtick and MPI_Wtime.
For these 2 we can insert the bindings manually.

This commit was SVN r8016.
Этот коммит содержится в:
George Bosilca 2005-11-07 19:37:32 +00:00
родитель 28891d6de3
Коммит 9832d5d883
2 изменённых файлов: 32 добавлений и 0 удалений

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

@ -20,12 +20,17 @@
#include "mpi/f77/bindings.h" #include "mpi/f77/bindings.h"
/* The OMPI_GENERATE_F77_BINDINGS work only for the most common F77 bindings, the
* one that does not return any value. There are 2 exceptions MPI_Wtick and MPI_Wtime.
* For these 2 we can insert the bindings manually.
*/
#if OMPI_HAVE_WEAK_SYMBOLS && OMPI_PROFILE_LAYER #if OMPI_HAVE_WEAK_SYMBOLS && OMPI_PROFILE_LAYER
#pragma weak PMPI_WTICK = mpi_wtick_f #pragma weak PMPI_WTICK = mpi_wtick_f
#pragma weak pmpi_wtick = mpi_wtick_f #pragma weak pmpi_wtick = mpi_wtick_f
#pragma weak pmpi_wtick_ = mpi_wtick_f #pragma weak pmpi_wtick_ = mpi_wtick_f
#pragma weak pmpi_wtick__ = mpi_wtick_f #pragma weak pmpi_wtick__ = mpi_wtick_f
#elif OMPI_PROFILE_LAYER #elif OMPI_PROFILE_LAYER
/*
OMPI_GENERATE_F77_BINDINGS (PMPI_WTICK, OMPI_GENERATE_F77_BINDINGS (PMPI_WTICK,
pmpi_wtick, pmpi_wtick,
pmpi_wtick_, pmpi_wtick_,
@ -33,6 +38,11 @@ OMPI_GENERATE_F77_BINDINGS (PMPI_WTICK,
pmpi_wtick_f, pmpi_wtick_f,
(), (),
() ) () )
*/
double PMPI_WTICK(void) { return pmpi_wtick_f(); }
double pmpi_wtick(void) { return pmpi_wtick_f(); }
double pmpi_wtick_(void) { return pmpi_wtick_f(); }
double pmpi_wtick__(void) { return pmpi_wtick_f(); }
#endif #endif
#if OMPI_HAVE_WEAK_SYMBOLS #if OMPI_HAVE_WEAK_SYMBOLS
@ -43,6 +53,7 @@ OMPI_GENERATE_F77_BINDINGS (PMPI_WTICK,
#endif #endif
#if ! OMPI_HAVE_WEAK_SYMBOLS && ! OMPI_PROFILE_LAYER #if ! OMPI_HAVE_WEAK_SYMBOLS && ! OMPI_PROFILE_LAYER
/*
OMPI_GENERATE_F77_BINDINGS (MPI_WTICK, OMPI_GENERATE_F77_BINDINGS (MPI_WTICK,
mpi_wtick, mpi_wtick,
mpi_wtick_, mpi_wtick_,
@ -50,6 +61,11 @@ OMPI_GENERATE_F77_BINDINGS (MPI_WTICK,
mpi_wtick_f, mpi_wtick_f,
(), (),
() ) () )
*/
double MPI_WTICK(void) { return mpi_wtick_f(); }
double mpi_wtick(void) { return mpi_wtick_f(); }
double mpi_wtick_(void) { return mpi_wtick_f(); }
double mpi_wtick__(void) { return mpi_wtick_f(); }
#endif #endif

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

@ -20,12 +20,17 @@
#include "mpi/f77/bindings.h" #include "mpi/f77/bindings.h"
/* The OMPI_GENERATE_F77_BINDINGS work only for the most common F77 bindings, the
* one that does not return any value. There are 2 exceptions MPI_Wtick and MPI_Wtime.
* For these 2 we can insert the bindings manually.
*/
#if OMPI_HAVE_WEAK_SYMBOLS && OMPI_PROFILE_LAYER #if OMPI_HAVE_WEAK_SYMBOLS && OMPI_PROFILE_LAYER
#pragma weak PMPI_WTIME = mpi_wtime_f #pragma weak PMPI_WTIME = mpi_wtime_f
#pragma weak pmpi_wtime = mpi_wtime_f #pragma weak pmpi_wtime = mpi_wtime_f
#pragma weak pmpi_wtime_ = mpi_wtime_f #pragma weak pmpi_wtime_ = mpi_wtime_f
#pragma weak pmpi_wtime__ = mpi_wtime_f #pragma weak pmpi_wtime__ = mpi_wtime_f
#elif OMPI_PROFILE_LAYER #elif OMPI_PROFILE_LAYER
/*
OMPI_GENERATE_F77_BINDINGS (PMPI_WTIME, OMPI_GENERATE_F77_BINDINGS (PMPI_WTIME,
pmpi_wtime, pmpi_wtime,
pmpi_wtime_, pmpi_wtime_,
@ -33,6 +38,11 @@ OMPI_GENERATE_F77_BINDINGS (PMPI_WTIME,
pmpi_wtime_f, pmpi_wtime_f,
(), (),
() ) () )
*/
double PMPI_WTIME(void) { return pmpi_wtime_f(); }
double pmpi_wtime(void) { return pmpi_wtime_f(); }
double pmpi_wtime_(void) { return pmpi_wtime_f(); }
double pmpi_wtime__(void) { return pmpi_wtime_f(); }
#endif #endif
#if OMPI_HAVE_WEAK_SYMBOLS #if OMPI_HAVE_WEAK_SYMBOLS
@ -43,6 +53,7 @@ OMPI_GENERATE_F77_BINDINGS (PMPI_WTIME,
#endif #endif
#if ! OMPI_HAVE_WEAK_SYMBOLS && ! OMPI_PROFILE_LAYER #if ! OMPI_HAVE_WEAK_SYMBOLS && ! OMPI_PROFILE_LAYER
/*
OMPI_GENERATE_F77_BINDINGS (MPI_WTIME, OMPI_GENERATE_F77_BINDINGS (MPI_WTIME,
mpi_wtime, mpi_wtime,
mpi_wtime_, mpi_wtime_,
@ -50,6 +61,11 @@ OMPI_GENERATE_F77_BINDINGS (MPI_WTIME,
mpi_wtime_f, mpi_wtime_f,
(), (),
() ) () )
*/
double MPI_WTIME(void) { return mpi_wtime_f(); }
double mpi_wtime(void) { return mpi_wtime_f(); }
double mpi_wtime_(void) { return mpi_wtime_f(); }
double mpi_wtime__(void) { return mpi_wtime_f(); }
#endif #endif