aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf64-x86-64.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2013-06-28 15:07:55 +0000
committerH.J. Lu <hjl.tools@gmail.com>2013-06-28 15:07:55 +0000
commita69ed7f7aa6fb202509361b02d43838270cc65a0 (patch)
tree8cc069bb222482b4a06639ccc5a170b8d15b33df /bfd/elf64-x86-64.c
parent0edd9e3b8607f1ccd3f3cd9e40799d9eefaf4231 (diff)
downloadgdb-a69ed7f7aa6fb202509361b02d43838270cc65a0.zip
gdb-a69ed7f7aa6fb202509361b02d43838270cc65a0.tar.gz
gdb-a69ed7f7aa6fb202509361b02d43838270cc65a0.tar.bz2
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/elf64-x86-64.c')
-rw-r--r--bfd/elf64-x86-64.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index 758231e..56a1f81 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;
}