summaryrefslogtreecommitdiffstats
path: root/lld/ELF/SyntheticSections.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lld/ELF/SyntheticSections.cpp')
-rw-r--r--lld/ELF/SyntheticSections.cpp23
1 files changed, 8 insertions, 15 deletions
diff --git a/lld/ELF/SyntheticSections.cpp b/lld/ELF/SyntheticSections.cpp
index fca7d2ca2bd..d00bba1c266 100644
--- a/lld/ELF/SyntheticSections.cpp
+++ b/lld/ELF/SyntheticSections.cpp
@@ -377,17 +377,10 @@ void BuildIdSection<ELFT>::computeHash(
}
template <class ELFT>
-BssRelSection<ELFT>::BssRelSection(bool RelRo)
- : SyntheticSection(SHF_ALLOC | SHF_WRITE, SHT_NOBITS, 0,
- RelRo ? ".bss.rel.ro" : ".bss"),
- Size(0) {}
-
-template <class ELFT>
-size_t BssRelSection<ELFT>::addCopyRelocation(uintX_t AddrAlign, size_t Size) {
- OutSec->updateAlignment(AddrAlign);
- this->Size = alignTo(this->Size, AddrAlign) + Size;
- return this->Size - Size;
-}
+CopyRelSection<ELFT>::CopyRelSection(bool ReadOnly, uintX_t AddrAlign, size_t S)
+ : SyntheticSection(SHF_ALLOC, SHT_NOBITS, AddrAlign,
+ ReadOnly ? ".bss.rel.ro" : ".bss"),
+ Size(S) {}
template <class ELFT>
void BuildIdSection<ELFT>::writeBuildId(ArrayRef<uint8_t> Buf) {
@@ -2311,10 +2304,10 @@ template class elf::BuildIdSection<ELF32BE>;
template class elf::BuildIdSection<ELF64LE>;
template class elf::BuildIdSection<ELF64BE>;
-template class elf::BssRelSection<ELF32LE>;
-template class elf::BssRelSection<ELF32BE>;
-template class elf::BssRelSection<ELF64LE>;
-template class elf::BssRelSection<ELF64BE>;
+template class elf::CopyRelSection<ELF32LE>;
+template class elf::CopyRelSection<ELF32BE>;
+template class elf::CopyRelSection<ELF64LE>;
+template class elf::CopyRelSection<ELF64BE>;
template class elf::GotSection<ELF32LE>;
template class elf::GotSection<ELF32BE>;
OpenPOWER on IntegriCloud