summaryrefslogtreecommitdiff
path: root/gold/i386.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/i386.cc
parentc32d85ca537bec630d3da979a3d1d6e14553e42c (diff)
downloadbinutils-gdb-535890bb6466aa82b46ea191a37e75b8936aa913.tar.gz
From Cary Coutant: Set DF_STATIC_TLS as appropriate.
Diffstat (limited to 'gold/i386.cc')
-rw-r--r--gold/i386.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/gold/i386.cc b/gold/i386.cc
index 38ea0ccbaf0..76719107b1e 100644
--- a/gold/i386.cc
+++ b/gold/i386.cc
@@ -973,6 +973,7 @@ Target_i386::Scan::local(const General_options&,
case elfcpp::R_386_TLS_IE: // Initial-exec
case elfcpp::R_386_TLS_IE_32:
case elfcpp::R_386_TLS_GOTIE:
+ layout->set_has_static_tls();
if (optimized_type == tls::TLSOPT_NONE)
{
// For the R_386_TLS_IE relocation, we need to create a
@@ -1005,6 +1006,7 @@ Target_i386::Scan::local(const General_options&,
case elfcpp::R_386_TLS_LE: // Local-exec
case elfcpp::R_386_TLS_LE_32:
+ layout->set_has_static_tls();
if (output_is_shared)
{
// We need to create a dynamic relocation.
@@ -1275,6 +1277,7 @@ Target_i386::Scan::global(const General_options& options,
case elfcpp::R_386_TLS_IE: // Initial-exec
case elfcpp::R_386_TLS_IE_32:
case elfcpp::R_386_TLS_GOTIE:
+ layout->set_has_static_tls();
if (optimized_type == tls::TLSOPT_NONE)
{
// For the R_386_TLS_IE relocation, we need to create a
@@ -1304,6 +1307,7 @@ Target_i386::Scan::global(const General_options& options,
case elfcpp::R_386_TLS_LE: // Local-exec
case elfcpp::R_386_TLS_LE_32:
+ layout->set_has_static_tls();
if (parameters->output_is_shared())
{
// We need to create a dynamic relocation.