Add support for R_AARCH64_TLSLE_LDST8_TPREL_LO12, etc.
[deliverable/binutils-gdb.git] / gold / ChangeLog
index 6414d6880ab56b237f651f63b92dfd7b492f8795..1ba3414f433f53732f7564f5ccb59fd005ef9b09 100644 (file)
@@ -1,3 +1,170 @@
+2018-03-28  Cary Coutant  <ccoutant@gmail.com>
+
+       PR gold/22969
+       * aarch64-reloc.def: Add TLSLE_LDST* relocations.
+       * aarch64.cc (Target_aarch64::optimize_tls_reloc): Likewise.
+       (Target_aarch64::Scan::local): Likewise.
+       (Target_aarch64::Scan::global): Likewise.
+       (Target_aarch64::Relocate::relocate): Likewise.
+       (Target_aarch64::Relocate::relocate_tls): Likewise.
+
+2018-03-27  Roland McGrath  <mcgrathr@google.com>
+
+       * testsuite/split_x86_64.sh: Fix bad regexp.
+
+2018-03-26  Cary Coutant  <ccoutant@gmail.com>
+
+       PR gold/22868
+       * plugin.cc (Sized_pluginobj::do_add_symbols): Use a real section
+       index instead of SHN_ABS for defined symbols.
+       * testsuite/Makefile.am (plugin_pr22868): New test case.
+       * testsuite/Makefile.in: Regenerate
+       * testsuite/plugin_pr22868.sh: New test script.
+       * testsuite/plugin_pr22868_a.c: New source file.
+       * testsuite/plugin_pr22868_b.c: New source file.
+
+2018-03-23  Cary Coutant  <ccoutant@gmail.com>
+
+       * plugin.cc (link_or_copy_file): Remove newlines from warning messages.
+       Add pedantic check for return value from ::write.
+
+2018-03-23  Cary Coutant  <ccoutant@gmail.com>
+
+       * debug.h (DEBUG_PLUGIN): New constant.
+       (DEBUG_ALL): Add DEBUG_PLUGIN.
+       (debug_string_to_enum): Likewise.
+       * plugin.cc (make_sized_plugin_object): Add filename parameter.
+       (Plugin_recorder): New class.
+       (Plugin_manager::~Plugin_manager): Delete recorder_.
+       (Plugin_manager::load_plugins): Create and initialize recorder_.
+       (Plugin_manager::claim_file): Record claimed and unclaimed files.
+       (Plugin_manager::make_plugin_object): Use object name as name for
+       plugin object, if available.
+       (Plugin_manager::add_input_file): Record replacement files.
+       (Sized_pluginobj::do_add_symbols): Record plugin symbols.
+       (Plugin_finish::run): Call Plugin_recorder::finish().
+       (make_sized_plugin_object): Add filename parameter and pass to
+       Sized_pluginobj constructor.
+       * plugin.h (Plugin::filename): New method.
+       (Plugin::recorder): New method.
+       (Plugin::recorder_): New data member.
+
+2018-03-07  Sriraman Tallam  <tmsriram@google.com>
+
+       * layout.cc (Layout::default_section_order): Check for text section
+       prefixes.
+       (Layout::text_section_name_mapping): New static member.
+       (Layout::text_section_name_mapping_count): New static member.
+       (Layout::match_section_name): New static function.
+       (Layout::output_section_name): Check for text section prefixes.
+       * layout.h (Output_section_order::ORDER_TEXT_HOT): New enum value.
+       (Output_section_order::ORDER_TEXT_STARTUP): New enum value.
+       (Output_section_order::ORDER_TEXT_EXIT): New enum value.
+       (Output_section_order::ORDER_TEXT_UNLIKELY): New enum value.
+       (Layout::text_section_name_mapping): New static member.
+       (Layout::text_section_name_mapping_count): New static member.
+       (Layout::match_section_name): New static function.
+       * options.h (keep_text_section_prefix): New -z option.
+       * testsuite/Makefile.am (keep_text_section_prefix): New test.
+       * testsuite/Makefile.in: Regenerate.
+       * testsuite/keep_text_section_prefix.cc: New test source.
+       * testsuite/keep_text_section_prefix.sh: New test script.
+
+2018-02-22  Sriraman Tallam  <tmsriram@google.com>
+
+       * plugin.cc (get_wrap_symbols): New plugin interface.
+       (load): Add get_wrap_symbols to transfer vector.
+       * plugin-api.h (ld_plugin_get_wrap_symbols): New plugin interface.
+       * testsuite/plugin_test.c (onload): Call and check get_wrap_symbols
+       interface.
+       * testsuite/plugin_test_wrap_symbols.sh: New test script.
+       * testsuite/plugin_test_wrap_symbols_1.cc: New file.
+       * testsuite/plugin_test_wrap_symbols_2.cc: New file.
+       * testsuite/Makefile.am (plugin_test_wrap_symbols): New test.
+       * testsuite/Makefile.in: Regenerate.
+
+2018-02-07  Sriraman Tallam  <tmsriram@google.com>
+
+       * expression.cc (Symbol_expression::set_expr_sym_in_real_elf):
+       New method.
+       (Unary_expression::set_expr_sym_in_real_elf): New method.
+       (Binary_expression::set_expr_sym_in_real_elf): New method.
+       (Trinary_expression::set_expr_sym_in_real_elf): New method.
+       * plugin.cc (get_symbol_resolution_info): Fix symbol resolution if
+       defined or used in defsyms.
+       * plugin.h (Plugin_manager::is_defsym_def): New method.
+       (Plugin_manager::Plugin_manager): Initialize defsym_defines_set_.
+       (Plugin_manager::defsym_defines_set_): New member.
+       (Plugin_manager::Defsym_defines_set): New typedef.
+       * script.cc (Script_options::set_defsym_uses_in_real_elf): New method.
+       (Script_options::find_defsym_defs): New method.
+       * script.h (Expression::set_expr_sym_in_real_elf): New method.
+       (Symbol_assignment::is_defsym): New method.
+       (Symbol_assignment::value): New method.
+       (Script_options::find_defsym_defs): New method.
+       (Script_options::set_defsym_uses_in_real_elf): New method.
+       * testsuite/Makefile.am (plugin_test_defsym): New test.
+       * testsuite/Makefile.in: Regenerate.
+       * testsuite/plugin_test.c: Check for new symbol resolution.
+       * testsuite/plugin_test_defsym.sh: New script.
+       * testsuite/plugin_test_defsym.c: New test source.
+
+2018-02-07  Alan Modra  <amodra@gmail.com>
+
+       Revert 2018-01-17  Alan Modra  <amodra@gmail.com>
+       * options.h: Remove --speculate-indirect-jumps support.
+       * powerpc.cc: Likewise.
+
+2018-02-02  Cary Coutant  <ccoutant@gmail.com>
+
+       * PR gold/22776
+       * dwarf_reader.cc (Sized_dwarf_line_info::read_header_prolog): Add
+       support for DWARF-4 line number tables.
+       * dwarf_reader.h (Sized_dwarf_line_info::max_ops_per_insn): New field.
+
+2018-01-18  Alan Modra  <amodra@gmail.com>
+
+       * powerpc.cc (param_plt_align): New function supplying default
+       --plt-align values.  Use it..
+       (Stub_table::plt_call_align): ..here, and..
+       (Output_data_glink::global_entry_align): ..here.
+       (Stub_table::stub_align): Correct 32-bit minimum alignment.
+
+2018-01-17  Alan Modra  <amodra@gmail.com>
+
+       * options.h (speculate_indirect_jumps): New option.
+       * powerpc.cc (beqctrm, beqctrlm, crseteq): New insn constants.
+       (output_bctr): New function.
+       (Stub_table::plt_call_size): Add space for speculation barrier.
+       (Stub_table::branch_stub_size): Likewise.
+       (Output_data_glink::pltresolve_size): Likewise.
+       (Stub_table::do_write): Output speculation barriers.
+
+2018-01-17  Alan Modra  <amodra@gmail.com>
+
+       * options.h (plt_align): Support for PowerPC32 too.
+       * powerpc.cc (Stub_table::stub_align): Heed --plt-align for 32-bit.
+       (Stub_table::plt_call_size, branch_stub_size): Tidy.
+       (Stub_table::plt_call_align): Implement using stub_align.
+       (Output_data_glink::global_entry_align): New function.
+       (Output_data_glink::global_entry_off): New function.
+       (Output_data_glink::global_entry_address): Use global_entry_off.
+       (Output_data_glink::pltresolve_size): New function, replacing
+       pltresolve_size_ constant.  Update all uses.
+       (Output_data_glink::add_global_entry): Align offset.
+       (Output_data_glink::set_final_data_size): Use global_entry_align.
+       (Stub_table::do_write): Don't pad __glink_PLTrelsolve with nops.
+       Tidy stub output.  Use global_entry_off.
+
+2018-01-15  Cary Coutant  <ccoutant@gmail.com>
+
+       PR gold/22694
+       * options.h (-fuse-ld): Add correct helparg.
+
+2018-01-15  Nick Clifton  <nickc@redhat.com>
+
+       * po/uk.po: Updated Ukranian translation.
+
 2018-01-13  Nick Clifton  <nickc@redhat.com>
 
        * po/gold.pot: Regenerated.
This page took 0.027555 seconds and 4 git commands to generate.