*
* @param region Target region
*/
-static void restore(mc_mem_region_t region)
+static void restore(RegionSnapshot* region)
{
switch (region->storage_type()) {
case simgrid::mc::StorageType::Flat:
const size_t n = process->object_infos.size();
snapshot->snapshot_regions.resize(n + 1);
int i = 0;
- for (auto const& object_info : process->object_infos)
- add_region(i++, snapshot, simgrid::mc::RegionType::Data, object_info.get(), object_info->start_rw,
+ for (auto const& object_info : process->object_infos) {
+ add_region(i, snapshot, simgrid::mc::RegionType::Data, object_info.get(), object_info->start_rw,
object_info->start_rw, object_info->end_rw - object_info->start_rw);
+ ++i;
+ }
xbt_mheap_t heap = process->get_heap();
void* start_heap = heap->base;
static inline void restore_snapshot_regions(simgrid::mc::Snapshot* snapshot)
{
- for (std::unique_ptr<s_mc_mem_region_t> const& region : snapshot->snapshot_regions) {
+ for (std::unique_ptr<simgrid::mc::RegionSnapshot> const& region : snapshot->snapshot_regions) {
// For privatized, variables we decided it was not necessary to take the snapshot:
if (region)
restore(region.get());