diff options
author | Rui Ueyama <ruiu@google.com> | 2016-03-13 05:23:40 +0000 |
---|---|---|
committer | Rui Ueyama <ruiu@google.com> | 2016-03-13 05:23:40 +0000 |
commit | 614be596926564664f1e01cfd33372bdbc69c5d8 (patch) | |
tree | 30e251198938cdea0da2a6e06ae916065f4aedec | |
parent | cb5af451b3d92ae57d04edf35303236a4679ef89 (diff) | |
download | bcm5719-llvm-614be596926564664f1e01cfd33372bdbc69c5d8.tar.gz bcm5719-llvm-614be596926564664f1e01cfd33372bdbc69c5d8.zip |
Simplify. NFC.
llvm-svn: 263373
-rw-r--r-- | lld/ELF/OutputSections.cpp | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/lld/ELF/OutputSections.cpp b/lld/ELF/OutputSections.cpp index 1f72e123cd3..d237f33033c 100644 --- a/lld/ELF/OutputSections.cpp +++ b/lld/ELF/OutputSections.cpp @@ -261,19 +261,12 @@ typename ELFFile<ELFT>::uintX_t DynamicReloc<ELFT>::getOffset() const { template <class ELFT> void RelocationSection<ELFT>::writeTo(uint8_t *Buf) { for (const DynamicReloc<ELFT> &Rel : Relocs) { - auto *P = reinterpret_cast<Elf_Rel *>(Buf); + auto *P = reinterpret_cast<Elf_Rela *>(Buf); Buf += IsRela ? sizeof(Elf_Rela) : sizeof(Elf_Rel); SymbolBody *Sym = Rel.Sym; - if (IsRela) { - uintX_t VA; - if (Rel.UseSymVA) - VA = Sym->getVA<ELFT>(Rel.Addend); - else - VA = Rel.Addend; - reinterpret_cast<Elf_Rela *>(P)->r_addend = VA; - } - + if (IsRela) + P->r_addend = Rel.UseSymVA ? Sym->getVA<ELFT>(Rel.Addend) : Rel.Addend; P->r_offset = Rel.getOffset(); uint32_t SymIdx = (!Rel.UseSymVA && Sym) ? Sym->DynsymIndex : 0; P->setSymbolAndType(SymIdx, Rel.Type, Config->Mips64EL); |