This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb] Fix bug with previous patch for unresolved TLS symbol.
- From: Cary Coutant <ccoutant at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 2 Feb 2015 19:47:06 -0000
- Subject: [binutils-gdb] Fix bug with previous patch for unresolved TLS symbol.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=24dd580891ed5fc331758d608b16d636eabd1ad3
commit 24dd580891ed5fc331758d608b16d636eabd1ad3
Author: Cary Coutant <ccoutant@google.com>
Date: Mon Feb 2 11:46:45 2015 -0800
Fix bug with previous patch for unresolved TLS symbol.
We need to check that the output is executable before assuming that we
can replace the reference with zero.
2015-02-02 Cary Coutant <ccoutant@google.com>
gold/
* x86_64.cc (Target_x86_64::Relocate::relocate_tls): Check for
executable output file.
Diff:
---
gold/ChangeLog | 5 +++++
gold/x86_64.cc | 4 +++-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/gold/ChangeLog b/gold/ChangeLog
index 601d11b..399588e 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,8 @@
+2015-02-02 Cary Coutant <ccoutant@google.com>
+
+ * x86_64.cc (Target_x86_64::Relocate::relocate_tls): Check for
+ executable output file.
+
2015-01-22 Han Shen <shenhan@google.com>
* arm.cc (Target_arm::Target_arm): Add initialization for new members.
diff --git a/gold/x86_64.cc b/gold/x86_64.cc
index a4aebc8..4543c8a 100644
--- a/gold/x86_64.cc
+++ b/gold/x86_64.cc
@@ -3784,7 +3784,9 @@ Target_x86_64<size>::Relocate::relocate_tls(
break;
case elfcpp::R_X86_64_GOTTPOFF: // Initial-exec
- if (gsym != NULL && gsym->is_undefined())
+ if (gsym != NULL
+ && gsym->is_undefined()
+ && parameters->options().output_is_executable())
{
Target_x86_64<size>::Relocate::tls_ie_to_le(relinfo, relnum,
NULL, rela,