aboutsummaryrefslogtreecommitdiff
path: root/ELF/InputFiles.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-07-29 21:30:27 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-07-29 21:30:27 +0000
commit9e3ca9b3ba1e0fdf794978cb8c8ae386aad936ad (patch)
tree520d351b4ea72ceaff73c29410c126db55bdabef /ELF/InputFiles.cpp
parentda06c7cfa0388de29a4024d8d386e48f2fb13ed6 (diff)
downloadsrc-vendor/lld/lld-release_50-r309439.tar.gz
src-vendor/lld/lld-release_50-r309439.zip
Vendor import of lld release_50 branch r309439:vendor/lld/lld-release_50-r310316vendor/lld/lld-release_50-r309439
Diffstat (limited to 'ELF/InputFiles.cpp')
-rw-r--r--ELF/InputFiles.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/ELF/InputFiles.cpp b/ELF/InputFiles.cpp
index d3c307d5cb6b..c609615fcc2e 100644
--- a/ELF/InputFiles.cpp
+++ b/ELF/InputFiles.cpp
@@ -91,8 +91,7 @@ template <class ELFT> void elf::ObjectFile<ELFT>::initializeDwarfLine() {
template <class ELFT>
Optional<DILineInfo> elf::ObjectFile<ELFT>::getDILineInfo(InputSectionBase *S,
uint64_t Offset) {
- if (!DwarfLine)
- initializeDwarfLine();
+ llvm::call_once(InitDwarfLine, [this]() { initializeDwarfLine(); });
// The offset to CU is 0.
const DWARFDebugLine::LineTable *Tbl = DwarfLine->getLineTable(0);