mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-15 04:31:49 +08:00
aab2c17756
gold/ * mips.cc (Mips_got_entry::hash()): Shift addend to reduce possibility of collisions. (Mips_got_entry::equals): Fix case for GOT_TLS_LDM entries.
252 lines
9.1 KiB
Plaintext
252 lines
9.1 KiB
Plaintext
2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
* mips.cc (Mips_got_entry::hash()): Shift addend to reduce
|
||
possibility of collisions.
|
||
(Mips_got_entry::equals): Fix case for GOT_TLS_LDM
|
||
entries.
|
||
|
||
2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
* mips.cc (Mips_relobj::merge_processor_specific_data_): New data
|
||
member.
|
||
(Mips_relobj::merge_processor_specific_data): New method.
|
||
(Mips_relobj::do_read_symbols): Set merge_processor_specific_data_
|
||
to false, only if the input file is a binary or if object has no
|
||
contents except the section name string table and an empty symbol
|
||
table with the undefined symbol.
|
||
(Target_mips::do_finalize_sections): Refactor. Skip empty object files
|
||
for merging processor-specific data.
|
||
|
||
2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
* mips.cc (Target_mips::Relocate::calculated_value_): New data
|
||
member.
|
||
(Target_mips::Relocate::calculate_only_): Likewise.
|
||
(Target_mips::Relocate::relocate): Handle multiple consecutive
|
||
relocations with the same offset.
|
||
|
||
2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
* mips.cc (Target_mips::Relocate::relocate): Remove redundant
|
||
checks for relocatable link.
|
||
(Mips_relocate_functions::reljalr): Likewise.
|
||
|
||
2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
* mips.cc (class Mips_output_section_options): New class.
|
||
(Target_mips::do_make_output_section): New method.
|
||
|
||
2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
* mips.cc (Mips_relocate_functions::rel26): Don't print relocation
|
||
overflow error message.
|
||
(Target_mips::relocate_special_relocatable): Improve relocation
|
||
overflow error message.
|
||
(Target_mips::Relocate::relocate): Likewise.
|
||
|
||
2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
* mips.cc (symbol_refs_local): Return false if a symbol
|
||
is from a dynamic object.
|
||
(Target_mips::got_section): Make _GLOBAL_OFFSET_TABLE_ STV_HIDDEN.
|
||
(Target_mips::set_gp): Refactor. Make _gp STT_NOTYPE and
|
||
STB_LOCAL.
|
||
(Target_mips::do_finalize_sections): Set _gp after all the checks
|
||
for creating .got are done.
|
||
(Target_mips::Scan::global): Remove unused code.
|
||
|
||
2017-02-22 Alan Modra <amodra@gmail.com>
|
||
|
||
* powerpc.cc (Target_powerpc::make_iplt_section): Check that
|
||
output_section exists before attempting add_output_section_data.
|
||
(Target_powerpc::make_brlt_section): Likewise.
|
||
|
||
2017-02-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
* mips.cc (Target_mips::Scan::get_reference_flags): Remove
|
||
gold_unreachable from default case.
|
||
|
||
2017-02-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
PR gold/21111
|
||
* mips.cc (Mips_relocate_functions::relhigher): New method.
|
||
(Mips_relocate_functions::relhighest): Likewise.
|
||
(mips_get_size_for_reloc): Add support for relocs: R_MIPS_HIGHER and
|
||
R_MIPS_HIGHEST.
|
||
(Target_mips::Scan::local): Add support for relocs: R_MIPS_HIGHER,
|
||
R_MIPS_HIGHEST, R_MICROMIPS_HIGHER and R_MICROMIPS_HIGHEST.
|
||
(Target_mips::Scan::global): Likewise.
|
||
(Target_mips::Scan::get_reference_flags): Likewise.
|
||
(Target_mips::Relocate::relocate): Call static methods for resolving
|
||
HIGHER and HIGHEST relocations.
|
||
|
||
2017-02-03 Rahul Chaudhry <rahulchaudhry@google.com>
|
||
|
||
* x86_64.cc (Target_x86_64::do_can_check_for_function_pointers):
|
||
Return true even when building pie binaries.
|
||
(Target_x86_64::possible_function_pointer_reloc): Check opcode
|
||
for R_X86_64_PC32 relocations.
|
||
(Target_x86_64::local_reloc_may_be_function_pointer): Pass
|
||
extra arguments to local_reloc_may_be_function_pointer.
|
||
(Target_x86_64::global_reloc_may_be_function_pointer): Likewise.
|
||
* gc.h (gc_process_relocs): Add check for STT_FUNC.
|
||
* testsuite/Makefile.am (icf_safe_pie_test): New test case.
|
||
* testsuite/Makefile.in: Regenerate.
|
||
* testsuite/icf_safe_pie_test.sh: New shell script.
|
||
|
||
2017-02-03 Alan Modra <amodra@gmail.com>
|
||
|
||
* powerpc.cc (Powerpc_relobj::make_toc_relative): Don't crash
|
||
when no .toc section exists.
|
||
|
||
2017-01-31 Cary Coutant <ccoutant@gmail.com>
|
||
|
||
PR gold/21090
|
||
* x86_64.cc (Target_x86_64::can_convert_mov_to_lea): Add check
|
||
for predefined symbol.
|
||
(Target_x86_64::Relocate::relocate): Fix formatting.
|
||
|
||
2017-01-23 Rahul Chaudhry <rahulchaudhry@google.com>
|
||
|
||
* testsuite/icf_safe_so_test.sh: Use "set -e".
|
||
* testsuite/icf_safe_test.sh: Likewise.
|
||
* testsuite/icf_test.sh: Likewise.
|
||
|
||
2017-01-23 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
* mips.cc (Mips_output_data_plt::rel_plt): Remove const from return
|
||
type.
|
||
(Target_mips::make_plt_entry): Make the sh_info field of .rel.plt
|
||
point to .plt.
|
||
|
||
2017-01-23 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
|
||
|
||
PR gold/21054
|
||
* mips.cc (Mips_got_info::record_global_got_symbol): Don't add symbol
|
||
to the dynamic symbol table if it is forced to local visibility.
|
||
(Target_mips::do_finalize_sections): Don't add __RLD_MAP symbol to the
|
||
dynamic symbol table if it is forced to local visibility.
|
||
|
||
2017-01-20 Nick Clifton <nickc@redhat.com>
|
||
|
||
* aarch64.cc (Stub_template_repertoire): Change ST_E_835769_INSNS
|
||
from a pointer to an array.
|
||
|
||
2017-01-13 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
PR gold/21040
|
||
* powerpc.cc (Powerpc_relobj<size, big_endian>::make_toc_relative):
|
||
Cast 0x80008000 to uint64_t.
|
||
|
||
2017-01-12 Cary Coutant <ccoutant@gmail.com>
|
||
|
||
* object.cc (Sized_relobj_file): Fix byte counts for calls to memmem.
|
||
|
||
2017-01-11 Cary Coutant <ccoutant@gmail.com>
|
||
|
||
PR gold/21040
|
||
* x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
|
||
Remove unnecessary 'typename' keyword.
|
||
(Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
|
||
(Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
|
||
(Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
|
||
(Output_data_plt_x86_64_bnd::do_write): Likewise.
|
||
|
||
2017-01-11 Cary Coutant <ccoutant@gmail.com>
|
||
|
||
PR gold/21040
|
||
* x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
|
||
Remove unnecessary 'typename' keyword.
|
||
(Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
|
||
(Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
|
||
(Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
|
||
* testsuite/copy_test_relro_1.cc (p, b, c, q): Add separate extern
|
||
declarations.
|
||
|
||
2017-01-11 Cary Coutant <ccoutant@gmail.com>
|
||
|
||
PR gold/21039
|
||
* testsuite/script_test_13.sh: Adjust patterns to work for i386.
|
||
* testsuite/script_test_15a.sh: Likewise.
|
||
* testsuite/script_test_15b.sh: Likewise.
|
||
* testsuite/script_test_15c.sh: Likewise.
|
||
|
||
2017-01-11 Alan Modra <amodra@gmail.com>
|
||
|
||
* powerpc.cc (class Powerpc_copy_relocs): New.
|
||
(Powerpc_copy_relocs::emit): New function.
|
||
(Powerpc_relobj::relatoc_, toc_, no_toc_opt_): New variables.
|
||
(Powerpc_relobj::toc_shndx, set_no_toc_opt, no_toc_opt): New inlines.
|
||
(Powerpc_relobj::do_relocate_sections): New function.
|
||
(Powerpc_relobj::make_toc_relative): Likewise.
|
||
(Powerpc_relobj::do_find_special_sections): Stash away .rela.toc
|
||
and .toc too.
|
||
(ok_lo_toc_insn): Move earlier, and handle more insns.
|
||
(Target_powerpc::Scan::local): If optimizing toc accesses, set
|
||
no_toc_opt for entries we can't edit. Check insn validity.
|
||
Emit "toc optimization is not supported" warning, downgraded
|
||
from error.
|
||
(Target_powerpc::Scan::global): Likewise.
|
||
(Target_powerpc::Relocate::relocate): Edit TOC indirect code
|
||
to TOC relative. Don't emit "toc optimization is not supported"
|
||
error here.
|
||
|
||
2017-01-10 Cary Coutant <ccoutant@gmail.com>
|
||
|
||
* aarch64.cc (AArch64_relobj::do_relocate_sections): Call
|
||
Sized_relobj_file::relocate_section_range().
|
||
* arm.cc (Arm_relobj::do_relocate_sections): Likewise.
|
||
* object.h (Sized_relobj_file::relocate_section_range): New method.
|
||
* reloc.cc (Sized_relobj_file::do_relocate_sections): Move
|
||
implementation...
|
||
(Sized_relobj_file::relocate_section_range): ...to new method.
|
||
|
||
2017-01-10 Alan Modra <amodra@gmail.com>
|
||
|
||
* testsuite/ver_test_8.sh: Accept .TOC. in lieu of
|
||
_GLOBAL_OFFSET_TABLE_. Allow zero count.
|
||
* testsuite/copy_test_relro_1.cc (c, q): New vars.
|
||
* testsuite/copy_test_relro.cc: Rewrite to test read-only
|
||
status of variables directly. Reference new vars in
|
||
read-only data.
|
||
|
||
2017-01-10 Alan Modra <amodra@gmail.com>
|
||
|
||
* options.h: Add --secure-plt option.
|
||
* powerpc.cc (Target_powerpc::Scan::local): Detect and error
|
||
on -fPIC -mbss-plt code.
|
||
(Target_powerpc::Scan::global): Likewise.
|
||
|
||
2017-01-09 Alan Modra <amodra@gmail.com>
|
||
|
||
* powerpc.cc (Target_powerpc::make_plt_section): Point sh_info of
|
||
".rela.plt" at ".plt".
|
||
|
||
2017-01-07 Alan Modra <amodra@gmail.com>
|
||
|
||
* powerpc.cc: Use shorter equivalent elfcpp typedef for
|
||
Reltype and reloc_size throughout.
|
||
(Target_powerpc::symval_for_branch): Exclude dynamic symbols.
|
||
(Target_powerpc::Scan::local): Use local var r_sym.
|
||
(Target_powerpc::Scan::global: Likewise.
|
||
(Target_powerpc::Relocate::relocate): Delete shadowing r_sym.
|
||
|
||
2017-01-02 Alan Modra <amodra@gmail.com>
|
||
|
||
Update year range in copyright notice of all files.
|
||
|
||
For older changes see ChangeLog-2016
|
||
|
||
Copyright (C) 2017 Free Software Foundation, Inc.
|
||
|
||
Copying and distribution of this file, with or without modification,
|
||
are permitted in any medium without royalty provided the copyright
|
||
notice and this notice are preserved.
|
||
|
||
Local Variables:
|
||
mode: change-log
|
||
left-margin: 8
|
||
fill-column: 74
|
||
version-control: never
|
||
End:
|