From dbe40a889191708b6e32441b1c64937844645574 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20=C3=81vila=20de=20Esp=C3=ADndola?= Date: Wed, 4 Mar 2015 15:10:18 -0800 Subject: Remove empty class Merge_map. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 2015-03-02 Rafael Ávila de Espíndola * ehframe.cc (Cie::set_output_offset): Pass in and use a Output_section_data instead of a Merge_map. (Eh_frame::Eh_frame): Don't initialize merge_map_. (Eh_frame::read_cie): Use add_merge_mapping instead of Merge_map::add_mapping. (Eh_frame::read_fde): Ditto. (Eh_frame::set_final_data_size): Use this instead of this->merge_map_. (Eh_frame::do_output_offset): Use merge_output_offset istead of merge_map_->get_output_offset. (Eh_frame::do_is_merge_section_for): Delete. * ehframe.h (Fde::add_mapping): Pass in and use a Output_section_data instead of a Merge_map. (Cie::set_output_offset): Pass in a Output_section_data instead of a Merge_map. (Eh_frame::do_is_merge_section_for): Delete. (Eh_frame::merge_map_): Delete. * merge.cc (Object_merge_map::get_or_make_input_merge_map): Pass in and use a Output_section_data instead of a Merge_map. (Object_merge_map::add_mapping): Ditto. (Object_merge_map::get_output_offset): Remove the merge_map argument. (Object_merge_map::is_merge_section_for): Pass in and use a Output_section_data instead of a Merge_map. (Merge_map): Delete. (Output_merge_base::do_output_offset): Use merge_output_offset instead of merge_map_.get_output_offset. (Output_merge_base::do_is_merge_section_for): Delete. (Output_merge_data::do_add_input_section): Use object->add_merge_mapping instead of add_mapping. (Output_merge_string::finalize_merged_data): Ditto. * merge.h (Merge_map): Delete forward declaration. (Object_merge_map::add_mapping): Pass in and use a Output_section_data instead of a Merge_map. (Object_merge_map::get_output_offset): Remove the merge_map argument. (Object_merge_map::is_merge_section_for): Pass in and use a Output_section_data instead of a Merge_map. (Input_merge_map::Object_merge_map::merge_map): Replace with output_data. (Object_merge_map::get_or_make_input_merge_map): Pass in and use a Output_section_data instead of a Merge_map. (Merge_map): Delete. (Output_merge_base::Output_merge_base): Don't initialize merge_map_. (Output_merge_base::do_is_merge_section_for): Delete. (Output_merge_base::add_mapping): Delete. (Output_merge_base::merge_map_): Delete. * object.cc (Relobj::initialize_input_to_output_map): New. (Relobj::initialize_input_to_output_map): New. (Relobj::merge_output_offset): New. (Relobj::is_merge_section_for): New. (Relobj::initialize_input_to_output_map): Instantiate for 32 and 64 bits. * object.h (Relobj::merge_map): Delete. (initialize_input_to_output_map): New. (set_merge_map): Delete. (add_merge_mapping): New. (merge_output_offset): New. (is_merge_section_for): New. * output.cc (Output_section::Input_section::is_merge_section_for): Use object->is_merge_section_for. * output.h (Output_section_data::is_merge_section_for): Delete. (Output_section_data::do_is_merge_section_for): Delete. * reloc.cc (Merged_symbol_value::initialize_input_to_output_map): Use object->initialize_input_to_output_map. (Merged_symbol_value::value_from_output_section): Use object->merge_output_offset. --- gold/reloc.cc | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'gold/reloc.cc') diff --git a/gold/reloc.cc b/gold/reloc.cc index 5906754d94..910c4ee9ed 100644 --- a/gold/reloc.cc +++ b/gold/reloc.cc @@ -1457,10 +1457,9 @@ Merged_symbol_value::initialize_input_to_output_map( const Relobj* object, unsigned int input_shndx) { - Object_merge_map* map = object->merge_map(); - map->initialize_input_to_output_map(input_shndx, - this->output_start_address_, - &this->output_addresses_); + object->initialize_input_to_output_map(input_shndx, + this->output_start_address_, + &this->output_addresses_); } // Get the output value corresponding to an input offset if we @@ -1474,9 +1473,8 @@ Merged_symbol_value::value_from_output_section( typename elfcpp::Elf_types::Elf_Addr input_offset) const { section_offset_type output_offset; - bool found = object->merge_map()->get_output_offset(NULL, input_shndx, - input_offset, - &output_offset); + bool found = object->merge_output_offset(input_shndx, input_offset, + &output_offset); // If this assertion fails, it means that some relocation was // against a portion of an input merge section which we didn't map -- cgit v1.2.3