[lld] r255626 - [ELF] - refactor of code in RelocationSection<ELFT>::writeTo()

George Rimar via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 15 00:23:08 PST 2015


Author: grimar
Date: Tue Dec 15 02:23:08 2015
New Revision: 255626

URL: http://llvm.org/viewvc/llvm-project?rev=255626&view=rev
Log:
[ELF] - refactor of code in RelocationSection<ELFT>::writeTo()

Just a little reformat of 'if' conditions, NFC.

Differential revision: http://reviews.llvm.org/D15453

Modified:
    lld/trunk/ELF/OutputSections.cpp

Modified: lld/trunk/ELF/OutputSections.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/OutputSections.cpp?rev=255626&r1=255625&r2=255626&view=diff
==============================================================================
--- lld/trunk/ELF/OutputSections.cpp (original)
+++ lld/trunk/ELF/OutputSections.cpp Tue Dec 15 02:23:08 2015
@@ -264,21 +264,19 @@ template <class ELFT> void RelocationSec
     bool LazyReloc = Body && Target->supportsLazyRelocations() &&
                      Target->relocNeedsPlt(Type, *Body);
 
-    if (CanBePreempted) {
-      unsigned GotReloc =
-          Body->isTLS() ? Target->getTlsGotReloc() : Target->getGotReloc();
-      if (NeedsGot)
-        P->setSymbolAndType(Body->getDynamicSymbolTableIndex(),
-                            LazyReloc ? Target->getPltReloc() : GotReloc,
-                            Config->Mips64EL);
-      else
-        P->setSymbolAndType(Body->getDynamicSymbolTableIndex(),
-                            NeedsCopy ? Target->getCopyReloc()
-                                      : Target->getDynReloc(Type),
-                            Config->Mips64EL);
-    } else {
-      P->setSymbolAndType(0, Target->getRelativeReloc(), Config->Mips64EL);
-    }
+    unsigned Sym = CanBePreempted ? Body->getDynamicSymbolTableIndex() : 0;
+    unsigned Rel;
+    if (!CanBePreempted)
+      Rel = Target->getRelativeReloc();
+    else if (LazyReloc)
+      Rel = Target->getPltReloc();
+    else if (NeedsGot)
+      Rel = Body->isTLS() ? Target->getTlsGotReloc() : Target->getGotReloc();
+    else if (NeedsCopy)
+      Rel = Target->getCopyReloc();
+    else
+      Rel = Target->getDynReloc(Type);
+    P->setSymbolAndType(Sym, Rel, Config->Mips64EL);
 
     if (NeedsGot) {
       if (LazyReloc)




More information about the llvm-commits mailing list