]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
tic6x bfd.h tidy
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
79c2ce54
AM
12019-09-23 Alan Modra <amodra@gmail.com>
2
3 * bfd-in.h: Move tic6x function declaration..
4 * elf32-tic6x.h: ..to here.
5 * bfd-in2.h: Regenerate.
6
a8bfaadb
AM
72019-09-23 Alan Modra <amodra@gmail.com>
8
9 * bfd-in.h: Move aarch64 declarations and defines..
10 * cpu-aarch64.h: ..to here, new file..
11 * elfxx-aarch64.h: ..and here.
12 * cpu-aarch64.c: Include cpu-aarch64.h.
13 * elfnn-aarch64.c: Likewise.
14 * bfd-in2.h: Regenerate.
15
c348479d
AM
162019-09-23 Alan Modra <amodra@gmail.com>
17
18 * bfd-in.h: Delete ticoff function declarations.
19 * coff-tic54x.c (bfd_ticoff_set_section_load_page),
20 (bfd_ticoff_get_section_load_page): Make static.
21 * bfd-in2.h: Regenerate.
22
ca437b1b
AM
232019-09-23 Alan Modra <amodra@gmail.com>
24
25 * bfd-in.h: Move h8300 function declaration to..
26 * cpu-h8300.h: ..here, new file.
27 * cpu-h8300.c: Include cpu-h8300.h.
28 * elf32-h8300.c: Likewise.
29 * bfd-in2.h: Regenerate.
30
3352ae99
AM
312019-09-23 Alan Modra <amodra@gmail.com>
32
33 * bfd-in.h: Move ia64 function declarations..
34 * elfxx-ia64.h: ..to here.
35 * bfd-in2.h: Regenerate.
36
d48d68b6
AM
372019-09-23 Alan Modra <amodra@gmail.com>
38
39 * bfd-in.h: Move v850 function declarations..
40 * elf32-v850.h: ..to here, new file.
41 * elf32-v850.c: Include elf32-v850.h.
42 * bfd-in2.h: Regenerate.
43
7beeaeb8
AM
442019-09-23 Alan Modra <amodra@gmail.com>
45
46 * bfd-in.h: Move mips function declaration to..
47 * elfxx-mips.h: ..here.
48 * bfd-in2.h: Regenerate.
49
6e67e6b0
AM
502019-09-23 Alan Modra <amodra@gmail.com>
51
52 * bfd-in.h: Move csky function declarations to..
53 * elf32-csky.h: ..here, new file.
54 * elf32-csky.c: Include elf32-csky.h.
55 * bfd-in2.h: Regenerate.
56
9d1da81b
JW
572019-09-20 Nelson Chu <nelson.chu@sifive.com>
58
59 * elfnn-riscv.c (riscv_pcgp_hi_reloc): Add new field undefined_weak.
60 (riscv_record_pcgp_hi_reloc): New parameter undefined_weak.
61 Set undefined_weak field from it.
62 (relax_func_t): New parameter undefined_weak.
63 (_bfd_riscv_relax_call): New ignored parameter undefined_weak.
64 (_bfd_riscv_relax_tls_le): Likewise.
65 (_bfd_riscv_relax_align): Likewise.
66 (_bfd_riscv_relax_delete): Likewise.
67 (_bfd_riscv_relax_lui): New parameter undefined_weak. If true,
68 allow relaxing. For LO12* relocs, set rs1 to x0 when undefined_weak.
69 (_bfd_riscv_relax_pc): New parameter undefined_weak. For LO12* relocs,
70 set undefined_weak from hi_reloc. If true, allow relaxing. For LO12*
71 relocs, set rs1 to x0 when undefined_weak and change to non-pcrel
72 reloc.
73 (_bfd_riscv_relax_section): New local undefined_weak. Set for
74 undef weak relocs that can be relaxed. Pass to relax_func call.
75
a48931cc
AM
762019-09-20 Alan Modra <amodra@gmail.com>
77
78 * bfd-in.h (bfd_section_name, bfd_section_size, bfd_section_vma),
79 (bfd_section_lma, bfd_section_alignment, bfd_section_flags),
80 (bfd_section_userdata, bfd_is_com_section, discarded_section),
81 (bfd_get_section_limit_octets, bfd_get_section_limit): Delete macros.
82 * bfd.c (bfd_get_section_limit_octets, bfd_get_section_limit),
83 (bfd_section_list_remove, bfd_section_list_append),
84 (bfd_section_list_prepend, bfd_section_list_insert_after),
85 (bfd_section_list_insert_before, bfd_section_removed_from_list):
86 New inline functions.
87 * section.c (bfd_is_und_section, bfd_is_abs_section),
88 (bfd_is_ind_section, bfd_is_const_section, bfd_section_list_remove),
89 (bfd_section_list_append, bfd_section_list_prepend),
90 (bfd_section_list_insert_after, bfd_section_list_insert_before),
91 (bfd_section_removed_from_list): Delete macros.
92 (bfd_section_name, bfd_section_size, bfd_section_vma),
93 (bfd_section_lma, bfd_section_alignment, bfd_section_flags),
94 (bfd_section_userdata, bfd_is_com_section, bfd_is_und_section),
95 (bfd_is_abs_section, bfd_is_ind_section, bfd_is_const_section),
96 (discarded_section): New inline functions.
97 * bfd-in2.h: Regenerate.
98
af30dc12
AM
992019-09-20 Alan Modra <amodra@gmail.com>
100
101 * bfd-in.h (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
102 (bfd_asymbol_bfd, bfd_asymbol_flavour, bfd_set_asymbol_name): Delete.
103 * bfd.c (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
104 (bfd_asymbol_bfd, bfd_set_asymbol_name): New inline functions.
105 * targets.c (bfd_asymbol_flavour): Likewise.
106 * bfd-in2.h: Regenerate.
107
00f93c44
AM
1082019-09-20 Alan Modra <amodra@gmail.com>
109
110 * archive.c (bfd_generic_archive_p): Use bfd_set_thin_archive.
111 * bfd-in.h (bfd_get_filename, bfd_get_cacheable, bfd_get_format),
112 (bfd_get_target, bfd_get_flavour, bfd_family_coff, bfd_big_endian),
113 (bfd_little_endian, bfd_header_big_endian, bfd_header_little_endian),
114 (bfd_get_file_flags, bfd_applicable_file_flags),
115 (bfd_applicable_section_flags, bfd_has_map, bfd_is_thin_archive),
116 (bfd_valid_reloc_types, bfd_usrdata, bfd_get_start_address),
117 (bfd_get_symcount, bfd_get_outsymbols, bfd_count_sections),
118 (bfd_get_dynamic_symcount, bfd_get_symbol_leading_char): Delete.
119 * bfd/bfd.c (bfd_get_filename, bfd_get_cacheable, bfd_get_format),
120 (bfd_get_file_flags, bfd_get_start_address, bfd_get_symcount),
121 (bfd_get_dynamic_symcount, bfd_get_outsymbols, bfd_count_sections),
122 (bfd_has_map, bfd_is_thin_archive, bfd_set_thin_archive),
123 (bfd_usrdata, bfd_set_usrdata): New inline functions.
124 * targets.c (bfd_get_target, bfd_get_flavour),
125 (bfd_applicable_file_flags, bfd_family_coff, bfd_big_endian),
126 (bfd_little_endian, bfd_header_big_endian),
127 (bfd_header_little_endian, bfd_applicable_section_flags),
128 (bfd_get_symbol_leading_char): New inline functions.
129 * bfd-in2.h: Regenerate.
130
e59a1001
AM
1312019-09-20 Alan Modra <amodra@gmail.com>
132
133 * elf64-ppc.c (ppc64_glibc_dynamic_reloc): New function.
134 (ppc64_elf_relocate_section): Warn if emitting unsupported dynamic
135 relocations.
136
fd361982
AM
1372019-09-18 Alan Modra <amodra@gmail.com>
138
139 * bfd-in.h (bfd_get_section_name, bfd_get_section_vma),
140 (bfd_get_section_lma, bfd_get_section_alignment),
141 (bfd_get_section_size, bfd_get_section_flags),
142 (bfd_get_section_userdata): Delete.
143 (bfd_section_name, bfd_section_size, bfd_section_vma),
144 (bfd_section_lma, bfd_section_alignment): Lose bfd parameter.
145 (bfd_section_flags, bfd_section_userdata): New.
146 (bfd_is_com_section): Rename parameter.
147 * section.c (bfd_set_section_userdata, bfd_set_section_vma),
148 (bfd_set_section_alignment, bfd_set_section_flags, bfd_rename_section),
149 (bfd_set_section_size): Delete bfd parameter, rename section parameter.
150 (bfd_set_section_lma): New.
151 * bfd-in2.h: Regenerate.
152 * mach-o.c (bfd_mach_o_init_section_from_mach_o): Delete bfd param,
153 update callers.
154 * aoutx.h, * bfd.c, * coff-alpha.c, * coff-arm.c, * coff-mips.c,
155 * coff64-rs6000.c, * coffcode.h, * coffgen.c, * cofflink.c,
156 * compress.c, * ecoff.c, * elf-eh-frame.c, * elf-hppa.h,
157 * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-properties.c,
158 * elf-s390-common.c, * elf-vxworks.c, * elf.c, * elf32-arc.c,
159 * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c, * elf32-cr16.c,
160 * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c, * elf32-csky.c,
161 * elf32-d10v.c, * elf32-epiphany.c, * elf32-fr30.c, * elf32-frv.c,
162 * elf32-ft32.c, * elf32-h8300.c, * elf32-hppa.c, * elf32-i386.c,
163 * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c,
164 * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c,
165 * elf32-mep.c, * elf32-metag.c, * elf32-microblaze.c,
166 * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c,
167 * elf32-nios2.c, * elf32-or1k.c, * elf32-ppc.c, * elf32-pru.c,
168 * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c,
169 * elf32-score7.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c,
170 * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c, * elf32-visium.c,
171 * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c,
172 * elf64-bpf.c, * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c,
173 * elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c,
174 * elflink.c, * elfnn-aarch64.c, * elfnn-ia64.c, * elfnn-riscv.c,
175 * elfxx-aarch64.c, * elfxx-mips.c, * elfxx-sparc.c,
176 * elfxx-tilegx.c, * elfxx-x86.c, * i386msdos.c, * linker.c,
177 * mach-o.c, * mmo.c, * opncls.c, * pdp11.c, * pei-x86_64.c,
178 * peicode.h, * reloc.c, * section.c, * syms.c, * vms-alpha.c,
179 * xcofflink.c: Update throughout for bfd section macro and function
180 changes.
181
e6f7f6d1
AM
1822019-09-18 Alan Modra <amodra@gmail.com>
183
184 * bfd-in.h (bfd_asymbol_section): Rename from bfd_get_section.
185 (bfd_get_output_section): Delete.
186 (bfd_asymbol_base): Delete.
187 (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
188 (bfd_asymbol_bfd, bfd_asymbol_flavour): Tidy.
189 (bfd_set_asymbol_name): New macro.
190 * bfd-in2.h: Regenerate.
191 * aout-cris.c: Update throughout to use bfd_asymbol_section.
192 * aoutx.h: Likewise.
193 * cofflink.c: Likewise.
194 * dwarf2.c: Likewise.
195 * ecoff.c: Likewise.
196 * elf.c: Likewise.
197 * elf32-arm.c: Likewise.
198 * elf32-mips.c: Likewise.
199 * elf32-score.c: Likewise.
200 * elf32-score7.c: Likewise.
201 * elfn32-mips.c: Likewise.
202 * elfnn-aarch64.c: Likewise.
203 * elfxx-mips.c: Likewise.
204 * linker.c: Likewise.
205 * pdp11.c: Likewise.
206 * elf64-mmix.c (mmix_elf_reloc): Part expand bfd_get_output_section.
207
e0b2a78c
SM
2082019-09-18 Simon Marchi <simon.marchi@polymtl.ca>
209
210 * Makefile.in: Re-generate.
211 * configure: Re-generate.
212 * doc/Makefile.in: Re-generate.
213
ed48ec2e
AM
2142019-09-18 Alan Modra <amodra@gmail.com>
215
216 * aoutx.h (slurp_symbol_table): Don't set symcount using bfd_get
217 macros.
218 * pdp11.c (slurp_symbol_table): Likewise.
219 * som.c (som_slurp_symbol_table): Likewise.
220 * coff-ppc.c (ppc_bfd_coff_final_link): Likewise.
221 * coffcode.h (coff_slurp_symbol_table): Likewise.
222 * cofflink.c (_bfd_coff_final_link): Likewise.
223 * ecoff.c (ecoff_slurp_symbolic_header): Likewise.
224 (_bfd_ecoff_slurp_symbolic_info): Likewise.
225 (_bfd_ecoff_slurp_symbol_table): Likewise.
226 (_bfd_ecoff_bfd_final_link): Likewise.
227 * elf.c (_bfd_elf_canonicalize_symtab): Likewise.
228 * elflink.c (elf_link_output_symstrtab): Likewise.
229 (bfd_elf_final_link): Likewise.
230 * peicode.h (pe_ILF_build_a_bfd): Likewise.
231 * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
232 * aoutx.h (some_aout_object_p, slurp_symbol_table): Don't set
233 start_address or symcount using bfd_get macros.
234 * coffgen.c (coff_real_object_p): Likewise.
235 * pdp11.c (some_aout_object_p, slurp_symbol_table): Likewise.
236 * som.c (som_object_setup, som_slurp_symbol_table): Likewise.
237 * elfcore.h (elf_core_file_p): Don't set start_address using
238 bfd_get macro.
239 * elf.c (_bfd_elf_canonicalize_dynamic_symtab): Don't set dynsymcount
240 using bfd_get macro.
241 * bfd.c (bfd_set_file_flags): Don't set flags using bfd_get macro.
242 * linker.c (bfd_generic_link_read_symbols): Don't set outsymbols
243 or symcount using bfd_get macros.
244 (_bfd_generic_final_link, generic_add_output_symbol): Likewise.
245 * syms.c (bfd_set_symtab): Likewise.
246 * vms-alpha.c (alpha_vms_bfd_final_link): Likewise.
247 * archive.c (do_slurp_bsd_armap): Don't set has_armap using
248 bfd_has_map macro.
249 (do_slurp_coff_armap, bfd_slurp_armap): Likewise.
250 * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
251 * coff-rs6000.c (_bfd_xcoff_slurp_armap): Likewise.
252 * coff64-rs6000.c (xcoff64_slurp_armap): Likewise.
253 * ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
254 * som.c (som_slurp_armap): Likewise.
255
01c2b261
AM
2562019-09-18 Alan Modra <amodra@gmail.com>
257
258 * archures.c (bfd_get_arch): Make param const.
259 (bfd_get_mach, bfd_arch_bits_per_byte): Likewise.
260 (bfd_arch_bits_per_address, bfd_octets_per_byte): Likewise.
261 * bfd-in2.h: Regenerate.
262
1d38e9d1
AM
2632019-09-18 Alan Modra <amodra@gmail.com>
264
265 * bfd-in.h (carsym.name): Make const.
266 * reloc.c (struct reloc_howto_struct.name): Likewise.
267 * targets.c (bfd_target.name): Likewise.!
268 * bfd.c (bfd_get_sign_extend_vma): Make variable const.
269 * som.c (som_bfd_fill_in_ar_symbols): Use an intermediary variable
270 when setting carsym.name.
271 * bfd-in2.h: Regenerate.
272
90d92a63
AM
2732019-09-18 Alan Modra <amodra@gmail.com>
274
275 * mach-o.c (bfd_mach_o_fat_member_init): Likewise. Replace
276 xstrdup and xmalloc with bfd_strdup and bfd_malloc. Return an
277 error status. Adjust calls.
278 * vms-lib.c (_bfd_vms_lib_get_module): Test mhd->id earlier.
279 Close bfd on failure. Replace xstrdup/bfd_alloc use with
280 bfd_malloc. Use bfd_set_filename.
281
1bdd8fac
AM
2822019-09-18 Alan Modra <amodra@gmail.com>
283
284 * elf64-ppc.c (must_be_dyn_reloc): Return 0 for TOC16 relocs.
285 (ppc64_elf_check_relocs): Support dynamic/copy relocs for TOC16.
286 (ppc64_elf_adjust_dynamic_symbol): Don't keep dynamic reloc when
287 needs_copy even if all relocs are in rw sections.
288 (dec_dynrel_count): Handle TOC16 relocs.
289 (ppc64_elf_relocate_section): Support dynamic relocs for TOC16.
290 (ppc64_elf_finish_dynamic_symbol): Adjust to handle needs_copy
291 semantic change.
292
bb695960
PB
2932019-09-16 Phil Blundell <pb@pbcl.net>
294
295 * version.m4: Set version to 2.33.50.
296 * Makefile.in, configure, doc/Makefile.in: Regenerated.
297
64b2d4a0
TT
2982019-09-11 Tom Tromey <tom@tromey.com>
299
300 * opncls.c (bfd_set_filename): New function.
301 * bfd-in2.h: Regenerate.
302
cb7f4b29
AM
3032019-09-11 Alan Modra <amodra@gmail.com>
304
305 * targets.c (struct bfd_target): Add _bfd_group_name.
306 (BFD_JUMP_TABLE): Likewise.
307 * coffgen.c (bfd_coff_group_name): New function.
308 * elf.c (bfd_elf_group_name): New function.
309 * linker.c (_bfd_nolink_bfd_group_name): New function.
310 * section.c (bfd_generic_group_name): New function.
311 * elf-bfd.h (bfd_elf_group_name): Declare.
312 * libbfd-in.h (_bfd_nolink_bfd_group_name): Declare.
313 * libcoff-in.h (bfd_coff_group_name): Declare.
314 * aout-target.h (MY_bfd_group_name): Define.
315 * aout-tic30.c (MY_bfd_group_name): Define.
316 * bfd.c (bfd_group_name): Define.
317 * binary.c (binary_bfd_group_name): Define.
318 * coff-alpha.c (_bfd_ecoff_bfd_group_name): Define.
319 * coff-mips.c (_bfd_ecoff_bfd_group_name): Define.
320 * coff-rs6000.c (_bfd_xcoff_bfd_group_name): Define.
321 * coffcode.h (coff_bfd_group_name): Define.
322 * elfxx-target.h (bfd_elfNN_bfd_group_name): Define.
323 * i386msdos.c (msdos_bfd_group_name): Define.
324 * ihex.c (ihex_bfd_group_name): Define.
325 * mach-o-target.c (bfd_mach_o_bfd_group_name): Define.
326 * mmo.c (mmo_bfd_group_name): Define.
327 * pef.c (bfd_pef_bfd_group_name): Define.
328 * plugin.c (bfd_plugin_bfd_group_name): Define.
329 * ppcboot.c (ppcboot_bfd_group_name): Define.
330 * som.c (som_bfd_group_name): Define.
331 * srec.c (srec_bfd_group_name): Define.
332 * tekhex.c (tekhex_bfd_group_name): Define.
333 * verilog.c (verilog_bfd_group_name): Define.
334 * vms-alpha.c (vms_bfd_group_name, alpha_vms_bfd_group_name): Define.
335 * xsym.c (bfd_sym_bfd_group_name): Define.
336 * coff64-rs6000.c (rs6000_xcoff64_vec): Init new field.
337 (rs6000_xcoff64_aix_vec): Likewise.
338 * bfd-in2.h: Regenerate.
339 * libbfd.h: Regenerate.
340 * libcoff.h: Regenerate.
341
aebcfb76
NC
3422019-09-10 Nick Clifton <nickc@redhat.com>
343
344 PR 24907
345 * archures.c (bfd_arch_info_type): Add max_reloc_offset_into_insn
346 field.
347 (bfd_default_arch_struct): Initialise the new field.
348 * bfd-in2.h: Regenerate.
349 * cpu-aarch64.c: Initialise the new field.
350 * cpu-alpha.c: Likewise.
351 * cpu-arc.c: Likewise.
352 * cpu-arm.c: Likewise.
353 * cpu-avr.c: Likewise.
354 * cpu-bfin.c: Likewise.
355 * cpu-bpf.c: Likewise.
356 * cpu-cr16.c: Likewise.
357 * cpu-cr16c.c: Likewise.
358 * cpu-cris.c: Likewise.
359 * cpu-crx.c: Likewise.
360 * cpu-csky.c: Likewise.
361 * cpu-d10v.c: Likewise.
362 * cpu-d30v.c: Likewise.
363 * cpu-dlx.c: Likewise.
364 * cpu-epiphany.c: Likewise.
365 * cpu-fr30.c: Likewise.
366 * cpu-frv.c: Likewise.
367 * cpu-ft32.c: Likewise.
368 * cpu-h8300.c: Likewise.
369 * cpu-hppa.c: Likewise.
370 * cpu-i386.c: Likewise.
371 * cpu-ia64.c: Likewise.
372 * cpu-iamcu.c: Likewise.
373 * cpu-ip2k.c: Likewise.
374 * cpu-iq2000.c: Likewise.
375 * cpu-k1om.c: Likewise.
376 * cpu-l1om.c: Likewise.
377 * cpu-lm32.c: Likewise.
378 * cpu-m10200.c: Likewise.
379 * cpu-m10300.c: Likewise.
380 * cpu-m32c.c: Likewise.
381 * cpu-m32r.c: Likewise.
382 * cpu-m68hc11.c: Likewise.
383 * cpu-m68hc12.c: Likewise.
384 * cpu-m68k.c: Likewise.
385 * cpu-m9s12x.c: Likewise.
386 * cpu-m9s12xg.c: Likewise.
387 * cpu-mcore.c: Likewise.
388 * cpu-mep.c: Likewise.
389 * cpu-metag.c: Likewise.
390 * cpu-microblaze.c: Likewise.
391 * cpu-mips.c: Likewise.
392 * cpu-mmix.c: Likewise.
393 * cpu-moxie.c: Likewise.
394 * cpu-msp430.c: Likewise.
395 * cpu-mt.c: Likewise.
396 * cpu-nds32.c: Likewise.
397 * cpu-nfp.c: Likewise.
398 * cpu-nios2.c: Likewise.
399 * cpu-ns32k.c: Likewise.
400 * cpu-or1k.c: Likewise.
401 * cpu-pdp11.c: Likewise.
402 * cpu-pj.c: Likewise.
403 * cpu-plugin.c: Likewise.
404 * cpu-powerpc.c: Likewise.
405 * cpu-pru.c: Likewise.
406 * cpu-riscv.c: Likewise.
407 * cpu-rl78.c: Likewise.
408 * cpu-rs6000.c: Likewise.
409 * cpu-rx.c: Likewise.
410 * cpu-s12z.c: Likewise.
411 * cpu-s390.c: Likewise.
412 * cpu-score.c: Likewise.
413 * cpu-sh.c: Likewise.
414 * cpu-sparc.c: Likewise.
415 * cpu-spu.c: Likewise.
416 * cpu-tic30.c: Likewise.
417 * cpu-tic4x.c: Likewise.
418 * cpu-tic54x.c: Likewise.
419 * cpu-tic6x.c: Likewise.
420 * cpu-tic80.c: Likewise.
421 * cpu-tilegx.c: Likewise.
422 * cpu-tilepro.c: Likewise.
423 * cpu-v850.c: Likewise.
424 * cpu-v850_rh850.c: Likewise.
425 * cpu-vax.c: Likewise.
426 * cpu-visium.c: Likewise.
427 * cpu-wasm32.c: Likewise.
428 * cpu-xc16x.c: Likewise.
429 * cpu-xgate.c: Likewise.
430 * cpu-xstormy16.c: Likewise.
431 * cpu-xtensa.c: Likewise.
432 * cpu-z80.c: Likewise.
433 * cpu-z8k.c: Likewise.
434
60391a25
PB
4352019-09-09 Phil Blundell <pb@pbcl.net>
436
437 binutils 2.33 branch created.
438
b16c44de
AM
4392019-09-06 Alan Modra <amodra@gmail.com>
440
441 * aout-target.h (object_p): Formatting.
442 * bfd-in.h (bfd_get_filename): Don't cast to char*.
443 * corefile.c (generic_core_file_matches_executable_p): Constify
444 variables and remove cast.
445 * bfd-in2.h: Regenerate.
446
133a1f60
AM
4472019-09-05 Alan Modra <amodra@gmail.com>
448
449 * elf64-ppc.c (ppc64_elf_check_relocs): Interpret an addend in
450 GOT_PCREL and PLT_PCREL relocs as affecting the value stored
451 in the GOT/PLT entry rather than affecting the offset to that
452 GOI/PLT entry.
453 (ppc64_elf_edit_toc, ppc64_elf_relocate_section): Likewise.
454
77486630
AM
4552019-09-05 Alan Modra <amodra@gmail.com>
456
457 * elf64-ppc.c (xlate_pcrel_opt): Handle prefix loads and stores
458 in second instruction.
459 (ppc64_elf_relocate_section): Likewise.
460
89bdc77e
AM
4612019-09-05 Alan Modra <amodra@gmail.com>
462
463 PR 24955
464 * libbfd-in.h (bfd_strdup): New inline function.
465 * archive.c (_bfd_get_elt_at_filepos): Use bfd_strdup. Close
466 bfd on error.
467 * elfcode.h (_bfd_elf_bfd_from_remote_memory): Use bfd_strdup.
468 * opncls.c (bfd_fopen): Use bfd_strdup. Close fd and stream
469 on error.
470 (bfd_openstreamr): Use bfd_strdup.
471 (bfd_openr_iovec, bfd_openw, bfd_create): Likewise.
472 * plugin.c (try_load_plugin): Use bfd_malloc.
473 * libbfd.h: Regenerate.
474
22b31fea
AM
4752019-09-02 Alan Modra <amodra@gmail.com>
476
477 PR 11983
478 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Free debug_filename
479 on success. Tidy.
217d2eaa
AM
480 (read_alt_indirect_string): Likewise.
481 (read_alt_indirect_ref): Likewise.
22b31fea 482
3e7bd7f2
JW
4832019-08-31 Jim Wilson <jimw@sifive.com>
484
485 PR 23825
486 * elfnn-riscv.c (riscv_elf_create_dynamic_sections): Add SEC_LOAD,
487 SEC_DATA, and SEC_HAS_CONTENTS to .tdata.dyn section.
488
fdd50269
JW
4892019-08-30 Jim Wilson <jimw@sifive.com>
490
491 * elfnn-riscv.c (riscv_elf_relocate_section): For unresolvable reloc
492 error, call bfd_set_error, set ret to FALSE, and goto out label.
493
6744bcad
L
4942019-08-30 H.J. Lu <hongjiu.lu@intel.com>
495
496 PR ld/24951
497 * archive.c (_bfd_get_elt_at_filepos): Copy BFD_COMPRESS,
498 BFD_DECOMPRESS and BFD_COMPRESS_GABI flags for thin archive.
499
c0d9f31d
AM
5002019-08-29 Alan Modra <amodra@gmail.com>
501
502 PR 24697
503 * elf32-ppc.c (ppc_elf_check_relocs): Call bad_shared_reloc
504 when !bfd_link_executable for R_PPC_EMB_SDA2I16 and
505 R_PPC_EMB_SDA2REL. Don't call bad_shared_reloc for any other
506 reloc.
507
dd9b12c2
AM
5082019-08-29 Alan Modra <amodra@gmail.com>
509
510 * elf64-ppc.c (xlate_pcrel_opt): Add poff parameter. Allow offset
511 on second insn, return it in poff.
512 (ppc64_elf_relocate_section): Add offset to paddi addend for
513 PCREL_OPT.
514
507685a3
JW
5152019-08-28 Jim Wilson <jimw@sifive.com>
516
517 * elfnn-riscv.c (_bfd_riscv_relax_lui): Add check to exclude abs
518 section when setting max_alignment. Update comment.
519 (_bfd_riscv_relax_pc): Likewise.
520
83cf0d04
AM
5212019-08-29 Alan Modra <amodra@gmail.com>
522
523 PR 24891
524 * bfd.c (struct bfd): Add no_element_cache.
525 * archive.c (_bfd_get_elt_at_filepos): Don't add element to
526 archive cache when no_element_cache.
527 (bfd_generic_archive_p): Set no_element_cache when opening first
528 element to check format. Close first element too.
529 (do_slurp_bsd_armap): Don't zero ardata->cache here.
530 * bfd-in2.h: Regenerate.
531
6d5554a6
AM
5322019-08-24 Alan Modra <amodra@gmail.com>
533
534 * elf64-ppc.c (ppc64_elf_edit_toc): Exclude undefined weak
535 symbols from GOT optimisation.
536
09f7b0de
SH
5372019-08-23 Stafford Horne <shorne@gmail.com>
538
539 * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Use correct value for
540 PLT GOT entries.
541
a7ba3896
NC
5422019-08-23 Nick Clifton <nickc@redhat.com>
543
544 PR 24456
545 * elf.c (bfd_section_from_shdr): Issue an informative warning
546 message and continue processing other sections after encountering
547 a reloc section for a section which already has other relocs
548 associated with it.
549
2600d80c
AM
5502019-08-23 Alan Modra <amodra@gmail.com>
551
552 PR 24933
553 * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Don't exit
554 on error without freeing plts[] contents.
555
0535e5d7
DZ
5562019-08-22 Dennis Zhang <dennis.zhang@arm.com>
557
558 * cpu-arm.c: New entries for Cortex-M35P, Cortex-A77, Cortex-A76AE.
559
03da31c6
NC
5602019-08-22 Nick Clifton <nickc@redhat.com>
561
562 PR 24922
563 * pei-x86_64.c (pex64_xdata_print_uwd_codes): Add checks before
564 reading data from extra records.
565
652afeef
TC
5662019-08-22 Tamar Christina <tamar.christina@arm.com>
567
568 PR ld/24601
569 * elfnn-aarch64.c (aarch64_relocate): Handle weak TLS and undefined TLS.
570 Also Pass input_bfd to _bfd_aarch64_elf_resolve_relocation.
571 * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Use it.
572 * elfxx-aarch64.h (_bfd_aarch64_elf_resolve_relocation): Emit warning
573 for weak TLS.
574
baf46cd7
AM
5752019-08-22 Alan Modra <amodra@gmail.com>
576
577 * elf32-arm.c (cmse_scan): Don't use ARM_GET_SYM_CMSE_SPCL,
578 instead recognize CMSE_PREFIX in symbol name.
579 (elf32_arm_gc_mark_extra_sections): Likewise.
580 (elf32_arm_filter_cmse_symbols): Don't test ARM_GET_SYM_CMSE_SPCL.
581 (elf32_arm_swap_symbol_in): Don't invoke ARM_SET_SYM_CMSE_SPCL.
582
546053ac
DZ
5832019-08-20 Dennis Zhang <dennis.zhang@arm.com>
584
585 * cpu-aarch64.c: New entries for Cortex-A34, Cortex-A65,
586 Cortex-A77, cortex-A65AE, and Cortex-A76AE.
587
b4e87f2c
TC
5882019-08-20 Tamar Christina <tamar.christina@arm.com>
589
590 * elf32-arm.c (elf32_thumb2_plt_entry, elf32_arm_plt_thumb_stub,
591 elf32_arm_stub_long_branch_v4t_thumb_thumb,
592 elf32_arm_stub_long_branch_v4t_thumb_arm,
593 elf32_arm_stub_short_branch_v4t_thumb_arm,
594 elf32_arm_stub_long_branch_v4t_thumb_arm_pic,
595 elf32_arm_stub_long_branch_v4t_thumb_thumb_pic,
596 elf32_arm_stub_long_branch_v4t_thumb_tls_pic): Change nop to branch to
597 previous instruction.
598
3eb185c9
TT
5992019-08-19 Tom Tromey <tromey@adacore.com>
600
601 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Create hash table
602 holding symbols.
603
903b777d
AM
6042019-08-19 Alan Modra <amodra@gmail.com>
605
606 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename has_gotrel
607 to has_optrel.
608 (struct _ppc64_elf_section_data): Likewise.
609 (ppc64_elf_check_relocs): Set has_optrel for more relocs.
610 (ppc64_elf_edit_toc): Do ha/lo insn checks in GOT loop rather
611 than TOC loop. Check PLT16 insns too.
612
81e8046d
L
6132019-08-16 H.J. Lu <hongjiu.lu@intel.com>
614
615 PR ld/24905
616 * elf64-x86-64.c (elf_x86_64_check_relocs): Move PIC check for
617 PC-relative relocations back to ...
618 (elf_x86_64_relocate_section): Here.
619
b4c555cf
ML
6202019-08-16 Martin Liska <mliska@suse.cz>
621
622 PR ld/24912
623 * elflink.c: Report error only for not relocatable.
624 * linker.c (_bfd_generic_link_add_one_symbol): Do not handle
625 here lto_slim_object as it's handled in caller.
626
63f6e94f
AM
6272019-08-16 Alan Modra <amodra@gmail.com>
628
629 * elf32-ppc.c (ppc_elf_relocate_section): Optimize unaligned relocs.
630
080a4883
JW
6312019-08-15 Jim Wilson <jimw@sifive.com>
632
633 * elfnn-riscv.c (perform_relocation) <R_RISCV_RVC_LUI>: If
634 RISCV_CONST_HIGH_PART (value) is zero, then convert c.lui instruction
635 to c.li instruction, and use ENCODE_RVC_IMM to set value.
636
05192282
TT
6372019-08-15 Tom Tromey <tromey@adacore.com>
638
639 * dwarf2.c (scan_unit_for_symbols): Check for end of CU, not end
640 of section.
641
dfc19da6
AM
6422019-08-14 Alan Modra <amodra@gmail.com>
643
644 PR 24623
645 * dwarf2.c (stash_comp_unit): New function, extracted from..
646 (_bfd_dwarf2_find_nearest_line): ..here.
647 (find_abstract_instance): Parse comp units and decode line info
648 as needed.
649
c327a44f
AM
6502019-08-14 Alan Modra <amodra@gmail.com>
651
652 * dwarf2.c (comp_unit_maybe_decode_line_info): Declare.
653 (comp_unit_find_nearest_line): Use it here..
654 (_bfd_dwarf2_find_symbol_bias): ..and here.
655
9defd221
AM
6562019-08-14 Alan Modra <amodra@gmail.com>
657
658 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter.
659 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype.
660 * coffgen.c (coff_find_nearest_line_with_names): Adjust
661 _bfd_dwarf2_find_nearest_line calls.
662 * elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise.
663 * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
664 * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
665 * elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise.
666 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
667 * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
668 * libbfd.h: Regenerate.
669
f16a9783
MS
6702019-08-09 Mihailo Stojanovic <mihailo.stojanovic@rt-rk.com>
671
672 * elf-bfd.h (struct elf_backend_data): New members.
673 * elflink.c (_bfd_elf_link_create_dynamic_sections): Create
674 .gnu.hash section if necessary.
675 (struct collect_gnu_hash_codes): New member.
676 (elf_gnu_hash_process_symidx): New function name.
677 (elf_renumber_gnu_hash_syms): Ignore local and undefined
678 symbols. Record xlat location for every symbol which should have
679 a .MIPS.xhash entry.
680 (bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to
681 dynamic section if necessary.
682 (GNU_HASH_SECTION_NAME): New define.
683 (bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section.
684 Update the section size info.
685 * elfxx-mips.c (struct mips_elf_hash_sort_data): New members.
686 (struct mips_elf_link_hash_entry): New member.
687 (mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation
688 table location.
689 (mips_elf_sort_hash_table): Initialize the pointer to the
690 .MIPS.xhash section.
691 (mips_elf_sort_hash_table_f): Populate the .MIPS.xhash
692 translation table entry with the symbol dynindx.
693 (_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH.
694 (_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section
695 info.
696 (_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash
697 section.
698 (_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to
699 dynamic section.
700 (_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH.
701 (_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section
702 sh_link info.
703 (_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag.
704 (MIPS_LIBC_ABI_XHASH): New ABI version enum value.
705 (_bfd_mips_post_process_headers): Mark the ABI version as
706 MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section,
707 but not a .hash section.
708 (_bfd_mips_elf_record_xhash_symbol): New function. Record a
709 position in the translation table, associated with the hash
710 entry.
711 * elfxx-mips.h (literal_reloc_p): Define
712 elf_backend_record_xhash_symbol backend hook.
713 * elfxx-target.h: Initialize elf_backend_record_xhash_symbol
714 backend hook.
715
fc8de8e2
JM
7162019-08-07 Jose E. Marchesi <jose.marchesi@oracle.com>
717
718 * elf64-bpf.c (bpf_elf_relocate_section): New function.
719 (bpf_elf_insn_disp_reloc): Delete function.
720 (elf_backend_relocate_section): Define.
721
97b031c5
AM
7222019-08-07 Alan Modra <amodra@gmail.com>
723
724 PR 24644
725 * archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check
726 for overflow in expressions involving nsymz.
727
0f52d45a
JW
7282019-08-01 Ilia Diachkov <ilia.diachkov@optimitech.com>
729
730 * elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to
731 two pages in relro presence.
732
e0d0c518
MF
7332019-08-01 Max Filippov <jcmvbkbc@gmail.com>
734
735 * elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode)
736 (get_wsr_lbeg_opcode): New functions.
737 (check_loop_aligned): Detect relaxed loops and adjust loop_len
738 and insn_len for the first actual instruction of the loop.
739
34d5c40a
AM
7402019-07-30 Alan Modra <amodra@gmail.com>
741
742 PR 24768
743 * bfd.c (struct bfd): Add lto_slim_object flag.
744 * bfd-in2.h: Regenerate.
745
cc5277b1
ML
7462019-07-29 Martin Liska <mliska@suse.cz>
747
748 PR 24768
749 * archive.c (_bfd_compute_and_write_armap): Come up with
750 report_plugin_err variable.
751 * bfd-in2.h (struct bfd): Add lto_slim_object flag.
752 * elf.c (struct lto_section): New.
753 (_bfd_elf_make_section_from_shdr): Parse content of
754 .gnu_lto_.lto section.
755 * elflink.c: Report error for a missing LTO plugin.
756 * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
757
4538d1c7
AM
7582019-07-28 Alan Modra <amodra@gmail.com>
759
760 PR 24857
761 PR 24339
762 * elflink.c (elf_link_add_object_symbols): Report an informative
763 error on finding local symbols with index equal or greater than
764 symbol table sh_info. Correct comment. Allow such symbols in
765 dynamic objects. Abort on NULL section for symbol.
766
6dd17ae0
AM
7672019-07-26 Alan Modra <amodra@gmail.com>
768
769 * elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field.
770 (elf_linker): Don't define.
771 * elflink.c (bfd_elf_final_link): Don't set elf_linker.
772
c7c860d2
YS
7732019-07-25 YunQiang Su <syq@debian.org>
774
775 PR 24832
776 * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
777 mips inputs.
778
95967518
CZ
7792019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
780
781 * elf32-arc.c (bfd_get_32_me): Add a small description, fix
782 formating.
783 (reloc_type_to_name): Fix formating.
784 (arc_elf_object_p): Likewise.
785 (debug_arc_reloc): Likewise.
786 (arc_do_relocation): Likewise.
787
ef551643
CZ
7882019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
789
790 * elf32-arc.c (bfd_get_32_me): New function.
791 (bfd_put_32_me): Likewise.
792 (arc_elf_relax_section): Likewise.
793 (bfd_elf32_bfd_relax_section): Define.
794
cc364be6
AM
7952019-07-24 Alan Modra <amodra@gmail.com>
796
797 * elf-bfd.h (struct elf_backend_data): Return bfd_boolean from
798 elf_backend_final_write_processing, don't pass linker arg.
799 (_bfd_elf_final_write_processing): Update prototype.
800 * elf.c (_bfd_elf_write_object_contents): Adjust call.
801 (_bfd_elf_final_write_processing): Return error on incompatible
802 OSABI and has_gnu_osabi. Remove linker arg.
803 * elf-nacl.h (nacl_final_write_processing): Update prototype.
804 * elf-vxworks.h (elf_vxworks_final_write_processing): Likewise.
805 * elfxx-mips.h (_bfd_mips_final_write_processing): Likewise.
806 (_bfd_mips_elf_final_write_processing): Likewise.
807 * elf-hppa.h (elf_hppa_final_write_processing): Return status
808 and remove linker arg.
809 * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
810 * elf-nacl.c (nacl_final_write_processing): Likewise.
811 * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
812 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
813 * elf32-arm.c (arm_final_write_processing): Likewise.
814 (elf32_arm_final_write_processing): Likewise.
815 (elf32_arm_nacl_final_write_processing): Likewise.
816 (elf32_arm_vxworks_final_write_processing): Likewise.
817 * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
818 * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
819 * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
820 * elf32-cris.c (cris_elf_final_write_processing): Likewise.
821 * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
822 * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
823 * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
824 * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
825 * elf32-mips.c (mips_vxworks_final_write_processing): Likewise.
826 * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
827 * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
828 * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
829 * elf32-pj.c (pj_elf_final_write_processing): Likewise.
830 * elf32-ppc.c (ppc_final_write_processing): Likewise.
831 (ppc_elf_final_write_processing): Likewise.
832 (ppc_elf_vxworks_final_write_processing): Likewise.
833 * elf32-sparc.c (sparc_final_write_processing): Likewise.
834 (elf32_sparc_final_write_processing): Likewise.
835 (elf32_sparc_vxworks_final_write_processing): Likewise.
836 * elf32-v850.c (v850_elf_final_write_processing): Likewise.
837 * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
838 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
839 * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
840 * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
841 * elfxx-mips.c (_bfd_mips_final_write_processing): Likewise.
842 (_bfd_mips_elf_final_write_processing): Likewise.
843
c5e20471
AM
8442019-07-24 Alan Modra <amodra@gmail.com>
845
846 * elf-vxworks.c (elf_vxworks_final_write_processing): Don't return
847 early.
848 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
849 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
850
7613ca5e
AM
8512019-07-24 Alan Modra <amodra@gmail.com>
852
853 * elf32-visium.c (visium_elf_post_process_headers): Don't set
854 EI_OSABI header byte here.
855 (ELF_OSABI): Define.
856
df3a023b
AM
8572019-07-23 Alan Modra <amodra@gmail.com>
858
859 * elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_mbind.
860 * elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_mbind.
861 (get_program_header_size): Formatting. Only test SH_GNU_MBIND
862 when elf_gnu_osabi_mbind is set.
863 (_bfd_elf_map_sections_to_segments): Likewise.
864 (_bfd_elf_init_private_section_data): Likewise.
865 (_bfd_elf_final_write_processing): Update comment.
866 * elf64-hppa.c (elf64_hppa_special_sections): Move .tbss entry.
867 (elf_backend_special_sections): Define without .tbss for linux.
868
06f44071
AM
8692019-07-23 Alan Modra <amodra@gmail.com>
870
871 * elf-bfd.h (enum elf_gnu_osabi): Rename from elf_gnu_symbols.
872 Remove none, any, all enums.
873 (struct elf_obj_tdata): Rename has_gnu_symbols field to has_gnu_osabi.
874 (_bfd_elf_final_write_processing): Declare.
875 * elf.c (_bfd_elf_write_object_contents): Unconditionally call
876 elf_backend_final_write_processing.
877 (_bfd_elf_post_process_headers): Move body of function to..
878 (_bfd_elf_final_write_processing): ..here, but set EI_OSABI byte
879 only when not already set. Adjust for rename.
880 * elfxx-target.h (elf_backend_final_write_processing): Default to
881 _bfd_elf_final_write_processing.
882 * elf-hppa.h (elf_hppa_final_write_processing): Call
883 _bfd_elf_final_write_processing.
884 * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
885 * elf-nacl.c (nacl_final_write_processing): Likewise.
886 * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
887 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
888 * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
889 * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
890 * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
891 * elf32-cris.c (cris_elf_final_write_processing): Likewise.
892 * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
893 * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
894 * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
895 * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
896 * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
897 * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
898 * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
899 * elf32-pj.c (pj_elf_final_write_processing): Likewise.
900 * elf32-v850.c (v850_elf_final_write_processing): Likewise.
901 * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
902 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
903 * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
904 * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
905 * elf32-arm.c (arm_final_write_processing): Split out from..
906 (elf32_arm_final_write_processing): ..here. Call
907 _bfd_elf_final_write_processing.
908 (elf32_arm_nacl_final_write_processing): Adjust.
909 * elfxx-mips.c (_bfd_mips_final_write_processing): Split out from..
910 (_bfd_mips_elf_final_write_processing): ..here. Call
911 _bfd_elf_final_write_processing.
912 * elfxx-mips.h (_bfd_mips_final_write_processing): Declare.
913 * elf32-mips.c (mips_vxworks_final_write_processing): Adjust.
914 * elf32-ppc.c (ppc_final_write_processing): Split out from..
915 (ppc_elf_final_write_processing): ..here. Call
916 _bfd_elf_final_write_processing.
917 (ppc_elf_vxworks_final_write_processing): Adjust.
918 * elf32-sparc.c (sparc_final_write_processing): Split out from..
919 (elf32_sparc_final_write_processing): ..here. Call
920 _bfd_elf_final_write_processing.
921 (elf32_sparc_vxworks_final_write_processing): Adjust.
922 * elf32-d10v.c (elf_backend_final_write_processing): Don't define.
923 * elf32-d30v.c (elf_backend_final_write_processing): Don't define.
924 * elf32-m68hc11.c (elf_backend_final_write_processing): Don't define.
925 * elf32-m68hc12.c (elf_backend_final_write_processing): Don't define.
926 * elf32-s12z.c (elf_backend_final_write_processing): Don't define.
927 * elf32-i386.c (elf_i386_check_relocs): Don't set has_gnu_symbols.
928 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
929 * elflink.c (elf_link_add_object_symbols): Likewise.
930 (elf_link_output_symstrtab): Set has_gnu_osabi for symbols here
931 instead.
932
1dd1bc4d
OM
9332019-07-23 Omar Majid <omajid@redhat.com>
934
935 * coffcode.h (coff_set_arch_mach_hook): Handle I386_APPLE_MAGIC,
936 I386_FREEBSD_MAGIC, I386_LINUX_MAGIC, I386_NETBSD_MAGIC,
937 AMD64_APPLE_MAGIC, AMD64_FREEBSD_MAGIC, AMD64_LINUX_MAGIC,
938 AMD64_NETBSD_MAGIC.
939 * peXXigen.c: Add comment about source of .NET magic numbers.
940
c213164a
AM
9412019-07-19 Alan Modra <amodra@gmail.com>
942
943 * reloc.c (BFD_RELOC_PPC64_TPREL34, BFD_RELOC_PPC64_DTPREL34),
944 (BFD_RELOC_PPC64_GOT_TLSGD34, BFD_RELOC_PPC64_GOT_TLSLD34),
945 (BFD_RELOC_PPC64_GOT_TPREL34, BFD_RELOC_PPC64_GOT_DTPREL34),
946 (BFD_RELOC_PPC64_TLS_PCREL): New pcrel tls relocs.
947 * elf64-ppc.c (ppc64_elf_howto_raw): Add howtos for pcrel tls relocs.
948 (ppc64_elf_reloc_type_lookup): Translate pcrel tls relocs.
949 (must_be_dyn_reloc, dec_dynrel_count): Add R_PPC64_TPREL64.
950 (ppc64_elf_check_relocs): Support pcrel tls relocs.
951 (ppc64_elf_tls_optimize, ppc64_elf_relocate_section): Likewise.
952 * bfd-in2.h: Regenerate.
953 * libbfd.h: Regenerate.
954
71c4e95a
AM
9552019-07-18 Alan Modra <amodra@gmail.com>
956
957 * elf64-ppc.c (ppc64_elf_relocate_section): Don't bother selecting
958 a TLS section symbol for edited relocs. Tighten TLS symbol/reloc
959 match test.
960
46e9995a
AM
9612019-07-18 Alan Modra <amodra@gmail.com>
962
963 * elf64-ppc.c (TLS_EXPLICIT): Define as 256.
964 (ppc64_elf_check_relocs): Don't store TLS_EXPLICIT even if char
965 is more than 8 bits.
966 (ppc64_elf_tls_optimize): Likewise. Make tls_set, tls_clear, and
967 tls_type vars unsigned int.
968 (ppc64_elf_relocate_section): Use r_type rather than TLS_EXPLICIT
969 to select r_type edit.
970
b00a0a86
AM
9712019-07-18 Alan Modra <amodra@gmail.com>
972
973 * elf32-ppc.c (TLS_GDIE): Rename from TLS_TPRELGD throughout file.
974 Correct comment.
975 * elf64-ppc.c (TLS_GDIE): Likewise.
976
0b147428
AM
9772019-07-18 Alan Modra <amodra@gmail.com>
978
979 * elf64-ppc.c (ppc64_elf_tls_optimize): Correct test for allowed
980 range of tp-relative offsets.
981
5b9d7a9a
AM
9822019-07-15 Alan Modra <amodra@gmail.com>
983
984 * elflink.c (_bfd_elf_fix_symbol_flags): If the def for an
985 alias is no longer bfd_link_hash_defined, clear the alias.
986
f26a3287
AM
9872019-07-13 Alan Modra <amodra@gmail.com>
988
989 * elflink.c (_bfd_elf_omit_section_dynsym_default): Don't keep
990 tls_sec.
991 (_bfd_elf_init_1_index_section): Prefer not using TLS sections.
992 (_bfd_elf_init_2_index_sections): Likewise.
993 * elf64-ppc.c (ppc64_elf_relocate_section): When emitting dynamic
994 relocations for local TLS symbols, use STN_UNDEF as the relocation
995 symbol.
996 * elf32-ppc.c (ppc_elf_relocate_section): Likewise, and don't
997 leave TLS symbol value in the addend.
998
62a47958
AM
9992019-07-08 Alan Modra <amodra@gmail.com>
1000
1001 PR 24785
1002 * elf32-ppc.c (_bfd_elf_ppc_set_arch): Sanity check .PPC.EMB.apuinfo
1003 size before reading first word.
1004
1faa385f
NC
10052019-07-02 Nick Clifton <nickc@redhat.com>
1006
1007 PR 24717
1008 * elf.c (is_debuginfo_file): New function.
1009 (assign_file_positions_for_non_load_sections): Do not warn about
1010 allocated sections outside of loadable segments if they are found
1011 in a debuginfo file.
1012 * elf-bfd.h (is_debuginfo_file): Prototype.
1013
125f83f6
NC
10142019-07-02 Nick Clifton <nickc@redhat.com>
1015
1016 PR 24753
1017 * compress.c (bfd_get_full_section_contents): Do not complain
1018 about linker created sections that are larger than the file size.
1019
4d83e8d9
CL
10202019-07-02 Christophe Lyon <christophe.lyon@linaro.org>
1021
1022 * bfd/elf32-arm.c (CMSE_STUB_NAME): New define.
1023 (elf32_arm_get_stub_entry): Do not try to emit long-branch stubs
1024 for CMSE stubs.
1025 (arm_dedicated_stub_output_section_name): Use CMSE_STUB_NAME.
1026
bb32413f
SP
10272019-07-02 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
1028
1029 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Mark debug
1030 sections when .text section contain secure entry functions
1031 is marked.
1032
539300fb
NC
10332019-07-01 Nick Clifton <nickc@redhat.com>
1034
1035 PR 23839
1036 * elf32-arm.c (elf32_arm_update_relocs): Do not include the
1037 section VMA in the offset used to update exidx relocs.
1038
7e56c51c
NC
10392019-06-28 Nick Clifton <nickc@redhat.com>
1040
1041 PR 24708
1042 * elf.c (_bfd_elf_slurp_version_tables): Check for an excessively
1043 large version reference section.
1044 * compress.c (bfd_get_full_section_contents): Check for an
1045 uncompressed section whose size is larger than the file size.
1046
999d6dff
AM
10472019-06-28 Alan Modra <amodra@gmail.com>
1048
1049 * format.c (bfd_check_format_matches): Don't match plugin target
1050 if another target matches. Expand comment.
1051 * targets.c (_bfd_target_vector): Move plugin_vec after all other
1052 non-corefile targets, outside !SELECT_VECS.
1053 * config.bfd: Don't handle targ=plugin here.
1054 * configure.ac: Don't add plugin to enable_targets or handle in
1055 target loop setting selvecs and other target vars.
1056 * configure: Regenerate.
1057
a68aa5d3
NC
10582019-06-26 Nick Clifton <nickc@redhat.com>
1059
1060 PR 24703
1061 * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add error
1062 messages for failures.
1063 * mach-o.c (bfd_mach_o_canonicalize_relocs): Set an bfd error code
1064 if returning an error value.
1065
ab9f654c
JB
10662019-06-25 Jan Beulich <jbeulich@suse.com>
1067
1068 * elf-properties.c (elf_find_and_remove_property): Rename last
1069 parameter. Mention it in comment.
1070
04b865dc
JW
10712019-06-24 Ilia Diachkov <ilia.diachkov@optimitech.com>
1072
1073 * elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
1074 SEC_MERGE or SEC_CODE flags are set.
1075 (_bfd_riscv_relax_section): New local symtype. Set sym_sec and
1076 symtype consistently. Don't include sec_addr (sym_sec) in symval.
1077 Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
1078 Add sec_addr (sym_sec) after handling merge sections.
1079
f93ab3a0
L
10802019-06-24 H.J. Lu <hongjiu.lu@intel.com>
1081
1082 PR ld/24721
1083 * elf-properties.c (elf_merge_gnu_property_list): Remove the
1084 property after reporting property removal.
1085
bb22a418
AM
10862019-06-23 Alan Modra <amodra@gmail.com>
1087
1088 PR 24704
1089 * elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
1090 (ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
1091 Reduce range of offsets allowed for other GOT relocs.
1092
14b2a8e4
AM
10932019-06-23 Alan Modra <amodra@gmail.com>
1094
1095 PR 24689
1096 * elfcode.h (elf_object_p): Warning fix.
1097
890f750a
AM
10982019-06-21 Alan Modra <amodra@gmail.com>
1099
1100 PR 24689
1101 * elfcode.h (elf_object_p): Check type of e_shstrndx section.
1102
6f5601c4
AM
11032019-06-19 Alan Modra <amodra@gmail.com>
1104
1105 PR 24697
1106 * elf32-ppc.c (ppc_elf_relocate_section): Don't read insn for
1107 R_PPC_EMB_RELSDA. Mask low bit of R_PPC_EMB_SDA21 r_offset.
1108
4a4e7361
AM
11092019-06-19 Alan Modra <amodra@gmail.com>
1110
1111 * elf64-ppc.c (ppc64_elf_inline_plt): Correct st_other test for
1112 functions that require r2 valid to use local entry.
1113 (ppc64_elf_size_stubs, ppc64_elf_relocate_section): Likewise.
1114
39c05d94
SN
11152019-06-17 Szabolcs Nagy <szabolcs.nagy@arm.com>
1116
1117 * elfnn-aarch64.c (elfNN_aarch64_allocate_local_dynrelocs): Remove.
1118 (elfNN_aarch64_size_dynamic_sections): Remove loc_hash_table traversal
1119 with elfNN_aarch64_allocate_local_dynrelocs.
1120
e30d1fa1
SN
11212019-06-14 Szabolcs Nagy <szabolcs.nagy@arm.com>
1122
1123 * elfnn-aarch64.c: Enable MOVW_PREL relocs for ELF32.
1124
3a3a077c
AM
11252019-06-14 Alan Modra <amodra@gmail.com>
1126
1127 * Makefile.in: Regenerate.
1128 * configure: Regenerate.
1129
d4b87b1e
AM
11302019-06-14 Alan Modra <amodra@gmail.com>
1131
1132 * elf64-ppc.c: Fix comments involving paddi.
1133
62e0492f
AL
11342019-06-12 Adam Lackorzymski <adam@os.inf.tu-dresden.de>
1135
1136 PR 24643
1137 * elf32-arm.c (arm_elf_find_function): Fail if the symol table is
1138 absent, or the bfd is not in the ELF formart.
1139 * elfnn-aarch64.c (aarch64_elf_find_function): Likewise.
1140
58e07198
CZ
11412019-06-10 Christos Zoulas <christos@zoulas.com>
1142
1143 PR 24650
1144 * elf.c (elfcore_make_auxv_note_section): New function.
1145 (elfcore_grok_note): Use it.
1146 (elfcore_grok_freebsd_note): Likewise.
1147 (elfcore_grok_openbsd_note): Likewise.
1148 (elfcore_grok_netbsd_note): Likewise. Plus add support for
1149 NT_NETBSDCORE_AUXV notes.
1150
237df8fe
SD
11512019-06-06 Sudakshina Das <sudi.das@arm.com>
1152
1153 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Set
1154 alignment of the new gnu property section.
1155
8bf6d176
SD
11562019-06-06 Sudakshina Das <sudi.das@arm.com>
1157
1158 * bfd-in.h: Change comment.
1159 * bfd-in2.h: Regenerate.
1160 * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update warning.
1161 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties):
1162 Likwise.
1163
1e129bbe
FS
11642019-05-28 Faraz Shahbazker <fshahbazker@wavecomp.com>
1165
1166 * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_PCHI16>:
1167 Remove overflow check.
1168
0f4a61b4
AM
11692019-05-28 Alan Modra <amodra@gmail.com>
1170
1171 PR 24596
1172 * cofflink.c (coff_link_check_archive_element): Don't assume
1173 element is a coff object file after calling add_archive_element.
1174
94667ab1
AM
11752019-05-28 Alan Modra <amodra@gmail.com>
1176
1177 PR 24596
1178 * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Don't
1179 attempt to set sh_entsize for excluded PLT section.
1180
28fbeab8
AM
11812019-05-28 Alan Modra <amodra@gmail.com>
1182
1183 PR 24596
1184 * elf64-alpha.c (elf64_alpha_relocate_section): Don't attempt
1185 to emit R_ALPHA_GOTTPREL in PIEs, for which no space is
1186 allocated in alpha_dynamic_entries_for_reloc.
1187
a0f6fd21
AM
11882019-05-28 Alan Modra <amodra@gmail.com>
1189
1190 PR 24596
1191 * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Don't segfault
1192 on NULL output_section.
1193 * elflink.c (elf_final_link_free): Don't free -1 symshndxbuf.
1194
c83004d5
AM
11952019-05-28 Alan Modra <amodra@gmail.com>
1196
1197 PR 24596
1198 * elf32-m68k.c (elf_m68k_get_got_entry): Don't create a new
1199 entry when MUST_FIND. Abort when MUST_FIND not found.
1200 (elf_m68k_get_bfd2got_entry): Likewise.
1201 (elf_m68k_relocate_section): Remove now useless assert.
1202
586338b8
AM
12032019-05-28 Alan Modra <amodra@gmail.com>
1204
1205 PR 24596
1206 * elf64-hppa.c (elf64_hppa_finalize_dynreloc): Get the output bfd
1207 from bfd_link_info, not an output section owner.
1208 (elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd): Likewise.
1209 (elf_hppa_final_link_relocate): Likewise.
1210
a7b34aba
AM
12112019-05-28 Alan Modra <amodra@gmail.com>
1212
1213 PR 24596
1214 * aout-tic30.c (MY_bfd_final_link): Don't segfault on missing
1215 create_object_symbols_section, obj_textsec, obj_datasec or
1216 obj_bsssec. Fix other errors in placement.
1217 * config.bfd: Obsolete tic30-aout.
1218
0eb32b6e
AM
12192019-05-28 Alan Modra <amodra@gmail.com>
1220
1221 PR 24596
1222 * dwarf2.c (save_section_vma, section_vma_same): Check for NULL
1223 end of section list as well as section_count.
1224 * xcofflink.c (xcoff_link_add_symbols): Fix temporarily changed
1225 section list before returning error.
1226
ce5aecf8
AM
12272019-05-27 Alan Modra <amodra@gmail.com>
1228
1229 * elf.c (bfd_elf_set_group_contents): Exit on zero size section.
1230
3d7d6a6f
AM
12312019-05-27 Alan Modra <amodra@gmail.com>
1232
1233 PR 24596
1234 * linker.c (_bfd_generic_link_output_symbols): Heed BSF_KEEP.
1235
823710d5
SN
12362019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
1237
1238 * elfnn-aarch64.c (elfNN_aarch64_merge_symbol_attribute): New function.
1239 (struct elf_aarch64_link_hash_table): Add variant_pcs member.
1240 (elfNN_aarch64_allocate_dynrelocs): Update variant_pcs.
1241 (elfNN_aarch64_size_dynamic_sections): Add DT_AARCH64_VARIANT_PCS.
1242 (elf_backend_merge_symbol_attribute): Define.
1243
405b5bd8
AM
12442019-05-24 Alan Modra <amodra@gmail.com>
1245
1246 * po/SRC-POTFILES.in: Regenerate.
1247
04bdff6a
AM
12482019-05-24 Alan Modra <amodra@gmail.com>
1249
1250 * elf64-ppc.c: Comment on powerxx _notoc stub variants.
1251 (LI_R11_0, LIS_R11, ORI_R11_R11_0, SLDI_R11_R11_34): Define.
1252 (PADDI_R12_PC, PLD_R12_PC, D34, HA34): Define.
1253 (struct ppc_link_hash_table): Add powerxx_stubs.
1254 (ppc64_elf_check_relocs): Set powerxx_stubs.
1255 (build_powerxx_offset, size_powerxx_offset),
1256 (num_relocs_for_powerxx_offset),
1257 (emit_relocs_for_powerxx_offset): New functions.
1258 (plt_stub_size): Size powerxx stubs.
1259 (ppc_build_one_stub): Emit powerxx stubs.
1260 (ppc_size_one_stub): Size powerxx stubs. Omit .eh_frame for
1261 powerxx stubs.
1262
4a421c53
AM
12632019-05-24 Alan Modra <amodra@gmail.com>
1264
1265 * elf64-ppc.c (ppc64_elf_check_relocs): Set has_gotrel for
1266 R_PPC64_GOT_PCREL34.
1267 (xlate_pcrel_opt): New function.
1268 (ppc64_elf_edit_toc): Handle R_PPC64_GOT_PCREL34.
1269 (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
1270 for R_PPC64_GOT_PCREL34. Implement R_PPC64_PCREL_OPT optimisation.
1271
5663e321
AM
12722019-05-24 Alan Modra <amodra@gmail.com>
1273
1274 * reloc.c (BFD_RELOC_PPC64_D34, BFD_RELOC_PPC64_D34_LO),
1275 (BFD_RELOC_PPC64_D34_HI30, BFD_RELOC_PPC64_D34_HA30),
1276 (BFD_RELOC_PPC64_PCREL34, BFD_RELOC_PPC64_GOT_PCREL34),
1277 (BFD_RELOC_PPC64_PLT_PCREL34),
1278 (BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34),
1279 (BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34),
1280 (BFD_RELOC_PPC64_REL16_HIGHER34, BFD_RELOC_PPC64_REL16_HIGHERA34),
1281 (BFD_RELOC_PPC64_REL16_HIGHEST34, BFD_RELOC_PPC64_REL16_HIGHESTA34),
1282 (BFD_RELOC_PPC64_D28, BFD_RELOC_PPC64_PCREL28): New reloc enums.
1283 * elf64-ppc.c (PNOP): Define.
1284 (ppc64_elf_howto_raw): Add reloc howtos for new relocations.
1285 (ppc64_elf_reloc_type_lookup): Translate new bfd reloc numbers.
1286 (ppc64_elf_ha_reloc): Adjust addend for highera34 and highesta34
1287 relocs.
1288 (ppc64_elf_prefix_reloc): New function.
1289 (struct ppc_link_hash_table): Add notoc_plt.
1290 (is_branch_reloc): Add R_PPC64_PLTCALL_NOTOC.
1291 (is_plt_seq_reloc): Add R_PPC64_PLT_PCREL34,
1292 R_PPC64_PLT_PCREL34_NOTOC, and R_PPC64_PLTSEQ_NOTOC.
1293 (ppc64_elf_check_relocs): Handle pcrel got and plt relocs. Set
1294 has_pltcall for section on seeing R_PPC64_PLTCALL_NOTOC. Handle
1295 possible need for dynamic relocs on non-pcrel powerxx relocs.
1296 (dec_dynrel_count): Handle non-pcrel powerxx relocs.
1297 (ppc64_elf_inline_plt): Handle R_PPC64_PLTCALL_NOTOC.
1298 (toc_adjusting_stub_needed): Likewise.
1299 (ppc64_elf_tls_optimize): Handle R_PPC64_PLTSEQ_NOTOC.
1300 (ppc64_elf_relocate_section): Handle new powerxx relocs.
1301 * bfd-in2.h: Regenerate.
1302 * libbfd.h: Regenerate.
1303
fd0de36e
JM
13042019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
1305
45d5293f
JM
1306 * config.bfd (targ_cpu): Process bpf-*-none only if BFD64.
1307 * configure.ac: Set target_size=64 for bpf_elf64_le_vec and
1308 bpf_elf64_be_vec.
1309 * configure: Regenerate.
1310
13112019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
1312
fd0de36e
JM
1313 * configure: Regenerated.
1314 * Makefile.am (ALL_MACHINES): Add cpu-bpf.lo.
1315 (ALL_MACHINES_CFILES): Add cpu-bpf.c.
1316 (BFD64_BACKENDS): Add elf64-bpf.lo.
1317 (BFD64_BACKENDS_CFILES): Add elf64-bpf.c.
1318 * Makefile.in (SOURCE_HFILES): Regenerate.
1319 * config.bfd (targ_cpu): Handle bpf-*-* targets.
1320 * cpu-bpf.c: New file.
1321 * elf64-bpf.c: Likewise.
1322 * targets.c (_bfd_target_vector): Add bpf_elf64_be_vec and
1323 bpf_elf64_le_vec.
1324 * archures.c: Define architecture bfd_arch_bpf and machine
1325 bfd_arch_bpf.
1326 * reloc.c: Define BFD relocations used by the BPF target.
1327 * bfd-in2.h: Regenerated.
1328 * libbfd.h: Likewise.
1329
b0f4fbf8
AM
13302019-05-22 Alan Modra <amodra@gmail.com>
1331
1332 * elf32-arm.c (arm_allocate_glue_section_space): Clear section
1333 contents.
1334
9ec2f606
AM
13352019-05-22 Alan Modra <amodra@gmail.com>
1336
1337 * vms-alpha.c (_bfd_vms_write_etir): Don't attempt further
1338 processing on "size error in section".
1339
4decd602
AM
13402019-05-22 Alan Modra <amodra@gmail.com>
1341
1342 * som.c (som_bfd_free_cached_info): Call
1343 _bfd_generic_close_and_cleanup.
1344
b474a202
FS
13452019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
1346
1347 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Generate error
1348 for TLS_TPREL_HI16(/LO16) relocations in shared library.
1349
304f09d0
FS
13502019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
1351
1352 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Add NULL pointer
1353 checks. Search the RELA table for n64 relocations.
1354
3734320d
MF
13552019-05-21 Matthew Fortune <matthew.fortune@mips.com>
1356 Faraz Shahbazker <fshahbazker@wavecomp.com>
1357
1358 * elfxx-mips.c (LA25_BC): New macro.
1359 (mips_elf_link_hash_table)<compact_branches>: New field.
1360 (STUB_JALRC): New macro.
1361 (mipsr6_o32_exec_plt0_entry_compact): New array.
1362 (mipsr6_n32_exec_plt0_entry_compact): Likewise.
1363 (mipsr6_n64_exec_plt0_entry_compact): Likewise.
1364 (mipsr6_exec_plt_entry_compact): Likewise.
1365 (mips_elf_create_la25_stub): Use BC instead of J for stubs
1366 when compact_branches is true.
1367 (_bfd_mips_elf_finish_dynamic_symbol): Choose the compact
1368 PLT for MIPSR6 with compact_branches. Do not reorder the
1369 compact branches PLT. Switch the lazy stub for MIPSR6
1370 with compact_branches to use JALRC.
1371 (mips_finish_exec_plt): Choose the compact PLT0 for MIPSR6
1372 when compact_branches is true.
1373 (_bfd_mips_elf_compact_branches): New function.
1374 * elfxx-mips.h (_bfd_mips_elf_compact_branches): New prototype.
1375
64672071
TC
13762019-05-21 Tamar Christina <tamar.christina@arm.com>
1377
1378 PR ld/24373
1379 * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
1380 Fix print formatter.
1381
e6f65e75
AV
13822019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
1383
1384 PR 24460
1385 * elf32-arm.c (get_value_helper): Remove.
1386 (elf32_arm_final_link_relocate): Fix branch future relocations.
1387
739b5c9c
TC
13882019-05-21 Tamar Christina <tamar.christina@arm.com>
1389
1390 PR ld/24373
1391 * bfd-in.h (enum erratum_84319_opts): New
1392 (bfd_elf64_aarch64_set_options, bfd_elf32_aarch64_set_options): Change
1393 int to enum erratum_84319_opts.
1394 * bfd-in2.h: Regenerate.
1395 * elfnn-aarch64.c (struct elf_aarch64_link_hash_table): Change
1396 fix_erratum_843419 to use new enum, remove fix_erratum_843419_adr.
1397 (_bfd_aarch64_add_stub_entry_after): Conditionally create erratum stub.
1398 (aarch64_size_one_stub): Conditionally size erratum 843419 stubs.
1399 (_bfd_aarch64_resize_stubs): Amend comment.
1400 (elfNN_aarch64_size_stubs): Don't generate stubs when no workaround
1401 requested.
1402 (bfd_elfNN_aarch64_set_options): Use new fix_erratum_843419 enum.
1403 (_bfd_aarch64_erratum_843419_branch_to_stub): Implement selection of
1404 erratum workaround.
1405 (clear_erratum_843419_entry): Update erratum conditional.
1406
7622049e
SKS
14072019-05-21 Senthil Kumar Selvaraj <senthilkumar.selvaraj@microchip.com>
1408
1409 PR ld/24571
1410 * bfd/elf32-avr.c (elf32_avr_relax_section): Adjust range check
1411 when computing distance_short_enough.
1412
338ba755
SKS
14132019-05-21 Senthil Kumar Selvaraj <senthilkumar.selvaraj@microchip.com>
1414
1415 PR ld/24564
1416 * bfd/elf32-avr.c (avr_relative_distance_considering_wrap_around):
1417 Wrap around even if distance equals avr_pc_wrap_around.
1418
999b073b
NC
14192019-05-20 Nick Clifton <nickc@redhat.com>
1420
1421 * po/fr.po: Updated French translation.
1422
a7ad558c
AV
14232019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
1424
1425 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add case for Tag_MVE_arch.
1426
a2699ef2
AM
14272019-05-16 Alan Modra <amodra@gmail.com>
1428
1429 * elf32-arm.c (elf32_arm_write_section): Revert last change.
1430
3a1bb98c
AM
14312019-05-15 Alan Modra <amodra@gmail.com>
1432
1433 * elf32-arm.c (elf32_arm_write_section): Don't leave
1434 error case of STM32L4XX_ERRATUM_BRANCH_TO_VENEER with
1435 unitialised section contents.
1436
37d0d091
JH
14372019-05-14 Jamey Hicks <jamey.hicks@gmail.com>
1438
1439 PR 19921
1440 * verilog.c: (VerilogDataWidth): New variable.
1441 (verilog_write_record): Emit bytes in VerilogDataWidth bundles.
1442
79299211
NC
14432019-05-08 Nick Clifton <nickc@redhat.com>
1444
1445 PR 24523
1446 * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Return TRUE
1447 rather than FALSE if encountering a non-ELF file.
1448
e1cbf07a
AM
14492019-05-06 Alan Modra <amodra@gmail.com>
1450
1451 * elf32-pj.c (pj_elf_reloc): Don't report undefined weak as an error.
1452
334d91b9
AM
14532019-05-06 Alan Modra <amodra@gmail.com>
1454
1455 * reloc.c (BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA),
1456 (BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA):
1457 Sort before BFD_RELOC_PPC64_DTPREL16_HIGHESTA entry.
1458 * libbfd.h: Regenerate.
1459 * bfd-in2.h: Regenerate.
1460
a288c270
AM
14612019-05-04 Alan Modra <amodra@gmail.com>
1462
1463 PR 24511
1464 * syms.c (coff_section_type): Only allow '.', '$' and numeric
1465 following the standard section names.
1466 (bfd_decode_symclass): Prioritize section flag tests in
1467 decode_section_type before name tests in coff_section_type.
1468 * plugin.c (bfd_plugin_canonicalize_symtab): Init fake_section
1469 and fake_common_section using BFD_FAKE_SECTION. Use "fake" as
1470 their names and choose standard .text section flags for
1471 fake_section.
1472
2cdc1a97
NC
14732019-05-02 Nick Clifton <nickc@redhat.com>
1474
1475 PR 24493
1476 * coffcode.h (styp_to_sec_flags): Treat .gnu.debuglink and
1477 .gnu.debugaltlink sections as debugging sections.
1478
066f4018
AM
14792019-04-30 Alan Modra <amodra@gmail.com>
1480
1481 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_gotrel.
1482 (struct _ppc64_elf_section_data): Likewise.
1483 (ppc64_elf_check_relocs): Set above fields.
1484 (ppc64_elf_edit_toc): Add a pass over GOT relocs.
1485 (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
1486 when possible.
1487
c54f1524
L
14882019-04-26 H.J. Lu <hongjiu.lu@intel.com>
1489
1490 PR ld/24486
1491 * elflink.c (elf_link_output_extsym): Don't complain undefined
1492 weak dynamic reference.
1493
68bb0359
SD
14942019-04-25 Sudakshina Das <sudi.das@arm.com>
1495
1496 * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): Remove.
1497 (PLT_BTI_TLSDESC_ENTRY_SIZE): Remove.
1498 (PLT_PAC_ENTRY_SIZE, PLT_BTI_PAC_ENTRY_SIZE): Remove.
1499 (PLT_BTI_SMALL_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): Update.
1500 (elfNN_aarch64_small_plt0_pac_entry): Remove.
1501 (elfNN_aarch64_small_plt0_bti_pac_entry): Remove.
1502 (elfNN_aarch64_small_plt0_bti_entry): Update.
1503 (elfNN_aarch64_small_plt_bti_entry): Update.
1504 (elfNN_aarch64_small_plt_pac_entry): Update.
1505 (elfNN_aarch64_tlsdesc_small_plt_bti_entry): Update.
1506 (setup_plt_values): Setup new entries.
1507 (elfNN_aarch64_finish_dynamic_sections): Remove size change.
1508 (elfNN_aarch64_plt_sym_val): Likewise.
1509
79b8e8ab
JW
15102019-04-22 Jim Wilson <jimw@sifive.com>
1511
1512 * elfnn-riscv.c (PRSTATUS_SIZE) [ARCH_SIZE==32]: Change from 0 to 204.
1513
fce97736
AM
15142019-04-19 Alan Modra <amodra@gmail.com>
1515
1516 * elf32-s12z.c (elf_backend_can_gc_sections): Don't define
1517
9a7f0679
L
15182019-04-17 H.J. Lu <hongjiu.lu@intel.com>
1519
1520 * elf64-x86-64.c (elf_x86_64_need_pic): Suggest -fPIE when not
1521 building shared object.
1522 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Likewise.
1523
4e84a8f8
L
15242019-04-17 H.J. Lu <hongjiu.lu@intel.com>
1525
1526 PR ld/24458
1527 * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): Also check x86
1528 linker_def.
1529
32c36c3c
AV
15302019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1531
1532 * reloc.c (BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM): New internal
1533 relocation.
1534 * bfd-in2.h: Regenerate.
1535 * libbfd.h: Likewise.
1536
60f993ce
AV
15372019-04-15 Sudakshina Das <sudi.das@arm.com>
1538
1539 * reloc.c (BFD_RELOC_ARM_THUMB_LOOP12): New.
1540 * bfd-in2.h: Regenerated.
1541 * libbfd.h: Regenerated.
1542
f6b2b12d
AV
15432019-04-15 Sudakshina Das <sudi.das@arm.com>
1544
1545 * reloc.c (BFD_RELOC_THUMB_PCREL_BFCSEL): New relocation.
1546 * bfd-in2.h: Regenerated.
1547 * libbfd.h: Likewise.
1548
1889da70
AV
15492019-04-15 Sudakshina Das <sudi.das@arm.com>
1550
1551 * reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
1552 * bfd-in2.h: Regenerated.
1553 * libbfd.h: Regenerated.
1554 * elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
1555 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
1556 and R_ARM_THM_BF12 together.
1557 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.
1558
1caf72a5
AV
15592019-04-15 Sudakshina Das <sudi.das@arm.com>
1560
1561 * reloc.c (BFD_RELOC_ARM_THUMB_BF19): New
1562 * libbfd.h: Regenerated.
1563 * bfd-in2.h: Regenerated.
1564 * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF18.
1565 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF19
1566 and R_ARM_THM_BF18 together.
1567 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF19.
1568
e5d6e09e
AV
15692019-04-15 Sudakshina Das <sudi.das@arm.com>
1570
1571 * reloc.c (BFD_RELOC_ARM_THUMB_BF17): New enum.
1572 * bfd-in2.h: Regenerated.
1573 * libbfd.h: Regenerated.
1574 * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF16.
1575 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF17
1576 and R_ARM_THM_BF16 together.
1577 (get_value_helper): New reloc helper.
1578 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF16.
1579
e12437dc
AV
15802019-04-15 Sudakshina Das <sudi.das@arm.com>
1581
1582 * reloc.c (BFD_RELOC_THUMB_PCREL_BRANCH5): New enum.
1583 * bfd-in2.h: Regenerate.
1584 * libbfd.h: Regenerate.
1585
031254f2
AV
15862019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1587
1588 * archures.c (bfd_mach_arm_8_1M_MAIN): Define.
1589 * bfd-in2.h: Regenerate.
1590 * cpu-arm.c (arch_info_struct): Add entry for Armv8.1-M Mainline.
1591 * elf32-arm.c (using_thumb_only): Return true for Armv8.1-M Mainline
1592 and update assert.
1593 (using_thumb2): Likewise.
1594 (using_thumb2_bl): Update assert.
1595 (arch_has_arm_nop): Likewise.
1596 (bfd_arm_get_mach_from_attributes): Add case for Armv8.1-M Mainline.
1597 (tag_cpu_arch_combine): Add logic for Armv8.1-M Mainline merging.
1598
233a0083
L
15992019-04-11 H.J. Lu <hongjiu.lu@intel.com>
1600
1601 * elf-linker-x86.h (elf_x86_cet_report): New.
1602 (elf_linker_x86_params): Add cet_report.
1603 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
1604 missing IBT and SHSTK properties if needed.
1605
a0ea3a14
L
16062019-04-11 H.J. Lu <hongjiu.lu@intel.com>
1607
ca4e6331 1608 PR ld/24436
a0ea3a14
L
1609 * elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
1610 "h != NULL". Don't check "h != NULL" before calling.
1611 bfd_elf_gc_record_vtentry.
1612 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
1613 * elf32-bfin.c (bfin_check_relocs): Likewise.
1614 * elf32-cris.c (cris_elf_check_relocs): Likewise.
1615 * elf32-csky.c (csky_elf_check_relocs): Likewise.
1616 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
1617 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
1618 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
1619 * elf32-frv.c (elf32_frv_check_relocs): Likewise.
1620 * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
1621 * elf32-i386.c (elf_i386_check_relocs): Likewise.
1622 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1623 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
1624 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
1625 * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
1626 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
1627 * elf32-metag.c (elf_metag_check_relocs): Likewise.
1628 * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
1629 * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
1630 * elf32-s390.c (elf_s390_check_relocs): Likewise.
1631 * elf32-sh.c (sh_elf_check_relocs): Likewise.
1632 * elf32-v850.c (v850_elf_check_relocs): Likewise.
1633 * elf32-vax.c (elf_vax_check_relocs): Likewise.
1634 * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
1635 * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
1636 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
1637 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
1638 * elf64-s390.c (elf_s390_check_relocs): Likewise.
1639 * elf64-x86-64.c (elf_s390_check_relocs): Likewise.
1640 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
1641 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
1642 * elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
1643 VTENTRY entry.
1644
9bff840e
AM
16452019-04-11 Alan Modra <amodra@gmail.com>
1646
1647 PR 24435
1648 * elflink.c (elf_link_add_object_symbols): Don't read partial
1649 dynamic entries from fuzzed objects.
1650
ce12121b
TC
16512019-04-11 Tamar Christina <tamar.christina@arm.com>
1652
1653 PR ld/24302
1654 * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
1655 DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
1656 (elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.
1657
b05971a6
MF
16582019-04-10 Michael Forney <mforney@mforney.org>
1659
1660 PR 24427
1661 * doc/chew.c (free_words): Correctly free "push_text" strings.
1662
3ae61bb6
L
16632019-04-08 H.J. Lu <hongjiu.lu@intel.com>
1664
1665 * config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.
1666
5f2a6b85
AM
16672019-04-08 Alan Modra <amodra@gmail.com>
1668
1669 * configure.ac (elfxx_x86): Define and use.
1670 * configure: Regenerate.
1671
5b9c07b2
L
16722019-04-06 H.J. Lu <hongjiu.lu@intel.com>
1673
1674 * elf-linker-x86.h: New file.
1675 * elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
1676 to get x86-specific linker options.
1677 * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
1678 (elf_x86_64_check_relocs): Likewise.
1679 (elf_x86_64_relocate_section): Likewise.
1680 (elf_x86_64_link_setup_gnu_properties): Likewise.
1681 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
1682 (_bfd_x86_elf_link_setup_gnu_properties): Likewise.
1683 (_bfd_elf_linker_x86_set_options): New function.
1684 * elfxx-x86.h: Include "elf-linker-x86.h".
1685 (elf_x86_link_hash_table): Add params.
1686
4b24dd1a
AM
16872019-04-03 Alan Modra <amodra@gmail.com>
1688
1689 * coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
1690 * elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
1691 * elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
1692 * elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
1693 * elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
1694 * pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.
1695
87f98bac
JW
16962019-04-02 Jim Wilson <jimw@sifive.com>
1697
1698 PR 24389
1699 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
1700 ELF header flags to after check for ELF object file. Loop through
1701 sections looking for code sections, if none, then skip ABI checks.
1702
ae2b14c7
JW
17032019-03-30 Andrew Waterman <andrew@sifive.com>
1704
1705 * elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
1706 rd == X_RA case.
1707
2487ef07
MF
17082019-03-29 Max Filippov <jcmvbkbc@gmail.com>
1709
1710 * elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
1711 info->export_dynamic to the conditional.
1712
242a1159
AM
17132019-03-28 Alan Modra <amodra@gmail.com>
1714
1715 PR 24392
1716 * configure.ac: Invoke AC_CHECK_SIZEOF(int).
1717 * configure: Regenerate.
1718 * coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
1719 workaround with SIZEOF_LONG vs. SIZEOF_INT check.
1720 * elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
1721 * elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
1722 * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
1723
a9f5a551
JW
17242019-03-21 Jim Wilson <jimw@sifive.com>
1725
1726 PR 24365
1727 * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
1728 verify sym non-NULL before using. Add identical check using h.
1729
4e539114
SD
17302019-03-21 Sudakshina Das <sudi.das@arm.com>
1731
1732 * elf-bfd.h (struct elf_backend_data): Add argument to
1733 merge_gnu_properties.
1734 * elf-properties.c (elf_merge_gnu_properties): Add argument to
1735 itself and while calling bed->merge_gnu_properties.
1736 (elf_merge_gnu_property_list): Update the calls for
1737 elf_merge_gnu_properties.
1738 * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
1739 of --force-bti warning and add argument.
1740 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
1741 warning.
1742 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
1743 * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
1744 declaration.
1745
acde6c6b
SD
17462019-03-20 Sudakshina Das <sudi.das@arm.com>
1747
1748 * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
1749 * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
1750 (elf_backend_fixup_gnu_properties): Define for AArch64.
1751
8cd1fe1b
AM
17522019-03-18 Alan Modra <amodra@gmail.com>
1753
1754 PR 24355
1755 * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
1756 for local iplt syms with ent->plt.offset == -1. Remove ineffective
1757 attempt at writing glink stubs only once.
1758
6835821b
AM
17592019-03-16 Alan Modra <amodra@gmail.com>
1760
1761 PR 24337
1762 * elf.c (_bfd_elf_rela_local_sym): Revert last change.
1763 (_bfd_elf_rel_local_sym): Likewise.
1764 * elflink.c (elf_link_input_bfd): Use bfd_und_section for
1765 section of symbols with unrecognized shndx.
1766
2219ae0b
L
17672019-03-15 H.J. Lu <hongjiu.lu@intel.com>
1768
1769 PR ld/24267
1770 * coffgen.c (_bfd_coff_section_already_linked): Skip discarded
1771 section.
1772 * cofflink.c (coff_link_add_symbols): Check for symbols defined
1773 in discarded section.
1774
fe3fef62
AM
17752019-03-15 Alan Modra <amodra@gmail.com>
1776
1777 PR 24339
1778 * elflink.c (elf_link_add_object_symbols): Bail out on a local
1779 symbol after globals if elf_bad_symtab is not set.
1780
1ff31e13
AM
17812019-03-15 Alan Modra <amodra@gmail.com>
1782
1783 PR 24337
1784 * elf.c (_bfd_elf_rela_local_sym): Don't segfault on NULL sec.
1785 (_bfd_elf_rel_local_sym): Likewise.
1786
f55b1e32
AM
17872019-03-15 Alan Modra <amodra@gmail.com>
1788
1789 PR 24336
1790 * elflink.c (elf_link_read_relocs_from_section): Handle fuzzed
1791 object files with sh_size not a multiple of sh_entsize.
1792
da0d12d2
L
17932019-03-15 H.J. Lu <hongjiu.lu@intel.com>
1794
418d4036
L
1795 PR ld/24338
1796 * elf64-x86-64.c (elf_x86_64_relocate_section): Check for corrupt
1797 input with bad relocation.
1798
179922019-03-15 H.J. Lu <hongjiu.lu@intel.com>
1800
da0d12d2
L
1801 * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent.
1802
d7f848c3
NC
18032019-03-14 Nick Clifton <nickc@redhat.com>
1804
1805 PR 24334
1806 * dwarf2.c (struct dwarf2_debug): Add sec_vma_count field.
1807 (save_section_vma): Initialise field to the number of entries in
1808 the sec_vma table.
1809 (section_vma_same): Check that the number of entries in the
1810 sec_vma table matches the number of sections in the bfd.
1811
6cc71b82
NC
18122019-03-14 Nick Clifton <nickc@redhat.com>
1813
1814 PR 24333
1815 * elflink.c (_bfd_elf_add_default_symbol): Add a check for a NULL
1816 section owner pointer when adding the default symbol.
1817
be22c732
NC
18182019-03-14 Nick Clifton <nickc@redhat.com>
1819
1820 PR 24332
1821 * elflink.c (elf_link_add_object_symbols): Add new local variable
1822 extversym_end. Initialise it to point to the end of the version
1823 symbol table, if present. Check it when initialising and updating
1824 the ever pointer.
1825
1dbade74
SD
18262019-03-13 Sudakshina Das <sudi.das@arm.com>
1827
1828 * elfnn-aarch64.c (PLT_PAC_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): New.
1829 (PLT_BTI_PAC_ENTRY_SIZE, PLT_BTI_PAC_SMALL_ENTRY_SIZE): New.
1830 (setup_plt_values): Account for PAC or PAC and BTI enabled PLTs.
1831 (elfNN_aarch64_size_dynamic_sections): Add checks for PLT_BTI_PAC
1832 and PLT_PAC_PLT.
1833 (elfNN_aarch64_finish_dynamic_sections): Account for PLT_BTI_PAC.
1834 (get_plt_type): Add case for DT_AARCH64_PAC_PLT.
1835 (elfNN_aarch64_plt_sym_val): Add cases for PLT_BTI_PAC and PLT_PAC.
1836
37c18eed
SD
18372019-03-13 Sudakshina Das <sudi.das@arm.com>
1838 Szabolcs Nagy <szabolcs.nagy@arm.com>
1839
1840 * bfd-in.h (aarch64_plt_type, aarch64_enable_bti_type): New.
1841 (aarch64_bti_pac_info): New.
1842 (bfd_elf64_aarch64_set_options): Add aarch64_bti_pac_info argument.
1843 (bfd_elf32_aarch64_set_options): Likewise.
1844 * bfd-in2.h: Regenerate
1845 * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): New.
1846 (PLT_BTI_SMALL_ENTRY_SIZE, PLT_BTI_TLSDESC_ENTRY_SIZE): New.
1847 (elfNN_aarch64_small_plt0_bti_entry): New.
1848 (elfNN_aarch64_small_plt_bti_entry): New.
1849 (elfNN_aarch64_tlsdesc_small_plt_bti_entry): New.
1850 (elf_aarch64_obj_tdata): Add no_bti_warn and plt_type fields.
1851 (elf_aarch64_link_hash_table): Add plt0_entry, plt_entry and
1852 tlsdesc_plt_entry_size fields.
1853 (elfNN_aarch64_link_hash_table_create): Initialise the new fields.
1854 (setup_plt_values): New helper function.
1855 (bfd_elfNN_aarch64_set_options): Use new bp_info to set plt sizes and
1856 bti enable type.
1857 (elfNN_aarch64_allocate_dynrelocs): Use new size members instead of
1858 fixed macros.
1859 (elfNN_aarch64_size_dynamic_sections): Likewise and add checks.
1860 (elfNN_aarch64_create_small_pltn_entry): Use new generic pointers
1861 to plt stubs instead of fixed ones and update filling them according
1862 to the need for bti.
1863 (elfNN_aarch64_init_small_plt0_entry): Likewise.
1864 (elfNN_aarch64_finish_dynamic_sections): Likewise.
1865 (get_plt_type, elfNN_aarch64_get_synthetic_symtab): New.
1866 (elfNN_aarch64_plt_sym_val): Update size accordingly.
1867 (elfNN_aarch64_link_setup_gnu_properties): Set up plts if BTI GNU NOTE
1868 is set.
1869 (bfd_elfNN_get_synthetic_symtab): Define.
1870 (elfNN_aarch64_merge_gnu_properties): Give out warning with --force-bti
1871 and mising BTI NOTE SECTION.
1872
1873
cd702818
SD
18742019-03-13 Sudakshina Das <sudi.das@arm.com>
1875
1876 * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
1877 linker created inputs from merge.
1878 * elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
1879 GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
1880 (elfNN_aarch64_link_setup_gnu_properties): New.
1881 (elfNN_aarch64_merge_gnu_properties): New.
1882 (elf_backend_setup_gnu_properties): Define for AArch64.
1883 (elf_backend_merge_gnu_properties): Likewise.
1884 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
1885 (_bfd_aarch64_elf_parse_gnu_properties): Define.
1886 (_bfd_aarch64_elf_merge_gnu_properties): Define.
1887 * elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
1888 (_bfd_aarch64_elf_parse_gnu_properties): Declare.
1889 (_bfd_aarch64_elf_merge_gnu_properties): Declare.
1890 (elf_backend_parse_gnu_properties): Define for AArch64.
1891
44b27f95
L
18922019-03-13 H.J. Lu <hongjiu.lu@intel.com>
1893
1894 PR ld/24322
1895 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Properly
1896 merge GNU_PROPERTY_X86_FEATURE_1_[IBT|SHSTK].
1897
7a6e0d89
AM
18982019-03-12 Alan Modra <amodra@gmail.com>
1899
1900 * coffcode.h (buy_and_read): Delete unnecessary forward decl. Add
1901 nmemb parameter. Use bfd_alloc2.
1902 (coff_slurp_line_table): Use bfd_alloc2. Update buy_and_read calls.
1903 Delete assertion.
1904 (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2.
1905 (coff_slurp_reloc_table): Use bfd_alloc2. Update buy_and_read calls.
1906 * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation
1907 doesn't overflow.
1908 * elf.c (bfd_section_from_shdr): Use bfd_zalloc2. Style fix.
1909 (assign_section_numbers): Style fix.
1910 (swap_out_syms): Use bfd_malloc2.
1911 (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't
1912 overflow.
1913 (_bfd_elf_make_empty_symbol): Style fix.
1914 (elfobj_grok_stapsdt_note_1): Formatting.
1915 * elfcode.h (elf_object_p): Use bfd_alloc2.
1916 (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise.
1917 (elf_slurp_symbol_table): Use bfd_zalloc2.
1918 (elf_slurp_reloc_table): Use bfd_alloc2.
1919 (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2.
1920 * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure
1921 size calculation doesn't overflow.
1922 (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise.
1923 * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
1924 * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version.
1925
ebd2263b
AM
19262019-03-08 Alan Modra <amodra@gmail.com>
1927
1928 PR 24311
1929 * merge.c (merge_strings): Return secinfo. Don't pad section
1930 to alignment here.
1931 (_bfd_merge_sections): Pad section to alignment here, if input
1932 sections contributing to merged output all pad to alignment.
1933 Formatting.
1934
219d6836
NC
19352019-03-06 Nick Clifton <nickc@redhat.com>
1936
1937 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Check for a NULL symbol
1938 table pointer.
1939 * coffgen.c (coff_find_nearest_line_with_names): Do not call
1940 _bfd_dwarf2_find_symbol_bias if there is no symbol table available.
1941
24801b15
AK
19422019-03-01 Andreas Krebbel <krebbel@linux.ibm.com>
1943
1944 This reverts commit 5a12586d44fa8d5dfc74cbca4f2f36a273a16335.
1945 2019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
1946
1947 PR 20113
1948 * elf32-s390.c (allocate_dynrelocs): Update comment.
1949
4ffd2909
TC
19502019-02-28 Tamar Christina <tamar.christina@arm.com>
1951
1952 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct CIE parse.
1953
eed5def8
NC
19542019-02-28 Nick Clifton <nickc@redhat.com>
1955
1956 PR 24273
1957 * elf.c (bfd_elf_string_from_elf_section): Check for a string
1958 section that is not NUL terminated.
1959
5cfe428c
L
19602019-02-27 H.J. Lu <hongjiu.lu@intel.com>
1961
1962 PR ld/24276
1963 * elf64-x86-64.c (elf_x86_64_check_relocs): Skip symbol defined
1964 by linker when checking copy reloc on protected symbol.
1965
f616c36b
AM
19662019-02-24 Alan Modra <amodra@gmail.com>
1967
1968 PR 24144
1969 * pdp11.c (set_section_contents): Revert 2015-02-24 change.
1970
eed62915
MF
19712019-02-20 Eric Tsai <erictsai@cadence.com>
1972
1973 * elf32-xtensa.c (is_resolvable_asm_expansion): Scan output
1974 sections between the call site and call destination and adjust
1975 call distance by the largest alignment.
1976
e6c3b5bf
AH
19772019-02-20 Alan Hayward <alan.hayward@arm.com>
1978
1979 * elf-bfd.h (elfcore_write_aarch_pauth): Add declaration.
1980 * elf.c (elfcore_grok_aarch_pauth): New function.
1981 (elfcore_grok_note): Check for NT_ARM_PAC_MASK.
1982 (elfcore_write_aarch_pauth): New function.
1983 (elfcore_write_register_note): Check for AArch64 pauth section.
1984
34d75fb5
AM
19852019-02-20 Alan Modra <amodra@gmail.com>
1986
1987 PR 24225
1988 * elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
1989 return value.
1990
edd01d07
MR
19912019-02-20 Michael Roitzsch <reactorcontrol@icloud.com>
1992
1993 * configure.ac (SHARED_LIBADD): Add -liberty -lintl for all
1994 Darwin hosts, not just or1k.
1995 * configure: Regenerate.
1996
8abac803
AM
19972019-02-20 Alan Modra <amodra@gmail.com>
1998
1999 PR 24236
2000 * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
2001 sentinel NUL to string buffer nearer to loop where it is used.
2002 Don't go past sentinel when scanning strings, and don't write
2003 NUL again.
2004 * archive.c (do_slurp_coff_armap): Simplify string handling to
2005 archive64.c style.
2006
179f2db0
AM
20072019-02-19 Alan Modra <amodra@gmail.com>
2008
2009 PR 24235
2010 * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
2011 attempting to prevent read past end of section.
2012
a31b8bd9
AM
20132019-02-18 Alan Modra <amodra@gmail.com>
2014
2015 PR 24225
2016 * elf32-nios2.c (nios2_elf32_relocate_section): Use asprintf and
2017 PRIx64 to generate warning messages. Print local sym names too.
2018
a0e90a73
CZ
20192019-02-09 Vineet Gupta <vgupta@synopsys.com>
2020
2021 * elf32-arc (INIT_SYM_STRING): Delete.
2022 (FINI_SYM_STRING): Likewise.
2023 (init_str): Likewise.
2024 (fini_str): Likewise.
2025
482f3505
AM
20262019-02-08 Alan Modra <amodra@gmail.com>
2027
2028 * elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
2029 for bss-plt" warning to make it an error.
2030
b2abe1bd
EB
20312019-02-07 Eric Botcazou <ebotcazou@adacore.com>
2032
2033 PR ld/18841
2034 * elf32-sparc.c (elf32_sparc_reloc_type_class): Return
2035 reloc_class_ifunc for ifunc symbols.
2036 * elf64-sparc.c (elf64_sparc_reloc_type_class): Likewise.
2037
68a09132
EB
20382019-02-07 Eric Botcazou <ebotcazou@adacore.com>
2039
2040 * elf32-visium.c (visium_elf_howto_parity_reloc): Minor tweak.
2041 <R_VISIUM_PC16>: Use explicit range test to detect an overflow.
2042
2012bf01
NC
20432019-02-07 Nick Clifton <nickc@redhat.com>
2044
2045 * config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
2046 into the definitely obsolete list.
2047
83924b38
L
20482019-02-05 H.J. Lu <hongjiu.lu@intel.com>
2049
2050 PR ld/24151
2051 * elf64-x86-64.c (elf_x86_64_need_pic): Check
2052 SYMBOL_DEFINED_NON_SHARED_P instead of def_regular.
2053 (elf_x86_64_relocate_section): Move PIC check for PC-relative
2054 relocations to ...
2055 (elf_x86_64_check_relocs): Here.
2056 (elf_x86_64_finish_dynamic_symbol): Use SYMBOL_DEFINED_NON_SHARED_P
2057 to check if a symbol is defined in a non-shared object.
2058 * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): New.
2059
453f8e1e
SDJ
20602019-01-21 Sergio Durigan Junior <sergiodj@redhat.com>
2061
2062 * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
2063 of 'labs' (and fix GCC warning).
2064
9ed1348c
NC
20652019-01-25 Nick Clifton <nickc@redhat.com>
2066
2067 * po/ru.po: Updated Russian translation.
2068
d9938630
NC
20692019-01-23 Nick Clifton <nickc@redhat.com>
2070
2071 * po/fr.po: Updated French translation.
2072
375cd423
NC
20732019-01-21 Nick Clifton <nickc@redhat.com>
2074
2075 * po/pt.po: Updated Portuguese translation.
2076 * po/uk.po: Updated Ukranian translation.
2077
acef8081
YC
20782019-01-21 Yuri Chornoivan <yurchor@ukr.net>
2079
2080 PR 24108
2081 * elf32-nds32.c (nds32_relocate_section): Add space between words
2082 in error message.
2083 * elfnn-riscv.c (riscv_version_mismatch): Fix spelling mistake in
2084 error message.
2085 (riscv_i_or_e_p): Likewise.
2086 (riscv_merge_arch_attr_info): Likewise.
2087
f48dfe41
NC
20882019-01-19 Nick Clifton <nickc@redhat.com>
2089
2090 * version.m4: Reset to 2.32.51
2091 * configure: Regenerate.
2092 * po/bfd.pot: Regenerate.
2093
f974f26c
NC
20942018-06-24 Nick Clifton <nickc@redhat.com>
2095
2096 2.32 branch created.
2097
a4bf3d07
JW
20982019-01-16 Kito Cheng <kito@andestech.com>
2099
2100 * elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
2101 for OBJ_ATTR_PROC.
2102
2dc8dd17
JW
21032019-01-16 Kito Cheng <kito@andestech.com>
2104 Nelson Chu <nelson@andestech.com>
2105
7d7a7d7c
JW
2106 * elfnn-riscv.c (in_subsets): New.
2107 (out_subsets): Likewise.
2108 (merged_subsets): Likewise.
2109 (riscv_std_ext_p): Likewise.
2110 (riscv_non_std_ext_p): Likewise.
2111 (riscv_std_sv_ext_p): Likewise.
2112 (riscv_non_std_sv_ext_p): Likewise.
2113 (riscv_version_mismatch): Likewise.
2114 (riscv_i_or_e_p): Likewise.
2115 (riscv_merge_std_ext): Likewise.
2116 (riscv_merge_non_std_and_sv_ext): Likewise.
2117 (riscv_merge_arch_attr_info): Likewise.
2118 (riscv_merge_attributes): Likewise.
2119 (_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.
2120
2dc8dd17
JW
2121 * elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
2122 (elf_backend_obj_attrs_vendor): Define.
2123 (elf_backend_obj_attrs_section_type): Likewise.
2124 (elf_backend_obj_attrs_section): Likewise.
2125 (elf_backend_obj_attrs_arg_type): Define as
2126 riscv_elf_obj_attrs_arg_type.
2127 * elfxx-riscv.c (riscv_estimate_digit): New.
2128 (riscv_estimate_arch_strlen1): Likewise.
2129 (riscv_estimate_arch_strlen): Likewise.
2130 (riscv_arch_str1): Likewise.
2131 (riscv_arch_str): Likewise.
2132 * elfxx-riscv.h (riscv_arch_str): Declare.
2133
d5dcaf1b
JD
21342019-01-14 John Darrington <john@darrington.wattle.id.au>
2135
2136 * bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
2137 * libbfd.h: regen.
2138 * elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
2139 source field. (md_apply_fix): Apply final fix
2140 to BFD_RELOC_S12Z_OPR.
2141 * reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.
2142
5a12586d
MT
21432019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
2144
f466c305 2145 PR 20113
5a12586d
MT
2146 * elf32-s390.c (allocate_dynrelocs): Update comment.
2147
3107326d
AP
21482019-01-09 Andrew Paprocki <andrew@ishiboo.com>
2149
2150 * warning.m4: Adjust egrep pattern for non-GNU compilers.
2151 * configure: Regenerate.
2152
a9859e01
AM
21532019-01-08 Alan Modra <amodra@gmail.com>
2154
2155 PR 23699
2156 PR 24065
2157 * ihex.c (ihex_write_object_contents): Properly check 32-bit
2158 address range.
2159
c8c89dac
YS
21602019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
2161
2162 * bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
2163 * bfd/bfd-in2.h: Regenerate.
2164 * bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
2165 * bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.
2166
d9858c37
LX
21672019-01-04 Lifang Xia <lifang_xia@c-sky.com>
2168
2169 * config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
2170 default target, little endian target is more suitable.
2171
677bd4c6
AM
21722019-01-04 Alan Modra <amodra@gmail.com>
2173
2174 PR 24061
2175 PR 21786
2176 * coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
2177 adjust all callers.
2178 (EQ_VALUE_IN_FIELD): Likewise.
2179 * coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.
2180
82704155
AM
21812019-01-01 Alan Modra <amodra@gmail.com>
2182
2183 Update year range in copyright notice of all files.
2184
d5c04e1b 2185For older changes see ChangeLog-2018
3499769a 2186\f
d5c04e1b 2187Copyright (C) 2019 Free Software Foundation, Inc.
3499769a
AM
2188
2189Copying and distribution of this file, with or without modification,
2190are permitted in any medium without royalty provided the copyright
2191notice and this notice are preserved.
2192
2193Local Variables:
2194mode: change-log
2195left-margin: 8
2196fill-column: 74
2197version-control: never
2198End: