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