Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
mc: rename Inspector to Observer
[simgrid.git] / src / simix / popping_generated.cpp
index 0c4e431..a4f88aa 100644 (file)
@@ -21,6 +21,7 @@
 #include "src/mc/mc_forward.hpp"
 #endif
 #include "src/kernel/activity/ConditionVariableImpl.hpp"
+#include "src/mc/checker/SimcallObserver.hpp"
 
 XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(simix_popping);
 
@@ -39,12 +40,10 @@ constexpr std::array<const char*, simgrid::simix::NUM_SIMCALLS> simcall_names{{
     "Simcall::COMM_TESTANY",
     "Simcall::MUTEX_LOCK",
     "Simcall::MUTEX_TRYLOCK",
-    "Simcall::MUTEX_UNLOCK",
     "Simcall::COND_WAIT",
     "Simcall::COND_WAIT_TIMEOUT",
     "Simcall::SEM_ACQUIRE",
     "Simcall::SEM_ACQUIRE_TIMEOUT",
-    "Simcall::MC_RANDOM",
     "Simcall::RUN_KERNEL",
     "Simcall::RUN_BLOCKING",
 }};
@@ -54,9 +53,12 @@ constexpr std::array<const char*, simgrid::simix::NUM_SIMCALLS> simcall_names{{
  *
  * This function is generated from src/simix/simcalls.in
  */
-void simgrid::kernel::actor::ActorImpl::simcall_handle(int value) {
+void simgrid::kernel::actor::ActorImpl::simcall_handle(int times_considered_)
+{
   XBT_DEBUG("Handling simcall %p: %s", &simcall_, SIMIX_simcall_name(simcall_.call_));
-  SIMCALL_SET_MC_VALUE(simcall_, value);
+  SIMCALL_SET_MC_VALUE(simcall_, times_considered_);
+  if (simcall_.observer_ != nullptr)
+    simcall_.observer_->prepare(times_considered_);
   if (context_->wannadie())
     return;
   switch (simcall_.call_) {
@@ -107,11 +109,6 @@ void simgrid::kernel::actor::ActorImpl::simcall_handle(int value) {
       simcall_answer();
       break;
 
-    case Simcall::MUTEX_UNLOCK:
-      simcall_HANDLER_mutex_unlock(&simcall_, simgrid::simix::unmarshal<smx_mutex_t>(simcall_.args_[0]));
-      simcall_answer();
-      break;
-
     case Simcall::COND_WAIT:
       simcall_HANDLER_cond_wait(&simcall_, simgrid::simix::unmarshal<smx_cond_t>(simcall_.args_[0]), simgrid::simix::unmarshal<smx_mutex_t>(simcall_.args_[1]));
       break;
@@ -128,11 +125,6 @@ void simgrid::kernel::actor::ActorImpl::simcall_handle(int value) {
       simcall_HANDLER_sem_acquire_timeout(&simcall_, simgrid::simix::unmarshal<smx_sem_t>(simcall_.args_[0]), simgrid::simix::unmarshal<double>(simcall_.args_[1]));
       break;
 
-    case Simcall::MC_RANDOM:
-      simgrid::simix::marshal<int>(simcall_.result_, simcall_HANDLER_mc_random(&simcall_, simgrid::simix::unmarshal<int>(simcall_.args_[0]), simgrid::simix::unmarshal<int>(simcall_.args_[1])));
-      simcall_answer();
-      break;
-
     case Simcall::RUN_KERNEL:
       SIMIX_run_kernel(simgrid::simix::unmarshal<std::function<void()> const*>(simcall_.args_[0]));
       simcall_answer();