diff options
author | Ian Lance Taylor <ian@airs.com> | 2008-05-06 05:03:15 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2008-05-06 05:03:15 +0000 |
commit | d98bc257cffa804406c40b84ecfc8801c2ee90e2 (patch) | |
tree | 3287a837c98dcfaf11d5d3b5d026765d82c3b8cb /gold/x86_64.cc | |
parent | 00d1674256539a39ac940429a2a0171d0e67fc41 (diff) | |
download | gdb-d98bc257cffa804406c40b84ecfc8801c2ee90e2.zip gdb-d98bc257cffa804406c40b84ecfc8801c2ee90e2.tar.gz gdb-d98bc257cffa804406c40b84ecfc8801c2ee90e2.tar.bz2 |
2008-05-05 Ian Lance Taylor <iant@google.com>
* options.h (DEFINE_bool): For DASH_Z, create the negative option
as noVARNAME rather than no-VARNAME.
(class General_options): Add option -z combreloc.
* output.h (class Output_reloc) [SHT_REL]: Declare compare and
get_address.
(Output_reloc::sort_before) [SHT_REL]: New function.
(Output_reloc::sort_before) [SHT_RELA]: New function.
(class Output_data_reloc_base): Add sort_relocs_ field. Define
Sort_relocs_comparison.
(Output_data_reloc_base::Output_data_reloc_base): Add sort_relocs
parameter. Change all callers.
(Output_data_reloc::Output_data_reloc) [both versions]: Add
sort_relocs parameter. Change all callers.
* output.cc (Output_reloc::get_address): New function, broken out
of write_rel.
(Output_reloc::write_rel): Call it.
(Output_reloc::compare): New function.
(Output_data_reloc_base::do_write): Optionally sort relocs.
Diffstat (limited to 'gold/x86_64.cc')
-rw-r--r-- | gold/x86_64.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gold/x86_64.cc b/gold/x86_64.cc index 927ed39..6459e50 100644 --- a/gold/x86_64.cc +++ b/gold/x86_64.cc @@ -465,7 +465,7 @@ Target_x86_64::rela_dyn_section(Layout* layout) if (this->rela_dyn_ == NULL) { gold_assert(layout != NULL); - this->rela_dyn_ = new Reloc_section(); + this->rela_dyn_ = new Reloc_section(parameters->options().combreloc()); layout->add_output_section_data(".rela.dyn", elfcpp::SHT_RELA, elfcpp::SHF_ALLOC, this->rela_dyn_); } @@ -560,7 +560,7 @@ Output_data_plt_x86_64::Output_data_plt_x86_64(Layout* layout, : Output_section_data(8), got_(got), got_plt_(got_plt), count_(0), tlsdesc_got_offset_(-1U) { - this->rel_ = new Reloc_section(); + this->rel_ = new Reloc_section(false); layout->add_output_section_data(".rela.plt", elfcpp::SHT_RELA, elfcpp::SHF_ALLOC, this->rel_); } |