summaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2013-06-28 15:07:54 +0000
committerH.J. Lu <hjl.tools@gmail.com>2013-06-28 15:07:54 +0000
commitc9c3ccf2f5c2bad2516b522c6ad7cd29cc66d21c (patch)
tree3e1247be3f84dadc84a0c76dc821ca5530e528e2 /bfd
parent4395b290c3931fe0c39c50547042c072b0892196 (diff)
downloadbinutils-redhat-c9c3ccf2f5c2bad2516b522c6ad7cd29cc66d21c.tar.gz
Handle R_X86_64_DTPOFF64
bfd/ PR ld/15685 * elf64-x86-64.c (elf_x86_64_relocate_section): Handle R_X86_64_DTPOFF64. ld/testsuite/ PR ld/15685 * ld-x86-64/tlsg.s: Add a test for R_X86_64_DTPOFF64. * ld-x86-64/tlsg.sd: Updated.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf64-x86-64.c5
2 files changed, 11 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 49a6fe60b8..a5928171d6 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2013-06-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/15685
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Handle
+ R_X86_64_DTPOFF64.
+
2013-06-28 Nick Clifton <nickc@redhat.com>
PR ld/15302
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index 758231e2c4..56a1f814eb 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -4332,6 +4332,11 @@ direct:
relocation = elf_x86_64_tpoff (info, relocation);
break;
+ case R_X86_64_DTPOFF64:
+ BFD_ASSERT ((input_section->flags & SEC_CODE) == 0);
+ relocation -= elf_x86_64_dtpoff_base (info);
+ break;
+
default:
break;
}