Add a test for PR ld/21384
[deliverable/binutils-gdb.git] / gold / ChangeLog
1 2017-04-27 Alan Modra <amodra@gmail.com>
2
3 * testsuite/plugin_section_order.c (onload): Add missing break.
4
5 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
6
7 * mips.cc (Mips_got_entry::hash()): Shift addend to reduce
8 possibility of collisions.
9 (Mips_got_entry::equals): Fix case for GOT_TLS_LDM
10 entries.
11
12 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
13
14 * mips.cc (Mips_relobj::merge_processor_specific_data_): New data
15 member.
16 (Mips_relobj::merge_processor_specific_data): New method.
17 (Mips_relobj::do_read_symbols): Set merge_processor_specific_data_
18 to false, only if the input file is a binary or if object has no
19 contents except the section name string table and an empty symbol
20 table with the undefined symbol.
21 (Target_mips::do_finalize_sections): Refactor. Skip empty object files
22 for merging processor-specific data.
23
24 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
25
26 * mips.cc (Target_mips::Relocate::calculated_value_): New data
27 member.
28 (Target_mips::Relocate::calculate_only_): Likewise.
29 (Target_mips::Relocate::relocate): Handle multiple consecutive
30 relocations with the same offset.
31
32 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
33
34 * mips.cc (Target_mips::Relocate::relocate): Remove redundant
35 checks for relocatable link.
36 (Mips_relocate_functions::reljalr): Likewise.
37
38 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
39
40 * mips.cc (class Mips_output_section_options): New class.
41 (Target_mips::do_make_output_section): New method.
42
43 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
44
45 * mips.cc (Mips_relocate_functions::rel26): Don't print relocation
46 overflow error message.
47 (Target_mips::relocate_special_relocatable): Improve relocation
48 overflow error message.
49 (Target_mips::Relocate::relocate): Likewise.
50
51 2017-03-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
52
53 * mips.cc (symbol_refs_local): Return false if a symbol
54 is from a dynamic object.
55 (Target_mips::got_section): Make _GLOBAL_OFFSET_TABLE_ STV_HIDDEN.
56 (Target_mips::set_gp): Refactor. Make _gp STT_NOTYPE and
57 STB_LOCAL.
58 (Target_mips::do_finalize_sections): Set _gp after all the checks
59 for creating .got are done.
60 (Target_mips::Scan::global): Remove unused code.
61
62 2017-02-22 Alan Modra <amodra@gmail.com>
63
64 * powerpc.cc (Target_powerpc::make_iplt_section): Check that
65 output_section exists before attempting add_output_section_data.
66 (Target_powerpc::make_brlt_section): Likewise.
67
68 2017-02-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
69
70 * mips.cc (Target_mips::Scan::get_reference_flags): Remove
71 gold_unreachable from default case.
72
73 2017-02-15 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
74
75 PR gold/21111
76 * mips.cc (Mips_relocate_functions::relhigher): New method.
77 (Mips_relocate_functions::relhighest): Likewise.
78 (mips_get_size_for_reloc): Add support for relocs: R_MIPS_HIGHER and
79 R_MIPS_HIGHEST.
80 (Target_mips::Scan::local): Add support for relocs: R_MIPS_HIGHER,
81 R_MIPS_HIGHEST, R_MICROMIPS_HIGHER and R_MICROMIPS_HIGHEST.
82 (Target_mips::Scan::global): Likewise.
83 (Target_mips::Scan::get_reference_flags): Likewise.
84 (Target_mips::Relocate::relocate): Call static methods for resolving
85 HIGHER and HIGHEST relocations.
86
87 2017-02-03 Rahul Chaudhry <rahulchaudhry@google.com>
88
89 * x86_64.cc (Target_x86_64::do_can_check_for_function_pointers):
90 Return true even when building pie binaries.
91 (Target_x86_64::possible_function_pointer_reloc): Check opcode
92 for R_X86_64_PC32 relocations.
93 (Target_x86_64::local_reloc_may_be_function_pointer): Pass
94 extra arguments to local_reloc_may_be_function_pointer.
95 (Target_x86_64::global_reloc_may_be_function_pointer): Likewise.
96 * gc.h (gc_process_relocs): Add check for STT_FUNC.
97 * testsuite/Makefile.am (icf_safe_pie_test): New test case.
98 * testsuite/Makefile.in: Regenerate.
99 * testsuite/icf_safe_pie_test.sh: New shell script.
100
101 2017-02-03 Alan Modra <amodra@gmail.com>
102
103 * powerpc.cc (Powerpc_relobj::make_toc_relative): Don't crash
104 when no .toc section exists.
105
106 2017-01-31 Cary Coutant <ccoutant@gmail.com>
107
108 PR gold/21090
109 * x86_64.cc (Target_x86_64::can_convert_mov_to_lea): Add check
110 for predefined symbol.
111 (Target_x86_64::Relocate::relocate): Fix formatting.
112
113 2017-01-23 Rahul Chaudhry <rahulchaudhry@google.com>
114
115 * testsuite/icf_safe_so_test.sh: Use "set -e".
116 * testsuite/icf_safe_test.sh: Likewise.
117 * testsuite/icf_test.sh: Likewise.
118
119 2017-01-23 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
120
121 * mips.cc (Mips_output_data_plt::rel_plt): Remove const from return
122 type.
123 (Target_mips::make_plt_entry): Make the sh_info field of .rel.plt
124 point to .plt.
125
126 2017-01-23 Vladimir Radosavljevic <Vladimir.Radosavljevic@imgtec.com>
127
128 PR gold/21054
129 * mips.cc (Mips_got_info::record_global_got_symbol): Don't add symbol
130 to the dynamic symbol table if it is forced to local visibility.
131 (Target_mips::do_finalize_sections): Don't add __RLD_MAP symbol to the
132 dynamic symbol table if it is forced to local visibility.
133
134 2017-01-20 Nick Clifton <nickc@redhat.com>
135
136 * aarch64.cc (Stub_template_repertoire): Change ST_E_835769_INSNS
137 from a pointer to an array.
138
139 2017-01-13 H.J. Lu <hongjiu.lu@intel.com>
140
141 PR gold/21040
142 * powerpc.cc (Powerpc_relobj<size, big_endian>::make_toc_relative):
143 Cast 0x80008000 to uint64_t.
144
145 2017-01-12 Cary Coutant <ccoutant@gmail.com>
146
147 * object.cc (Sized_relobj_file): Fix byte counts for calls to memmem.
148
149 2017-01-11 Cary Coutant <ccoutant@gmail.com>
150
151 PR gold/21040
152 * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
153 Remove unnecessary 'typename' keyword.
154 (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
155 (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
156 (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
157 (Output_data_plt_x86_64_bnd::do_write): Likewise.
158
159 2017-01-11 Cary Coutant <ccoutant@gmail.com>
160
161 PR gold/21040
162 * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
163 Remove unnecessary 'typename' keyword.
164 (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
165 (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
166 (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
167 * testsuite/copy_test_relro_1.cc (p, b, c, q): Add separate extern
168 declarations.
169
170 2017-01-11 Cary Coutant <ccoutant@gmail.com>
171
172 PR gold/21039
173 * testsuite/script_test_13.sh: Adjust patterns to work for i386.
174 * testsuite/script_test_15a.sh: Likewise.
175 * testsuite/script_test_15b.sh: Likewise.
176 * testsuite/script_test_15c.sh: Likewise.
177
178 2017-01-11 Alan Modra <amodra@gmail.com>
179
180 * powerpc.cc (class Powerpc_copy_relocs): New.
181 (Powerpc_copy_relocs::emit): New function.
182 (Powerpc_relobj::relatoc_, toc_, no_toc_opt_): New variables.
183 (Powerpc_relobj::toc_shndx, set_no_toc_opt, no_toc_opt): New inlines.
184 (Powerpc_relobj::do_relocate_sections): New function.
185 (Powerpc_relobj::make_toc_relative): Likewise.
186 (Powerpc_relobj::do_find_special_sections): Stash away .rela.toc
187 and .toc too.
188 (ok_lo_toc_insn): Move earlier, and handle more insns.
189 (Target_powerpc::Scan::local): If optimizing toc accesses, set
190 no_toc_opt for entries we can't edit. Check insn validity.
191 Emit "toc optimization is not supported" warning, downgraded
192 from error.
193 (Target_powerpc::Scan::global): Likewise.
194 (Target_powerpc::Relocate::relocate): Edit TOC indirect code
195 to TOC relative. Don't emit "toc optimization is not supported"
196 error here.
197
198 2017-01-10 Cary Coutant <ccoutant@gmail.com>
199
200 * aarch64.cc (AArch64_relobj::do_relocate_sections): Call
201 Sized_relobj_file::relocate_section_range().
202 * arm.cc (Arm_relobj::do_relocate_sections): Likewise.
203 * object.h (Sized_relobj_file::relocate_section_range): New method.
204 * reloc.cc (Sized_relobj_file::do_relocate_sections): Move
205 implementation...
206 (Sized_relobj_file::relocate_section_range): ...to new method.
207
208 2017-01-10 Alan Modra <amodra@gmail.com>
209
210 * testsuite/ver_test_8.sh: Accept .TOC. in lieu of
211 _GLOBAL_OFFSET_TABLE_. Allow zero count.
212 * testsuite/copy_test_relro_1.cc (c, q): New vars.
213 * testsuite/copy_test_relro.cc: Rewrite to test read-only
214 status of variables directly. Reference new vars in
215 read-only data.
216
217 2017-01-10 Alan Modra <amodra@gmail.com>
218
219 * options.h: Add --secure-plt option.
220 * powerpc.cc (Target_powerpc::Scan::local): Detect and error
221 on -fPIC -mbss-plt code.
222 (Target_powerpc::Scan::global): Likewise.
223
224 2017-01-09 Alan Modra <amodra@gmail.com>
225
226 * powerpc.cc (Target_powerpc::make_plt_section): Point sh_info of
227 ".rela.plt" at ".plt".
228
229 2017-01-07 Alan Modra <amodra@gmail.com>
230
231 * powerpc.cc: Use shorter equivalent elfcpp typedef for
232 Reltype and reloc_size throughout.
233 (Target_powerpc::symval_for_branch): Exclude dynamic symbols.
234 (Target_powerpc::Scan::local): Use local var r_sym.
235 (Target_powerpc::Scan::global: Likewise.
236 (Target_powerpc::Relocate::relocate): Delete shadowing r_sym.
237
238 2017-01-02 Alan Modra <amodra@gmail.com>
239
240 Update year range in copyright notice of all files.
241
242 For older changes see ChangeLog-2016
243 \f
244 Copyright (C) 2017 Free Software Foundation, Inc.
245
246 Copying and distribution of this file, with or without modification,
247 are permitted in any medium without royalty provided the copyright
248 notice and this notice are preserved.
249
250 Local Variables:
251 mode: change-log
252 left-margin: 8
253 fill-column: 74
254 version-control: never
255 End:
This page took 0.040243 seconds and 4 git commands to generate.