From 91a00effad306a7aeba5982ebd079160025d9a4f Mon Sep 17 00:00:00 2001 From: Frederic Suter Date: Wed, 3 Apr 2019 12:41:26 +0200 Subject: [PATCH] simcall_comm_test returns a bool too --- include/simgrid/simix.h | 2 +- src/kernel/activity/CommImpl.cpp | 2 +- src/simix/libsmx.cpp | 2 +- src/simix/popping_accessors.hpp | 12 ++++++------ src/simix/popping_bodies.cpp | 4 ++-- src/simix/simcalls.in | 2 +- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/include/simgrid/simix.h b/include/simgrid/simix.h index e5f195f969..99de58bc6a 100644 --- a/include/simgrid/simix.h +++ b/include/simgrid/simix.h @@ -233,7 +233,7 @@ XBT_PUBLIC unsigned int simcall_comm_waitany(smx_activity_t comms[], size_t coun XBT_PUBLIC unsigned int simcall_comm_waitany(simgrid::kernel::activity::CommImpl* comms[], size_t count, double timeout); XBT_PUBLIC void simcall_comm_wait(const smx_activity_t& comm, double timeout); -XBT_PUBLIC int simcall_comm_test(const smx_activity_t& comm); +XBT_PUBLIC bool simcall_comm_test(const smx_activity_t& comm); XBT_PUBLIC int simcall_comm_testany(smx_activity_t comms[], size_t count); XBT_PUBLIC int simcall_comm_testany(simgrid::kernel::activity::CommImpl* comms[], size_t count); #endif diff --git a/src/kernel/activity/CommImpl.cpp b/src/kernel/activity/CommImpl.cpp index 8aa5747069..ae219f6e45 100644 --- a/src/kernel/activity/CommImpl.cpp +++ b/src/kernel/activity/CommImpl.cpp @@ -229,7 +229,7 @@ void simcall_HANDLER_comm_wait(smx_simcall_t simcall, simgrid::kernel::activity: void simcall_HANDLER_comm_test(smx_simcall_t simcall, simgrid::kernel::activity::CommImpl* comm) { - int res; + bool res; if (MC_is_active() || MC_record_replay_is_active()) { res = comm->src_actor_ && comm->dst_actor_; diff --git a/src/simix/libsmx.cpp b/src/simix/libsmx.cpp index 7116fb0027..d80c37579d 100644 --- a/src/simix/libsmx.cpp +++ b/src/simix/libsmx.cpp @@ -223,7 +223,7 @@ void simcall_comm_wait(const smx_activity_t& comm, double timeout) * @ingroup simix_comm_management * */ -int simcall_comm_test(const smx_activity_t& comm) +bool simcall_comm_test(const smx_activity_t& comm) { return simcall_BODY_comm_test(static_cast(comm.get())); } diff --git a/src/simix/popping_accessors.hpp b/src/simix/popping_accessors.hpp index 32af6e3504..5ce7bc898e 100644 --- a/src/simix/popping_accessors.hpp +++ b/src/simix/popping_accessors.hpp @@ -710,17 +710,17 @@ static inline void simcall_comm_test__set__comm(smx_simcall_t simcall, simgrid:: { simgrid::simix::marshal(simcall->args[0], arg); } -static inline int simcall_comm_test__get__result(smx_simcall_t simcall) +static inline bool simcall_comm_test__get__result(smx_simcall_t simcall) { - return simgrid::simix::unmarshal(simcall->result); + return simgrid::simix::unmarshal(simcall->result); } -static inline int simcall_comm_test__getraw__result(smx_simcall_t simcall) +static inline bool simcall_comm_test__getraw__result(smx_simcall_t simcall) { - return simgrid::simix::unmarshal_raw(simcall->result); + return simgrid::simix::unmarshal_raw(simcall->result); } -static inline void simcall_comm_test__set__result(smx_simcall_t simcall, int result) +static inline void simcall_comm_test__set__result(smx_simcall_t simcall, bool result) { - simgrid::simix::marshal(simcall->result, result); + simgrid::simix::marshal(simcall->result, result); } static inline simgrid::kernel::activity::CommImpl** simcall_comm_testany__get__comms(smx_simcall_t simcall) diff --git a/src/simix/popping_bodies.cpp b/src/simix/popping_bodies.cpp index 06549e00ea..b86e34a8db 100644 --- a/src/simix/popping_bodies.cpp +++ b/src/simix/popping_bodies.cpp @@ -113,11 +113,11 @@ inline static void simcall_BODY_comm_wait(simgrid::kernel::activity::CommImpl* c return simcall(SIMCALL_COMM_WAIT, comm, timeout); } -inline static int simcall_BODY_comm_test(simgrid::kernel::activity::CommImpl* comm) +inline static bool simcall_BODY_comm_test(simgrid::kernel::activity::CommImpl* comm) { if (0) /* Go to that function to follow the code flow through the simcall barrier */ simcall_HANDLER_comm_test(&SIMIX_process_self()->simcall, comm); - return simcall(SIMCALL_COMM_TEST, comm); + return simcall(SIMCALL_COMM_TEST, comm); } inline static int simcall_BODY_comm_testany(simgrid::kernel::activity::CommImpl** comms, size_t count) diff --git a/src/simix/simcalls.in b/src/simix/simcalls.in index abcd76ebc3..b450dfeb9f 100644 --- a/src/simix/simcalls.in +++ b/src/simix/simcalls.in @@ -48,7 +48,7 @@ void comm_recv(smx_actor_t receiver, smx_mailbox_t mbox, void* dst_buf boost::intrusive_ptr comm_irecv(smx_actor_t receiver, smx_mailbox_t mbox, void* dst_buff, size_t* dst_buff_size, simix_match_func_t match_fun, simix_copy_data_func_t copy_data_fun, void* data, double rate); int comm_waitany(simgrid::kernel::activity::CommImpl** comms, size_t count, double timeout) [[block]]; void comm_wait(simgrid::kernel::activity::CommImpl* comm, double timeout) [[block]]; -int comm_test(simgrid::kernel::activity::CommImpl* comm) [[block]]; +bool comm_test(simgrid::kernel::activity::CommImpl* comm) [[block]]; int comm_testany(simgrid::kernel::activity::CommImpl** comms, size_t count) [[block]]; void mutex_lock(smx_mutex_t mutex) [[block]]; -- 2.20.1