Lines Matching refs:end
10 int add_range(struct range *range, int az, int nr_range, u64 start, u64 end)
12 if (start >= end)
20 range[nr_range].end = end;
28 u64 start, u64 end)
32 if (start >= end)
40 if (!range[i].end)
44 common_end = min(range[i].end, end);
49 final_end = max(range[i].end, end);
52 range[i].end = final_end;
57 return add_range(range, az, nr_range, start, end);
60 void subtract_range(struct range *range, int az, u64 start, u64 end)
64 if (start >= end)
68 if (!range[j].end)
71 if (start <= range[j].start && end >= range[j].end) {
73 range[j].end = 0;
77 if (start <= range[j].start && end < range[j].end &&
78 range[j].start < end) {
79 range[j].start = end;
84 if (start > range[j].start && end >= range[j].end &&
85 range[j].end > start) {
86 range[j].end = start;
90 if (start > range[j].start && end < range[j].end) {
93 if (range[i].end == 0)
97 range[i].end = range[j].end;
98 range[i].start = end;
102 range[j].end = start;
125 if (range[i].end)
128 if (range[j].end) {
136 range[i].end = range[k].end;
138 range[k].end = 0;
143 if (!range[i].end) {