parameter.
* output.h (class Output_segment): Remove
add_initial_output_section and overloaded add_output_section.
Update declaration of remaining add_output_section.
* layout.cc (Layout::create_interp): Call add_output_section
rather than add_initial_output_section.
(Layout::finish_dynamic_section): Likewise.
2008-05-16 Ian Lance Taylor <iant@google.com>
+ * output.cc (Output_segment::add_output_section): Remove front
+ parameter.
+ * output.h (class Output_segment): Remove
+ add_initial_output_section and overloaded add_output_section.
+ Update declaration of remaining add_output_section.
+ * layout.cc (Layout::create_interp): Call add_output_section
+ rather than add_initial_output_section.
+ (Layout::finish_dynamic_section): Likewise.
+
* i386.cc (Target_i386::Relocate::relocate_tls): Set dynamic type
for TLS_GOTDESC and TLS_DESC_CALL. Only optimize TLS_LDO_32 if we
know the dynamic type.
{
Output_segment* oseg = this->make_output_segment(elfcpp::PT_INTERP,
elfcpp::PF_R);
- oseg->add_initial_output_section(osec, elfcpp::PF_R);
+ oseg->add_output_section(osec, elfcpp::PF_R);
}
}
Output_segment* oseg = this->make_output_segment(elfcpp::PT_DYNAMIC,
(elfcpp::PF_R
| elfcpp::PF_W));
- oseg->add_initial_output_section(this->dynamic_section_,
- elfcpp::PF_R | elfcpp::PF_W);
+ oseg->add_output_section(this->dynamic_section_,
+ elfcpp::PF_R | elfcpp::PF_W);
}
Output_data_dynamic* const odyn = this->dynamic_data_;
void
Output_segment::add_output_section(Output_section* os,
- elfcpp::Elf_Word seg_flags,
- bool front)
+ elfcpp::Elf_Word seg_flags)
{
gold_assert((os->flags() & elfcpp::SHF_ALLOC) != 0);
gold_assert(!this->is_max_align_known_);
--p;
if ((*p)->is_section_type(elfcpp::SHT_NOTE))
{
- // We don't worry about the FRONT parameter.
++p;
pdl->insert(p, os);
return;
if (insert)
{
- // We don't worry about the FRONT parameter.
++p;
pdl->insert(p, os);
return;
// location in the section list.
}
- if (front)
- pdl->push_front(os);
- else
- pdl->push_back(os);
+ pdl->push_back(os);
}
// Remove an Output_section from this segment. It is an error if it
// Add an Output_section to this segment.
void
- add_output_section(Output_section* os, elfcpp::Elf_Word seg_flags)
- { this->add_output_section(os, seg_flags, false); }
-
- // Add an Output_section to the start of this segment.
- void
- add_initial_output_section(Output_section* os, elfcpp::Elf_Word seg_flags)
- { this->add_output_section(os, seg_flags, true); }
+ add_output_section(Output_section* os, elfcpp::Elf_Word seg_flags);
// Remove an Output_section from this segment. It is an error if it
// is not present.
typedef std::list<Output_data*> Output_data_list;
- // Add an Output_section to this segment, specifying front or back.
- void
- add_output_section(Output_section*, elfcpp::Elf_Word seg_flags,
- bool front);
-
// Find the maximum alignment in an Output_data_list.
static uint64_t
maximum_alignment_list(const Output_data_list*);