Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use method get() instead of &* for intrusive_ptr.
[simgrid.git] / src / mc / mc_snapshot.hpp
index 686019f..12325d1 100644 (file)
@@ -46,8 +46,7 @@ static XBT_ALWAYS_INLINE void* mc_translate_address_region(uintptr_t addr, mc_me
       simgrid::mc::RegionSnapshot& subregion = region->privatized_data()[process_index];
       return mc_translate_address_region(addr, &subregion, process_index);
     }
-    case simgrid::mc::StorageType::NoData:
-    default:
+    default: // includes StorageType::NoData
       xbt_die("Storage type not supported");
   }
 }
@@ -191,10 +190,6 @@ static XBT_ALWAYS_INLINE const void* MC_region_read(mc_mem_region_t region, void
   xbt_assert(region->contain(simgrid::mc::remote(addr)), "Trying to read out of the region boundary.");
 
   switch (region->storage_type()) {
-    case simgrid::mc::StorageType::NoData:
-    default:
-      xbt_die("Storage type not supported");
-
     case simgrid::mc::StorageType::Flat:
       return (char*)region->flat_data().get() + offset;
 
@@ -204,15 +199,14 @@ static XBT_ALWAYS_INLINE const void* MC_region_read(mc_mem_region_t region, void
       if (simgrid::mc::mmu::sameChunk((std::uintptr_t)addr, (std::uintptr_t)end)) {
         // The memory is contained in a single page:
         return mc_translate_address_region_chunked((uintptr_t)addr, region);
-      } else {
-        // The memory spans several pages:
-        return MC_region_read_fragmented(region, target, addr, size);
       }
+      // Otherwise, the memory spans several pages:
+      return MC_region_read_fragmented(region, target, addr, size);
     }
 
-    // We currently do not pass the process_index to this function so we assume
-    // that the privatized region has been resolved in the callers:
-    case simgrid::mc::StorageType::Privatized:
+    default:
+      // includes StorageType::NoData and StorageType::Privatized (we currently do not pass the process_index to this
+      // function so we assume that the privatized region has been resolved in the callers)
       xbt_die("Storage type not supported");
   }
 }