diff options
Diffstat (limited to 'gold/layout.cc')
-rw-r--r-- | gold/layout.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gold/layout.cc b/gold/layout.cc index 95f1de7..bc6a053 100644 --- a/gold/layout.cc +++ b/gold/layout.cc @@ -489,11 +489,15 @@ Layout::choose_output_section(const Relobj* relobj, const char* name, // Some flags in the input section should not be automatically // copied to the output section. flags &= ~ (elfcpp::SHF_INFO_LINK - | elfcpp::SHF_LINK_ORDER | elfcpp::SHF_GROUP | elfcpp::SHF_MERGE | elfcpp::SHF_STRINGS); + // We only clear the SHF_LINK_ORDER flag in for + // a non-relocatable link. + if (!parameters->options().relocatable()) + flags &= ~elfcpp::SHF_LINK_ORDER; + if (this->script_options_->saw_sections_clause()) { // We are using a SECTIONS clause, so the output section is |