summaryrefslogtreecommitdiff
path: root/lld/ELF/InputSection.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2018-04-05 00:01:57 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2018-04-05 00:01:57 +0000
commit1f21fb0fb07bdd22325e6602e717ab27a7d69b3f (patch)
treefaa83debf144c557332a8c285e6d647d4b81e006 /lld/ELF/InputSection.cpp
parent69c711e2b826826446d1d52fc4bd66895163bc38 (diff)
Initialize OffsetMap earlier.
Now that getSectionPiece uses OffsetMap, it is advantageous to initialize it earlier.
Diffstat (limited to 'lld/ELF/InputSection.cpp')
-rw-r--r--lld/ELF/InputSection.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/lld/ELF/InputSection.cpp b/lld/ELF/InputSection.cpp
index 7d0117cd618..5bfd4483c9f 100644
--- a/lld/ELF/InputSection.cpp
+++ b/lld/ELF/InputSection.cpp
@@ -920,6 +920,10 @@ void MergeInputSection::splitIntoPieces() {
else
splitNonStrings(Data, Entsize);
+ OffsetMap.reserve(Pieces.size());
+ for (size_t I = 0, E = Pieces.size(); I != E; ++I)
+ OffsetMap[Pieces[I].InputOff] = I;
+
if (Config->GcSections && (Flags & SHF_ALLOC))
for (uint32_t Off : LiveOffsets)
getSectionPiece(Off)->Live = true;