Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[mc] Use Session::execute() in LivenessChecker as well
[simgrid.git] / src / mc / LivenessChecker.cpp
index 7475188..537dd9b 100644 (file)
@@ -30,6 +30,7 @@
 #include "src/mc/mc_safety.h"
 #include "src/mc/mc_exit.h"
 #include "src/mc/Transition.hpp"
+#include "src/mc/Session.hpp"
 
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_liveness, mc,
                                 "Logging specific to algorithms for liveness properties verification");
@@ -158,7 +159,6 @@ void LivenessChecker::removeAcceptancePair(int pair_num)
 
 void LivenessChecker::prepare(void)
 {
-  mc_model_checker->wait_for_requests();
   initial_global_state->snapshot = simgrid::mc::take_snapshot(0);
   initial_global_state->prev_pair = 0;
 
@@ -219,8 +219,7 @@ void LivenessChecker::replay()
           state.get());
       }
 
-      mc_model_checker->handle_simcall(state->transition);
-      mc_model_checker->wait_for_requests();
+      this->getSession().execute(state->transition);
     }
 
     /* Update statistics */
@@ -298,7 +297,7 @@ RecordTrace LivenessChecker::getRecordTrace() // override
 {
   RecordTrace res;
   for (std::shared_ptr<Pair> const& pair : explorationStack_)
-    res.push_back(pair->graph_state->getRecordElement());
+    res.push_back(pair->graph_state->getTransition());
   return res;
 }