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.
+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.
 
       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,