[lld] r329107 - Instead of using std::copy, clear the vector first and add new elements. NFC.
Rui Ueyama via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 3 13:08:46 PDT 2018
Author: ruiu
Date: Tue Apr 3 13:08:45 2018
New Revision: 329107
URL: http://llvm.org/viewvc/llvm-project?rev=329107&view=rev
Log:
Instead of using std::copy, clear the vector first and add new elements. NFC.
Differential Revision: https://reviews.llvm.org/D45227
Modified:
lld/trunk/ELF/Writer.cpp
Modified: lld/trunk/ELF/Writer.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Writer.cpp?rev=329107&r1=329106&r2=329107&view=diff
==============================================================================
--- lld/trunk/ELF/Writer.cpp (original)
+++ lld/trunk/ELF/Writer.cpp Tue Apr 3 13:08:45 2018
@@ -1137,24 +1137,23 @@ sortISDBySectionOrder(InputSectionDescri
// of the second block of cold code can call the hot code without a thunk. So
// we effectively double the amount of code that could potentially call into
// the hot code without a thunk.
- size_t UnorderedInsPt = 0;
+ size_t InsPt = 0;
if (Target->ThunkSectionSpacing && !OrderedSections.empty()) {
uint64_t UnorderedPos = 0;
- for (; UnorderedInsPt != UnorderedSections.size(); ++UnorderedInsPt) {
- UnorderedPos += UnorderedSections[UnorderedInsPt]->getSize();
+ for (; InsPt != UnorderedSections.size(); ++InsPt) {
+ UnorderedPos += UnorderedSections[InsPt]->getSize();
if (UnorderedPos > UnorderedSize / 2)
break;
}
}
- std::copy(UnorderedSections.begin(),
- UnorderedSections.begin() + UnorderedInsPt, ISD->Sections.begin());
- std::vector<InputSection *>::iterator SectionsPos =
- ISD->Sections.begin() + UnorderedInsPt;
+ ISD->Sections.clear();
+ for (InputSection *IS : makeArrayRef(UnorderedSections).slice(0, InsPt))
+ ISD->Sections.push_back(IS);
for (std::pair<InputSection *, int> P : OrderedSections)
- *SectionsPos++ = P.first;
- std::copy(UnorderedSections.begin() + UnorderedInsPt, UnorderedSections.end(),
- SectionsPos);
+ ISD->Sections.push_back(P.first);
+ for (InputSection *IS : makeArrayRef(UnorderedSections).slice(InsPt))
+ ISD->Sections.push_back(IS);
}
static void sortSection(OutputSection *Sec,
More information about the llvm-commits
mailing list