[PATCH] D32336: [ELF] Account for R_386_TLS_LDO_32 addend

Shoaib Meenai via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 24 11:15:06 PDT 2017


This revision was automatically updated to reflect the committed changes.
Closed by commit rL301207: [ELF] Account for R_386_TLS_LDO_32 addend (authored by smeenai).

Changed prior to commit:
  https://reviews.llvm.org/D32336?vs=96093&id=96432#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D32336

Files:
  lld/trunk/ELF/Target.cpp
  lld/trunk/test/ELF/tls-dynamic-i686.s


Index: lld/trunk/ELF/Target.cpp
===================================================================
--- lld/trunk/ELF/Target.cpp
+++ lld/trunk/ELF/Target.cpp
@@ -532,6 +532,7 @@
   case R_386_GOTPC:
   case R_386_PC32:
   case R_386_PLT32:
+  case R_386_TLS_LDO_32:
   case R_386_TLS_LE:
     return SignExtend64<32>(read32le(Buf));
   }
Index: lld/trunk/test/ELF/tls-dynamic-i686.s
===================================================================
--- lld/trunk/test/ELF/tls-dynamic-i686.s
+++ lld/trunk/test/ELF/tls-dynamic-i686.s
@@ -25,7 +25,7 @@
 .align 4
 tls2:
  .long 0
- .size tls2, 4
+ .size tls2, 8
 
 .section .text
 .globl _start
@@ -42,7 +42,7 @@
 
 leal tls2 at tlsldm(%ebx),%eax
 call __tls_get_addr at plt
-leal tls2 at dtpoff(%eax),%edx
+leal tls2 at dtpoff+4(%eax),%edx
 
 movl %gs:0,%eax
 addl tls0 at gotntpoff(%ebx),%eax
@@ -91,7 +91,7 @@
 // DIS-NEXT: 1023: 8d 90 08 00 00 00 leal 8(%eax), %edx
 // DIS-NEXT: 1029: 8d 83 f0 ff ff ff leal -16(%ebx), %eax
 // DIS-NEXT: 102f: e8 3c 00 00 00    calll 60
-// DIS-NEXT: 1034: 8d 90 08 00 00 00 leal 8(%eax), %edx
+// DIS-NEXT: 1034: 8d 90 0c 00 00 00 leal 12(%eax), %edx
 // Initial exec model:
 // DIS-NEXT: 103a: 65 a1 00 00 00 00 movl %gs:0, %eax
 // DIS-NEXT: 1040: 03 83 f8 ff ff ff addl -8(%ebx), %eax


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D32336.96432.patch
Type: text/x-patch
Size: 1263 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170424/cc27a9ce/attachment.bin>


More information about the llvm-commits mailing list