summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lld/ELF/SyntheticSections.cpp5
-rw-r--r--lld/ELF/SyntheticSections.h2
2 files changed, 4 insertions, 3 deletions
diff --git a/lld/ELF/SyntheticSections.cpp b/lld/ELF/SyntheticSections.cpp
index 51e0fc45d44..2e2fc7331bd 100644
--- a/lld/ELF/SyntheticSections.cpp
+++ b/lld/ELF/SyntheticSections.cpp
@@ -217,7 +217,7 @@ BuildIdSection<ELFT>::BuildIdSection(size_t HashSize)
HashSize(HashSize) {
this->Live = true;
- Buf.resize(16 + HashSize);
+ Buf.resize(HeaderSize + HashSize);
const endianness E = ELFT::TargetEndianness;
write32<E>(Buf.data(), 4); // Name size
write32<E>(Buf.data() + 4, HashSize); // Content size
@@ -229,8 +229,7 @@ BuildIdSection<ELFT>::BuildIdSection(size_t HashSize)
// Returns the location of the build-id hash value in the output.
template <class ELFT>
uint8_t *BuildIdSection<ELFT>::getOutputLoc(uint8_t *Start) const {
- // First 16 bytes are a header.
- return Start + this->OutSec->Offset + this->OutSecOff + 16;
+ return Start + this->OutSec->Offset + this->OutSecOff + HeaderSize;
}
// Split one uint8 array into small pieces of uint8 arrays.
diff --git a/lld/ELF/SyntheticSections.h b/lld/ELF/SyntheticSections.h
index 4910293ae00..4e204be372a 100644
--- a/lld/ELF/SyntheticSections.h
+++ b/lld/ELF/SyntheticSections.h
@@ -95,6 +95,8 @@ protected:
std::function<void(ArrayRef<uint8_t> Arr, uint8_t *Hash)> Hash);
size_t HashSize;
+ // First 16 bytes are a header.
+ static const unsigned HeaderSize = 16;
};
template <class ELFT>
OpenPOWER on IntegriCloud