40 for (
size_t i = this->
GetSize() - 1; i > 0; i--) {
43 if (
Overlaps(region_one, region_two)) {
50 "Memory region at {0}::{1} has different permssions than "
51 "overlapping region at {2}::{3}",
52 region_one->GetRangeBase(), region_one->GetRangeEnd(),
53 region_two->GetRangeBase(), region_two->GetRangeEnd());
61 std::min(region_one->GetRangeBase(), region_two->GetRangeBase());
63 std::max(region_one->GetRangeEnd(), region_two->GetRangeEnd()) - base;
65 region_two->SetRangeBase(base);
66 region_two->SetByteSize(byte_size);
71 llvm::AddressRange range(base, base + byte_size);
73 range, region_two->data.lldb_permissions};
74 region_two->data = core_range;
76 if (!this->
Erase(i, i + 1)) {
78 "Core file memory ranges mutated outside of "
79 "CalculateCoreFileSaveRanges");