1 /*
2 * Copyright (c) 2013 Mellanox Technologies, Inc.
3 * All rights reserved.
4 * Copyright (c) 2013 Cisco Systems, Inc. All rights reserved.
5 * $COPYRIGHT$
6 *
7 * Additional copyrights may follow
8 *
9 * $HEADER$
10 */
11
12 #include "oshmem_config.h"
13 #include "oshmem/shmem/fortran/bindings.h"
14 #include "oshmem/include/shmem.h"
15
16 #if OSHMEM_PROFILING
17 #include "oshmem/shmem/fortran/profile/pbindings.h"
SHMEM_GENERATE_WEAK_BINDINGS(SHMEM_BARRIER,shmem_barrier)18 SHMEM_GENERATE_WEAK_BINDINGS(SHMEM_BARRIER, shmem_barrier)
19 #include "oshmem/shmem/fortran/profile/defines.h"
20 #endif
21
22 SHMEM_GENERATE_FORTRAN_BINDINGS_SUB (void,
23 SHMEM_BARRIER,
24 shmem_barrier_,
25 shmem_barrier__,
26 shmem_barrier_f,
27 (MPI_Fint *PE_start, MPI_Fint *logPE_stride, MPI_Fint *PE_size, FORTRAN_POINTER_T pSync),
28 (PE_start,logPE_stride,PE_size,pSync))
29
30 void shmem_barrier_f(MPI_Fint *PE_start, MPI_Fint *logPE_stride, MPI_Fint *PE_size, FORTRAN_POINTER_T pSync)
31 {
32 shmem_barrier(OMPI_FINT_2_INT(*PE_start),
33 OMPI_FINT_2_INT(*logPE_stride),
34 OMPI_FINT_2_INT(*PE_size),
35 (long *)FPTR_2_VOID_PTR(pSync));
36 }
37
38