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