diff options
author | 2017-02-25 10:21:52 +0000 | |
---|---|---|
committer | 2017-02-25 10:21:52 +0000 | |
commit | a42ebde17ee65ad99b77ac7412d1c41d1d477650 (patch) | |
tree | 0116b9cb9a2fcfb810f2d89549efe5c06460793e | |
parent | Add missing includes to avoid implicit function declarations. (diff) | |
download | wireguard-openbsd-a42ebde17ee65ad99b77ac7412d1c41d1d477650.tar.xz wireguard-openbsd-a42ebde17ee65ad99b77ac7412d1c41d1d477650.zip |
Make sure the .eh_frame ends with a terminator. This avoids creating a
zero-sized .eh_frame section, which confuses the strip from our
frankenbinutils.
With this diff lld seems to be usable as the arm64 system linker.
ok patrick@, jsg@
-rw-r--r-- | gnu/llvm/tools/lld/ELF/OutputSections.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gnu/llvm/tools/lld/ELF/OutputSections.cpp b/gnu/llvm/tools/lld/ELF/OutputSections.cpp index 7c708ce4ed6..edcc0f186b3 100644 --- a/gnu/llvm/tools/lld/ELF/OutputSections.cpp +++ b/gnu/llvm/tools/lld/ELF/OutputSections.cpp @@ -394,7 +394,7 @@ template <class ELFT> void EhOutputSection<ELFT>::finalize() { Off += alignTo(Fde->size(), sizeof(uintX_t)); } } - this->Size = Off; + this->Size = Off + 4; } template <class ELFT> static uint64_t readFdeAddr(uint8_t *Buf, int Size) { |