aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gold/ChangeLog6
-rw-r--r--gold/i386.cc1
-rw-r--r--gold/x86_64.cc1
3 files changed, 8 insertions, 0 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index c022353..c07a70c 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,9 @@
+2008-04-11 Cary Coutant <ccoutant@google.com>
+
+ * i386.cc (Target_i386::got_mod_index_entry): Restore code previously
+ thought unnecessary.
+ * x86_64.cc (Target_x86_64::got_mod_index_entry): Likewise.
+
2008-04-11 Ian Lance Taylor <iant@google.com>
* output.h (class Output_section_data): Remove inline definition
diff --git a/gold/i386.cc b/gold/i386.cc
index c0b2e85..d49350a 100644
--- a/gold/i386.cc
+++ b/gold/i386.cc
@@ -725,6 +725,7 @@ Target_i386::got_mod_index_entry(Symbol_table* symtab, Layout* layout,
unsigned int got_offset = got->add_constant(0);
rel_dyn->add_local(object, 0, elfcpp::R_386_TLS_DTPMOD32, got,
got_offset);
+ got->add_constant(0);
this->got_mod_index_offset_ = got_offset;
}
return this->got_mod_index_offset_;
diff --git a/gold/x86_64.cc b/gold/x86_64.cc
index e60b3f6..105f770 100644
--- a/gold/x86_64.cc
+++ b/gold/x86_64.cc
@@ -797,6 +797,7 @@ Target_x86_64::got_mod_index_entry(Symbol_table* symtab, Layout* layout,
unsigned int got_offset = got->add_constant(0);
rela_dyn->add_local(object, 0, elfcpp::R_X86_64_DTPMOD64, got,
got_offset, 0);
+ got->add_constant(0);
this->got_mod_index_offset_ = got_offset;
}
return this->got_mod_index_offset_;