Blame src/mutex/muteximpl.h

Packit Service c5cf8c
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil ; -*- */
Packit Service c5cf8c
/*
Packit Service c5cf8c
 *  (C) 2001 by Argonne National Laboratory.
Packit Service c5cf8c
 *      See COPYRIGHT in top-level directory.
Packit Service c5cf8c
 */
Packit Service c5cf8c
Packit Service c5cf8c
#ifndef MUTEXIMPL_H_INCLUDED
Packit Service c5cf8c
#define MUTEXIMPL_H_INCLUDED
Packit Service c5cf8c
Packit Service c5cf8c
#include <mpi.h>
Packit Service c5cf8c
#include <stdint.h>
Packit Service c5cf8c
#define MPIX_MUTEX_TAG 100
Packit Service c5cf8c
Packit Service c5cf8c
#ifdef ENABLE_DEBUG
Packit Service c5cf8c
#define debug_print(...) do { printf(__VA_ARGS__); } while (0)
Packit Service c5cf8c
#else
Packit Service c5cf8c
#define debug_print(...)
Packit Service c5cf8c
#endif
Packit Service c5cf8c
Packit Service c5cf8c
struct mpixi_mutex_s {
Packit Service c5cf8c
    int my_count;
Packit Service c5cf8c
    int max_count;
Packit Service c5cf8c
    MPI_Comm comm;
Packit Service c5cf8c
    MPI_Win *windows;
Packit Service c5cf8c
    uint8_t **bases;
Packit Service c5cf8c
};
Packit Service c5cf8c
Packit Service c5cf8c
/* TODO: Make these mutex operations no-ops for sequential runs */
Packit Service c5cf8c
Packit Service c5cf8c
#endif /* MUTEXIMPL_H_INCLUDED */