aboutsummaryrefslogtreecommitdiff
path: root/gold/x86_64.cc
diff options
context:
space:
mode:
authorCary Coutant <ccoutant@google.com>2009-01-30 00:21:46 +0000
committerCary Coutant <ccoutant@google.com>2009-01-30 00:21:46 +0000
commit5efc7cd2d630cf8acc716a45d0cb1025096fd308 (patch)
tree45bd86760f7f0f38903f02e0266fae68693434f3 /gold/x86_64.cc
parent55b0d6e3cfd9d502e161345b2826f662bdff9c83 (diff)
downloadgdb-5efc7cd2d630cf8acc716a45d0cb1025096fd308.zip
gdb-5efc7cd2d630cf8acc716a45d0cb1025096fd308.tar.gz
gdb-5efc7cd2d630cf8acc716a45d0cb1025096fd308.tar.bz2
* i386.cc (Target_i386::Relocate::relocate): Recognize non-PIC calls
to __tls_get_addr. * x86_64.cc (Target_x86_64::Relocate::relocate): Likewise. * ChangeLog: Fixed typo in previous ChangeLog entry (version 1.9).
Diffstat (limited to 'gold/x86_64.cc')
-rw-r--r--gold/x86_64.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/gold/x86_64.cc b/gold/x86_64.cc
index 1724624..4dfe75b 100644
--- a/gold/x86_64.cc
+++ b/gold/x86_64.cc
@@ -1703,7 +1703,8 @@ Target_x86_64::Relocate::relocate(const Relocate_info<64, false>* relinfo,
{
if (this->skip_call_tls_get_addr_)
{
- if (r_type != elfcpp::R_X86_64_PLT32
+ if ((r_type != elfcpp::R_X86_64_PLT32
+ && r_type != elfcpp::R_X86_64_PC32)
|| gsym == NULL
|| strcmp(gsym->name(), "__tls_get_addr") != 0)
{