void* data1 =
mc_snapshot_read_region(real_area1, region1, alloca(type->byte_size), type->byte_size);
void* data2 =
- mc_snapshot_read_region(real_area2, region1, alloca(type->byte_size), type->byte_size);
+ mc_snapshot_read_region(real_area2, region2, alloca(type->byte_size), type->byte_size);
return (memcmp(data1, data2, type->byte_size) != 0);
break;
}
case DW_TAG_reference_type:
case DW_TAG_rvalue_reference_type:
{
- void* temp;
- void* addr_pointed1 = *(void**) mc_snapshot_read_region(real_area1, region1, &temp, sizeof(void**));
- void* addr_pointed2 = *(void**) mc_snapshot_read_region(real_area2, region2, &temp, sizeof(void**));
+ void* addr_pointed1 = mc_snapshot_read_pointer_region(real_area1, region1);
+ void* addr_pointed2 = mc_snapshot_read_pointer_region(real_area2, region2);
if (type->subtype && type->subtype->type == DW_TAG_subroutine_type) {
return (addr_pointed1 != addr_pointed2);
mc_mem_region_t r2, mc_snapshot_t snapshot1,
mc_snapshot_t snapshot2)
{
+ xbt_assert(r1 && r2,
+ "Missing region. Did you enable SMPI privatisation? It is not compatible with state comparison.");
struct mc_compare_state state;
xbt_dynar_t variables;