Update French Translations for LD and GOLD.
[deliverable/binutils-gdb.git] / gold / ChangeLog
index 71887d3300b34d4eb943da026e4004c568c56115..0ec1c2718c8d5a2bcaa99ff0dc36f3d4abb5f95d 100644 (file)
@@ -1,3 +1,396 @@
+2015-06-08  Nick Clifton  <nickc@redhat.com>
+
+       * po/fr.po: New French Translation.
+
+2015-06-07  Cary Coutant  <ccoutant@gmail.com>
+
+       PR gold/18288
+       * resolve.cc (symbol_to_bits): Remove type parameter; adjust all
+       callers. Don't use STT_COMMON to check for common symbols.
+       (Symbol_table::resolve): Warn if relocatable object has STT_COMMON
+       symbol that's not in a common section.
+       * symtab.h (Symbol::is_common): Don't use STT_COMMON to check for
+       common symbols.
+
+2015-06-04  Cary Coutant  <ccoutant@gmail.com>
+
+       PR gold/18200
+       * Makefile.am (diststuff): Add target.
+       * Makefile.in: Regenerate.
+
+2015-06-04  Cary Coutant  <ccoutant@gmail.com>
+
+       PR gold/17498
+       * object.cc (Sized_relobj_file::do_count_local_symbols): Discard
+       temporary locals in merge sections.
+       * options.cc (General_options::parse_discard_all): New method.
+       (General_options::parse_discard_locals): New method.
+       (General_options::parse_discard_none): New method.
+       (General_options::General_options): Initialize discard_locals_.
+       * options.h (--discard-all): Convert to special option.
+       (--discard-locals): Likewise.
+       (--discard-none): New option.
+       (General_options::discard_all): New method.
+       (General_options::discard_locals): New method.
+       (General_options::discard_sec_merge): New method.
+       (General_options::Discard_locals): New enum.
+       (General_options::discard_locals_): New data member.
+
+2015-06-03  Cary Coutant  <cary@google.com>
+
+       * script-sections.cc (Script_sections::Script_sections): Initialize
+       segments_created_.
+       (Script_sections::create_note_and_tls_segments): Set flag when
+       segments are created.
+       (Script_sections::expected_segment_count): Count PT_INTERP.
+       (Script_sections::attach_sections_using_phdrs_clause): Set flag when
+       segments are created.
+       * script-sections.h (Script_sections::segments_created_): New data
+       member.
+
+2015-06-03  Cary Coutant  <ccoutant@gmail.com>
+
+       PR gold/15370
+       * script-sections.cc
+       (Output_section_element_input::set_section_addresses): When there
+       are several patterns with no sort spec, put all sections in the same
+       bin.
+       * testsuite/Makefile.am (script_test_12): New testcase.
+       (script_test_12i): New testcase.
+       * testsuite/Makefile.in: Regenerate.
+       * testsuite/script_test_12.t: New test linker script.
+       * testsuite/script_test_12i.t: New test linker script.
+       * testsuite/script_test_12a.c: New test source file.
+       * testsuite/script_test_12b.c: New test source file.
+
+2015-06-02  Cary Coutant  <ccoutant@gmail.com>
+
+       * nacl.h (Sniff_file): Switch parameters to get_view to get an
+       aligned view.
+
+2015-06-03  Cary Coutant  <ccoutant@gmail.com>
+
+        PR gold/17819
+        * gold.cc (queue_final_tasks): When --build-id=tree, queue a
+        separate task to schedule the build id computation.
+        * layout.cc (Hash_task::Hash_task): Remove build_id_blocker,
+        add Output_file and offset.
+        (Hash_task::run): Get and release the input views.
+        (Hash_task::is_runnable): Always return NULL (always runnable).
+        (Layout::queue_build_id_tasks): Remove.
+        (Layout::write_build_id): Add array_of_hashes and size_of_hashes
+        parameters; use them instead of class members.
+        (Build_id_task_runner::run): New function.
+        (Close_task_runner::run): Pass array_of_hashes and size_of_hashes
+        to write_build_id.
+        * layout.h (Layout::queue_build_id_tasks): Remove.
+        (Layout::write_build_id): Add array_of_hashes and size_of_hashes
+        parameters.
+        (Layout::array_of_hashes_): Remove.
+        (Layout::size_of_array_of_hashes_): Remove.
+        (Layout::input_view_): Remove.
+        (Build_id_task_runner): New class.
+        (Close_task_runner::Close_task_runner): Add array_of_hashes and
+        size_of_hashes parameters.
+        (Close_task_runner::array_of_hashes_): New data member.
+        (Close_task_runner::size_of_hashes_): New data member.
+        * testsuite/Makefile.am
+        (flagstest_compress_debug_sections_and_build_id_tree): New test.
+        * testsuite/Makefile.in: Regenerate.
+
+2015-06-01  Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+       * merge.cc (get_input_merge_map): Update for data structure change.
+       (get_or_make_input_merge_map): Update for data structure change.
+       * merge.h (Object_merge_map): Use a std::vector<std::pair>> instead of
+       a std::map. Remove first_shnum_, first_map_, second_shnum_, second_map_.
+
+2015-05-16  Alan Modra  <amodra@gmail.com>
+
+       * reloc.cc (Sized_relobj_file::find_functions): Use function_location.
+       * powerpc.cc (Target_powerpc::do_calls_non_split): New function.
+       (addi_12_1, addis_2_12, addis_12_1, cmpld_7_12_0): New constants.
+       (lis_0): Rename from lis_0_0.
+
+2015-04-29  Cary Coutant  <cary@google.com>
+           Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+       * gc.h (Garbage_collection::is_section_garbage): Change Object*
+       to Relobj*.
+       (Garbage_collection::add_reference): Likewise.
+       (Garbage_collection::gc_process_relocs): Likewise. Don't push
+       object/shndx pair onto *secvec for dynamic objects. Don't follow
+       relocations pointing to dynamic objects for GC.
+       * icf.cc (Icf::find_identical_sections): Change Object* to Relobj*.
+       (Icf::unfold_section): Likewise.
+       (Icf::is_section_folded): Likewise.
+       (Icf::get_folded_section): Likewise.
+       * icf.h: (Icf::get_folded_section): Likewise.
+       (Icf::unfold_section): Likewise.
+       (Icf::is_section_folded): Likewise.
+       (Icf::section_has_function_pointers): Likewise.
+       (Icf::set_section_has_function_pointers): Likewise.
+       * object.h (Section_id): Likewise.
+       (Const_section_id): Likewise.
+       * output.cc (Output_section::update_section_layout): Likewise.
+       * output.h: (Output_section_lookup_maps::find_relaxed_input_section):
+       Likewise.
+       * plugin.cc (update_section_order): Likewise.
+       (unique_segment_for_sections): Likewise.
+       * powerpc.cc (Powerpc_relobj::add_reference): Likewise.
+       (Target_powerpc::do_gc_add_reference): Likewise.
+       (Target_powerpc::gc_process_relocs): Likewise.
+       (Target_powerpc::do_gc_add_reference): Likewise.
+       * symtab.cc (Symbol_table::is_section_folded): Likewise.
+       (Symbol_table::gc_mark_symbol): Likewise.
+       * symtab.h: (Symbol_table::is_section_folded): Likewise.
+       * target.h: (Sized_target::gc_add_reference): Likewise.
+       (Sized_target::do_gc_add_reference): Likewise.
+
+2015-04-29  Nick Clifton  <nickc@redhat.com>
+
+       * po/fi.po: Updated Finnish translation.
+
+2015-04-28  Alan Modra  <amodra@gmail.com>
+
+       * powerpc.cc (Target_powerpc::do_dynsym_value): Use Address rather
+       than unsigned int for find_global_entry result temp.  Compare
+       against invalid_address.
+       (Target_powerpc::do_plt_address_for_global): Likewise.
+       (Target_powerpc::Relocate::relocate): Likewise.  Don't assert
+       on plt call stub existence for debug info.  Do assert for plt
+       and global entry stub existence if an alloc section.
+
+2015-04-28  Alan Modra  <amodra@gmail.com>
+
+       * powerpc.cc (Target_powerpc::Relocate::relocate): Don't assert
+       on missing global entry stub due to bogus debug info.
+
+2015-04-27  Han Shen  <shenhan@google.com>
+
+       * options.h (--fix-cortex-a53-843419): Rename option.
+       * aarch64.cc (AArch64_relobj::do_count_local_symbols): Use renamed
+       option.
+       (AArch64_relobj::scan_sections_for_stubs): Use renamed option.
+
+2015-04-27  Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+       PR gold/18327
+       * output.cc (Output_section::is_input_address_mapped): Assume a missing
+       entry is mapped.
+       * testsuite/Makefile.am: Add the eh_test test.
+       * testsuite/Makefile.in: Regenerate.
+       * testsuite/eh_test_a.cc: New test.
+       * testsuite/eh_test_b.cc: New test.
+
+2015-04-23  Sriraman Tallam  <tmsriram@google.com>
+
+       * options.h (--weak-unresolved-symbols): New option.
+       * symtab.cc (Symbol_table::sized_write_globals): Change symbol
+       binding to weak with new option.
+       * symtab.h (is_weak_undefined): Check for new option.
+       (is_strong_undefined): Check for new option.
+       * testsuite/Makefile.am (weak_unresolved_symbols_test): New test.
+       * testsuite/Makefile.in: Regenerate.
+       * testsuite/weak_unresolved_symbols_test.cc: New file.
+
+2015-04-20  Ian Coolidge  <icoolidge@google.com>
+
+       * symtab.cc (Symbol::should_add_dynsym_entry): Return true for
+       GNU_UNIQUE.
+
+2015-04-17  Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+       * gc.cc (Garbage_collection::do_transitive_closure): Use back and
+       push_back.
+       * gc.h (Garbage_collection): Use a std::vector instead of a std::queue.
+       * object.cc (Sized_relobj_file::do_layout): Use push_back.
+       * powerpc.cc (process_gc_mark): Use push_back.
+       (Target_powerpc::do_gc_mark_symbol): Use push_back.
+       * symtab.cc (Symbol_table::gc_mark_symbol): Use push_back.
+
+2015-04-16  Han Shen  <shenhan@google.com>
+
+       * aarch64.cc (AArch64_insn_utilities): New utility class.
+       (AArch64_relobj::Mapping_symbol_position): New struct.
+       (AArch64_relobj::Mapping_symbol_info): New typedef.
+       (AArch64_relobj::do_count_local_symbols): New function overriding
+       parent's implementation.
+       (AArch64_relobj::mapping_symbol_info_): New member
+       (AArch64_relobj::scan_erratum_843419): New method.
+       (Target_aarch64::scan_erratum_843419_span): New method.
+       (Target_aarch64::is_erratum_843419_sequence): New method.
+       * options.h (fix_cortex_a53): New option.
+
+2015-04-09  Cary Coutant  <ccoutant@google.com>
+
+       * symtab.cc (Symbol::final_value_is_known): Check for TLS symbol
+       in a PIE link.
+       * testsuite/Makefile.am (tls_pie_test.sh): New test.
+       * testsuite/Makefile.in: Regenerate.
+       * testsuite/tls_pie_test.sh: New.
+
+2015-04-09  Cary Coutant  <ccoutant@google.com>
+
+       * debug.h (DEBUG_LOCATION): New.
+       (DEBUG_ALL): Include DEBUG_LOCATION.
+       (debug_string_to_enum): Add DEBUG_LOCATION.
+       * dwarf_reader.cc (Sized_dwarf_line_info::read_lines): Fix debug
+       output to print correct context.
+       (Sized_dwarf_line_info::do_addr2line): Add debug output. Return
+       up to 4 more locations at the beginning of the function.
+       * symtab.cc (Symbol_table::detect_odr_violations): Get canonical
+       result before sorting list of line numbers.
+       * testsuite/debug_msg.sh: Allow range of line numbers for
+       canonical results on optimized code.
+
+2015-04-07  HC Yen <hc.yen@mediatek.com>
+
+       Add AArch32 support for gold linker.
+       gold/
+       * arm.cc: Add V8 arch combine table.
+
+2015-04-06  Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+       * aarch64.cc (do_reloc_addend): Fix signature to match the parent one.
+
+2015-04-06  Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+       * gc.cc (Garbage_collection::do_transitive_closure): Avoid a call
+       to find by using the return value of insert.
+
+2015-04-06  Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+       * gc.cc (Garbage_collection::do_transitive_closure): Avoid a copy
+       constructor call.
+
+2015-04-06  Ilya Tocar  <ilya.tocar@intel.com>
+
+       PR gold/17641
+       * x86_64.cc (Target_x86_64::can_convert_mov_to_lea): New.
+       (Target_x86_64::Scan::local): Don't create GOT entry, when we
+       can convert mov to lea.
+       (Target_x86_64::Scan::global): Ditto.
+       (Target_x86_64::Relocate::relocate): Convert mov foo@GOTPCREL(%rip),
+       %reg to lea foo(%rip), %reg if possible.
+       * testsuite/Makefile.am (x86_64_mov_to_lea): New test.
+       * testsuite/x86_64_mov_to_lea1.s: New.
+       * testsuite/x86_64_mov_to_lea2.s: Ditto.
+       * testsuite/x86_64_mov_to_lea3.s: Ditto.
+       * testsuite/x86_64_mov_to_lea4.s: Ditto.
+       * testsuite/x86_64_mov_to_lea.sh: Ditto.
+
+2015-04-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * configure: Regenerated.
+
+2015-04-01  Ilya Tocar  <ilya.tocar@intel.com>
+
+       PR gold/17640
+       * i386.cc (Target_i386::can_convert_mov_to_lea): New.
+       (Target_i386::Scan::local): Don't create GOT entry, when we
+       can convert GOT to GOTOFF.
+       (Target_i386::Scan::global): Ditto.
+       (Target_i386::Relocate::relocate): Convert  mov foo@GOT(%reg), %reg to
+       lea foo@GOTOFF(%reg), %reg if possible.
+       * testsuite/Makefile.am (i386_mov_to_lea): New test.
+       * testsuite/i386_mov_to_lea1.s: New.
+       * testsuite/i386_mov_to_lea2.s: Ditto.
+       * testsuite/i386_mov_to_lea3.s: Ditto.
+       * testsuite/i386_mov_to_lea4.s: Ditto.
+       * testsuite/i386_mov_to_lea5.s: Ditto.
+       * testsuite/i386_mov_to_lea.sh: Ditto.
+
+2015-04-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * Makefile.am (ZLIB): New.
+       (ZLIBINC): Likewise.
+       (AM_CFLAGS): Add $(ZLIBINC).
+       (AM_CXXFLAGS): Likewise.
+       (ldadd_varldadd_var): Add $(ZLIB).
+       (incremental_dump_LDADD): Likewise.
+       (dwp_LDADD): Likewise.
+       * compressed_output.cc: Don't check HAVE_ZLIB_H to include
+       <zlib.h>.
+       (zlib_compress): Don't check HAVE_ZLIB_H.
+       (zlib_decompress): Likewise.
+       * options.h (compress_debug_sections): Likewise.
+       * configure.ac (AM_CONDITIONAL): Removed.
+       * testsuite/Makefile.am (ZLIB): New.
+       (LDADD): Add $(ZLIB).
+       Don't check HAVE_ZLIB.
+       * Makefile.in: Regenerated.
+       * config.in: Likewise.
+       * configure: Likewise.
+       * testsuite/Makefile.in: Likewise.
+
+2015-03-30  Jing Yu  <jingyu@google.com>
+
+       * aarch64-reloc.def: New TLSLD_ADD_DTPREL_HI12,
+       TLSLD_ADD_DTPREL_LO12_NC.
+       * aarch64.cc (Target_aarch64::define_tls_base_symbol): Always let
+       _TLS_MODULE_BASE_ point to the start of tls segment.
+       (Target_aarch64::optimize_tls_reloc): Add cases for
+       R_AARCH64_TLSLD_ADD_DTPREL_HI12 and
+       R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC.
+       (Target_aarch64::Scan::local): Likewise.
+       (Target_aarch64::Scan::global): Likewise.
+       (Target_aarch64::Relocate::relocate): Likewise.
+       (Target_aarch64::Relocate::relocate_tls): Likewise. And remove
+       subtracting tls segment size from symbol value for TLSLD_*_DTPREL
+       relocations.
+
+2015-03-27  Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+       * merge.cc (Object_merge_map::add_mapping): call
+       Object_merge_map::Input_merge_map::add_mapping.
+       (Object_merge_map::Input_merge_map::add_mapping): New.
+       (Output_merge_data::do_add_input_section): Call
+       get_or_make_input_merge_map before a loop.
+       (Output_merge_string<Char_type>::finalize_merged_data): Call
+       get_or_make_input_merge_map before a loop.
+       * merge.h (Object_merge_map): Make Input_merge_map public.
+       * object.cc (Relobj::add_merge_mapping): Use get_or_create_merge_map.
+       (Relobj::get_or_create_merge_map): New.
+       * object.h (Relobj::get_or_create_merge_map): New.
+
+2015-03-24  Alan Modra  <amodra@gmail.com>
+
+       PR 18147
+       * powerpc.cc (Target_powerpc::Relocate::relocate): Don't report
+       relocation errors for branches to strong undefined symbols.
+
+2015-03-23  Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+       * merge.cc (Object_merge_map::get_input_merge_map): Make it const.
+       (Object_merge_map::is_merge_section_for): Remove.
+       (Object_merge_map::find_merge_section): New.
+       * merge.h (Object_merge_map::is_merge_section_for): Remove.
+       (Object_merge_map::find_merge_section): New.
+       (Object_merge_map::get_input_merge_map): Add a const version.
+       * object.cc (Relobj::is_merge_section_for): Remove.
+       (Relobj::find_merge_section): New.
+       * object.h (Relobj::is_merge_section_for): Remove.
+       (Relobj::find_merge_section): New.
+       * output.cc
+       (Output_section::Input_section::is_merge_section_for): Remove.
+       (Output_section::add_merge_input_section): Don't call
+       add_merge_input_section.
+       (Output_section::find_merge_section): Return const. Use
+       object->find_merge_section.
+       (Output_section::build_lookup_maps): Don't build a map for
+       merge sections.
+       (Output_section::is_input_address_mapped): Return false if
+       section is not found.
+       (Output_section::find_starting_output_address): Use
+       find_merge_section instead of is_merge_section_for.
+       (Output_section::add_script_input_section):  Don't build a map for
+       merge sections.
+       * output.h (Output_section_lookup_maps::merge_sections_by_id_): Remove.
+       (Output_section_lookup_maps::find_merge_section): Remove.
+       (Output_section_lookup_maps::add_merge_input_section) Remove.
+       (Output_section::find_merge_section): Return const.
+
 2015-03-22  Cary Coutant  <cary@google.com>
 
        PR gold/18106
This page took 0.029683 seconds and 4 git commands to generate.