diff --git a/gold/ChangeLog b/gold/ChangeLog index c022353bce..c07a70cc30 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,9 @@ +2008-04-11 Cary Coutant + + * 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 * output.h (class Output_section_data): Remove inline definition diff --git a/gold/i386.cc b/gold/i386.cc index c0b2e85335..d49350acb4 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 e60b3f6fa4..105f77074f 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_;