aboutsummaryrefslogtreecommitdiff
path: root/gold/x86_64.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2007-12-11 23:30:52 +0000
committerIan Lance Taylor <iant@google.com>2007-12-11 23:30:52 +0000
commit535890bb6466aa82b46ea191a37e75b8936aa913 (patch)
tree9c497b427e90f5be33a560f7048c1b6187759452 /gold/x86_64.cc
parentc32d85ca537bec630d3da979a3d1d6e14553e42c (diff)
downloadgdb-535890bb6466aa82b46ea191a37e75b8936aa913.zip
gdb-535890bb6466aa82b46ea191a37e75b8936aa913.tar.gz
gdb-535890bb6466aa82b46ea191a37e75b8936aa913.tar.bz2
From Cary Coutant: Set DF_STATIC_TLS as appropriate.
Diffstat (limited to 'gold/x86_64.cc')
-rw-r--r--gold/x86_64.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/gold/x86_64.cc b/gold/x86_64.cc
index f25a107..6df501d 100644
--- a/gold/x86_64.cc
+++ b/gold/x86_64.cc
@@ -942,6 +942,7 @@ Target_x86_64::Scan::local(const General_options&,
break;
case elfcpp::R_X86_64_GOTTPOFF: // Initial-exec
+ layout->set_has_static_tls();
if (optimized_type == tls::TLSOPT_NONE)
{
// Create a GOT entry for the tp-relative offset.
@@ -957,6 +958,7 @@ Target_x86_64::Scan::local(const General_options&,
break;
case elfcpp::R_X86_64_TPOFF32: // Local-exec
+ layout->set_has_static_tls();
if (output_is_shared)
unsupported_reloc_local(object, r_type);
break;
@@ -1219,6 +1221,7 @@ Target_x86_64::Scan::global(const General_options& options,
break;
case elfcpp::R_X86_64_GOTTPOFF: // Initial-exec
+ layout->set_has_static_tls();
if (optimized_type == tls::TLSOPT_NONE)
{
// Create a GOT entry for the tp-relative offset.
@@ -1233,6 +1236,7 @@ Target_x86_64::Scan::global(const General_options& options,
break;
case elfcpp::R_X86_64_TPOFF32: // Local-exec
+ layout->set_has_static_tls();
if (parameters->output_is_shared())
unsupported_reloc_local(object, r_type);
break;