From: Ian Lance Taylor Date: Tue, 15 Dec 2009 22:20:25 +0000 (+0000) Subject: * layout.cc (Layout::create_shstrtab): Only write out after input X-Git-Tag: cgen-snapshot-20100101~29 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0e0d5469b8093e5b5a88507fb07ea1a0a24bed60;p=external%2Fbinutils.git * layout.cc (Layout::create_shstrtab): Only write out after input sections if we are compressing debug sections. --- diff --git a/gold/ChangeLog b/gold/ChangeLog index 7084de8..86ed4e8 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,5 +1,10 @@ 2009-12-15 Ian Lance Taylor + * layout.cc (Layout::create_shstrtab): Only write out after input + sections if we are compressing debug sections. + +2009-12-15 Ian Lance Taylor + * archive.cc (Archive::add_symbols): Only look up a symbol without a version if there is, in fact, a version. diff --git a/gold/layout.cc b/gold/layout.cc index a7f8185..914de92 100644 --- a/gold/layout.cc +++ b/gold/layout.cc @@ -2694,10 +2694,14 @@ Layout::create_shstrtab() Output_section* os = this->make_output_section(name, elfcpp::SHT_STRTAB, 0, false, false); - // We can't write out this section until we've set all the section - // names, and we don't set the names of compressed output sections - // until relocations are complete. - os->set_after_input_sections(); + if (strcmp(parameters->options().compress_debug_sections(), "none") != 0) + { + // We can't write out this section until we've set all the + // section names, and we don't set the names of compressed + // output sections until relocations are complete. FIXME: With + // the current names we use, this is unnecessary. + os->set_after_input_sections(); + } Output_section_data* posd = new Output_data_strtab(&this->namepool_); os->add_output_section_data(posd);