Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:ranges

41   size_t Len = ranges.size();
58 ranges.push_back(LiveRange(Def, Def.getDeadSlot(), VNI));
76 ranges.insert(I, LiveRange(Def, Def.getDeadSlot(), VNI));
111 if (i != ranges.begin()) --i;
117 if (j != other.ranges.begin()) --j;
220 /// merge and eliminate all ranges that this will overlap with. The iterator is
222 void LiveInterval::extendIntervalEndTo(Ranges::iterator I, SlotIndex NewEnd) {
223 assert(I != ranges.end() && "Not a valid interval!");
227 Ranges::iterator MergeTo = llvm::next(I);
228 for (; MergeTo != ranges.end() && NewEnd >= MergeTo->end; ++MergeTo) {
236 // the same value number, merge the two ranges into one range.
237 if (MergeTo != ranges.end() && MergeTo->start <= I->end &&
243 // Erase any dead ranges.
244 ranges.erase(llvm::next(I), MergeTo);
250 /// merge and eliminate all ranges that this will overlap with.
251 LiveInterval::Ranges::iterator
252 LiveInterval::extendIntervalStartTo(Ranges::iterator I, SlotIndex NewStart) {
253 assert(I != ranges.end() && "Not a valid interval!");
257 Ranges::iterator MergeTo = I;
259 if (MergeTo == ranges.begin()) {
261 ranges.erase(MergeTo, I);
279 ranges.erase(llvm::next(MergeTo), llvm::next(I));
286 iterator it = std::upper_bound(From, ranges.end(), Start);
290 if (it != ranges.begin()) {
298 // Check to make sure that we are not overlapping two live ranges with
308 if (it != ranges.end()) {
320 // Check to make sure that we are not overlapping two live ranges with
329 return ranges.insert(it, LR);
354 Ranges::iterator I = find(Start);
355 assert(I != ranges.end() && "Range is not in interval!");
376 ranges.erase(I); // Removed the whole LiveRange.
394 ranges.insert(llvm::next(I), LiveRange(End, OldEnd, ValNo));
397 /// removeValNo - Remove all the ranges defined by the specified value#.
401 Ranges::iterator I = ranges.end();
402 Ranges::iterator E = ranges.begin();
406 ranges.erase(I);
462 // If we merge some live ranges, chop off the end.
464 ranges.erase(OutIt, end());
490 ranges into the LHS.
507 /// MergeValueInAsValue - Merge all of the live ranges of a specific val#
511 /// live ranges with the specified value number.
539 // Merge V1 live ranges into V2.
552 ranges.erase(LR);
562 // If we can merge it into later V2 live ranges, do so now. We ignore any
563 // following V1 live ranges, as they will be merged in subsequent iterations
568 ranges.erase(I);
601 for (LiveInterval::Ranges::const_iterator I = ranges.begin(),
602 E = ranges.end(); I != E; ++I) {
715 assert(A.start <= B.start && "Unordered live ranges.");
793 LI->ranges.push_back(Seg);
794 WriteI = ReadI = LI->ranges.end();
834 LI->ranges.erase(WriteI, ReadI);
844 LI->ranges.insert(ReadI, Spills.size() - GapSize, LiveRange());
846 WriteI = LI->ranges.begin() + WritePos;
849 LI->ranges.erase(WriteI + Spills.size(), ReadI);
930 LIV[eq]->ranges.push_back(*I);
934 LI.ranges.erase(J, E);