Lines Matching refs:begin

103   void segregate(size_t begin, size_t end, uint32_t eqClassBase, bool constant);
116 size_t findBoundary(size_t begin, size_t end);
118 void forEachClassRange(size_t begin, size_t end,
198 void ICF<ELFT>::segregate(size_t begin, size_t end, uint32_t eqClassBase, in segregate() argument
208 while (begin < end) { in segregate()
212 std::stable_partition(sections.begin() + begin + 1, in segregate()
213 sections.begin() + end, [&](InputSection *s) { in segregate()
215 return equalsConstant(sections[begin], s); in segregate()
216 return equalsVariable(sections[begin], s); in segregate()
218 size_t mid = bound - sections.begin(); in segregate()
224 for (size_t i = begin; i < mid; ++i) in segregate()
231 begin = mid; in segregate()
380 template <class ELFT> size_t ICF<ELFT>::findBoundary(size_t begin, size_t end) { in findBoundary() argument
381 uint32_t eqClass = sections[begin]->eqClass[current]; in findBoundary()
382 for (size_t i = begin + 1; i < end; ++i) in findBoundary()
394 void ICF<ELFT>::forEachClassRange(size_t begin, size_t end, in forEachClassRange() argument
396 while (begin < end) { in forEachClassRange()
397 size_t mid = findBoundary(begin, end); in forEachClassRange()
398 fn(begin, mid); in forEachClassRange()
399 begin = mid; in forEachClassRange()
523 forEachClass([&](size_t begin, size_t end) { in run() argument
524 segregate(begin, end, eqClassBase, true); in run()
530 forEachClass([&](size_t begin, size_t end) { in run() argument
531 segregate(begin, end, eqClassBase, false); in run()
538 forEachClassRange(0, sections.size(), [&](size_t begin, size_t end) { in run() argument
539 if (end - begin == 1) in run()
541 print("selected section " + toString(sections[begin])); in run()
542 for (size_t i = begin + 1; i < end; ++i) { in run()
544 sections[begin]->replace(sections[i]); in run()