This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[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,


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]