]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
ARM CMSE symbols
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
baf46cd7
AM
12019-08-22 Alan Modra <amodra@gmail.com>
2
3 * elf32-arm.c (cmse_scan): Don't use ARM_GET_SYM_CMSE_SPCL,
4 instead recognize CMSE_PREFIX in symbol name.
5 (elf32_arm_gc_mark_extra_sections): Likewise.
6 (elf32_arm_filter_cmse_symbols): Don't test ARM_GET_SYM_CMSE_SPCL.
7 (elf32_arm_swap_symbol_in): Don't invoke ARM_SET_SYM_CMSE_SPCL.
8
546053ac
DZ
92019-08-20 Dennis Zhang <dennis.zhang@arm.com>
10
11 * cpu-aarch64.c: New entries for Cortex-A34, Cortex-A65,
12 Cortex-A77, cortex-A65AE, and Cortex-A76AE.
13
b4e87f2c
TC
142019-08-20 Tamar Christina <tamar.christina@arm.com>
15
16 * elf32-arm.c (elf32_thumb2_plt_entry, elf32_arm_plt_thumb_stub,
17 elf32_arm_stub_long_branch_v4t_thumb_thumb,
18 elf32_arm_stub_long_branch_v4t_thumb_arm,
19 elf32_arm_stub_short_branch_v4t_thumb_arm,
20 elf32_arm_stub_long_branch_v4t_thumb_arm_pic,
21 elf32_arm_stub_long_branch_v4t_thumb_thumb_pic,
22 elf32_arm_stub_long_branch_v4t_thumb_tls_pic): Change nop to branch to
23 previous instruction.
24
3eb185c9
TT
252019-08-19 Tom Tromey <tromey@adacore.com>
26
27 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Create hash table
28 holding symbols.
29
903b777d
AM
302019-08-19 Alan Modra <amodra@gmail.com>
31
32 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Rename has_gotrel
33 to has_optrel.
34 (struct _ppc64_elf_section_data): Likewise.
35 (ppc64_elf_check_relocs): Set has_optrel for more relocs.
36 (ppc64_elf_edit_toc): Do ha/lo insn checks in GOT loop rather
37 than TOC loop. Check PLT16 insns too.
38
81e8046d
L
392019-08-16 H.J. Lu <hongjiu.lu@intel.com>
40
41 PR ld/24905
42 * elf64-x86-64.c (elf_x86_64_check_relocs): Move PIC check for
43 PC-relative relocations back to ...
44 (elf_x86_64_relocate_section): Here.
45
b4c555cf
ML
462019-08-16 Martin Liska <mliska@suse.cz>
47
48 PR ld/24912
49 * elflink.c: Report error only for not relocatable.
50 * linker.c (_bfd_generic_link_add_one_symbol): Do not handle
51 here lto_slim_object as it's handled in caller.
52
63f6e94f
AM
532019-08-16 Alan Modra <amodra@gmail.com>
54
55 * elf32-ppc.c (ppc_elf_relocate_section): Optimize unaligned relocs.
56
080a4883
JW
572019-08-15 Jim Wilson <jimw@sifive.com>
58
59 * elfnn-riscv.c (perform_relocation) <R_RISCV_RVC_LUI>: If
60 RISCV_CONST_HIGH_PART (value) is zero, then convert c.lui instruction
61 to c.li instruction, and use ENCODE_RVC_IMM to set value.
62
05192282
TT
632019-08-15 Tom Tromey <tromey@adacore.com>
64
65 * dwarf2.c (scan_unit_for_symbols): Check for end of CU, not end
66 of section.
67
dfc19da6
AM
682019-08-14 Alan Modra <amodra@gmail.com>
69
70 PR 24623
71 * dwarf2.c (stash_comp_unit): New function, extracted from..
72 (_bfd_dwarf2_find_nearest_line): ..here.
73 (find_abstract_instance): Parse comp units and decode line info
74 as needed.
75
c327a44f
AM
762019-08-14 Alan Modra <amodra@gmail.com>
77
78 * dwarf2.c (comp_unit_maybe_decode_line_info): Declare.
79 (comp_unit_find_nearest_line): Use it here..
80 (_bfd_dwarf2_find_symbol_bias): ..and here.
81
9defd221
AM
822019-08-14 Alan Modra <amodra@gmail.com>
83
84 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove addr_size parameter.
85 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype.
86 * coffgen.c (coff_find_nearest_line_with_names): Adjust
87 _bfd_dwarf2_find_nearest_line calls.
88 * elf.c (_bfd_elf_find_nearest_line, _bfd_elf_find_line): Likewise.
89 * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
90 * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
91 * elfnn-aarch64.c (elfNN_aarch64_find_nearest_line): Likewise.
92 * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
93 * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
94 * libbfd.h: Regenerate.
95
f16a9783
MS
962019-08-09 Mihailo Stojanovic <mihailo.stojanovic@rt-rk.com>
97
98 * elf-bfd.h (struct elf_backend_data): New members.
99 * elflink.c (_bfd_elf_link_create_dynamic_sections): Create
100 .gnu.hash section if necessary.
101 (struct collect_gnu_hash_codes): New member.
102 (elf_gnu_hash_process_symidx): New function name.
103 (elf_renumber_gnu_hash_syms): Ignore local and undefined
104 symbols. Record xlat location for every symbol which should have
105 a .MIPS.xhash entry.
106 (bfd_elf_size_dynamic_sections): Add DT_GNU_HASH dynamic tag to
107 dynamic section if necessary.
108 (GNU_HASH_SECTION_NAME): New define.
109 (bfd_elf_size_dynsym_hash_dynstr): Get .MIPS.xhash section.
110 Update the section size info.
111 * elfxx-mips.c (struct mips_elf_hash_sort_data): New members.
112 (struct mips_elf_link_hash_entry): New member.
113 (mips_elf_link_hash_newfunc): Initialize .MIPS.xhash translation
114 table location.
115 (mips_elf_sort_hash_table): Initialize the pointer to the
116 .MIPS.xhash section.
117 (mips_elf_sort_hash_table_f): Populate the .MIPS.xhash
118 translation table entry with the symbol dynindx.
119 (_bfd_mips_elf_section_from_shdr): Add SHT_MIPS_XHASH.
120 (_bfd_mips_elf_fake_sections): Initialize .MIPS.xhash section
121 info.
122 (_bfd_mips_elf_create_dynamic_sections): Create .MIPS.xhash
123 section.
124 (_bfd_mips_elf_size_dynamic_sections): Add DT_MIPS_XHASH tag to
125 dynamic section.
126 (_bfd_mips_elf_finish_synamic_sections): Add DT_MIPS_XHASH.
127 (_bfd_mips_elf_final_write_processing): Set .MIPS.xhash section
128 sh_link info.
129 (_bfd_mips_elf_get_target_dtag): Get DT_MIPS_XHASH tag.
130 (MIPS_LIBC_ABI_XHASH): New ABI version enum value.
131 (_bfd_mips_post_process_headers): Mark the ABI version as
132 MIPS_LIBC_ABI_XHASH if there exists a .MIPS.xhash section,
133 but not a .hash section.
134 (_bfd_mips_elf_record_xhash_symbol): New function. Record a
135 position in the translation table, associated with the hash
136 entry.
137 * elfxx-mips.h (literal_reloc_p): Define
138 elf_backend_record_xhash_symbol backend hook.
139 * elfxx-target.h: Initialize elf_backend_record_xhash_symbol
140 backend hook.
141
fc8de8e2
JM
1422019-08-07 Jose E. Marchesi <jose.marchesi@oracle.com>
143
144 * elf64-bpf.c (bpf_elf_relocate_section): New function.
145 (bpf_elf_insn_disp_reloc): Delete function.
146 (elf_backend_relocate_section): Define.
147
97b031c5
AM
1482019-08-07 Alan Modra <amodra@gmail.com>
149
150 PR 24644
151 * archive64.c (_bfd_archive_64_bit_slurp_armap): Properly check
152 for overflow in expressions involving nsymz.
153
0f52d45a
JW
1542019-08-01 Ilia Diachkov <ilia.diachkov@optimitech.com>
155
156 * elfnn-riscv.c (_bfd_riscv_relax_lui): Set lui relax safety area to
157 two pages in relro presence.
158
e0d0c518
MF
1592019-08-01 Max Filippov <jcmvbkbc@gmail.com>
160
161 * elf32-xtensa.c (insn_num_slots, get_rsr_lend_opcode)
162 (get_wsr_lbeg_opcode): New functions.
163 (check_loop_aligned): Detect relaxed loops and adjust loop_len
164 and insn_len for the first actual instruction of the loop.
165
34d5c40a
AM
1662019-07-30 Alan Modra <amodra@gmail.com>
167
168 PR 24768
169 * bfd.c (struct bfd): Add lto_slim_object flag.
170 * bfd-in2.h: Regenerate.
171
cc5277b1
ML
1722019-07-29 Martin Liska <mliska@suse.cz>
173
174 PR 24768
175 * archive.c (_bfd_compute_and_write_armap): Come up with
176 report_plugin_err variable.
177 * bfd-in2.h (struct bfd): Add lto_slim_object flag.
178 * elf.c (struct lto_section): New.
179 (_bfd_elf_make_section_from_shdr): Parse content of
180 .gnu_lto_.lto section.
181 * elflink.c: Report error for a missing LTO plugin.
182 * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
183
4538d1c7
AM
1842019-07-28 Alan Modra <amodra@gmail.com>
185
186 PR 24857
187 PR 24339
188 * elflink.c (elf_link_add_object_symbols): Report an informative
189 error on finding local symbols with index equal or greater than
190 symbol table sh_info. Correct comment. Allow such symbols in
191 dynamic objects. Abort on NULL section for symbol.
192
6dd17ae0
AM
1932019-07-26 Alan Modra <amodra@gmail.com>
194
195 * elf-bfd.h (struct output_elf_obj_tdata): Delete "linker" field.
196 (elf_linker): Don't define.
197 * elflink.c (bfd_elf_final_link): Don't set elf_linker.
198
c7c860d2
YS
1992019-07-25 YunQiang Su <syq@debian.org>
200
201 PR 24832
202 * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
203 mips inputs.
204
95967518
CZ
2052019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
206
207 * elf32-arc.c (bfd_get_32_me): Add a small description, fix
208 formating.
209 (reloc_type_to_name): Fix formating.
210 (arc_elf_object_p): Likewise.
211 (debug_arc_reloc): Likewise.
212 (arc_do_relocation): Likewise.
213
ef551643
CZ
2142019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
215
216 * elf32-arc.c (bfd_get_32_me): New function.
217 (bfd_put_32_me): Likewise.
218 (arc_elf_relax_section): Likewise.
219 (bfd_elf32_bfd_relax_section): Define.
220
cc364be6
AM
2212019-07-24 Alan Modra <amodra@gmail.com>
222
223 * elf-bfd.h (struct elf_backend_data): Return bfd_boolean from
224 elf_backend_final_write_processing, don't pass linker arg.
225 (_bfd_elf_final_write_processing): Update prototype.
226 * elf.c (_bfd_elf_write_object_contents): Adjust call.
227 (_bfd_elf_final_write_processing): Return error on incompatible
228 OSABI and has_gnu_osabi. Remove linker arg.
229 * elf-nacl.h (nacl_final_write_processing): Update prototype.
230 * elf-vxworks.h (elf_vxworks_final_write_processing): Likewise.
231 * elfxx-mips.h (_bfd_mips_final_write_processing): Likewise.
232 (_bfd_mips_elf_final_write_processing): Likewise.
233 * elf-hppa.h (elf_hppa_final_write_processing): Return status
234 and remove linker arg.
235 * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
236 * elf-nacl.c (nacl_final_write_processing): Likewise.
237 * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
238 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
239 * elf32-arm.c (arm_final_write_processing): Likewise.
240 (elf32_arm_final_write_processing): Likewise.
241 (elf32_arm_nacl_final_write_processing): Likewise.
242 (elf32_arm_vxworks_final_write_processing): Likewise.
243 * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
244 * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
245 * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
246 * elf32-cris.c (cris_elf_final_write_processing): Likewise.
247 * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
248 * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
249 * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
250 * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
251 * elf32-mips.c (mips_vxworks_final_write_processing): Likewise.
252 * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
253 * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
254 * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
255 * elf32-pj.c (pj_elf_final_write_processing): Likewise.
256 * elf32-ppc.c (ppc_final_write_processing): Likewise.
257 (ppc_elf_final_write_processing): Likewise.
258 (ppc_elf_vxworks_final_write_processing): Likewise.
259 * elf32-sparc.c (sparc_final_write_processing): Likewise.
260 (elf32_sparc_final_write_processing): Likewise.
261 (elf32_sparc_vxworks_final_write_processing): Likewise.
262 * elf32-v850.c (v850_elf_final_write_processing): Likewise.
263 * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
264 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
265 * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
266 * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
267 * elfxx-mips.c (_bfd_mips_final_write_processing): Likewise.
268 (_bfd_mips_elf_final_write_processing): Likewise.
269
c5e20471
AM
2702019-07-24 Alan Modra <amodra@gmail.com>
271
272 * elf-vxworks.c (elf_vxworks_final_write_processing): Don't return
273 early.
274 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
275 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
276
7613ca5e
AM
2772019-07-24 Alan Modra <amodra@gmail.com>
278
279 * elf32-visium.c (visium_elf_post_process_headers): Don't set
280 EI_OSABI header byte here.
281 (ELF_OSABI): Define.
282
df3a023b
AM
2832019-07-23 Alan Modra <amodra@gmail.com>
284
285 * elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_mbind.
286 * elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_mbind.
287 (get_program_header_size): Formatting. Only test SH_GNU_MBIND
288 when elf_gnu_osabi_mbind is set.
289 (_bfd_elf_map_sections_to_segments): Likewise.
290 (_bfd_elf_init_private_section_data): Likewise.
291 (_bfd_elf_final_write_processing): Update comment.
292 * elf64-hppa.c (elf64_hppa_special_sections): Move .tbss entry.
293 (elf_backend_special_sections): Define without .tbss for linux.
294
06f44071
AM
2952019-07-23 Alan Modra <amodra@gmail.com>
296
297 * elf-bfd.h (enum elf_gnu_osabi): Rename from elf_gnu_symbols.
298 Remove none, any, all enums.
299 (struct elf_obj_tdata): Rename has_gnu_symbols field to has_gnu_osabi.
300 (_bfd_elf_final_write_processing): Declare.
301 * elf.c (_bfd_elf_write_object_contents): Unconditionally call
302 elf_backend_final_write_processing.
303 (_bfd_elf_post_process_headers): Move body of function to..
304 (_bfd_elf_final_write_processing): ..here, but set EI_OSABI byte
305 only when not already set. Adjust for rename.
306 * elfxx-target.h (elf_backend_final_write_processing): Default to
307 _bfd_elf_final_write_processing.
308 * elf-hppa.h (elf_hppa_final_write_processing): Call
309 _bfd_elf_final_write_processing.
310 * elf-m10300.c (_bfd_mn10300_elf_final_write_processing): Likewise.
311 * elf-nacl.c (nacl_final_write_processing): Likewise.
312 * elf-vxworks.c (elf_vxworks_final_write_processing): Likewise.
313 * elf32-arc.c (arc_elf_final_write_processing): Likewise.
314 * elf32-avr.c (bfd_elf_avr_final_write_processing): Likewise.
315 * elf32-bfin.c (elf32_bfin_final_write_processing): Likewise.
316 * elf32-cr16.c (_bfd_cr16_elf_final_write_processing): Likewise.
317 * elf32-cris.c (cris_elf_final_write_processing): Likewise.
318 * elf32-h8300.c (elf32_h8_final_write_processing): Likewise.
319 * elf32-lm32.c (lm32_elf_final_write_processing): Likewise.
320 * elf32-m32r.c (m32r_elf_final_write_processing): Likewise.
321 * elf32-m68k.c (elf_m68k_final_write_processing): Likewise.
322 * elf32-msp430.c (bfd_elf_msp430_final_write_processing): Likewise.
323 * elf32-nds32.c (nds32_elf_final_write_processing): Likewise.
324 * elf32-or1k.c (or1k_elf_final_write_processing): Likewise.
325 * elf32-pj.c (pj_elf_final_write_processing): Likewise.
326 * elf32-v850.c (v850_elf_final_write_processing): Likewise.
327 * elf32-xc16x.c (elf32_xc16x_final_write_processing): Likewise.
328 * elf32-xtensa.c (elf_xtensa_final_write_processing): Likewise.
329 * elf64-ia64-vms.c (elf64_vms_final_write_processing): Likewise.
330 * elfnn-ia64.c (elfNN_ia64_final_write_processing): Likewise.
331 * elf32-arm.c (arm_final_write_processing): Split out from..
332 (elf32_arm_final_write_processing): ..here. Call
333 _bfd_elf_final_write_processing.
334 (elf32_arm_nacl_final_write_processing): Adjust.
335 * elfxx-mips.c (_bfd_mips_final_write_processing): Split out from..
336 (_bfd_mips_elf_final_write_processing): ..here. Call
337 _bfd_elf_final_write_processing.
338 * elfxx-mips.h (_bfd_mips_final_write_processing): Declare.
339 * elf32-mips.c (mips_vxworks_final_write_processing): Adjust.
340 * elf32-ppc.c (ppc_final_write_processing): Split out from..
341 (ppc_elf_final_write_processing): ..here. Call
342 _bfd_elf_final_write_processing.
343 (ppc_elf_vxworks_final_write_processing): Adjust.
344 * elf32-sparc.c (sparc_final_write_processing): Split out from..
345 (elf32_sparc_final_write_processing): ..here. Call
346 _bfd_elf_final_write_processing.
347 (elf32_sparc_vxworks_final_write_processing): Adjust.
348 * elf32-d10v.c (elf_backend_final_write_processing): Don't define.
349 * elf32-d30v.c (elf_backend_final_write_processing): Don't define.
350 * elf32-m68hc11.c (elf_backend_final_write_processing): Don't define.
351 * elf32-m68hc12.c (elf_backend_final_write_processing): Don't define.
352 * elf32-s12z.c (elf_backend_final_write_processing): Don't define.
353 * elf32-i386.c (elf_i386_check_relocs): Don't set has_gnu_symbols.
354 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
355 * elflink.c (elf_link_add_object_symbols): Likewise.
356 (elf_link_output_symstrtab): Set has_gnu_osabi for symbols here
357 instead.
358
1dd1bc4d
OM
3592019-07-23 Omar Majid <omajid@redhat.com>
360
361 * coffcode.h (coff_set_arch_mach_hook): Handle I386_APPLE_MAGIC,
362 I386_FREEBSD_MAGIC, I386_LINUX_MAGIC, I386_NETBSD_MAGIC,
363 AMD64_APPLE_MAGIC, AMD64_FREEBSD_MAGIC, AMD64_LINUX_MAGIC,
364 AMD64_NETBSD_MAGIC.
365 * peXXigen.c: Add comment about source of .NET magic numbers.
366
c213164a
AM
3672019-07-19 Alan Modra <amodra@gmail.com>
368
369 * reloc.c (BFD_RELOC_PPC64_TPREL34, BFD_RELOC_PPC64_DTPREL34),
370 (BFD_RELOC_PPC64_GOT_TLSGD34, BFD_RELOC_PPC64_GOT_TLSLD34),
371 (BFD_RELOC_PPC64_GOT_TPREL34, BFD_RELOC_PPC64_GOT_DTPREL34),
372 (BFD_RELOC_PPC64_TLS_PCREL): New pcrel tls relocs.
373 * elf64-ppc.c (ppc64_elf_howto_raw): Add howtos for pcrel tls relocs.
374 (ppc64_elf_reloc_type_lookup): Translate pcrel tls relocs.
375 (must_be_dyn_reloc, dec_dynrel_count): Add R_PPC64_TPREL64.
376 (ppc64_elf_check_relocs): Support pcrel tls relocs.
377 (ppc64_elf_tls_optimize, ppc64_elf_relocate_section): Likewise.
378 * bfd-in2.h: Regenerate.
379 * libbfd.h: Regenerate.
380
71c4e95a
AM
3812019-07-18 Alan Modra <amodra@gmail.com>
382
383 * elf64-ppc.c (ppc64_elf_relocate_section): Don't bother selecting
384 a TLS section symbol for edited relocs. Tighten TLS symbol/reloc
385 match test.
386
46e9995a
AM
3872019-07-18 Alan Modra <amodra@gmail.com>
388
389 * elf64-ppc.c (TLS_EXPLICIT): Define as 256.
390 (ppc64_elf_check_relocs): Don't store TLS_EXPLICIT even if char
391 is more than 8 bits.
392 (ppc64_elf_tls_optimize): Likewise. Make tls_set, tls_clear, and
393 tls_type vars unsigned int.
394 (ppc64_elf_relocate_section): Use r_type rather than TLS_EXPLICIT
395 to select r_type edit.
396
b00a0a86
AM
3972019-07-18 Alan Modra <amodra@gmail.com>
398
399 * elf32-ppc.c (TLS_GDIE): Rename from TLS_TPRELGD throughout file.
400 Correct comment.
401 * elf64-ppc.c (TLS_GDIE): Likewise.
402
0b147428
AM
4032019-07-18 Alan Modra <amodra@gmail.com>
404
405 * elf64-ppc.c (ppc64_elf_tls_optimize): Correct test for allowed
406 range of tp-relative offsets.
407
5b9d7a9a
AM
4082019-07-15 Alan Modra <amodra@gmail.com>
409
410 * elflink.c (_bfd_elf_fix_symbol_flags): If the def for an
411 alias is no longer bfd_link_hash_defined, clear the alias.
412
f26a3287
AM
4132019-07-13 Alan Modra <amodra@gmail.com>
414
415 * elflink.c (_bfd_elf_omit_section_dynsym_default): Don't keep
416 tls_sec.
417 (_bfd_elf_init_1_index_section): Prefer not using TLS sections.
418 (_bfd_elf_init_2_index_sections): Likewise.
419 * elf64-ppc.c (ppc64_elf_relocate_section): When emitting dynamic
420 relocations for local TLS symbols, use STN_UNDEF as the relocation
421 symbol.
422 * elf32-ppc.c (ppc_elf_relocate_section): Likewise, and don't
423 leave TLS symbol value in the addend.
424
62a47958
AM
4252019-07-08 Alan Modra <amodra@gmail.com>
426
427 PR 24785
428 * elf32-ppc.c (_bfd_elf_ppc_set_arch): Sanity check .PPC.EMB.apuinfo
429 size before reading first word.
430
1faa385f
NC
4312019-07-02 Nick Clifton <nickc@redhat.com>
432
433 PR 24717
434 * elf.c (is_debuginfo_file): New function.
435 (assign_file_positions_for_non_load_sections): Do not warn about
436 allocated sections outside of loadable segments if they are found
437 in a debuginfo file.
438 * elf-bfd.h (is_debuginfo_file): Prototype.
439
125f83f6
NC
4402019-07-02 Nick Clifton <nickc@redhat.com>
441
442 PR 24753
443 * compress.c (bfd_get_full_section_contents): Do not complain
444 about linker created sections that are larger than the file size.
445
4d83e8d9
CL
4462019-07-02 Christophe Lyon <christophe.lyon@linaro.org>
447
448 * bfd/elf32-arm.c (CMSE_STUB_NAME): New define.
449 (elf32_arm_get_stub_entry): Do not try to emit long-branch stubs
450 for CMSE stubs.
451 (arm_dedicated_stub_output_section_name): Use CMSE_STUB_NAME.
452
bb32413f
SP
4532019-07-02 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
454
455 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Mark debug
456 sections when .text section contain secure entry functions
457 is marked.
458
539300fb
NC
4592019-07-01 Nick Clifton <nickc@redhat.com>
460
461 PR 23839
462 * elf32-arm.c (elf32_arm_update_relocs): Do not include the
463 section VMA in the offset used to update exidx relocs.
464
7e56c51c
NC
4652019-06-28 Nick Clifton <nickc@redhat.com>
466
467 PR 24708
468 * elf.c (_bfd_elf_slurp_version_tables): Check for an excessively
469 large version reference section.
470 * compress.c (bfd_get_full_section_contents): Check for an
471 uncompressed section whose size is larger than the file size.
472
999d6dff
AM
4732019-06-28 Alan Modra <amodra@gmail.com>
474
475 * format.c (bfd_check_format_matches): Don't match plugin target
476 if another target matches. Expand comment.
477 * targets.c (_bfd_target_vector): Move plugin_vec after all other
478 non-corefile targets, outside !SELECT_VECS.
479 * config.bfd: Don't handle targ=plugin here.
480 * configure.ac: Don't add plugin to enable_targets or handle in
481 target loop setting selvecs and other target vars.
482 * configure: Regenerate.
483
a68aa5d3
NC
4842019-06-26 Nick Clifton <nickc@redhat.com>
485
486 PR 24703
487 * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add error
488 messages for failures.
489 * mach-o.c (bfd_mach_o_canonicalize_relocs): Set an bfd error code
490 if returning an error value.
491
ab9f654c
JB
4922019-06-25 Jan Beulich <jbeulich@suse.com>
493
494 * elf-properties.c (elf_find_and_remove_property): Rename last
495 parameter. Mention it in comment.
496
04b865dc
JW
4972019-06-24 Ilia Diachkov <ilia.diachkov@optimitech.com>
498
499 * elfnn-riscv.c (_bfd_riscv_relax_lui): Delete early exit when
500 SEC_MERGE or SEC_CODE flags are set.
501 (_bfd_riscv_relax_section): New local symtype. Set sym_sec and
502 symtype consistently. Don't include sec_addr (sym_sec) in symval.
503 Add check for SEC_INFO_TYPE_MERGE and call _bfd_merged_section_offset.
504 Add sec_addr (sym_sec) after handling merge sections.
505
f93ab3a0
L
5062019-06-24 H.J. Lu <hongjiu.lu@intel.com>
507
508 PR ld/24721
509 * elf-properties.c (elf_merge_gnu_property_list): Remove the
510 property after reporting property removal.
511
bb22a418
AM
5122019-06-23 Alan Modra <amodra@gmail.com>
513
514 PR 24704
515 * elf64-ppc.c (R_PPC64_GOT16_DS): Don't set has_gotrel.
516 (ppc64_elf_edit_toc): Don't remove R_PPC64_GOT16_DS got entries.
517 Reduce range of offsets allowed for other GOT relocs.
518
14b2a8e4
AM
5192019-06-23 Alan Modra <amodra@gmail.com>
520
521 PR 24689
522 * elfcode.h (elf_object_p): Warning fix.
523
890f750a
AM
5242019-06-21 Alan Modra <amodra@gmail.com>
525
526 PR 24689
527 * elfcode.h (elf_object_p): Check type of e_shstrndx section.
528
6f5601c4
AM
5292019-06-19 Alan Modra <amodra@gmail.com>
530
531 PR 24697
532 * elf32-ppc.c (ppc_elf_relocate_section): Don't read insn for
533 R_PPC_EMB_RELSDA. Mask low bit of R_PPC_EMB_SDA21 r_offset.
534
4a4e7361
AM
5352019-06-19 Alan Modra <amodra@gmail.com>
536
537 * elf64-ppc.c (ppc64_elf_inline_plt): Correct st_other test for
538 functions that require r2 valid to use local entry.
539 (ppc64_elf_size_stubs, ppc64_elf_relocate_section): Likewise.
540
39c05d94
SN
5412019-06-17 Szabolcs Nagy <szabolcs.nagy@arm.com>
542
543 * elfnn-aarch64.c (elfNN_aarch64_allocate_local_dynrelocs): Remove.
544 (elfNN_aarch64_size_dynamic_sections): Remove loc_hash_table traversal
545 with elfNN_aarch64_allocate_local_dynrelocs.
546
e30d1fa1
SN
5472019-06-14 Szabolcs Nagy <szabolcs.nagy@arm.com>
548
549 * elfnn-aarch64.c: Enable MOVW_PREL relocs for ELF32.
550
3a3a077c
AM
5512019-06-14 Alan Modra <amodra@gmail.com>
552
553 * Makefile.in: Regenerate.
554 * configure: Regenerate.
555
d4b87b1e
AM
5562019-06-14 Alan Modra <amodra@gmail.com>
557
558 * elf64-ppc.c: Fix comments involving paddi.
559
62e0492f
AL
5602019-06-12 Adam Lackorzymski <adam@os.inf.tu-dresden.de>
561
562 PR 24643
563 * elf32-arm.c (arm_elf_find_function): Fail if the symol table is
564 absent, or the bfd is not in the ELF formart.
565 * elfnn-aarch64.c (aarch64_elf_find_function): Likewise.
566
58e07198
CZ
5672019-06-10 Christos Zoulas <christos@zoulas.com>
568
569 PR 24650
570 * elf.c (elfcore_make_auxv_note_section): New function.
571 (elfcore_grok_note): Use it.
572 (elfcore_grok_freebsd_note): Likewise.
573 (elfcore_grok_openbsd_note): Likewise.
574 (elfcore_grok_netbsd_note): Likewise. Plus add support for
575 NT_NETBSDCORE_AUXV notes.
576
237df8fe
SD
5772019-06-06 Sudakshina Das <sudi.das@arm.com>
578
579 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Set
580 alignment of the new gnu property section.
581
8bf6d176
SD
5822019-06-06 Sudakshina Das <sudi.das@arm.com>
583
584 * bfd-in.h: Change comment.
585 * bfd-in2.h: Regenerate.
586 * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update warning.
587 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties):
588 Likwise.
589
1e129bbe
FS
5902019-05-28 Faraz Shahbazker <fshahbazker@wavecomp.com>
591
592 * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_PCHI16>:
593 Remove overflow check.
594
0f4a61b4
AM
5952019-05-28 Alan Modra <amodra@gmail.com>
596
597 PR 24596
598 * cofflink.c (coff_link_check_archive_element): Don't assume
599 element is a coff object file after calling add_archive_element.
600
94667ab1
AM
6012019-05-28 Alan Modra <amodra@gmail.com>
602
603 PR 24596
604 * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Don't
605 attempt to set sh_entsize for excluded PLT section.
606
28fbeab8
AM
6072019-05-28 Alan Modra <amodra@gmail.com>
608
609 PR 24596
610 * elf64-alpha.c (elf64_alpha_relocate_section): Don't attempt
611 to emit R_ALPHA_GOTTPREL in PIEs, for which no space is
612 allocated in alpha_dynamic_entries_for_reloc.
613
a0f6fd21
AM
6142019-05-28 Alan Modra <amodra@gmail.com>
615
616 PR 24596
617 * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Don't segfault
618 on NULL output_section.
619 * elflink.c (elf_final_link_free): Don't free -1 symshndxbuf.
620
c83004d5
AM
6212019-05-28 Alan Modra <amodra@gmail.com>
622
623 PR 24596
624 * elf32-m68k.c (elf_m68k_get_got_entry): Don't create a new
625 entry when MUST_FIND. Abort when MUST_FIND not found.
626 (elf_m68k_get_bfd2got_entry): Likewise.
627 (elf_m68k_relocate_section): Remove now useless assert.
628
586338b8
AM
6292019-05-28 Alan Modra <amodra@gmail.com>
630
631 PR 24596
632 * elf64-hppa.c (elf64_hppa_finalize_dynreloc): Get the output bfd
633 from bfd_link_info, not an output section owner.
634 (elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd): Likewise.
635 (elf_hppa_final_link_relocate): Likewise.
636
a7b34aba
AM
6372019-05-28 Alan Modra <amodra@gmail.com>
638
639 PR 24596
640 * aout-tic30.c (MY_bfd_final_link): Don't segfault on missing
641 create_object_symbols_section, obj_textsec, obj_datasec or
642 obj_bsssec. Fix other errors in placement.
643 * config.bfd: Obsolete tic30-aout.
644
0eb32b6e
AM
6452019-05-28 Alan Modra <amodra@gmail.com>
646
647 PR 24596
648 * dwarf2.c (save_section_vma, section_vma_same): Check for NULL
649 end of section list as well as section_count.
650 * xcofflink.c (xcoff_link_add_symbols): Fix temporarily changed
651 section list before returning error.
652
ce5aecf8
AM
6532019-05-27 Alan Modra <amodra@gmail.com>
654
655 * elf.c (bfd_elf_set_group_contents): Exit on zero size section.
656
3d7d6a6f
AM
6572019-05-27 Alan Modra <amodra@gmail.com>
658
659 PR 24596
660 * linker.c (_bfd_generic_link_output_symbols): Heed BSF_KEEP.
661
823710d5
SN
6622019-05-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
663
664 * elfnn-aarch64.c (elfNN_aarch64_merge_symbol_attribute): New function.
665 (struct elf_aarch64_link_hash_table): Add variant_pcs member.
666 (elfNN_aarch64_allocate_dynrelocs): Update variant_pcs.
667 (elfNN_aarch64_size_dynamic_sections): Add DT_AARCH64_VARIANT_PCS.
668 (elf_backend_merge_symbol_attribute): Define.
669
405b5bd8
AM
6702019-05-24 Alan Modra <amodra@gmail.com>
671
672 * po/SRC-POTFILES.in: Regenerate.
673
04bdff6a
AM
6742019-05-24 Alan Modra <amodra@gmail.com>
675
676 * elf64-ppc.c: Comment on powerxx _notoc stub variants.
677 (LI_R11_0, LIS_R11, ORI_R11_R11_0, SLDI_R11_R11_34): Define.
678 (PADDI_R12_PC, PLD_R12_PC, D34, HA34): Define.
679 (struct ppc_link_hash_table): Add powerxx_stubs.
680 (ppc64_elf_check_relocs): Set powerxx_stubs.
681 (build_powerxx_offset, size_powerxx_offset),
682 (num_relocs_for_powerxx_offset),
683 (emit_relocs_for_powerxx_offset): New functions.
684 (plt_stub_size): Size powerxx stubs.
685 (ppc_build_one_stub): Emit powerxx stubs.
686 (ppc_size_one_stub): Size powerxx stubs. Omit .eh_frame for
687 powerxx stubs.
688
4a421c53
AM
6892019-05-24 Alan Modra <amodra@gmail.com>
690
691 * elf64-ppc.c (ppc64_elf_check_relocs): Set has_gotrel for
692 R_PPC64_GOT_PCREL34.
693 (xlate_pcrel_opt): New function.
694 (ppc64_elf_edit_toc): Handle R_PPC64_GOT_PCREL34.
695 (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
696 for R_PPC64_GOT_PCREL34. Implement R_PPC64_PCREL_OPT optimisation.
697
5663e321
AM
6982019-05-24 Alan Modra <amodra@gmail.com>
699
700 * reloc.c (BFD_RELOC_PPC64_D34, BFD_RELOC_PPC64_D34_LO),
701 (BFD_RELOC_PPC64_D34_HI30, BFD_RELOC_PPC64_D34_HA30),
702 (BFD_RELOC_PPC64_PCREL34, BFD_RELOC_PPC64_GOT_PCREL34),
703 (BFD_RELOC_PPC64_PLT_PCREL34),
704 (BFD_RELOC_PPC64_ADDR16_HIGHER34, BFD_RELOC_PPC64_ADDR16_HIGHERA34),
705 (BFD_RELOC_PPC64_ADDR16_HIGHEST34, BFD_RELOC_PPC64_ADDR16_HIGHESTA34),
706 (BFD_RELOC_PPC64_REL16_HIGHER34, BFD_RELOC_PPC64_REL16_HIGHERA34),
707 (BFD_RELOC_PPC64_REL16_HIGHEST34, BFD_RELOC_PPC64_REL16_HIGHESTA34),
708 (BFD_RELOC_PPC64_D28, BFD_RELOC_PPC64_PCREL28): New reloc enums.
709 * elf64-ppc.c (PNOP): Define.
710 (ppc64_elf_howto_raw): Add reloc howtos for new relocations.
711 (ppc64_elf_reloc_type_lookup): Translate new bfd reloc numbers.
712 (ppc64_elf_ha_reloc): Adjust addend for highera34 and highesta34
713 relocs.
714 (ppc64_elf_prefix_reloc): New function.
715 (struct ppc_link_hash_table): Add notoc_plt.
716 (is_branch_reloc): Add R_PPC64_PLTCALL_NOTOC.
717 (is_plt_seq_reloc): Add R_PPC64_PLT_PCREL34,
718 R_PPC64_PLT_PCREL34_NOTOC, and R_PPC64_PLTSEQ_NOTOC.
719 (ppc64_elf_check_relocs): Handle pcrel got and plt relocs. Set
720 has_pltcall for section on seeing R_PPC64_PLTCALL_NOTOC. Handle
721 possible need for dynamic relocs on non-pcrel powerxx relocs.
722 (dec_dynrel_count): Handle non-pcrel powerxx relocs.
723 (ppc64_elf_inline_plt): Handle R_PPC64_PLTCALL_NOTOC.
724 (toc_adjusting_stub_needed): Likewise.
725 (ppc64_elf_tls_optimize): Handle R_PPC64_PLTSEQ_NOTOC.
726 (ppc64_elf_relocate_section): Handle new powerxx relocs.
727 * bfd-in2.h: Regenerate.
728 * libbfd.h: Regenerate.
729
fd0de36e
JM
7302019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
731
45d5293f
JM
732 * config.bfd (targ_cpu): Process bpf-*-none only if BFD64.
733 * configure.ac: Set target_size=64 for bpf_elf64_le_vec and
734 bpf_elf64_be_vec.
735 * configure: Regenerate.
736
7372019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com>
738
fd0de36e
JM
739 * configure: Regenerated.
740 * Makefile.am (ALL_MACHINES): Add cpu-bpf.lo.
741 (ALL_MACHINES_CFILES): Add cpu-bpf.c.
742 (BFD64_BACKENDS): Add elf64-bpf.lo.
743 (BFD64_BACKENDS_CFILES): Add elf64-bpf.c.
744 * Makefile.in (SOURCE_HFILES): Regenerate.
745 * config.bfd (targ_cpu): Handle bpf-*-* targets.
746 * cpu-bpf.c: New file.
747 * elf64-bpf.c: Likewise.
748 * targets.c (_bfd_target_vector): Add bpf_elf64_be_vec and
749 bpf_elf64_le_vec.
750 * archures.c: Define architecture bfd_arch_bpf and machine
751 bfd_arch_bpf.
752 * reloc.c: Define BFD relocations used by the BPF target.
753 * bfd-in2.h: Regenerated.
754 * libbfd.h: Likewise.
755
b0f4fbf8
AM
7562019-05-22 Alan Modra <amodra@gmail.com>
757
758 * elf32-arm.c (arm_allocate_glue_section_space): Clear section
759 contents.
760
9ec2f606
AM
7612019-05-22 Alan Modra <amodra@gmail.com>
762
763 * vms-alpha.c (_bfd_vms_write_etir): Don't attempt further
764 processing on "size error in section".
765
4decd602
AM
7662019-05-22 Alan Modra <amodra@gmail.com>
767
768 * som.c (som_bfd_free_cached_info): Call
769 _bfd_generic_close_and_cleanup.
770
b474a202
FS
7712019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
772
773 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Generate error
774 for TLS_TPREL_HI16(/LO16) relocations in shared library.
775
304f09d0
FS
7762019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
777
778 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Add NULL pointer
779 checks. Search the RELA table for n64 relocations.
780
3734320d
MF
7812019-05-21 Matthew Fortune <matthew.fortune@mips.com>
782 Faraz Shahbazker <fshahbazker@wavecomp.com>
783
784 * elfxx-mips.c (LA25_BC): New macro.
785 (mips_elf_link_hash_table)<compact_branches>: New field.
786 (STUB_JALRC): New macro.
787 (mipsr6_o32_exec_plt0_entry_compact): New array.
788 (mipsr6_n32_exec_plt0_entry_compact): Likewise.
789 (mipsr6_n64_exec_plt0_entry_compact): Likewise.
790 (mipsr6_exec_plt_entry_compact): Likewise.
791 (mips_elf_create_la25_stub): Use BC instead of J for stubs
792 when compact_branches is true.
793 (_bfd_mips_elf_finish_dynamic_symbol): Choose the compact
794 PLT for MIPSR6 with compact_branches. Do not reorder the
795 compact branches PLT. Switch the lazy stub for MIPSR6
796 with compact_branches to use JALRC.
797 (mips_finish_exec_plt): Choose the compact PLT0 for MIPSR6
798 when compact_branches is true.
799 (_bfd_mips_elf_compact_branches): New function.
800 * elfxx-mips.h (_bfd_mips_elf_compact_branches): New prototype.
801
64672071
TC
8022019-05-21 Tamar Christina <tamar.christina@arm.com>
803
804 PR ld/24373
805 * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub):
806 Fix print formatter.
807
e6f65e75
AV
8082019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
809
810 PR 24460
811 * elf32-arm.c (get_value_helper): Remove.
812 (elf32_arm_final_link_relocate): Fix branch future relocations.
813
739b5c9c
TC
8142019-05-21 Tamar Christina <tamar.christina@arm.com>
815
816 PR ld/24373
817 * bfd-in.h (enum erratum_84319_opts): New
818 (bfd_elf64_aarch64_set_options, bfd_elf32_aarch64_set_options): Change
819 int to enum erratum_84319_opts.
820 * bfd-in2.h: Regenerate.
821 * elfnn-aarch64.c (struct elf_aarch64_link_hash_table): Change
822 fix_erratum_843419 to use new enum, remove fix_erratum_843419_adr.
823 (_bfd_aarch64_add_stub_entry_after): Conditionally create erratum stub.
824 (aarch64_size_one_stub): Conditionally size erratum 843419 stubs.
825 (_bfd_aarch64_resize_stubs): Amend comment.
826 (elfNN_aarch64_size_stubs): Don't generate stubs when no workaround
827 requested.
828 (bfd_elfNN_aarch64_set_options): Use new fix_erratum_843419 enum.
829 (_bfd_aarch64_erratum_843419_branch_to_stub): Implement selection of
830 erratum workaround.
831 (clear_erratum_843419_entry): Update erratum conditional.
832
7622049e
SKS
8332019-05-21 Senthil Kumar Selvaraj <senthilkumar.selvaraj@microchip.com>
834
835 PR ld/24571
836 * bfd/elf32-avr.c (elf32_avr_relax_section): Adjust range check
837 when computing distance_short_enough.
838
338ba755
SKS
8392019-05-21 Senthil Kumar Selvaraj <senthilkumar.selvaraj@microchip.com>
840
841 PR ld/24564
842 * bfd/elf32-avr.c (avr_relative_distance_considering_wrap_around):
843 Wrap around even if distance equals avr_pc_wrap_around.
844
999b073b
NC
8452019-05-20 Nick Clifton <nickc@redhat.com>
846
847 * po/fr.po: Updated French translation.
848
a7ad558c
AV
8492019-05-16 Andre Vieira <andre.simoesdiasvieira@arm.com>
850
851 * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add case for Tag_MVE_arch.
852
a2699ef2
AM
8532019-05-16 Alan Modra <amodra@gmail.com>
854
855 * elf32-arm.c (elf32_arm_write_section): Revert last change.
856
3a1bb98c
AM
8572019-05-15 Alan Modra <amodra@gmail.com>
858
859 * elf32-arm.c (elf32_arm_write_section): Don't leave
860 error case of STM32L4XX_ERRATUM_BRANCH_TO_VENEER with
861 unitialised section contents.
862
37d0d091
JH
8632019-05-14 Jamey Hicks <jamey.hicks@gmail.com>
864
865 PR 19921
866 * verilog.c: (VerilogDataWidth): New variable.
867 (verilog_write_record): Emit bytes in VerilogDataWidth bundles.
868
79299211
NC
8692019-05-08 Nick Clifton <nickc@redhat.com>
870
871 PR 24523
872 * elf32-m68k.c (elf32_m68k_merge_private_bfd_data): Return TRUE
873 rather than FALSE if encountering a non-ELF file.
874
e1cbf07a
AM
8752019-05-06 Alan Modra <amodra@gmail.com>
876
877 * elf32-pj.c (pj_elf_reloc): Don't report undefined weak as an error.
878
334d91b9
AM
8792019-05-06 Alan Modra <amodra@gmail.com>
880
881 * reloc.c (BFD_RELOC_PPC64_TPREL16_HIGH, BFD_RELOC_PPC64_TPREL16_HIGHA),
882 (BFD_RELOC_PPC64_DTPREL16_HIGH, BFD_RELOC_PPC64_DTPREL16_HIGHA):
883 Sort before BFD_RELOC_PPC64_DTPREL16_HIGHESTA entry.
884 * libbfd.h: Regenerate.
885 * bfd-in2.h: Regenerate.
886
a288c270
AM
8872019-05-04 Alan Modra <amodra@gmail.com>
888
889 PR 24511
890 * syms.c (coff_section_type): Only allow '.', '$' and numeric
891 following the standard section names.
892 (bfd_decode_symclass): Prioritize section flag tests in
893 decode_section_type before name tests in coff_section_type.
894 * plugin.c (bfd_plugin_canonicalize_symtab): Init fake_section
895 and fake_common_section using BFD_FAKE_SECTION. Use "fake" as
896 their names and choose standard .text section flags for
897 fake_section.
898
2cdc1a97
NC
8992019-05-02 Nick Clifton <nickc@redhat.com>
900
901 PR 24493
902 * coffcode.h (styp_to_sec_flags): Treat .gnu.debuglink and
903 .gnu.debugaltlink sections as debugging sections.
904
066f4018
AM
9052019-04-30 Alan Modra <amodra@gmail.com>
906
907 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_gotrel.
908 (struct _ppc64_elf_section_data): Likewise.
909 (ppc64_elf_check_relocs): Set above fields.
910 (ppc64_elf_edit_toc): Add a pass over GOT relocs.
911 (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
912 when possible.
913
c54f1524
L
9142019-04-26 H.J. Lu <hongjiu.lu@intel.com>
915
916 PR ld/24486
917 * elflink.c (elf_link_output_extsym): Don't complain undefined
918 weak dynamic reference.
919
68bb0359
SD
9202019-04-25 Sudakshina Das <sudi.das@arm.com>
921
922 * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): Remove.
923 (PLT_BTI_TLSDESC_ENTRY_SIZE): Remove.
924 (PLT_PAC_ENTRY_SIZE, PLT_BTI_PAC_ENTRY_SIZE): Remove.
925 (PLT_BTI_SMALL_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): Update.
926 (elfNN_aarch64_small_plt0_pac_entry): Remove.
927 (elfNN_aarch64_small_plt0_bti_pac_entry): Remove.
928 (elfNN_aarch64_small_plt0_bti_entry): Update.
929 (elfNN_aarch64_small_plt_bti_entry): Update.
930 (elfNN_aarch64_small_plt_pac_entry): Update.
931 (elfNN_aarch64_tlsdesc_small_plt_bti_entry): Update.
932 (setup_plt_values): Setup new entries.
933 (elfNN_aarch64_finish_dynamic_sections): Remove size change.
934 (elfNN_aarch64_plt_sym_val): Likewise.
935
79b8e8ab
JW
9362019-04-22 Jim Wilson <jimw@sifive.com>
937
938 * elfnn-riscv.c (PRSTATUS_SIZE) [ARCH_SIZE==32]: Change from 0 to 204.
939
fce97736
AM
9402019-04-19 Alan Modra <amodra@gmail.com>
941
942 * elf32-s12z.c (elf_backend_can_gc_sections): Don't define
943
9a7f0679
L
9442019-04-17 H.J. Lu <hongjiu.lu@intel.com>
945
946 * elf64-x86-64.c (elf_x86_64_need_pic): Suggest -fPIE when not
947 building shared object.
948 * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Likewise.
949
4e84a8f8
L
9502019-04-17 H.J. Lu <hongjiu.lu@intel.com>
951
952 PR ld/24458
953 * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): Also check x86
954 linker_def.
955
32c36c3c
AV
9562019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
957
958 * reloc.c (BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM): New internal
959 relocation.
960 * bfd-in2.h: Regenerate.
961 * libbfd.h: Likewise.
962
60f993ce
AV
9632019-04-15 Sudakshina Das <sudi.das@arm.com>
964
965 * reloc.c (BFD_RELOC_ARM_THUMB_LOOP12): New.
966 * bfd-in2.h: Regenerated.
967 * libbfd.h: Regenerated.
968
f6b2b12d
AV
9692019-04-15 Sudakshina Das <sudi.das@arm.com>
970
971 * reloc.c (BFD_RELOC_THUMB_PCREL_BFCSEL): New relocation.
972 * bfd-in2.h: Regenerated.
973 * libbfd.h: Likewise.
974
1889da70
AV
9752019-04-15 Sudakshina Das <sudi.das@arm.com>
976
977 * reloc.c (BFD_RELOC_ARM_THUMB_BF13): New.
978 * bfd-in2.h: Regenerated.
979 * libbfd.h: Regenerated.
980 * elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF13.
981 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF13
982 and R_ARM_THM_BF12 together.
983 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF13.
984
1caf72a5
AV
9852019-04-15 Sudakshina Das <sudi.das@arm.com>
986
987 * reloc.c (BFD_RELOC_ARM_THUMB_BF19): New
988 * libbfd.h: Regenerated.
989 * bfd-in2.h: Regenerated.
990 * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF18.
991 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF19
992 and R_ARM_THM_BF18 together.
993 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF19.
994
e5d6e09e
AV
9952019-04-15 Sudakshina Das <sudi.das@arm.com>
996
997 * reloc.c (BFD_RELOC_ARM_THUMB_BF17): New enum.
998 * bfd-in2.h: Regenerated.
999 * libbfd.h: Regenerated.
1000 * bfd-elf32-arm.c (elf32_arm_howto_table_1): New entry for R_ARM_THM_BF16.
1001 (elf32_arm_reloc_map elf32_arm_reloc_map): Map BFD_RELOC_ARM_THUMB_BF17
1002 and R_ARM_THM_BF16 together.
1003 (get_value_helper): New reloc helper.
1004 (elf32_arm_final_link_relocate): New switch case for R_ARM_THM_BF16.
1005
e12437dc
AV
10062019-04-15 Sudakshina Das <sudi.das@arm.com>
1007
1008 * reloc.c (BFD_RELOC_THUMB_PCREL_BRANCH5): New enum.
1009 * bfd-in2.h: Regenerate.
1010 * libbfd.h: Regenerate.
1011
031254f2
AV
10122019-04-15 Thomas Preud'homme <thomas.preudhomme@arm.com>
1013
1014 * archures.c (bfd_mach_arm_8_1M_MAIN): Define.
1015 * bfd-in2.h: Regenerate.
1016 * cpu-arm.c (arch_info_struct): Add entry for Armv8.1-M Mainline.
1017 * elf32-arm.c (using_thumb_only): Return true for Armv8.1-M Mainline
1018 and update assert.
1019 (using_thumb2): Likewise.
1020 (using_thumb2_bl): Update assert.
1021 (arch_has_arm_nop): Likewise.
1022 (bfd_arm_get_mach_from_attributes): Add case for Armv8.1-M Mainline.
1023 (tag_cpu_arch_combine): Add logic for Armv8.1-M Mainline merging.
1024
233a0083
L
10252019-04-11 H.J. Lu <hongjiu.lu@intel.com>
1026
1027 * elf-linker-x86.h (elf_x86_cet_report): New.
1028 (elf_linker_x86_params): Add cet_report.
1029 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report
1030 missing IBT and SHSTK properties if needed.
1031
a0ea3a14
L
10322019-04-11 H.J. Lu <hongjiu.lu@intel.com>
1033
ca4e6331 1034 PR ld/24436
a0ea3a14
L
1035 * elf-m10300.c (mn10300_elf_check_relocs): Remove BFD_ASSERT of
1036 "h != NULL". Don't check "h != NULL" before calling.
1037 bfd_elf_gc_record_vtentry.
1038 * elf32-arm.c (elf32_arm_check_relocs): Likewise.
1039 * elf32-bfin.c (bfin_check_relocs): Likewise.
1040 * elf32-cris.c (cris_elf_check_relocs): Likewise.
1041 * elf32-csky.c (csky_elf_check_relocs): Likewise.
1042 * elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
1043 * elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
1044 * elf32-fr30.c (fr30_elf_check_relocs): Likewise.
1045 * elf32-frv.c (elf32_frv_check_relocs): Likewise.
1046 * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
1047 * elf32-i386.c (elf_i386_check_relocs): Likewise.
1048 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
1049 * elf32-m32r.c (m32r_elf_check_relocs): Likewise.
1050 * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
1051 * elf32-m68k.c (elf_m68k_check_relocs): Likewise.
1052 * elf32-mcore.c (mcore_elf_check_relocs): Likewise.
1053 * elf32-metag.c (elf_metag_check_relocs): Likewise.
1054 * elf32-or1k.c (or1k_elf_check_relocs): Likewise.
1055 * elf32-ppc.c (ppc_elf_check_relocs): Likewise.
1056 * elf32-s390.c (elf_s390_check_relocs): Likewise.
1057 * elf32-sh.c (sh_elf_check_relocs): Likewise.
1058 * elf32-v850.c (v850_elf_check_relocs): Likewise.
1059 * elf32-vax.c (elf_vax_check_relocs): Likewise.
1060 * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
1061 * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise.
1062 * elf64-mmix.c (mmix_elf_check_relocs): Likewise.
1063 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
1064 * elf64-s390.c (elf_s390_check_relocs): Likewise.
1065 * elf64-x86-64.c (elf_s390_check_relocs): Likewise.
1066 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
1067 * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
1068 * elflink.c (bfd_elf_gc_record_vtinherit): Check for corrupt
1069 VTENTRY entry.
1070
9bff840e
AM
10712019-04-11 Alan Modra <amodra@gmail.com>
1072
1073 PR 24435
1074 * elflink.c (elf_link_add_object_symbols): Don't read partial
1075 dynamic entries from fuzzed objects.
1076
ce12121b
TC
10772019-04-11 Tamar Christina <tamar.christina@arm.com>
1078
1079 PR ld/24302
1080 * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Don't emit
1081 DT_TLSDESC_GOT and DT_TLSDESC_PLT when DF_BIND_NOW.
1082 (elfNN_aarch64_finish_dynamic_sections): Don't write PLT if DF_BIND_NOW.
1083
b05971a6
MF
10842019-04-10 Michael Forney <mforney@mforney.org>
1085
1086 PR 24427
1087 * doc/chew.c (free_words): Correctly free "push_text" strings.
1088
3ae61bb6
L
10892019-04-08 H.J. Lu <hongjiu.lu@intel.com>
1090
1091 * config.bfd: Remove i[3-7]86-*-kaos* and i[3-7]86-*-chaos targets.
1092
5f2a6b85
AM
10932019-04-08 Alan Modra <amodra@gmail.com>
1094
1095 * configure.ac (elfxx_x86): Define and use.
1096 * configure: Regenerate.
1097
5b9c07b2
L
10982019-04-06 H.J. Lu <hongjiu.lu@intel.com>
1099
1100 * elf-linker-x86.h: New file.
1101 * elf32-i386.c (elf_i386_convert_load_reloc): Use htab->params
1102 to get x86-specific linker options.
1103 * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise.
1104 (elf_x86_64_check_relocs): Likewise.
1105 (elf_x86_64_relocate_section): Likewise.
1106 (elf_x86_64_link_setup_gnu_properties): Likewise.
1107 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Likewise.
1108 (_bfd_x86_elf_link_setup_gnu_properties): Likewise.
1109 (_bfd_elf_linker_x86_set_options): New function.
1110 * elfxx-x86.h: Include "elf-linker-x86.h".
1111 (elf_x86_link_hash_table): Add params.
1112
4b24dd1a
AM
11132019-04-03 Alan Modra <amodra@gmail.com>
1114
1115 * coff-i386.c, * coff-x86_64.c, * coffgen.c, * dwarf2.c,
1116 * elf-m10200.c, * elf.c, * elf32-arm.c, * elf32-bfin.c,
1117 * elf32-csky.c, * elf32-m32r.c, * elf32-microblaze.c, * elf32-pru.c,
1118 * elf32-rx.c, * elf32-xgate.c, * elf64-sparc.c, * elfnn-ia64.c,
1119 * elfxx-riscv.c, * elfxx-sparc.c, * linker.c, * mach-o.c,
1120 * pe-x86_64.c, * pei-x86_64.c, * plugin.c: Whitespace fixes.
1121
87f98bac
JW
11222019-04-02 Jim Wilson <jimw@sifive.com>
1123
1124 PR 24389
1125 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Move read of
1126 ELF header flags to after check for ELF object file. Loop through
1127 sections looking for code sections, if none, then skip ABI checks.
1128
ae2b14c7
JW
11292019-03-30 Andrew Waterman <andrew@sifive.com>
1130
1131 * elfnn-riscv.c (_bfd_riscv_relax_call): Only check ARCH_SIZE for
1132 rd == X_RA case.
1133
2487ef07
MF
11342019-03-29 Max Filippov <jcmvbkbc@gmail.com>
1135
1136 * elf32-xtensa.c (shrink_dynamic_reloc_sections): Add
1137 info->export_dynamic to the conditional.
1138
242a1159
AM
11392019-03-28 Alan Modra <amodra@gmail.com>
1140
1141 PR 24392
1142 * configure.ac: Invoke AC_CHECK_SIZEOF(int).
1143 * configure: Regenerate.
1144 * coffgen.c (coff_get_reloc_upper_bound): Replace gcc diagnostic
1145 workaround with SIZEOF_LONG vs. SIZEOF_INT check.
1146 * elf.c (_bfd_elf_get_reloc_upper_bound): Likewise.
1147 * elf64-sparc.c (elf64_sparc_get_reloc_upper_bound): Likewise.
1148 * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
1149
a9f5a551
JW
11502019-03-21 Jim Wilson <jimw@sifive.com>
1151
1152 PR 24365
1153 * elfnn-riscv.c (riscv_elf_relocate_section): For STT_SECTION check,
1154 verify sym non-NULL before using. Add identical check using h.
1155
4e539114
SD
11562019-03-21 Sudakshina Das <sudi.das@arm.com>
1157
1158 * elf-bfd.h (struct elf_backend_data): Add argument to
1159 merge_gnu_properties.
1160 * elf-properties.c (elf_merge_gnu_properties): Add argument to
1161 itself and while calling bed->merge_gnu_properties.
1162 (elf_merge_gnu_property_list): Update the calls for
1163 elf_merge_gnu_properties.
1164 * elfnn-aarch64.c (elfNN_aarch64_merge_gnu_properties): Update handling
1165 of --force-bti warning and add argument.
1166 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Add
1167 warning.
1168 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Add argument.
1169 * elfxx-x86.h (_bfd_x86_elf_merge_gnu_properties): Likewise in
1170 declaration.
1171
acde6c6b
SD
11722019-03-20 Sudakshina Das <sudi.das@arm.com>
1173
1174 * elfxx-aarch64.c (_bfd_aarch64_elf_link_fixup_gnu_properties): Define.
1175 * elfxx-aarch64.h (_bfd_aarch64_elf_link_fixup_gnu_properties): Declare.
1176 (elf_backend_fixup_gnu_properties): Define for AArch64.
1177
8cd1fe1b
AM
11782019-03-18 Alan Modra <amodra@gmail.com>
1179
1180 PR 24355
1181 * elf32-ppc.c (ppc_finish_symbols): Don't call write_glink_stub
1182 for local iplt syms with ent->plt.offset == -1. Remove ineffective
1183 attempt at writing glink stubs only once.
1184
6835821b
AM
11852019-03-16 Alan Modra <amodra@gmail.com>
1186
1187 PR 24337
1188 * elf.c (_bfd_elf_rela_local_sym): Revert last change.
1189 (_bfd_elf_rel_local_sym): Likewise.
1190 * elflink.c (elf_link_input_bfd): Use bfd_und_section for
1191 section of symbols with unrecognized shndx.
1192
2219ae0b
L
11932019-03-15 H.J. Lu <hongjiu.lu@intel.com>
1194
1195 PR ld/24267
1196 * coffgen.c (_bfd_coff_section_already_linked): Skip discarded
1197 section.
1198 * cofflink.c (coff_link_add_symbols): Check for symbols defined
1199 in discarded section.
1200
fe3fef62
AM
12012019-03-15 Alan Modra <amodra@gmail.com>
1202
1203 PR 24339
1204 * elflink.c (elf_link_add_object_symbols): Bail out on a local
1205 symbol after globals if elf_bad_symtab is not set.
1206
1ff31e13
AM
12072019-03-15 Alan Modra <amodra@gmail.com>
1208
1209 PR 24337
1210 * elf.c (_bfd_elf_rela_local_sym): Don't segfault on NULL sec.
1211 (_bfd_elf_rel_local_sym): Likewise.
1212
f55b1e32
AM
12132019-03-15 Alan Modra <amodra@gmail.com>
1214
1215 PR 24336
1216 * elflink.c (elf_link_read_relocs_from_section): Handle fuzzed
1217 object files with sh_size not a multiple of sh_entsize.
1218
da0d12d2
L
12192019-03-15 H.J. Lu <hongjiu.lu@intel.com>
1220
418d4036
L
1221 PR ld/24338
1222 * elf64-x86-64.c (elf_x86_64_relocate_section): Check for corrupt
1223 input with bad relocation.
1224
122522019-03-15 H.J. Lu <hongjiu.lu@intel.com>
1226
da0d12d2
L
1227 * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent.
1228
d7f848c3
NC
12292019-03-14 Nick Clifton <nickc@redhat.com>
1230
1231 PR 24334
1232 * dwarf2.c (struct dwarf2_debug): Add sec_vma_count field.
1233 (save_section_vma): Initialise field to the number of entries in
1234 the sec_vma table.
1235 (section_vma_same): Check that the number of entries in the
1236 sec_vma table matches the number of sections in the bfd.
1237
6cc71b82
NC
12382019-03-14 Nick Clifton <nickc@redhat.com>
1239
1240 PR 24333
1241 * elflink.c (_bfd_elf_add_default_symbol): Add a check for a NULL
1242 section owner pointer when adding the default symbol.
1243
be22c732
NC
12442019-03-14 Nick Clifton <nickc@redhat.com>
1245
1246 PR 24332
1247 * elflink.c (elf_link_add_object_symbols): Add new local variable
1248 extversym_end. Initialise it to point to the end of the version
1249 symbol table, if present. Check it when initialising and updating
1250 the ever pointer.
1251
1dbade74
SD
12522019-03-13 Sudakshina Das <sudi.das@arm.com>
1253
1254 * elfnn-aarch64.c (PLT_PAC_ENTRY_SIZE, PLT_PAC_SMALL_ENTRY_SIZE): New.
1255 (PLT_BTI_PAC_ENTRY_SIZE, PLT_BTI_PAC_SMALL_ENTRY_SIZE): New.
1256 (setup_plt_values): Account for PAC or PAC and BTI enabled PLTs.
1257 (elfNN_aarch64_size_dynamic_sections): Add checks for PLT_BTI_PAC
1258 and PLT_PAC_PLT.
1259 (elfNN_aarch64_finish_dynamic_sections): Account for PLT_BTI_PAC.
1260 (get_plt_type): Add case for DT_AARCH64_PAC_PLT.
1261 (elfNN_aarch64_plt_sym_val): Add cases for PLT_BTI_PAC and PLT_PAC.
1262
37c18eed
SD
12632019-03-13 Sudakshina Das <sudi.das@arm.com>
1264 Szabolcs Nagy <szabolcs.nagy@arm.com>
1265
1266 * bfd-in.h (aarch64_plt_type, aarch64_enable_bti_type): New.
1267 (aarch64_bti_pac_info): New.
1268 (bfd_elf64_aarch64_set_options): Add aarch64_bti_pac_info argument.
1269 (bfd_elf32_aarch64_set_options): Likewise.
1270 * bfd-in2.h: Regenerate
1271 * elfnn-aarch64.c (PLT_BTI_ENTRY_SIZE): New.
1272 (PLT_BTI_SMALL_ENTRY_SIZE, PLT_BTI_TLSDESC_ENTRY_SIZE): New.
1273 (elfNN_aarch64_small_plt0_bti_entry): New.
1274 (elfNN_aarch64_small_plt_bti_entry): New.
1275 (elfNN_aarch64_tlsdesc_small_plt_bti_entry): New.
1276 (elf_aarch64_obj_tdata): Add no_bti_warn and plt_type fields.
1277 (elf_aarch64_link_hash_table): Add plt0_entry, plt_entry and
1278 tlsdesc_plt_entry_size fields.
1279 (elfNN_aarch64_link_hash_table_create): Initialise the new fields.
1280 (setup_plt_values): New helper function.
1281 (bfd_elfNN_aarch64_set_options): Use new bp_info to set plt sizes and
1282 bti enable type.
1283 (elfNN_aarch64_allocate_dynrelocs): Use new size members instead of
1284 fixed macros.
1285 (elfNN_aarch64_size_dynamic_sections): Likewise and add checks.
1286 (elfNN_aarch64_create_small_pltn_entry): Use new generic pointers
1287 to plt stubs instead of fixed ones and update filling them according
1288 to the need for bti.
1289 (elfNN_aarch64_init_small_plt0_entry): Likewise.
1290 (elfNN_aarch64_finish_dynamic_sections): Likewise.
1291 (get_plt_type, elfNN_aarch64_get_synthetic_symtab): New.
1292 (elfNN_aarch64_plt_sym_val): Update size accordingly.
1293 (elfNN_aarch64_link_setup_gnu_properties): Set up plts if BTI GNU NOTE
1294 is set.
1295 (bfd_elfNN_get_synthetic_symtab): Define.
1296 (elfNN_aarch64_merge_gnu_properties): Give out warning with --force-bti
1297 and mising BTI NOTE SECTION.
1298
1299
cd702818
SD
13002019-03-13 Sudakshina Das <sudi.das@arm.com>
1301
1302 * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Exclude
1303 linker created inputs from merge.
1304 * elfnn-aarch64.c (struct elf_aarch64_obj_tdata): Add field for
1305 GNU_PROPERTY_AARCH64_FEATURE_1_AND properties.
1306 (elfNN_aarch64_link_setup_gnu_properties): New.
1307 (elfNN_aarch64_merge_gnu_properties): New.
1308 (elf_backend_setup_gnu_properties): Define for AArch64.
1309 (elf_backend_merge_gnu_properties): Likewise.
1310 * elfxx-aarch64.c (_bfd_aarch64_elf_link_setup_gnu_properties): Define.
1311 (_bfd_aarch64_elf_parse_gnu_properties): Define.
1312 (_bfd_aarch64_elf_merge_gnu_properties): Define.
1313 * elfxx-aarch64.h (_bfd_aarch64_elf_link_setup_gnu_properties): Declare.
1314 (_bfd_aarch64_elf_parse_gnu_properties): Declare.
1315 (_bfd_aarch64_elf_merge_gnu_properties): Declare.
1316 (elf_backend_parse_gnu_properties): Define for AArch64.
1317
44b27f95
L
13182019-03-13 H.J. Lu <hongjiu.lu@intel.com>
1319
1320 PR ld/24322
1321 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Properly
1322 merge GNU_PROPERTY_X86_FEATURE_1_[IBT|SHSTK].
1323
7a6e0d89
AM
13242019-03-12 Alan Modra <amodra@gmail.com>
1325
1326 * coffcode.h (buy_and_read): Delete unnecessary forward decl. Add
1327 nmemb parameter. Use bfd_alloc2.
1328 (coff_slurp_line_table): Use bfd_alloc2. Update buy_and_read calls.
1329 Delete assertion.
1330 (coff_slurp_symbol_table): Use bfd_alloc2 and bfd_zalloc2.
1331 (coff_slurp_reloc_table): Use bfd_alloc2. Update buy_and_read calls.
1332 * coffgen.c (coff_get_reloc_upper_bound): Ensure size calculation
1333 doesn't overflow.
1334 * elf.c (bfd_section_from_shdr): Use bfd_zalloc2. Style fix.
1335 (assign_section_numbers): Style fix.
1336 (swap_out_syms): Use bfd_malloc2.
1337 (_bfd_elf_get_reloc_upper_bound): Ensure size calculation doesn't
1338 overflow.
1339 (_bfd_elf_make_empty_symbol): Style fix.
1340 (elfobj_grok_stapsdt_note_1): Formatting.
1341 * elfcode.h (elf_object_p): Use bfd_alloc2.
1342 (elf_write_relocs, elf_write_shdrs_and_ehdr): Likewise.
1343 (elf_slurp_symbol_table): Use bfd_zalloc2.
1344 (elf_slurp_reloc_table): Use bfd_alloc2.
1345 (_bfd_elf_bfd_from_remote_memory): Use bfd_malloc2.
1346 * elf64-sparc (elf64_sparc_get_reloc_upper_bound): Ensure
1347 size calculation doesn't overflow.
1348 (elf64_sparc_get_dynamic_reloc_upper_bound): Likewise.
1349 * mach-o.c (bfd_mach_o_get_reloc_upper_bound): Likewise.
1350 * pdp11.c (get_reloc_upper_bound): Copy aoutx.h version.
1351
ebd2263b
AM
13522019-03-08 Alan Modra <amodra@gmail.com>
1353
1354 PR 24311
1355 * merge.c (merge_strings): Return secinfo. Don't pad section
1356 to alignment here.
1357 (_bfd_merge_sections): Pad section to alignment here, if input
1358 sections contributing to merged output all pad to alignment.
1359 Formatting.
1360
219d6836
NC
13612019-03-06 Nick Clifton <nickc@redhat.com>
1362
1363 * dwarf2.c (_bfd_dwarf2_find_symbol_bias): Check for a NULL symbol
1364 table pointer.
1365 * coffgen.c (coff_find_nearest_line_with_names): Do not call
1366 _bfd_dwarf2_find_symbol_bias if there is no symbol table available.
1367
24801b15
AK
13682019-03-01 Andreas Krebbel <krebbel@linux.ibm.com>
1369
1370 This reverts commit 5a12586d44fa8d5dfc74cbca4f2f36a273a16335.
1371 2019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
1372
1373 PR 20113
1374 * elf32-s390.c (allocate_dynrelocs): Update comment.
1375
4ffd2909
TC
13762019-02-28 Tamar Christina <tamar.christina@arm.com>
1377
1378 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct CIE parse.
1379
eed5def8
NC
13802019-02-28 Nick Clifton <nickc@redhat.com>
1381
1382 PR 24273
1383 * elf.c (bfd_elf_string_from_elf_section): Check for a string
1384 section that is not NUL terminated.
1385
5cfe428c
L
13862019-02-27 H.J. Lu <hongjiu.lu@intel.com>
1387
1388 PR ld/24276
1389 * elf64-x86-64.c (elf_x86_64_check_relocs): Skip symbol defined
1390 by linker when checking copy reloc on protected symbol.
1391
f616c36b
AM
13922019-02-24 Alan Modra <amodra@gmail.com>
1393
1394 PR 24144
1395 * pdp11.c (set_section_contents): Revert 2015-02-24 change.
1396
eed62915
MF
13972019-02-20 Eric Tsai <erictsai@cadence.com>
1398
1399 * elf32-xtensa.c (is_resolvable_asm_expansion): Scan output
1400 sections between the call site and call destination and adjust
1401 call distance by the largest alignment.
1402
e6c3b5bf
AH
14032019-02-20 Alan Hayward <alan.hayward@arm.com>
1404
1405 * elf-bfd.h (elfcore_write_aarch_pauth): Add declaration.
1406 * elf.c (elfcore_grok_aarch_pauth): New function.
1407 (elfcore_grok_note): Check for NT_ARM_PAC_MASK.
1408 (elfcore_write_aarch_pauth): New function.
1409 (elfcore_write_register_note): Check for AArch64 pauth section.
1410
34d75fb5
AM
14112019-02-20 Alan Modra <amodra@gmail.com>
1412
1413 PR 24225
1414 * elf32-nios2.c (nios2_elf32_relocate_section): Check asprintf
1415 return value.
1416
edd01d07
MR
14172019-02-20 Michael Roitzsch <reactorcontrol@icloud.com>
1418
1419 * configure.ac (SHARED_LIBADD): Add -liberty -lintl for all
1420 Darwin hosts, not just or1k.
1421 * configure: Regenerate.
1422
8abac803
AM
14232019-02-20 Alan Modra <amodra@gmail.com>
1424
1425 PR 24236
1426 * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
1427 sentinel NUL to string buffer nearer to loop where it is used.
1428 Don't go past sentinel when scanning strings, and don't write
1429 NUL again.
1430 * archive.c (do_slurp_coff_armap): Simplify string handling to
1431 archive64.c style.
1432
179f2db0
AM
14332019-02-19 Alan Modra <amodra@gmail.com>
1434
1435 PR 24235
1436 * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
1437 attempting to prevent read past end of section.
1438
a31b8bd9
AM
14392019-02-18 Alan Modra <amodra@gmail.com>
1440
1441 PR 24225
1442 * elf32-nios2.c (nios2_elf32_relocate_section): Use asprintf and
1443 PRIx64 to generate warning messages. Print local sym names too.
1444
a0e90a73
CZ
14452019-02-09 Vineet Gupta <vgupta@synopsys.com>
1446
1447 * elf32-arc (INIT_SYM_STRING): Delete.
1448 (FINI_SYM_STRING): Likewise.
1449 (init_str): Likewise.
1450 (fini_str): Likewise.
1451
482f3505
AM
14522019-02-08 Alan Modra <amodra@gmail.com>
1453
1454 * elf32-ppc.c (ppc_elf_relocate_section): Add %X to "unsupported
1455 for bss-plt" warning to make it an error.
1456
b2abe1bd
EB
14572019-02-07 Eric Botcazou <ebotcazou@adacore.com>
1458
1459 PR ld/18841
1460 * elf32-sparc.c (elf32_sparc_reloc_type_class): Return
1461 reloc_class_ifunc for ifunc symbols.
1462 * elf64-sparc.c (elf64_sparc_reloc_type_class): Likewise.
1463
68a09132
EB
14642019-02-07 Eric Botcazou <ebotcazou@adacore.com>
1465
1466 * elf32-visium.c (visium_elf_howto_parity_reloc): Minor tweak.
1467 <R_VISIUM_PC16>: Use explicit range test to detect an overflow.
1468
2012bf01
NC
14692019-02-07 Nick Clifton <nickc@redhat.com>
1470
1471 * config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
1472 into the definitely obsolete list.
1473
83924b38
L
14742019-02-05 H.J. Lu <hongjiu.lu@intel.com>
1475
1476 PR ld/24151
1477 * elf64-x86-64.c (elf_x86_64_need_pic): Check
1478 SYMBOL_DEFINED_NON_SHARED_P instead of def_regular.
1479 (elf_x86_64_relocate_section): Move PIC check for PC-relative
1480 relocations to ...
1481 (elf_x86_64_check_relocs): Here.
1482 (elf_x86_64_finish_dynamic_symbol): Use SYMBOL_DEFINED_NON_SHARED_P
1483 to check if a symbol is defined in a non-shared object.
1484 * elfxx-x86.h (SYMBOL_DEFINED_NON_SHARED_P): New.
1485
453f8e1e
SDJ
14862019-01-21 Sergio Durigan Junior <sergiodj@redhat.com>
1487
1488 * elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
1489 of 'labs' (and fix GCC warning).
1490
9ed1348c
NC
14912019-01-25 Nick Clifton <nickc@redhat.com>
1492
1493 * po/ru.po: Updated Russian translation.
1494
d9938630
NC
14952019-01-23 Nick Clifton <nickc@redhat.com>
1496
1497 * po/fr.po: Updated French translation.
1498
375cd423
NC
14992019-01-21 Nick Clifton <nickc@redhat.com>
1500
1501 * po/pt.po: Updated Portuguese translation.
1502 * po/uk.po: Updated Ukranian translation.
1503
acef8081
YC
15042019-01-21 Yuri Chornoivan <yurchor@ukr.net>
1505
1506 PR 24108
1507 * elf32-nds32.c (nds32_relocate_section): Add space between words
1508 in error message.
1509 * elfnn-riscv.c (riscv_version_mismatch): Fix spelling mistake in
1510 error message.
1511 (riscv_i_or_e_p): Likewise.
1512 (riscv_merge_arch_attr_info): Likewise.
1513
f48dfe41
NC
15142019-01-19 Nick Clifton <nickc@redhat.com>
1515
1516 * version.m4: Reset to 2.32.51
1517 * configure: Regenerate.
1518 * po/bfd.pot: Regenerate.
1519
f974f26c
NC
15202018-06-24 Nick Clifton <nickc@redhat.com>
1521
1522 2.32 branch created.
1523
a4bf3d07
JW
15242019-01-16 Kito Cheng <kito@andestech.com>
1525
1526 * elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
1527 for OBJ_ATTR_PROC.
1528
2dc8dd17
JW
15292019-01-16 Kito Cheng <kito@andestech.com>
1530 Nelson Chu <nelson@andestech.com>
1531
7d7a7d7c
JW
1532 * elfnn-riscv.c (in_subsets): New.
1533 (out_subsets): Likewise.
1534 (merged_subsets): Likewise.
1535 (riscv_std_ext_p): Likewise.
1536 (riscv_non_std_ext_p): Likewise.
1537 (riscv_std_sv_ext_p): Likewise.
1538 (riscv_non_std_sv_ext_p): Likewise.
1539 (riscv_version_mismatch): Likewise.
1540 (riscv_i_or_e_p): Likewise.
1541 (riscv_merge_std_ext): Likewise.
1542 (riscv_merge_non_std_and_sv_ext): Likewise.
1543 (riscv_merge_arch_attr_info): Likewise.
1544 (riscv_merge_attributes): Likewise.
1545 (_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.
1546
2dc8dd17
JW
1547 * elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
1548 (elf_backend_obj_attrs_vendor): Define.
1549 (elf_backend_obj_attrs_section_type): Likewise.
1550 (elf_backend_obj_attrs_section): Likewise.
1551 (elf_backend_obj_attrs_arg_type): Define as
1552 riscv_elf_obj_attrs_arg_type.
1553 * elfxx-riscv.c (riscv_estimate_digit): New.
1554 (riscv_estimate_arch_strlen1): Likewise.
1555 (riscv_estimate_arch_strlen): Likewise.
1556 (riscv_arch_str1): Likewise.
1557 (riscv_arch_str): Likewise.
1558 * elfxx-riscv.h (riscv_arch_str): Declare.
1559
d5dcaf1b
JD
15602019-01-14 John Darrington <john@darrington.wattle.id.au>
1561
1562 * bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
1563 * libbfd.h: regen.
1564 * elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
1565 source field. (md_apply_fix): Apply final fix
1566 to BFD_RELOC_S12Z_OPR.
1567 * reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.
1568
5a12586d
MT
15692019-01-14 Maamoun Tarsha <maamountk@hotmail.com>
1570
f466c305 1571 PR 20113
5a12586d
MT
1572 * elf32-s390.c (allocate_dynrelocs): Update comment.
1573
3107326d
AP
15742019-01-09 Andrew Paprocki <andrew@ishiboo.com>
1575
1576 * warning.m4: Adjust egrep pattern for non-GNU compilers.
1577 * configure: Regenerate.
1578
a9859e01
AM
15792019-01-08 Alan Modra <amodra@gmail.com>
1580
1581 PR 23699
1582 PR 24065
1583 * ihex.c (ihex_write_object_contents): Properly check 32-bit
1584 address range.
1585
c8c89dac
YS
15862019-01-05 Yoshinori Sato <ysato@users.sourceforge.jp>
1587
1588 * bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
1589 * bfd/bfd-in2.h: Regenerate.
1590 * bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
1591 * bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.
1592
d9858c37
LX
15932019-01-04 Lifang Xia <lifang_xia@c-sky.com>
1594
1595 * config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
1596 default target, little endian target is more suitable.
1597
677bd4c6
AM
15982019-01-04 Alan Modra <amodra@gmail.com>
1599
1600 PR 24061
1601 PR 21786
1602 * coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
1603 adjust all callers.
1604 (EQ_VALUE_IN_FIELD): Likewise.
1605 * coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.
1606
82704155
AM
16072019-01-01 Alan Modra <amodra@gmail.com>
1608
1609 Update year range in copyright notice of all files.
1610
d5c04e1b 1611For older changes see ChangeLog-2018
3499769a 1612\f
d5c04e1b 1613Copyright (C) 2019 Free Software Foundation, Inc.
3499769a
AM
1614
1615Copying and distribution of this file, with or without modification,
1616are permitted in any medium without royalty provided the copyright
1617notice and this notice are preserved.
1618
1619Local Variables:
1620mode: change-log
1621left-margin: 8
1622fill-column: 74
1623version-control: never
1624End: