12022-12-06 Nick Clifton <nickc@redhat.com> 2 3 PR 29852 4 * elf32-arm.c (cmse_scan): Check for NULL entries in the 5 sym_hashes array. 6 (elf32_arm_gc_mark_extra_sections): Likewise. 7 82022-12-05 Nick Clifton <nickc@redhat.com> 9 10 PR 29848 11 * vms-alpha.c (parse_module): Fix potential out of bounds memory 12 access. 13 142022-12-01 Nick Clifton <nickc@redhat.com> 15 16 PR 25202 17 * bfd.c (VerilogDataEndianness): New variable. 18 (verilog_write_record): Use VerilogDataEndianness, if set, to 19 choose the endianness of the output. 20 (verilog_write_section): Adjust the address by the data width. 21 222022-11-21 Nick Clifton <nickc@redhat.com> 23 24 PR 29764 25 * cpu-arm.c (scan): Accept machine names prefixed with "arm:". 26 * cpu-aarch64.c (scan): Accept machine names prefixed with "aarch64:". 27 282022-10-19 Nick Clifton <nickc@redhat.com> 29 30 PR 29699 31 * elf.c (_bfd_elf_slurp_version_tables): Fail if the sh_info field 32 of the section header is zero. 33 342022-09-09 Nick Clifton <nickc@redhat.com> 35 36 PR 29532 37 * elf.c (setup_group): Do not return false if there is no group 38 information available. 39 402022-09-02 Aaron Merey <amerey@redhat.com> 41 42 * aout-target.h (MY_find_nearest_line_with_alt): New macro. 43 * bfd-in2.h: Regenerate. 44 * bfd.c (bfd_find_nearest_line_with_alt): New macro. 45 * binary.c (binary_find_nearest_line_with_alt): New macro. 46 * coff-rs6000.c (_bfd_xcoff_find_nearest_line_with_alt): New macro. 47 (rs6000_xcoff64_vec): Add coff_find_nearest_line_with_alt. 48 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Calls 49 _bfd_dwarf2_find_nearest_line_with_alt. 50 (_bfd_dwarf2_find_nearest_line_with_alt): New function. Implements the 51 former _bfd_dwarf2_find_nearest_line. Adds parameter alt_filename. 52 Attempt to open alt_filename and use it as the .dwz file if not NULL. 53 * elf-bfd.h (_bfd_elf_find_nearest_line_with_alt): New declaration. 54 * elf.c (_bfd_elf_find_nearest_line): Calls 55 _bfd_elf_find_nearest_line_with_alt. 56 (_bfd_elf_find_nearest_line_with_alt): New function. Implements the 57 former _bfd_elf_find_nearest_line. Adds parameter alt_filename. 58 * elf32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro. 59 * elf64-mips.c (bfd_elf64_find_nearest_line_with_alt): New macro. 60 * elfn32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro. 61 * elfxx-mips.h (_bfd_mips_elf_find_nearest_line_with_alt): New macro. 62 * elfxx-target.h (bfd_elfNN_find_nearest_line_with_alt): New macro. 63 * i386mdos.c (msdos_find_nearest_line_with_alt): New macro. 64 * ihex.c (ihex_find_nearest_line_with_alt): New macro. 65 * libbfd-in.h (_bfd_nosymbols_find_nearest_line_with_alt): New 66 declaration. 67 (_bfd_dwarf2_find_nearest_line_with_alt): New declaration. 68 * libbfd.h: Regenerate. 69 * libcoff-in.h (coff_find_nearest_line_with_alt): New macro. 70 * libcoff.h: Regenerate. 71 * libecoff.h (_bfd_ecoff_find_nearest_line_with_alt): New macro. 72 * mach-o.h (bfd_mach_o_find_nearest_line_with_alt): New macro. 73 * mmo.c (mmo_find_nearest_line_with_alt): New macro. 74 * pef.c (bfd_pef_find_nearest_line_with_alt): New macro. 75 * plugin.c (bfd_plugin_find_nearest_line_with_alt): New macro. 76 * ppcboot.c (ppcboot_find_nearest_line_with_alt): New macro. 77 * som.h (som_find_nearest_line_with_alt): New macro. 78 * srec.c (srec_find_nearest_line_with_alt): New macro. 79 * syms.c (_bfd_nosymbols_find_nearest_line_with_alt): New function. 80 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Add symbol for 81 NAME##_find_nearest_line_with_alt. 82 (_bfd_find_nearest_line_with_alt): Add declaration. 83 * tekhex.c (tekhex_find_nearest_line_with_alt): New macro. 84 * verilog.c (verilog_find_nearest_line_with_alt): New macro. 85 * vms-alpha.c (_bfd_vms_find_nearest_line_with_alt): New macro. 86 * wasm-module.c (wasm_find_nearest_line_with_alt): New macro. 87 * xsym.c (bfd_sym_find_nearest_line_with_alt): New macro. 88 892022-09-02 Frederic Cambus <fred@statdns.com> 90 91 * config.bfd (arm-*-openbsd*): Restore target. 92 932022-08-30 Nick Clifton <nickc@redhat.com> 94 95 PR 29529 96 * dwarf2.c (struct line_info_table): Add new field: 97 use_dir_and_file_0. 98 (concat_filename): Use new field to help select the correct table 99 slot. 100 (read_formatted_entries): Do not skip entry 0. 101 (decode_line_info): Set new field depending upon the version of 102 DWARF being parsed. Initialise filename based upon the setting of 103 the new field. 104 1052022-08-22 Frederic Cambus <fred@statdns.com> 106 107 * config.bfd (aarch64-*-openbsd*): Add target. 108 1092022-08-03 Nick Clifton <nickc@redhat.com> 110 111 PR 29389 112 * bfd.c (BFD_CLOSED_BY_CACHE): New bfd flag. 113 * cache.c (bfd_cache_delete): Set BFD_CLOSED_BY_DELETE on the 114 closed bfd. 115 (bfd_cache_lookup_worker): Clear BFD_CLOSED_BY_DELETE on the newly 116 reopened bfd. 117 * opncls.c (bfd_set_filename): Refuse to change the name of a bfd 118 that has been closed by bfd_cache_delete. Mark changed bfds as 119 uncacheable. 120 * bfd-in2.h: Regenerate. 121 1222022-07-29 Nick Clifton <nickc@redhat.com> 123 124 PR 29424 125 * dwarf2.c (read_attribute_value): Handle DW_FORM_rnglistx and 126 DW_FORM_loclistx. 127 1282022-07-26 Nick Clifton <nickc@redhat.com> 129 130 * elfnn-loongarch.c (loongarch_elf_relocate_section): Fix 131 indentation. 132 1332022-07-08 Nick Clifton <nickc@redhat.com> 134 135 * 2.39 branch created. 136 1372022-05-19 Yvan Roux <yvan.roux@foss.st.com> 138 139 PR 25713 140 * bfdio.c (_bfd_real_fopen): Delete ccs string. 141 1422022-04-27 John Baldwin <jhb@FreeBSD.org> 143 144 * elf.c (elfcore_grok_freebsd_note): Handle NT_ARM_TLS notes. 145 1462022-04-25 Nick Clifton <nickc@redhat.com> 147 148 PR 29072 149 * elflink.c (bfd_elf_size_dynamic_sections): Display a note to the 150 user that the current ehaviour of creating an executable stack 151 because of a missing .note.GNU-stack section is deprecated and 152 will be changed in a future release. 153 1542022-04-20 Clément Chigot <clement.chigot@atos.net> 155 156 * coff-rs6000.c (xcoff_reloc_type_noop): Add info argument. 157 (xcoff_reloc_type_fail): Likewise. 158 (xcoff_reloc_type_pos): Likewise. 159 (xcoff_reloc_type_neg): Likewise. 160 (xcoff_reloc_type_rel): Likewise. 161 (xcoff_reloc_type_toc): Likewise. 162 (xcoff_reloc_type_ba): Likewise. 163 (xcoff_reloc_type_crel): Likewise. 164 (xcoff_reloc_type_tls): Likewise. 165 (xcoff_reloc_type_br): Add stub handler. 166 (xcoff_ppc_relocate_section): Add info to 167 xcoff_calculate_relocation. 168 (xcoff_stub_indirect_call_code): New constant. 169 (xcoff_stub_shared_call_code): Likewise. 170 (bfd_xcoff_backend_data): Add stub code fields. 171 (bfd_pmac_xcoff_backend_data): Likewise. 172 * coff64-rs6000.c (xcoff64_reloc_type_br): Add stub handler. 173 (xcoff64_ppc_relocate_section): Add info to 174 xcoff64_calculate_relocation. 175 (xcoff64_stub_indirect_call_code): New constant. 176 (xcoff64_stub_shared_call_code): Likewise. 177 (bfd_xcoff_backend_data): Add stub code fields. 178 (bfd_xcoff_aix5_backend_data): Likewise. 179 * libxcoff.h (struct xcoff_backend_data_rec): Add stub fields. 180 (bfd_xcoff_stub_indirect_call_code): New define. 181 (bfd_xcoff_stub_indirect_call_size): New define. 182 (bfd_xcoff_stub_shared_call_code): New define. 183 (bfd_xcoff_stub_shared_call_size): New define. 184 (xcoff_reloc_function): Add info argument. 185 (enum xcoff_stub_type): New enum. 186 (struct xcoff_stub_hash_entry): New structure. 187 * xcofflink.c (struct xcoff_link_hash_table): Add stub hash 188 table and params fields. 189 (xcoff_stub_hash_entry): New define. 190 (xcoff_stub_hash_lookup): New define. 191 (stub_hash_newfunc): New function. 192 (_bfd_xcoff_bfd_link_hash_table_free): Free the new stub hash 193 table. 194 (_bfd_xcoff_bfd_link_hash_table_create): Create the new stub 195 hash table. 196 (xcoff_link_add_symbols): Save rawsize for XTY_SD. 197 (bfd_xcoff_link_init): New function. 198 (xcoff_stub_csect_name): New function. 199 (xcoff_stub_get_csect_in_range): New function. 200 (xcoff_stub_name): New function. 201 (bfd_xcoff_get_stub_entry): New function. 202 (bfd_xcoff_type_of_stub): New function. 203 (xcoff_add_stub): New function. 204 (xcoff_build_one_stub): New function. 205 (bfd_xcoff_size_stubs): New function. 206 (bfd_xcoff_build_stubs): New function. 207 (xcoff_stub_create_relocations): New function. 208 (xcoff_link_input_bfd): Adapt relocations to stub. 209 (xcoff_write_global_symbol): Adapt to new TOC entries generated 210 for stubs. 211 (_bfd_xcoff_bfd_final_link): Handle stub file. 212 * xcofflink.h (struct bfd_xcoff_link_params): New structure. 213 2142022-04-20 Clément Chigot <clement.chigot@atos.net> 215 216 * coff-rs6000.c (_bfd_xcoff_put_ldsymbol_name): Write len in 217 ldinfo->strings instead of directly in the output_bfd. 218 * coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise. 219 * xcofflink.c (struct xcoff_link_hash_table): Remove ldrel_count 220 field. Add ldinfo field. 221 (xcoff_mark_symbol): Adjust to new ldinfo field. 222 (xcoff_mark): Likewise. 223 (bfd_xcoff_link_count_reloc): Likewise. 224 (xcoff_build_loader_section): Split into two functions: one that 225 build the loader section (this function) and one that only size 226 it... 227 (xcoff_size_loader_section): ... (this function). 228 (bfd_xcoff_size_dynamic_sections): Adapt to new ldinfo field. 229 Move the part where the dynamic sections are build to ... 230 (bfd_xcoff_build_dynamic_sections): ... this function. 231 * xcofflink.h: Add bfd_xcoff_build_dynamic_sections prototype. 232 2332022-04-13 Alexander von Gluck IV <kallisti5@unixzen.com> 234 235 * config.bfd (x86-haiku): Add i386_pei_vec as a selectable format. 236 2372022-04-08 Nick Clifton <nickc@redhat.com> 238 239 PR 29038 240 * coffgen.c (coff_find_nearest_line_with_names): Fix typo 241 retrieving saved bias. 242 2432022-04-07 Mark Harmstone <mark@harmstone.com> 244 245 * coff-i386.c (in_reloc_p): Add R_SECTION. 246 (howto_table): Add R_SECTION. 247 (coff_pe_i386_relocation_section): Add support for R_SECTION. 248 (coff_i386_reloc_type_lookup): Add support for 249 BFD_RELOC_16_SECCIDX. 250 * coff-x86_64.c (in_reloc_p): Add R_SECTION. 251 (howto_table): Add R_SECTION. 252 (coff_pe_amd64_relocation_section): Add support for R_SECTION. 253 (coff_amd64_reloc_type_lookup): Add support for 254 BFD_RELOC_16_SECCIDX. 255 * reloc.c: Add BFD_RELOC_16_SECIDX. 256 * bfd-in2.h: Regenerate. 257 * libbfd.h: Regenerate. 258 2592022-04-01 John Baldwin <jhb@FreeBSD.org> 260 261 * elf-bfd.h (elfcore_write_x86_segbases): New. 262 * elf.c (elfcore_grok_freebsd_note): Add pseudosections for 263 NT_FREEBSD_X86_SEGBASES register notes. 264 (elfcore_write_x86_segbases): New. 265 (elfcore_write_register_note): Write NT_FREEBSD_X86_SEGBASES 266 register notes. 267 2682022-04-01 John Baldwin <jhb@FreeBSD.org> 269 270 * elf.c (elfcore_grok_freebsd_note): Remove checks for namesz. 271 2722022-03-22 Steiner H Gunderson <steinar+sourceware@gunderson.no> 273 274 * dwarf2.c (_bfd_dwarf2_find_nearest_line): if a function name is 275 found, but no line number info, then return a result of 2. 276 2772022-03-21 Steiner H Gunderson <steinar+sourceware@gunderson.no> 278 279 PR 28978 280 * dwarf2.c (scan_unit_for_symbols): When performing second pass, 281 check to see if the function or variable being processed is the 282 same as the previous one. 283 2842022-03-18 Viorel Preoteasa <viorel.preoteasa@gmail.com> 285 286 PR 28924 287 * elf32-arm.c (THM_MAX_FWD_BRANCH_OFFSET): Fix definition. 288 (THM2_MAX_FWD_BRANCH_OFFSET): Likewise. 289 2902022-03-16 Simon Marchi <simon.marchi@efficios.com> 291 292 * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES): 293 Add cpu-amdgcn.c. 294 (BFD64_BACKENDS): Add elf64-amdgcn.lo. 295 (BFD64_BACKENDS_CFILES): Add elf64-amdgcn.c. 296 * Makefile.in: Re-generate. 297 * cpu-amdgcn.c: New. 298 * elf64-amdgcn.c: New. 299 * archures.c (bfd_architecture): Add bfd_arch_amdgcn and related 300 mach defines. 301 (bfd_amdgcn_arch): New. 302 (bfd_archures_list): Add bfd_amdgcn_arch. 303 * bfd-in2.h: Re-generate. 304 * config.bfd: Handle amdgcn* target. 305 * configure.ac: Handle amdgcn_elf64_le_vec. 306 * configure: Re-generate. 307 * elf-bfd.h (elf_target_id): Add AMDGCN_ELF_DATA. 308 * targets.c (amdgcn_elf64_le_vec): New. 309 (_bfd_target_vector): Add amdgcn_elf64_le_vec. 310 3112022-03-01 Torbjörn Svensson <torbjorn.svensson@st.com> 312 Fred Eisele <fredrick.eisele@gmail.com> 313 314 PR 25713 315 * bfdio.c (_bfd_real_fopen): Fix typo. 316 3172022-03-01 Nick Clifton <nickc@redhat.com> 318 319 PR 28848 320 * elf32-arm.c (elf32_arm_merge_eabi_attributes): If the first 321 input bfd has a Tag_ABI_HardFP_use set to 3 but does not also have 322 TAG_FP_arch set then reset the TAG_ABI_HardFP_use. 323 3242022-02-28 Torbjörn Svensson <torbjorn.svensson@st.com> 325 Fred Eisele <fredrick.eisele@gmail.com> 326 327 PR 25713 328 * bfdio.c (_bfd_real_fopen): Fix handling of paths longer than 260 329 characters on Windows hosts. 330 3312022-02-28 Nick Clifton <nickc@redhat.com> 332 333 PR 28886 334 * config.bfd: Update error message for obsolete configurations. 335 3362022-02-17 Nick Clifton <nickc@redhat.com> 337 338 * po/sr.po: Updated Serbian translation. 339 3402022-02-16 Fangrui Song <maskray@google.com> 341 Nick Clifton <nickc@redhat.com> 342 343 PR ld/28841 344 * bfd-in2.h (struct bfd_section): Add type. 345 (discarded_section): Add field. 346 * elf.c (elf_fake_sections): Handle bfd_section::type. 347 * section.c (BFD_FAKE_SECTION): Add field. 348 * mri.c (mri_draw_tree): Update function call. 349 3502022-02-11 Michael Forney <mforney@mforney.org> 351 352 * bfd.c (bfd_set_gp_value): Remove return with expression 353 in void function. 354 3552022-02-09 Nick Clifton <nickc@redhat.com> 356 357 * config.bfd: Move pending obsolesence targets into the definitely 358 obsolete list. 359 3602022-02-02 Nick Clifton <nickc@redhat.com> 361 362 PR 28834 363 * dwarf2.c (read_section): Change the heuristic that checks for 364 overlarge dwarf debug info sections. 365 3662022-02-02 Stafford Horne <shorne@gmail.com> 367 368 PR 28735 369 * elf32-or1k.c (or1k_elf_got16_no_overflow_howto): Define. 370 (or1k_elf_relocate_section): Use new howto instead of trying to 371 mask out relocation bits. 372 3732022-01-24 Roland McGrath <mcgrathr@google.com> 374 375 * doc/local.mk (%D%/bfdver.texi): Add mkdir command. 376 3772022-01-24 Nick Clifton <nickc@redhat.com> 378 379 * po/fr.po: Updated French translation. 380 * po/ro.po: Updated Romanian translation. 381 * po/uk.po: Updated Ukranian translation. 382 3832022-01-22 Nick Clifton <nickc@redhat.com> 384 385 * version.m4: Change to 2.38.50. 386 * configure: Regenerate. 387 * po/bfd.pot: Regenerate. 388 3892022-01-22 Nick Clifton <nickc@redhat.com> 390 391 * 2.38 release branch created. 392 3932022-01-17 Nick Clifton <nickc@redhat.com> 394 395 * Makefile.in: Regenerate. 396 * configure: Regenerate. 397 * doc/Makefile.in: Regenerate. 398 * po/bfd.pot: Regenerate. 399 4002021-12-15 Nikita Popov <npv1310@gmail.com> 401 402 PR 28687 403 * dwarf1.c (parse_die): Fix undefined behaviour in range tests. 404 4052021-11-17 Nick Clifton <nickc@redhat.com> 406 407 PR 28452 408 * elf.c (assign_file_positions_for_non_load_sections): Replace 409 assertion with a warning message. 410 4112021-10-19 Nick Clifton <nickc@redhat.com> 412 413 * linker.c (_bfd_generic_link_add_one_symbol): Test for a NULL 414 name before checking to see if the symbol is __gnu_lto_slim. 415 * archive.c (_bfd_compute_and_write_armap): Likewise. 416 4172021-09-27 Nick Alcock <nick.alcock@oracle.com> 418 419 * configure: Regenerate. 420 4212021-09-15 Andrew Burgess <andrew.burgess@embecosm.com> 422 423 * archures.c (bfd_arch_list): Use 'char *' instead of 'char **' 424 when calculating space for a string list. 425 4262021-09-014 Cupertino Miranda <cmiranda@synopsys.com> 427 Claudiu Zissulescu <claziss@synopsys.com> 428 429 * arc-got.h (arc_static_sym_data): New structure. 430 (get_static_sym_data): New function. 431 (relocate_fix_got_relocs_for_got_info): Move the computation fo 432 symbol value and section to above introduced function, and use 433 this new function. 434 4352021-09-07 Luis Machado <luis.machado@linaro.org> 436 437 Revert: [AArch64] MTE corefile support 438 439 2021-05-21 Luis Machado <luis.machado@linaro.org> 440 441 * elf.c (elfcore_make_memtag_note_section): New function. 442 (elfcore_grok_note): Handle NT_MEMTAG note types. 443 4442021-09-07 Nick Clifton <nickc@redhat.com> 445 446 PR 28305 447 * elf32-xtensa.c (elf_xtensa_do_reloc): Add check for put of range 448 reloc. 449 450 PR 28303 451 * elfxx-riscv.c (riscv_elf_add_sub_reloc): Add check for out of 452 range relocs. 453 4542021-08-10 Nick Clifton <nickc@redhat.com> 455 456 * po/sr.po: Updated Serbian translation. 457 4582021-07-18 Nick Clifton <nickc@redhat.com> 459 460 * config.bfd: Move pending obsoletion targets to obsolete list. 461 4622021-07-16 Giulio Benetti <giulio.benetti@benettiengineering.com> 463 464 * elf32-or1k.c (or1k_elf_relocate_section): Use a separate entry 465 in switch case R_OR1K_INSN_REL_26 where we need to check for 466 !SYMBOL_CALLS_LOCAL() instead of !SYMBOL_REFERENCES_LOCAL(). 467 4682021-07-14 Clément Chigot <clement.chigot@atos.net> 469 470 * libxcoff.h (struct xcoff_dwsect_name): Add DWARF name. 471 * coff-rs6000.c (xcoff_dwsect_names): Update. 472 * coffcode.h (sec_to_styp_flags): Likewise. 473 (coff_new_section_hook): Likewise. 474 4752021-07-10 Alan Modra <amodra@gmail.com> 476 477 * dwarf2.c (read_address): Remove accidental commit. 478 (read_ranges): Compare offset rather than pointers. 479 4802021-07-08 Nick Clifton <nickc@redhat.com> 481 482 * po/pt.po: Updated Portuguese translation. 483 4842021-07-07 Nick Clifton <nickc@redhat.com> 485 486 * elfcode.h (elf_swap_symbol_out): Revert accidental change that 487 removed an abort if the shndx pointer is NULL. 488 4892021-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 490 491 * sysdep.h [!ENABLE_NLS]: Prevent inclusion of <libintl.h> on 492 Solaris. 493 4942021-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 495 496 * configure.ac: Check for strnlen declaration. 497 * configure, config.in: Regenerate. 498 4992021-07-07 Nick Clifton <nickc@redhat.com> 500 501 PR 28051 502 * coff-rs6000.c (xcoff_reloc_type_tls): Reformat error messages in 503 order to fix problems when translating. 504 * cofflink.c (_bfd_coff_write_global_sym): Likewise. 505 * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub): 506 Likewise. 507 * po/bfd.pot: Regenerate. 508 5092021-07-06 Michael Matz <matz@suse.de> 510 511 PR ld/28021 512 * elfnn-riscv.c (riscv_relax_delete_bytes): Check for any 513 versioning. 514 5152021-07-06 Alan Modra <amodra@gmail.com> 516 517 PR 28055 518 * elf64-bpf.c (bpf_elf_generic_reloc): Add missing ATTRIBUTE_UNUSED. 519 5202021-07-05 Alan Modra <amodra@gmail.com> 521 522 PR 28055 523 * elf64-bpf.c (bpf_elf_generic_reloc): Use correct bfd for bfd_put 524 and bfd_put_32 calls. Correct section limit checks. 525 5262021-07-03 Nick Clifton <nickc@redhat.com> 527 528 * version.m4: Update version number. 529 * configure: Regenerate. 530 * po/opcodes.pot: Regenerate. 531 5322021-07-03 Nick Clifton <nickc@redhat.com> 533 534 * 2.37 release branch created. 535 5362021-07-02 Nick Clifton <nickc@redhat.com> 537 538 PR 28046 539 * dwarf2.c (read_ranges): Check that range_ptr does not exceed 540 range_end. 541 5422021-06-30 YunQiang Su <yunqiang.su@cipunited.com> 543 544 PR mips/28009 545 * bfd/elfxx-mips.c (_bfd_mips_elf_section_from_shdr, 546 _bfd_mips_elf_fake_sections): Mark LTO debug info as 547 SHT_MIPS_DWARF. 548 5492021-06-29 Nick Clifton <nickc@redhat.com> 550 551 * config.bfd (obsolete configurations): Add netbsdpe. 552 5532021-06-22 Nelson Chu <nelson.chu@sifive.com> 554 555 * elfnn-riscv.c (riscv_pcrel_hi_reloc): Added field to store 556 the original relocation type, in case the type is converted to 557 R_RISCV_HI20. 558 (riscv_pcrel_lo_reloc): Removed unused name field. 559 (riscv_pcrel_relocs): Added comments. 560 (riscv_zero_pcrel_hi_reloc): Removed unused input_bfd. 561 (riscv_record_pcrel_hi_reloc): Updated. 562 (riscv_record_pcrel_lo_reloc): Likewise. 563 (riscv_resolve_pcrel_lo_relocs): Likewise. Check the original 564 type of auipc, to make sure the %pcrel_lo without any addends. 565 Otherwise, report dangerous relocation error. 566 (riscv_elf_relocate_section): Updated above functions are changed. 567 For R_RISCV_GOT_HI20, report dangerous relocation error when addend 568 isn't zero. 569 5702021-06-19 H.J. Lu <hongjiu.lu@intel.com> 571 572 PR ld/27998 573 * elfxx-x86.c (elf_x86_allocate_dynrelocs): Count PLT for GOTOFF 574 relocation against IFUNC symbols. 575 (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. 576 5772021-06-19 H.J. Lu <hongjiu.lu@intel.com> 578 579 * elflink.c (bfd_elf_final_link): Correct DT_TEXTREL warning in 580 PDE. 581 5822021-06-18 H.J. Lu <hongjiu.lu@intel.com> 583 584 * elf-properties.c (_bfd_elf_parse_gnu_properties): Handle 585 GNU_PROPERTY_UINT32_AND_LO, GNU_PROPERTY_UINT32_AND_HI, 586 GNU_PROPERTY_UINT32_OR_LO and GNU_PROPERTY_UINT32_OR_HI. 587 (elf_merge_gnu_properties): Likewise. 588 5892021-06-11 Alan Modra <amodra@gmail.com> 590 591 PR 27952 592 * elf-bfd.h (struct elf_obj_tdata): Add is_pie. 593 * elflink.c (elf_link_add_object_symbols): Set is_pie. 594 5952021-06-09 Nick Clifton <nickc@redhat.com> 596 597 PR 27666 598 * config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec 599 vectors to Sparc Solaris2 targets. 600 6012021-06-08 Michael Matz <matz@suse.de> 602 603 * elf.c (bfd_section_from_shdr): Set has_secondary_relocs flag. 604 (_bfd_elf_slurp_secondary_reloc_section): Use it for early-out. 605 6062021-06-07 Jan Beulich <jbeulich@suse.com> 607 608 * dwarf2.c (read_ranges, read_rnglists): Add u suffix to constant. 609 6102021-06-02 Alan Modra <amodra@gmail.com> 611 612 * elf-attrs.c (_bfd_elf_parse_attributes): Break out of loop if 613 subsection length is too small to cover tag and length field. 614 6152021-05-31 Nelson Chu <nelson.chu@sifive.com> 616 Lifang Xia <lifang_xia@c-sky.com> 617 618 PR 27566 619 * elfnn-riscv.c (struct riscv_elf_link_hash_table): New integer pointer 620 to monitor the data segment phase. 621 (bfd_elfNN_riscv_set_data_segment_info): New function called by 622 after_allocation, to set the data_segment_phase from expld.dataseg. 623 (_bfd_riscv_relax_section): Don't relax when data_segment_phase is 624 exp_seg_relro_adjust (0x4). 625 * elfxx-riscv.h (bfd_elf32_riscv_set_data_segment_info): New extern. 626 (bfd_elf64_riscv_set_data_segment_info): Likewise 627 6282021-05-28 H.J. Lu <hongjiu.lu@intel.com> 629 630 PR ld/27905 631 * elf32-i386.c: Don't include "libiberty.h". 632 (elf_howto_table): Revert commits a7664973b24 and 50c95a739c9. 633 (elf_i386_rtype_to_howto): Revert commit 50c95a739c9. 634 (elf_i386_info_to_howto_rel): Likewise. 635 (elf_i386_tls_transition): Likewise. 636 (elf_i386_relocate_section): Likewise. 637 * elf64-x86-64.c (x86_64_elf_howto_table): Revert commits 638 a7664973b24 and 50c95a739c9. 639 (elf_x86_64_rtype_to_howto): Revert commit 50c95a739c9. 640 * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Likewise. 641 * elfxx-x86.h (elf_x86_obj_tdata): Likewise. 642 (elf_x86_has_code16): Likewise. 643 6442021-05-26 H.J. Lu <hongjiu.lu@intel.com> 645 646 PR ld/27905 647 * elf32-i386.c: Include "libiberty.h". 648 (elf_howto_table): Add 16-bit R_386_PC16 entry. 649 (elf_i386_rtype_to_howto): Add a BFD argument. Use 16-bit 650 R_386_PC16 if input has 16-bit mode instructions. 651 (elf_i386_info_to_howto_rel): Update elf_i386_rtype_to_howto 652 call. 653 (elf_i386_tls_transition): Likewise. 654 (elf_i386_relocate_section): Likewise. 655 * elf64-x86-64.c (x86_64_elf_howto_table): Add 16-bit 656 R_X86_64_PC16 entry. 657 (elf_x86_64_rtype_to_howto): Use 16-bit R_X86_64_PC16 if input 658 has 16-bit mode instructions. 659 * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Set 660 elf_x86_has_code16 if relocatable input is marked with 661 GNU_PROPERTY_X86_FEATURE_2_CODE16. 662 * elfxx-x86.h (elf_x86_obj_tdata): Add has_code16. 663 (elf_x86_has_code16): New. 664 6652021-05-26 Nelson Chu <nelson.chu@sifive.com> 666 667 * elfxx-riscv.h (check_unknown_prefixed_ext): New bool. 668 * elfxx-riscv.c (riscv_parse_prefixed_ext): Do not check the 669 prefixed extension name if check_unknown_prefixed_ext is false. 670 * elfnn-riscv.c (riscv_merge_arch_attr_info): Set 671 check_unknown_prefixed_ext to false for linker. 672 6732021-05-25 Nick Clifton <nickc@redhat.com> 674 675 * elf32-arn.c (struct elf_arm_obj_tdata): Add num_entries field. 676 (elf32_arm_num_entries): New macro. 677 (elf32_arm_allocate_local_sym_info): Initialise the new field. 678 Allocate arrays individually so that buffer overruns can be 679 detected by memory checkers. 680 (elf32_arm_create_local_iplt): Check num_entries. 681 (elf32_arm_get_plt_info): Likewise. 682 (elf32_arm_final_link_relocate): Likewise. 683 (elf32_arm_check_relocs): Likewise. 684 (elf32_arm_size_dynamic_sections): Likewise. 685 (elf32_arm_output_arch_local_syms): Likewise. 686 6872021-05-25 Nick Clifton <nickc@redhat.com> 688 689 * elf32-arm.c: Fix formatting. 690 6912021-05-25 Alan Modra <amodra@gmail.com> 692 693 * elf-attrs.c (elf_attr_strdup): New function. 694 (_bfd_elf_attr_strdup): Use it here. 695 (elf_add_obj_attr_string): New function, extracted from.. 696 (bfd_elf_add_obj_attr_string): ..here. 697 (elf_add_obj_attr_int_string): New function, extracted from.. 698 (bfd_elf_add_obj_attr_int_string): ..here. 699 (_bfd_elf_parse_attributes): Don't allocate an extra byte for a 700 string terminator. Instead ensure parsing doesn't go past 701 end of sub-section. Use size_t variables for lengths. 702 7032021-05-22 Alan Modra <amodra@gmail.com> 704 705 * libbfd.c (_bfd_safe_read_leb128): Remove length_return parameter. 706 Replace data pointer with pointer to pointer. Increment pointer 707 over bytes read. 708 * libbfd-in.h (_bfd_safe_read_leb128): Update prototype. 709 * elf-attrs.c (_bfd_elf_parse_attributes): Adjust to suit. Be 710 careful not to increment data pointer past end. Remove now 711 redundant pr17512 check. 712 * wasm-module.c (READ_LEB128): Adjust to suit changes to 713 _bfd_safe_read_leb128. 714 * dwarf2.c (read_n_bytes): New inline function, old one renamed to.. 715 (read_blk): ..this. Allocate and return block. Increment bfd_byte** 716 arg. 717 (read_3_bytes): New function. 718 (read_1_byte, read_1_signed_byte, read_2_bytes, read_4_bytes), 719 (read_8_bytes, read_string, read_indirect_string), 720 (read_indirect_line_string, read_alt_indirect_string): Take a 721 byte_byte** arg which is incremented over bytes read. Remove any 722 bytes_read return. Rewrite limit checks to compare lengths 723 rather than pointers. 724 (read_abbrevs, read_attribute_value, read_formatted_entries), 725 (decode_line_info, find_abstract_instance, read_ranges), 726 (read_rnglists, scan_unit_for_symbols, parse_comp_unit), 727 (stash_comp_unit): Adjust to suit. Rewrite limit checks to 728 compare lengths rather than pointers. 729 * libbfd.h: Regenerate. 730 7312021-05-21 Luis Machado <luis.machado@linaro.org> 732 733 * elf.c (elfcore_make_memtag_note_section): New function. 734 (elfcore_grok_note): Handle NT_MEMTAG note types. 735 7362021-05-20 Andrew Burgess <andrew.burgess@embecosm.com> 737 738 * section.c (bfd_get_section_by_name): Return NULL if name is 739 NULL. 740 (bfd_get_section_by_name_if): Likewise. 741 * dwarf2.c (read_section): Remove unneeded NULL check. 742 (find_debug_info): Likewise. 743 7442021-05-19 Nick Clifton <nickc@redhat.com> 745 746 * plugin.c (bfd_plugin_open_input): Inform the user if the limit 747 on the number of open files is reached. If possible, try to 748 increase this limit before failing. 749 7502021-05-14 Nelson Chu <nelson.chu@sifive.com> 751 752 * elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Check the values 753 of %pcrel_hi, before and after adding the addend. Make sure the 754 value won't be changed, otherwise, report dangerous error. 755 7562021-05-13 Nelson Chu <nelson.chu@sifive.com> 757 758 * elfxx-riscv.c (check_implicit_always): The check_func, always add 759 the implicit subset without checking. 760 (check_implicit_for_i): The check_func for i, only add zicsr and 761 zifencei when the version of i less than 2.1. 762 (struct riscv_implicit_subset): Record the subsets and their 763 corresponding implicit subsets. 764 (riscv_implicit_subsets): Table records all implicit informations. 765 (riscv_parse_add_implicit_subsets): Updated and add implicit subsets 766 according to riscv_implicit_subsets. Remove the redundant codes. 767 7682021-05-13 Alan Modra <amodra@gmail.com> 769 770 PR 27858 771 * elf32-sh.c (sh_elf_info_to_howto): Correct check for last valid 772 reloc howto. 773 7742021-05-12 Luis Machado <luis.machado@linaro.org> 775 776 * elf-bfd.h (elfcore_write_aarch_mte): New prototype. 777 * elf.c (elfcore_grok_aarch_mte, elfcore_write_aarch_mte): New 778 functions. 779 (elfcore_grok_note): Handle notes of type NT_ARM_TAGGED_ADDR_CTRL. 780 (elfcore_write_register_note): Handle MTE notes. 781 7822021-05-11 Alan Modra <amodra@gmail.com> 783 784 PR 27844 785 * pdp11.c (aout_get_external_symbols): Clear first four bytes of 786 strings array, not just the first byte. 787 * aoutx.h (aout_get_external_symbols): Likewise. 788 7892021-05-10 H.J. Lu <hongjiu.lu@intel.com> 790 791 PR binutils/27839 792 * simple.c (bfd_simple_get_relocated_section_contents): Remove 793 strayed fprintf. 794 7952021-05-10 Nick Clifton <nickc@redhat.com> 796 797 PR 27839 798 * simple.c (simple_dummy_add_to_set): New function. 799 (simple_dummy_constructor): New function. 800 (simple_dummy_multiple_common): New function. 801 (bfd_simple_get_relocated_section_contents): Zero out the 802 callbacks structure, and then set the add_to_set, constructor and 803 multiple_common fields. 804 8052021-05-10 Dimitar Dimitrov <dimitar@dinux.eu> 806 807 * elf32-pru.c (elf_backend_can_gc_sections): Define as 1. 808 8092021-05-08 Mike Frysinger <vapier@gentoo.org> 810 811 * doc/Makefile.am (html-local, bfd/index.html): New targets. 812 * doc/Makefile.in: Regenerate. 813 8142021-05-08 Mike Frysinger <vapier@gentoo.org> 815 816 * doc/Makefile.am (AM_MAKEINFOFLAGS): Define. 817 * doc/Makefile.in: Regenerate. 818 8192021-05-07 Clément Chigot <clement.chigot@atos.net> 820 821 * coff-rs6000.c (xcoff_dwsect_names): Add new DWARF 822 sections. 823 * coffgen.c (coff_pointerize_aux): Handle C_DWARF. 824 (coff_print_symbol): Likewise. 825 * libxcoff.h (XCOFF_DWSECT_NBR_NAMES): Update. 826 8272021-05-07 Jan Beulich <jbeulich@suse.com> 828 829 * elf64-x86-64.c (x86_64_elf_howto_table): Set src_mask fields 830 to zero. 831 8322021-05-07 Alan Modra <amodra@gmail.com> 833 834 * bfd-in2.h: Regenerate. 835 * libbfd.h: Regenerate. 836 8372021-05-06 Stafford Horne <shorne@gmail.com> 838 839 PR 27746 840 * elf32-or1k.c (PLT_ENTRY_SIZE_LARGE, PLT_MAX_INSN_COUNT, 841 OR1K_ADD, OR1K_ORI): New macros to help with plt creation. 842 (elf_or1k_link_hash_table): New field plt_count. 843 (elf_or1k_link_hash_entry): New field plt_index. 844 (elf_or1k_plt_entry_size): New function. 845 (or1k_write_plt_entry): Update to support variable size PLTs. 846 (or1k_elf_finish_dynamic_sections): Use new or1k_write_plt_entry 847 API. 848 (or1k_elf_finish_dynamic_symbol): Update to write large PLTs 849 when needed. 850 (allocate_dynrelocs): Use elf_or1k_plt_entry_size to account for 851 PLT size. 852 8532021-05-06 Stafford Horne <shorne@gmail.com> 854 855 PR 21464 856 * elf32-or1k.c (or1k_elf_relocate_section): Relax R_OR1K_GOT16 857 overflow check if we have R_OR1K_GOT_AHI16 followed by 858 R_OR1K_GOT16. 859 8602021-05-06 Stafford Horne <shorne@gmail.com> 861 862 PR 21464 863 * bfd-in2.h: Add BFD_RELOC_OR1K_GOT_AHI16 relocation. 864 * elf32-or1k.c (or1k_elf_howto_table, or1k_reloc_map): Likewise. 865 (or1k_final_link_relocate, or1k_elf_relocate_section, 866 or1k_elf_check_relocs): Likewise. 867 * libbfd.h (bfd_reloc_code_real_names): Likewise. 868 * reloc.c: Likewise. 869 8702021-05-06 Stafford Horne <shorne@gmail.com> 871 872 PR 27624 873 * elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Change 874 condition used to cleanup plt entries to cleanup forced local 875 entries. 876 8772021-05-05 H.J. Lu <hongjiu.lu@intel.com> 878 879 PR ld/27825 880 * elflink.c (elf_link_output_symstrtab): Always append ".COUNT" 881 to local symbols. 882 8832021-05-05 Alan Modra <amodra@gmail.com> 884 885 * vms-lib.c (vms_traverse_index): Account for vms_kbn size when 886 sanity checking keylen. 887 8882021-05-04 Nick Clifton <nickc@redhat.com> 889 890 * libbfd.c (bfd_malloc): Provide some documenation. Treat a size 891 of 0 as 1. 892 (bfd_realloc): Likewise. 893 (bfd_zmalloc): Likewise. 894 (bfd_realloc_or_free): Provide some documentation. Treat a size 895 of 0 as a request to free. 896 * libbfd-in.h (bfd_realloc): Remove prototype. 897 (bfd_realloc_or_free): Remove prototype. 898 (bfd_zmalloc): Remove prototype. 899 * libbfd.h: Regenerate. 900 9012021-05-03 Jan Beulich <jbeulich@suse.com> 902 903 * elf32-i386.c (elf_howto_table): Switch all 32-bit relocs to 904 complain_overflow_dont. 905 * elf64-x86-64.c (x86_64_elf_howto_table): Switch all 64-bit 906 relocs to complain_overflow_dont. 907 9082021-05-03 Alan Modra <amodra@gmail.com> 909 910 * elf32-ppc.c (allocate_dynrelocs): Keep dyn_relocs for undefweak 911 symbols when -z dynamic-undefined-weak or when there are no 912 dynamic relocs in read-only sections and -z nodynamic-undefined-weak 913 is not given. 914 * elf64-ppc.c (allocate_dynrelocs): Likewise. 915 9162021-05-03 Alan Modra <amodra@gmail.com> 917 918 * elf32-ppc.c (allocate_dynrelocs): Call ensure_undef_dynamic for 919 weak undefined symols that only appear on PLT relocs. 920 * elf64-ppc.c (allocate_dynrelocs): Likewise. 921 9222021-05-03 Alan Modra <amodra@gmail.com> 923 924 PR 27755 925 * elf32-ppc.c (ppc_elf_inline_plt): Do increment rel in loop. 926 9272021-05-03 Alan Modra <amodra@gmail.com> 928 929 * elf32-csky.c (is_mapping_symbol_name): New function. 930 (csky_elf_is_target_special_symbol): Likewise. 931 (csky_elf_maybe_function_sym): Likewise. 932 (bfd_elf32_bfd_is_target_special_symbol): Define. 933 (elf_backend_maybe_function_sym): Define. 934 9352021-04-30 Nick Clifton <nickc@redhat.com> 936 937 PR 27801 938 * mach-o.c (bfd_mach_o_core_fetch_environment): Use bfd_get_32 to 939 read 32-bit value. 940 9412021-04-30 Nick Clifton <nickc@redhat.com> 942 943 PR 27799 944 * elf32-xtensa.c (elf_xtensa_grok_prstatus): Check for core notes 945 that are too small. 946 9472021-04-30 Nick Clifton <nickc@redhat.com> 948 949 PR 27797 950 * libbfd.c (bfd_realloc_or_free): Do not free a pointer than has 951 been realloc'ed to size 0. 952 9532021-04-30 Nick Clifton <nickc@redhat.com> 954 955 PR 27795 956 * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Check for invalid name 957 lengths. 958 9592021-04-29 Nick Clifton <nickc@redhat.com> 960 961 PR 27793 962 * som.c (som_slurp_symbol_table): Assign symbols without any scope 963 to the undefined section. 964 (som_decode_symclass): Check for a missing symbol section. 965 * syms.c (bfd_decode_symclass): Likewise. 966 9672021-04-29 Nick Clifton <nickc@redhat.com> 968 969 PR 27792 970 * som.c (som_slurp_string_table): Place a terminating NUL byte at 971 the end of the table. 972 (som_slurp_symbol_table): Check for an over-large offset into the 973 string string table. 974 9752021-04-28 Nick Clifton <nickc@redhat.com> 976 977 * elf.c (_bfd_elf_maybe_function_sym): Do not accept annobin 978 symbols as potential function symbols. 979 * elfnn-aarch64.c (elfNN_aarch64_maybe_function_sym): Likewise. 980 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise. 981 * elf32-arm.c (elf32_arm_maybe_function_sym): Likewise. 982 9832021-04-26 Mike Frysinger <vapier@gentoo.org> 984 985 * elf-bfd.h: Include stdlib.h. 986 9872021-04-26 Jan Beulich <jbeulich@suse.com> 988 989 * elf32-i386.c (elf_howto_table): Switch R_386_PC16 to 990 complain_overflow_signed. 991 * elf64-x86-64.c (x86_64_elf_howto_table): Switch R_X86_64_PC16 992 to complain_overflow_signed. 993 9942021-04-23 Eric Botcazou <ebotcazou@adacore.com> 995 996 * elf.c (special_sections_p): Add .persistent.bss. 997 9982021-04-23 Jan Beulich <jbeulich@suse.com> 999 1000 * elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero 1001 size field. 1002 * elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL 1003 has zero size field. 1004 10052021-04-22 Clément Chigot <clement.chigot@atos.net> 1006 1007 * hash.c (struct bfd_strtab_hash): Remove xcoff field. 1008 Add length_field_size field. 1009 (_bfd_stringtab_init): Change prototype. 1010 Adapt to new length_field_size. 1011 (_bfd_xcoff_stringtab_init): Likewise. 1012 (_bfd_stringtab_add): Likewise. 1013 (_bfd_stringtab_emit): Likewise. 1014 * libbfd-in.h (_bfd_xcoff_stringtab_init): 1015 Change prototype. 1016 * libbfd.h: Regenerate. 1017 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): 1018 Call _bfd_xcoff_stringtab_init with isxcoff64 value. 1019 10202021-04-22 Clément Chigot <clement.chigot@atos.net> 1021 1022 * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for 1023 unsupported storage class or auxialiry entries. 1024 Improve and adapt to new aux structures. 1025 Add C_DWARF support. 1026 (_bfd_xcoff_swap_aux_out): Likewise. 1027 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise. 1028 (_bfd_xcoff64_swap_aux_out): Likewise. 1029 10302021-04-21 Eli Zaretskii <eliz@gnu.org> 1031 1032 PR 27760 1033 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add display 1034 of IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP, 1035 IMAGE_FILE_NET_RUN_FROM_SWAP and IMAGE_FILE_UP_SYSTEM_ONLY flags. 1036 Decode the contents of the DllCharacteristics field. 1037 10382021-04-21 Nick Clifton <nickc@redhat.com> 1039 1040 PR 27759 1041 * srec.c (srec_read_section): Replace assertions with error 1042 returns. 1043 10442021-04-20 Clément Chigot <clement.chigot@atos.net> 1045 1046 PR binutils/21700 1047 * reloc.c (BFD_RELOC_PPC_NEG): New relocation. 1048 * bfd-in2.h: Regenerate. 1049 * libbfd.h: Regenerate. 1050 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Add 1051 BFD_RELOC_PPC_NEG handler. 1052 (xcoff_reloc_type_neg): Correctly substract addend. 1053 * coff64-rs6000.c (xcoff64_howto_table): Add R_NEG_32 1054 howto. 1055 (xcoff64_rtype2howto): Add handler for R_NEG_32. 1056 (xcoff64_reloc_type_lookup): Add BFD_RELOC_PPC_NEG handler. 1057 * xcofflink.c (xcoff_need_ldrel_p): Check output section 1058 for R_POS-like relocations. New argument added. 1059 (xcoff_mark): Adapt to new xcoff_need_ldrel_p argument. 1060 (xcoff_link_input_bfd): Likewise. 1061 10622021-04-16 Alan Modra <amodra@gmail.com> 1063 1064 PR 27567 1065 * coffcode.h (styp_to_sec_flags): Use an unsigned long styp_flags. 1066 (coff_write_object_contents): Pass bfd to COFF_ENCODE_ALIGNMENT, 1067 ignore alignment checks when return is false. Formatting. 1068 10692021-04-15 Nelson Chu <nelson.chu@sifive.com> 1070 1071 PR27584 1072 * elfnn-riscv.c (riscv_elf_is_target_special_symbol): Added to 1073 omit local and empty symbols since they usually generated to 1074 mark the auipc instructions. 1075 10762021-04-15 Lifang Xia<lifang_xia@c-sky.com> 1077 1078 * elf32-csky.c (csky_elf_howto_table) 1079 <R_CKCORE_PCREL_IMM16BY2>: Set special_function to 1080 bfd_elf_generic_reloc. 1081 <R_CKCORE_PCREL_IMM16BY4>: Likewise. 1082 <R_CKCORE_PCREL_IMM10BY4>: Likewise. 1083 <R_CKCORE_PCREL_IMM18BY2>: Likewise. 1084 <R_CKCORE_PCREL_FLRW_IMM8BY4>: Likewise. 1085 10862021-04-14 H.J. Lu <hongjiu.lu@intel.com> 1087 1088 PR binutils/27708 1089 * elf.c (assign_file_positions_for_non_load_sections): Set 1090 p_memsz to p_filesz for the loadable PT_NOTE segment. 1091 10922021-04-14 Frederic Cambus <fred@statdns.com> 1093 1094 * elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef 1095 checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS. 1096 10972021-04-14 Alan Modra <amodra@gmail.com> 1098 1099 PR 27631 1100 * elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf 1101 when hh might be NULL, test for NULL first. 1102 11032021-04-14 Alan Modra <amodra@gmail.com> 1104 1105 PR 27630 1106 * elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when 1107 hash might be NULL, cast instead. 1108 11092021-04-13 Clément Chigot <clement.chigot@atos.net> 1110 1111 * xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier. 1112 11132021-04-13 Nelson Chu <nelson.chu@sifive.com> 1114 1115 * elfnn-riscv.c (riscv_version_mismatch): Do not report the warning 1116 when the version of input or output is RISCV_UNKNOWN_VERSION, since 1117 the extension is added implicitly. 1118 * elfxx-riscv.c: Updated the obsolete comments. 1119 (RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h. 1120 * elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added. 1121 11222021-04-12 Alan Modra <amodra@gmail.com> 1123 1124 * elf-bfd.h (ENABLE_CHECKING): Define. 1125 (elf_link_hash_lookup): Abort if wrong type of hash table. 1126 * configure.ac (--enable-checking): Add support. 1127 * config.in: Regenerate. 1128 * configure: Regenerate. 1129 11302021-04-12 Alan Modra <amodra@gmail.com> 1131 1132 * elf-bfd.h (is_elf_hash_table): Convert macro to inline function. 1133 (elf_link_hash_lookup, elf_link_hash_traverse): Likewise. 1134 (elf_hash_table, elf_hash_table_id): Likewise. 1135 * elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant 1136 is_elf_hash_table check. 1137 * elf32-csky.c (elf32_csky_setup_section_lists): Likewise. 1138 * elf32-hppa.c (clobber_millicode_symbols): Correct param types. 1139 * elf64-alpha.c (elf64_alpha_output_extsym): Likewise. 1140 * elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise. 1141 (elfNN_ia64_global_dyn_sym_thunk: Likewise. 1142 * elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise. 1143 (elf64_ia64_global_dyn_sym_thunk): Likewise. 1144 (elf64_vms_link_add_object_symbols): Pass base type of hash table 1145 to is_elf_hash_table. 1146 * elflink.c (_bfd_elf_dynamic_symbol_p): Likewise. 1147 (_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise. 1148 (_bfd_elf_strip_zero_sized_dynamic_sections): Likewise. 1149 (_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise. 1150 (bfd_elf_final_link): Likewise. 1151 * elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise. 1152 * elf64-ppc.c (ppc64_elf_set_toc): Likewise. Use bfd_link_hash_lookup. 1153 11542021-04-12 Alan Modra <amodra@gmail.com> 1155 1156 * elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry* 1157 from elf_backend_archive_symbol_lookup. 1158 (_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*. 1159 * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise. Check 1160 we have a ppc_hash_table before accessing ppc_link_hash_entry 1161 fields. 1162 * elflink.c (_bfd_elf_archive_symbol_lookup): Return 1163 bfd_link_hash_entry*. 1164 (elf_link_add_archive_symbols): Adjust to suit. 1165 11662021-04-12 Nelson Chu <nelson.chu@sifive.com> 1167 1168 * elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of 1169 i-ext when expanding g-ext. 1170 11712021-04-12 Nelson Chu <nelson.chu@sifive.com> 1172 1173 * elfxx-riscv.c (riscv_ext_dont_care_version): Removed. 1174 (riscv_parse_add_subset): Always add the implicit extensions, even if 1175 their versions are RISCV_UNKNOWN_VERSION. 1176 (riscv_parse_std_ext): Delay to add i-ext as the implicit extension 1177 in the riscv_parse_add_implicit_subsets. Besides, add g-ext as the 1178 implicit extension after it has been expanded. 1179 (riscv_parse_add_implicit_subsets): Updated. 1180 11812021-04-12 Nelson Chu <nelson.chu@sifive.com> 1182 1183 * elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward. 1184 (riscv_std_s_ext_strtab): Likewise. 1185 (riscv_std_h_ext_strtab): Likewise. 1186 (riscv_std_zxm_ext_strtab): Added for the zxm prefix. 1187 (enum riscv_prefix_ext_class): Moved forward and renamed from 1188 riscv_isa_ext_class. Reorder them according to the parsing order, 1189 since the enum values are used to check the orders in the 1190 riscv_compare_subsets. 1191 (struct riscv_parse_prefix_config): Moved forward and renamed from 1192 riscv_parse_config_t. Also removed the ext_valid_p field, the 1193 related functions are replaced by riscv_valid_prefixed_ext. 1194 (parse_config): Moved forward and updated. The more letters of the 1195 prefix string, the more forward it must be defined. Otherwise, we 1196 will get the wrong mapping when using strncmp in riscv_get_prefix_class. 1197 (riscv_get_prefix_class): Moved forward. Support to parse the 1198 multi-letter prefix, like zxm. 1199 (riscv_known_prefixed_ext): New function, check if the prefixed 1200 extension is supported according to the right riscv_std_*_ext_strtab. 1201 (riscv_valid_prefixed_ext): New function, used to replace the 1202 riscv_ext_*_valid_p functions. 1203 (riscv_init_ext_order): Do not set the values for prefix keywords 1204 since they may have multiple letters for now. 1205 (riscv_compare_subsets): Set the order values of prefix keywords 1206 to negative numbers according to the riscv_prefix_ext_class. 1207 (riscv_parse_std_ext): Call riscv_get_prefix_class to see if we 1208 have parsed the prefixed extensions. 1209 (riscv_parse_prefixed_ext): Updated and removed the parameter config. 1210 Report error when the prefix is unknown. 1211 (riscv_parse_subset): Do not parse the prefixed extensions according 1212 to the orders in the parse_config. Remove the confused message and 1213 let riscv_parse_prefixed_ext to report the details. 1214 * elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c. 1215 (riscv_get_prefix_class): Removed to static. 1216 12172021-04-08 Mike Frysinger <vapier@gentoo.org> 1218 1219 * configure.ac (ACX_BUGURL): Use https://. 1220 * configure.com (COPY_TEXT): Likewise. 1221 * configure: Regenerate. 1222 12232021-04-05 Alan Modra <amodra@gmail.com> 1224 1225 * configure.ac: Don't check for long long or long double type. 1226 Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h, 1227 strings.h, time.h, wchar.h, wctype.h or sys/time.h. Don't check 1228 for strtoull, free, malloc, realloc, getenv, strstr, snprintf, 1229 vsnprintf, strlen or setitimer. Sort AC_CHECK_DECLS. 1230 (AC_ISC_POSIX): Don't invoke. 1231 (AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise. 1232 * sysdep.h: Remove many HAVE_*_H checks and fallback declarations. 1233 Do test HAVE_SYS_TYPES_H. Don't include sys/time.h. Reorder 1234 header order as per automake AC_INCLUDES_DEFAULT. 1235 * bfd-in.h: Include inttypes.h unconditionally. 1236 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and 1237 long double are available. 1238 (bfd_scan_vma): Assume long long and strtoull are available. 1239 * elflink.c: Include limits.h unconditionally. 1240 * elfnn-riscv.c: Likewise. 1241 * wasm-module.c: Likewise. 1242 * hpux-core.c: Include dirent.h unconditionally. 1243 * trad-core.c: Likewise. 1244 * hosts/x86-64linux.h: Include stdlib.h unconditionally. 1245 * peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks. 1246 * elf32-m68hc1x.c: Don't include alloca-conf.h. 1247 * elf64-hppa.c: Likewise. 1248 * som.c: Likewise. 1249 * wasm-module.c: Likewise. 1250 * xsym.c: Likewise. 1251 * bfd-in2.h: Regenerate. 1252 * config.in: Regenerate. 1253 * configure: Regenerate. 1254 12552021-04-01 Tamar Christina <tamar.christina@arm.com> 1256 1257 PR ld/26659 1258 * cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow. 1259 12602021-04-01 Martin Liska <mliska@suse.cz> 1261 1262 * ecoff.c (strneq): Remove strneq and use startswith. 1263 (_bfd_ecoff_slurp_armap): Likewise. 1264 12652021-04-01 Martin Liska <mliska@suse.cz> 1266 1267 * elf-bfd.h (bfd_section_is_ctf): Use startswith function. 1268 * elf.c (_bfd_elf_make_section_from_shdr): Likewise. 1269 (elf_get_reloc_section): Likewise. 1270 * elf32-arc.c (elf_arc_size_dynamic_sections): Likewise. 1271 * elf32-m32r.c (m32r_elf_section_flags): Likewise. 1272 * elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise. 1273 * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise. 1274 (nds32_elf_relocate_section): Likewise. 1275 (nds32_elf_action_discarded): Likewise. 1276 (nds32_elf_check_relocs): Likewise. 1277 (nds32_elf_section_flags): Likewise. 1278 * elf32-or1k.c (or1k_elf_check_relocs): Likewise. 1279 * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise. 1280 * elf32-rx.c (rx_table_find): Likewise. 1281 (rx_table_map): Likewise. 1282 * elf32-spu.c (spu_elf_backend_symbol_processing): Likewise. 1283 (spu_elf_find_overlays): Likewise. 1284 (needs_ovl_stub): Likewise. 1285 (allocate_spuear_stubs): Likewise. 1286 (build_spuear_stubs): Likewise. 1287 (mark_overlay_section): Likewise. 1288 (spu_elf_auto_overlay): Likewise. 1289 (spu_elf_output_symbol_hook): Likewise. 1290 * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise. 1291 * elf32-xtensa.c (xtensa_property_section_name): Likewise. 1292 * elf64-ppc.c (ppc64_elf_section_flags): Likewise. 1293 (ppc64_elf_relocate_section): Likewise. 1294 * elflink.c (resolve_section): Likewise. 1295 (UNARY_OP): Likewise. 1296 (BINARY_OP_HEAD): Likewise. 1297 (elf_link_input_bfd): Likewise. 1298 * elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise. 1299 * elfxx-riscv.c (riscv_parse_subset): Likewise. 1300 * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise. 1301 * opncls.c (get_build_id): Likewise. 1302 13032021-03-31 Alan Modra <amodra@gmail.com> 1304 1305 PR 27671 1306 * bfd-in.h: Don't poison FALSE or TRUE. 1307 * bfd-in2.h: Regenerate. 1308 13092021-03-31 Alan Modra <amodra@gmail.com> 1310 1311 * sysdep.h: POISON_BFD_BOOLEAN: Define. 1312 * aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h, 1313 * aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c, 1314 * bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c, 1315 * coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c, 1316 * coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c, 1317 * coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c, 1318 * coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c, 1319 * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c, 1320 * coffcode.h, * coffgen.c, * cofflink.c, * compress.c, 1321 * corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c, 1322 * cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c, 1323 * cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c, 1324 * cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c, 1325 * cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c, 1326 * cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c, 1327 * cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c, 1328 * cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c, 1329 * cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c, 1330 * cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c, 1331 * cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c, 1332 * cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c, 1333 * cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c, 1334 * cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c, 1335 * cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c, 1336 * cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c, 1337 * cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c, 1338 * cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c, 1339 * cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c, 1340 * cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c, 1341 * cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c, 1342 * dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c, 1343 * elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h, 1344 * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c, 1345 * elf-nacl.h, * elf-properties.c, * elf-s390-common.c, 1346 * elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h, 1347 * elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c, 1348 * elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c, 1349 * elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c, 1350 * elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c, 1351 * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c, 1352 * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c, 1353 * elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c, 1354 * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c, 1355 * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c, 1356 * elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c, 1357 * elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c, 1358 * elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c, 1359 * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, 1360 * elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c, 1361 * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c, 1362 * elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c, 1363 * elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h, 1364 * elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h, 1365 * elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c, 1366 * elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h, 1367 * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c, 1368 * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c, 1369 * elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c, 1370 * elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c, 1371 * elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c, 1372 * elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c, 1373 * elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h, 1374 * elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c, 1375 * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c, 1376 * elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h, 1377 * elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h, 1378 * elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h, 1379 * elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h, 1380 * format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c, 1381 * i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h, 1382 * libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h, 1383 * libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c, 1384 * mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h, 1385 * merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c, 1386 * pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c, 1387 * pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c, 1388 * pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c, 1389 * peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c, 1390 * reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c, 1391 * som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c, 1392 * verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h, 1393 * wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c, 1394 * xsym.h: Replace bfd_boolean with bool, FALSE with false, and 1395 TRUE with true throughout. 1396 * bfd-in2.h: Regenerate. 1397 * libbfd.h: Regenerate. 1398 * libcoff.h: Regenerate. 1399 14002021-03-31 Alan Modra <amodra@gmail.com> 1401 1402 * bfd-in.h: Include stdbool.h. 1403 (bfd_boolean): Define as bool 1404 * bfd-in2.h: Regenerate. 1405 14062021-03-31 Alan Modra <amodra@gmail.com> 1407 1408 * .gitignore: Delete bfd_stdint.h entry. 1409 * Makefile.am (bfdinclude_HEADERS): Delete bfd_stdint.h. 1410 (BUILD_HFILES, LOCAL_H_DEPS): Likewise. 1411 * bfd-in.h: Include stdint.h in place of bfd_stdint.h. 1412 * configure.ac: Don't invoke GCC_HEADER_STDINT. 1413 * configure.com: Don't create bfd_stdint.h. 1414 * Makefile.in: Regenerate. 1415 * aclocal.m4: Regenerate. 1416 * bfd-in2.h: Regenerate. 1417 * config.in: Regenerate. 1418 * configure: Regenerate. 1419 * doc/Makefile.in: Regenerate. 1420 * po/BLD-POTFILES.in: Regenerate. 1421 14222021-03-31 Alan Modra <amodra@gmail.com> 1423 1424 * bfd-in.h: Include string.h. 1425 (LITMEMCPY, LITSTRCPY): Delete. 1426 * bfd-in2.h: Regenerate. 1427 14282021-03-30 Alan Modra <amodra@gmail.com> 1429 1430 * elflink.c (elf_link_add_object_symbols): Don't set h->indx 1431 unless is_elf_hash_table. 1432 14332021-03-29 Alan Modra <amodra@gmail.com> 1434 1435 * aoutx.h (aout_link_write_symbols): Don't cast boolean expression 1436 to bfd_boolean. 1437 * elf32-or1k.c (or1k_set_got_and_rela_sizes): Dont compare booleans 1438 against FALSE. 1439 * elf32-arc.c (name_for_global_symbol): Don't compare boolean to TRUE. 1440 (is_reloc_PC_relative): Don't use "boolean_condition ? TRUE : FALSE". 1441 (is_reloc_SDA_relative, is_reloc_for_GOT): Likewise. 1442 (is_reloc_for_PLT, is_reloc_for_TLS): Likewise. 1443 * elf32-arm.c (stm32l4xx_need_create_replacing_stub): Likewise. 1444 * elf32-nds32.c (insert_nds32_elf_blank): Likewise. 1445 * elf32-rx.c (rx_set_section_contents): Likewise. 1446 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. 1447 * elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): Likewise. 1448 * mach-o.c (bfd_mach_o_read_command): Likewise. 1449 * targets.c (bfd_get_target_info): Likewise. 1450 14512021-03-29 Alan Modra <amodra@gmail.com> 1452 1453 * coff-z80.c (z80_is_local_label_name): Return bfd_boolean. 1454 * elf32-z80.c (z80_is_local_label_name): Likewise. 1455 * elf32-spu.c (spu_elf_modify_headers): Likewise. 1456 * elf32-nds32.h (struct elf_nds32_link_hash_table <hyper_relax>): 1457 Change type to int. 1458 * vms-lib.c (_bfd_vms_lib_write_archive_contents): Correct test 1459 for error return from vms_write_data_block. 1460 14612021-03-29 Alan Modra <amodra@gmail.com> 1462 1463 * elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int. 1464 * elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise. 1465 (elf64_ia64_local_dyn_sym_thunk): Likewise. 1466 * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise. 1467 * elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs), 1468 (elfNN_aarch64_finish_local_dynamic_symbol): Likewise. 1469 * elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise. 1470 (elfNN_ia64_local_dyn_sym_thunk): Likewise. 1471 * elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise. 1472 (riscv_pcrel_reloc_eq): Likewise. 1473 (riscv_elf_finish_local_dynamic_symbol): Likewise. 1474 * elfxx-sparc.c (allocate_local_dynrelocs): Likewise. 1475 (finish_local_dynamic_symbol): Likewise. 1476 * elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise. 1477 * elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise. 1478 (mips_elf_count_got_symbols): Change return type to bfd_boolean. 1479 14802021-03-29 Alan Modra <amodra@gmail.com> 1481 1482 * elflink.c (elf_link_output_symstrtab): Make flinfo parameter 1483 a void pointer. 1484 (bfd_elf_final_link): Delete out_sym_func typedef and don't cast 1485 elf_link_output_symstrtab when calling output_arch_syms and 1486 output_arch_local_syms. 1487 * elf-bfd.h (struct elf_backend_data <elf_backend_output_arch_syms, 1488 elf_backend_output_arch_local_syms>): Change return type of func 1489 arg to match elf_link_output_symstrtab. 1490 * elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Correct 1491 return type. 1492 * elf32-nds32.c (nds32_elf_output_symbol_hook): Correct return type. 1493 (nds32_elf_output_arch_syms): Correct func return type. 1494 14952021-03-29 Alan Modra <amodra@gmail.com> 1496 1497 * elf-m10200.c (mn10200_elf_relocate_section): Return int. 1498 * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 1499 * elf32-arc.c (elf_arc_relocate_section): Likewise. 1500 * elf32-arm.c (elf32_arm_relocate_section): Likewise. 1501 * elf32-avr.c (elf32_avr_relocate_section): Likewise. 1502 * elf32-bfin.c (bfin_relocate_section): Likewise. 1503 (bfinfdpic_relocate_section): Likewise. 1504 * elf32-cr16.c (elf32_cr16_relocate_section): Likewise. 1505 * elf32-cris.c (cris_elf_relocate_section): Likewise. 1506 * elf32-crx.c (elf32_crx_relocate_section): Likewise. 1507 * elf32-csky.c (csky_elf_relocate_section): Likewise. 1508 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. 1509 * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise. 1510 * elf32-fr30.c (fr30_elf_relocate_section): Likewise. 1511 * elf32-frv.c (elf32_frv_relocate_section): Likewise. 1512 * elf32-ft32.c (ft32_elf_relocate_section): Likewise. 1513 * elf32-h8300.c (elf32_h8_relocate_section): Likewise. 1514 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 1515 * elf32-i386.c (elf_i386_relocate_section): Likewise. 1516 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. 1517 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise. 1518 * elf32-lm32.c (lm32_elf_relocate_section): Likewise. 1519 * elf32-m32c.c (m32c_elf_relocate_section): Likewise. 1520 * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 1521 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise. 1522 * elf32-m68hc1x.h (elf32_m68hc11_relocate_section): Likewise. 1523 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 1524 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 1525 * elf32-mep.c (mep_elf_relocate_section): Likewise. 1526 * elf32-metag.c (elf_metag_relocate_section): Likewise. 1527 * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise. 1528 * elf32-moxie.c (moxie_elf_relocate_section): Likewise. 1529 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise. 1530 * elf32-mt.c (mt_elf_relocate_section): Likewise. 1531 * elf32-nds32.c (nds32_elf_relocate_section): Likewise. 1532 * elf32-nios2.c (nios2_elf32_relocate_section): Likewise. 1533 * elf32-or1k.c (or1k_elf_relocate_section): Likewise. 1534 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 1535 * elf32-pru.c (pru_elf32_relocate_section): Likewise. 1536 * elf32-rl78.c (rl78_elf_relocate_section): Likewise. 1537 * elf32-rx.c (rx_elf_relocate_section): Likewise. 1538 * elf32-s390.c (elf_s390_relocate_section): Likewise. 1539 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise. 1540 (_bfd_score_elf_relocate_section): Likewise. 1541 * elf32-score.h (s7_bfd_score_elf_relocate_section): Likewise. 1542 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. 1543 * elf32-sh.c (sh_elf_relocate_section): Likewise. 1544 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise. 1545 * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. 1546 * elf32-v850.c (v850_elf_relocate_section): Likewise. 1547 * elf32-vax.c (elf_vax_relocate_section): Likewise. 1548 * elf32-visium.c (visium_elf_relocate_section): Likewise. 1549 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise. 1550 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise. 1551 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. 1552 * elf32-z80.c (z80_elf_relocate_section): Likewise. 1553 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise. 1554 (elf64_alpha_relocate_section): Likewise. 1555 * elf64-bpf.c (bpf_elf_relocate_section): Likewise. 1556 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise. 1557 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise. 1558 * elf64-mmix.c (mmix_elf_relocate_section): Likewise. 1559 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 1560 * elf64-s390.c (elf_s390_relocate_section): Likewise. 1561 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 1562 * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise. 1563 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise. 1564 * elfnn-riscv.c (riscv_elf_relocate_section): Likewise. 1565 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise. 1566 * elfxx-mips.h (_bfd_mips_elf_relocate_section): Likewise. 1567 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. 1568 * elfxx-sparc.h (_bfd_sparc_elf_relocate_section): Likewise. 1569 * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. 1570 * elfxx-tilegx.h (tilegx_elf_relocate_section): Likewise. 1571 15722021-03-26 Keith Seitz <keiths@redhat.com> 1573 1574 * elfcore.h (_bfd_elf_core_find_build_id): Seek file 1575 offset of program headers after calling elf_read_notes. 1576 15772021-03-23 Jan Beulich <jbeulich@suse.com> 1578 1579 * dwarf2.c (read_indexed_string): Rename index to idx. 1580 15812021-03-22 Martin Liska <mliska@suse.cz> 1582 1583 * bfd-in.h (startswith): Add startswith function. 1584 (CONST_STRNEQ): Remove. 1585 * bfd-in2.h (startswith): Regenerate with make headers. 1586 * archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith. 1587 (_bfd_slurp_extended_name_table): Likewise. 1588 * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise. 1589 * bfd.c (bfd_get_sign_extend_vma): Likewise. 1590 (bfd_convert_section_size): Likewise. 1591 (bfd_convert_section_contents): Likewise. 1592 * coff-stgo32.c (go32exe_create_stub): Likewise. 1593 (go32exe_check_format): Likewise. 1594 * coffcode.h (styp_to_sec_flags): Likewise. 1595 (GNU_DEBUGALTLINK): Likewise. 1596 * coffgen.c (_bfd_coff_section_already_linked): Likewise. 1597 (coff_gc_sweep): Likewise. 1598 (bfd_coff_gc_sections): Likewise. 1599 * cofflink.c (coff_link_add_symbols): Likewise. 1600 (process_embedded_commands): Likewise. 1601 * compress.c (bfd_is_section_compressed_with_header): Likewise. 1602 (bfd_init_section_decompress_status): Likewise. 1603 * dwarf2.c (find_debug_info): Likewise. 1604 (place_sections): Likewise. 1605 * ecoff.c (_bfd_ecoff_slurp_armap): Likewise. 1606 * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise. 1607 * elf.c (_bfd_elf_make_section_from_shdr): Likewise. 1608 (assign_section_numbers): Likewise. 1609 (elfcore_grok_win32pstatus): Likewise. 1610 * elf32-arm.c (cmse_scan): Likewise. 1611 (elf32_arm_gc_mark_extra_sections): Likewise. 1612 (elf32_arm_size_dynamic_sections): Likewise. 1613 (is_arm_elf_unwind_section_name): Likewise. 1614 * elf32-bfin.c (bfin_size_dynamic_sections): Likewise. 1615 * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise. 1616 * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise. 1617 * elf32-csky.c (csky_elf_size_dynamic_sections): Likewise. 1618 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise. 1619 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise. 1620 * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise. 1621 * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise. 1622 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. 1623 * elf32-metag.c (elf_metag_size_dynamic_sections): Likewise. 1624 * elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise. 1625 * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise. 1626 * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise. 1627 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. 1628 * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise. 1629 * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise. 1630 * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise. 1631 * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise. 1632 * elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise. 1633 (elf32_tic6x_size_dynamic_sections): Likewise. 1634 * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise. 1635 * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise. 1636 (xtensa_is_insntable_section): Likewise. 1637 (xtensa_is_littable_section): Likewise. 1638 (xtensa_is_proptable_section): Likewise. 1639 (xtensa_property_section_name): Likewise. 1640 (xtensa_callback_required_dependence): Likewise. 1641 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. 1642 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. 1643 * elf64-ia64-vms.c (is_unwind_section_name): Likewise. 1644 (get_reloc_section): Likewise. 1645 (elf64_ia64_size_dynamic_sections): Likewise. 1646 (elf64_ia64_object_p): Likewise. 1647 * elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise. 1648 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise. 1649 * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise. 1650 * elflink.c (elf_link_add_object_symbols): Likewise. 1651 (_bfd_elf_gc_mark_extra_sections): Likewise. 1652 (bfd_elf_parse_eh_frame_entries): Likewise. 1653 (_bfd_elf_section_already_linked): Likewise. 1654 * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise. 1655 * elfnn-ia64.c (is_unwind_section_name): Likewise. 1656 (elfNN_ia64_size_dynamic_sections): Likewise. 1657 (elfNN_ia64_object_p): Likewise. 1658 * elfxx-mips.c (FN_STUB_P): Likewise. 1659 (CALL_STUB_P): Likewise. 1660 (CALL_FP_STUB_P): Likewise. 1661 (_bfd_mips_elf_section_from_shdr): Likewise. 1662 (_bfd_mips_elf_fake_sections): Likewise. 1663 (_bfd_mips_elf_size_dynamic_sections): Likewise. 1664 (_bfd_mips_final_write_processing): Likewise. 1665 (_bfd_mips_elf_final_link): Likewise. 1666 * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise. 1667 * elfxx-x86.c (elf_i386_is_reloc_section): Likewise. 1668 (elf_x86_64_is_reloc_section): Likewise. 1669 * hpux-core.c (thread_section_p): Likewise. 1670 * libcoff.h (bfd_pei_p): Likewise. 1671 * linker.c (REAL): Likewise. 1672 (unwrap_hash_lookup): Likewise. 1673 (_bfd_generic_link_add_one_symbol): Likewise. 1674 * mmo.c (mmo_internal_write_section): Likewise. 1675 * osf-core.c (osf_core_core_file_p): Likewise. 1676 * pef.c (bfd_pef_print_symbol): Likewise. 1677 * pei-x86_64.c (pex64_print_all_pdata_sections): Likewise. 1678 * som.c (som_slurp_symbol_table): Likewise. 1679 (som_slurp_armap): Likewise. 1680 * wasm-module.c (wasm_compute_custom_section_file_position): Likewise. 1681 16822021-03-22 Jan Beulich <jbeulich@suse.com> 1683 1684 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing 1685 language translation wrapping to _bfd_error_handler() 1686 invocations. 1687 16882021-03-21 Alan Modra <amodra@gmail.com> 1689 1690 * bfd-in.h (startswith): New inline. 1691 (CONST_STRNEQ): Use startswith. 1692 * bfd-in2.h: Regenerate. 1693 16942021-03-20 Alan Modra <amodra@gmail.com> 1695 1696 PR 27590 1697 * elf.c (_bfd_elf_make_section_from_shdr): Remove SHF_EXCLUDE 1698 test for .gnu.debuglto*. 1699 17002021-03-18 H.J. Lu <hongjiu.lu@intel.com> 1701 1702 PR ld/27590 1703 * elf.c (_bfd_elf_make_section_from_shdr): Treat 1704 .gnu.debuglto_.debug_ section as debugging section unless it is 1705 marked with SHF_EXCLUDE. 1706 * elflink.c (elf_create_symbuf): Revert commit 994b2513281. 1707 (bfd_elf_match_symbols_in_sections): Ignore section symbols when 1708 matching non-debugging sections or linkonce section with comdat 1709 section. 1710 17112021-03-18 H.J. Lu <hongjiu.lu@intel.com> 1712 1713 PR ld/27587 1714 * dwarf2.c (read_attribute_value): Check version >= 3 for 1715 DW_FORM_ref_addr. 1716 17172021-03-16 Nick Clifton <nickc@redhat.com> 1718 1719 * peXXigen.c (_bfd_XXi_swap_aux_out): Avoid potential buffer 1720 overrun by using sizeof of the destination x_fname field as the 1721 limit for a memcpy. 1722 17232021-03-16 Kuan-Lin Chen <kuanlinchentw@gmail.com> 1724 1725 * elfxx-riscv.c (riscv_std_z_ext_strtab): Add zba, zbb and zbc. 1726 17272021-03-12 Clément Chigot <clement.chigot@atos.net> 1728 1729 * reloc.c (BFD_RELOC_PPC_TLS_LE, BFD_RELOC_PPC_TLS_IE, 1730 BFD_RELOC_PPC_TLS_M, BFD_RELOC_PPC_TLS_ML, BFD_RELOC_PPC64_TLS_GD, 1731 BFD_RELOC_PPC64_TLS_LD, BFD_RELOC_PPC64_TLS_LE, 1732 BFD_RELOC_PPC64_TLS_IE, BFD_RELOC_PPC64_TLS_M, 1733 BFD_RELOC_PPC64_TLS_ML): New relocations. 1734 * bfd-in2.h: Regenerate. 1735 * libbfd.h: Regenerate. 1736 * coff-rs6000.c (xcoff_calculate_relocation): Call 1737 xcoff_reloc_type_tls for TLS relocations. 1738 (xcoff_howto_table): Implement TLS relocations. 1739 (_bfd_xcoff_reloc_type_lookup): Add cases TLS relocations. 1740 (xcoff_reloc_type_tls): New function. 1741 * coff64-rs6000.c (xcoff_calculate_relocation): Likewise. 1742 (xcoff_howto_table): Likewise. 1743 (_bfd_xcoff_reloc_type_lookup): Likewise. 1744 * coffcode.h (sec_to_styp_flags): Handle TLS sections. 1745 (styp_to_sec_flags): Likewise. 1746 (coff_compute_section_file_positions): Avoid file offset 1747 optimisation for .data when the previous section is .tdata. 1748 (coff_write_object_contents): Handle TLS sections. 1749 * coffswap.h (coff_swap_aouthdr_out): Add support for 1750 new fields in aouthdr. 1751 * libxcoff.h (xcoff_reloc_type_tls): Add prototype. 1752 * xcofflink.c (xcoff_link_add_symbols): Handle XMC_UL. 1753 (xcoff_need_ldrel_p): Add cases for TLS relocations. 1754 (xcoff_create_ldrel): Add l_symndx for TLS sections. 1755 17562021-03-12 Clément Chigot <clement.chigot@atos.net> 1757 1758 * reloc.c (BFD_RELOC_PPC_TOC16_HI, BFD_RELOC_PPC_TOC16_LO): 1759 New relocations. 1760 * bfd-in2.h: Regenerate. 1761 * libbfd.h: Regenerate. 1762 * coff-rs6000.c (xcoff_calculate_relocation): Call 1763 xcoff_reloc_type_toc for R_TOCU and R_TOCL. 1764 (xcoff_howto_table): Remove src_mask for TOC relocations. 1765 Add R_TOCU and R_TOCL howtos. 1766 (_bfd_xcoff_reloc_type_lookup): Add cases for 1767 BFD_RELOC_PPC_TOC16_HI and BFD_RELOC_PPC_TOC16_LO. 1768 (xcoff_reloc_type_toc): Compute the whole offset. 1769 Implement R_TOCU and R_TOCL. 1770 * coff64-rs6000.c (xcoff64_calculate_relocation): 1771 Likewise. 1772 (xcoff64_howto_table): Likewise. 1773 (xcoff64_reloc_type_lookup): Likewise. 1774 17752021-03-12 Clément Chigot <clement.chigot@atos.net> 1776 1777 * coff-rs6000.c (xcoff_calculate_relocation): Correct and 1778 add new relocations. 1779 (xcoff_howto_table): Likewise. 1780 (xcoff_rtype2howto): Increase r_type maximum value. 1781 (xcoff_ppc_relocate_section): Reuse predefined HOWTOs instead 1782 of create a new one from scratch. Enable only some relocations 1783 to have a changing r_size. 1784 * coff64-rs6000.c (xcoff64_calculate_relocation): Likewise. 1785 (xcoff64_howto_table): Likewise. 1786 (xcoff64_rtype2howto): Likewise. 1787 (xcoff64_ppc_relocate_section): Likewise. 1788 * libxcoff.h (XCOFF_MAX_CALCULATE_RELOCATION): Fix value. 1789 17902021-03-12 Clément Chigot <clement.chigot@atos.net> 1791 1792 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Move. 1793 17942021-03-12 Clément Chigot <clement.chigot@atos.net> 1795 1796 * coff64-rs6000.c (xcoff64_write_object_contents): Remove. 1797 * coffcode.h (coff_write_object_contents): Add bfd_mach_ppc_620 1798 support for o_cputype field. Avoid creating an empty a.out header 1799 for XCOFF64. 1800 18012021-03-12 Clément Chigot <clement.chigot@atos.net> 1802 1803 * coff64-rs6000.c (xcoff64_create_csect_from_smclas): Add 1804 missing smclass. 1805 18062021-03-11 Nelson Chu <nelson.chu@sifive.com> 1807 1808 * elfnn-riscv.c (riscv_elf_link_hash_table): New boolean 1809 restart_relax, used to check if we need to run the whole 1810 relaxations from relax pass 0 to 2 again. 1811 (riscv_elf_link_hash_table_create): Init restart_relax to FALSE. 1812 (_bfd_riscv_relax_align): Remove obsolete sec_flg0 set. 1813 (_bfd_riscv_relax_delete): Set again to TRUE if we do delete the code. 1814 (bfd_elfNN_riscv_restart_relax_sections): New function. Called by 1815 after_allocation to check if we need to run the whole relaxations again. 1816 (_bfd_riscv_relax_section): We will only enter into the relax pass 3 1817 when the restart_relax is FALSE; At last set restart_relax to TRUE if 1818 again is TRUE, too. 1819 * elfxx-riscv.h (bfd_elf32_riscv_restart_relax_sections): Declaration. 1820 (bfd_elf64_riscv_restart_relax_sections): Likewise. 1821 18222021-03-10 Jan Beulich <jbeulich@suse.com> 1823 1824 * cofflink.c (_bfd_coff_write_global_sym): Range-check symbol 1825 offset. 1826 18272021-03-10 Alan Modra <amodra@gmail.com> 1828 Jan Beulich <jbeulich@suse.com> 1829 1830 * elf.c (bfd_elf_generic_reloc): Make references between debug 1831 sections use section relative values. 1832 18332021-03-09 Jan Beulich <jbeulich@suse.com> 1834 1835 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Diagnose out of range RVA. 1836 18372021-03-05 H.J. Lu <hongjiu.lu@intel.com> 1838 1839 PR ld/27425 1840 PR ld/27432 1841 * bfd.c (_bfd_get_link_info): New function. 1842 * elf-bfd.h (output_elf_obj_tdata): Add link_info. 1843 (elf_link_info): New. 1844 * libbfd-in.h (_bfd_get_link_info): New prototype. 1845 * coff-x86_64.c (coff_amd64_reloc): Also subtract __ImageBase for 1846 R_AMD64_IMAGEBASE when generating x86-64 ELF executable. 1847 * pe-x86_64.c: Include "coff/internal.h" and "libcoff.h". 1848 (pex64_link_add_symbols): New function. 1849 (coff_bfd_link_add_symbols): New macro. 1850 * libbfd.h: Regenerated. 1851 18522021-03-05 Craig Blackmore <craig.blackmore@embecosm.com> 1853 Andrew Burgess <andrew.burgess@embecosm.com> 1854 1855 * elf-bfd.h (elfcore_write_riscv_csr): Declare. 1856 * elf.c (elfcore_grok_riscv_csr): New function. 1857 (elfcore_grok_note): Handle NT_RISCV_CSR. 1858 (elfcore_write_riscv_csr): New function. 1859 (elfcore_write_register_note): Handle '.reg-riscv-csr'. 1860 18612021-03-05 Craig Blackmore <craig.blackmore@embecosm.com> 1862 Andrew Burgess <andrew.burgess@embecosm.com> 1863 1864 * elfnn-riscv.c (PRPSINFO_PR_FNAME_LENGTH): Define. 1865 (PRPSINFO_PR_PSARGS_LENGTH): Define. 1866 (riscv_write_core_note): New function. 1867 (riscv_elf_grok_psinfo): Make use of two new length defines. 1868 (elf_backend_write_core_note): Define. 1869 18702021-03-05 Craig Blackmore <craig.blackmore@embecosm.com> 1871 Andrew Burgess <andrew.burgess@embecosm.com> 1872 1873 * elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function. 1874 * elf.c (elfcore_grok_gdb_tdesc): New function. 1875 (elfcore_grok_note): Handle NT_GDB_TDESC. 1876 (elfcore_write_gdb_tdesc): New function. 1877 (elfcore_write_register_note): Handle NT_GDB_TDESC. 1878 18792021-03-05 Nick Clifton <nickc@redhat.com> 1880 1881 PR 27521 1882 * dwarf2.c (is_str_attr): Add DW_FORM_strx* forms. 1883 (read_indexed_string): Placeholder function. 1884 (read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx* 1885 forms. 1886 18872021-03-05 Alan Modra <amodra@gmail.com> 1888 1889 * reloc.c (bfd_perform_relocation): Revert 2021-01-12 and 1890 2020-09-16 changes. 1891 * coff-x86_64.c (coff_amd64_reloc): Do more or less the same 1892 adjustments here instead. Separate pc-relative adjustments 1893 from symbol related adjustments. Tidy comments and formatting. 1894 18952021-03-04 Jan Beulich <jbeulich@suse.com> 1896 1897 * coffcode.h (sec_to_styp_flags): Don't set IMAGE_SCN_LNK_* in 1898 final PE images. 1899 19002021-03-04 Alan Modra <amodra@gmail.com> 1901 1902 * rs6000-core.c (rs6000coff_core_p): Correct prototype. 1903 19042021-03-03 Alan Modra <amodra@gmail.com> 1905 1906 PR 27500 1907 * elflink.c (_bfd_elf_gc_mark_rsec): Do special start/stop 1908 processing not when start/stop symbol section is unmarked but 1909 on first time a start/stop symbol is processed. 1910 19112021-03-03 Alan Modra <amodra@gmail.com> 1912 1913 * reloc.c: Include x86_64.h rather than internal.h. 1914 19152021-03-02 Nick Clifton <nickc@redhat.com> 1916 1917 PR 27484 1918 * dwarf2.c (scan_unit_for_symbols): Scan twice, once to accumulate 1919 function and variable tags and a second time to resolve their 1920 attributes. 1921 19222021-03-02 Nick Alcock <nick.alcock@oracle.com> 1923 1924 * elf-strtab.c (_bfd_elf_strtab_str): Skip strings with zero refcount. 1925 19262021-03-02 Alan Modra <amodra@gmail.com> 1927 1928 PR 27451 1929 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore synthesized 1930 linker defined start/stop symbols when start_stop_gc. 1931 19322021-03-02 Alan Modra <amodra@gmail.com> 1933 1934 * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimise got 1935 indirect to pc-relative or toc-relative for undefined symbols. 1936 19372021-03-01 Alan Modra <amodra@gmail.com> 1938 Fangrui Song <maskray@google.com> 1939 1940 * elflink.c (_bfd_elf_gc_mark_rsec): Ignore synthesized linker 1941 defined start/stop symbols when start_stop_gc. 1942 (bfd_elf_gc_mark_dynamic_ref_symbol): Likewise. 1943 (bfd_elf_define_start_stop): Don't modify ldscript_def syms. 1944 * linker.c (bfd_generic_define_start_stop): Likewise. 1945 19462021-02-25 Alan Modra <amodra@gmail.com> 1947 1948 PR 27441 1949 * elf-bfd.h (struct elf_link_hash_entry): Add ref_ir_nonweak. 1950 * elflink.c (elf_link_add_object_symbols): Set ref_ir_nonweak and 1951 use when deciding an as-needed library should be loaded instead 1952 of using the binding of the library definition. 1953 19542021-02-24 Alan Modra <amodra@gmail.com> 1955 1956 PR 27459 1957 * coff-stgo32.c (go32exe_check_format): Sanity check size of 1958 header to avoid a buffer overflow. 1959 19602021-02-22 Alan Modra <amodra@gmail.com> 1961 1962 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16. 1963 * coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise. 1964 19652021-02-19 Nelson Chu <nelson.chu@sifive.com> 1966 1967 PR 27158 1968 * elfnn-riscv.c (perform_relocation): Updated encoding macros. 1969 (_bfd_riscv_relax_call): Likewise. 1970 (_bfd_riscv_relax_lui): Likewise. 1971 * elfxx-riscv.c (howto_table): Likewise. 1972 19732021-02-18 Nelson Chu <nelson.chu@sifive.com> 1974 1975 * Makefile.am: Added cpu-riscv.h. 1976 * Makefile.in: Regenerated. 1977 * po/SRC-POTFILES.in: Regenerated. 1978 * cpu-riscv.h: Added to support spec versions controlling. 1979 Also added extern arrays and functions for cpu-riscv.c. 1980 (enum riscv_spec_class): Define all spec classes here uniformly. 1981 (struct riscv_spec): Added for all specs. 1982 (RISCV_GET_SPEC_CLASS): Added to reduce repeated code. 1983 (RISCV_GET_SPEC_NAME): Likewise. 1984 (RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class. 1985 (RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class. 1986 (RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name. 1987 * cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec. 1988 (riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS. 1989 (riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME. 1990 (riscv_priv_specs): Moved below. 1991 (riscv_get_priv_spec_class_from_numbers): Likewise, updated. 1992 (riscv_isa_specs): Moved from include/opcode/riscv.h. 1993 * elfnn-riscv.c: Included cpu-riscv.h. 1994 (riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec. 1995 * elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h. 1996 (RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h. 1997 * elfxx-riscv.h: Removed extern functions to cpu-riscv.h. 1998 19992021-02-17 Alan Modra <amodra@gmail.com> 2000 2001 * wasm-module.c: Guard include of limits.h. 2002 (CHAR_BIT): Provide backup define. 2003 (wasm_read_leb128): Use CHAR_BIT to size "result" in bits. 2004 Correct signed overflow checking. 2005 20062021-02-17 Nelson Chu <nelson.chu@sifive.com> 2007 2008 PR 27200 2009 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay 2010 copying the elf flags from input BFD to output BFD, until we have 2011 checked if the input BFD has no code section or not. Also fix the 2012 problem that we only check the first section rather than the entire 2013 sections for input BFD. 2014 20152021-02-16 Alan Modra <amodra@gmail.com> 2016 2017 * libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift. 2018 (_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise. 2019 20202021-02-15 Jan Beulich <jbeulich@suse.com> 2021 2022 * doc/Makefile.am: Replace "cp -p" by "$(LN_S)". 2023 * doc/Makefile.in: Re-generate. 2024 20252021-02-15 Alan Modra <amodra@gmail.com> 2026 2027 * elf32-nds32.c (nds32_get_section_contents): Replace 2028 bfd_malloc_and_get_section with bfd_get_full_section_contents. 2029 (nds32_elf_relax_delete_blanks): Init contents. 2030 (nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise. 2031 20322021-02-15 Alan Modra <amodra@gmail.com> 2033 2034 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use 2035 bfd_get_full_section_contents. 2036 20372021-02-14 Alan Modra <amodra@gmail.com> 2038 2039 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply 2040 all fixes to bfd_generic_get_relocated_section_contents since this 2041 function was split out. 2042 20432021-02-11 Alan Modra <amodra@gmail.com> 2044 2045 * config.bfd: Remove ia64 from obsolete list. 2046 20472021-02-11 Alan Modra <amodra@gmail.com> 2048 2049 PR ld/22269 2050 * elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234. 2051 20522021-02-11 Alan Modra <amodra@gmail.com> 2053 2054 PR 27294 2055 * elf32-avr.c (avr_elf32_load_records_from_section): Use 2056 bfd_malloc_and_get_section. Use bfd_byte* vars and remove then 2057 unnecessary casts. 2058 20592021-02-11 Alan Modra <amodra@gmail.com> 2060 2061 PR 27291 2062 * section.c (bfd_get_section_contents): Avoid possible overflow 2063 when range checking offset and count. 2064 (bfd_set_section_contents): Likewise. 2065 20662021-02-03 Nick Alcock <nick.alcock@oracle.com> 2067 2068 * configure.ac (SHARED_LIBADD): Remove explicit -lintl population in 2069 favour of LIBINTL. 2070 * configure: Regenerated. 2071 20722021-02-09 Alan Modra <amodra@gmail.com> 2073 2074 * config.bfd (arm*-*-symbianelf*): Move from obsolete to removed. 2075 * configure.ac: Delete symbian entries. 2076 * elf-bfd.h (enum elf_target_os): Delete is_symbian. 2077 * elf32-arm.c: Remove symbian support. Formatting. 2078 * targets.c: Delete symbian entries. 2079 * configure: Regenerate. 2080 20812021-02-04 H.J. Lu <hongjiu.lu@intel.com> 2082 2083 PR ld/19609 2084 * elf64-x86-64.c (elf_x86_64_relocate_section): Provide more 2085 info when failed to convert GOTPCREL relocation. 2086 20872021-02-04 Nelson Chu <nelson.chu@sifive.com> 2088 2089 * elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*. 2090 20912021-02-04 Alan Modra <amodra@gmail.com> 2092 2093 PR 27311 2094 * elflink.c (elf_link_add_object_symbols): Don't pull in as-needed 2095 libraries for IR references on pass over libraries after LTO 2096 recompilation. 2097 20982021-02-03 Alan Modra <amodra@gmail.com> 2099 2100 PR 27311 2101 * elflink.c (_bfd_elf_add_default_symbol): Revert last two changes. 2102 (elf_link_add_object_symbols): Here too. Don't pull in as-needed 2103 libraries when H is an indirect symbol after calling 2104 _bfd_elf_add_default_symbol. 2105 21062021-02-03 Alan Modra <amodra@gmail.com> 2107 2108 PR 27311 2109 * elflink.c (_bfd_elf_add_default_symbol): Clear override when 2110 undecorated symbol will have a different version. 2111 21122021-02-02 Alan Modra <amodra@gmail.com> 2113 2114 PR 27311 2115 * elflink.c (_bfd_elf_add_default_symbol): Add override parameter. 2116 Use when handling default versioned symbol. Rename existing 2117 override variable to nondef_override and use for non-default 2118 versioned symbol. 2119 (elf_link_add_object_symbols): Adjust call to suit. Don't 2120 pull in as-needed libraries when override is set. 2121 21222021-02-01 Emery Hemingway <ehmry@posteo.net> 2123 2124 * config.bfd: Add *-*-genode* as a target for AArch64 and x86. 2125 21262021-02-01 Egor Vishnyakov <lenvampir@yandex.ru> 2127 2128 PR 27254 2129 * elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of 2130 offset for the R_RL78_RH_SADDR relocation. 2131 21322021-01-29 Alan Modra <amodra@gmail.com> 2133 2134 PR 27271 2135 * elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault 2136 on symbols defined in absolute or other special sections. 2137 21382021-01-28 Alan Modra <amodra@gmail.com> 2139 2140 PR 27259 2141 * elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to 2142 prevent endless looping of linked-to sections. 2143 21442020-12-17 Mihails Strasuns <mihails.strasuns@intel.com> 2145 2146 * bfd-elf.h (elfcore_write_file_note): New function. 2147 * elf.c (elfcore_write_file_note): New function. 2148 21492021-01-26 Alan Modra <amodra@gmail.com> 2150 2151 * elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0]. 2152 21532021-01-24 H.J. Lu <hongjiu.lu@intel.com> 2154 2155 PR binutils/27231 2156 * dwarf2.c (read_rnglists): Ignore empty range when parsing line 2157 number tables. 2158 21592021-01-23 H.J. Lu <hongjiu.lu@intel.com> 2160 2161 PR binutils/27231 2162 * dwarf2.c (read_rnglists): Advance rngs_ptr after 2163 _bfd_safe_read_leb128 when parsing DW_RLE_offset_pair. 2164 21652021-01-20 Alan Modra <amodra@gmail.com> 2166 2167 * elf32-ppc.c: Delete outdated comment. 2168 (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define. 2169 * elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define. 2170 21712021-01-20 Alan Modra <amodra@gmail.com> 2172 2173 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume 2174 section symbols are present. 2175 21762021-01-19 Alan Modra <amodra@gmail.com> 2177 2178 * elf64-ppc.c (elf_hash_entry): New inline function. Use 2179 throughout to replace casts. 2180 (branch_reloc_hash_match): Remove const from params. 2181 (use_local_plt): New function. 2182 (allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub), 2183 (build_global_entry_stubs_and_plt, ppc64_elf_relocate_section): 2184 Use use_local_plt. 2185 * elf32-ppc.c (use_local_plt): New function. 2186 (allocate_dynrelocs, ppc_elf_relocate_section), 2187 (write_global_sym_plt): Use use_local_plt. 2188 21892021-01-17 H.J. Lu <hongjiu.lu@intel.com> 2190 2191 PR ld/27193 2192 * elflink.c (elf_create_symbuf): Also ignore section symbols. 2193 21942021-01-16 H.J. Lu <hongjiu.lu@intel.com> 2195 2196 PR ld/23169 2197 * elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't 2198 check pointer_equality_needed. 2199 22002021-01-15 H.J. Lu <hongjiu.lu@intel.com> 2201 2202 * elf-linker-x86.h (elf_linker_x86_params): Add 2203 report_relative_reloc. 2204 * elf32-i386.c (elf_i386_relocate_section): Call 2205 _bfd_x86_elf_link_report_relative_reloc to report relative 2206 relocations for -z report-relative-reloc. 2207 (elf_i386_finish_dynamic_symbol): Likewse. 2208 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewse. 2209 (elf_x86_64_finish_dynamic_symbol): Likewse. 2210 * elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New 2211 function. 2212 * elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New 2213 prototype. 2214 22152021-01-16 Alan Modra <amodra@gmail.com> 2216 2217 * compress.c (decompress_contents): Tidy inflateEnd result test. 2218 22192021-01-16 Alan Modra <amodra@gmail.com> 2220 2221 PR 26002 2222 * elflink.c (elf_link_output_extsym): Use version 1 in 2223 .gnu.version for undefined unversioned symbols. 2224 22252021-01-15 Nelson Chu <nelson.chu@sifive.com> 2226 2227 * elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that 2228 caused the by previous commit accidentally. 2229 22302021-01-15 Nelson Chu <nelson.chu@sifive.com> 2231 2232 * elfnn-riscv.c: Indent, labels and GNU coding standards tidy, 2233 also aligned the code. 2234 22352021-01-15 Nelson Chu <nelson.chu@sifive.com> 2236 2237 * elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages. 2238 22392021-01-15 Nelson Chu <nelson.chu@sifive.com> 2240 2241 * elfnn-riscv.c: Comments tidy and improvement. 2242 * elfxx-riscv.c: Likewise. 2243 * elfxx-riscv.h: Likewise. 2244 22452021-01-14 H.J. Lu <hongjiu.lu@intel.com> 2246 2247 PR ld/26688 2248 * elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC 2249 section for R_BFIN_FUNCDESC. 2250 22512021-01-14 Nick Clifton <nickc@redhat.com> 2252 2253 * elf.c (elfcore_grok_win32pstatus): Check for a note type of 0. 2254 22552021-01-13 Alan Modra <amodra@gmail.com> 2256 2257 * Makefile.in: Regenerate. 2258 * doc/Makefile.in: Regenerate. 2259 22602021-01-13 Alan Modra <amodra@gmail.com> 2261 2262 PR 27160 2263 * section.c (struct bfd_section): Remove pattern field. 2264 (BFD_FAKE_SECTION): Adjust to suit. 2265 * bfd-in2.h: Regenerate. 2266 * elflink.c (compare_link_order, elf_fixup_link_order): Delete. 2267 (bfd_elf_final_link): Don't call elf_fixup_link_order. 2268 22692021-01-12 H.J. Lu <hongjiu.lu@intel.com> 2270 2271 PR binutils/26792 2272 * configure.ac: Use GNU_MAKE_JOBSERVER. 2273 * aclocal.m4: Regenerated. 2274 * configure: Likewise. 2275 22762021-01-12 H.J. Lu <hongjiu.lu@intel.com> 2277 2278 PR ld/27171 2279 * reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and 2280 R_AMD64_DIR32 relocations for PE/x86-64 inputs. 2281 22822021-01-11 H.J. Lu <hongjiu.lu@intel.com> 2283 2284 PR ld/27173 2285 * configure: Regenerated. 2286 22872021-01-11 Nick Clifton <nickc@redhat.com> 2288 2289 * po/fr.po: Updated French translation. 2290 * po/pt.po: Updated Portuguese translation. 2291 * po/sr.po: Updated Serbian translation. 2292 * po/uk.po: Updated Ukranian translation. 2293 22942021-01-09 H.J. Lu <hongjiu.lu@intel.com> 2295 2296 * configure: Regenerated. 2297 22982021-01-09 H.J. Lu <hongjiu.lu@intel.com> 2299 2300 PR ld/27166 2301 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle 2302 -z lam-u48 and -z lam-u57. 2303 23042021-01-09 Nick Clifton <nickc@redhat.com> 2305 2306 * version.m4: Change to 2.36.50. 2307 * configure: Regenerate. 2308 * po/bfd.pot: Regenerate. 2309 23102021-01-09 Nick Clifton <nickc@redhat.com> 2311 2312 * 2.36 release branch crated. 2313 23142021-01-08 H.J. Lu <hongjiu.lu@intel.com> 2315 2316 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set 2317 LAM_U57 when setting LAM_U48. 2318 23192021-01-08 H.J. Lu <hongjiu.lu@intel.com> 2320 2321 PR ld/26256 2322 PR ld/27160 2323 * elflink.c (elf_fixup_link_order): Verify that fixing up 2324 SHF_LINK_ORDER doesn't increase the output section size. 2325 23262021-01-09 Alan Modra <amodra@gmail.com> 2327 2328 * configure: Regenerate. 2329 23302021-01-07 Samuel Thibault <samuel.thibault@gnu.org> 2331 2332 * configure: Regenerate. 2333 23342021-01-07 H.J. Lu <hongjiu.lu@intel.com> 2335 2336 PR 27109 2337 * aix386-core.c (core_aix386_vec): Initialize 2338 keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS. 2339 * aout-target.h (MY (vec)): Likewise. 2340 * binary.c (binary_vec): Likewise. 2341 * cisco-core.c (core_cisco_be_vec): Likewise. 2342 (core_cisco_le_vec): Likewise. 2343 * coff-alpha.c (alpha_ecoff_le_vec): Likewise. 2344 * coff-i386.c (TARGET_SYM): Likewise. 2345 (TARGET_SYM_BIG): Likewise. 2346 * coff-ia64.c (TARGET_SYM): Likewise. 2347 * coff-mips.c (mips_ecoff_le_vec): Likewise. 2348 (mips_ecoff_be_vec): Likewise. 2349 (mips_ecoff_bele_vec): Likewise. 2350 * coff-rs6000.c (rs6000_xcoff_vec): Likewise. 2351 (powerpc_xcoff_vec): Likewise. 2352 * coff-sh.c (sh_coff_small_vec): Likewise. 2353 (sh_coff_small_le_vec): Likewise. 2354 * coff-tic30.c (tic30_coff_vec): Likewise. 2355 * coff-tic54x.c (tic54x_coff0_vec): Likewise. 2356 (tic54x_coff0_beh_vec): Likewise. 2357 (tic54x_coff1_vec): Likewise. 2358 (tic54x_coff1_beh_vec): Likewise. 2359 (tic54x_coff2_vec): Likewise. 2360 (tic54x_coff2_beh_vec): Likewise. 2361 * coff-x86_64.c (TARGET_SYM): Likewise. 2362 (TARGET_SYM_BIG): Likewise. 2363 * coff64-rs6000.c (rs6000_xcoff64_vec): Likewise. 2364 (rs6000_xcoff64_aix_vec): Likewise. 2365 * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise. 2366 (CREATE_BIGHDR_COFF_TARGET_VEC): Likewise. 2367 (CREATE_LITTLE_COFF_TARGET_VEC): Likewise. 2368 * elfxx-target.h (TARGET_BIG_SYM): Likewise. 2369 (TARGET_LITTLE_SYM): Likewise. 2370 * hppabsd-core.c (core_hppabsd_vec): Likewise. 2371 * hpux-core.c (core_hpux_vec): Likewise. 2372 * i386msdos.c (i386_msdos_vec): Likewise. 2373 * ihex.c (ihex_vec): Likewise. 2374 * irix-core.c (core_irix_vec): Likewise. 2375 * mach-o-target.c (TARGET_NAME): Likewise. 2376 * mmo.c (mmix_mmo_vec): Likewise. 2377 * netbsd-core.c (core_netbsd_vec): Likewise. 2378 * osf-core.c (core_osf_vec): Likewise. 2379 * pdp11.c (MY (vec)): Likewise. 2380 * pef.c (pef_vec): Likewise. 2381 (pef_xlib_vec): Likewise. 2382 * plugin.c (plugin_vec): Likewise. 2383 * ppcboot.c (powerpc_boot_vec): Likewise. 2384 * ptrace-core.c (core_ptrace_vec): Likewise. 2385 * sco5-core.c (core_sco5_vec): Likewise. 2386 * som.c (hppa_som_vec): Likewise. 2387 * srec.c (srec_vec): Likewise. 2388 (symbolsrec_vec): Likewise. 2389 * tekhex.c (tekhex_vec): Likewise. 2390 * trad-core.c (core_trad_vec): Likewise. 2391 * verilog.c (verilog_vec): Likewise. 2392 * vms-alpha.c (alpha_vms_vec): Likewise. 2393 * vms-lib.c (alpha_vms_lib_txt_vec): Likewise. 2394 * wasm-module.c (wasm_vec): Likewise. 2395 * xsym.c (sym_vec): Likewise. 2396 * elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED 2397 isn't set. 2398 (elf_map_symbols): Don't include ignored section symbols. 2399 * elfcode.h (elf_slurp_symbol_table): Also set 2400 BSF_SECTION_SYM_USED on STT_SECTION symbols. 2401 * elflink.c (bfd_elf_final_link): Generated section symbols only 2402 when emitting relocations or reqired. 2403 * elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New. 2404 * syms.c (BSF_SECTION_SYM_USED): New. 2405 * targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New. 2406 (bfd_target): Add keep_unused_section_symbols. 2407 (bfd_keep_unused_section_symbols): New. 2408 * bfd-in2.h: Regenerated. 2409 24102021-01-07 Nick Clifton <nickc@redhat.com> 2411 2412 PR 25713 2413 * bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to 2414 absolute paths and check to see if they are longer than MAX_PATH. 2415 24162021-01-07 Philipp Tomsich <prt@gnu.org> 2417 2418 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause. 2419 24202021-01-07 Claire Xenia Wolf <claire@symbioticeda.com> 2421 Jim Wilson <jimw@sifive.com> 2422 Andrew Waterman <andrew@sifive.com> 2423 Maxim Blinov <maxim.blinov@embecosm.com> 2424 Kito Cheng <kito.cheng@sifive.com> 2425 Nelson Chu <nelson.chu@sifive.com> 2426 2427 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc. 2428 24292021-01-06 H.J. Lu <hongjiu.lu@intel.com> 2430 2431 * elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect. 2432 (bfinfdpic_check_relocs): Likewise. 2433 24342021-01-06 Alan Modra <amodra@gmail.com> 2435 2436 * elf32-score.c (s3_bfd_score_info_to_howto): Report an error 2437 on unknown r_type. 2438 * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise. 2439 24402021-01-06 Alan Modra <amodra@gmail.com> 2441 2442 * config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec. 2443 (sparc64-*-solaris2*): Add sparc_elf64_vec and 2444 sparc_elf32_vec. 2445 24462021-01-06 Marcus Comstedt <marcus@mc.pp.se> 2447 2448 * config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and 2449 riscvbe*-*-*. Also added riscv_elf[32|64]_be_vec. 2450 * configure.ac: Handle riscv_elf[32|64]_be_vec. 2451 * configure: Regenerate. 2452 * elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for 2453 riscv_is_insn_reloc. 2454 (riscv_get_insn): RISC-V instructions are always little endian, but 2455 bfd_get may be used for big-endian, so add new riscv_get_insn to handle 2456 the insturctions. 2457 (riscv_put_insn): Likewsie. 2458 (riscv_is_insn_reloc): Check if we are relocaing an instruction. 2459 (perform_relocation): Call riscv_is_insn_reloc to decide if we should 2460 use riscv_[get|put]_insn or bfd_[get|put]. 2461 (riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32 2462 or bfd_[get|put]l16 for code. 2463 (riscv_elf_relocate_section): Likewise. 2464 (riscv_elf_finish_dynamic_symbol): Likewise. 2465 (riscv_elf_finish_dynamic_sections): Likewise. 2466 (_bfd_riscv_relax_call): Likewise. 2467 (_bfd_riscv_relax_lui): Likewise. 2468 (_bfd_riscv_relax_align): Likewise. 2469 (_bfd_riscv_relax_pc): Likewise. 2470 (riscv_elf_object_p): Handled for big endian. 2471 (TARGET_BIG_SYM, TARGET_BIG_NAME): Defined. 2472 * targets.c: Add riscv_elf[32|64]_be_vec. 2473 (_bfd_target_vector): Likewise. 2474 24752021-01-05 Alan Modra <amodra@gmail.com> 2476 2477 * elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export 2478 for relocatable executable. 2479 24802021-01-05 Alan Modra <amodra@gmail.com> 2481 2482 * vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check. 2483 24842021-01-05 Nelson Chu <nelson.chu@sifive.com> 2485 2486 * elfnn-riscv.c (allocate_dynrelocs): When we are generating pde, 2487 make sure gp symbol is output as a dynamic symbol. 2488 24892021-01-04 H.J. Lu <hongjiu.lu@intel.com> 2490 2491 PR ld/26256 2492 * elflink.c (compare_link_order): Place unordered sections before 2493 ordered sections. 2494 (elf_fixup_link_order): Add a link info argument. Allow mixed 2495 ordered and unordered input sections for non-relocatable link. 2496 Sort the consecutive bfd_indirect_link_order sections with the 2497 same pattern. Change the offsets of the bfd_indirect_link_order 2498 sections only. 2499 (bfd_elf_final_link): Pass info to elf_fixup_link_order. 2500 * section.c (bfd_section): Add pattern. 2501 (BFD_FAKE_SECTION): Initialize pattern to NULL. 2502 * bfd-in2.h: Regenerated. 2503 25042021-01-04 Alexander Fedotov <alfedotov@gmail.com> 2505 2506 * elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value 2507 of private flags with 0x. 2508 * elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise. 2509 25102021-01-04 Alan Modra <amodra@gmail.com> 2511 2512 PR 26822 2513 * elflink.c (elf_link_input_bfd): Use the file base name in 2514 linker generated STT_FILE symbols. 2515 25162021-01-04 Nelson Chu <nelson.chu@sifive.com> 2517 2518 * elfxx-riscv.c (riscv_compare_subsets): Removed static. 2519 * elfxx-riscv.h: Add declaration. 2520 * elfnn-riscv.c (riscv_merge_multi_letter_ext): Use 2521 riscv_compare_subsets to check the orders. 2522 (riscv_skip_prefix): Removed. 2523 (riscv_prefix_cmp): Removed. 2524 25252021-01-04 Alan Modra <amodra@gmail.com> 2526 2527 PR 26741 2528 * elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after 2529 calculating subset version length. 2530 25312021-01-01 Nicolas Boulenguez <nicolas@debian.org> 2532 2533 * xcofflink.c: Correct spelling in comments. 2534 25352021-01-01 Alan Modra <amodra@gmail.com> 2536 2537 Update year range in copyright notice of all files. 2538 2539For older changes see ChangeLog-2020 2540 2541Copyright (C) 2021-2022 Free Software Foundation, Inc. 2542 2543Copying and distribution of this file, with or without modification, 2544are permitted in any medium without royalty provided the copyright 2545notice and this notice are preserved. 2546 2547Local Variables: 2548mode: change-log 2549left-margin: 8 2550fill-column: 74 2551version-control: never 2552End: 2553