Lines Matching defs:End
140 // Start/End - A semi range that describes the span that this range covers.
141 // The range is closed at the start and open at the end: [Start, End).
142 int64_t Start, End;
156 } // end anon namespace
160 if (TheStores.size() >= 4 || End-Start >= 16) return true;
183 // size. If so, check to see whether we will end up actually reducing the
185 unsigned Bytes = unsigned(End-Start);
213 const_iterator end() const { return Ranges.end(); }
240 } // end anon namespace
253 int64_t End = Start+Size;
254 range_iterator I = Ranges.begin(), E = Ranges.end();
256 while (I != E && Start > I->End)
260 // with, or that Start <= I->End. If End < I->Start or I == E, then we need
262 if (I == E || End < I->Start) {
265 R.End = End;
277 if (I->Start <= Start && I->End >= End)
280 // Now we know that Start <= I->End and End >= I->Start so the range overlaps
292 // Now we know that Start <= I->End and Start >= I->Start (so the startpoint
293 // is in or right at the end of I), and that End >= I->Start. Extend I out to
294 // End.
295 if (End > I->End) {
296 I->End = End;
298 while (++NextI != E && End >= NextI->Start) {
300 I->TheStores.append(NextI->TheStores.begin(), NextI->TheStores.end());
301 if (NextI->End > I->End)
302 I->End = NextI->End;
446 for (MemsetRanges::const_iterator I = Ranges.begin(), E = Ranges.end();
469 Builder.CreateMemSet(StartPtr, ByteVal, Range.End-Range.Start, Alignment);
482 SE = Range.TheStores.end(); SI != SE; ++SI) {
667 // the memcpy, and that writing beyond the end of it is undefined.
1033 for (Function::iterator BB = F.begin(), BBE = F.end(); BB != BBE; ++BB) {
1034 for (BasicBlock::iterator BI = BB->begin(), BE = BB->end(); BI != BE;) {