2011-02-11 Sriraman Tallam <tmsriram@google.com>
authorSriraman Tallam <tmsriram@google.com>
Sat, 12 Feb 2011 03:19:24 +0000 (03:19 +0000)
committerSriraman Tallam <tmsriram@google.com>
Sat, 12 Feb 2011 03:19:24 +0000 (03:19 +0000)
* output.cc (Output_section::add_input_section): Delay fill
generation for section ordering.

gold/ChangeLog
gold/output.cc

index 0313619bcf7a8e5fc3e5637f4feb55ed1bcc4471..6bdc568fbcc7f057c594320ced9ba4cdb400b2b8 100644 (file)
@@ -1,3 +1,8 @@
+2011-02-11  Sriraman Tallam  <tmsriram@google.com>
+
+       * output.cc (Output_section::add_input_section): Delay fill
+       generation for section ordering.
+
 2011-02-09  Ian Lance Taylor  <iant@google.com>
 
        PR gold/12316
index 1158a77661c0893b55bf469d6b17b5f19f562de6..739e00eac19af67fea8ef33da54f223b66451e4b 100644 (file)
@@ -2111,12 +2111,14 @@ Output_section::add_input_section(Layout* layout,
 
   // Determine if we want to delay code-fill generation until the output
   // section is written.  When the target is relaxing, we want to delay fill
-  // generating to avoid adjusting them during relaxation.
+  // generating to avoid adjusting them during relaxation.  Also, if we are
+  // sorting input sections we must delay fill generation.
   if (!this->generate_code_fills_at_write_
       && !have_sections_script
       && (sh_flags & elfcpp::SHF_EXECINSTR) != 0
       && parameters->target().has_code_fill()
-      && parameters->target().may_relax())
+      && (parameters->target().may_relax()
+          || parameters->options().section_ordering_file()))
     {
       gold_assert(this->fills_.empty());
       this->generate_code_fills_at_write_ = true;