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