- std::vector<std::string> res;
- for (xbt_fifo_item_t item = xbt_fifo_get_last_item(mc_stack);
- item; item = xbt_fifo_get_prev_item(item)) {
- simgrid::mc::State* state = (simgrid::mc::State*)xbt_fifo_get_item_content(item);
- int value;
- smx_simcall_t req = MC_state_get_executed_request(state, &value);
- if (req) {
- char* req_str = simgrid::mc::request_to_string(
- req, value, simgrid::mc::RequestType::executed);
- res.push_back(req_str);
- xbt_free(req_str);
- }
+ Checker::logState();
+ if (_sg_mc_comms_determinism &&
+ !simgrid::mc::initial_global_state->recv_deterministic &&
+ simgrid::mc::initial_global_state->send_deterministic) {
+ XBT_INFO("******************************************************");
+ XBT_INFO("**** Only-send-deterministic communication pattern ****");
+ XBT_INFO("******************************************************");
+ XBT_INFO("%s", simgrid::mc::initial_global_state->recv_diff);
+ } else if(_sg_mc_comms_determinism &&
+ !simgrid::mc::initial_global_state->send_deterministic &&
+ simgrid::mc::initial_global_state->recv_deterministic) {
+ XBT_INFO("******************************************************");
+ XBT_INFO("**** Only-recv-deterministic communication pattern ****");
+ XBT_INFO("******************************************************");
+ XBT_INFO("%s", simgrid::mc::initial_global_state->send_diff);