cf5b372860359e1ef9f7ecd262c00b86db94c17d
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2019-10-08 Alan Modra <amodra@gmail.com>
2
3 PR 25078
4 * dwarf2.c (find_abstract_instance): Delete orig_info_ptr, add
5 recur_count. Error on recur_count reaching 100 rather than
6 info_ptr matching orig_info_ptr. Adjust calls.
7
8 2019-10-07 Jozef Lawrynowicz <jozef.l@mittosystems.com>
9
10 * elf32-msp430.c (elf32_msp430_merge_mspabi_attributes): Rename to..
11 (elf32_msp430_merge_msp430_attributes): Add support for merging
12 the GNU object attribute for data region.
13
14 2019-10-07 Alan Modra <amodra@gmail.com>
15
16 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Do allocate
17 space for local got non-tls relocs when PIE.
18
19 2019-10-07 Alan Modra <amodra@gmail.com>
20
21 * elflink.c (elf_fixup_link_order): Don't attempt to find
22 an elf_section for linker created bfd sections.
23
24 2019-10-07 Alan Modra <amodra@gmail.com>
25
26 * elf32-ppc.c (ppc_elf_tls_optimize): Don't process R_PPC_TLSLD
27 with non-local symbol. Don't double count __tls_get_addr calls
28 with marker relocs.
29 * elf64-ppc.c (ppc64_elf_tls_optimize): Likewise.
30
31 2019-10-07 Alan Modra <amodra@gmail.com>
32
33 * elf32-ppc.c (nomark_tls_get_addr): Rename from has_tls_get_addr_call
34 throughout.
35 * elf64-ppc.c (nomark_tls_get_addr): Likewise.
36
37 2019-10-04 Alan Modra <amodra@gmail.com>
38
39 * elf64-ppc.c (ppc64_elf_check_relocs): Move initialisation of vars.
40 (ppc64_elf_tls_optimize): Correct is_local condition.
41 (allocate_got): Don't reserve dynamic relocations for any of the
42 tls got relocs in PIEs when the symbol is local.
43 (allocate_dynrelocs): Correct validity test for local sym using
44 tlsld_got slot.
45 (ppc64_elf_size_dynamic_sections): Don't reserve dynamic relocations
46 for any of the tls got relocs in PIEs.
47 (ppc64_elf_layout_multitoc): Likewise.
48 (ppc64_elf_relocate_section): Correct validity test for local sym
49 using tlsld_got slot. Don't emit dynamic relocations for any of
50 the tls got relocs in PIEs when the symbol is local.
51 * elf32-ppc.c (ppc_elf_tls_optimize): Correct is_local condition.
52 (got_relocs_needed): Delete.
53 (allocate_dynrelocs): Correct validity test for local sym using
54 tlsld_got slot. Don't reserve dynamic relocations for any of the
55 tls got relocs in PIEs when the symbol is local.
56 (ppc_elf_size_dynamic_sections): Don't reserve dynamic relocations
57 for any of the tls got relocs in PIEs.
58 (ppc_elf_relocate_section): Correct validity test for local sym
59 using tlsld_got slot. Don't emit dynamic relocations for any of
60 the tls got relocs in PIEs when the symbol is local.
61
62 2019-10-04 Szabolcs Nagy <szabolcs.nagy@arm.com>
63
64 PR ld/22263
65 PR ld/25056
66 * elf32-arm.c (elf32_arm_tls_transition): Use bfd_link_dll instead of
67 bfd_link_pic for TLS checks.
68 (elf32_arm_final_link_relocate): Likewise.
69 (allocate_dynrelocs_for_symbol): Likewise.
70
71 2019-10-04 Szabolcs Nagy <szabolcs.nagy@arm.com>
72
73 PR ld/25062
74 * elf32-arm.c (elf32_arm_final_link_relocate): Sign extend data.
75
76 2019-09-30 Nick Alcock <nick.alcock@oracle.com>
77
78 * elf-bfd.h (bfd_section_is_ctf): New inline function.
79 * elf.c (special_sections_c): Add ".ctf".
80 (assign_file_positions_for_non_load_sections): Note that
81 compressed debugging sections etc are not assigned here. Treat
82 CTF sections like SEC_ELF_COMPRESS sections when is_linker_output:
83 sh_offset -1.
84 (assign_file_positions_except_relocs): Likewise.
85 (find_section_in_list): Note that debugging and CTF sections, as
86 well as reloc sections, are assigned later.
87 (_bfd_elf_assign_file_positions_for_non_load): CTF sections get
88 their size and contents updated.
89 (_bfd_elf_set_section_contents): Skip CTF sections: unlike
90 compressed sections, they have no uncompressed content to copy at
91 this stage.
92 * elflink.c (elf_link_swap_symbols_out): Call the examine_strtab
93 callback right before the strtab is written out.
94 (bfd_elf_final_link): Don't cache the section contents of CTF
95 sections: they are not populated yet. Call the emit_ctf callback
96 right at the end, after all the symbols and strings are flushed
97 out.
98
99 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
100
101 * elf-strtab.c (_bfd_elf_strtab_len): New.
102 (_bfd_elf_strtab_str): Likewise.
103 * bfd-elf.h: Declare them.
104
105 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
106
107 * elf-bfd.h (bfd_elf_get_str_section): Add.
108 * elf.c (bfd_elf_get_str_section): No longer static.
109
110 2019-09-26 Alan Modra <amodra@gmail.com>
111
112 PR 24262
113 * Makefile.am (AM_CPPFLAGS): Add -DLIBDIR.
114 * plugin.c (load_plugin): Search both ${libdir}/bfd-plugins and
115 ${bindir}/../lib/bfd-plugins if different.
116 * Makefile.in: Regenerate.
117
118 2019-09-23 Alan Modra <amodra@gmail.com>
119
120 * elf64-ppc.c (ppc64_elf_check_relocs): Use bfd_link_executable
121 in choosing between different actions for shared library and
122 non-shared library cases. Delete ELIMINATE_COPY_RELOCS test.
123 (dec_dynrel_count): Likewise. Account for ifunc special case.
124 (ppc64_elf_adjust_dynamic_symbol): Copy relocs are for executables,
125 not non-pic.
126 (allocate_dynrelocs): Comment fixes. Delete ELIMINATE_COPY_RELOCS
127 test.
128
129 2019-09-23 Alan Modra <amodra@gmail.com>
130
131 * Makefile.am (SOURCE_HFILES): Add many missing .h files.
132 * Makefile.in: Regenerate.
133 * po/SRC-POTFILES.in: Regenerate.
134
135 2019-09-23 Alan Modra <amodra@gmail.com>
136
137 * bfd-in.h (bfd_symbol, bfd_section_already_linked),
138 (bfd_elf_version_tree): Delete forward declarations.
139 Move other forward decls and remaining elf function decl later.
140 (bfd_section_already_linked_table_init),
141 (bfd_section_already_linked_table_free),
142 (_bfd_handle_already_linked, _bfd_nearby_section),
143 (_bfd_fix_excluded_sec_syms): Move to bfdlink.h.
144
145 2019-09-23 Alan Modra <amodra@gmail.com>
146
147 * bfd-in.h: Move ecoff function declarations..
148 * ecoff-bfd.h: ..to here, new file.
149 * ecoff.c: Include ecoff-bfd.h.
150 * ecofflink.c: Likewise.
151 * elf64-alpha.c: Likewise.
152 * elfxx-mips.c: Likewise.
153 * bfd-in2.h: Regenerate.
154
155 2019-09-23 Alan Modra <amodra@gmail.com>
156
157 * bfd-in.h (enum notice_asneeded_action): Move to bfdlink.h.
158 Move most other elf declarations..
159 * elf-bfd.h: ..to here.
160 * bfd-in2.h: Regenerate.
161
162 2019-09-23 Alan Modra <amodra@gmail.com>
163
164 * bfd-in.h: Move m68k function declaration..
165 * cpu-m68k.h: ..to here, new file..
166 * elf32-m68k.h: ..and here, new file.
167 * elf32-m68k.c: Include cpu-m68k.h and elf32-m68k.h.
168 * bfd-in2.h: Regenerate.
169
170 2019-09-23 Alan Modra <amodra@gmail.com>
171
172 * bfd-in.h: Move bfin function declaration..
173 * elf32-bfin.h: ..to here, new file.
174 * elf32-bfin.c: Include elf32-bfin.h.
175 * bfd-in2.h: Regenerate.
176
177 2019-09-23 Alan Modra <amodra@gmail.com>
178
179 * bfd-in.h: Move cr16 function declaration..
180 * elf32-cr16.h: ..to here, new file.
181 * elf32-cr16.c: Include elf32-cr16.h.
182 * bfd-in2.h: Regenerate.
183
184 2019-09-23 Alan Modra <amodra@gmail.com>
185
186 * bfd-in.h (bfd_sunos_get_needed_list),
187 (bfd_sunos_record_link_assignment),
188 (bfd_sunos_size_dynamic_sections),
189 (bfd_i386linux_size_dynamic_sections),
190 (bfd_sparclinux_size_dynamic_sections): Delete obsolete decls.
191 * bfd-in2.h: Regenerate.
192
193 2019-09-23 Alan Modra <amodra@gmail.com>
194
195 * bfd-in.h: Move xcoff function declarations..
196 * xcofflink.h: ..to here, new file.
197 * xcofflink.c: Include xcofflink.h.
198 * coff-rs6000.c (bfd_xcoff_ar_archive_set_magic): Delete unused func.
199 * bfd-in2.h: Regenerate.
200
201 2019-09-23 Alan Modra <amodra@gmail.com>
202
203 * bfd-in.h: Delete coff forward refs and move coff declaration..
204 * coff-bfd.h: ..to here.
205 * bfd-in2.h: Regenerate.
206
207 2019-09-23 Alan Modra <amodra@gmail.com>
208
209 * bfd-in.h: Move arm declaraions..
210 * cpu-arm.h: ..to here, new file..
211 * coff-arm.h: ..and here, new file..
212 * elf32-arm.h: ..and here, new file.
213 * cpu-arm.c: Include cpu-arm.h.
214 * coff-arm.c: Include cpu-arm.h and coff-arm.h.
215 * elf32-arm.c: Include cpu-arm.h and elf32-arm.h.
216 * pe-arm.c: Move function rename defines later.
217 * pe-arm-wince.c: Likewise and include sysdep.h and bfd.h early.
218 * bfd-in2.h: Regenerate.
219
220 2019-09-23 Alan Modra <amodra@gmail.com>
221
222 * bfd-in.h: Move tic6x function declaration..
223 * elf32-tic6x.h: ..to here.
224 * bfd-in2.h: Regenerate.
225
226 2019-09-23 Alan Modra <amodra@gmail.com>
227
228 * bfd-in.h: Move aarch64 declarations and defines..
229 * cpu-aarch64.h: ..to here, new file..
230 * elfxx-aarch64.h: ..and here.
231 * cpu-aarch64.c: Include cpu-aarch64.h.
232 * elfnn-aarch64.c: Likewise.
233 * bfd-in2.h: Regenerate.
234
235 2019-09-23 Alan Modra <amodra@gmail.com>
236
237 * bfd-in.h: Delete ticoff function declarations.
238 * coff-tic54x.c (bfd_ticoff_set_section_load_page),
239 (bfd_ticoff_get_section_load_page): Make static.
240 * bfd-in2.h: Regenerate.
241
242 2019-09-23 Alan Modra <amodra@gmail.com>
243
244 * bfd-in.h: Move h8300 function declaration to..
245 * cpu-h8300.h: ..here, new file.
246 * cpu-h8300.c: Include cpu-h8300.h.
247 * elf32-h8300.c: Likewise.
248 * bfd-in2.h: Regenerate.
249
250 2019-09-23 Alan Modra <amodra@gmail.com>
251
252 * bfd-in.h: Move ia64 function declarations..
253 * elfxx-ia64.h: ..to here.
254 * bfd-in2.h: Regenerate.
255
256 2019-09-23 Alan Modra <amodra@gmail.com>
257
258 * bfd-in.h: Move v850 function declarations..
259 * elf32-v850.h: ..to here, new file.
260 * elf32-v850.c: Include elf32-v850.h.
261 * bfd-in2.h: Regenerate.
262
263 2019-09-23 Alan Modra <amodra@gmail.com>
264
265 * bfd-in.h: Move mips function declaration to..
266 * elfxx-mips.h: ..here.
267 * bfd-in2.h: Regenerate.
268
269 2019-09-23 Alan Modra <amodra@gmail.com>
270
271 * bfd-in.h: Move csky function declarations to..
272 * elf32-csky.h: ..here, new file.
273 * elf32-csky.c: Include elf32-csky.h.
274 * bfd-in2.h: Regenerate.
275
276 2019-09-20 Nelson Chu <nelson.chu@sifive.com>
277
278 * elfnn-riscv.c (riscv_pcgp_hi_reloc): Add new field undefined_weak.
279 (riscv_record_pcgp_hi_reloc): New parameter undefined_weak.
280 Set undefined_weak field from it.
281 (relax_func_t): New parameter undefined_weak.
282 (_bfd_riscv_relax_call): New ignored parameter undefined_weak.
283 (_bfd_riscv_relax_tls_le): Likewise.
284 (_bfd_riscv_relax_align): Likewise.
285 (_bfd_riscv_relax_delete): Likewise.
286 (_bfd_riscv_relax_lui): New parameter undefined_weak. If true,
287 allow relaxing. For LO12* relocs, set rs1 to x0 when undefined_weak.
288 (_bfd_riscv_relax_pc): New parameter undefined_weak. For LO12* relocs,
289 set undefined_weak from hi_reloc. If true, allow relaxing. For LO12*
290 relocs, set rs1 to x0 when undefined_weak and change to non-pcrel
291 reloc.
292 (_bfd_riscv_relax_section): New local undefined_weak. Set for
293 undef weak relocs that can be relaxed. Pass to relax_func call.
294
295 2019-09-20 Alan Modra <amodra@gmail.com>
296
297 * bfd-in.h (bfd_section_name, bfd_section_size, bfd_section_vma),
298 (bfd_section_lma, bfd_section_alignment, bfd_section_flags),
299 (bfd_section_userdata, bfd_is_com_section, discarded_section),
300 (bfd_get_section_limit_octets, bfd_get_section_limit): Delete macros.
301 * bfd.c (bfd_get_section_limit_octets, bfd_get_section_limit),
302 (bfd_section_list_remove, bfd_section_list_append),
303 (bfd_section_list_prepend, bfd_section_list_insert_after),
304 (bfd_section_list_insert_before, bfd_section_removed_from_list):
305 New inline functions.
306 * section.c (bfd_is_und_section, bfd_is_abs_section),
307 (bfd_is_ind_section, bfd_is_const_section, bfd_section_list_remove),
308 (bfd_section_list_append, bfd_section_list_prepend),
309 (bfd_section_list_insert_after, bfd_section_list_insert_before),
310 (bfd_section_removed_from_list): Delete macros.
311 (bfd_section_name, bfd_section_size, bfd_section_vma),
312 (bfd_section_lma, bfd_section_alignment, bfd_section_flags),
313 (bfd_section_userdata, bfd_is_com_section, bfd_is_und_section),
314 (bfd_is_abs_section, bfd_is_ind_section, bfd_is_const_section),
315 (discarded_section): New inline functions.
316 * bfd-in2.h: Regenerate.
317
318 2019-09-20 Alan Modra <amodra@gmail.com>
319
320 * bfd-in.h (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
321 (bfd_asymbol_bfd, bfd_asymbol_flavour, bfd_set_asymbol_name): Delete.
322 * bfd.c (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
323 (bfd_asymbol_bfd, bfd_set_asymbol_name): New inline functions.
324 * targets.c (bfd_asymbol_flavour): Likewise.
325 * bfd-in2.h: Regenerate.
326
327 2019-09-20 Alan Modra <amodra@gmail.com>
328
329 * archive.c (bfd_generic_archive_p): Use bfd_set_thin_archive.
330 * bfd-in.h (bfd_get_filename, bfd_get_cacheable, bfd_get_format),
331 (bfd_get_target, bfd_get_flavour, bfd_family_coff, bfd_big_endian),
332 (bfd_little_endian, bfd_header_big_endian, bfd_header_little_endian),
333 (bfd_get_file_flags, bfd_applicable_file_flags),
334 (bfd_applicable_section_flags, bfd_has_map, bfd_is_thin_archive),
335 (bfd_valid_reloc_types, bfd_usrdata, bfd_get_start_address),
336 (bfd_get_symcount, bfd_get_outsymbols, bfd_count_sections),
337 (bfd_get_dynamic_symcount, bfd_get_symbol_leading_char): Delete.
338 * bfd/bfd.c (bfd_get_filename, bfd_get_cacheable, bfd_get_format),
339 (bfd_get_file_flags, bfd_get_start_address, bfd_get_symcount),
340 (bfd_get_dynamic_symcount, bfd_get_outsymbols, bfd_count_sections),
341 (bfd_has_map, bfd_is_thin_archive, bfd_set_thin_archive),
342 (bfd_usrdata, bfd_set_usrdata): New inline functions.
343 * targets.c (bfd_get_target, bfd_get_flavour),
344 (bfd_applicable_file_flags, bfd_family_coff, bfd_big_endian),
345 (bfd_little_endian, bfd_header_big_endian),
346 (bfd_header_little_endian, bfd_applicable_section_flags),
347 (bfd_get_symbol_leading_char): New inline functions.
348 * bfd-in2.h: Regenerate.
349
350 2019-09-20 Alan Modra <amodra@gmail.com>
351
352 * elf64-ppc.c (ppc64_glibc_dynamic_reloc): New function.
353 (ppc64_elf_relocate_section): Warn if emitting unsupported dynamic
354 relocations.
355
356 2019-09-18 Alan Modra <amodra@gmail.com>
357
358 * bfd-in.h (bfd_get_section_name, bfd_get_section_vma),
359 (bfd_get_section_lma, bfd_get_section_alignment),
360 (bfd_get_section_size, bfd_get_section_flags),
361 (bfd_get_section_userdata): Delete.
362 (bfd_section_name, bfd_section_size, bfd_section_vma),
363 (bfd_section_lma, bfd_section_alignment): Lose bfd parameter.
364 (bfd_section_flags, bfd_section_userdata): New.
365 (bfd_is_com_section): Rename parameter.
366 * section.c (bfd_set_section_userdata, bfd_set_section_vma),
367 (bfd_set_section_alignment, bfd_set_section_flags, bfd_rename_section),
368 (bfd_set_section_size): Delete bfd parameter, rename section parameter.
369 (bfd_set_section_lma): New.
370 * bfd-in2.h: Regenerate.
371 * mach-o.c (bfd_mach_o_init_section_from_mach_o): Delete bfd param,
372 update callers.
373 * aoutx.h, * bfd.c, * coff-alpha.c, * coff-arm.c, * coff-mips.c,
374 * coff64-rs6000.c, * coffcode.h, * coffgen.c, * cofflink.c,
375 * compress.c, * ecoff.c, * elf-eh-frame.c, * elf-hppa.h,
376 * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-properties.c,
377 * elf-s390-common.c, * elf-vxworks.c, * elf.c, * elf32-arc.c,
378 * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c, * elf32-cr16.c,
379 * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c, * elf32-csky.c,
380 * elf32-d10v.c, * elf32-epiphany.c, * elf32-fr30.c, * elf32-frv.c,
381 * elf32-ft32.c, * elf32-h8300.c, * elf32-hppa.c, * elf32-i386.c,
382 * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
383 * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c,
384 * elf32-mep.c, * elf32-metag.c, * elf32-microblaze.c,
385 * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
386 * elf32-nios2.c, * elf32-or1k.c, * elf32-ppc.c, * elf32-pru.c,
387 * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c,
388 * elf32-score7.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c,
389 * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c, * elf32-visium.c,
390 * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c,
391 * elf64-bpf.c, * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c,
392 * elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c,
393 * elflink.c, * elfnn-aarch64.c, * elfnn-ia64.c, * elfnn-riscv.c,
394 * elfxx-aarch64.c, * elfxx-mips.c, * elfxx-sparc.c,
395 * elfxx-tilegx.c, * elfxx-x86.c, * i386msdos.c, * linker.c,
396 * mach-o.c, * mmo.c, * opncls.c, * pdp11.c, * pei-x86_64.c,
397 * peicode.h, * reloc.c, * section.c, * syms.c, * vms-alpha.c,
398 * xcofflink.c: Update throughout for bfd section macro and function
399 changes.
400
401 2019-09-18 Alan Modra <amodra@gmail.com>
402
403 * bfd-in.h (bfd_asymbol_section): Rename from bfd_get_section.
404 (bfd_get_output_section): Delete.
405 (bfd_asymbol_base): Delete.
406 (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
407 (bfd_asymbol_bfd, bfd_asymbol_flavour): Tidy.
408 (bfd_set_asymbol_name): New macro.
409 * bfd-in2.h: Regenerate.
410 * aout-cris.c: Update throughout to use bfd_asymbol_section.
411 * aoutx.h: Likewise.
412 * cofflink.c: Likewise.
413 * dwarf2.c: Likewise.
414 * ecoff.c: Likewise.
415 * elf.c: Likewise.
416 * elf32-arm.c: Likewise.
417 * elf32-mips.c: Likewise.
418 * elf32-score.c: Likewise.
419 * elf32-score7.c: Likewise.
420 * elfn32-mips.c: Likewise.
421 * elfnn-aarch64.c: Likewise.
422 * elfxx-mips.c: Likewise.
423 * linker.c: Likewise.
424 * pdp11.c: Likewise.
425 * elf64-mmix.c (mmix_elf_reloc): Part expand bfd_get_output_section.
426
427 2019-09-18 Simon Marchi <simon.marchi@polymtl.ca>
428
429 * Makefile.in: Re-generate.
430 * configure: Re-generate.
431 * doc/Makefile.in: Re-generate.
432
433 2019-09-18 Alan Modra <amodra@gmail.com>
434
435 * aoutx.h (slurp_symbol_table): Don't set symcount using bfd_get
436 macros.
437 * pdp11.c (slurp_symbol_table): Likewise.
438 * som.c (som_slurp_symbol_table): Likewise.
439 * coff-ppc.c (ppc_bfd_coff_final_link): Likewise.
440 * coffcode.h (coff_slurp_symbol_table): Likewise.
441 * cofflink.c (_bfd_coff_final_link): Likewise.
442 * ecoff.c (ecoff_slurp_symbolic_header): Likewise.
443 (_bfd_ecoff_slurp_symbolic_info): Likewise.
444 (_bfd_ecoff_slurp_symbol_table): Likewise.
445 (_bfd_ecoff_bfd_final_link): Likewise.
446 * elf.c (_bfd_elf_canonicalize_symtab): Likewise.
447 * elflink.c (elf_link_output_symstrtab): Likewise.
448 (bfd_elf_final_link): Likewise.
449 * peicode.h (pe_ILF_build_a_bfd): Likewise.
450 * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
451 * aoutx.h (some_aout_object_p, slurp_symbol_table): Don't set
452 start_address or symcount using bfd_get macros.
453 * coffgen.c (coff_real_object_p): Likewise.
454 * pdp11.c (some_aout_object_p, slurp_symbol_table): Likewise.
455 * som.c (som_object_setup, som_slurp_symbol_table): Likewise.
456 * elfcore.h (elf_core_file_p): Don't set start_address using
457 bfd_get macro.
458 * elf.c (_bfd_elf_canonicalize_dynamic_symtab): Don't set dynsymcount
459 using bfd_get macro.
460 * bfd.c (bfd_set_file_flags): Don't set flags using bfd_get macro.
461 * linker.c (bfd_generic_link_read_symbols): Don't set outsymbols
462 or symcount using bfd_get macros.
463 (_bfd_generic_final_link, generic_add_output_symbol): Likewise.
464 * syms.c (bfd_set_symtab): Likewise.
465 * vms-alpha.c (alpha_vms_bfd_final_link): Likewise.
466 * archive.c (do_slurp_bsd_armap): Don't set has_armap using
467 bfd_has_map macro.
468 (do_slurp_coff_armap, bfd_slurp_armap): Likewise.
469 * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
470 * coff-rs6000.c (_bfd_xcoff_slurp_armap): Likewise.
471 * coff64-rs6000.c (xcoff64_slurp_armap): Likewise.
472 * ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
473 * som.c (som_slurp_armap): Likewise.
474
475 2019-09-18 Alan Modra <amodra@gmail.com>
476
477 * archures.c (bfd_get_arch): Make param const.
478 (bfd_get_mach, bfd_arch_bits_per_byte): Likewise.
479 (bfd_arch_bits_per_address, bfd_octets_per_byte): Likewise.
480 * bfd-in2.h: Regenerate.
481
482 2019-09-18 Alan Modra <amodra@gmail.com>
483
484 * bfd-in.h (carsym.name): Make const.
485 * reloc.c (struct reloc_howto_struct.name): Likewise.
486 * targets.c (bfd_target.name): Likewise.!
487 * bfd.c (bfd_get_sign_extend_vma): Make variable const.
488 * som.c (som_bfd_fill_in_ar_symbols): Use an intermediary variable
489 when setting carsym.name.
490 * bfd-in2.h: Regenerate.
491
492 2019-09-18 Alan Modra <amodra@gmail.com>
493
494 * mach-o.c (bfd_mach_o_fat_member_init): Likewise. Replace
495 xstrdup and xmalloc with bfd_strdup and bfd_malloc. Return an
496 error status. Adjust calls.
497 * vms-lib.c (_bfd_vms_lib_get_module): Test mhd->id earlier.
498 Close bfd on failure. Replace xstrdup/bfd_alloc use with
499 bfd_malloc. Use bfd_set_filename.
500
501 2019-09-18 Alan Modra <amodra@gmail.com>
502
503 * elf64-ppc.c (must_be_dyn_reloc): Return 0 for TOC16 relocs.
504 (ppc64_elf_check_relocs): Support dynamic/copy relocs for TOC16.
505 (ppc64_elf_adjust_dynamic_symbol): Don't keep dynamic reloc when
506 needs_copy even if all relocs are in rw sections.
507 (dec_dynrel_count): Handle TOC16 relocs.
508 (ppc64_elf_relocate_section): Support dynamic relocs for TOC16.
509 (ppc64_elf_finish_dynamic_symbol): Adjust to handle needs_copy
510 semantic change.
511
512 2019-09-16 Phil Blundell <pb@pbcl.net>
513
514 * version.m4: Set version to 2.33.50.
515 * Makefile.in, configure, doc/Makefile.in: Regenerated.
516
517 2019-09-11 Tom Tromey <tom@tromey.com>
518
519 * opncls.c (bfd_set_filename): New function.
520 * bfd-in2.h: Regenerate.
521
522 2019-09-11 Alan Modra <amodra@gmail.com>
523
524 * targets.c (struct bfd_target): Add _bfd_group_name.
525 (BFD_JUMP_TABLE): Likewise.
526 * coffgen.c (bfd_coff_group_name): New function.
527 * elf.c (bfd_elf_group_name): New function.
528 * linker.c (_bfd_nolink_bfd_group_name): New function.
529 * section.c (bfd_generic_group_name): New function.
530 * elf-bfd.h (bfd_elf_group_name): Declare.
531 * libbfd-in.h (_bfd_nolink_bfd_group_name): Declare.
532 * libcoff-in.h (bfd_coff_group_name): Declare.
533 * aout-target.h (MY_bfd_group_name): Define.
534 * aout-tic30.c (MY_bfd_group_name): Define.
535 * bfd.c (bfd_group_name): Define.
536 * binary.c (binary_bfd_group_name): Define.
537 * coff-alpha.c (_bfd_ecoff_bfd_group_name): Define.
538 * coff-mips.c (_bfd_ecoff_bfd_group_name): Define.
539 * coff-rs6000.c (_bfd_xcoff_bfd_group_name): Define.
540 * coffcode.h (coff_bfd_group_name): Define.
541 * elfxx-target.h (bfd_elfNN_bfd_group_name): Define.
542 * i386msdos.c (msdos_bfd_group_name): Define.
543 * ihex.c (ihex_bfd_group_name): Define.
544 * mach-o-target.c (bfd_mach_o_bfd_group_name): Define.
545 * mmo.c (mmo_bfd_group_name): Define.
546 * pef.c (bfd_pef_bfd_group_name): Define.
547 * plugin.c (bfd_plugin_bfd_group_name): Define.
548 * ppcboot.c (ppcboot_bfd_group_name): Define.
549 * som.c (som_bfd_group_name): Define.
550 * srec.c (srec_bfd_group_name): Define.
551 * tekhex.c (tekhex_bfd_group_name): Define.
552 * verilog.c (verilog_bfd_group_name): Define.
553 * vms-alpha.c (vms_bfd_group_name, alpha_vms_bfd_group_name): Define.
554 * xsym.c (bfd_sym_bfd_group_name): Define.
555 * coff64-rs6000.c (rs6000_xcoff64_vec): Init new field.
556 (rs6000_xcoff64_aix_vec): Likewise.
557 * bfd-in2.h: Regenerate.
558 * libbfd.h: Regenerate.
559 * libcoff.h: Regenerate.
560
561 2019-09-10 Nick Clifton <nickc@redhat.com>
562
563 PR 24907
564 * archures.c (bfd_arch_info_type): Add max_reloc_offset_into_insn
565 field.
566 (bfd_default_arch_struct): Initialise the new field.
567 * bfd-in2.h: Regenerate.
568 * cpu-aarch64.c: Initialise the new field.
569 * cpu-alpha.c: Likewise.
570 * cpu-arc.c: Likewise.
571 * cpu-arm.c: Likewise.
572 * cpu-avr.c: Likewise.
573 * cpu-bfin.c: Likewise.
574 * cpu-bpf.c: Likewise.
575 * cpu-cr16.c: Likewise.
576 * cpu-cr16c.c: Likewise.
577 * cpu-cris.c: Likewise.
578 * cpu-crx.c: Likewise.
579 * cpu-csky.c: Likewise.
580 * cpu-d10v.c: Likewise.
581 * cpu-d30v.c: Likewise.
582 * cpu-dlx.c: Likewise.
583 * cpu-epiphany.c: Likewise.
584 * cpu-fr30.c: Likewise.
585 * cpu-frv.c: Likewise.
586 * cpu-ft32.c: Likewise.
587 * cpu-h8300.c: Likewise.
588 * cpu-hppa.c: Likewise.
589 * cpu-i386.c: Likewise.
590 * cpu-ia64.c: Likewise.
591 * cpu-iamcu.c: Likewise.
592 * cpu-ip2k.c: Likewise.
593 * cpu-iq2000.c: Likewise.
594 * cpu-k1om.c: Likewise.
595 * cpu-l1om.c: Likewise.
596 * cpu-lm32.c: Likewise.
597 * cpu-m10200.c: Likewise.
598 * cpu-m10300.c: Likewise.
599 * cpu-m32c.c: Likewise.
600 * cpu-m32r.c: Likewise.
601 * cpu-m68hc11.c: Likewise.
602 * cpu-m68hc12.c: Likewise.
603 * cpu-m68k.c: Likewise.
604 * cpu-m9s12x.c: Likewise.
605 * cpu-m9s12xg.c: Likewise.
606 * cpu-mcore.c: Likewise.
607 * cpu-mep.c: Likewise.
608 * cpu-metag.c: Likewise.
609 * cpu-microblaze.c: Likewise.
610 * cpu-mips.c: Likewise.
611 * cpu-mmix.c: Likewise.
612 * cpu-moxie.c: Likewise.
613 * cpu-msp430.c: Likewise.
614 * cpu-mt.c: Likewise.
615 * cpu-nds32.c: Likewise.
616 * cpu-nfp.c: Likewise.
617 * cpu-nios2.c: Likewise.
618 * cpu-ns32k.c: Likewise.
619 * cpu-or1k.c: Likewise.
620 * cpu-pdp11.c: Likewise.
621 * cpu-pj.c: Likewise.
622 * cpu-plugin.c: Likewise.
623 * cpu-powerpc.c: Likewise.
624 * cpu-pru.c: Likewise.
625 * cpu-riscv.c: Likewise.
626 * cpu-rl78.c: Likewise.
627 * cpu-rs6000.c: Likewise.
628 * cpu-rx.c: Likewise.
629 * cpu-s12z.c: Likewise.
630 * cpu-s390.c: Likewise.
631 * cpu-score.c: Likewise.
632 * cpu-sh.c: Likewise.
633 * cpu-sparc.c: Likewise.
634 * cpu-spu.c: Likewise.
635 * cpu-tic30.c: Likewise.
636 * cpu-tic4x.c: Likewise.
637 * cpu-tic54x.c: Likewise.
638 * cpu-tic6x.c: Likewise.
639 * cpu-tic80.c: Likewise.
640 * cpu-tilegx.c: Likewise.
641 * cpu-tilepro.c: Likewise.
642 * cpu-v850.c: Likewise.
643 * cpu-v850_rh850.c: Likewise.
644 * cpu-vax.c: Likewise.
645 * cpu-visium.c: Likewise.
646 * cpu-wasm32.c: Likewise.
647 * cpu-xc16x.c: Likewise.
648 * cpu-xgate.c: Likewise.
649 * cpu-xstormy16.c: Likewise.
650 * cpu-xtensa.c: Likewise.
651 * cpu-z80.c: Likewise.
652 * cpu-z8k.c: Likewise.
653
654 2019-09-09 Phil Blundell <pb@pbcl.net>
655
656 binutils 2.33 branch created.
657
658 2019-09-06 Alan Modra <amodra@gmail.com>
659
660 * aout-target.h (object_p): Formatting.
661 * bfd-in.h (bfd_get_filename): Don't cast to char*.
662 * corefile.c (generic_core_file_matches_executable_p): Constify
663 variables and remove cast.
664 * bfd-in2.h: Regenerate.
665
666 2019-09-05 Alan Modra <amodra@gmail.com>
667
668 * elf64-ppc.c (ppc64_elf_check_relocs): Interpret an addend in
669 GOT_PCREL and PLT_PCREL relocs as affecting the value stored
670 in the GOT/PLT entry rather than affecting the offset to that
671 GOI/PLT entry.
672 (ppc64_elf_edit_toc, ppc64_elf_relocate_section): Likewise.
673
674 2019-09-05 Alan Modra <amodra@gmail.com>
675
676 * elf64-ppc.c (xlate_pcrel_opt): Handle prefix loads and stores
677 in second instruction.
678 (ppc64_elf_relocate_section): Likewise.
679
680 2019-09-05 Alan Modra <amodra@gmail.com>
681
682 PR 24955
683 * libbfd-in.h (bfd_strdup): New inline function.
684 * archive.c (_bfd_get_elt_at_filepos): Use bfd_strdup. Close
685 bfd on error.
686 * elfcode.h (_bfd_elf_bfd_from_remote_memory): Use bfd_strdup.
687 * opncls.c (bfd_fopen): Use bfd_strdup. Close fd and stream
688 on error.
689 (bfd_openstreamr): Use bfd_strdup.
690 (bfd_openr_iovec, bfd_openw, bfd_create): Likewise.
691 * plugin.c (try_load_plugin): Use bfd_malloc.
692 * libbfd.h: Regenerate.
693
694 2019-09-02 Alan Modra <amodra@gmail.com>
695
696 PR 11983
697 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Free debug_filename
698 on success. Tidy.
699 (read_alt_indirect_string): Likewise.
700 (read_alt_indirect_ref): Likewise.
701
702 2019-08-31 Jim Wilson <jimw@sifive.com>
703
704 PR 23825
705 * elfnn-riscv.c (riscv_elf_create_dynamic_sections): Add SEC_LOAD,
706 SEC_DATA, and SEC_HAS_CONTENTS to .tdata.dyn section.
707
708 2019-08-30 Jim Wilson <jimw@sifive.com>
709
710 * elfnn-riscv.c (riscv_elf_relocate_section): For unresolvable reloc
711 error, call bfd_set_error, set ret to FALSE, and goto out label.
712
713 2019-08-30 H.J. Lu <hongjiu.lu@intel.com>
714
715 PR ld/24951
716 * archive.c (_bfd_get_elt_at_filepos): Copy BFD_COMPRESS,
717 BFD_DECOMPRESS and BFD_COMPRESS_GABI flags for thin archive.
718
719 2019-08-29 Alan Modra <amodra@gmail.com>
720
721 PR 24697
722 * elf32-ppc.c (ppc_elf_check_relocs): Call bad_shared_reloc
723 when !bfd_link_executable for R_PPC_EMB_SDA2I16 and
724 R_PPC_EMB_SDA2REL. Don't call bad_shared_reloc for any other
725 reloc.
726
727 2019-08-29 Alan Modra <amodra@gmail.com>
728
729 * elf64-ppc.c (xlate_pcrel_opt): Add poff parameter. Allow offset
730 on second insn, return it in poff.
731 (ppc64_elf_relocate_section): Add offset to paddi addend for
732 PCREL_OPT.
733
734 2019-08-28 Jim Wilson <jimw@sifive.com>
735
736 * elfnn-riscv.c (_bfd_riscv_relax_lui): Add check to exclude abs
737 section when setting max_alignment. Update comment.
738 (_bfd_riscv_relax_pc): Likewise.
739
740 2019-08-29 Alan Modra <amodra@gmail.com>
741
742 PR 24891
743 * bfd.c (struct bfd): Add no_element_cache.
744 * archive.c (_bfd_get_elt_at_filepos): Don't add element to
745 archive cache when no_element_cache.
746 (bfd_generic_archive_p): Set no_element_cache when opening first
747 element to check format. Close first element too.
748 (do_slurp_bsd_armap): Don't zero ardata->cache here.
749 * bfd-in2.h: Regenerate.
750
751 2019-08-24 Alan Modra <amodra@gmail.com>
752
753 * elf64-ppc.c (ppc64_elf_edit_toc): Exclude undefined weak
754 symbols from GOT optimisation.
755
756 2019-08-23 Stafford Horne <shorne@gmail.com>
757
758 * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Use correct value for
759 PLT GOT entries.
760
761 2019-08-23 Nick Clifton <nickc@redhat.com>
762
763 PR 24456
764 * elf.c (bfd_section_from_shdr): Issue an informative warning
765 message and continue processing other sections after encountering
766 a reloc section for a section which already has other relocs
767 associated with it.
768
769 2019-08-23 Alan Modra <amodra@gmail.com>
770
771 PR 24933
772 * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Don't exit
773 on error without freeing plts[] contents.
774
775 2019-08-22 Dennis Zhang <dennis.zhang@arm.com>
776
777 * cpu-arm.c: New entries for Cortex-M35P, Cortex-A77, Cortex-A76AE.
778
779 2019-08-22 Nick Clifton <nickc@redhat.com>
780
781 PR 24922
782 * pei-x86_64.c (pex64_xdata_print_uwd_codes): Add checks before
783 reading data from extra records.
784
785 2019-08-22 Tamar Christina <tamar.christina@arm.com>
786
787 PR ld/24601
788 * elfnn-aarch64.c (aarch64_relocate): Handle weak TLS and undefined TLS.
789 Also Pass input_bfd to _bfd_aarch64_elf_resolve_relocation.
790 * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Use it.
791 * elfxx-aarch64.h (_bfd_aarch64_elf_resolve_relocation): Emit warning
792 for weak TLS.
793
794 2019-08-22 Alan Modra <amodra@gmail.com>
795
796 * elf32-arm.c (cmse_scan): Don't use ARM_GET_SYM_CMSE_SPCL,
797 instead recognize CMSE_PREFIX in symbol name.
798 (elf32_arm_gc_mark_extra_sections): Likewise.
799 (elf32_arm_filter_cmse_symbols): Don't test ARM_GET_SYM_CMSE_SPCL.
800 (elf32_arm_swap_symbol_in): Don't invoke ARM_SET_SYM_CMSE_SPCL.
801
802 2019-08-20 Dennis Zhang <dennis.zhang@arm.com>
803
804 * cpu-aarch64.c: New entries for Cortex-A34, Cortex-A65,
805 Cortex-A77, cortex-A65AE, and Cortex-A76AE.
806
807 2019-08-20 Tamar Christina <tamar.christina@arm.com>
808
809 * elf32-arm.c (elf32_thumb2_plt_entry, elf32_arm_plt_thumb_stub,
810 elf32_arm_stub_long_branch_v4t_thumb_thumb,
811 elf32_arm_stub_long_branch_v4t_thumb_arm,
812 elf32_arm_stub_short_branch_v4t_thumb_arm,
813 elf32_arm_stub_long_branch_v4t_thumb_arm_pic,
814 elf32_arm_stub_long_branch_v4t_thumb_thumb_pic,
815 elf32_arm_stub_long_branch_v4t_thumb_tls_pic): Change nop to branch to
816 previous instruction.
817
818 2019-08-19 Tom Tromey <tromey@adacore.com>
819
820 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Create hash table
821 holding symbols.
822
823 2019-08-19 Alan Modra <amodra@gmail.com>
824
825 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename has_gotrel
826 to has_optrel.
827 (struct _ppc64_elf_section_data): Likewise.
828 (ppc64_elf_check_relocs): Set has_optrel for more relocs.
829 (ppc64_elf_edit_toc): Do ha/lo insn checks in GOT loop rather
830 than TOC loop. Check PLT16 insns too.
831
832 2019-08-16 H.J. Lu <hongjiu.lu@intel.com>
833
834 PR ld/24905
835 * elf64-x86-64.c (elf_x86_64_check_relocs): Move PIC check for
836 PC-relative relocations back to ...
837 (elf_x86_64_relocate_section): Here.
838
839 2019-08-16 Martin Liska <mliska@suse.cz>
840
841 PR ld/24912
842 * elflink.c: Report error only for not relocatable.
843 * linker.c (_bfd_generic_link_add_one_symbol): Do not handle
844 here lto_slim_object as it's handled in caller.
845
846 2019-08-16 Alan Modra <amodra@gmail.com>
847
848 * elf32-ppc.c (ppc_elf_relocate_section): Optimize unaligned relocs.
849
850 2019-08-15 Jim Wilson <jimw@sifive.com>
851
852 * elfnn-riscv.c (perform_relocation) <R_RISCV_RVC_LUI>: If
853 RISCV_CONST_HIGH_PART (value) is zero, then convert c.lui instruction
854 to c.li instruction, and use ENCODE_RVC_IMM to set value.
855
856 2019-08-15 Tom Tromey <tromey@adacore.com>
857
858 * dwarf2.c (scan_unit_for_symbols): Check for end of CU, not end
859 of section.
860
861 2019-08-14 Alan Modra <amodra@gmail.com>
862
863 PR 24623
864 * dwarf2.c (stash_comp_unit): New function, extracted from..
865 (_bfd_dwarf2_find_nearest_line): ..here.
866 (find_abstract_instance): Parse comp units and decode line info
867 as needed.
868
869 2019-08-14 Alan Modra <amodra@gmail.com>
870
871 * dwarf2.c (comp_unit_maybe_decode_line_info): Declare.
872 (comp_unit_find_nearest_line): Use it here..
873 (_bfd_dwarf2_find_symbol_bias): ..and here.
874
875 2019-08-14 Alan Modra <amodra@gmail.com>
876
877 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter.
878 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype.
879 * coffgen.c (coff_find_nearest_line_with_names): Adjust
880 _bfd_dwarf2_find_nearest_line calls.
881 * elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise.
882 * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
883 * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
884 * elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise.
885 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
886 * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
887 * libbfd.h: Regenerate.
888
889 2019-08-09 Mihailo Stojanovic <mihailo.stojanovic@rt-rk.com>
890
891 * elf-bfd.h (struct elf_backend_data): New members.
892 * elflink.c (_bfd_elf_link_create_dynamic_sections): Create
893 .gnu.hash section if necessary.
894 (struct collect_gnu_hash_codes): New member.
895 (elf_gnu_hash_process_symidx): New function name.
896 (elf_renumber_gnu_hash_syms): Ignore local and undefined
897 symbols. Record xlat location for every symbol which should have
898 a .MIPS.xhash entry.
899 (bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to
900 dynamic section if necessary.
901 (GNU_HASH_SECTION_NAME): New define.
902 (bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section.
903 Update the section size info.
904 * elfxx-mips.c (struct mips_elf_hash_sort_data): New members.
905 (struct mips_elf_link_hash_entry): New member.
906 (mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation
907 table location.
908 (mips_elf_sort_hash_table): Initialize the pointer to the
909 .MIPS.xhash section.
910 (mips_elf_sort_hash_table_f): Populate the .MIPS.xhash
911 translation table entry with the symbol dynindx.
912 (_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH.
913 (_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section
914 info.
915 (_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash
916 section.
917 (_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to
918 dynamic section.
919 (_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH.
920 (_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section
921 sh_link info.
922 (_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag.
923 (MIPS_LIBC_ABI_XHASH): New ABI version enum value.
924 (_bfd_mips_post_process_headers): Mark the ABI version as
925 MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section,
926 but not a .hash section.
927 (_bfd_mips_elf_record_xhash_symbol): New function. Record a
928 position in the translation table, associated with the hash
929 entry.
930 * elfxx-mips.h (literal_reloc_p): Define
931 elf_backend_record_xhash_symbol backend hook.
932 * elfxx-target.h: Initialize elf_backend_record_xhash_symbol
933 backend hook.
934
935 2019-08-07 Jose E. Marchesi <jose.marchesi@oracle.com>
936
937 * elf64-bpf.c (bpf_elf_relocate_section): New function.
938 (bpf_elf_insn_disp_reloc): Delete function.
939 (elf_backend_relocate_section): Define.
940
941 2019-08-07 Alan Modra <amodra@gmail.com>
942
943 PR 24644
944 * archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check
945 for overflow in expressions involving nsymz.
946
947 2019-08-01 Ilia Diachkov <ilia.diachkov@optimitech.com>
948
949 * elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to
950 two pages in relro presence.
951
952 2019-08-01 Max Filippov <jcmvbkbc@gmail.com>
953
954 * elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode)
955 (get_wsr_lbeg_opcode): New functions.
956 (check_loop_aligned): Detect relaxed loops and adjust loop_len
957 and insn_len for the first actual instruction of the loop.
958
959 2019-07-30 Alan Modra <amodra@gmail.com>
960
961 PR 24768
962 * bfd.c (struct bfd): Add lto_slim_object flag.
963 * bfd-in2.h: Regenerate.
964
965 2019-07-29 Martin Liska <mliska@suse.cz>
966
967 PR 24768
968 * archive.c (_bfd_compute_and_write_armap): Come up with
969 report_plugin_err variable.
970 * bfd-in2.h (struct bfd): Add lto_slim_object flag.
971 * elf.c (struct lto_section): New.
972 (_bfd_elf_make_section_from_shdr): Parse content of
973 .gnu_lto_.lto section.
974 * elflink.c: Report error for a missing LTO plugin.
975 * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
976
977 2019-07-28 Alan Modra <amodra@gmail.com>
978
979 PR 24857
980 PR 24339
981 * elflink.c (elf_link_add_object_symbols): Report an informative
982 error on finding local symbols with index equal or greater than
983 symbol table sh_info. Correct comment. Allow such symbols in
984 dynamic objects. Abort on NULL section for symbol.
985
986 2019-07-26 Alan Modra <amodra@gmail.com>
987
988 * elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field.
989 (elf_linker): Don't define.
990 * elflink.c (bfd_elf_final_link): Don't set elf_linker.
991
992 2019-07-25 YunQiang Su <syq@debian.org>
993
994 PR 24832
995 * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
996 mips inputs.
997
998 2019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
999
1000 * elf32-arc.c (bfd_get_32_me): Add a small description, fix
1001 formating.
1002 (reloc_type_to_name): Fix formating.
1003 (arc_elf_object_p): Likewise.
1004 (debug_arc_reloc): Likewise.
1005 (arc_do_relocation): Likewise.
1006
1007 2019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
1008
1009 * elf32-arc.c (bfd_get_32_me): New function.
1010 (bfd_put_32_me): Likewise.
1011 (arc_elf_relax_section): Likewise.
1012 (bfd_elf32_bfd_relax_section): Define.
1013
1014 2019-07-24 Alan Modra <amodra@gmail.com>
1015
1016 * elf-bfd.h (struct elf_backend_data): Return bfd_boolean from
1017 elf_backend_final_write_processing, don't pass linker arg.
1018 (_bfd_elf_final_write_processing): Update prototype.
1019 * elf.c (_bfd_elf_write_object_contents): Adjust call.
1020 (_bfd_elf_final_write_processing): Return error on incompatible
1021 OSABI and has_gnu_osabi. Remove linker arg.
1022 * elf-nacl.h (nacl_final_write_processing): Update prototype.
1023 * elf-vxworks.h (elf_vxworks_final_write_processing): Likewise.
1024 * elfxx-mips.h (_bfd_mips_final_write_processing): Likewise.
1025 (_bfd_mips_elf_final_write_processing): Likewise.
1026 * elf-hppa.h (elf_hppa_final_write_processing): Return status
1027 and remove linker arg.
1028 * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
1029 * elf-nacl.c (nacl_final_write_processing): Likewise.
1030 * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
1031 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
1032 * elf32-arm.c (arm_final_write_processing): Likewise.
1033 (elf32_arm_final_write_processing): Likewise.
1034 (elf32_arm_nacl_final_write_processing): Likewise.
1035 (elf32_arm_vxworks_final_write_processing): Likewise.
1036 * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
1037 * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
1038 * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
1039 * elf32-cris.c (cris_elf_final_write_processing): Likewise.
1040 * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
1041 * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
1042 * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
1043 * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
1044 * elf32-mips.c (mips_vxworks_final_write_processing): Likewise.
1045 * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
1046 * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
1047 * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
1048 * elf32-pj.c (pj_elf_final_write_processing): Likewise.
1049 * elf32-ppc.c (ppc_final_write_processing): Likewise.
1050 (ppc_elf_final_write_processing): Likewise.
1051 (ppc_elf_vxworks_final_write_processing): Likewise.
1052 * elf32-sparc.c (sparc_final_write_processing): Likewise.
1053 (elf32_sparc_final_write_processing): Likewise.
1054 (elf32_sparc_vxworks_final_write_processing): Likewise.
1055 * elf32-v850.c (v850_elf_final_write_processing): Likewise.
1056 * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
1057 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
1058 * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
1059 * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
1060 * elfxx-mips.c (_bfd_mips_final_write_processing): Likewise.
1061 (_bfd_mips_elf_final_write_processing): Likewise.
1062
1063 2019-07-24 Alan Modra <amodra@gmail.com>
1064
1065 * elf-vxworks.c (elf_vxworks_final_write_processing): Don't return
1066 early.
1067 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
1068 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
1069
1070 2019-07-24 Alan Modra <amodra@gmail.com>
1071
1072 * elf32-visium.c (visium_elf_post_process_headers): Don't set
1073 EI_OSABI header byte here.
1074 (ELF_OSABI): Define.
1075
1076 2019-07-23 Alan Modra <amodra@gmail.com>
1077
1078 * elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_mbind.
1079 * elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_mbind.
1080 (get_program_header_size): Formatting. Only test SH_GNU_MBIND
1081 when elf_gnu_osabi_mbind is set.
1082 (_bfd_elf_map_sections_to_segments): Likewise.
1083 (_bfd_elf_init_private_section_data): Likewise.
1084 (_bfd_elf_final_write_processing): Update comment.
1085 * elf64-hppa.c (elf64_hppa_special_sections): Move .tbss entry.
1086 (elf_backend_special_sections): Define without .tbss for linux.
1087
1088 2019-07-23 Alan Modra <amodra@gmail.com>
1089
1090 * elf-bfd.h (enum elf_gnu_osabi): Rename from elf_gnu_symbols.
1091 Remove none, any, all enums.
1092 (struct elf_obj_tdata): Rename has_gnu_symbols field to has_gnu_osabi.
1093 (_bfd_elf_final_write_processing): Declare.
1094 * elf.c (_bfd_elf_write_object_contents): Unconditionally call
1095 elf_backend_final_write_processing.
1096 (_bfd_elf_post_process_headers): Move body of function to..
1097 (_bfd_elf_final_write_processing): ..here, but set EI_OSABI byte
1098 only when not already set. Adjust for rename.
1099 * elfxx-target.h (elf_backend_final_write_processing): Default to
1100 _bfd_elf_final_write_processing.
1101 * elf-hppa.h (elf_hppa_final_write_processing): Call
1102 _bfd_elf_final_write_processing.
1103 * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
1104 * elf-nacl.c (nacl_final_write_processing): Likewise.
1105 * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
1106 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
1107 * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
1108 * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
1109 * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
1110 * elf32-cris.c (cris_elf_final_write_processing): Likewise.
1111 * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
1112 * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
1113 * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
1114 * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
1115 * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
1116 * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
1117 * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
1118 * elf32-pj.c (pj_elf_final_write_processing): Likewise.
1119 * elf32-v850.c (v850_elf_final_write_processing): Likewise.
1120 * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
1121 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
1122 * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
1123 * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
1124 * elf32-arm.c (arm_final_write_processing): Split out from..
1125 (elf32_arm_final_write_processing): ..here. Call
1126 _bfd_elf_final_write_processing.
1127 (elf32_arm_nacl_final_write_processing): Adjust.
1128 * elfxx-mips.c (_bfd_mips_final_write_processing): Split out from..
1129 (_bfd_mips_elf_final_write_processing): ..here. Call
1130 _bfd_elf_final_write_processing.
1131 * elfxx-mips.h (_bfd_mips_final_write_processing): Declare.
1132 * elf32-mips.c (mips_vxworks_final_write_processing): Adjust.
1133 * elf32-ppc.c (ppc_final_write_processing): Split out from..
1134 (ppc_elf_final_write_processing): ..here. Call
1135 _bfd_elf_final_write_processing.
1136 (ppc_elf_vxworks_final_write_processing): Adjust.
1137 * elf32-sparc.c (sparc_final_write_processing): Split out from..
1138 (elf32_sparc_final_write_processing): ..here. Call
1139 _bfd_elf_final_write_processing.
1140 (elf32_sparc_vxworks_final_write_processing): Adjust.
1141 * elf32-d10v.c (elf_backend_final_write_processing): Don't define.
1142 * elf32-d30v.c (elf_backend_final_write_processing): Don't define.
1143 * elf32-m68hc11.c (elf_backend_final_write_processing): Don't define.
1144 * elf32-m68hc12.c (elf_backend_final_write_processing): Don't define.
1145 * elf32-s12z.c (elf_backend_final_write_processing): Don't define.
1146 * elf32-i386.c (elf_i386_check_relocs): Don't set has_gnu_symbols.
1147 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
1148 * elflink.c (elf_link_add_object_symbols): Likewise.
1149 (elf_link_output_symstrtab): Set has_gnu_osabi for symbols here
1150 instead.
1151
1152 2019-07-23 Omar Majid <omajid@redhat.com>
1153
1154 * coffcode.h (coff_set_arch_mach_hook): Handle I386_APPLE_MAGIC,
1155 I386_FREEBSD_MAGIC, I386_LINUX_MAGIC, I386_NETBSD_MAGIC,
1156 AMD64_APPLE_MAGIC, AMD64_FREEBSD_MAGIC, AMD64_LINUX_MAGIC,
1157 AMD64_NETBSD_MAGIC.
1158 * peXXigen.c: Add comment about source of .NET magic numbers.
1159
1160 2019-07-19 Alan Modra <amodra@gmail.com>
1161
1162 * reloc.c (BFD_RELOC_PPC64_TPREL34, BFD_RELOC_PPC64_DTPREL34),
1163 (BFD_RELOC_PPC64_GOT_TLSGD34, BFD_RELOC_PPC64_GOT_TLSLD34),
1164 (BFD_RELOC_PPC64_GOT_TPREL34, BFD_RELOC_PPC64_GOT_DTPREL34),
1165 (BFD_RELOC_PPC64_TLS_PCREL): New pcrel tls relocs.
1166 * elf64-ppc.c (ppc64_elf_howto_raw): Add howtos for pcrel tls relocs.
1167 (ppc64_elf_reloc_type_lookup): Translate pcrel tls relocs.
1168 (must_be_dyn_reloc, dec_dynrel_count): Add R_PPC64_TPREL64.
1169 (ppc64_elf_check_relocs): Support pcrel tls relocs.
1170 (ppc64_elf_tls_optimize, ppc64_elf_relocate_section): Likewise.
1171 * bfd-in2.h: Regenerate.
1172 * libbfd.h: Regenerate.
1173
1174 2019-07-18 Alan Modra <amodra@gmail.com>
1175
1176 * elf64-ppc.c (ppc64_elf_relocate_section): Don't bother selecting
1177 a TLS section symbol for edited relocs. Tighten TLS symbol/reloc
1178 match test.
1179
1180 2019-07-18 Alan Modra <amodra@gmail.com>
1181
1182 * elf64-ppc.c (TLS_EXPLICIT): Define as 256.
1183 (ppc64_elf_check_relocs): Don't store TLS_EXPLICIT even if char
1184 is more than 8 bits.
1185 (ppc64_elf_tls_optimize): Likewise. Make tls_set, tls_clear, and
1186 tls_type vars unsigned int.
1187 (ppc64_elf_relocate_section): Use r_type rather than TLS_EXPLICIT
1188 to select r_type edit.
1189
1190 2019-07-18 Alan Modra <amodra@gmail.com>
1191
1192 * elf32-ppc.c (TLS_GDIE): Rename from TLS_TPRELGD throughout file.
1193 Correct comment.
1194 * elf64-ppc.c (TLS_GDIE): Likewise.
1195
1196 2019-07-18 Alan Modra <amodra@gmail.com>
1197
1198 * elf64-ppc.c (ppc64_elf_tls_optimize): Correct test for allowed
1199 range of tp-relative offsets.
1200
1201 2019-07-15 Alan Modra <amodra@gmail.com>
1202
1203 * elflink.c (_bfd_elf_fix_symbol_flags): If the def for an
1204 alias is no longer bfd_link_hash_defined, clear the alias.
1205
1206 2019-07-13 Alan Modra <amodra@gmail.com>
1207
1208 * elflink.c (_bfd_elf_omit_section_dynsym_default): Don't keep
1209 tls_sec.
1210 (_bfd_elf_init_1_index_section): Prefer not using TLS sections.
1211 (_bfd_elf_init_2_index_sections): Likewise.
1212 * elf64-ppc.c (ppc64_elf_relocate_section): When emitting dynamic
1213 relocations for local TLS symbols, use STN_UNDEF as the relocation
1214 symbol.
1215 * elf32-ppc.c (ppc_elf_relocate_section): Likewise, and don't
1216 leave TLS symbol value in the addend.
1217
1218 2019-07-08 Alan Modra <amodra@gmail.com>
1219
1220 PR 24785
1221 * elf32-ppc.c (_bfd_elf_ppc_set_arch): Sanity check .PPC.EMB.apuinfo
1222 size before reading first word.
1223
1224 2019-07-02 Nick Clifton <nickc@redhat.com>
1225
1226 PR 24717
1227 * elf.c (is_debuginfo_file): New function.
1228 (assign_file_positions_for_non_load_sections): Do not warn about
1229 allocated sections outside of loadable segments if they are found
1230 in a debuginfo file.
1231 * elf-bfd.h (is_debuginfo_file): Prototype.
1232
1233 2019-07-02 Nick Clifton <nickc@redhat.com>
1234
1235 PR 24753
1236 * compress.c (bfd_get_full_section_contents): Do not complain
1237 about linker created sections that are larger than the file size.
1238
1239 2019-07-02 Christophe Lyon <christophe.lyon@linaro.org>
1240
1241 * bfd/elf32-arm.c (CMSE_STUB_NAME): New define.
1242 (elf32_arm_get_stub_entry): Do not try to emit long-branch stubs
1243 for CMSE stubs.
1244 (arm_dedicated_stub_output_section_name): Use CMSE_STUB_NAME.
1245
1246 2019-07-02 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
1247
1248 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Mark debug
1249 sections when .text section contain secure entry functions
1250 is marked.
1251
1252 2019-07-01 Nick Clifton <nickc@redhat.com>
1253
1254 PR 23839
1255 * elf32-arm.c (elf32_arm_update_relocs): Do not include the
1256 section VMA in the offset used to update exidx relocs.
1257
1258 2019-06-28 Nick Clifton <nickc@redhat.com>
1259
1260 PR 24708
1261 * elf.c (_bfd_elf_slurp_version_tables): Check for an excessively
1262 large version reference section.
1263 * compress.c (bfd_get_full_section_contents): Check for an
1264 uncompressed section whose size is larger than the file size.
1265
1266 2019-06-28 Alan Modra <amodra@gmail.com>
1267
1268 * format.c (bfd_check_format_matches): Don't match plugin target
1269 if another target matches. Expand comment.
1270 * targets.c (_bfd_target_vector): Move plugin_vec after all other
1271 non-corefile targets, outside !SELECT_VECS.
1272 * config.bfd: Don't handle targ=plugin here.
1273 * configure.ac: Don't add plugin to enable_targets or handle in
1274 target loop setting selvecs and other target vars.
1275 * configure: Regenerate.
1276
1277 2019-06-26 Nick Clifton <nickc@redhat.com>
1278
1279 PR 24703
1280 * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add error
1281 messages for failures.
1282 * mach-o.c (bfd_mach_o_canonicalize_relocs): Set an bfd error code
1283 if returning an error value.
1284
1285 2019-06-25 Jan Beulich <jbeulich@suse.com>
1286
1287 * elf-properties.c (elf_find_and_remove_property): Rename last
1288 parameter. Mention it in comment.
1289
1290 2019-06-24 Ilia Diachkov <ilia.diachkov@optimitech.com>
1291
1292 * elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
1293 SEC_MERGE or SEC_CODE flags are set.
1294 (_bfd_riscv_relax_section): New local symtype. Set sym_sec and
1295 symtype consistently. Don't include sec_addr (sym_sec) in symval.
1296 Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
1297 Add sec_addr (sym_sec) after handling merge sections.
1298
1299 2019-06-24 H.J. Lu <hongjiu.lu@intel.com>
1300
1301 PR ld/24721
1302 * elf-properties.c (elf_merge_gnu_property_list): Remove the
1303 property after reporting property removal.
1304
1305 2019-06-23 Alan Modra <amodra@gmail.com>
1306
1307 PR 24704
1308 * elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
1309 (ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
1310 Reduce range of offsets allowed for other GOT relocs.
1311
1312 2019-06-23 Alan Modra <amodra@gmail.com>
1313
1314 PR 24689
1315 * elfcode.h (elf_object_p): Warning fix.
1316
1317 2019-06-21 Alan Modra <amodra@gmail.com>
1318
1319 PR 24689
1320 * elfcode.h (elf_object_p): Check type of e_shstrndx section.
1321
1322 2019-06-19 Alan Modra <amodra@gmail.com>
1323
1324 PR 24697
1325 * elf32-ppc.c (ppc_elf_relocate_section): Don't read insn for
1326 R_PPC_EMB_RELSDA. Mask low bit of R_PPC_EMB_SDA21 r_offset.
1327
1328 2019-06-19 Alan Modra <amodra@gmail.com>
1329
1330 * elf64-ppc.c (ppc64_elf_inline_plt): Correct st_other test for
1331 functions that require r2 valid to use local entry.
1332 (ppc64_elf_size_stubs, ppc64_elf_relocate_section): Likewise.
1333
1334 2019-06-17 Szabolcs Nagy <szabolcs.nagy@arm.com>
1335
1336 * elfnn-aarch64.c (elfNN_aarch64_allocate_local_dynrelocs): Remove.
1337 (elfNN_aarch64_size_dynamic_sections): Remove loc_hash_table traversal
1338 with elfNN_aarch64_allocate_local_dynrelocs.
1339
1340 2019-06-14 Szabolcs Nagy <szabolcs.nagy@arm.com>
1341
1342 * elfnn-aarch64.c: Enable MOVW_PREL relocs for ELF32.
1343
1344 2019-06-14 Alan Modra <amodra@gmail.com>
1345
1346 * Makefile.in: Regenerate.
1347 * configure: Regenerate.
1348
1349 2019-06-14 Alan Modra <amodra@gmail.com>
1350
1351 * elf64-ppc.c: Fix comments involving paddi.
1352
1353 2019-06-12 Adam Lackorzymski <adam@os.inf.tu-dresden.de>
1354
1355 PR 24643
1356 * elf32-arm.c (arm_elf_find_function): Fail if the symol table is
1357 absent, or the bfd is not in the ELF formart.
1358 * elfnn-aarch64.c (aarch64_elf_find_function): Likewise.
1359
1360 2019-06-10 Christos Zoulas <christos@zoulas.com>
1361
1362 PR 24650
1363 * elf.c (elfcore_make_auxv_note_section): New function.
1364 (elfcore_grok_note): Use it.
1365 (elfcore_grok_freebsd_note): Likewise.
1366 (elfcore_grok_openbsd_note): Likewise.
1367 (elfcore_grok_netbsd_note): Likewise. Plus add support for
1368 NT_NETBSDCORE_AUXV notes.
1369
1370 2019-06-06 Sudakshina Das <sudi.das@arm.com>
1371
1372 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Set
1373 alignment of the new gnu property section.
1374
1375 2019-06-06 Sudakshina Das <sudi.das@arm.com>
1376
1377 * bfd-in.h: Change comment.
1378 * bfd-in2.h: Regenerate.
1379 * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update warning.
1380 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties):
1381 Likwise.
1382
1383 2019-05-28 Faraz Shahbazker <fshahbazker@wavecomp.com>
1384
1385 * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_PCHI16>:
1386 Remove overflow check.
1387
1388 2019-05-28 Alan Modra <amodra@gmail.com>
1389
1390 PR 24596
1391 * cofflink.c (coff_link_check_archive_element): Don't assume
1392 element is a coff object file after calling add_archive_element.
1393
1394 2019-05-28 Alan Modra <amodra@gmail.com>
1395
1396 PR 24596
1397 * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Don't
1398 attempt to set sh_entsize for excluded PLT section.
1399
1400 2019-05-28 Alan Modra <amodra@gmail.com>
1401
1402 PR 24596
1403 * elf64-alpha.c (elf64_alpha_relocate_section): Don't attempt
1404 to emit R_ALPHA_GOTTPREL in PIEs, for which no space is
1405 allocated in alpha_dynamic_entries_for_reloc.
1406
1407 2019-05-28 Alan Modra <amodra@gmail.com>
1408
1409 PR 24596
1410 * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Don't segfault
1411 on NULL output_section.
1412 * elflink.c (elf_final_link_free): Don't free -1 symshndxbuf.
1413
1414 2019-05-28 Alan Modra <amodra@gmail.com>
1415
1416 PR 24596
1417 * elf32-m68k.c (elf_m68k_get_got_entry): Don't create a new
1418 entry when MUST_FIND. Abort when MUST_FIND not found.
1419 (elf_m68k_get_bfd2got_entry): Likewise.
1420 (elf_m68k_relocate_section): Remove now useless assert.
1421
1422 2019-05-28 Alan Modra <amodra@gmail.com>
1423
1424 PR 24596
1425 * elf64-hppa.c (elf64_hppa_finalize_dynreloc): Get the output bfd
1426 from bfd_link_info, not an output section owner.
1427 (elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd): Likewise.
1428 (elf_hppa_final_link_relocate): Likewise.
1429
1430 2019-05-28 Alan Modra <amodra@gmail.com>
1431
1432 PR 24596
1433 * aout-tic30.c (MY_bfd_final_link): Don't segfault on missing
1434 create_object_symbols_section, obj_textsec, obj_datasec or
1435 obj_bsssec. Fix other errors in placement.
1436 * config.bfd: Obsolete tic30-aout.
1437
1438 2019-05-28 Alan Modra <amodra@gmail.com>
1439
1440 PR 24596
1441 * dwarf2.c (save_section_vma, section_vma_same): Check for NULL
1442 end of section list as well as section_count.
1443 * xcofflink.c (xcoff_link_add_symbols): Fix temporarily changed
1444 section list before returning error.
1445
1446 2019-05-27 Alan Modra <amodra@gmail.com>
1447
1448 * elf.c (bfd_elf_set_group_contents): Exit on zero size section.
1449
1450 2019-05-27 Alan Modra <amodra@gmail.com>
1451
1452 PR 24596
1453 * linker.c (_bfd_generic_link_output_symbols): Heed BSF_KEEP.
1454
1455 2019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
1456
1457 * elfnn-aarch64.c (elfNN_aarch64_merge_symbol_attribute): New function.
1458 (struct elf_aarch64_link_hash_table): Add variant_pcs member.
1459 (elfNN_aarch64_allocate_dynrelocs): Update variant_pcs.
1460 (elfNN_aarch64_size_dynamic_sections): Add DT_AARCH64_VARIANT_PCS.
1461 (elf_backend_merge_symbol_attribute): Define.
1462
1463 2019-05-24 Alan Modra <amodra@gmail.com>
1464
1465 * po/SRC-POTFILES.in: Regenerate.
1466
1467 2019-05-24 Alan Modra <amodra@gmail.com>
1468
1469 * elf64-ppc.c: Comment on powerxx _notoc stub variants.
1470 (LI_R11_0, LIS_R11, ORI_R11_R11_0, SLDI_R11_R11_34): Define.
1471 (PADDI_R12_PC, PLD_R12_PC, D34, HA34): Define.
1472 (struct ppc_link_hash_table): Add powerxx_stubs.
1473 (ppc64_elf_check_relocs): Set powerxx_stubs.
1474 (build_powerxx_offset, size_powerxx_offset),
1475 (num_relocs_for_powerxx_offset),
1476 (emit_relocs_for_powerxx_offset): New functions.
1477 (plt_stub_size): Size powerxx stubs.
1478 (ppc_build_one_stub): Emit powerxx stubs.
1479 (ppc_size_one_stub): Size powerxx stubs. Omit .eh_frame for
1480 powerxx stubs.
1481
1482 2019-05-24 Alan Modra <amodra@gmail.com>
1483
1484 * elf64-ppc.c (ppc64_elf_check_relocs): Set has_gotrel for
1485 R_PPC64_GOT_PCREL34.
1486 (xlate_pcrel_opt): New function.
1487 (ppc64_elf_edit_toc): Handle R_PPC64_GOT_PCREL34.
1488 (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
1489 for R_PPC64_GOT_PCREL34. Implement R_PPC64_PCREL_OPT optimisation.
1490
1491 2019-05-24 Alan Modra <amodra@gmail.com>
1492
1493 * reloc.c (BFD_RELOC_PPC64_D34, BFD_RELOC_PPC64_D34_LO),
1494 (BFD_RELOC_PPC64_D34_HI30, BFD_RELOC_PPC64_D34_HA30),
1495 (BFD_RELOC_PPC64_PCREL34, BFD_RELOC_PPC64_GOT_PCREL34),
1496 (BFD_RELOC_PPC64_PLT_PCREL34),
1497 (BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34),
1498 (BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34),
1499 (BFD_RELOC_PPC64_REL16_HIGHER34, BFD_RELOC_PPC64_REL16_HIGHERA34),
1500 (BFD_RELOC_PPC64_REL16_HIGHEST34, BFD_RELOC_PPC64_REL16_HIGHESTA34),
1501 (BFD_RELOC_PPC64_D28, BFD_RELOC_PPC64_PCREL28): New reloc enums.
1502 * elf64-ppc.c (PNOP): Define.
1503 (ppc64_elf_howto_raw): Add reloc howtos for new relocations.
1504 (ppc64_elf_reloc_type_lookup): Translate new bfd reloc numbers.
1505 (ppc64_elf_ha_reloc): Adjust addend for highera34 and highesta34
1506 relocs.
1507 (ppc64_elf_prefix_reloc): New function.
1508 (struct ppc_link_hash_table): Add notoc_plt.
1509 (is_branch_reloc): Add R_PPC64_PLTCALL_NOTOC.
1510 (is_plt_seq_reloc): Add R_PPC64_PLT_PCREL34,
1511 R_PPC64_PLT_PCREL34_NOTOC, and R_PPC64_PLTSEQ_NOTOC.
1512 (ppc64_elf_check_relocs): Handle pcrel got and plt relocs. Set
1513 has_pltcall for section on seeing R_PPC64_PLTCALL_NOTOC. Handle
1514 possible need for dynamic relocs on non-pcrel powerxx relocs.
1515 (dec_dynrel_count): Handle non-pcrel powerxx relocs.
1516 (ppc64_elf_inline_plt): Handle R_PPC64_PLTCALL_NOTOC.
1517 (toc_adjusting_stub_needed): Likewise.
1518 (ppc64_elf_tls_optimize): Handle R_PPC64_PLTSEQ_NOTOC.
1519 (ppc64_elf_relocate_section): Handle new powerxx relocs.
1520 * bfd-in2.h: Regenerate.
1521 * libbfd.h: Regenerate.
1522
1523 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
1524
1525 * config.bfd (targ_cpu): Process bpf-*-none only if BFD64.
1526 * configure.ac: Set target_size=64 for bpf_elf64_le_vec and
1527 bpf_elf64_be_vec.
1528 * configure: Regenerate.
1529
1530 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
1531
1532 * configure: Regenerated.
1533 * Makefile.am (ALL_MACHINES): Add cpu-bpf.lo.
1534 (ALL_MACHINES_CFILES): Add cpu-bpf.c.
1535 (BFD64_BACKENDS): Add elf64-bpf.lo.
1536 (BFD64_BACKENDS_CFILES): Add elf64-bpf.c.
1537 * Makefile.in (SOURCE_HFILES): Regenerate.
1538 * config.bfd (targ_cpu): Handle bpf-*-* targets.
1539 * cpu-bpf.c: New file.
1540 * elf64-bpf.c: Likewise.
1541 * targets.c (_bfd_target_vector): Add bpf_elf64_be_vec and
1542 bpf_elf64_le_vec.
1543 * archures.c: Define architecture bfd_arch_bpf and machine
1544 bfd_arch_bpf.
1545 * reloc.c: Define BFD relocations used by the BPF target.
1546 * bfd-in2.h: Regenerated.
1547 * libbfd.h: Likewise.
1548
1549 2019-05-22 Alan Modra <amodra@gmail.com>
1550
1551 * elf32-arm.c (arm_allocate_glue_section_space): Clear section
1552 contents.
1553
1554 2019-05-22 Alan Modra <amodra@gmail.com>
1555
1556 * vms-alpha.c (_bfd_vms_write_etir): Don't attempt further
1557 processing on "size error in section".
1558
1559 2019-05-22 Alan Modra <amodra@gmail.com>
1560
1561 * som.c (som_bfd_free_cached_info): Call
1562 _bfd_generic_close_and_cleanup.
1563
1564 2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
1565
1566 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Generate error
1567 for TLS_TPREL_HI16(/LO16) relocations in shared library.
1568
1569 2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
1570
1571 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Add NULL pointer
1572 checks. Search the RELA table for n64 relocations.
1573
1574 2019-05-21 Matthew Fortune <matthew.fortune@mips.com>
1575 Faraz Shahbazker <fshahbazker@wavecomp.com>
1576
1577 * elfxx-mips.c (LA25_BC): New macro.
1578 (mips_elf_link_hash_table)<compact_branches>: New field.
1579 (STUB_JALRC): New macro.
1580 (mipsr6_o32_exec_plt0_entry_compact): New array.
1581 (mipsr6_n32_exec_plt0_entry_compact): Likewise.
1582 (mipsr6_n64_exec_plt0_entry_compact): Likewise.
1583 (mipsr6_exec_plt_entry_compact): Likewise.
1584 (mips_elf_create_la25_stub): Use BC instead of J for stubs
1585 when compact_branches is true.
1586 (_bfd_mips_elf_finish_dynamic_symbol): Choose the compact
1587 PLT for MIPSR6 with compact_branches. Do not reorder the
1588 compact branches PLT. Switch the lazy stub for MIPSR6
1589 with compact_branches to use JALRC.
1590 (mips_finish_exec_plt): Choose the compact PLT0 for MIPSR6
1591 when compact_branches is true.
1592 (_bfd_mips_elf_compact_branches): New function.
1593 * elfxx-mips.h (_bfd_mips_elf_compact_branches): New prototype.
1594
1595 2019-05-21 Tamar Christina <tamar.christina@arm.com>
1596
1597 PR ld/24373
1598 * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
1599 Fix print formatter.
1600
1601 2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
1602
1603 PR 24460
1604 * elf32-arm.c (get_value_helper): Remove.
1605 (elf32_arm_final_link_relocate): Fix branch future relocations.
1606
1607 2019-05-21 Tamar Christina <tamar.christina@arm.com>
1608
1609 PR ld/24373
1610 * bfd-in.h (enum erratum_84319_opts): New
1611 (bfd_elf64_aarch64_set_options, bfd_elf32_aarch64_set_options): Change
1612 int to enum erratum_84319_opts.
1613 * bfd-in2.h: Regenerate.
1614 * elfnn-aarch64.c (struct elf_aarch64_link_hash_table): Change
1615 fix_erratum_843419 to use new enum, remove fix_erratum_843419_adr.
1616 (_bfd_aarch64_add_stub_entry_after): Conditionally create erratum stub.
1617 (aarch64_size_one_stub): Conditionally size erratum 843419 stubs.
1618 (_bfd_aarch64_resize_stubs): Amend comment.
1619 (elfNN_aarch64_size_stubs): Don't generate stubs when no workaround
1620 requested.
1621 (bfd_elfNN_aarch64_set_options): Use new fix_erratum_843419 enum.
1622 (_bfd_aarch64_erratum_843419_branch_to_stub): Implement selection of
1623 erratum workaround.
1624 (clear_erratum_843419_entry): Update erratum conditional.
1625
1626 2019-05-21 Senthil Kumar Selvaraj <senthilkumar.selvaraj@microchip.com>
1627
1628 PR ld/24571
1629 * bfd/elf32-avr.c (elf32_avr_relax_section): Adjust range check
1630 when computing distance_short_enough.
1631
1632 2019-05-21 Senthil Kumar Selvaraj <senthilkumar.selvaraj@microchip.com>
1633
1634 PR ld/24564
1635 * bfd/elf32-avr.c (avr_relative_distance_considering_wrap_around):
1636 Wrap around even if distance equals avr_pc_wrap_around.
1637
1638 2019-05-20 Nick Clifton <nickc@redhat.com>
1639
1640 * po/fr.po: Updated French translation.
1641
1642 2019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1643
1644 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add case for Tag_MVE_arch.
1645
1646 2019-05-16 Alan Modra <amodra@gmail.com>
1647
1648 * elf32-arm.c (elf32_arm_write_section): Revert last change.
1649
1650 2019-05-15 Alan Modra <amodra@gmail.com>
1651
1652 * elf32-arm.c (elf32_arm_write_section): Don't leave
1653 error case of STM32L4XX_ERRATUM_BRANCH_TO_VENEER with
1654 unitialised section contents.
1655
1656 2019-05-14 Jamey Hicks <jamey.hicks@gmail.com>
1657
1658 PR 19921
1659 * verilog.c: (VerilogDataWidth): New variable.
1660 (verilog_write_record): Emit bytes in VerilogDataWidth bundles.
1661
1662 2019-05-08 Nick Clifton <nickc@redhat.com>
1663
1664 PR 24523
1665 * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Return TRUE
1666 rather than FALSE if encountering a non-ELF file.
1667
1668 2019-05-06 Alan Modra <amodra@gmail.com>
1669
1670 * elf32-pj.c (pj_elf_reloc): Don't report undefined weak as an error.
1671
1672 2019-05-06 Alan Modra <amodra@gmail.com>
1673
1674 * reloc.c (BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA),
1675 (BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA):
1676 Sort before BFD_RELOC_PPC64_DTPREL16_HIGHESTA entry.
1677 * libbfd.h: Regenerate.
1678 * bfd-in2.h: Regenerate.
1679
1680 2019-05-04 Alan Modra <amodra@gmail.com>
1681
1682 PR 24511
1683 * syms.c (coff_section_type): Only allow '.', '$' and numeric
1684 following the standard section names.
1685 (bfd_decode_symclass): Prioritize section flag tests in
1686 decode_section_type before name tests in coff_section_type.
1687 * plugin.c (bfd_plugin_canonicalize_symtab): Init fake_section
1688 and fake_common_section using BFD_FAKE_SECTION. Use "fake" as
1689 their names and choose standard .text section flags for
1690 fake_section.
1691
1692 2019-05-02 Nick Clifton <nickc@redhat.com>
1693
1694 PR 24493
1695 * coffcode.h (styp_to_sec_flags): Treat .gnu.debuglink and
1696 .gnu.debugaltlink sections as debugging sections.
1697
1698 2019-04-30 Alan Modra <amodra@gmail.com>
1699
1700 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_gotrel.
1701 (struct _ppc64_elf_section_data): Likewise.
1702 (ppc64_elf_check_relocs): Set above fields.
1703 (ppc64_elf_edit_toc): Add a pass over GOT relocs.
1704 (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
1705 when possible.
1706
1707 2019-04-26 H.J. Lu <hongjiu.lu@intel.com>
1708
1709 PR ld/24486
1710 * elflink.c (elf_link_output_extsym): Don't complain undefined
1711 weak dynamic reference.
1712
1713 2019-04-25 Sudakshina Das <sudi.das@arm.com>
1714
1715 * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): Remove.
1716 (PLT_BTI_TLSDESC_ENTRY_SIZE): Remove.
1717 (PLT_PAC_ENTRY_SIZE, PLT_BTI_PAC_ENTRY_SIZE): Remove.
1718 (PLT_BTI_SMALL_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): Update.
1719 (elfNN_aarch64_small_plt0_pac_entry): Remove.
1720 (elfNN_aarch64_small_plt0_bti_pac_entry): Remove.
1721 (elfNN_aarch64_small_plt0_bti_entry): Update.
1722 (elfNN_aarch64_small_plt_bti_entry): Update.
1723 (elfNN_aarch64_small_plt_pac_entry): Update.
1724 (elfNN_aarch64_tlsdesc_small_plt_bti_entry): Update.
1725 (setup_plt_values): Setup new entries.
1726 (elfNN_aarch64_finish_dynamic_sections): Remove size change.
1727 (elfNN_aarch64_plt_sym_val): Likewise.
1728
1729 2019-04-22 Jim Wilson <jimw@sifive.com>
1730
1731 * elfnn-riscv.c (PRSTATUS_SIZE) [ARCH_SIZE==32]: Change from 0 to 204.
1732
1733 2019-04-19 Alan Modra <amodra@gmail.com>
1734
1735 * elf32-s12z.c (elf_backend_can_gc_sections): Don't define
1736
1737 2019-04-17 H.J. Lu <hongjiu.lu@intel.com>
1738
1739 * elf64-x86-64.c (elf_x86_64_need_pic): Suggest -fPIE when not
1740 building shared object.
1741 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Likewise.
1742
1743 2019-04-17 H.J. Lu <hongjiu.lu@intel.com>
1744
1745 PR ld/24458
1746 * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): Also check x86
1747 linker_def.
1748
1749 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1750
1751 * reloc.c (BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM): New internal
1752 relocation.
1753 * bfd-in2.h: Regenerate.
1754 * libbfd.h: Likewise.
1755
1756 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1757
1758 * reloc.c (BFD_RELOC_ARM_THUMB_LOOP12): New.
1759 * bfd-in2.h: Regenerated.
1760 * libbfd.h: Regenerated.
1761
1762 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1763
1764 * reloc.c (BFD_RELOC_THUMB_PCREL_BFCSEL): New relocation.
1765 * bfd-in2.h: Regenerated.
1766 * libbfd.h: Likewise.
1767
1768 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1769
1770 * reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
1771 * bfd-in2.h: Regenerated.
1772 * libbfd.h: Regenerated.
1773 * elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
1774 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
1775 and R_ARM_THM_BF12 together.
1776 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.
1777
1778 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1779
1780 * reloc.c (BFD_RELOC_ARM_THUMB_BF19): New
1781 * libbfd.h: Regenerated.
1782 * bfd-in2.h: Regenerated.
1783 * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF18.
1784 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF19
1785 and R_ARM_THM_BF18 together.
1786 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF19.
1787
1788 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1789
1790 * reloc.c (BFD_RELOC_ARM_THUMB_BF17): New enum.
1791 * bfd-in2.h: Regenerated.
1792 * libbfd.h: Regenerated.
1793 * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF16.
1794 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF17
1795 and R_ARM_THM_BF16 together.
1796 (get_value_helper): New reloc helper.
1797 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF16.
1798
1799 2019-04-15 Sudakshina Das <sudi.das@arm.com>
1800
1801 * reloc.c (BFD_RELOC_THUMB_PCREL_BRANCH5): New enum.
1802 * bfd-in2.h: Regenerate.
1803 * libbfd.h: Regenerate.
1804
1805 2019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1806
1807 * archures.c (bfd_mach_arm_8_1M_MAIN): Define.
1808 * bfd-in2.h: Regenerate.
1809 * cpu-arm.c (arch_info_struct): Add entry for Armv8.1-M Mainline.
1810 * elf32-arm.c (using_thumb_only): Return true for Armv8.1-M Mainline
1811 and update assert.
1812 (using_thumb2): Likewise.
1813 (using_thumb2_bl): Update assert.
1814 (arch_has_arm_nop): Likewise.
1815 (bfd_arm_get_mach_from_attributes): Add case for Armv8.1-M Mainline.
1816 (tag_cpu_arch_combine): Add logic for Armv8.1-M Mainline merging.
1817
1818 2019-04-11 H.J. Lu <hongjiu.lu@intel.com>
1819
1820 * elf-linker-x86.h (elf_x86_cet_report): New.
1821 (elf_linker_x86_params): Add cet_report.
1822 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
1823 missing IBT and SHSTK properties if needed.
1824
1825 2019-04-11 H.J. Lu <hongjiu.lu@intel.com>
1826
1827 PR ld/24436
1828 * elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
1829 "h != NULL". Don't check "h != NULL" before calling.
1830 bfd_elf_gc_record_vtentry.
1831 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
1832 * elf32-bfin.c (bfin_check_relocs): Likewise.
1833 * elf32-cris.c (cris_elf_check_relocs): Likewise.
1834 * elf32-csky.c (csky_elf_check_relocs): Likewise.
1835 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
1836 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
1837 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
1838 * elf32-frv.c (elf32_frv_check_relocs): Likewise.
1839 * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
1840 * elf32-i386.c (elf_i386_check_relocs): Likewise.
1841 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1842 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
1843 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
1844 * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
1845 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
1846 * elf32-metag.c (elf_metag_check_relocs): Likewise.
1847 * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
1848 * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
1849 * elf32-s390.c (elf_s390_check_relocs): Likewise.
1850 * elf32-sh.c (sh_elf_check_relocs): Likewise.
1851 * elf32-v850.c (v850_elf_check_relocs): Likewise.
1852 * elf32-vax.c (elf_vax_check_relocs): Likewise.
1853 * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
1854 * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
1855 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
1856 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
1857 * elf64-s390.c (elf_s390_check_relocs): Likewise.
1858 * elf64-x86-64.c (elf_s390_check_relocs): Likewise.
1859 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
1860 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
1861 * elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
1862 VTENTRY entry.
1863
1864 2019-04-11 Alan Modra <amodra@gmail.com>
1865
1866 PR 24435
1867 * elflink.c (elf_link_add_object_symbols): Don't read partial
1868 dynamic entries from fuzzed objects.
1869
1870 2019-04-11 Tamar Christina <tamar.christina@arm.com>
1871
1872 PR ld/24302
1873 * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
1874 DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
1875 (elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.
1876
1877 2019-04-10 Michael Forney <mforney@mforney.org>
1878
1879 PR 24427
1880 * doc/chew.c (free_words): Correctly free "push_text" strings.
1881
1882 2019-04-08 H.J. Lu <hongjiu.lu@intel.com>
1883
1884 * config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.
1885
1886 2019-04-08 Alan Modra <amodra@gmail.com>
1887
1888 * configure.ac (elfxx_x86): Define and use.
1889 * configure: Regenerate.
1890
1891 2019-04-06 H.J. Lu <hongjiu.lu@intel.com>
1892
1893 * elf-linker-x86.h: New file.
1894 * elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
1895 to get x86-specific linker options.
1896 * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
1897 (elf_x86_64_check_relocs): Likewise.
1898 (elf_x86_64_relocate_section): Likewise.
1899 (elf_x86_64_link_setup_gnu_properties): Likewise.
1900 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
1901 (_bfd_x86_elf_link_setup_gnu_properties): Likewise.
1902 (_bfd_elf_linker_x86_set_options): New function.
1903 * elfxx-x86.h: Include "elf-linker-x86.h".
1904 (elf_x86_link_hash_table): Add params.
1905
1906 2019-04-03 Alan Modra <amodra@gmail.com>
1907
1908 * coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
1909 * elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
1910 * elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
1911 * elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
1912 * elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
1913 * pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.
1914
1915 2019-04-02 Jim Wilson <jimw@sifive.com>
1916
1917 PR 24389
1918 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
1919 ELF header flags to after check for ELF object file. Loop through
1920 sections looking for code sections, if none, then skip ABI checks.
1921
1922 2019-03-30 Andrew Waterman <andrew@sifive.com>
1923
1924 * elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
1925 rd == X_RA case.
1926
1927 2019-03-29 Max Filippov <jcmvbkbc@gmail.com>
1928
1929 * elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
1930 info->export_dynamic to the conditional.
1931
1932 2019-03-28 Alan Modra <amodra@gmail.com>
1933
1934 PR 24392
1935 * configure.ac: Invoke AC_CHECK_SIZEOF(int).
1936 * configure: Regenerate.
1937 * coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
1938 workaround with SIZEOF_LONG vs. SIZEOF_INT check.
1939 * elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
1940 * elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
1941 * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
1942
1943 2019-03-21 Jim Wilson <jimw@sifive.com>
1944
1945 PR 24365
1946 * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
1947 verify sym non-NULL before using. Add identical check using h.
1948
1949 2019-03-21 Sudakshina Das <sudi.das@arm.com>
1950
1951 * elf-bfd.h (struct elf_backend_data): Add argument to
1952 merge_gnu_properties.
1953 * elf-properties.c (elf_merge_gnu_properties): Add argument to
1954 itself and while calling bed->merge_gnu_properties.
1955 (elf_merge_gnu_property_list): Update the calls for
1956 elf_merge_gnu_properties.
1957 * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
1958 of --force-bti warning and add argument.
1959 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
1960 warning.
1961 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
1962 * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
1963 declaration.
1964
1965 2019-03-20 Sudakshina Das <sudi.das@arm.com>
1966
1967 * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
1968 * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
1969 (elf_backend_fixup_gnu_properties): Define for AArch64.
1970
1971 2019-03-18 Alan Modra <amodra@gmail.com>
1972
1973 PR 24355
1974 * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
1975 for local iplt syms with ent->plt.offset == -1. Remove ineffective
1976 attempt at writing glink stubs only once.
1977
1978 2019-03-16 Alan Modra <amodra@gmail.com>
1979
1980 PR 24337
1981 * elf.c (_bfd_elf_rela_local_sym): Revert last change.
1982 (_bfd_elf_rel_local_sym): Likewise.
1983 * elflink.c (elf_link_input_bfd): Use bfd_und_section for
1984 section of symbols with unrecognized shndx.
1985
1986 2019-03-15 H.J. Lu <hongjiu.lu@intel.com>
1987
1988 PR ld/24267
1989 * coffgen.c (_bfd_coff_section_already_linked): Skip discarded
1990 section.
1991 * cofflink.c (coff_link_add_symbols): Check for symbols defined
1992 in discarded section.
1993
1994 2019-03-15 Alan Modra <amodra@gmail.com>
1995
1996 PR 24339
1997 * elflink.c (elf_link_add_object_symbols): Bail out on a local
1998 symbol after globals if elf_bad_symtab is not set.
1999
2000 2019-03-15 Alan Modra <amodra@gmail.com>
2001
2002 PR 24337
2003 * elf.c (_bfd_elf_rela_local_sym): Don't segfault on NULL sec.
2004 (_bfd_elf_rel_local_sym): Likewise.
2005
2006 2019-03-15 Alan Modra <amodra@gmail.com>
2007
2008 PR 24336
2009 * elflink.c (elf_link_read_relocs_from_section): Handle fuzzed
2010 object files with sh_size not a multiple of sh_entsize.
2011
2012 2019-03-15 H.J. Lu <hongjiu.lu@intel.com>
2013
2014 PR ld/24338
2015 * elf64-x86-64.c (elf_x86_64_relocate_section): Check for corrupt
2016 input with bad relocation.
2017
2018 22019-03-15 H.J. Lu <hongjiu.lu@intel.com>
2019
2020 * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent.
2021
2022 2019-03-14 Nick Clifton <nickc@redhat.com>
2023
2024 PR 24334
2025 * dwarf2.c (struct dwarf2_debug): Add sec_vma_count field.
2026 (save_section_vma): Initialise field to the number of entries in
2027 the sec_vma table.
2028 (section_vma_same): Check that the number of entries in the
2029 sec_vma table matches the number of sections in the bfd.
2030
2031 2019-03-14 Nick Clifton <nickc@redhat.com>
2032
2033 PR 24333
2034 * elflink.c (_bfd_elf_add_default_symbol): Add a check for a NULL
2035 section owner pointer when adding the default symbol.
2036
2037 2019-03-14 Nick Clifton <nickc@redhat.com>
2038
2039 PR 24332
2040 * elflink.c (elf_link_add_object_symbols): Add new local variable
2041 extversym_end. Initialise it to point to the end of the version
2042 symbol table, if present. Check it when initialising and updating
2043 the ever pointer.
2044
2045 2019-03-13 Sudakshina Das <sudi.das@arm.com>
2046
2047 * elfnn-aarch64.c (PLT_PAC_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): New.
2048 (PLT_BTI_PAC_ENTRY_SIZE, PLT_BTI_PAC_SMALL_ENTRY_SIZE): New.
2049 (setup_plt_values): Account for PAC or PAC and BTI enabled PLTs.
2050 (elfNN_aarch64_size_dynamic_sections): Add checks for PLT_BTI_PAC
2051 and PLT_PAC_PLT.
2052 (elfNN_aarch64_finish_dynamic_sections): Account for PLT_BTI_PAC.
2053 (get_plt_type): Add case for DT_AARCH64_PAC_PLT.
2054 (elfNN_aarch64_plt_sym_val): Add cases for PLT_BTI_PAC and PLT_PAC.
2055
2056 2019-03-13 Sudakshina Das <sudi.das@arm.com>
2057 Szabolcs Nagy <szabolcs.nagy@arm.com>
2058
2059 * bfd-in.h (aarch64_plt_type, aarch64_enable_bti_type): New.
2060 (aarch64_bti_pac_info): New.
2061 (bfd_elf64_aarch64_set_options): Add aarch64_bti_pac_info argument.
2062 (bfd_elf32_aarch64_set_options): Likewise.
2063 * bfd-in2.h: Regenerate
2064 * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): New.
2065 (PLT_BTI_SMALL_ENTRY_SIZE, PLT_BTI_TLSDESC_ENTRY_SIZE): New.
2066 (elfNN_aarch64_small_plt0_bti_entry): New.
2067 (elfNN_aarch64_small_plt_bti_entry): New.
2068 (elfNN_aarch64_tlsdesc_small_plt_bti_entry): New.
2069 (elf_aarch64_obj_tdata): Add no_bti_warn and plt_type fields.
2070 (elf_aarch64_link_hash_table): Add plt0_entry, plt_entry and
2071 tlsdesc_plt_entry_size fields.
2072 (elfNN_aarch64_link_hash_table_create): Initialise the new fields.
2073 (setup_plt_values): New helper function.
2074 (bfd_elfNN_aarch64_set_options): Use new bp_info to set plt sizes and
2075 bti enable type.
2076 (elfNN_aarch64_allocate_dynrelocs): Use new size members instead of
2077 fixed macros.
2078 (elfNN_aarch64_size_dynamic_sections): Likewise and add checks.
2079 (elfNN_aarch64_create_small_pltn_entry): Use new generic pointers
2080 to plt stubs instead of fixed ones and update filling them according
2081 to the need for bti.
2082 (elfNN_aarch64_init_small_plt0_entry): Likewise.
2083 (elfNN_aarch64_finish_dynamic_sections): Likewise.
2084 (get_plt_type, elfNN_aarch64_get_synthetic_symtab): New.
2085 (elfNN_aarch64_plt_sym_val): Update size accordingly.
2086 (elfNN_aarch64_link_setup_gnu_properties): Set up plts if BTI GNU NOTE
2087 is set.
2088 (bfd_elfNN_get_synthetic_symtab): Define.
2089 (elfNN_aarch64_merge_gnu_properties): Give out warning with --force-bti
2090 and mising BTI NOTE SECTION.
2091
2092
2093 2019-03-13 Sudakshina Das <sudi.das@arm.com>
2094
2095 * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
2096 linker created inputs from merge.
2097 * elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
2098 GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
2099 (elfNN_aarch64_link_setup_gnu_properties): New.
2100 (elfNN_aarch64_merge_gnu_properties): New.
2101 (elf_backend_setup_gnu_properties): Define for AArch64.
2102 (elf_backend_merge_gnu_properties): Likewise.
2103 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
2104 (_bfd_aarch64_elf_parse_gnu_properties): Define.
2105 (_bfd_aarch64_elf_merge_gnu_properties): Define.
2106 * elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
2107 (_bfd_aarch64_elf_parse_gnu_properties): Declare.
2108 (_bfd_aarch64_elf_merge_gnu_properties): Declare.
2109 (elf_backend_parse_gnu_properties): Define for AArch64.
2110
2111 2019-03-13 H.J. Lu <hongjiu.lu@intel.com>
2112
2113 PR ld/24322
2114 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Properly
2115 merge GNU_PROPERTY_X86_FEATURE_1_[IBT|SHSTK].
2116
2117 2019-03-12 Alan Modra <amodra@gmail.com>
2118
2119 * coffcode.h (buy_and_read): Delete unnecessary forward decl. Add
2120 nmemb parameter. Use bfd_alloc2.
2121 (coff_slurp_line_table): Use bfd_alloc2. Update buy_and_read calls.
2122 Delete assertion.
2123 (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2.
2124 (coff_slurp_reloc_table): Use bfd_alloc2. Update buy_and_read calls.
2125 * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation
2126 doesn't overflow.
2127 * elf.c (bfd_section_from_shdr): Use bfd_zalloc2. Style fix.
2128 (assign_section_numbers): Style fix.
2129 (swap_out_syms): Use bfd_malloc2.
2130 (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't
2131 overflow.
2132 (_bfd_elf_make_empty_symbol): Style fix.
2133 (elfobj_grok_stapsdt_note_1): Formatting.
2134 * elfcode.h (elf_object_p): Use bfd_alloc2.
2135 (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise.
2136 (elf_slurp_symbol_table): Use bfd_zalloc2.
2137 (elf_slurp_reloc_table): Use bfd_alloc2.
2138 (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2.
2139 * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure
2140 size calculation doesn't overflow.
2141 (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise.
2142 * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
2143 * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version.
2144
2145 2019-03-08 Alan Modra <amodra@gmail.com>
2146
2147 PR 24311
2148 * merge.c (merge_strings): Return secinfo. Don't pad section
2149 to alignment here.
2150 (_bfd_merge_sections): Pad section to alignment here, if input
2151 sections contributing to merged output all pad to alignment.
2152 Formatting.
2153
2154 2019-03-06 Nick Clifton <nickc@redhat.com>
2155
2156 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Check for a NULL symbol
2157 table pointer.
2158 * coffgen.c (coff_find_nearest_line_with_names): Do not call
2159 _bfd_dwarf2_find_symbol_bias if there is no symbol table available.
2160
2161 2019-03-01 Andreas Krebbel <krebbel@linux.ibm.com>
2162
2163 This reverts commit 5a12586d44fa8d5dfc74cbca4f2f36a273a16335.
2164 2019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
2165
2166 PR 20113
2167 * elf32-s390.c (allocate_dynrelocs): Update comment.
2168
2169 2019-02-28 Tamar Christina <tamar.christina@arm.com>
2170
2171 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct CIE parse.
2172
2173 2019-02-28 Nick Clifton <nickc@redhat.com>
2174
2175 PR 24273
2176 * elf.c (bfd_elf_string_from_elf_section): Check for a string
2177 section that is not NUL terminated.
2178
2179 2019-02-27 H.J. Lu <hongjiu.lu@intel.com>
2180
2181 PR ld/24276
2182 * elf64-x86-64.c (elf_x86_64_check_relocs): Skip symbol defined
2183 by linker when checking copy reloc on protected symbol.
2184
2185 2019-02-24 Alan Modra <amodra@gmail.com>
2186
2187 PR 24144
2188 * pdp11.c (set_section_contents): Revert 2015-02-24 change.
2189
2190 2019-02-20 Eric Tsai <erictsai@cadence.com>
2191
2192 * elf32-xtensa.c (is_resolvable_asm_expansion): Scan output
2193 sections between the call site and call destination and adjust
2194 call distance by the largest alignment.
2195
2196 2019-02-20 Alan Hayward <alan.hayward@arm.com>
2197
2198 * elf-bfd.h (elfcore_write_aarch_pauth): Add declaration.
2199 * elf.c (elfcore_grok_aarch_pauth): New function.
2200 (elfcore_grok_note): Check for NT_ARM_PAC_MASK.
2201 (elfcore_write_aarch_pauth): New function.
2202 (elfcore_write_register_note): Check for AArch64 pauth section.
2203
2204 2019-02-20 Alan Modra <amodra@gmail.com>
2205
2206 PR 24225
2207 * elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
2208 return value.
2209
2210 2019-02-20 Michael Roitzsch <reactorcontrol@icloud.com>
2211
2212 * configure.ac (SHARED_LIBADD): Add -liberty -lintl for all
2213 Darwin hosts, not just or1k.
2214 * configure: Regenerate.
2215
2216 2019-02-20 Alan Modra <amodra@gmail.com>
2217
2218 PR 24236
2219 * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
2220 sentinel NUL to string buffer nearer to loop where it is used.
2221 Don't go past sentinel when scanning strings, and don't write
2222 NUL again.
2223 * archive.c (do_slurp_coff_armap): Simplify string handling to
2224 archive64.c style.
2225
2226 2019-02-19 Alan Modra <amodra@gmail.com>
2227
2228 PR 24235
2229 * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
2230 attempting to prevent read past end of section.
2231
2232 2019-02-18 Alan Modra <amodra@gmail.com>
2233
2234 PR 24225
2235 * elf32-nios2.c (nios2_elf32_relocate_section): Use asprintf and
2236 PRIx64 to generate warning messages. Print local sym names too.
2237
2238 2019-02-09 Vineet Gupta <vgupta@synopsys.com>
2239
2240 * elf32-arc (INIT_SYM_STRING): Delete.
2241 (FINI_SYM_STRING): Likewise.
2242 (init_str): Likewise.
2243 (fini_str): Likewise.
2244
2245 2019-02-08 Alan Modra <amodra@gmail.com>
2246
2247 * elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
2248 for bss-plt" warning to make it an error.
2249
2250 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
2251
2252 PR ld/18841
2253 * elf32-sparc.c (elf32_sparc_reloc_type_class): Return
2254 reloc_class_ifunc for ifunc symbols.
2255 * elf64-sparc.c (elf64_sparc_reloc_type_class): Likewise.
2256
2257 2019-02-07 Eric Botcazou <ebotcazou@adacore.com>
2258
2259 * elf32-visium.c (visium_elf_howto_parity_reloc): Minor tweak.
2260 <R_VISIUM_PC16>: Use explicit range test to detect an overflow.
2261
2262 2019-02-07 Nick Clifton <nickc@redhat.com>
2263
2264 * config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
2265 into the definitely obsolete list.
2266
2267 2019-02-05 H.J. Lu <hongjiu.lu@intel.com>
2268
2269 PR ld/24151
2270 * elf64-x86-64.c (elf_x86_64_need_pic): Check
2271 SYMBOL_DEFINED_NON_SHARED_P instead of def_regular.
2272 (elf_x86_64_relocate_section): Move PIC check for PC-relative
2273 relocations to ...
2274 (elf_x86_64_check_relocs): Here.
2275 (elf_x86_64_finish_dynamic_symbol): Use SYMBOL_DEFINED_NON_SHARED_P
2276 to check if a symbol is defined in a non-shared object.
2277 * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): New.
2278
2279 2019-01-21 Sergio Durigan Junior <sergiodj@redhat.com>
2280
2281 * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
2282 of 'labs' (and fix GCC warning).
2283
2284 2019-01-25 Nick Clifton <nickc@redhat.com>
2285
2286 * po/ru.po: Updated Russian translation.
2287
2288 2019-01-23 Nick Clifton <nickc@redhat.com>
2289
2290 * po/fr.po: Updated French translation.
2291
2292 2019-01-21 Nick Clifton <nickc@redhat.com>
2293
2294 * po/pt.po: Updated Portuguese translation.
2295 * po/uk.po: Updated Ukranian translation.
2296
2297 2019-01-21 Yuri Chornoivan <yurchor@ukr.net>
2298
2299 PR 24108
2300 * elf32-nds32.c (nds32_relocate_section): Add space between words
2301 in error message.
2302 * elfnn-riscv.c (riscv_version_mismatch): Fix spelling mistake in
2303 error message.
2304 (riscv_i_or_e_p): Likewise.
2305 (riscv_merge_arch_attr_info): Likewise.
2306
2307 2019-01-19 Nick Clifton <nickc@redhat.com>
2308
2309 * version.m4: Reset to 2.32.51
2310 * configure: Regenerate.
2311 * po/bfd.pot: Regenerate.
2312
2313 2018-06-24 Nick Clifton <nickc@redhat.com>
2314
2315 2.32 branch created.
2316
2317 2019-01-16 Kito Cheng <kito@andestech.com>
2318
2319 * elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
2320 for OBJ_ATTR_PROC.
2321
2322 2019-01-16 Kito Cheng <kito@andestech.com>
2323 Nelson Chu <nelson@andestech.com>
2324
2325 * elfnn-riscv.c (in_subsets): New.
2326 (out_subsets): Likewise.
2327 (merged_subsets): Likewise.
2328 (riscv_std_ext_p): Likewise.
2329 (riscv_non_std_ext_p): Likewise.
2330 (riscv_std_sv_ext_p): Likewise.
2331 (riscv_non_std_sv_ext_p): Likewise.
2332 (riscv_version_mismatch): Likewise.
2333 (riscv_i_or_e_p): Likewise.
2334 (riscv_merge_std_ext): Likewise.
2335 (riscv_merge_non_std_and_sv_ext): Likewise.
2336 (riscv_merge_arch_attr_info): Likewise.
2337 (riscv_merge_attributes): Likewise.
2338 (_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.
2339
2340 * elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
2341 (elf_backend_obj_attrs_vendor): Define.
2342 (elf_backend_obj_attrs_section_type): Likewise.
2343 (elf_backend_obj_attrs_section): Likewise.
2344 (elf_backend_obj_attrs_arg_type): Define as
2345 riscv_elf_obj_attrs_arg_type.
2346 * elfxx-riscv.c (riscv_estimate_digit): New.
2347 (riscv_estimate_arch_strlen1): Likewise.
2348 (riscv_estimate_arch_strlen): Likewise.
2349 (riscv_arch_str1): Likewise.
2350 (riscv_arch_str): Likewise.
2351 * elfxx-riscv.h (riscv_arch_str): Declare.
2352
2353 2019-01-14 John Darrington <john@darrington.wattle.id.au>
2354
2355 * bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
2356 * libbfd.h: regen.
2357 * elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
2358 source field. (md_apply_fix): Apply final fix
2359 to BFD_RELOC_S12Z_OPR.
2360 * reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.
2361
2362 2019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
2363
2364 PR 20113
2365 * elf32-s390.c (allocate_dynrelocs): Update comment.
2366
2367 2019-01-09 Andrew Paprocki <andrew@ishiboo.com>
2368
2369 * warning.m4: Adjust egrep pattern for non-GNU compilers.
2370 * configure: Regenerate.
2371
2372 2019-01-08 Alan Modra <amodra@gmail.com>
2373
2374 PR 23699
2375 PR 24065
2376 * ihex.c (ihex_write_object_contents): Properly check 32-bit
2377 address range.
2378
2379 2019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
2380
2381 * bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
2382 * bfd/bfd-in2.h: Regenerate.
2383 * bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
2384 * bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.
2385
2386 2019-01-04 Lifang Xia <lifang_xia@c-sky.com>
2387
2388 * config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
2389 default target, little endian target is more suitable.
2390
2391 2019-01-04 Alan Modra <amodra@gmail.com>
2392
2393 PR 24061
2394 PR 21786
2395 * coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
2396 adjust all callers.
2397 (EQ_VALUE_IN_FIELD): Likewise.
2398 * coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.
2399
2400 2019-01-01 Alan Modra <amodra@gmail.com>
2401
2402 Update year range in copyright notice of all files.
2403
2404 For older changes see ChangeLog-2018
2405 \f
2406 Copyright (C) 2019 Free Software Foundation, Inc.
2407
2408 Copying and distribution of this file, with or without modification,
2409 are permitted in any medium without royalty provided the copyright
2410 notice and this notice are preserved.
2411
2412 Local Variables:
2413 mode: change-log
2414 left-margin: 8
2415 fill-column: 74
2416 version-control: never
2417 End:
This page took 0.078192 seconds and 4 git commands to generate.