Lines Matching defs:ranges

42 remove_range_index(addr_range* ranges, uint32& numRanges, uint32 index)
50 memmove(&ranges[index], &ranges[index + 1],
58 It will extend existing ranges in order to have as little
59 ranges in the array as possible.
64 insert_address_range(addr_range* ranges, uint32* _numRanges, uint32 maxRanges,
74 uint64 rangeStart = ranges[i].start;
75 uint64 rangeEnd = rangeStart + ranges[i].size;
78 // ranges don't intersect or touch each other
88 ranges[i].start = start;
89 ranges[i].size += rangeStart - start;
91 if (end > ranges[i].start + ranges[i].size) {
93 ranges[i].size = end - ranges[i].start;
96 // join ranges if possible
102 rangeStart = ranges[i].start;
103 rangeEnd = rangeStart + ranges[i].size;
104 uint64 joinStart = ranges[j].start;
105 uint64 joinEnd = joinStart + ranges[j].size;
111 ranges[i].size += rangeStart - joinStart;
112 ranges[i].start = joinStart;
115 remove_range_index(ranges, numRanges, j--);
118 ranges[i].size += joinEnd - rangeEnd;
120 remove_range_index(ranges, numRanges, j--);
133 ranges[numRanges].start = (uint64)start;
134 ranges[numRanges].size = size;
142 remove_address_range(addr_range* ranges, uint32* _numRanges, uint32 maxRanges,
151 uint64 rangeStart = ranges[i].start;
152 uint64 rangeEnd = rangeStart + ranges[i].size;
159 remove_range_index(ranges, numRanges, i);
163 ranges[i].start = end;
164 ranges[i].size = rangeEnd - end;
169 ranges[i].size = start - rangeStart;
176 ranges[i].size = start - rangeStart;
177 return insert_address_range(ranges, _numRanges, maxRanges, end,
188 get_free_address_range(addr_range* ranges, uint32 numRanges, uint64 base,
195 // Note: We don't assume that the ranges are sorted, so we can't do this
200 uint64 rangeStart = ranges[i].start;
201 uint64 rangeEnd = ranges[i].start + ranges[i].size - 1;
222 is_address_range_covered(addr_range* ranges, uint32 numRanges, uint64 base,
225 // Note: We don't assume that the ranges are sorted, so we can't do this
230 uint64 rangeStart = ranges[i].start;
231 uint64 rangeSize = ranges[i].size;
252 total_address_ranges_size(addr_range* ranges, uint32 numRanges)
256 total += ranges[i].size;
262 sort_address_ranges(addr_range* ranges, uint32 numRanges)
270 if (ranges[i].start < ranges[i - 1].start) {
273 memcpy(&tempRange, &ranges[i], sizeof(addr_range));
274 memcpy(&ranges[i], &ranges[i - 1], sizeof(addr_range));
275 memcpy(&ranges[i - 1], &tempRange, sizeof(addr_range));