summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2016-03-13 05:23:40 +0000
committerRui Ueyama <ruiu@google.com>2016-03-13 05:23:40 +0000
commit614be596926564664f1e01cfd33372bdbc69c5d8 (patch)
tree30e251198938cdea0da2a6e06ae916065f4aedec
parentcb5af451b3d92ae57d04edf35303236a4679ef89 (diff)
downloadbcm5719-llvm-614be596926564664f1e01cfd33372bdbc69c5d8.tar.gz
bcm5719-llvm-614be596926564664f1e01cfd33372bdbc69c5d8.zip
Simplify. NFC.
llvm-svn: 263373
-rw-r--r--lld/ELF/OutputSections.cpp13
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);
OpenPOWER on IntegriCloud