gold/
[deliverable/binutils-gdb.git] / gold / ChangeLog
index 33737151e02aaddbbc3efdb8aed14db938915e8e..df61e9ccbd6488e2ab7d928f02b926c3dc87512d 100644 (file)
@@ -1,3 +1,207 @@
+2013-08-27  Roland McGrath  <mcgrathr@google.com>
+
+       * output.cc (Output_segment::set_section_addresses): Take new
+       Target* argument.  If target->isolate_execinstr() and the segment
+       is executable and starts at a target->abi_pagesize() boundary,
+       pad its end out to a target->abi_pagesize() boundary with code fill.
+       * output.h (Output_segment::set_section_addresses): Update decl.
+       * layout.h (Layout::check_output_data_for_reset_values): Take new
+       argument RELAX_OUTPUTS.
+       (Layout): New member relax_output_list_.
+       (Layout::add_relax_output): New method.
+       * layout.cc (Layout::Layout): Update constructor.
+       (Layout::reset_relax_output): New method.
+       (Layout::clean_up_after_relaxation): Call it.
+       (Layout::prepare_for_relaxation): Update caller.
+       (Layout::set_segment_offsets): Update callers of set_section_addresses.
+       Call reset_relax_output before re-processing segments for
+       isolate_execinstr case.
+       (Layout::write_data): Handle relax_output_list_.
+       (Layout::Relaxation_debug_check::check_output_data_for_reset_values):
+       Take new argument RELAX_OUTPUTS.  Assert it's an empty collection.
+
+2013-08-23  Yuri Chornoivan  <yurchor@ukr.net>
+
+       PR binutils/15834
+       * object.h: Fix typos.
+
+2013-08-16  Roland McGrath  <mcgrathr@google.com>
+
+       * i386.cc (Target_i386_nacl::do_code_fill): New virtual function.
+       * x86_64.cc (Target_x86_64_nacl::do_code_fill): New virtual function.
+
+2013-08-07  Cary Coutant  <ccoutant@google.com>
+
+       Revert support for v2 DWP files:
+
+       2013-03-01  Cary Coutant  <ccoutant@google.com>
+
+           Add dwp support for v2 DWARF package file format.
+           * dwarf_reader.cc (Dwarf_info_reader::visit_type_unit): Add
+           tu_length parameter.  Adjust all callers.
+           * dwarf_reader.h (Dwarf_info_reader::visit_type_unit): Likewise.
+           * dwp.cc: Include dwarf.h.
+           (Section_bounds): New struct type.
+           (Unit_set): New struct type.
+           (Dwo_file::Dwo_file): Initialize new data member.
+           (Dwo_file::read_compunit_index, Dwo_file::read_typeunit_index):
+           Combine and rename to...
+           (Dwo_file::read_unit_index): ...this.
+           (Dwo_file::sized_read_compunit_index)
+           (Dwo_file::sized_read_typeunit_index): Combine and rename to...
+           (Dwo_file::sized_read_unit_index): ...this.
+           (Dwo_file::copy_section): Remove section_name, is_str_offsets
+           parameters; add section_id parameter.
+           (Dwo_file::add_cu_set, Dwo_file::add_tu_set): Combine and rename to...
+           (Dwo_file::add_unit_set): ...this.
+           (Dwo_file::shndx_map_): Remove.
+           (Dwo_file::sect_offsets_): New data member.
+           (Dwp_output_file::Dwp_output_file): Initialize new data members.
+           (Dwp_output_file::add_section): Rename to...
+           (Dwp_output_file::add_contribution): ...this.
+           (Dwp_output_file::add_cu_set): Combine parameters into a struct.
+           (Dwp_output_file::add_tu_set): Likewise.
+           (Dwp_output_file::Contribution): New type.
+           (Dwp_output_file::Section::contributions): New data member.
+           (Dwp_output_file::Cu_or_tu_set): Remove.
+           (Dwp_output_file::Section::Section): New ctor.
+           (Dwp_output_file::Dwp_index::Shndx_pool): Remove.
+           (Dwp_output_file::Dwp_index::Section_table): New type.
+           (Dwp_output_file::Dwp_index::Dwp_index): Initialize new data members.
+           (Dwp_output_file::Dwp_index::enter_set): Change type of "set"
+           parameter.
+           (Dwp_output_file::Dwp_index::shndx_pool): Remove.
+           (Dwp_output_file::Dwp_index::shndx_pool_end): Remove.
+           (Dwp_output_file::Dwp_index::section_table): New member function.
+           (Dwp_output_file::Dwp_index::section_table_end): New member function.
+           (Dwp_output_file::Dwp_index::shndx_pool_size): Remove.
+           (Dwp_output_file::Dwp_index::section_table_rows): New member function.
+           (Dwp_output_file::Dwp_index::section_table_cols): New member function.
+           (Dwp_output_file::Dwp_index::shndx_pool_): Remove.
+           (Dwp_output_file::Dwp_index::section_table_): New data member.
+           (Dwp_output_file::Dwp_index::section_mask_): New data member.
+           (Dwp_output_file::add_output_section): New member function.
+           (Dwp_output_file::write_new_section): New member function.
+           (Dwp_output_file::write_contributions): New member function.
+           (Dwp_output_file::section_id_map_): New data member.
+           (class Dwo_id_info_reader): Remove.
+           (class Unit_reader): New class.
+           (get_dwarf_section_name): New function.
+           (Dwo_file::read_executable): Adjust initializations of class data.
+           (Dwo_file::read): Add support for v2 package file format.
+           (Dwo_file::read_unit_index): Likewise.
+           (Dwo_file::sized_read_unit_index): Likewise.
+           (Dwo_file::copy_section): Likewise.
+           (Dwo_file::add_unit_set): Likewise.
+           (Dwp_output_file::add_output_section): Likewise.
+           (Dwp_output_file::add_contribution): Likewise.
+           (Dwp_output_file::Dwp_index::find_or_add): Use row index to check
+           for empty slot.
+           (Dwp_output_file::Dwp_index::enter_set): Add support for v2 package
+           file format.
+           (Dwp_output_file::Dwp_index::grow): Use row index to check for empty
+           slot.
+           (Dwp_output_file::initialize): Remove unused function.
+           (Dwp_output_file::finalize): Add support for v2 package file format.
+           (Dwp_output_file::write_index): Likewise.
+           * gdb-index.cc (Gdb_index_info_reader::visit_type_unit): Adjust
+           function prototype.
+
+2013-07-31  Cary Coutant  <ccoutant@google.com>
+
+       * object.cc (Sized_relobj::do_output_section_address): New function.
+       (Sized_relobj): Instantiate explicitly.
+       * object.h (Object::output_section_address): New function.
+       (Object::do_output_section_address): New function.
+       (Sized_relobj::do_output_section_address): New function.
+       * powerpc.cc (Target_powerpc::symval_for_branch): Use it.
+
+2013-07-30  Cary Coutant  <ccoutant@google.com>
+           Sasa Stankovic  <Sasa.Stankovic@imgtec.com>
+
+       * parameters.cc (Parameters::entry): Return target-specific entry
+       symbol name.
+       * target.h (Target::entry_symbol_name): New function.
+       (Target_info::entry_symbol_name): New data member.
+
+       * arm.cc (Target_arm::arm_info): Add entry_symbol_name.
+       * i386.cc (Target_i386::i386_info): Likewise.
+       (Target_i386_nacl::i386_nacl_info): Likewise.
+       * sparc.cc (Target_sparc::sparc_info): Likewise.
+       * tilegx.cc (Target_tilegx::tilegx_info): Likewise.
+       * x86_64.cc: (Target_x86_64::x86_64_info) Likewise.
+       (Target_x86_64_nacl::x86_64_nacl_info) Likewise.
+       * testsuite/testfile.cc (Target_test::test_target_info): Likewise.
+
+2013-07-22  Sterling Augustine  <saugustine@google.com>
+
+       * dwarf_reader.cc (Dwarf_pubnames_table::read_section):
+       Convert parameter shndx to local variable. Add parameters symtab
+       and symtab_size.  Scan over section names.  Find relocation
+       section corresponding to current section.  Create and initialize
+       reloc_mapper_ and reloc_type_.
+       (Dwarf_pubnames_table::read_header):  Add assertion.  Change
+       unit_length to off_t.  Initialize member unit_length_.  Fill in field
+       cu_offset_.
+       * dwarf_reader.h (Dwarf_pubnames_table::Dwarf_pubnames_table):
+       Initialize new fields unit_length_ and cu_offset_.
+       (Dwarf_pubnames_table::read_section): Update prototype.
+       (Dwarf_pubnames_table::cu_offset): New member function.
+       (Dwarf_pubnames_table::subsection_size): Likewise.
+       (Dwarf_pubnames_table::cu_offset_, Dwarf_pubnames_table::unit_length):
+       New fields.
+       (Dwarf_info_reader::symtab, Dwarf_info_reader::symtab_size): Make
+       member functions public.
+       * gdb_index.cc (Gdb_index_info_reader::read_pubnames_and_pubtypes):
+       Update comment.  Rework logic.  Move repeated parts to...
+       (Gdb_index_info_reader::read_pubtable): ...here. New function.
+       (Gdb_index::Gdb_index): Initialize new fields, pubnames_table_,
+       pubtypes_table_, and stmt_list_offset.
+       (Gdb_index::map_pubtable_to_dies, Gdb_index::find_pubname_offset,
+       Gdb_index::find_pubtype_offset,
+       Gdb_index::map_pubnames_and_types_to_dies): Define new functions.
+       (Gdb_index::pubnames_read): Update prototype and rework logic.
+       * gdb_index.h (Gdb_index_info_reader, Dwarf_pubnames_table):
+       Forward declare.
+       (Gdb_index::map_pubtable_to_dies, Gdb_index::find_pubname_offset,
+       Gdb_index::find_pubtype_offset, Gdb_index::pubnames_table)
+       Gdb_index::pubtypes_table, Gdb_index::map_pubnames_and_types_to_dies,
+       Gdb_index::map_pubtable_to_dies):
+       Declare functions.
+       (Gdb_index::pubnames_read): Update declaration.
+       (Gdb_index::Pubname_offset_map): New type.
+       (Gdb_index::cu_pubname_map_, Gdb_index::cu_pubtype_map_,
+       Gdb_index::pubnames_table_, Gdb_index::pubtypes_table_,
+       Gdb_index::stmt_list_offset): Declare.
+       (Gdb_index::pubnames_shndx_, Gdb_index::pubnames_offet_,
+       Gdb_index::pubtypes_object_, Gdb_index::pubtypes_shndx_)
+       Gdb_index::pubtypes_offset_): Remove.
+
+2013-07-19  Roland McGrath  <mcgrathr@google.com>
+
+       * options.h (General_options): Add -Trodata-segment option.
+       * parameters.cc (Parameters::check_rodata_segment): New function.
+       (Parameters::set_target_once): Call it.
+       * parameters.h (Parameters): Declare it (private member function).
+       * layout.cc (load_seg_unusable_for_headers): New function, broken
+       out of Layout::relaxation_loop_body.  If TARGET->isolate_execinstr()
+       then validate rodata segment rather than text segment.
+       (relaxation_loop_body): Call that.
+       (is_text_segment): New function.  Don't admit a non-executable
+       segment if TARGET->isolate_execinstr().
+       (set_segment_offsets): Call it.  Honor -Trodata-segment option.
+
+2013-07-15  Shawn Landden  <shawnlandden@gmail.com>
+
+       PR gold/15070
+       * fileread.h (File_read::get_view): Clarify comment about ALIGNED.
+       * nacl.h (Sniff_file::View::View): Request aligned view.
+
+2013-07-11  Cary Coutant  <ccoutant@google.com>
+
+       * powerpc.cc (Target_powerpc::write_branch_lookup_table): Use
+       correct BRLT entry size.
+
 2013-07-03  Alan Modra  <amodra@gmail.com>
 
        * powerpc.cc (Target_powerpc::Relocate::relocate): Update self-call
This page took 0.02811 seconds and 4 git commands to generate.