1 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
3 * mips.cc (class Mips_output_section_options): New class.
4 (Target_mips::do_make_output_section): New method.
6 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
8 * mips.cc (Mips_relocate_functions::rel26): Don't print relocation
9 overflow error message.
10 (Target_mips::relocate_special_relocatable): Improve relocation
11 overflow error message.
12 (Target_mips::Relocate::relocate): Likewise.
14 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
16 * mips.cc (symbol_refs_local): Return false if a symbol
17 is from a dynamic object.
18 (Target_mips::got_section): Make _GLOBAL_OFFSET_TABLE_ STV_HIDDEN.
19 (Target_mips::set_gp): Refactor. Make _gp STT_NOTYPE and
21 (Target_mips::do_finalize_sections): Set _gp after all the checks
22 for creating .got are done.
23 (Target_mips::Scan::global): Remove unused code.
25 2017-02-22 Alan Modra <amodra@gmail.com>
27 * powerpc.cc (Target_powerpc::make_iplt_section): Check that
28 output_section exists before attempting add_output_section_data.
29 (Target_powerpc::make_brlt_section): Likewise.
31 2017-02-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
33 * mips.cc (Target_mips::Scan::get_reference_flags): Remove
34 gold_unreachable from default case.
36 2017-02-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
39 * mips.cc (Mips_relocate_functions::relhigher): New method.
40 (Mips_relocate_functions::relhighest): Likewise.
41 (mips_get_size_for_reloc): Add support for relocs: R_MIPS_HIGHER and
43 (Target_mips::Scan::local): Add support for relocs: R_MIPS_HIGHER,
44 R_MIPS_HIGHEST, R_MICROMIPS_HIGHER and R_MICROMIPS_HIGHEST.
45 (Target_mips::Scan::global): Likewise.
46 (Target_mips::Scan::get_reference_flags): Likewise.
47 (Target_mips::Relocate::relocate): Call static methods for resolving
48 HIGHER and HIGHEST relocations.
50 2017-02-03 Rahul Chaudhry <rahulchaudhry@google.com>
52 * x86_64.cc (Target_x86_64::do_can_check_for_function_pointers):
53 Return true even when building pie binaries.
54 (Target_x86_64::possible_function_pointer_reloc): Check opcode
55 for R_X86_64_PC32 relocations.
56 (Target_x86_64::local_reloc_may_be_function_pointer): Pass
57 extra arguments to local_reloc_may_be_function_pointer.
58 (Target_x86_64::global_reloc_may_be_function_pointer): Likewise.
59 * gc.h (gc_process_relocs): Add check for STT_FUNC.
60 * testsuite/Makefile.am (icf_safe_pie_test): New test case.
61 * testsuite/Makefile.in: Regenerate.
62 * testsuite/icf_safe_pie_test.sh: New shell script.
64 2017-02-03 Alan Modra <amodra@gmail.com>
66 * powerpc.cc (Powerpc_relobj::make_toc_relative): Don't crash
67 when no .toc section exists.
69 2017-01-31 Cary Coutant <ccoutant@gmail.com>
72 * x86_64.cc (Target_x86_64::can_convert_mov_to_lea): Add check
73 for predefined symbol.
74 (Target_x86_64::Relocate::relocate): Fix formatting.
76 2017-01-23 Rahul Chaudhry <rahulchaudhry@google.com>
78 * testsuite/icf_safe_so_test.sh: Use "set -e".
79 * testsuite/icf_safe_test.sh: Likewise.
80 * testsuite/icf_test.sh: Likewise.
82 2017-01-23 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
84 * mips.cc (Mips_output_data_plt::rel_plt): Remove const from return
86 (Target_mips::make_plt_entry): Make the sh_info field of .rel.plt
89 2017-01-23 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
92 * mips.cc (Mips_got_info::record_global_got_symbol): Don't add symbol
93 to the dynamic symbol table if it is forced to local visibility.
94 (Target_mips::do_finalize_sections): Don't add __RLD_MAP symbol to the
95 dynamic symbol table if it is forced to local visibility.
97 2017-01-20 Nick Clifton <nickc@redhat.com>
99 * aarch64.cc (Stub_template_repertoire): Change ST_E_835769_INSNS
100 from a pointer to an array.
102 2017-01-13 H.J. Lu <hongjiu.lu@intel.com>
105 * powerpc.cc (Powerpc_relobj<size, big_endian>::make_toc_relative):
106 Cast 0x80008000 to uint64_t.
108 2017-01-12 Cary Coutant <ccoutant@gmail.com>
110 * object.cc (Sized_relobj_file): Fix byte counts for calls to memmem.
112 2017-01-11 Cary Coutant <ccoutant@gmail.com>
115 * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
116 Remove unnecessary 'typename' keyword.
117 (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
118 (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
119 (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
120 (Output_data_plt_x86_64_bnd::do_write): Likewise.
122 2017-01-11 Cary Coutant <ccoutant@gmail.com>
125 * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
126 Remove unnecessary 'typename' keyword.
127 (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
128 (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
129 (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
130 * testsuite/copy_test_relro_1.cc (p, b, c, q): Add separate extern
133 2017-01-11 Cary Coutant <ccoutant@gmail.com>
136 * testsuite/script_test_13.sh: Adjust patterns to work for i386.
137 * testsuite/script_test_15a.sh: Likewise.
138 * testsuite/script_test_15b.sh: Likewise.
139 * testsuite/script_test_15c.sh: Likewise.
141 2017-01-11 Alan Modra <amodra@gmail.com>
143 * powerpc.cc (class Powerpc_copy_relocs): New.
144 (Powerpc_copy_relocs::emit): New function.
145 (Powerpc_relobj::relatoc_, toc_, no_toc_opt_): New variables.
146 (Powerpc_relobj::toc_shndx, set_no_toc_opt, no_toc_opt): New inlines.
147 (Powerpc_relobj::do_relocate_sections): New function.
148 (Powerpc_relobj::make_toc_relative): Likewise.
149 (Powerpc_relobj::do_find_special_sections): Stash away .rela.toc
151 (ok_lo_toc_insn): Move earlier, and handle more insns.
152 (Target_powerpc::Scan::local): If optimizing toc accesses, set
153 no_toc_opt for entries we can't edit. Check insn validity.
154 Emit "toc optimization is not supported" warning, downgraded
156 (Target_powerpc::Scan::global): Likewise.
157 (Target_powerpc::Relocate::relocate): Edit TOC indirect code
158 to TOC relative. Don't emit "toc optimization is not supported"
161 2017-01-10 Cary Coutant <ccoutant@gmail.com>
163 * aarch64.cc (AArch64_relobj::do_relocate_sections): Call
164 Sized_relobj_file::relocate_section_range().
165 * arm.cc (Arm_relobj::do_relocate_sections): Likewise.
166 * object.h (Sized_relobj_file::relocate_section_range): New method.
167 * reloc.cc (Sized_relobj_file::do_relocate_sections): Move
169 (Sized_relobj_file::relocate_section_range): ...to new method.
171 2017-01-10 Alan Modra <amodra@gmail.com>
173 * testsuite/ver_test_8.sh: Accept .TOC. in lieu of
174 _GLOBAL_OFFSET_TABLE_. Allow zero count.
175 * testsuite/copy_test_relro_1.cc (c, q): New vars.
176 * testsuite/copy_test_relro.cc: Rewrite to test read-only
177 status of variables directly. Reference new vars in
180 2017-01-10 Alan Modra <amodra@gmail.com>
182 * options.h: Add --secure-plt option.
183 * powerpc.cc (Target_powerpc::Scan::local): Detect and error
184 on -fPIC -mbss-plt code.
185 (Target_powerpc::Scan::global): Likewise.
187 2017-01-09 Alan Modra <amodra@gmail.com>
189 * powerpc.cc (Target_powerpc::make_plt_section): Point sh_info of
190 ".rela.plt" at ".plt".
192 2017-01-07 Alan Modra <amodra@gmail.com>
194 * powerpc.cc: Use shorter equivalent elfcpp typedef for
195 Reltype and reloc_size throughout.
196 (Target_powerpc::symval_for_branch): Exclude dynamic symbols.
197 (Target_powerpc::Scan::local): Use local var r_sym.
198 (Target_powerpc::Scan::global: Likewise.
199 (Target_powerpc::Relocate::relocate): Delete shadowing r_sym.
201 2017-01-02 Alan Modra <amodra@gmail.com>
203 Update year range in copyright notice of all files.
205 For older changes see ChangeLog-2016
207 Copyright (C) 2017 Free Software Foundation, Inc.
209 Copying and distribution of this file, with or without modification,
210 are permitted in any medium without royalty provided the copyright
211 notice and this notice are preserved.
217 version-control: never