summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lld/ELF/OutputSections.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/lld/ELF/OutputSections.cpp b/lld/ELF/OutputSections.cpp
index 83a45bac26e..d1495cf701f 100644
--- a/lld/ELF/OutputSections.cpp
+++ b/lld/ELF/OutputSections.cpp
@@ -140,16 +140,14 @@ template <class ELFT> void RelocationSection<ELFT>::writeTo(uint8_t *Buf) {
OrigAddend = static_cast<const Elf_Rela &>(RI).r_addend;
uintX_t Addend;
- if (CanBePreempted) {
+ if (CanBePreempted)
Addend = OrigAddend;
- } else {
- if (Body)
- Addend = getSymVA<ELFT>(cast<ELFSymbolBody<ELFT>>(*Body)) + OrigAddend;
- else if (IsRela)
- Addend = getLocalRelTarget(File, static_cast<const Elf_Rela &>(RI));
- else
- Addend = getLocalRelTarget(File, RI);
- }
+ else if (Body)
+ Addend = getSymVA<ELFT>(cast<ELFSymbolBody<ELFT>>(*Body)) + OrigAddend;
+ else if (IsRela)
+ Addend = getLocalRelTarget(File, static_cast<const Elf_Rela &>(RI));
+ else
+ Addend = getLocalRelTarget(File, RI);
if (IsRela)
static_cast<Elf_Rela *>(P)->r_addend = Addend;
OpenPOWER on IntegriCloud