-static void MC_process_refresh_simix_process_list(simgrid::mc::Process* process,
- std::vector<simgrid::mc::ActorInformation>& target,
- simgrid::mc::RemotePtr<s_xbt_swag_t> remote_swag)
-{
- target.clear();
-
- // swag = REMOTE(*simix_global->process_list)
- s_xbt_swag_t swag;
- process->read_bytes(&swag, sizeof(swag), remote_swag);
-
- // Load each element of the vector from the MCed process:
- int i = 0;
- for (smx_actor_t p = (smx_actor_t) swag.head; p; ++i) {
-
- simgrid::mc::ActorInformation info;
- info.address = p;
- info.hostname = nullptr;
- process->read_bytes(&info.copy, sizeof(info.copy), remote(p));
- target.push_back(std::move(info));
-
- // Lookup next process address:
- p = (smx_actor_t) xbt_swag_getNext(&info.copy, swag.offset);
- }
- assert(i == swag.count);
-}
-
-static void MC_process_refresh_simix_actor_dynar(simgrid::mc::Process* process,