namespace simgrid {
namespace mc {
+static inline
+const char* to_cstr(RegionType region)
+{
+ switch (region) {
+ case RegionType::Unknown:
+ return "unknown";
+ case RegionType::Heap:
+ return "Heap";
+ case RegionType::Data:
+ return "Data";
+ default:
+ return "?";
+ }
+}
+
RegionSnapshot dense_region(
- mc_region_type_t region_type,
+ RegionType region_type,
void *start_addr, void* permanent_addr, size_t size)
{
std::vector<char> data(size);
region_type, start_addr, permanent_addr, size);
region.flat_data(std::move(data));
- XBT_DEBUG("New region : type : %d, data : %p (real addr %p), size : %zu",
- region_type, region.flat_data().data(), permanent_addr, size);
+ XBT_DEBUG("New region : type : %s, data : %p (real addr %p), size : %zu",
+ to_cstr(region_type), region.flat_data().data(), permanent_addr, size);
return std::move(region);
}
* @param size Size of the data*
*/
RegionSnapshot region(
- mc_region_type_t type, void *start_addr, void* permanent_addr, size_t size)
+ RegionType type, void *start_addr, void* permanent_addr, size_t size)
{
if (_sg_mc_sparse_checkpoint) {
return sparse_region(type, start_addr, permanent_addr, size);
}
}
-RegionSnapshot sparse_region(mc_region_type_t region_type,
+RegionSnapshot sparse_region(RegionType region_type,
void *start_addr, void* permanent_addr, size_t size)
{
- mc_process_t process = &mc_model_checker->process();
+ simgrid::mc::Process* process = &mc_model_checker->process();
xbt_assert((((uintptr_t)start_addr) & (xbt_pagesize-1)) == 0,
"Not at the beginning of a page");