diff options
Diffstat (limited to 'gold/arm.cc')
-rw-r--r-- | gold/arm.cc | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/gold/arm.cc b/gold/arm.cc index 780b7df..5d25533 100644 --- a/gold/arm.cc +++ b/gold/arm.cc @@ -4156,7 +4156,8 @@ Target_arm<big_endian>::got_section(Symbol_table* symtab, Layout* layout) layout->add_output_section_data(".got", elfcpp::SHT_PROGBITS, (elfcpp::SHF_ALLOC | elfcpp::SHF_WRITE), - this->got_, false, false, false, true); + this->got_, ORDER_RELRO, true); + // The old GNU linker creates a .got.plt section. We just // create another set of data in the .got section. Note that we // always create a PLT if we create a GOT, although the PLT @@ -4165,8 +4166,7 @@ Target_arm<big_endian>::got_section(Symbol_table* symtab, Layout* layout) layout->add_output_section_data(".got", elfcpp::SHT_PROGBITS, (elfcpp::SHF_ALLOC | elfcpp::SHF_WRITE), - this->got_plt_, false, false, false, - false); + this->got_plt_, ORDER_DATA, false); // The first three entries are reserved. this->got_plt_->set_current_data_size(3 * 4); @@ -4194,8 +4194,8 @@ Target_arm<big_endian>::rel_dyn_section(Layout* layout) gold_assert(layout != NULL); this->rel_dyn_ = new Reloc_section(parameters->options().combreloc()); layout->add_output_section_data(".rel.dyn", elfcpp::SHT_REL, - elfcpp::SHF_ALLOC, this->rel_dyn_, true, - false, false, false); + elfcpp::SHF_ALLOC, this->rel_dyn_, + ORDER_DYNAMIC_RELOCS, false); } return this->rel_dyn_; } @@ -7158,8 +7158,8 @@ Output_data_plt_arm<big_endian>::Output_data_plt_arm(Layout* layout, { this->rel_ = new Reloc_section(false); layout->add_output_section_data(".rel.plt", elfcpp::SHT_REL, - elfcpp::SHF_ALLOC, this->rel_, true, false, - false, false); + elfcpp::SHF_ALLOC, this->rel_, + ORDER_DYNAMIC_PLT_RELOCS, false); } template<bool big_endian> @@ -7321,7 +7321,7 @@ Target_arm<big_endian>::make_plt_entry(Symbol_table* symtab, Layout* layout, layout->add_output_section_data(".plt", elfcpp::SHT_PROGBITS, (elfcpp::SHF_ALLOC | elfcpp::SHF_EXECINSTR), - this->plt_, false, false, false, false); + this->plt_, ORDER_PLT, false); } this->plt_->add_entry(gsym); } @@ -8382,8 +8382,8 @@ Target_arm<big_endian>::do_finalize_sections( == NULL); Output_segment* exidx_segment = layout->make_output_segment(elfcpp::PT_ARM_EXIDX, elfcpp::PF_R); - exidx_segment->add_output_section(exidx_section, elfcpp::PF_R, - false); + exidx_segment->add_output_section_to_nonload(exidx_section, + elfcpp::PF_R); } } @@ -8395,7 +8395,7 @@ Target_arm<big_endian>::do_finalize_sections( new Output_attributes_section_data(*this->attributes_section_data_); layout->add_output_section_data(".ARM.attributes", elfcpp::SHT_ARM_ATTRIBUTES, 0, - attributes_section, false, false, false, + attributes_section, ORDER_INVALID, false); } |