<div dir="ltr">Thanks.</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jun 21, 2016 at 7:47 AM, Rafael Espindola via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: rafael<br>
Date: Tue Jun 21 09:47:43 2016<br>
New Revision: 273266<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=273266&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=273266&view=rev</a><br>
Log:<br>
Revert "Revert "Add a test showing that lto produces relaxable relocations.""<br>
<br>
This reverts commit r273247.<br>
<br>
lld should always use the new relocations.<br>
<br>
Added:<br>
    lld/trunk/test/ELF/lto/relax-relocs.ll<br>
Modified:<br>
    lld/trunk/ELF/LTO.cpp<br>
<br>
Modified: lld/trunk/ELF/LTO.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/LTO.cpp?rev=273266&r1=273265&r2=273266&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/LTO.cpp?rev=273266&r1=273265&r2=273266&view=diff</a><br>
==============================================================================<br>
--- lld/trunk/ELF/LTO.cpp (original)<br>
+++ lld/trunk/ELF/LTO.cpp Tue Jun 21 09:47:43 2016<br>
@@ -279,6 +279,10 @@ std::vector<std::unique_ptr<InputFile>><br>
   if (!T)<br>
     fatal("target not found: " + Msg);<br>
   TargetOptions Options = InitTargetOptionsFromCodeGenFlags();<br>
+<br>
+  // lld supports the new relocations.<br>
+  Options.RelaxELFRelocations = true;<br>
+<br>
   Reloc::Model R = Config->Pic ? Reloc::PIC_ : Reloc::Static;<br>
<br>
   auto CreateTargetMachine = [&]() {<br>
<br>
Added: lld/trunk/test/ELF/lto/relax-relocs.ll<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/lto/relax-relocs.ll?rev=273266&view=auto" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/lto/relax-relocs.ll?rev=273266&view=auto</a><br>
==============================================================================<br>
--- lld/trunk/test/ELF/lto/relax-relocs.ll (added)<br>
+++ lld/trunk/test/ELF/lto/relax-relocs.ll Tue Jun 21 09:47:43 2016<br>
@@ -0,0 +1,15 @@<br>
+; RUN: llvm-as %s -o %t.o<br>
+; RUN: ld.lld -m elf_x86_64 -save-temps -shared %t.o -o %t.so<br>
+; RUN: llvm-readobj -r %t.so.lto.o | FileCheck %s<br>
+<br>
+; Test that we produce R_X86_64_REX_GOTPCRELX instead of R_X86_64_GOTPCREL<br>
+; CHECK: R_X86_64_REX_GOTPCRELX foo<br>
+<br>
+target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"<br>
+target triple = "x86_64-unknown-linux-gnu"<br>
+<br>
+@foo = external global i32<br>
+define i32 @bar() {<br>
+  %t = load i32, i32* @foo<br>
+  ret i32 %t<br>
+}<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br></div>