summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lld/ELF/OutputSections.cpp3
-rw-r--r--lld/ELF/Relocations.cpp1
-rw-r--r--lld/ELF/Writer.cpp1
3 files changed, 1 insertions, 4 deletions
diff --git a/lld/ELF/OutputSections.cpp b/lld/ELF/OutputSections.cpp
index af96052e3df..1901af20ea8 100644
--- a/lld/ELF/OutputSections.cpp
+++ b/lld/ELF/OutputSections.cpp
@@ -87,7 +87,6 @@ static bool compareByFilePosition(InputSection *A, InputSection *B) {
template <class ELFT> void OutputSection::finalize() {
if ((this->Flags & SHF_LINK_ORDER) && !this->Sections.empty()) {
std::sort(Sections.begin(), Sections.end(), compareByFilePosition<ELFT>);
- Size = 0;
assignOffsets<ELFT>();
// We must preserve the link order dependency of sections with the
@@ -133,7 +132,7 @@ void OutputSection::addSection(InputSectionBase *C) {
// This function is called after we sort input sections
// and scan relocations to setup sections' offsets.
template <class ELFT> void OutputSection::assignOffsets() {
- uint64_t Off = this->Size;
+ uint64_t Off = 0;
for (InputSection *S : Sections) {
Off = alignTo(Off, S->Alignment);
S->OutSecOff = Off;
diff --git a/lld/ELF/Relocations.cpp b/lld/ELF/Relocations.cpp
index 6bc8748fee5..63cc8a29af6 100644
--- a/lld/ELF/Relocations.cpp
+++ b/lld/ELF/Relocations.cpp
@@ -886,7 +886,6 @@ static void mergeThunks(OutputSection *OS,
std::merge(OS->Sections.begin(), OS->Sections.end(), Thunks.begin(),
Thunks.end(), std::back_inserter(Tmp), MergeCmp);
OS->Sections = std::move(Tmp);
- OS->Size = 0;
OS->assignOffsets<ELFT>();
}
diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp
index 8045e086ffa..f834d3ea916 100644
--- a/lld/ELF/Writer.cpp
+++ b/lld/ELF/Writer.cpp
@@ -1025,7 +1025,6 @@ static void finalizeSynthetic(const std::vector<SyntheticSection *> &Sections) {
for (SyntheticSection *SS : Sections)
if (SS && SS->OutSec && !SS->empty()) {
SS->finalizeContents();
- SS->OutSec->Size = 0;
SS->OutSec->template assignOffsets<ELFT>();
}
}
OpenPOWER on IntegriCloud