MIPS messages
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2018-02-26 Alan Modra <amodra@gmail.com>
2
3 * elfxx-mips.c: Standardize error/warning messages.
4
5 2018-02-26 Alan Modra <amodra@gmail.com>
6
7 * dwarf2.c, * elf-attrs.c, * elf-eh-frame.c, * elf.c, * elf32-gen.c,
8 * elflink.c: Standardize error/warning messages. Replace use of
9 linker callback einfo with _bfd_error_handler when possible.
10
11 2018-02-26 Alan Modra <amodra@gmail.com>
12
13 * aoutx.h, * coff-alpha.c, * coff-i860.c, * coff-m68k.c,
14 * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c, * coff-sh.c,
15 * coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c, * coff-w65.c,
16 * elf-bfd.h, * elf-m10300.c, * elf.c, * elf32-avr.c, * elf32-bfin.c,
17 * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c,
18 * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c,
19 * elf32-fr30.c, * elf32-frv.c, * elf32-i370.c, * elf32-i386.c,
20 * elf32-i960.c, * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c,
21 * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c,
22 * elf32-m68k.c, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c,
23 * elf32-microblaze.c, * elf32-mips.c, * elf32-moxie.c,
24 * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, * elf32-or1k.c,
25 * elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-rx.c,
26 * elf32-s390.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c,
27 * elf32-v850.c, * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c,
28 * elf32-xgate.c, * elf32-xtensa.c, * elf64-alpha.c,
29 * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c,
30 * elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c,
31 * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c,
32 * elfnn-riscv.c, * elfxx-mips.c, * elfxx-riscv.c, * elfxx-riscv.h,
33 * elfxx-sparc.c, * elfxx-sparc.h, * reloc.c: Standardize
34 unrecognized/unsupported reloc message.
35
36 2018-02-26 Alan Modra <amodra@gmail.com>
37
38 * elf32-ppc.c: Standardize error/warning messages. Use
39 _bfd_error_handler rather than einfo when einfo features not used.
40 * elf64-ppc.c: Likewise.
41
42 2018-02-23 Alan Modra <amodra@gmail.com>
43
44 PR 22881
45 * elf.c (assign_file_positions_for_non_load_sections): Remove RELRO
46 segment if no matching LOAD segment.
47
48 2018-02-23 Kuan-Lin Chen <kuanlinchentw@gmail.com>
49
50 * elf32-nds32.h: Define mask for ict_model.
51
52 2018-02-20 Jason Duerstock <jason.duerstock@gmail.com>
53
54 * elfnn-ia64.c (elf_backend_can_gc_sections): Enable.
55
56 2018-02-19 Maciej W. Rozycki <macro@mips.com>
57
58 Revert
59 2018-01-12 Vlad Ivanov <vlad@ivanov.email>
60
61 * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
62 .reginfo section has wrong size.
63
64 2018-02-19 Maciej W. Rozycki <macro@mips.com>
65
66 * elfxx-mips.c (_bfd_mips_elf_always_size_sections): Set
67 SEC_FIXED_SIZE and SEC_HAS_CONTENTS flags for `.reginfo' and
68 `.MIPS.abiflags' sections.
69 (_bfd_mips_elf_final_link): Avoid reading beyond `.reginfo'
70 section's end.
71
72 2018-02-19 Maciej W. Rozycki <macro@mips.com>
73
74 * section.c (SEC_FIXED_SIZE): New macro.
75 * bfd-in2.h: Regenerate.
76
77 2018-02-19 Maciej W. Rozycki <macro@mips.com>
78
79 * section.c (SEC_HAS_GOT_REF): Remove macro.
80 * bfd-in2.h: Regenerate.
81
82 2018-02-19 Alan Modra <amodra@gmail.com>
83
84 * elf-attrs.c (_bfd_elf_parse_attributes): Correct _bfd_error_handler
85 arguments.
86 * elfxx-mips.c (_bfd_mips_elf_final_link): Likewise.
87 * elfnn-riscv.c (_bfd_riscv_relax_align): Likewise.
88 (_bfd_riscv_relax_pc): Likewise and fix typos.
89 * libbfd-in.h (_bfd_error_handler): Add attribute printf.
90 * libbfd.h: Regenerate.
91
92 2018-02-19 Alan Modra <amodra@gmail.com>
93
94 * dwarf2.c (read_section): Don't use 'll' format modifier.
95 (find_abstract_instance): Likewise.
96 * elfcore.h (elf_core_file_p): Likewise.
97
98 2018-02-19 Alan Modra <amodra@gmail.com>
99
100 * bfd-in.h: Include inttypes.h or if not available define
101 PRId64, PRIu64 and PRIx64.
102 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Remove support for L
103 modifier to print bfd_vma.
104 * coff-arm.c, * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c,
105 * coff-sh.c, * coff-tic80.c, * coffcode.h, * coffgen.c, * cofflink.c,
106 * compress.c, * dwarf2.c, * elf-m10300.c, * elf.c, * elf32-arc.c,
107 * elf32-arm.c, * elf32-bfin.c, * elf32-cris.c, * elf32-hppa.c,
108 * elf32-i386.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32r.c,
109 * elf32-m68k.c, * elf32-metag.c, * elf32-nds32.c, * elf32-nios2.c,
110 * elf32-ppc.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c,
111 * elf32-score7.c, * elf32-sh.c, * elf32-sh64.c, * elf32-spu.c,
112 * elf32-tic6x.c, * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c,
113 * elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c,
114 * elf64-mmix.c, * elf64-s390.c, * elf64-sh64.c, * elf64-x86-64.c,
115 * elfcode.h, * elfcore.h, * elflink.c, * elfnn-aarch64.c,
116 * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c, * elfxx-sparc.c,
117 * elfxx-tilegx.c, * ieee.c, * ihex.c, * mach-o.c, * merge.c, * mmo.c,
118 * peXXigen.c, * xcofflink.c: Replace use of Lx modifier with PRIx64,
119 and cast input to uint64_t, and similarly for Ld and Lu.
120 * bfd-in2.h: Regenerate.
121
122 2018-02-19 Alan Modra <amodra@gmail.com>
123
124 * elf32-arm.c, * elf32-hppa.c, * elf32-lm32.c, * elf32-m32r.c,
125 * elf32-metag.c, * elf32-nds32.c, * elf32-or1k.c, * elf32-ppc.c,
126 * elf32-s390.c, * elf32-sh.c, * elf32-tic6x.c, * elf32-tilepro.c,
127 * elf64-ppc.c, * elf64-s390.c, * elflink.c, * elfnn-aarch64.c,
128 * elfnn-riscv.c, * elfxx-sparc.c, * elfxx-tilegx.c, * elfxx-x86.c,
129 * reloc.c: Replace use of %R and %T in format strings passed to
130 einfo and friends by %pR and %pT.
131
132 2018-02-19 Alan Modra <amodra@gmail.com>
133
134 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Handle %pA and %pB in place
135 of %A and %B.
136 * aout-adobe.c: Update all messages using %A and %B.
137 * aout-cris.c: Likewise.
138 * aoutx.h: Likewise.
139 * archive.c: Likewise.
140 * binary.c: Likewise.
141 * cache.c: Likewise.
142 * coff-alpha.c: Likewise.
143 * coff-arm.c: Likewise.
144 * coff-i860.c: Likewise.
145 * coff-mcore.c: Likewise.
146 * coff-ppc.c: Likewise.
147 * coff-rs6000.c: Likewise.
148 * coff-sh.c: Likewise.
149 * coff-tic4x.c: Likewise.
150 * coff-tic54x.c: Likewise.
151 * coff-tic80.c: Likewise.
152 * coff64-rs6000.c: Likewise.
153 * coffcode.h: Likewise.
154 * coffgen.c: Likewise.
155 * cofflink.c: Likewise.
156 * coffswap.h: Likewise.
157 * compress.c: Likewise.
158 * cpu-arm.c: Likewise.
159 * ecoff.c: Likewise.
160 * elf-attrs.c: Likewise.
161 * elf-eh-frame.c: Likewise.
162 * elf-ifunc.c: Likewise.
163 * elf-m10300.c: Likewise.
164 * elf-properties.c: Likewise.
165 * elf-s390-common.c: Likewise.
166 * elf.c: Likewise.
167 * elf32-arc.c: Likewise.
168 * elf32-arm.c: Likewise.
169 * elf32-avr.c: Likewise.
170 * elf32-bfin.c: Likewise.
171 * elf32-cr16.c: Likewise.
172 * elf32-cr16c.c: Likewise.
173 * elf32-cris.c: Likewise.
174 * elf32-crx.c: Likewise.
175 * elf32-d10v.c: Likewise.
176 * elf32-d30v.c: Likewise.
177 * elf32-epiphany.c: Likewise.
178 * elf32-fr30.c: Likewise.
179 * elf32-frv.c: Likewise.
180 * elf32-gen.c: Likewise.
181 * elf32-hppa.c: Likewise.
182 * elf32-i370.c: Likewise.
183 * elf32-i386.c: Likewise.
184 * elf32-i960.c: Likewise.
185 * elf32-ip2k.c: Likewise.
186 * elf32-iq2000.c: Likewise.
187 * elf32-lm32.c: Likewise.
188 * elf32-m32c.c: Likewise.
189 * elf32-m32r.c: Likewise.
190 * elf32-m68hc11.c: Likewise.
191 * elf32-m68hc12.c: Likewise.
192 * elf32-m68hc1x.c: Likewise.
193 * elf32-m68k.c: Likewise.
194 * elf32-mcore.c: Likewise.
195 * elf32-mep.c: Likewise.
196 * elf32-metag.c: Likewise.
197 * elf32-microblaze.c: Likewise.
198 * elf32-moxie.c: Likewise.
199 * elf32-msp430.c: Likewise.
200 * elf32-mt.c: Likewise.
201 * elf32-nds32.c: Likewise.
202 * elf32-nios2.c: Likewise.
203 * elf32-or1k.c: Likewise.
204 * elf32-pj.c: Likewise.
205 * elf32-ppc.c: Likewise.
206 * elf32-rl78.c: Likewise.
207 * elf32-rx.c: Likewise.
208 * elf32-s390.c: Likewise.
209 * elf32-score.c: Likewise.
210 * elf32-score7.c: Likewise.
211 * elf32-sh-symbian.c: Likewise.
212 * elf32-sh.c: Likewise.
213 * elf32-sh64.c: Likewise.
214 * elf32-sparc.c: Likewise.
215 * elf32-spu.c: Likewise.
216 * elf32-tic6x.c: Likewise.
217 * elf32-tilepro.c: Likewise.
218 * elf32-v850.c: Likewise.
219 * elf32-vax.c: Likewise.
220 * elf32-visium.c: Likewise.
221 * elf32-wasm32.c: Likewise.
222 * elf32-xgate.c: Likewise.
223 * elf32-xtensa.c: Likewise.
224 * elf64-alpha.c: Likewise.
225 * elf64-gen.c: Likewise.
226 * elf64-hppa.c: Likewise.
227 * elf64-ia64-vms.c: Likewise.
228 * elf64-mmix.c: Likewise.
229 * elf64-ppc.c: Likewise.
230 * elf64-s390.c: Likewise.
231 * elf64-sh64.c: Likewise.
232 * elf64-sparc.c: Likewise.
233 * elf64-x86-64.c: Likewise.
234 * elfcode.h: Likewise.
235 * elfcore.h: Likewise.
236 * elflink.c: Likewise.
237 * elfnn-aarch64.c: Likewise.
238 * elfnn-ia64.c: Likewise.
239 * elfnn-riscv.c: Likewise.
240 * elfxx-mips.c: Likewise.
241 * elfxx-sparc.c: Likewise.
242 * elfxx-tilegx.c: Likewise.
243 * elfxx-x86.c: Likewise.
244 * hpux-core.c: Likewise.
245 * ieee.c: Likewise.
246 * ihex.c: Likewise.
247 * libbfd.c: Likewise.
248 * linker.c: Likewise.
249 * mach-o.c: Likewise.
250 * merge.c: Likewise.
251 * mmo.c: Likewise.
252 * oasys.c: Likewise.
253 * pdp11.c: Likewise.
254 * pe-mips.c: Likewise.
255 * peXXigen.c: Likewise.
256 * peicode.h: Likewise.
257 * reloc.c: Likewise.
258 * rs6000-core.c: Likewise.
259 * srec.c: Likewise.
260 * stabs.c: Likewise.
261 * vms-alpha.c: Likewise.
262 * xcofflink.c: Likewise.
263
264 2018-02-19 Alan Modra <amodra@gmail.com>
265
266 PR 22845
267 * elf.c (IS_TBSS): Define.
268 (_bfd_elf_map_sections_to_segments): Use IS_TBSS.
269 (assign_file_positions_for_non_load_sections): Revert last change.
270 Properly calculate load segment limits to compare against relro limits.
271
272 2018-02-17 Alan Modra <amodra@gmail.com>
273
274 PR 22845
275 * elf.c (assign_file_positions_for_non_load_sections): Ignore
276 degenerate zero size PT_LOAD segments when finding one overlapping
277 the PT_GNU_RELRO segment.
278
279 2018-02-16 Alan Modra <amodra@gmail.com>
280
281 * libbfd.c (_bfd_bool_bfd_false_error): Rename from bfd_false.
282 (_bfd_bool_bfd_true): Rename from bfd_true.
283 (_bfd_ptr_bfd_null_error): Rename from bfd_nullvoidptr.
284 (_bfd_int_bfd_0): Rename from bfd_0.
285 (_bfd_uint_bfd_0): Rename from bfd_0u.
286 (_bfd_long_bfd_0): Rename from bfd_0l.
287 (_bfd_long_bfd_n1_error): Rename from _bfd_n1.
288 (_bfd_void_bfd): Rename from bfd_void.
289 (_bfd_bool_bfd_false, _bfd_bool_bfd_asymbol_false),
290 (_bfd_bool_bfd_link_false_error),
291 (_bfd_bool_bfd_link_true, _bfd_bool_bfd_bfd_true),
292 (_bfd_bool_bfd_uint_true, _bfd_bool_bfd_ptr_true),
293 (_bfd_bool_bfd_asection_bfd_asection_true),
294 (_bfd_bool_bfd_asymbol_bfd_asymbol_true),
295 (_bfd_void_bfd_link, _bfd_void_bfd_asection): New functions.
296 * archive.c (_bfd_noarchive_get_elt_at_index),
297 (_bfd_noarchive_openr_next_archived_file),
298 (_bfd_noarchive_construct_extended_name_table),
299 (_bfd_noarchive_write_ar_hdr, _bfd_noarchive_truncate_arname),
300 (_bfd_noarchive_write_armap): New functions.
301 * archures.c (_bfd_nowrite_set_arch_mach): New function.
302 * coff-alpha.c (alpha_ecoff_swap_coff_aux_in),
303 (alpha_ecoff_swap_coff_sym_in, alpha_ecoff_swap_coff_lineno_in),
304 (alpha_ecoff_swap_coff_aux_out, alpha_ecoff_swap_coff_sym_out),
305 (alpha_ecoff_swap_coff_lineno_out),
306 (alpha_ecoff_swap_coff_reloc_out): New functions.
307 * coff-mips.c (mips_ecoff_swap_coff_aux_in),
308 (mips_ecoff_swap_coff_sym_in, mips_ecoff_swap_coff_lineno_in),
309 (mips_ecoff_swap_coff_aux_out, mips_ecoff_swap_coff_sym_out),
310 (mips_ecoff_swap_coff_lineno_out),
311 (mips_ecoff_swap_coff_reloc_out): New functions.
312 * coffcode.h (coff_set_alignment_hook): Replace define with
313 new function.
314 (symname_in_debug_hook): Likewise.
315 * ecoff.c (_bfd_ecoff_set_alignment_hook): New function.
316 * elfxx-target.h (elf_backend_allow_non_load_phdr): Default to 0.
317 * elf.c (assign_file_positions_except_relocs): Test
318 elf_backend_allow_non_load_phdr for NULL.
319 * elflink.c (_bfd_elf_omit_section_dynsym_default): Rename from
320 _bfd_elf_link_omit_section_dynsym. Update uses.
321 (_bfd_elf_omit_section_dynsym_all): New function.
322 * elf-bfd.h (_bfd_elf_link_omit_section_dynsym): Delete.
323 (_bfd_elf_omit_section_dynsym_default): Declare.
324 (_bfd_elf_omit_section_dynsym_all): Declare.
325 * linker.c (_bfd_nolink_sizeof_headers, _bfd_nolink_bfd_relax_section),
326 (_bfd_nolink_bfd_get_relocated_section_contents),
327 (_bfd_nolink_bfd_lookup_section_flags),
328 (_bfd_nolink_bfd_is_group_section, _bfd_nolink_bfd_discard_group),
329 (_bfd_nolink_bfd_link_hash_table_create),
330 (_bfd_nolink_bfd_link_just_syms),
331 (_bfd_nolink_bfd_copy_link_hash_symbol_type),
332 (_bfd_nolink_bfd_link_split_section),
333 (_bfd_nolink_section_already_linked),
334 (_bfd_nolink_bfd_define_common_symbol),
335 (_bfd_nolink_bfd_define_start_stop): New functions.
336 * reloc.c (_bfd_norelocs_bfd_reloc_type_lookup),
337 (_bfd_norelocs_bfd_reloc_name_lookup),
338 (_bfd_nodynamic_canonicalize_dynamic_reloc): New functions.
339 * section.c (_bfd_nowrite_set_section_contents): New function.
340 * syms.c (_bfd_nosymbols_canonicalize_symtab),
341 (_bfd_nosymbols_print_symbol, _bfd_nosymbols_get_symbol_info),
342 (_bfd_nosymbols_get_symbol_version_string),
343 (_bfd_nosymbols_bfd_is_local_label_name),
344 (_bfd_nosymbols_get_lineno, _bfd_nosymbols_find_nearest_line),
345 (_bfd_nosymbols_find_line, _bfd_nosymbols_find_inliner_info),
346 (_bfd_nosymbols_bfd_make_debug_symbol),
347 ( _bfd_nosymbols_read_minisymbols),
348 ( _bfd_nosymbols_minisymbol_to_symbol),
349 (_bfd_nodynamic_get_synthetic_symtab): New functions.
350 * libbfd-in.h: Declare new functions. Update existing defines,
351 removing casts.
352 * aix386-core.c: Update to use new hooks. Formatting.
353 * aout-adobe.c: Likewise.
354 * aout-arm.c: Likewise.
355 * aout-target.h: Likewise.
356 * aout-tic30.c: Likewise.
357 * aoutf1.h: Likewise.
358 * binary.c: Likewise.
359 * bout.c: Likewise.
360 * cisco-core.c: Likewise.
361 * coff-alpha.c: Likewise.
362 * coff-i386.c: Likewise.
363 * coff-i860.c: Likewise.
364 * coff-i960.c: Likewise.
365 * coff-ia64.c: Likewise.
366 * coff-mips.c: Likewise.
367 * coff-ppc.c: Likewise.
368 * coff-rs6000.c: Likewise.
369 * coff-sh.c: Likewise.
370 * coff-tic30.c: Likewise.
371 * coff-tic54x.c: Likewise.
372 * coff-x86_64.c: Likewise.
373 * coff64-rs6000.c: Likewise.
374 * coffcode.h: Likewise.
375 * elf-m10300.c: Likewise.
376 * elf32-cr16.c: Likewise.
377 * elf32-lm32.c: Likewise.
378 * elf32-m32r.c: Likewise.
379 * elf32-metag.c: Likewise.
380 * elf32-score.c: Likewise.
381 * elf32-score7.c: Likewise.
382 * elf32-tilepro.c: Likewise.
383 * elf32-xstormy16.c: Likewise.
384 * elf32-xtensa.c: Likewise.
385 * elf64-alpha.c: Likewise.
386 * elf64-hppa.c: Likewise.
387 * elf64-ia64-vms.c: Likewise.
388 * elf64-mmix.c: Likewise.
389 * elf64-sh64.c: Likewise.
390 * elfnn-ia64.c: Likewise.
391 * elfxx-sparc.c: Likewise.
392 * elfxx-target.h: Likewise.
393 * elfxx-tilegx.c: Likewise.
394 * elfxx-x86.h: Likewise.
395 * hp300hpux.c: Likewise.
396 * hppabsd-core.c: Likewise.
397 * hpux-core.c: Likewise.
398 * i386msdos.c: Likewise.
399 * i386os9k.c: Likewise.
400 * ieee.c: Likewise.
401 * ihex.c: Likewise.
402 * irix-core.c: Likewise.
403 * libaout.h: Likewise.
404 * libecoff.h: Likewise.
405 * mach-o-target.c: Likewise.
406 * mach-o.c: Likewise.
407 * mipsbsd.c: Likewise.
408 * mmo.c: Likewise.
409 * netbsd-core.c: Likewise.
410 * nlm-target.h: Likewise.
411 * oasys.c: Likewise.
412 * osf-core.c: Likewise.
413 * pdp11.c: Likewise.
414 * pe-mips.c: Likewise.
415 * pe-x86_64.c: Likewise.
416 * pef.c: Likewise.
417 * plugin.c: Likewise.
418 * ppcboot.c: Likewise.
419 * ptrace-core.c: Likewise.
420 * sco5-core.c: Likewise.
421 * som.c: Likewise.
422 * sparclynx.c: Likewise.
423 * srec.c: Likewise.
424 * tekhex.c: Likewise.
425 * trad-core.c: Likewise.
426 * verilog.c: Likewise.
427 * versados.c: Likewise.
428 * vms-alpha.c: Likewise.
429 * vms-lib.c: Likewise.
430 * wasm-module.c: Likewise.
431 * xsym.c: Likewise.
432 * libbfd.h: Regenerate.
433
434 2018-02-15 Jim Wilson <jimw@sifive.com>
435
436 * elfnn-riscv.c (_bfd_riscv_relax_section): Ifdef out check to ignore
437 symbols whose section address is zero.
438
439 * elfnn-riscv.c (riscv_elf_relocate_section): Use bfd_reloc_dangerous
440 when pcrel_lo reloc has an addend. Use reloc_dangerous callback for
441 bfd_reloc_dangerous. Use einfo instead of warning callback for errors.
442 Add %X%P to error messages.
443
444 2018-02-15 Eric Botcazou <ebotcazou@adacore.com>
445
446 PR ld/22832
447 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
448 Pass FALSE instead of TRUE as 'create' argument to bfd_link_hash_lookup
449 and assert that the result of the call is not NULL.
450
451 2018-02-14 Nick Clifton <nickc@redhat.com>
452
453 PR 22823
454 Revert previous delta. Add extra casts to avoid compile time
455 warnings instead.
456 * libbfd-in.h (_bfd_generic_bfd_copy_private_bfd_data): Add extra
457 cast to avoid warning from gcc v8 compiler.
458 (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
459 (_bfd_generic_bfd_set_private_flags): Likewise.
460 (_bfd_generic_bfd_copy_private_section_data): Likewise.
461 (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
462 (_bfd_generic_bfd_copy_private_header_data): Likewise.
463 (_bfd_generic_bfd_print_private_bfd_data): Likewise.
464 (_bfd_noarchive_construct_extended_name_table): Likewise.
465 (_bfd_noarchive_truncate_arname): Likewise.
466 (_bfd_noarchive_write_ar_hdr): Likewise.
467 (_bfd_noarchive_get_elt_at_index): Likewise.
468 (_bfd_nosymbols_canonicalize_symtab): Likewise.
469 (_bfd_nosymbols_print_symbol): Likewise.
470 (_bfd_nosymbols_get_symbol_info): Likewise.
471 (_bfd_nosymbols_get_symbol_version_string): Likewise.
472 (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
473 (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
474 (_bfd_nosymbols_get_lineno): Likewise.
475 (_bfd_nosymbols_find_nearest_line): Likewise.
476 (_bfd_nosymbols_find_line): Likewise.
477 (_bfd_nosymbols_find_inliner_info): Likewise.
478 (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
479 (_bfd_nosymbols_read_minisymbols): Likewise.
480 (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
481 (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
482 (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
483 (_bfd_nowrite_set_arch_mach): Likewise.
484 (_bfd_nowrite_set_section_contents): Likewise.
485 (_bfd_nolink_sizeof_headers): Likewise.
486 (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
487 (_bfd_nolink_bfd_relax_section): Likewise.
488 (_bfd_nolink_bfd_gc_sections): Likewise.
489 (_bfd_nolink_bfd_lookup_section_flags): Likewise.
490 (_bfd_nolink_bfd_merge_sections): Likewise.
491 (_bfd_nolink_bfd_is_group_section): Likewise.
492 (_bfd_nolink_bfd_discard_group): Likewise.
493 (_bfd_nolink_bfd_link_hash_table_create): Likewise.
494 (_bfd_nolink_bfd_link_add_symbols): Likewise.
495 (_bfd_nolink_bfd_link_just_syms): Likewise.
496 (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
497 (_bfd_nolink_bfd_final_link): Likewise.
498 (_bfd_nolink_bfd_link_split_section): Likewise.
499 (_bfd_nolink_section_already_linked): Likewise.
500 (_bfd_nolink_bfd_define_common_symbol): Likewise.
501 (_bfd_nolink_bfd_define_start_stop): Likewise.
502 (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
503 (_bfd_nodynamic_get_synthetic_symtab): Likewise.
504 (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
505 (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
506 * libbfd.c (bfd_false_any): Delete.
507 (bfd_true_any, bfd_nullvoidptr_any, bfd_0_any): Delete.
508 (bfd_0u_any, bfd_0l_any, _bfd_n1_any, bfd_void_any): Delete.
509 * libbfd.h (extern): Regenerate
510 * aout-target.h (MY_bfd_is_target_special_symbol): Add extra
511 cast to avoid warning from gcc v8 compiler.
512 * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
513 * binary.c (binary_get_symbol_info): Likewise.
514 * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
515 * coff-mips.c (mips_ecoff_backend_data): Likewise.
516 * coffcode.h (coff_set_alignment_hook): Likewise.
517 (symname_in_debug_hook): Likewise.
518 (bfd_coff_backend_data bigobj_swap_table): Likewise.
519 * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
520 * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
521 * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
522 * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
523 * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
524 * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
525 * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
526 * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
527 * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
528 * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
529 * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
530 * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
531 * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
532 * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
533 * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
534 * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
535 (bfd_elfNN_bfd_make_debug_symbol): Likewise.
536 (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
537 (bfd_elfNN_bfd_set_private_flags): Likewise.
538 (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
539 (elf_backend_init_index_section): Likewise.
540 (elf_backend_allow_non_load_phdr): Likewise.
541 * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
542 * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
543 * ieee.c (ieee_construct_extended_name_table): Likewise.
544 (ieee_write_armap): Likewise.
545 (ieee_write_ar_hdr): Likewise.
546 (ieee_bfd_is_target_special_symbol): Likewise.
547 * ihex.c (ihex_canonicalize_symtab): Likewise.
548 (ihex_bfd_is_target_special_symbol): Likewise.
549 * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
550 * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
551 (_bfd_ecoff_set_alignment_hook): Likewise.
552 * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
553 * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
554 * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
555 * oasys.c (oasys_construct_extended_name_table): Likewise.
556 (oasys_write_armap): Likewise.
557 (oasys_write_ar_hdr): Likewise.
558 (oasys_bfd_is_target_special_symbol): Likewise.
559 * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
560 * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
561 * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
562 * som.c (som_bfd_is_target_special_symbol): Likewise.
563 * srec.c (srec_bfd_is_target_special_symbol): Likewise.
564 * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
565 * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
566 * versados.c (versados_bfd_is_target_special_symbol): Likewise.
567 (versados_bfd_reloc_name_lookup): Likewise.
568 * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
569 (vms_bfd_define_start_stop): Likewise.
570 (alpha_vms_bfd_is_target_special_symbol): Likewise.
571 * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
572 * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
573
574 2018-02-14 H.J. Lu <hongjiu.lu@intel.com>
575
576 PR ld/22842
577 * elf32-i386.c (elf_i386_check_relocs): Pass FALSE for non
578 PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
579 * elf64-x86-64.c (elf_x86_64_check_relocs): Create PLT for
580 R_X86_64_PC32 reloc against dynamic function in data section.
581 Pass TRUE for PC-relative PLT to NEED_DYNAMIC_RELOCATION_P.
582 (elf_x86_64_relocate_section): Use PLT for R_X86_64_PC32 reloc
583 against dynamic function in data section.
584 * elfxx-x86.c (elf_x86_allocate_dynrelocs): Use PLT in PIE as
585 function address only if pcrel_plt is true.
586 (_bfd_x86_elf_link_hash_table_create): Set pcrel_plt.
587 * elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): Add PCREL_PLT for
588 PC-relative PLT. If PLT is PC-relative, don't generate dynamic
589 PC-relative relocation against a function definition in data
590 secton in PIE. Remove the obsolete comments.
591 (elf_x86_link_hash_table): Add pcrel_plt.
592
593 2018-02-13 H.J. Lu <hongjiu.lu@intel.com>
594
595 * elfxx-x86.c (elf_x86_allocate_dynrelocs): Check bfd_link_dll,
596 instead of bfd_link_pic, for building shared library.
597
598 2018-02-13 H.J. Lu <hongjiu.lu@intel.com>
599
600 PR gas/22791
601 * elf64-x86-64.c (is_32bit_relative_branch): Removed.
602 (elf_x86_64_relocate_section): Check PIC relocations in PIE.
603 Remove is_32bit_relative_branch usage. Disallow PC32 reloc
604 against protected function in shared object.
605
606 2018-02-13 Sergei Trofimovich <slyfox@inbox.ru>
607
608 PR 22828
609 * po/ru.po: Fix typo in Russian translation.
610
611 2018-02-13 Maciej W. Rozycki <macro@mips.com>
612
613 * wasm-module.c (wasm_scan_name_function_section): Rename
614 `index' local variable to `idx'.
615
616 2018-02-13 Nick Clifton <nickc@redhat.com>
617
618 PR 22823
619 Fix compile time warnings generated by gcc version 8.
620 * libbfd-in.h: Remove extraneous text from prototypes.
621 Add prototypes for bfd_false_any, bfd_true_any,
622 bfd_nullvoidptr_any, bfd_0_any, bfd_0u_any, bfd_0l_any,
623 bfd_n1_any, bfd_void_any.
624 (_bfd_generic_bfd_copy_private_bfd_data): Use vararg based dummy
625 function.
626 (_bfd_generic_bfd_merge_private_bfd_data): Likewise.
627 (_bfd_generic_bfd_set_private_flags): Likewise.
628 (_bfd_generic_bfd_copy_private_section_data): Likewise.
629 (_bfd_generic_bfd_copy_private_symbol_data): Likewise.
630 (_bfd_generic_bfd_copy_private_header_data): Likewise.
631 (_bfd_generic_bfd_print_private_bfd_data): Likewise.
632 (_bfd_noarchive_construct_extended_name_table): Likewise.
633 (_bfd_noarchive_truncate_arname): Likewise.
634 (_bfd_noarchive_write_ar_hdr): Likewise.
635 (_bfd_noarchive_get_elt_at_index): Likewise.
636 (_bfd_nosymbols_canonicalize_symtab): Likewise.
637 (_bfd_nosymbols_print_symbol): Likewise.
638 (_bfd_nosymbols_get_symbol_info): Likewise.
639 (_bfd_nosymbols_get_symbol_version_string): Likewise.
640 (_bfd_nosymbols_bfd_is_local_label_name): Likewise.
641 (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise.
642 (_bfd_nosymbols_get_lineno): Likewise.
643 (_bfd_nosymbols_find_nearest_line): Likewise.
644 (_bfd_nosymbols_find_line): Likewise.
645 (_bfd_nosymbols_find_inliner_info): Likewise.
646 (_bfd_nosymbols_bfd_make_debug_symbol): Likewise.
647 (_bfd_nosymbols_read_minisymbols): Likewise.
648 (_bfd_nosymbols_minisymbol_to_symbol): Likewise.
649 (_bfd_norelocs_bfd_reloc_type_lookup): Likewise.
650 (_bfd_norelocs_bfd_reloc_name_lookup): Likewise.
651 (_bfd_nowrite_set_arch_mach): Likewise.
652 (_bfd_nowrite_set_section_contents): Likewise.
653 (_bfd_nolink_sizeof_headers): Likewise.
654 (_bfd_nolink_bfd_get_relocated_section_contents): Likewise.
655 (_bfd_nolink_bfd_relax_section): Likewise.
656 (_bfd_nolink_bfd_gc_sections): Likewise.
657 (_bfd_nolink_bfd_lookup_section_flags): Likewise.
658 (_bfd_nolink_bfd_merge_sections): Likewise.
659 (_bfd_nolink_bfd_is_group_section): Likewise.
660 (_bfd_nolink_bfd_discard_group): Likewise.
661 (_bfd_nolink_bfd_link_hash_table_create): Likewise.
662 (_bfd_nolink_bfd_link_add_symbols): Likewise.
663 (_bfd_nolink_bfd_link_just_syms): Likewise.
664 (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise.
665 (_bfd_nolink_bfd_final_link): Likewise.
666 (_bfd_nolink_bfd_link_split_section): Likewise.
667 (_bfd_nolink_section_already_linked): Likewise.
668 (_bfd_nolink_bfd_define_common_symbol): Likewise.
669 (_bfd_nolink_bfd_define_start_stop): Likewise.
670 (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise.
671 (_bfd_nodynamic_get_synthetic_symtab): Likewise.
672 (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise.
673 (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise.
674 * libbfd.c (bfd_false_any): New function. Like bfd_false but
675 accepts one or more arguments.
676 (bfd_true_any): Likewise.
677 (bfd_nullvoidptr_any): Likewise.
678 (bfd_0_any): Likewise.
679 (bfd_0u_any): Likewise.
680 (bfd_0l_any): Likewise.
681 (_bfd_n1_any): Likewise.
682 (bfd_void_any): Likewise.
683 * libbfd.h (extern): Regenerate
684 * aout-target.h (MY_bfd_is_target_special_symbol): Use vararg
685 based dummy function.
686 * aout-tic30.c (tic30_aout_set_arch_mach): Likewise.
687 * binary.c (binary_get_symbol_info): Likewise.
688 * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
689 * coff-mips.c (mips_ecoff_backend_data): Likewise.
690 * coffcode.h (coff_set_alignment_hook): Likewise.
691 (symname_in_debug_hook): Likewise.
692 (bfd_coff_backend_data bigobj_swap_table): Likewise.
693 * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise.
694 * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise.
695 * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise.
696 * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise.
697 * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise.
698 * elf32-score.c (elf_backend_omit_section_dynsym): Likewise.
699 * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise.
700 * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise.
701 * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise.
702 * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise.
703 * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise.
704 * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise.
705 * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise.
706 * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise.
707 * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise.
708 * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise.
709 (bfd_elfNN_bfd_make_debug_symbol): Likewise.
710 (bfd_elfNN_bfd_merge_private_bfd_data): Likewise.
711 (bfd_elfNN_bfd_set_private_flags): Likewise.
712 (bfd_elfNN_bfd_is_target_special_symbol): Likewise.
713 (elf_backend_init_index_section): Likewise.
714 (elf_backend_allow_non_load_phdr): Likewise.
715 * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise.
716 * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise.
717 * ieee.c (ieee_construct_extended_name_table): Likewise.
718 (ieee_write_armap): Likewise.
719 (ieee_write_ar_hdr): Likewise.
720 (ieee_bfd_is_target_special_symbol): Likewise.
721 * ihex.c (ihex_canonicalize_symtab): Likewise.
722 (ihex_bfd_is_target_special_symbol): Likewise.
723 * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise.
724 * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise.
725 (_bfd_ecoff_set_alignment_hook): Likewise.
726 * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise.
727 * mmo.c (mmo_bfd_is_target_special_symbol): Likewise.
728 * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise.
729 * oasys.c (oasys_construct_extended_name_table): Likewise.
730 (oasys_write_armap): Likewise.
731 (oasys_write_ar_hdr): Likewise.
732 (oasys_bfd_is_target_special_symbol): Likewise.
733 * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise.
734 * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise.
735 * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise.
736 * som.c (som_bfd_is_target_special_symbol): Likewise.
737 * srec.c (srec_bfd_is_target_special_symbol): Likewise.
738 * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise.
739 * verilog.c (verilog_bfd_is_target_special_symbol): Likewise.
740 * versados.c (versados_bfd_is_target_special_symbol): Likewise.
741 (versados_bfd_reloc_name_lookup): Likewise.
742 * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise.
743 (vms_bfd_define_start_stop): Likewise.
744 (alpha_vms_bfd_is_target_special_symbol): Likewise.
745 * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise.
746 * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise.
747 * elf32-arc.c (get_replace_function): Assign replacement function
748 to func pointer.
749 * elf32-i370.c (i370_noop): Update prototype.
750
751 2018-02-13 Alan Modra <amodra@gmail.com>
752
753 PR 22836
754 * elf.c (_bfd_elf_fixup_group_sections): Account for removed
755 relocation sections. If size reduces to just the flag word,
756 remove that too and mark with SEC_EXCLUDE.
757 * elflink.c (bfd_elf_final_link): Strip empty group sections.
758
759 2018-02-13 Alan Modra <amodra@gmail.com>
760
761 PR 22829
762 * elf.c (assign_file_positions_for_non_load_sections): Rewrite
763 PT_GNU_RELRO setup.
764
765 2018-02-12 Zebediah Figura <z.figura12@gmail.com>
766
767 * i386msdos.c (msdos_mkobject); New function.
768 (msdos_object_p): New function.
769 (i386_msdos_vec): Use msdos_object_p as the check_format
770 function.
771 * peicode.h: Rename external_PEI_DOS_hdr, DOSMAGIC, and
772 NT_SIGNATURE to external_DOS_hdr, IMAGE_DOS_SIGNATURE, and
773 IMAGE_NT_SIGNATURE.
774 * peXXigen.c: Likewise.
775 * coff-ia64.c: Likewise.
776
777 2018-02-12 Nick Clifton <nickc@redhat.com>
778
779 * elf32-nds32.c (nds32_elf_relax_longjump3): Remove redundant
780 assignment.
781 * elf32-arc.c (elf_arc_relocate_section): Likewise.
782
783 2018-02-09 Eric Botcazou <ebotcazou@adacore.com>
784
785 * elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Reorder conditions.
786 (sparc_elf_append_rela): Assert that there is enough room in section.
787 (_bfd_sparc_elf_copy_indirect_symbol): Fix formatting.
788 (_bfd_sparc_elf_adjust_dynamic_symbol): Minor tweak.
789 (allocate_dynrelocs): Remove outdated comments and reorder conditions.
790 For a symbol subject to a GOT relocation, reserve a slot in the
791 relocation section if the symbol isn't dynamic and we are in PIC mode.
792 (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: If relocation
793 is relaxed and a slot was reserved, generate a R_SPARC_NONE relocation.
794 <R_SPARC_GOTDATA_OP_HIX22>: Adjust comments.
795 <R_SPARC_PC10>: Reorder conditions. Remove always-false assertion.
796 (_bfd_sparc_elf_finish_dynamic_symbol): Rename local_undefweak into
797 resolved_to_zero. Do not generate a dynamic GOT relocation for an
798 undefined weak symbol with non-default visibility. Remove superfluous
799 'else' and fix formatting.
800
801 2018-02-09 H.J. Lu <hongjiu.lu@intel.com>
802
803 * elf32-i386.c (elf_i386_get_synthetic_symtab): Also handle
804 is_solaris.
805 (i386_elf32_sol2_vec): Don't declare.
806 (elf_i386_link_setup_gnu_properties): Also handle is_solaris.
807 Don't set need_global_offset_table.
808 (elf_i386_solaris_arch_bed): New.
809 (elf_backend_arch_data): Set to elf_i386_solaris_arch_bed for
810 Solaris.
811 * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Check
812 target_os != is_nacl instead of target_os == is_normal.
813 (x86_64_elf64_sol2_vec): Don't declare.
814 (elf_x86_64_link_setup_gnu_properties): Check target_os !=
815 is_nacl instead of target_os == is_normal. Don't set
816 need_global_offset_table.
817 (elf_x86_64_solaris_arch_bed): New.
818 (elf_backend_arch_data): Set to elf_x86_64_solaris_arch_bed for
819 Solaris.
820 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep
821 _GLOBAL_OFFSET_TABLE_ for Solaris.
822 (_bfd_x86_elf_link_setup_gnu_properties): Don't copy
823 need_global_offset_table.
824 * elfxx-x86.h (elf_x86_target_os): Add is_solaris.
825 (elf_x86_link_hash_table): Remove need_global_offset_table.
826 (elf_x86_init_table): Likewise.
827
828 2018-02-08 H.J. Lu <hongjiu.lu@intel.com>
829
830 * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
831 Remove prototype.
832 (i386_elf32_sol2_vec): Declared.
833 (elf_i386_link_setup_gnu_properties): Set
834 need_global_offset_table with info->output_bfd->xvec.
835 * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
836 Remove prototype.
837 (x86_64_elf64_sol2_vec): Declared.
838 (elf_x86_64_link_setup_gnu_properties): Set
839 need_global_offset_table with info->output_bfd->xvec.
840
841 2018-02-08 H.J. Lu <hongjiu.lu@intel.com>
842
843 * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields):
844 New prototype.
845 (elf_i386_link_setup_gnu_properties): Set need_global_offset_table
846 for Solaris.
847 * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields):
848 New prototype.
849 (elf_x86_64_link_setup_gnu_properties): Set
850 need_global_offset_table for Solaris.
851 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep the
852 unused _GLOBAL_OFFSET_TABLE_ for Solaris.
853 (_bfd_x86_elf_link_setup_gnu_properties): Copy
854 need_global_offset_table.
855 * elfxx-x86.h (elf_x86_link_hash_table): Add
856 need_global_offset_table.
857 (elf_x86_init_table): Likewise.
858
859 2018-02-08 Jim Wilson <jimw@sifive.com>
860
861 * elfnn-riscv.c (riscv_elf_relocate_section): Add comment for previous
862 change.
863
864 2018-02-08 Nick Clifton <nickc@redhat.com>
865
866 PR 22788
867 * elf.c (elf_parse_notes): Reject notes with excessuively large
868 alignments.
869
870 2018-02-07 Alan Modra <amodra@gmail.com>
871
872 Revert 2018-01-17 Alan Modra <amodra@gmail.com>
873 * elf32-ppc.c: Remove speculation barrier support.
874 * elf32-ppc.h: Likewise.
875 * elf64-ppc.c: Likewise.
876 * elf64-ppc.h: Likewise.
877
878 2018-02-06 Jim Wilson <jimw@sifive.com>
879
880 * elfnn-riscv.c (riscv_elf_relocate_section): Return TRUE if used
881 callback to report an error.
882
883 2018-02-06 Eric Botcazou <ebotcazou@adacore.com>
884
885 PR ld/22263
886 * elfxx-sparc.c (sparc_elf_tls_transition): Turn call to bfd_link_pic
887 into call to !bfd_link_executable and tidy up.
888 (_bfd_sparc_elf_check_relocs): Fix formatting and tidy up.
889 <R_SPARC_TLS_LE_HIX22>: Turn call to bfd_link_pic into call to
890 !bfd_link_executable.
891 <R_SPARC_TLS_IE_HI22>: Likewise.
892 <GOT relocations>: Remove useless code, tidy and merge related blocks.
893 <R_SPARC_TLS_GD_CALL>: Turn call to bfd_link_pic into call to
894 !bfd_link_executable.
895 <R_SPARC_WPLT30>: Tidy up.
896 (_bfd_sparc_elf_gc_mark_hook): Turn call to bfd_link_pic into call to
897 !bfd_link_executable.
898 (allocate_dynrelocs): Likewise.
899 (_bfd_sparc_elf_relocate_section): Fix formatting and tidy up.
900 <R_SPARC_TLS_GD_HI22>: Merge into...
901 <R_SPARC_TLS_GD_LO10>: ...this. Adjust 4th argument in call to
902 sparc_elf_tls_transition and remove redundant code.
903 <R_SPARC_TLS_LDM_HI22>: Turn call to bfd_link_pic into call to
904 !bfd_link_executable.
905 <R_SPARC_TLS_LDO_HIX22>: Likewise.
906 <R_SPARC_TLS_LE_HIX22>: Likewise. Tidy up.
907 <R_SPARC_TLS_LDM_CALL>: Likewise.
908 <R_SPARC_TLS_GD_CALL>: Likewise. Tidy up.
909 <R_SPARC_TLS_GD_ADD>: Likewise.
910 <R_SPARC_TLS_LDM_ADD>: Likewise.
911 <R_SPARC_TLS_LDO_ADD>: Likewise.
912 <R_SPARC_TLS_IE_LD>: Likewise.
913
914 2018-02-06 Miloš Stojanović <milos.stojanovic@rt-rk.com>
915
916 PR 22789
917 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): If the dwarf
918 functions failed to find the function name, try the generic elf
919 find function instead.
920
921 2018-02-06 Sergio Durigan Junior <sergiodj@redhat.com>
922
923 * coff-rs6000.c (xcoff_write_archive_contents_old): Use
924 'memcpy' instead of 'strncpy' when writing the magic number.
925
926 2018-02-06 Nick Clifton <nickc@redhat.com>
927
928 PR 22794
929 * opncls.c (bfd_get_debug_link_info_1): Check the size of the
930 section before attempting to read it in.
931 (bfd_get_alt_debug_link_info): Likewise.
932
933 2018-02-06 Paul Carroll <pcarroll@codesourcery.com>
934
935 * bfd/dwarf2.c (find_abstract_name): Modified to return file and
936 line information in addition to name, if they can be found.
937
938 2018-02-05 Renlin Li <renlin.li@arm.com>
939
940 PR ld/22764
941 * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Relax the
942 R_AARCH64_ABS32 and R_AARCH64_ABS16 for absolute symbol. Apply the
943 check for writeable section as well.
944
945 2018-02-05 H.J. Lu <hongjiu.lu@intel.com>
946
947 PR ld/22782
948 * elf32-i386.c (elf_i386_check_relocs): Set got_referenced if
949 _GLOBAL_OFFSET_TABLE_ is referenced or GOT is needed to resolve
950 undefined weak symbol to 0.
951 * elf64-x86-64.c (elf_x86_64_check_relocs): Set got_referenced
952 if _GLOBAL_OFFSET_TABLE_ is referenced.
953 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Check
954 got_referenced instead of ref_regular_nonweak. Remove the
955 unused _GLOBAL_OFFSET_TABLE_ from symbol table.
956 * elfxx-x86.h (elf_x86_link_hash_table): Add got_referenced.
957
958 2018-02-05 Maciej W. Rozycki <macro@mips.com>
959
960 * elfnn-riscv.c (_bfd_riscv_relax_pc): Use `memset' to
961 initialize `hi_reloc'.
962
963 2018-02-05 Maciej W. Rozycki <macro@mips.com>
964
965 * elfxx-mips.c (_bfd_mips_elf_section_processing): For
966 SHT_MIPS_REGINFO sections don't assert the correct size and
967 report an error instead.
968
969 2018-02-05 Maciej W. Rozycki <macro@mips.com>
970
971 * elf.c (_bfd_elf_write_object_contents): Propagate a failure
972 status from `->elf_backend_section_processing'.
973
974 2018-02-02 Jim Wilson <jimw@sifive.com>
975
976 PR ld/22756
977 * elfnn-riscv.c (riscv_relax_delete_bytes): New parameter link_info.
978 If link_info->wrap_hash, check for a duplicate symbol and ignore.
979 (_bfd_riscv_relax_call, bfd_riscv_relax_lui, _bfd_riscv_relax_tls_le):
980 Pass new argument to riscv_relax_delete_bytes.
981 (_bfd_riscv_relax_align, _bfd_riscv_relax_delete): Likewise. Remove
982 ATTRIBUTE_UNUSED from link_info parameter.
983
984 2018-02-02 Alan Modra <amodra@gmail.com>
985
986 * elf64-ppc.c (ppc64_elf_relocate_section): Don't relocate nops
987 emitted for toc sequence optimization. Set and use "howto" later.
988
989 2018-02-01 Simon Marchi <simon.marchi@ericsson.com>
990
991 * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Avoid pointer
992 arithmetic on NULL pointer.
993 * elflink.c (_bfd_elf_archive_symbol_lookup,
994 elf_link_add_archive_symbols): Likewise.
995
996 2018-01-31 Michael Matz <matz@suse.de>
997
998 * elflink.c (bfd_elf_define_start_stop): Fix check of
999 def_dynamic.
1000
1001 2018-01-31 H.J. Lu <hongjiu.lu@intel.com>
1002
1003 PR ld/21964
1004 * elflink.c (bfd_elf_define_start_stop): Check if __start and
1005 __stop symbols are referenced by shared objects.
1006
1007 2018-01-30 Alan Modra <amodra@gmail.com>
1008
1009 PR 22758
1010 * elf.c (_bfd_elf_map_sections_to_segments): Don't start a new
1011 segment when demand paged with lma on the same page. Test this
1012 before load/non-load, executable/non-executable,
1013 writable/non-writable tests and simplify. Delete bogus relro
1014 condition in writable/non-writable test. Delete outdated
1015 comment. Formatting.
1016
1017 2018-01-30 Alan Modra <amodra@gmail.com>
1018
1019 * elflink.c (bfd_elf_define_start_stop): Make __start and __stop
1020 symbols dynamic.
1021
1022 2018-01-29 Alan Modra <amodra@gmail.com>
1023
1024 PR 22741
1025 * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
1026 range before converting to a symbol table pointer.
1027
1028 2018-01-27 Nick Clifton <nickc@redhat.com>
1029
1030 * po/ru.po: Updated Russian translation.
1031
1032 2018-01-26 Alan Modra <amodra@gmail.com>
1033
1034 * elflink.c (bfd_elf_define_start_stop): Override symbols when
1035 they are defined dynamically.
1036
1037 2018-01-26 Alan Modra <amodra@gmail.com>
1038
1039 * elf64-ppc.c (ppc64_elf_size_stubs): Iterate sizing when
1040 .branch_lt changes size.
1041
1042 2018-01-25 Alan Modra <amodra@gmail.com>
1043
1044 PR 22746
1045 * elfcode.h (elf_object_p): Avoid integer overflow.
1046
1047 2018-01-25 Eric Botcazou <ebotcazou@adacore.com>
1048
1049 PR ld/22727
1050 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>:
1051 Do a mere lookup of the __tls_get_addr symbol instead of adding it.
1052
1053 Revert
1054 2017-10-19 H.J. Lu <hongjiu.lu@intel.com>
1055
1056 PR ld/22263
1057 * elfxx-sparc.c (sparc_elf_tls_transition): Replace
1058 bfd_link_pic with !bfd_link_executable, !bfd_link_pic with
1059 bfd_link_executable for TLS check.
1060 (_bfd_sparc_elf_check_relocs): Likewise.
1061 (allocate_dynrelocs): Likewise.
1062 (_bfd_sparc_elf_relocate_section): Likewise.
1063
1064 2018-01-24 Renlin Li <renlin.li@arm.com>
1065
1066 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Add support for
1067 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
1068 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
1069 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
1070 BFD_RELOC_AARCH64_MOVW_PREL_G3.
1071 * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise.
1072 (_bfd_aarch64_elf_resolve_relocation): Likewise.
1073
1074 2018-01-24 Renlin Li <renlin.li@arm.com>
1075
1076 * reloc.c: Add BFD_RELOC_AARCH64_MOVW_PREL_G0,
1077 BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, BFD_RELOC_AARCH64_MOVW_PREL_G1,
1078 BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, BFD_RELOC_AARCH64_MOVW_PREL_G2,
1079 BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, BFD_RELOC_AARCH64_MOVW_PREL_G3.
1080 * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add entries for
1081 BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC,
1082 BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC,
1083 BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC,
1084 BFD_RELOC_AARCH64_MOVW_PREL_G3.
1085 * bfd-in2.h: Regenerate.
1086 * libbfd.h: Regenerate.
1087
1088 2018-01-23 Maciej W. Rozycki <macro@mips.com>
1089
1090 * elfxx-mips.c (_bfd_mips_elf_final_link): Update a stale
1091 `mips_elf32_section_processing' comment reference.
1092
1093 2018-01-20 H.J. Lu <hongjiu.lu@intel.com>
1094
1095 PR ld/22721
1096 * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Check the
1097 versioned __tls_get_addr symbol.
1098
1099 2018-01-19 Nick Clifton <nickc@redhat.com>
1100
1101 * po/fr.po: Updated French translation.
1102
1103 2018-01-18 Alan Modra <amodra@gmail.com>
1104
1105 * elf32-ppc.c (ppc_elf_create_glink): Correct alignment of .glink.
1106 * elf64-ppc.c (ppc64_elf_size_stubs): Handle negative plt_stub_align.
1107 (ppc64_elf_build_stubs): Likewise.
1108
1109 2018-01-17 Nick Clifton <nickc@redhat.com>
1110
1111 * po/ru.po: Updated Russian translation.
1112 * po/uk/po: Updated Ukranian translation.
1113
1114 2018-01-17 Alan Modra <amodra@gmail.com>
1115
1116 * elf64-ppc.c (ppc64_elf_build_stubs): Silence gcc warning.
1117
1118 2018-01-17 Alan Modra <amodra@gmail.com>
1119
1120 * elf32-ppc.c (GLINK_ENTRY_SIZE): Handle speculation barrier.
1121 (CRSETEQ, BEQCTRM): Define.
1122 (is_nonpic_glink_stub): Don't check bctr.
1123 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
1124 (ppc_elf_relax_section): Size speculation barrier.
1125 (output_bctr): New function.
1126 (write_glink_stub): Use output_bctr.
1127 (ppc_elf_relocate_section): Use output_bctr for long branch stub.
1128 (ppc_elf_finish_dynamic_symbol): Likewise.
1129 (ppc_elf_finish_dynamic_sections): Use output_bctr.
1130 * elf32-ppc.h (struct ppc_elf_params): Add speculate_indirect_jumps.
1131 * elf64-ppc.c (CRSETEQ, BEQCTRM, BEQCTRLM): Define.
1132 (GLINK_PLTRESOLVE_SIZE): Size speculation barrier.
1133 (size_global_entry_stubs): Handle speculation barrier sizing.
1134 (plt_stub_size): Likewise.
1135 (output_bctr): New function.
1136 (build_plt_stub, build_tls_get_addr_stub): Output speculation
1137 barrier.
1138 (ppc_build_one_stub): Likewise for ppc_stub_plt_branch.
1139 (ppc_size_one_stub): Size speculation barrier in ppc_stub_plt_branch.
1140 (build_global_entry_stubs): Output speculation barrier.
1141 (ppc64_elf_build_stubs): Likewise in __glink_PLTresolve stub.
1142 * elf64-ppc.h (struct ppc64_elf_params): Add speculate_indirect_jumps.
1143
1144 2018-01-17 Alan Modra <amodra@gmail.com>
1145
1146 * elf32-ppc.c (GLINK_ENTRY_SIZE): Add parameters, handle
1147 __tls_get_addr_opt, and alignment sizing.
1148 (TLS_GET_ADDR_GLINK_SIZE): Delete.
1149 (is_nonpic_glink_stub): Don't use GLINK_ENTRY_SIZE.
1150 (ppc_elf_get_synthetic_symtab): Recognize stubs spaced at 4, 6,
1151 or 8 insns.
1152 (ppc_elf_link_hash_table_create): Init new ppc_elf_params field.
1153 (allocate_dynrelocs): Use new GLINK_ENTRY_SIZE.
1154 (ppc_elf_size_dynamic_sections): Likewise. Size branch table
1155 by PLT reloc count.
1156 (write_glink_stub): Handle __tls_get_addr_opt stub.
1157 Pad out to size given by GLINK_ENTRY_SIZE.
1158 (ppc_elf_relocate_section): Adjust write_glink_stub call.
1159 (ppc_elf_finish_dynamic_symbol): Likewise.
1160 (ppc_elf_finish_dynamic_sections): Write PLTresolve without using
1161 insn array since so many need rewriting.
1162 * elf32-ppc.h (struct ppc_elf_params): Add plt_stub_align.
1163 * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Rename from
1164 GLINK_CALL_STUB_SIZE. Add htab param and evaluate to size without
1165 nops. Adjust all uses.
1166 (ppc64_elf_get_synthetic_symtab): Don't use GLINK_CALL_STUB_SIZE
1167 in glink_vma calculation.
1168 (struct ppc_link_hash_table): Add global_entry section pointer.
1169 (create_linkage_sections): Create separate section for global
1170 entry stubs.
1171 (PPC_LO, PPC_HI, PPC_HA): Move earlier.
1172 (size_global_entry_stubs): Handle sizing for aligned stubs.
1173 (ppc64_elf_size_dynamic_sections): Handle global_entry alloc,
1174 and don't stash end of glink branch table in rawsize.
1175 (ppc_build_one_stub): Rewrite stub size calculations.
1176 (build_global_entry_stubs): Use new section.
1177 (ppc64_elf_build_stubs): Don't pad __glink_PLTresolve with nops.
1178 Build lazy link stubs out to end of section. Build global entry
1179 stubs in new section.
1180
1181 2018-01-15 Nick Clifton <nickc@redhat.com>
1182
1183 * po/uk.po: Updated Ukranian translation.
1184
1185 2018-01-13 Nick Clifton <nickc@redhat.com>
1186
1187 * po/bfd.pot: Regenerated.
1188
1189 2018-01-13 Nick Clifton <nickc@redhat.com>
1190
1191 * version.m4: Bump version to 2.30.51
1192 * configure: Regenerate.
1193
1194 2018-01-13 Nick Clifton <nickc@redhat.com>
1195
1196 2.30 branch created.
1197
1198 2018-01-12 Jens Widell <jl@opera.com>
1199
1200 * elf.c (setup_group): Optimize search for group by remembering
1201 last found group and restarting search at that index.
1202 * elf-bfd.h (struct elf_obj_tdata): Add group_search_offset field.
1203
1204 2018-01-12 Gunther Nikl <gnikl@users.sourceforge.net>
1205
1206 * aoutx.h (aout_link_check_ar_symbols): Remove default and handle
1207 bfd_link_common_skip_none in switch.
1208
1209 2018-01-12 Alan Modra <amodra@gmail.com>
1210
1211 PR ld/22649
1212 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore dynamic
1213 references on forced local symbols.
1214
1215 2018-01-12 Vlad Ivanov <vlad@ivanov.email>
1216
1217 * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when
1218 .reginfo section has wrong size.
1219
1220 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
1221
1222 PR ld/22393
1223 * elf.c (_bfd_elf_map_sections_to_segments): When generating
1224 separate code and read-only data LOAD segments, create a new
1225 LOAD segment if the previous section contains text and the
1226 current section doesn't or vice versa. Don't put a writable
1227 section in a read-only segment if there is a RELRO segment.
1228
1229 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
1230
1231 PR ld/22649
1232 * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Ignore dynamic
1233 references on forced local symbols.
1234
1235 2018-01-11 H.J. Lu <hongjiu.lu@intel.com>
1236
1237 PR ld/22677
1238 * elflink.c (bfd_elf_gc_sections): Keep all PREINIT_ARRAY,
1239 INIT_ARRAY as well as FINI_ARRAY sections for ld -r --gc-section.
1240
1241 2018-01-09 Kuan-Lin Chen <kuanlinchentw@gmail.com>
1242
1243 PR 22662
1244 * elf32-nds32.c (nds32_elf_relax_loadstore): Fix a typographical error.
1245
1246 2018-01-03 John Baldwin <jhb@FreeBSD.org>
1247
1248 * elf.c (elfcore_grok_freebsd_note): Handle
1249 NT_FREEBSD_PROCSTAT_PROC, NT_FREEBSD_PROCSTAT_FILES, and
1250 NT_FREEBSD_PROCSTAT_VMMAP.
1251
1252 2018-01-03 Alan Modra <amodra@gmail.com>
1253
1254 Update year range in copyright notice of all files.
1255
1256 For older changes see ChangeLog-2017
1257 \f
1258 Copyright (C) 2018 Free Software Foundation, Inc.
1259
1260 Copying and distribution of this file, with or without modification,
1261 are permitted in any medium without royalty provided the copyright
1262 notice and this notice are preserved.
1263
1264 Local Variables:
1265 mode: change-log
1266 left-margin: 8
1267 fill-column: 74
1268 version-control: never
1269 End:
This page took 0.063933 seconds and 4 git commands to generate.