Fix handling of addends on i386.
Because of merge sections it is not sufficient to just add them while
applying a relocation.
llvm-svn: 264863
diff --git a/lld/ELF/InputSection.cpp b/lld/ELF/InputSection.cpp
index d79aad8..119367a 100644
--- a/lld/ELF/InputSection.cpp
+++ b/lld/ELF/InputSection.cpp
@@ -274,6 +274,8 @@
continue;
}
+ if (!RelTy::IsRela)
+ A += Target->getImplicitAddend(BufLoc, Type);
uintX_t SymVA = Body.getVA<ELFT>(A);
if (Config->EMachine == EM_MIPS)
A += findMipsPairedAddend(Buf, BufLoc, Body, &RI, Rels.end());