aboutsummaryrefslogtreecommitdiff
path: root/gold/i386.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2008-05-06 05:03:15 +0000
committerIan Lance Taylor <ian@airs.com>2008-05-06 05:03:15 +0000
commitd98bc257cffa804406c40b84ecfc8801c2ee90e2 (patch)
tree3287a837c98dcfaf11d5d3b5d026765d82c3b8cb /gold/i386.cc
parent00d1674256539a39ac940429a2a0171d0e67fc41 (diff)
downloadgdb-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/i386.cc')
-rw-r--r--gold/i386.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/gold/i386.cc b/gold/i386.cc
index 6fb096e..9f86229 100644
--- a/gold/i386.cc
+++ b/gold/i386.cc
@@ -462,7 +462,7 @@ Target_i386::rel_dyn_section(Layout* layout)
if (this->rel_dyn_ == NULL)
{
gold_assert(layout != NULL);
- this->rel_dyn_ = new Reloc_section();
+ 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_);
}
@@ -532,7 +532,7 @@ Output_data_plt_i386::Output_data_plt_i386(Layout* layout,
Output_data_space* got_plt)
: Output_section_data(4), got_plt_(got_plt), count_(0)
{
- this->rel_ = new Reloc_section();
+ this->rel_ = new Reloc_section(false);
layout->add_output_section_data(".rel.plt", elfcpp::SHT_REL,
elfcpp::SHF_ALLOC, this->rel_);
}