req->size(),
req->tag(),
simgrid::smpi::Datatype::encode(req->type())));
- if (not TRACE_smpi_view_internals() && req->flags() & SEND)
+ if (not TRACE_smpi_view_internals() && req->flags() & MPI_REQ_SEND)
TRACE_smpi_send(my_proc_id, my_proc_id, getPid(req->comm(), req->dst()), req->tag(), req->size());
req->start();
- if (not TRACE_smpi_view_internals() && req->flags() & RECV)
+ if (not TRACE_smpi_view_internals() && req->flags() & MPI_REQ_RECV)
TRACE_smpi_recv(getPid(req->comm(), req->src()), my_proc_id, req->tag());
retval = MPI_SUCCESS;
TRACE_smpi_comm_out(my_proc_id);
if (not TRACE_smpi_view_internals())
for (int i = 0; i < count; i++) {
req = requests[i];
- if (req->flags() & SEND)
+ if (req->flags() & MPI_REQ_SEND)
TRACE_smpi_send(my_proc_id, my_proc_id, getPid(req->comm(), req->dst()), req->tag(), req->size());
}
if (not TRACE_smpi_view_internals())
for (int i = 0; i < count; i++) {
req = requests[i];
- if (req->flags() & RECV)
+ if (req->flags() & MPI_REQ_RECV)
TRACE_smpi_recv(getPid(req->comm(), req->src()), my_proc_id, req->tag());
}
TRACE_smpi_comm_out(my_proc_id);
retval = MPI_SUCCESS;
// the src may not have been known at the beginning of the recv (MPI_ANY_SOURCE)
- if (status != MPI_STATUS_IGNORE) {
- int src_traced = getPid(comm, status->MPI_SOURCE);
- if (not TRACE_smpi_view_internals()) {
- TRACE_smpi_recv(src_traced, my_proc_id, tag);
- }
+ int src_traced=0;
+ if (status != MPI_STATUS_IGNORE)
+ src_traced = getPid(comm, status->MPI_SOURCE);
+ else
+ src_traced = getPid(comm, src);
+ if (not TRACE_smpi_view_internals()) {
+ TRACE_smpi_recv(src_traced, my_proc_id, tag);
}
+
TRACE_smpi_comm_out(my_proc_id);
}
int retval = 0;
smpi_bench_end();
- if (status == nullptr) {
- retval = MPI_ERR_ARG;
- } else if (comm == MPI_COMM_NULL) {
+ if (comm == MPI_COMM_NULL) {
retval = MPI_ERR_COMM;
} else if (source == MPI_PROC_NULL) {
if (status != MPI_STATUS_IGNORE){
int src_traced = req->src();
// the src may not have been known at the beginning of the recv (MPI_ANY_SOURCE)
int dst_traced = req->dst();
- if (req->flags() & RECV) { // Is this request a wait for RECV?
+ if (req->flags() & MPI_REQ_RECV) { // Is this request a wait for RECV?
if (src_traced == MPI_ANY_SOURCE)
src_traced = (status != MPI_STATUSES_IGNORE) ? req->comm()->group()->rank(status->MPI_SOURCE) : req->src();
TRACE_smpi_recv(src_traced, dst_traced, req->tag());