12024-01-15 Nick Clifton <nickc@redhat.com> 2 3 * version.m4: Change to 2.41.90. 4 * configure: Regenerate. 5 * po/bfd.pot: Regenerate. 6 72024-01-15 Nick Clifton <nickc@redhat.com> 8 9 * 2.42 branch point. 10 112023-12-05 Nick Clifton <nickc@redhat.com> 12 13 PR 31106 14 * elfcode.h (elf_write_relocs): Do not convert a relocation 15 against a zero-value absolute symbol into a relocation without a 16 symbol if the symbol is being used for a complex relocation. 17 182023-11-21 Nick Clifton <nickc@redhat.com> 19 20 PR 31067 21 linker.c (_bfd_generic_link_add_one_symbol): When issuing a 22 warning message, also display a message about the warning not 23 being affected by garbage colleciton. 24 252023-11-15 Arsen Arsenović <arsen@aarsen.me> 26 27 * aclocal.m4: Regenerate. 28 * configure.ac (SHARED_LIBADD): Use LTLIBINTL rather than 29 LIBINTL. 30 * configure: Regenerate. 31 * po/Make-in ($(srcdir)/$(PACKAGE).pot): Output to a .pot 32 temporary file, to suppress xgettext checking charset names. 33 342023-11-10 Simon Marchi <simon.marchi@efficios.com> 35 36 * archures.c (bfd_mach_amdgcn_gfx1100, bfd_mach_amdgcn_gfx1101, 37 bfd_mach_amdgcn_gfx1102): New. 38 * bfd-in2.h (bfd_mach_amdgcn_gfx1100, bfd_mach_amdgcn_gfx1101, 39 bfd_mach_amdgcn_gfx1102): New. 40 * cpu-amdgcn.c (arch_info_struct): Add entries for 41 bfd_mach_amdgcn_gfx1100, bfd_mach_amdgcn_gfx1101, 42 bfd_mach_amdgcn_gfx1102. 43 442023-11-10 Nick Clifton <nickc@redhat.com> 45 46 * elf.c (assign_file_positions_except_relocs): Turn warnings about 47 executable segments into errors if so requested. 48 * elflink.c (bfd_elf_size_dynamic_sections): Turn warnings about 49 executable stacks into errors if so requested. 50 512023-10-30 Nick Clifton <nickc@redhat.com> 52 53 * bpf-reloc.def (R_BPF_64_NODLD32): Add entry. 54 552023-10-16 Nick Clifton <nickc@redhat.com> 56 57 PR 28910 58 * elf32-arm.c (elf32_arm_merge_private_bfd_data): Do not set 59 output flags if the input flags have not been set. 60 612023-10-09 Nick Clifton <nickc@redhat.com> 62 63 PR 30950 64 * elf32-i386.c (elf_i386_convert_load_reloc): Check for 65 elf_x86_hash_table returning a NULL pointer. 66 67 PR 30949 68 * elflink.c (elf_gc_mark_debug_section): Check for 69 bfd_section_from_elf_index returning a NULL pointer. 70 712023-10-06 Nick Clifton <nickc@redhat.com> 72 73 PR 30940 74 * elf64-alpha.c (elf64_alpha_check_relocs): Correct error message. 75 762023-10-05 Nick Clifton <nickc@redhat.com> 77 78 PR 30904 79 * elf.c (_bfd_elf_get_dynamic_symbols): Fix typo when checking to 80 see if the gnuchains array has been successfully created. 81 822023-10-02 Nick Clifton <nickc@redhat.com> 83 84 * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Use 85 bfd_get_current_time when filing in the timestamp. 86 872023-09-29 Nick Clifton <nickc@redhat.com> 88 89 PR 30906 90 * elf.c (_bfd_elf_slurp_version_tables): Test that the verref 91 section header has been initialised before using it. 92 932023-09-28 Nick Clifton <nickc@redhat.com> 94 95 PR 30886 96 * elf-bfd.h (struct elf_obj_tdata): Add dt_strsz field. 97 * elf.c (_bfd_elf_get_dynamic_symbols): Add a NUL byte at the end 98 of the string table. 99 Initialise the dt_strsz field. 100 (_bfd_elf_slurp_version_tables): Only free the contents if they 101 were malloc'ed. 102 Add checks before setting string pointers in the dt_strtab buffer. 103 1042023-09-27 Nick Clifton <nickc@redhat.com> 105 106 PR 30885 107 * elfcode.h (elf_slurp_symbol_table): Compute the symcount for non 108 dynamic symbols in the same way as _bfd_elf_get_symtab_upper_bound. 109 1102023-09-13 Jacob Navia <jacob@jacob.remcomp.fr> 111 112 * elf.c (_bfd_elf_init_reloc_shdr): Don't segfault on alloc fail. 113 1142023-09-13 Alan Modra <amodra@gmail.com> 115 116 * elf-strtab.c (_bfd_elf_strtab_init): In the event of memory 117 allocation failure, make sure that the hash table is freed. 118 1192023-08-30 Tom Tromey <tom@tromey.com> 120 121 PR binutils/30703 122 * doc/webassembly.texi, doc/bfd.texi: Revert 8bb23cdb, adding 123 parameters back to @node. 124 1252023-08-04 Nick Clifton <nickc@redhat.com> 126 127 PR 15545 128 * cache.c (bfd_cache_close_all): Extend description to note that 129 all files will be closed, even those that are not cacheable. 130 Add code to prevent a possible infinite loop. 131 1322023-08-02 Tom Tromey <tromey@adacore.com> 133 134 * pei-x86_64.c (PEI_HEADERS): Do not define. 135 * pei-loongarch64.c (PEI_HEADERS): Do not define. 136 * pei-aarch64.c (PEI_HEADERS): Do not define. 137 * pe-x86_64.c (PEI_HEADERS): Do not define. 138 * pe-aarch64.c (PEI_HEADERS): Do not define. 139 * libpei.h (_LIBPEI_H): Add include guard. 140 * coff-x86_64.c (PEI_HEADERS): Do not check. 141 * coff-loongarch64.c (PEI_HEADERS): Do not check. 142 * coff-aarch64.c (PEI_HEADERS): Do not check. 143 1442023-07-24 Johannes Schauer Marin Rodrigues <josch@debian.org> 145 146 * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): If inserting a 147 timestamp, use the value held in the SOURCE_DATE_EPOCH environment 148 variable, if it is defined. 149 1502023-07-24 Jose E. Marchesi <jose.marchesi@oracle.com> 151 152 * reloc.c: New reloc BFD_RELOC_BPF_DISPCALL32. 153 * elf64-bpf.c (bpf_reloc_type_lookup): Handle the new reloc. 154 * libbfd.h (bfd_reloc_code_real_names): Regenerate. 155 1562023-07-09 Fangrui Song <maskray@google.com> 157 158 PR 30592 159 * section.c: Define SEC_ELF_LARGE. 160 * bfd-in2.h: Regenerate. 161 * elf64-x86-64.c (elf_x86_64_section_flags, elf_x86_64_fake_sections, 162 elf_x86_64_copy_private_section_data): New. 163 1642023-07-03 Nick Clifton <nickc@redhat.com> 165 166 * version.m4: Update version number to 2.41.50. 167 * configure: Regenerate. 168 * bfd/po/bfd.pot: Regenerate. 169 1702023-07-03 Nick Clifton <nickc@redhat.com> 171 172 2.41 Branch Point. 173 1742023-06-19 Nick Clifton <nickc@redhat.com> 175 176 PR 30560 177 * elf64-x86-64.c (elf_x86_64_relocate_section): Add more checks 178 for a valid relocation offset. 179 1802023-06-07 Nick Clifton <nickc@redhat.com> 181 182 PR 30499 183 * elflink.c (elf_link_add_object_symbols): Add a message 184 indicating that alignment and size discrepancies between the 185 definition of common symbols and normal symbols are serious and 186 should be investigated. 187 1882023-05-31 Tristan Gingold <tgingold@free.fr> 189 190 PR 30444 191 * coffcode.h (coff_write_object_contents): Handle base64 encoding 192 on PE. Also check for too large string table. 193 * coffgen.c (extract_long_section_name): New function extracted 194 from ... 195 (make_a_section_from_file): ... here. Add support for base64 196 long section names. 197 (decode_base64): New function. 198 1992023-05-17 Luca Bacci <luca.bacci@outlook.com> 200 201 PR 30421 202 * cofflink.c (_decoration_hash_newfunc): New function. 203 (_bfd_coff_link_hash_table_init): Call it. 204 * libcoff-in.h (struct coff_link_hash_table): Add decoration_hash 205 field. 206 (struct decoration_hash_entry): Declare. 207 (_decoration_hash_newfunc): Prototype. 208 * libcoff.h: Regenerate. 209 2102023-05-16 Oleg Tolmatcev <oleg.tolmatcev@gmail.com> 211 212 * libcoff-in.h (struct coff_tdata): Add section_by_index and 213 section_by_target_index hash tables. 214 * libcoff.h: Regenerate. 215 * coffcode.h (htab_hash_section_index): New function. 216 (htab_eq_section_index): New function. 217 (htab_hash_section_target_index): New function. 218 (htab_eq_section_target_index): New function. 219 (coff_mkobject_hool): Create the hash tables. 220 * peicode.h: Add the same new functions. 221 (pe_mkobject_hook): Create the hash tables. 222 * coff-x86_64.c (coff_amd64_rtype_to_howto): Use the new tables to 223 speed up lookups. 224 * coffgen.c (coff_section_from_bfd_index): Likewise. 225 (_bfd_coff_close_and_cleanup): Delete the hash tables. 226 2272023-05-10 Luca Bonissi <gcc@scarsita.it> 228 229 PR 30422 230 * elf32-or1k.c (or1k_elf_relocate_section): Prescan for 231 R_OR1K_GOT_AHI16 relocs as they may occur after R_OR1K_GOT16 232 relocs. 233 2342023-05-05 Nick Clifton <nickc@redhat.com> 235 236 PR 30354 237 * elf32-arm.c (elf32_arm_gc_mark_extra_sections): If any debug 238 sections are marked then rerun the extra marking in order to pick 239 up any dependencies. 240 2412023-05-03 Oleg Tolmatcev <oleg.tolmatcev@gmail.com> 242 243 * archive.c (_bfd_write_archive_contents): Use a larger buffer in 244 order to improve efficiency. 245 2462023-05-03 Oleg Tolmatcev <oleg.tolmatcev@gmail.com> 247 248 * coffcode.h (coff_read_word_from_buffer): New function. 249 * coffcode.h (COFF_CHECKSUM_BUFFER_SIZE): New constant. 250 * coffcode.h (coff_compute_checksum): Improve speed by reducing 251 the number of seeks and reads used. 252 2532023-04-24 Nick Clifton <nickc@redhat.com> 254 255 * po/la.po: New Georgian translation. 256 2572023-04-17 Nick Clifton <nickc@redhat.com> 258 259 PR 30142 260 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Do not force the .rsrc 261 section to be writeable. 262 2632023-03-30 Nick Clifton <nickc@redhat.com> 264 265 PR 30285 266 * elf.c (_bfd_elf_slurp_version_tables): Fail if no version 267 definitions are allocated. 268 2692023-02-27 Felix Willgerodt <felix.willgerodt@intel.com> 270 271 * elf64-x86-64.c (elf_x86_64_grok_psinfo): Check for 272 elf_external_linux_prpsinfo32_ugid32. 273 2742023-02-23 Fangrui Song <i@maskray.me> 275 276 * elfnn-riscv.c (struct riscv_elf_link_hash_table): Add params. 277 (riscv_elfNN_set_options): New. 278 (riscv_info_to_howto_rela): Check relax_gp. 279 (_bfd_riscv_relax_section): Likewise. 280 * elfxx-riscv.h (struct riscv_elf_params): New. 281 (riscv_elf32_set_options): New. 282 (riscv_elf64_set_options): New. 283 2842023-02-23 Nick Clifton <nickc@redhat.com> 285 Alan Modra <amodra@gmail.com> 286 287 PR 30150 288 * dwarf2.c (comp_unit_contains_address): Renamed to ... 289 (comp_unit_may_contain_address): this, and added code to return 290 true if the CU's ranges have not yet been computed. 291 (_bfd_dwarf2_find_nearest_line_with_alt): Use the renamed 292 function, simplifying code in the process. 293 2942023-02-21 Nick Clifton <nickc@redhat.com> 295 296 * opncls.c (bfd_fill_in_gnu_debuglink_section): Update 297 description. 298 2992023-02-17 Tom Tromey <tom@tromey.com> 300 301 * doc/doc.str (FUNCTION): Call func. 302 3032023-02-17 Tom Tromey <tom@tromey.com> 304 305 * opncls.c: Hoist the SECTION comment. 306 3072023-02-17 Tom Tromey <tom@tromey.com> 308 309 * opncls.c (bfd_get_debug_link_info_1, separate_debug_file_exists) 310 (separate_alt_debug_file_exists, find_separate_debug_file) 311 (get_build_id, get_build_id_name, check_build_id_file): Don't use 312 chew comments. 313 3142023-02-17 Tom Tromey <tom@tromey.com> 315 316 * doc/doc.str (SYNOPSIS): Use collapse_whitespace. 317 * doc/chew.c (collapse_whitespace): New function. 318 (main): Register collapse_whitespace. 319 3202023-02-07 Tom Tromey <tom@tromey.com> 321 322 * bfd.c, cache.c, compress.c, opncls.c: Remove RETURNS from 323 documentation comments. 324 * doc/doc.str, doc/proto.str (RETURNS): Remove. 325 3262023-02-07 Tom Tromey <tom@tromey.com> 327 328 * syms.c (bfd_decode_symclass, bfd_is_undefined_symclass) 329 (bfd_symbol_info): Reorder documentation comment. 330 * doc/doc.str (synopsis_seen): New variable. 331 (SYNOPSIS): Set synopsis_seen. Emit @deftypefn. 332 (DESCRIPTION): Use synopsis_seen. 333 * doc/chew.c (catstrif): New function. 334 (main): Add catstrif intrinsic. 335 (compile): Recognize "variable" command. 336 3372023-02-07 Tom Tromey <tom@tromey.com> 338 339 * doc/proto.str (external, internal, ifinternal, ENUMEQ, ENUMDOC): 340 Update. 341 * doc/chew.c (internalmode): Remove. 342 (add_intrinsic_variable): New function. 343 (main): Add internalmode as intrinsic. 344 (internal_mode): Remove global. 345 (maybecatstr): Update. 346 (free_words): Free variables. 347 3482023-02-07 Tom Tromey <tom@tromey.com> 349 350 * doc/chew.c (pcu) <l>: Now intptr_t. 351 (internal_mode, istack, isp): Likewise. 352 (bang, atsign): Use intptr_t. 353 3542023-02-07 Tom Tromey <tom@tromey.com> 355 356 * doc/proto.str (SYNOPSIS): Don't use paramstuff. 357 * doc/chew.c (paramstuff): Remove. 358 (main): Don't add paramstuff intrinsic. 359 3602023-02-07 Tom Tromey <tom@tromey.com> 361 362 * doc/doc.str, doc/proto.str: Add copyright header. 363 3642023-02-07 Tom Tromey <tom@tromey.com> 365 366 * doc/webassembly.texi (File layout): Remove second argument from 367 @node. 368 * doc/bfd.texi: Use single-argument @node everywhere. 369 3702023-02-07 Tom Tromey <tom@tromey.com> 371 372 * Makefile.in: Rebuild. 373 * doc/local.mk (%D%/chew.stamp): Don't use H_CFLAGS. 374 3752023-01-24 Nick Clifton <nickc@redhat.com> 376 377 PR 29998 378 * cofflink.c (_bfd_coff_generic_relocate_section): Add an 379 assertion that the output section is set for defined, global 380 symbols. 381 3822023-01-17 Xianmiao Qu <cooper.qu@linux.alibaba.com> 383 384 * elf32-csky.c (elf32_csky_merge_attributes): Don't save 385 and restore the ARCH attribute, it will actually clear 386 the ARCH attribute. 387 (csky_elf_merge_private_bfd_data): Store the machine flag 388 correctly. 389 3902023-01-13 Nick Clifton <nickc@redhat.com> 391 392 * po/ro.po: Updated Romainian translation. 393 3942023-01-11 Nick Clifton <nickc@redhat.com> 395 396 PR 29988 397 * dwarf2.c (read_indexed_address): Fix check for an out of range 398 offset. 399 4002023-01-06 Nick Clifton <nickc@redhat.com> 401 402 * po/ru.po: Updated Russian translation. 403 4042023-01-03 Himal <himalr@proton.me> 405 406 PR 29947 407 * bfdio.c (_bfd_real_fopen): Do not add a prefix to the Windows' 408 nul device filename. 409 4102023-01-03 Nick Clifton <nickc@redhat.com> 411 412 * po/fr.po: Updated French trabslation. 413 * po/uk.po: Updated Ukrainian trabslation. 414 4152022-12-31 Nick Clifton <nickc@redhat.com> 416 417 * 2.40 branch created. 418 4192022-12-23 Nick Clifton <nickc@redhat.com> 420 421 PR 29936 422 * dwarf2.c (concat_filename): Fix check for a directory index off 423 the end of the directory table. 424 4252022-12-21 Nick Clifton <nickc@redhat.com> 426 427 * po/ro.po: Updated Romanian translation. 428 4292022-12-06 Nick Clifton <nickc@redhat.com> 430 431 PR 29852 432 * elf32-arm.c (cmse_scan): Check for NULL entries in the 433 sym_hashes array. 434 (elf32_arm_gc_mark_extra_sections): Likewise. 435 4362022-12-05 Nick Clifton <nickc@redhat.com> 437 438 PR 29848 439 * vms-alpha.c (parse_module): Fix potential out of bounds memory 440 access. 441 4422022-12-01 Nick Clifton <nickc@redhat.com> 443 444 PR 25202 445 * bfd.c (VerilogDataEndianness): New variable. 446 (verilog_write_record): Use VerilogDataEndianness, if set, to 447 choose the endianness of the output. 448 (verilog_write_section): Adjust the address by the data width. 449 4502022-11-21 Nick Clifton <nickc@redhat.com> 451 452 PR 29764 453 * cpu-arm.c (scan): Accept machine names prefixed with "arm:". 454 * cpu-aarch64.c (scan): Accept machine names prefixed with "aarch64:". 455 4562022-10-19 Nick Clifton <nickc@redhat.com> 457 458 PR 29699 459 * elf.c (_bfd_elf_slurp_version_tables): Fail if the sh_info field 460 of the section header is zero. 461 4622022-09-09 Nick Clifton <nickc@redhat.com> 463 464 PR 29532 465 * elf.c (setup_group): Do not return false if there is no group 466 information available. 467 4682022-09-02 Aaron Merey <amerey@redhat.com> 469 470 * aout-target.h (MY_find_nearest_line_with_alt): New macro. 471 * bfd-in2.h: Regenerate. 472 * bfd.c (bfd_find_nearest_line_with_alt): New macro. 473 * binary.c (binary_find_nearest_line_with_alt): New macro. 474 * coff-rs6000.c (_bfd_xcoff_find_nearest_line_with_alt): New macro. 475 (rs6000_xcoff64_vec): Add coff_find_nearest_line_with_alt. 476 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Calls 477 _bfd_dwarf2_find_nearest_line_with_alt. 478 (_bfd_dwarf2_find_nearest_line_with_alt): New function. Implements the 479 former _bfd_dwarf2_find_nearest_line. Adds parameter alt_filename. 480 Attempt to open alt_filename and use it as the .dwz file if not NULL. 481 * elf-bfd.h (_bfd_elf_find_nearest_line_with_alt): New declaration. 482 * elf.c (_bfd_elf_find_nearest_line): Calls 483 _bfd_elf_find_nearest_line_with_alt. 484 (_bfd_elf_find_nearest_line_with_alt): New function. Implements the 485 former _bfd_elf_find_nearest_line. Adds parameter alt_filename. 486 * elf32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro. 487 * elf64-mips.c (bfd_elf64_find_nearest_line_with_alt): New macro. 488 * elfn32-mips.c (bfd_elf32_find_nearest_line_with_alt): New macro. 489 * elfxx-mips.h (_bfd_mips_elf_find_nearest_line_with_alt): New macro. 490 * elfxx-target.h (bfd_elfNN_find_nearest_line_with_alt): New macro. 491 * i386mdos.c (msdos_find_nearest_line_with_alt): New macro. 492 * ihex.c (ihex_find_nearest_line_with_alt): New macro. 493 * libbfd-in.h (_bfd_nosymbols_find_nearest_line_with_alt): New 494 declaration. 495 (_bfd_dwarf2_find_nearest_line_with_alt): New declaration. 496 * libbfd.h: Regenerate. 497 * libcoff-in.h (coff_find_nearest_line_with_alt): New macro. 498 * libcoff.h: Regenerate. 499 * libecoff.h (_bfd_ecoff_find_nearest_line_with_alt): New macro. 500 * mach-o.h (bfd_mach_o_find_nearest_line_with_alt): New macro. 501 * mmo.c (mmo_find_nearest_line_with_alt): New macro. 502 * pef.c (bfd_pef_find_nearest_line_with_alt): New macro. 503 * plugin.c (bfd_plugin_find_nearest_line_with_alt): New macro. 504 * ppcboot.c (ppcboot_find_nearest_line_with_alt): New macro. 505 * som.h (som_find_nearest_line_with_alt): New macro. 506 * srec.c (srec_find_nearest_line_with_alt): New macro. 507 * syms.c (_bfd_nosymbols_find_nearest_line_with_alt): New function. 508 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Add symbol for 509 NAME##_find_nearest_line_with_alt. 510 (_bfd_find_nearest_line_with_alt): Add declaration. 511 * tekhex.c (tekhex_find_nearest_line_with_alt): New macro. 512 * verilog.c (verilog_find_nearest_line_with_alt): New macro. 513 * vms-alpha.c (_bfd_vms_find_nearest_line_with_alt): New macro. 514 * wasm-module.c (wasm_find_nearest_line_with_alt): New macro. 515 * xsym.c (bfd_sym_find_nearest_line_with_alt): New macro. 516 5172022-09-02 Frederic Cambus <fred@statdns.com> 518 519 * config.bfd (arm-*-openbsd*): Restore target. 520 5212022-08-30 Nick Clifton <nickc@redhat.com> 522 523 PR 29529 524 * dwarf2.c (struct line_info_table): Add new field: 525 use_dir_and_file_0. 526 (concat_filename): Use new field to help select the correct table 527 slot. 528 (read_formatted_entries): Do not skip entry 0. 529 (decode_line_info): Set new field depending upon the version of 530 DWARF being parsed. Initialise filename based upon the setting of 531 the new field. 532 5332022-08-22 Frederic Cambus <fred@statdns.com> 534 535 * config.bfd (aarch64-*-openbsd*): Add target. 536 5372022-08-03 Nick Clifton <nickc@redhat.com> 538 539 PR 29389 540 * bfd.c (BFD_CLOSED_BY_CACHE): New bfd flag. 541 * cache.c (bfd_cache_delete): Set BFD_CLOSED_BY_DELETE on the 542 closed bfd. 543 (bfd_cache_lookup_worker): Clear BFD_CLOSED_BY_DELETE on the newly 544 reopened bfd. 545 * opncls.c (bfd_set_filename): Refuse to change the name of a bfd 546 that has been closed by bfd_cache_delete. Mark changed bfds as 547 uncacheable. 548 * bfd-in2.h: Regenerate. 549 5502022-07-29 Nick Clifton <nickc@redhat.com> 551 552 PR 29424 553 * dwarf2.c (read_attribute_value): Handle DW_FORM_rnglistx and 554 DW_FORM_loclistx. 555 5562022-07-26 Nick Clifton <nickc@redhat.com> 557 558 * elfnn-loongarch.c (loongarch_elf_relocate_section): Fix 559 indentation. 560 5612022-07-08 Nick Clifton <nickc@redhat.com> 562 563 * 2.39 branch created. 564 5652022-05-19 Yvan Roux <yvan.roux@foss.st.com> 566 567 PR 25713 568 * bfdio.c (_bfd_real_fopen): Delete ccs string. 569 5702022-04-27 John Baldwin <jhb@FreeBSD.org> 571 572 * elf.c (elfcore_grok_freebsd_note): Handle NT_ARM_TLS notes. 573 5742022-04-25 Nick Clifton <nickc@redhat.com> 575 576 PR 29072 577 * elflink.c (bfd_elf_size_dynamic_sections): Display a note to the 578 user that the current ehaviour of creating an executable stack 579 because of a missing .note.GNU-stack section is deprecated and 580 will be changed in a future release. 581 5822022-04-20 Clément Chigot <clement.chigot@atos.net> 583 584 * coff-rs6000.c (xcoff_reloc_type_noop): Add info argument. 585 (xcoff_reloc_type_fail): Likewise. 586 (xcoff_reloc_type_pos): Likewise. 587 (xcoff_reloc_type_neg): Likewise. 588 (xcoff_reloc_type_rel): Likewise. 589 (xcoff_reloc_type_toc): Likewise. 590 (xcoff_reloc_type_ba): Likewise. 591 (xcoff_reloc_type_crel): Likewise. 592 (xcoff_reloc_type_tls): Likewise. 593 (xcoff_reloc_type_br): Add stub handler. 594 (xcoff_ppc_relocate_section): Add info to 595 xcoff_calculate_relocation. 596 (xcoff_stub_indirect_call_code): New constant. 597 (xcoff_stub_shared_call_code): Likewise. 598 (bfd_xcoff_backend_data): Add stub code fields. 599 (bfd_pmac_xcoff_backend_data): Likewise. 600 * coff64-rs6000.c (xcoff64_reloc_type_br): Add stub handler. 601 (xcoff64_ppc_relocate_section): Add info to 602 xcoff64_calculate_relocation. 603 (xcoff64_stub_indirect_call_code): New constant. 604 (xcoff64_stub_shared_call_code): Likewise. 605 (bfd_xcoff_backend_data): Add stub code fields. 606 (bfd_xcoff_aix5_backend_data): Likewise. 607 * libxcoff.h (struct xcoff_backend_data_rec): Add stub fields. 608 (bfd_xcoff_stub_indirect_call_code): New define. 609 (bfd_xcoff_stub_indirect_call_size): New define. 610 (bfd_xcoff_stub_shared_call_code): New define. 611 (bfd_xcoff_stub_shared_call_size): New define. 612 (xcoff_reloc_function): Add info argument. 613 (enum xcoff_stub_type): New enum. 614 (struct xcoff_stub_hash_entry): New structure. 615 * xcofflink.c (struct xcoff_link_hash_table): Add stub hash 616 table and params fields. 617 (xcoff_stub_hash_entry): New define. 618 (xcoff_stub_hash_lookup): New define. 619 (stub_hash_newfunc): New function. 620 (_bfd_xcoff_bfd_link_hash_table_free): Free the new stub hash 621 table. 622 (_bfd_xcoff_bfd_link_hash_table_create): Create the new stub 623 hash table. 624 (xcoff_link_add_symbols): Save rawsize for XTY_SD. 625 (bfd_xcoff_link_init): New function. 626 (xcoff_stub_csect_name): New function. 627 (xcoff_stub_get_csect_in_range): New function. 628 (xcoff_stub_name): New function. 629 (bfd_xcoff_get_stub_entry): New function. 630 (bfd_xcoff_type_of_stub): New function. 631 (xcoff_add_stub): New function. 632 (xcoff_build_one_stub): New function. 633 (bfd_xcoff_size_stubs): New function. 634 (bfd_xcoff_build_stubs): New function. 635 (xcoff_stub_create_relocations): New function. 636 (xcoff_link_input_bfd): Adapt relocations to stub. 637 (xcoff_write_global_symbol): Adapt to new TOC entries generated 638 for stubs. 639 (_bfd_xcoff_bfd_final_link): Handle stub file. 640 * xcofflink.h (struct bfd_xcoff_link_params): New structure. 641 6422022-04-20 Clément Chigot <clement.chigot@atos.net> 643 644 * coff-rs6000.c (_bfd_xcoff_put_ldsymbol_name): Write len in 645 ldinfo->strings instead of directly in the output_bfd. 646 * coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise. 647 * xcofflink.c (struct xcoff_link_hash_table): Remove ldrel_count 648 field. Add ldinfo field. 649 (xcoff_mark_symbol): Adjust to new ldinfo field. 650 (xcoff_mark): Likewise. 651 (bfd_xcoff_link_count_reloc): Likewise. 652 (xcoff_build_loader_section): Split into two functions: one that 653 build the loader section (this function) and one that only size 654 it... 655 (xcoff_size_loader_section): ... (this function). 656 (bfd_xcoff_size_dynamic_sections): Adapt to new ldinfo field. 657 Move the part where the dynamic sections are build to ... 658 (bfd_xcoff_build_dynamic_sections): ... this function. 659 * xcofflink.h: Add bfd_xcoff_build_dynamic_sections prototype. 660 6612022-04-13 Alexander von Gluck IV <kallisti5@unixzen.com> 662 663 * config.bfd (x86-haiku): Add i386_pei_vec as a selectable format. 664 6652022-04-08 Nick Clifton <nickc@redhat.com> 666 667 PR 29038 668 * coffgen.c (coff_find_nearest_line_with_names): Fix typo 669 retrieving saved bias. 670 6712022-04-07 Mark Harmstone <mark@harmstone.com> 672 673 * coff-i386.c (in_reloc_p): Add R_SECTION. 674 (howto_table): Add R_SECTION. 675 (coff_pe_i386_relocation_section): Add support for R_SECTION. 676 (coff_i386_reloc_type_lookup): Add support for 677 BFD_RELOC_16_SECCIDX. 678 * coff-x86_64.c (in_reloc_p): Add R_SECTION. 679 (howto_table): Add R_SECTION. 680 (coff_pe_amd64_relocation_section): Add support for R_SECTION. 681 (coff_amd64_reloc_type_lookup): Add support for 682 BFD_RELOC_16_SECCIDX. 683 * reloc.c: Add BFD_RELOC_16_SECIDX. 684 * bfd-in2.h: Regenerate. 685 * libbfd.h: Regenerate. 686 6872022-04-01 John Baldwin <jhb@FreeBSD.org> 688 689 * elf-bfd.h (elfcore_write_x86_segbases): New. 690 * elf.c (elfcore_grok_freebsd_note): Add pseudosections for 691 NT_FREEBSD_X86_SEGBASES register notes. 692 (elfcore_write_x86_segbases): New. 693 (elfcore_write_register_note): Write NT_FREEBSD_X86_SEGBASES 694 register notes. 695 6962022-04-01 John Baldwin <jhb@FreeBSD.org> 697 698 * elf.c (elfcore_grok_freebsd_note): Remove checks for namesz. 699 7002022-03-22 Steiner H Gunderson <steinar+sourceware@gunderson.no> 701 702 * dwarf2.c (_bfd_dwarf2_find_nearest_line): if a function name is 703 found, but no line number info, then return a result of 2. 704 7052022-03-21 Steiner H Gunderson <steinar+sourceware@gunderson.no> 706 707 PR 28978 708 * dwarf2.c (scan_unit_for_symbols): When performing second pass, 709 check to see if the function or variable being processed is the 710 same as the previous one. 711 7122022-03-18 Viorel Preoteasa <viorel.preoteasa@gmail.com> 713 714 PR 28924 715 * elf32-arm.c (THM_MAX_FWD_BRANCH_OFFSET): Fix definition. 716 (THM2_MAX_FWD_BRANCH_OFFSET): Likewise. 717 7182022-03-16 Simon Marchi <simon.marchi@efficios.com> 719 720 * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES): 721 Add cpu-amdgcn.c. 722 (BFD64_BACKENDS): Add elf64-amdgcn.lo. 723 (BFD64_BACKENDS_CFILES): Add elf64-amdgcn.c. 724 * Makefile.in: Re-generate. 725 * cpu-amdgcn.c: New. 726 * elf64-amdgcn.c: New. 727 * archures.c (bfd_architecture): Add bfd_arch_amdgcn and related 728 mach defines. 729 (bfd_amdgcn_arch): New. 730 (bfd_archures_list): Add bfd_amdgcn_arch. 731 * bfd-in2.h: Re-generate. 732 * config.bfd: Handle amdgcn* target. 733 * configure.ac: Handle amdgcn_elf64_le_vec. 734 * configure: Re-generate. 735 * elf-bfd.h (elf_target_id): Add AMDGCN_ELF_DATA. 736 * targets.c (amdgcn_elf64_le_vec): New. 737 (_bfd_target_vector): Add amdgcn_elf64_le_vec. 738 7392022-03-01 Torbjörn Svensson <torbjorn.svensson@st.com> 740 Fred Eisele <fredrick.eisele@gmail.com> 741 742 PR 25713 743 * bfdio.c (_bfd_real_fopen): Fix typo. 744 7452022-03-01 Nick Clifton <nickc@redhat.com> 746 747 PR 28848 748 * elf32-arm.c (elf32_arm_merge_eabi_attributes): If the first 749 input bfd has a Tag_ABI_HardFP_use set to 3 but does not also have 750 TAG_FP_arch set then reset the TAG_ABI_HardFP_use. 751 7522022-02-28 Torbjörn Svensson <torbjorn.svensson@st.com> 753 Fred Eisele <fredrick.eisele@gmail.com> 754 755 PR 25713 756 * bfdio.c (_bfd_real_fopen): Fix handling of paths longer than 260 757 characters on Windows hosts. 758 7592022-02-28 Nick Clifton <nickc@redhat.com> 760 761 PR 28886 762 * config.bfd: Update error message for obsolete configurations. 763 7642022-02-17 Nick Clifton <nickc@redhat.com> 765 766 * po/sr.po: Updated Serbian translation. 767 7682022-02-16 Fangrui Song <maskray@google.com> 769 Nick Clifton <nickc@redhat.com> 770 771 PR ld/28841 772 * bfd-in2.h (struct bfd_section): Add type. 773 (discarded_section): Add field. 774 * elf.c (elf_fake_sections): Handle bfd_section::type. 775 * section.c (BFD_FAKE_SECTION): Add field. 776 * mri.c (mri_draw_tree): Update function call. 777 7782022-02-11 Michael Forney <mforney@mforney.org> 779 780 * bfd.c (bfd_set_gp_value): Remove return with expression 781 in void function. 782 7832022-02-09 Nick Clifton <nickc@redhat.com> 784 785 * config.bfd: Move pending obsolesence targets into the definitely 786 obsolete list. 787 7882022-02-02 Nick Clifton <nickc@redhat.com> 789 790 PR 28834 791 * dwarf2.c (read_section): Change the heuristic that checks for 792 overlarge dwarf debug info sections. 793 7942022-02-02 Stafford Horne <shorne@gmail.com> 795 796 PR 28735 797 * elf32-or1k.c (or1k_elf_got16_no_overflow_howto): Define. 798 (or1k_elf_relocate_section): Use new howto instead of trying to 799 mask out relocation bits. 800 8012022-01-24 Roland McGrath <mcgrathr@google.com> 802 803 * doc/local.mk (%D%/bfdver.texi): Add mkdir command. 804 8052022-01-24 Nick Clifton <nickc@redhat.com> 806 807 * po/fr.po: Updated French translation. 808 * po/ro.po: Updated Romanian translation. 809 * po/uk.po: Updated Ukranian translation. 810 8112022-01-22 Nick Clifton <nickc@redhat.com> 812 813 * version.m4: Change to 2.38.50. 814 * configure: Regenerate. 815 * po/bfd.pot: Regenerate. 816 8172022-01-22 Nick Clifton <nickc@redhat.com> 818 819 * 2.38 release branch created. 820 8212022-01-17 Nick Clifton <nickc@redhat.com> 822 823 * Makefile.in: Regenerate. 824 * configure: Regenerate. 825 * doc/Makefile.in: Regenerate. 826 * po/bfd.pot: Regenerate. 827 8282021-12-15 Nikita Popov <npv1310@gmail.com> 829 830 PR 28687 831 * dwarf1.c (parse_die): Fix undefined behaviour in range tests. 832 8332021-11-17 Nick Clifton <nickc@redhat.com> 834 835 PR 28452 836 * elf.c (assign_file_positions_for_non_load_sections): Replace 837 assertion with a warning message. 838 8392021-10-19 Nick Clifton <nickc@redhat.com> 840 841 * linker.c (_bfd_generic_link_add_one_symbol): Test for a NULL 842 name before checking to see if the symbol is __gnu_lto_slim. 843 * archive.c (_bfd_compute_and_write_armap): Likewise. 844 8452021-09-27 Nick Alcock <nick.alcock@oracle.com> 846 847 * configure: Regenerate. 848 8492021-09-15 Andrew Burgess <andrew.burgess@embecosm.com> 850 851 * archures.c (bfd_arch_list): Use 'char *' instead of 'char **' 852 when calculating space for a string list. 853 8542021-09-014 Cupertino Miranda <cmiranda@synopsys.com> 855 Claudiu Zissulescu <claziss@synopsys.com> 856 857 * arc-got.h (arc_static_sym_data): New structure. 858 (get_static_sym_data): New function. 859 (relocate_fix_got_relocs_for_got_info): Move the computation fo 860 symbol value and section to above introduced function, and use 861 this new function. 862 8632021-09-07 Luis Machado <luis.machado@linaro.org> 864 865 Revert: [AArch64] MTE corefile support 866 867 2021-05-21 Luis Machado <luis.machado@linaro.org> 868 869 * elf.c (elfcore_make_memtag_note_section): New function. 870 (elfcore_grok_note): Handle NT_MEMTAG note types. 871 8722021-09-07 Nick Clifton <nickc@redhat.com> 873 874 PR 28305 875 * elf32-xtensa.c (elf_xtensa_do_reloc): Add check for put of range 876 reloc. 877 878 PR 28303 879 * elfxx-riscv.c (riscv_elf_add_sub_reloc): Add check for out of 880 range relocs. 881 8822021-08-10 Nick Clifton <nickc@redhat.com> 883 884 * po/sr.po: Updated Serbian translation. 885 8862021-07-18 Nick Clifton <nickc@redhat.com> 887 888 * config.bfd: Move pending obsoletion targets to obsolete list. 889 8902021-07-16 Giulio Benetti <giulio.benetti@benettiengineering.com> 891 892 * elf32-or1k.c (or1k_elf_relocate_section): Use a separate entry 893 in switch case R_OR1K_INSN_REL_26 where we need to check for 894 !SYMBOL_CALLS_LOCAL() instead of !SYMBOL_REFERENCES_LOCAL(). 895 8962021-07-14 Clément Chigot <clement.chigot@atos.net> 897 898 * libxcoff.h (struct xcoff_dwsect_name): Add DWARF name. 899 * coff-rs6000.c (xcoff_dwsect_names): Update. 900 * coffcode.h (sec_to_styp_flags): Likewise. 901 (coff_new_section_hook): Likewise. 902 9032021-07-10 Alan Modra <amodra@gmail.com> 904 905 * dwarf2.c (read_address): Remove accidental commit. 906 (read_ranges): Compare offset rather than pointers. 907 9082021-07-08 Nick Clifton <nickc@redhat.com> 909 910 * po/pt.po: Updated Portuguese translation. 911 9122021-07-07 Nick Clifton <nickc@redhat.com> 913 914 * elfcode.h (elf_swap_symbol_out): Revert accidental change that 915 removed an abort if the shndx pointer is NULL. 916 9172021-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 918 919 * sysdep.h [!ENABLE_NLS]: Prevent inclusion of <libintl.h> on 920 Solaris. 921 9222021-07-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 923 924 * configure.ac: Check for strnlen declaration. 925 * configure, config.in: Regenerate. 926 9272021-07-07 Nick Clifton <nickc@redhat.com> 928 929 PR 28051 930 * coff-rs6000.c (xcoff_reloc_type_tls): Reformat error messages in 931 order to fix problems when translating. 932 * cofflink.c (_bfd_coff_write_global_sym): Likewise. 933 * elfnn-aarch64.c (_bfd_aarch64_erratum_843419_branch_to_stub): 934 Likewise. 935 * po/bfd.pot: Regenerate. 936 9372021-07-06 Michael Matz <matz@suse.de> 938 939 PR ld/28021 940 * elfnn-riscv.c (riscv_relax_delete_bytes): Check for any 941 versioning. 942 9432021-07-06 Alan Modra <amodra@gmail.com> 944 945 PR 28055 946 * elf64-bpf.c (bpf_elf_generic_reloc): Add missing ATTRIBUTE_UNUSED. 947 9482021-07-05 Alan Modra <amodra@gmail.com> 949 950 PR 28055 951 * elf64-bpf.c (bpf_elf_generic_reloc): Use correct bfd for bfd_put 952 and bfd_put_32 calls. Correct section limit checks. 953 9542021-07-03 Nick Clifton <nickc@redhat.com> 955 956 * version.m4: Update version number. 957 * configure: Regenerate. 958 * po/opcodes.pot: Regenerate. 959 9602021-07-03 Nick Clifton <nickc@redhat.com> 961 962 * 2.37 release branch created. 963 9642021-07-02 Nick Clifton <nickc@redhat.com> 965 966 PR 28046 967 * dwarf2.c (read_ranges): Check that range_ptr does not exceed 968 range_end. 969 9702021-06-30 YunQiang Su <yunqiang.su@cipunited.com> 971 972 PR mips/28009 973 * bfd/elfxx-mips.c (_bfd_mips_elf_section_from_shdr, 974 _bfd_mips_elf_fake_sections): Mark LTO debug info as 975 SHT_MIPS_DWARF. 976 9772021-06-29 Nick Clifton <nickc@redhat.com> 978 979 * config.bfd (obsolete configurations): Add netbsdpe. 980 9812021-06-22 Nelson Chu <nelson.chu@sifive.com> 982 983 * elfnn-riscv.c (riscv_pcrel_hi_reloc): Added field to store 984 the original relocation type, in case the type is converted to 985 R_RISCV_HI20. 986 (riscv_pcrel_lo_reloc): Removed unused name field. 987 (riscv_pcrel_relocs): Added comments. 988 (riscv_zero_pcrel_hi_reloc): Removed unused input_bfd. 989 (riscv_record_pcrel_hi_reloc): Updated. 990 (riscv_record_pcrel_lo_reloc): Likewise. 991 (riscv_resolve_pcrel_lo_relocs): Likewise. Check the original 992 type of auipc, to make sure the %pcrel_lo without any addends. 993 Otherwise, report dangerous relocation error. 994 (riscv_elf_relocate_section): Updated above functions are changed. 995 For R_RISCV_GOT_HI20, report dangerous relocation error when addend 996 isn't zero. 997 9982021-06-19 H.J. Lu <hongjiu.lu@intel.com> 999 1000 PR ld/27998 1001 * elfxx-x86.c (elf_x86_allocate_dynrelocs): Count PLT for GOTOFF 1002 relocation against IFUNC symbols. 1003 (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. 1004 10052021-06-19 H.J. Lu <hongjiu.lu@intel.com> 1006 1007 * elflink.c (bfd_elf_final_link): Correct DT_TEXTREL warning in 1008 PDE. 1009 10102021-06-18 H.J. Lu <hongjiu.lu@intel.com> 1011 1012 * elf-properties.c (_bfd_elf_parse_gnu_properties): Handle 1013 GNU_PROPERTY_UINT32_AND_LO, GNU_PROPERTY_UINT32_AND_HI, 1014 GNU_PROPERTY_UINT32_OR_LO and GNU_PROPERTY_UINT32_OR_HI. 1015 (elf_merge_gnu_properties): Likewise. 1016 10172021-06-11 Alan Modra <amodra@gmail.com> 1018 1019 PR 27952 1020 * elf-bfd.h (struct elf_obj_tdata): Add is_pie. 1021 * elflink.c (elf_link_add_object_symbols): Set is_pie. 1022 10232021-06-09 Nick Clifton <nickc@redhat.com> 1024 1025 PR 27666 1026 * config.bfd: Do not add the sparc_elf32_vec or sparc_elf64_vec 1027 vectors to Sparc Solaris2 targets. 1028 10292021-06-08 Michael Matz <matz@suse.de> 1030 1031 * elf.c (bfd_section_from_shdr): Set has_secondary_relocs flag. 1032 (_bfd_elf_slurp_secondary_reloc_section): Use it for early-out. 1033 10342021-06-07 Jan Beulich <jbeulich@suse.com> 1035 1036 * dwarf2.c (read_ranges, read_rnglists): Add u suffix to constant. 1037 10382021-06-02 Alan Modra <amodra@gmail.com> 1039 1040 * elf-attrs.c (_bfd_elf_parse_attributes): Break out of loop if 1041 subsection length is too small to cover tag and length field. 1042 10432021-05-31 Nelson Chu <nelson.chu@sifive.com> 1044 Lifang Xia <lifang_xia@c-sky.com> 1045 1046 PR 27566 1047 * elfnn-riscv.c (struct riscv_elf_link_hash_table): New integer pointer 1048 to monitor the data segment phase. 1049 (bfd_elfNN_riscv_set_data_segment_info): New function called by 1050 after_allocation, to set the data_segment_phase from expld.dataseg. 1051 (_bfd_riscv_relax_section): Don't relax when data_segment_phase is 1052 exp_seg_relro_adjust (0x4). 1053 * elfxx-riscv.h (bfd_elf32_riscv_set_data_segment_info): New extern. 1054 (bfd_elf64_riscv_set_data_segment_info): Likewise 1055 10562021-05-28 H.J. Lu <hongjiu.lu@intel.com> 1057 1058 PR ld/27905 1059 * elf32-i386.c: Don't include "libiberty.h". 1060 (elf_howto_table): Revert commits a7664973b24 and 50c95a739c9. 1061 (elf_i386_rtype_to_howto): Revert commit 50c95a739c9. 1062 (elf_i386_info_to_howto_rel): Likewise. 1063 (elf_i386_tls_transition): Likewise. 1064 (elf_i386_relocate_section): Likewise. 1065 * elf64-x86-64.c (x86_64_elf_howto_table): Revert commits 1066 a7664973b24 and 50c95a739c9. 1067 (elf_x86_64_rtype_to_howto): Revert commit 50c95a739c9. 1068 * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Likewise. 1069 * elfxx-x86.h (elf_x86_obj_tdata): Likewise. 1070 (elf_x86_has_code16): Likewise. 1071 10722021-05-26 H.J. Lu <hongjiu.lu@intel.com> 1073 1074 PR ld/27905 1075 * elf32-i386.c: Include "libiberty.h". 1076 (elf_howto_table): Add 16-bit R_386_PC16 entry. 1077 (elf_i386_rtype_to_howto): Add a BFD argument. Use 16-bit 1078 R_386_PC16 if input has 16-bit mode instructions. 1079 (elf_i386_info_to_howto_rel): Update elf_i386_rtype_to_howto 1080 call. 1081 (elf_i386_tls_transition): Likewise. 1082 (elf_i386_relocate_section): Likewise. 1083 * elf64-x86-64.c (x86_64_elf_howto_table): Add 16-bit 1084 R_X86_64_PC16 entry. 1085 (elf_x86_64_rtype_to_howto): Use 16-bit R_X86_64_PC16 if input 1086 has 16-bit mode instructions. 1087 * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Set 1088 elf_x86_has_code16 if relocatable input is marked with 1089 GNU_PROPERTY_X86_FEATURE_2_CODE16. 1090 * elfxx-x86.h (elf_x86_obj_tdata): Add has_code16. 1091 (elf_x86_has_code16): New. 1092 10932021-05-26 Nelson Chu <nelson.chu@sifive.com> 1094 1095 * elfxx-riscv.h (check_unknown_prefixed_ext): New bool. 1096 * elfxx-riscv.c (riscv_parse_prefixed_ext): Do not check the 1097 prefixed extension name if check_unknown_prefixed_ext is false. 1098 * elfnn-riscv.c (riscv_merge_arch_attr_info): Set 1099 check_unknown_prefixed_ext to false for linker. 1100 11012021-05-25 Nick Clifton <nickc@redhat.com> 1102 1103 * elf32-arn.c (struct elf_arm_obj_tdata): Add num_entries field. 1104 (elf32_arm_num_entries): New macro. 1105 (elf32_arm_allocate_local_sym_info): Initialise the new field. 1106 Allocate arrays individually so that buffer overruns can be 1107 detected by memory checkers. 1108 (elf32_arm_create_local_iplt): Check num_entries. 1109 (elf32_arm_get_plt_info): Likewise. 1110 (elf32_arm_final_link_relocate): Likewise. 1111 (elf32_arm_check_relocs): Likewise. 1112 (elf32_arm_size_dynamic_sections): Likewise. 1113 (elf32_arm_output_arch_local_syms): Likewise. 1114 11152021-05-25 Nick Clifton <nickc@redhat.com> 1116 1117 * elf32-arm.c: Fix formatting. 1118 11192021-05-25 Alan Modra <amodra@gmail.com> 1120 1121 * elf-attrs.c (elf_attr_strdup): New function. 1122 (_bfd_elf_attr_strdup): Use it here. 1123 (elf_add_obj_attr_string): New function, extracted from.. 1124 (bfd_elf_add_obj_attr_string): ..here. 1125 (elf_add_obj_attr_int_string): New function, extracted from.. 1126 (bfd_elf_add_obj_attr_int_string): ..here. 1127 (_bfd_elf_parse_attributes): Don't allocate an extra byte for a 1128 string terminator. Instead ensure parsing doesn't go past 1129 end of sub-section. Use size_t variables for lengths. 1130 11312021-05-22 Alan Modra <amodra@gmail.com> 1132 1133 * libbfd.c (_bfd_safe_read_leb128): Remove length_return parameter. 1134 Replace data pointer with pointer to pointer. Increment pointer 1135 over bytes read. 1136 * libbfd-in.h (_bfd_safe_read_leb128): Update prototype. 1137 * elf-attrs.c (_bfd_elf_parse_attributes): Adjust to suit. Be 1138 careful not to increment data pointer past end. Remove now 1139 redundant pr17512 check. 1140 * wasm-module.c (READ_LEB128): Adjust to suit changes to 1141 _bfd_safe_read_leb128. 1142 * dwarf2.c (read_n_bytes): New inline function, old one renamed to.. 1143 (read_blk): ..this. Allocate and return block. Increment bfd_byte** 1144 arg. 1145 (read_3_bytes): New function. 1146 (read_1_byte, read_1_signed_byte, read_2_bytes, read_4_bytes), 1147 (read_8_bytes, read_string, read_indirect_string), 1148 (read_indirect_line_string, read_alt_indirect_string): Take a 1149 byte_byte** arg which is incremented over bytes read. Remove any 1150 bytes_read return. Rewrite limit checks to compare lengths 1151 rather than pointers. 1152 (read_abbrevs, read_attribute_value, read_formatted_entries), 1153 (decode_line_info, find_abstract_instance, read_ranges), 1154 (read_rnglists, scan_unit_for_symbols, parse_comp_unit), 1155 (stash_comp_unit): Adjust to suit. Rewrite limit checks to 1156 compare lengths rather than pointers. 1157 * libbfd.h: Regenerate. 1158 11592021-05-21 Luis Machado <luis.machado@linaro.org> 1160 1161 * elf.c (elfcore_make_memtag_note_section): New function. 1162 (elfcore_grok_note): Handle NT_MEMTAG note types. 1163 11642021-05-20 Andrew Burgess <andrew.burgess@embecosm.com> 1165 1166 * section.c (bfd_get_section_by_name): Return NULL if name is 1167 NULL. 1168 (bfd_get_section_by_name_if): Likewise. 1169 * dwarf2.c (read_section): Remove unneeded NULL check. 1170 (find_debug_info): Likewise. 1171 11722021-05-19 Nick Clifton <nickc@redhat.com> 1173 1174 * plugin.c (bfd_plugin_open_input): Inform the user if the limit 1175 on the number of open files is reached. If possible, try to 1176 increase this limit before failing. 1177 11782021-05-14 Nelson Chu <nelson.chu@sifive.com> 1179 1180 * elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Check the values 1181 of %pcrel_hi, before and after adding the addend. Make sure the 1182 value won't be changed, otherwise, report dangerous error. 1183 11842021-05-13 Nelson Chu <nelson.chu@sifive.com> 1185 1186 * elfxx-riscv.c (check_implicit_always): The check_func, always add 1187 the implicit subset without checking. 1188 (check_implicit_for_i): The check_func for i, only add zicsr and 1189 zifencei when the version of i less than 2.1. 1190 (struct riscv_implicit_subset): Record the subsets and their 1191 corresponding implicit subsets. 1192 (riscv_implicit_subsets): Table records all implicit informations. 1193 (riscv_parse_add_implicit_subsets): Updated and add implicit subsets 1194 according to riscv_implicit_subsets. Remove the redundant codes. 1195 11962021-05-13 Alan Modra <amodra@gmail.com> 1197 1198 PR 27858 1199 * elf32-sh.c (sh_elf_info_to_howto): Correct check for last valid 1200 reloc howto. 1201 12022021-05-12 Luis Machado <luis.machado@linaro.org> 1203 1204 * elf-bfd.h (elfcore_write_aarch_mte): New prototype. 1205 * elf.c (elfcore_grok_aarch_mte, elfcore_write_aarch_mte): New 1206 functions. 1207 (elfcore_grok_note): Handle notes of type NT_ARM_TAGGED_ADDR_CTRL. 1208 (elfcore_write_register_note): Handle MTE notes. 1209 12102021-05-11 Alan Modra <amodra@gmail.com> 1211 1212 PR 27844 1213 * pdp11.c (aout_get_external_symbols): Clear first four bytes of 1214 strings array, not just the first byte. 1215 * aoutx.h (aout_get_external_symbols): Likewise. 1216 12172021-05-10 H.J. Lu <hongjiu.lu@intel.com> 1218 1219 PR binutils/27839 1220 * simple.c (bfd_simple_get_relocated_section_contents): Remove 1221 strayed fprintf. 1222 12232021-05-10 Nick Clifton <nickc@redhat.com> 1224 1225 PR 27839 1226 * simple.c (simple_dummy_add_to_set): New function. 1227 (simple_dummy_constructor): New function. 1228 (simple_dummy_multiple_common): New function. 1229 (bfd_simple_get_relocated_section_contents): Zero out the 1230 callbacks structure, and then set the add_to_set, constructor and 1231 multiple_common fields. 1232 12332021-05-10 Dimitar Dimitrov <dimitar@dinux.eu> 1234 1235 * elf32-pru.c (elf_backend_can_gc_sections): Define as 1. 1236 12372021-05-08 Mike Frysinger <vapier@gentoo.org> 1238 1239 * doc/Makefile.am (html-local, bfd/index.html): New targets. 1240 * doc/Makefile.in: Regenerate. 1241 12422021-05-08 Mike Frysinger <vapier@gentoo.org> 1243 1244 * doc/Makefile.am (AM_MAKEINFOFLAGS): Define. 1245 * doc/Makefile.in: Regenerate. 1246 12472021-05-07 Clément Chigot <clement.chigot@atos.net> 1248 1249 * coff-rs6000.c (xcoff_dwsect_names): Add new DWARF 1250 sections. 1251 * coffgen.c (coff_pointerize_aux): Handle C_DWARF. 1252 (coff_print_symbol): Likewise. 1253 * libxcoff.h (XCOFF_DWSECT_NBR_NAMES): Update. 1254 12552021-05-07 Jan Beulich <jbeulich@suse.com> 1256 1257 * elf64-x86-64.c (x86_64_elf_howto_table): Set src_mask fields 1258 to zero. 1259 12602021-05-07 Alan Modra <amodra@gmail.com> 1261 1262 * bfd-in2.h: Regenerate. 1263 * libbfd.h: Regenerate. 1264 12652021-05-06 Stafford Horne <shorne@gmail.com> 1266 1267 PR 27746 1268 * elf32-or1k.c (PLT_ENTRY_SIZE_LARGE, PLT_MAX_INSN_COUNT, 1269 OR1K_ADD, OR1K_ORI): New macros to help with plt creation. 1270 (elf_or1k_link_hash_table): New field plt_count. 1271 (elf_or1k_link_hash_entry): New field plt_index. 1272 (elf_or1k_plt_entry_size): New function. 1273 (or1k_write_plt_entry): Update to support variable size PLTs. 1274 (or1k_elf_finish_dynamic_sections): Use new or1k_write_plt_entry 1275 API. 1276 (or1k_elf_finish_dynamic_symbol): Update to write large PLTs 1277 when needed. 1278 (allocate_dynrelocs): Use elf_or1k_plt_entry_size to account for 1279 PLT size. 1280 12812021-05-06 Stafford Horne <shorne@gmail.com> 1282 1283 PR 21464 1284 * elf32-or1k.c (or1k_elf_relocate_section): Relax R_OR1K_GOT16 1285 overflow check if we have R_OR1K_GOT_AHI16 followed by 1286 R_OR1K_GOT16. 1287 12882021-05-06 Stafford Horne <shorne@gmail.com> 1289 1290 PR 21464 1291 * bfd-in2.h: Add BFD_RELOC_OR1K_GOT_AHI16 relocation. 1292 * elf32-or1k.c (or1k_elf_howto_table, or1k_reloc_map): Likewise. 1293 (or1k_final_link_relocate, or1k_elf_relocate_section, 1294 or1k_elf_check_relocs): Likewise. 1295 * libbfd.h (bfd_reloc_code_real_names): Likewise. 1296 * reloc.c: Likewise. 1297 12982021-05-06 Stafford Horne <shorne@gmail.com> 1299 1300 PR 27624 1301 * elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Change 1302 condition used to cleanup plt entries to cleanup forced local 1303 entries. 1304 13052021-05-05 H.J. Lu <hongjiu.lu@intel.com> 1306 1307 PR ld/27825 1308 * elflink.c (elf_link_output_symstrtab): Always append ".COUNT" 1309 to local symbols. 1310 13112021-05-05 Alan Modra <amodra@gmail.com> 1312 1313 * vms-lib.c (vms_traverse_index): Account for vms_kbn size when 1314 sanity checking keylen. 1315 13162021-05-04 Nick Clifton <nickc@redhat.com> 1317 1318 * libbfd.c (bfd_malloc): Provide some documenation. Treat a size 1319 of 0 as 1. 1320 (bfd_realloc): Likewise. 1321 (bfd_zmalloc): Likewise. 1322 (bfd_realloc_or_free): Provide some documentation. Treat a size 1323 of 0 as a request to free. 1324 * libbfd-in.h (bfd_realloc): Remove prototype. 1325 (bfd_realloc_or_free): Remove prototype. 1326 (bfd_zmalloc): Remove prototype. 1327 * libbfd.h: Regenerate. 1328 13292021-05-03 Jan Beulich <jbeulich@suse.com> 1330 1331 * elf32-i386.c (elf_howto_table): Switch all 32-bit relocs to 1332 complain_overflow_dont. 1333 * elf64-x86-64.c (x86_64_elf_howto_table): Switch all 64-bit 1334 relocs to complain_overflow_dont. 1335 13362021-05-03 Alan Modra <amodra@gmail.com> 1337 1338 * elf32-ppc.c (allocate_dynrelocs): Keep dyn_relocs for undefweak 1339 symbols when -z dynamic-undefined-weak or when there are no 1340 dynamic relocs in read-only sections and -z nodynamic-undefined-weak 1341 is not given. 1342 * elf64-ppc.c (allocate_dynrelocs): Likewise. 1343 13442021-05-03 Alan Modra <amodra@gmail.com> 1345 1346 * elf32-ppc.c (allocate_dynrelocs): Call ensure_undef_dynamic for 1347 weak undefined symols that only appear on PLT relocs. 1348 * elf64-ppc.c (allocate_dynrelocs): Likewise. 1349 13502021-05-03 Alan Modra <amodra@gmail.com> 1351 1352 PR 27755 1353 * elf32-ppc.c (ppc_elf_inline_plt): Do increment rel in loop. 1354 13552021-05-03 Alan Modra <amodra@gmail.com> 1356 1357 * elf32-csky.c (is_mapping_symbol_name): New function. 1358 (csky_elf_is_target_special_symbol): Likewise. 1359 (csky_elf_maybe_function_sym): Likewise. 1360 (bfd_elf32_bfd_is_target_special_symbol): Define. 1361 (elf_backend_maybe_function_sym): Define. 1362 13632021-04-30 Nick Clifton <nickc@redhat.com> 1364 1365 PR 27801 1366 * mach-o.c (bfd_mach_o_core_fetch_environment): Use bfd_get_32 to 1367 read 32-bit value. 1368 13692021-04-30 Nick Clifton <nickc@redhat.com> 1370 1371 PR 27799 1372 * elf32-xtensa.c (elf_xtensa_grok_prstatus): Check for core notes 1373 that are too small. 1374 13752021-04-30 Nick Clifton <nickc@redhat.com> 1376 1377 PR 27797 1378 * libbfd.c (bfd_realloc_or_free): Do not free a pointer than has 1379 been realloc'ed to size 0. 1380 13812021-04-30 Nick Clifton <nickc@redhat.com> 1382 1383 PR 27795 1384 * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Check for invalid name 1385 lengths. 1386 13872021-04-29 Nick Clifton <nickc@redhat.com> 1388 1389 PR 27793 1390 * som.c (som_slurp_symbol_table): Assign symbols without any scope 1391 to the undefined section. 1392 (som_decode_symclass): Check for a missing symbol section. 1393 * syms.c (bfd_decode_symclass): Likewise. 1394 13952021-04-29 Nick Clifton <nickc@redhat.com> 1396 1397 PR 27792 1398 * som.c (som_slurp_string_table): Place a terminating NUL byte at 1399 the end of the table. 1400 (som_slurp_symbol_table): Check for an over-large offset into the 1401 string string table. 1402 14032021-04-28 Nick Clifton <nickc@redhat.com> 1404 1405 * elf.c (_bfd_elf_maybe_function_sym): Do not accept annobin 1406 symbols as potential function symbols. 1407 * elfnn-aarch64.c (elfNN_aarch64_maybe_function_sym): Likewise. 1408 * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise. 1409 * elf32-arm.c (elf32_arm_maybe_function_sym): Likewise. 1410 14112021-04-26 Mike Frysinger <vapier@gentoo.org> 1412 1413 * elf-bfd.h: Include stdlib.h. 1414 14152021-04-26 Jan Beulich <jbeulich@suse.com> 1416 1417 * elf32-i386.c (elf_howto_table): Switch R_386_PC16 to 1418 complain_overflow_signed. 1419 * elf64-x86-64.c (x86_64_elf_howto_table): Switch R_X86_64_PC16 1420 to complain_overflow_signed. 1421 14222021-04-23 Eric Botcazou <ebotcazou@adacore.com> 1423 1424 * elf.c (special_sections_p): Add .persistent.bss. 1425 14262021-04-23 Jan Beulich <jbeulich@suse.com> 1427 1428 * elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero 1429 size field. 1430 * elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL 1431 has zero size field. 1432 14332021-04-22 Clément Chigot <clement.chigot@atos.net> 1434 1435 * hash.c (struct bfd_strtab_hash): Remove xcoff field. 1436 Add length_field_size field. 1437 (_bfd_stringtab_init): Change prototype. 1438 Adapt to new length_field_size. 1439 (_bfd_xcoff_stringtab_init): Likewise. 1440 (_bfd_stringtab_add): Likewise. 1441 (_bfd_stringtab_emit): Likewise. 1442 * libbfd-in.h (_bfd_xcoff_stringtab_init): 1443 Change prototype. 1444 * libbfd.h: Regenerate. 1445 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): 1446 Call _bfd_xcoff_stringtab_init with isxcoff64 value. 1447 14482021-04-22 Clément Chigot <clement.chigot@atos.net> 1449 1450 * coff-rs6000.c (_bfd_xcoff_swap_aux_in): Add errors for 1451 unsupported storage class or auxialiry entries. 1452 Improve and adapt to new aux structures. 1453 Add C_DWARF support. 1454 (_bfd_xcoff_swap_aux_out): Likewise. 1455 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Likewise. 1456 (_bfd_xcoff64_swap_aux_out): Likewise. 1457 14582021-04-21 Eli Zaretskii <eliz@gnu.org> 1459 1460 PR 27760 1461 * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add display 1462 of IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP, 1463 IMAGE_FILE_NET_RUN_FROM_SWAP and IMAGE_FILE_UP_SYSTEM_ONLY flags. 1464 Decode the contents of the DllCharacteristics field. 1465 14662021-04-21 Nick Clifton <nickc@redhat.com> 1467 1468 PR 27759 1469 * srec.c (srec_read_section): Replace assertions with error 1470 returns. 1471 14722021-04-20 Clément Chigot <clement.chigot@atos.net> 1473 1474 PR binutils/21700 1475 * reloc.c (BFD_RELOC_PPC_NEG): New relocation. 1476 * bfd-in2.h: Regenerate. 1477 * libbfd.h: Regenerate. 1478 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Add 1479 BFD_RELOC_PPC_NEG handler. 1480 (xcoff_reloc_type_neg): Correctly substract addend. 1481 * coff64-rs6000.c (xcoff64_howto_table): Add R_NEG_32 1482 howto. 1483 (xcoff64_rtype2howto): Add handler for R_NEG_32. 1484 (xcoff64_reloc_type_lookup): Add BFD_RELOC_PPC_NEG handler. 1485 * xcofflink.c (xcoff_need_ldrel_p): Check output section 1486 for R_POS-like relocations. New argument added. 1487 (xcoff_mark): Adapt to new xcoff_need_ldrel_p argument. 1488 (xcoff_link_input_bfd): Likewise. 1489 14902021-04-16 Alan Modra <amodra@gmail.com> 1491 1492 PR 27567 1493 * coffcode.h (styp_to_sec_flags): Use an unsigned long styp_flags. 1494 (coff_write_object_contents): Pass bfd to COFF_ENCODE_ALIGNMENT, 1495 ignore alignment checks when return is false. Formatting. 1496 14972021-04-15 Nelson Chu <nelson.chu@sifive.com> 1498 1499 PR27584 1500 * elfnn-riscv.c (riscv_elf_is_target_special_symbol): Added to 1501 omit local and empty symbols since they usually generated to 1502 mark the auipc instructions. 1503 15042021-04-15 Lifang Xia<lifang_xia@c-sky.com> 1505 1506 * elf32-csky.c (csky_elf_howto_table) 1507 <R_CKCORE_PCREL_IMM16BY2>: Set special_function to 1508 bfd_elf_generic_reloc. 1509 <R_CKCORE_PCREL_IMM16BY4>: Likewise. 1510 <R_CKCORE_PCREL_IMM10BY4>: Likewise. 1511 <R_CKCORE_PCREL_IMM18BY2>: Likewise. 1512 <R_CKCORE_PCREL_FLRW_IMM8BY4>: Likewise. 1513 15142021-04-14 H.J. Lu <hongjiu.lu@intel.com> 1515 1516 PR binutils/27708 1517 * elf.c (assign_file_positions_for_non_load_sections): Set 1518 p_memsz to p_filesz for the loadable PT_NOTE segment. 1519 15202021-04-14 Frederic Cambus <fred@statdns.com> 1521 1522 * elf.c (elfcore_grok_netbsd_note): Remove unneeded #ifdef 1523 checks for NT_NETBSDCORE_AUXV and NT_NETBSDCORE_LWPSTATUS. 1524 15252021-04-14 Alan Modra <amodra@gmail.com> 1526 1527 PR 27631 1528 * elf32-metag.c (elf_metag_relocate_section): Don't use &hh->elf 1529 when hh might be NULL, test for NULL first. 1530 15312021-04-14 Alan Modra <amodra@gmail.com> 1532 1533 PR 27630 1534 * elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when 1535 hash might be NULL, cast instead. 1536 15372021-04-13 Clément Chigot <clement.chigot@atos.net> 1538 1539 * xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier. 1540 15412021-04-13 Nelson Chu <nelson.chu@sifive.com> 1542 1543 * elfnn-riscv.c (riscv_version_mismatch): Do not report the warning 1544 when the version of input or output is RISCV_UNKNOWN_VERSION, since 1545 the extension is added implicitly. 1546 * elfxx-riscv.c: Updated the obsolete comments. 1547 (RISCV_UNKNOWN_VERSION): Moved to elfxx-riscv.h. 1548 * elfxx-riscv.h (RISCV_UNKNOWN_VERSION): Added. 1549 15502021-04-12 Alan Modra <amodra@gmail.com> 1551 1552 * elf-bfd.h (ENABLE_CHECKING): Define. 1553 (elf_link_hash_lookup): Abort if wrong type of hash table. 1554 * configure.ac (--enable-checking): Add support. 1555 * config.in: Regenerate. 1556 * configure: Regenerate. 1557 15582021-04-12 Alan Modra <amodra@gmail.com> 1559 1560 * elf-bfd.h (is_elf_hash_table): Convert macro to inline function. 1561 (elf_link_hash_lookup, elf_link_hash_traverse): Likewise. 1562 (elf_hash_table, elf_hash_table_id): Likewise. 1563 * elf32-arm.c (elf32_arm_setup_section_lists): Delete redundant 1564 is_elf_hash_table check. 1565 * elf32-csky.c (elf32_csky_setup_section_lists): Likewise. 1566 * elf32-hppa.c (clobber_millicode_symbols): Correct param types. 1567 * elf64-alpha.c (elf64_alpha_output_extsym): Likewise. 1568 * elfnn-ia64.c (elfNN_ia64_global_dyn_info_free: Likewise. 1569 (elfNN_ia64_global_dyn_sym_thunk: Likewise. 1570 * elf64-ia64-vms.c (elf64_ia64_global_dyn_info_free): Likewise. 1571 (elf64_ia64_global_dyn_sym_thunk): Likewise. 1572 (elf64_vms_link_add_object_symbols): Pass base type of hash table 1573 to is_elf_hash_table. 1574 * elflink.c (_bfd_elf_dynamic_symbol_p): Likewise. 1575 (_bfd_elf_symbol_refs_local_p, _bfd_elf_add_dynamic_entry): Likewise. 1576 (_bfd_elf_strip_zero_sized_dynamic_sections): Likewise. 1577 (_bfd_elf_link_check_relocs, elf_link_add_object_symbols): Likewise. 1578 (bfd_elf_final_link): Likewise. 1579 * elfnn-aarch64.c (elfNN_aarch64_setup_section_lists): Likewise. 1580 * elf64-ppc.c (ppc64_elf_set_toc): Likewise. Use bfd_link_hash_lookup. 1581 15822021-04-12 Alan Modra <amodra@gmail.com> 1583 1584 * elf-bfd.h (struct elf_backend_data): Return bfd_link_hash_entry* 1585 from elf_backend_archive_symbol_lookup. 1586 (_bfd_elf_archive_symbol_lookup): Return bfd_link_hash_entry*. 1587 * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Likewise. Check 1588 we have a ppc_hash_table before accessing ppc_link_hash_entry 1589 fields. 1590 * elflink.c (_bfd_elf_archive_symbol_lookup): Return 1591 bfd_link_hash_entry*. 1592 (elf_link_add_archive_symbols): Adjust to suit. 1593 15942021-04-12 Nelson Chu <nelson.chu@sifive.com> 1595 1596 * elfxx-riscv.c (riscv_parse_std_ext): Fixed the wrong versions of 1597 i-ext when expanding g-ext. 1598 15992021-04-12 Nelson Chu <nelson.chu@sifive.com> 1600 1601 * elfxx-riscv.c (riscv_ext_dont_care_version): Removed. 1602 (riscv_parse_add_subset): Always add the implicit extensions, even if 1603 their versions are RISCV_UNKNOWN_VERSION. 1604 (riscv_parse_std_ext): Delay to add i-ext as the implicit extension 1605 in the riscv_parse_add_implicit_subsets. Besides, add g-ext as the 1606 implicit extension after it has been expanded. 1607 (riscv_parse_add_implicit_subsets): Updated. 1608 16092021-04-12 Nelson Chu <nelson.chu@sifive.com> 1610 1611 * elfxx-riscv.c (riscv_std_z_ext_strtab): Moved forward. 1612 (riscv_std_s_ext_strtab): Likewise. 1613 (riscv_std_h_ext_strtab): Likewise. 1614 (riscv_std_zxm_ext_strtab): Added for the zxm prefix. 1615 (enum riscv_prefix_ext_class): Moved forward and renamed from 1616 riscv_isa_ext_class. Reorder them according to the parsing order, 1617 since the enum values are used to check the orders in the 1618 riscv_compare_subsets. 1619 (struct riscv_parse_prefix_config): Moved forward and renamed from 1620 riscv_parse_config_t. Also removed the ext_valid_p field, the 1621 related functions are replaced by riscv_valid_prefixed_ext. 1622 (parse_config): Moved forward and updated. The more letters of the 1623 prefix string, the more forward it must be defined. Otherwise, we 1624 will get the wrong mapping when using strncmp in riscv_get_prefix_class. 1625 (riscv_get_prefix_class): Moved forward. Support to parse the 1626 multi-letter prefix, like zxm. 1627 (riscv_known_prefixed_ext): New function, check if the prefixed 1628 extension is supported according to the right riscv_std_*_ext_strtab. 1629 (riscv_valid_prefixed_ext): New function, used to replace the 1630 riscv_ext_*_valid_p functions. 1631 (riscv_init_ext_order): Do not set the values for prefix keywords 1632 since they may have multiple letters for now. 1633 (riscv_compare_subsets): Set the order values of prefix keywords 1634 to negative numbers according to the riscv_prefix_ext_class. 1635 (riscv_parse_std_ext): Call riscv_get_prefix_class to see if we 1636 have parsed the prefixed extensions. 1637 (riscv_parse_prefixed_ext): Updated and removed the parameter config. 1638 Report error when the prefix is unknown. 1639 (riscv_parse_subset): Do not parse the prefixed extensions according 1640 to the orders in the parse_config. Remove the confused message and 1641 let riscv_parse_prefixed_ext to report the details. 1642 * elfxx-riscv.h (enum riscv_isa_ext_class): Moved to elfxx-riscv.c. 1643 (riscv_get_prefix_class): Removed to static. 1644 16452021-04-08 Mike Frysinger <vapier@gentoo.org> 1646 1647 * configure.ac (ACX_BUGURL): Use https://. 1648 * configure.com (COPY_TEXT): Likewise. 1649 * configure: Regenerate. 1650 16512021-04-05 Alan Modra <amodra@gmail.com> 1652 1653 * configure.ac: Don't check for long long or long double type. 1654 Don't check for alloca.h, limits.h, stddef.h, stdlib.h, string.h, 1655 strings.h, time.h, wchar.h, wctype.h or sys/time.h. Don't check 1656 for strtoull, free, malloc, realloc, getenv, strstr, snprintf, 1657 vsnprintf, strlen or setitimer. Sort AC_CHECK_DECLS. 1658 (AC_ISC_POSIX): Don't invoke. 1659 (AC_HEADER_TIME, AC_HEADER_DIRENT, ACX_HEADER_STRING): Likewise. 1660 * sysdep.h: Remove many HAVE_*_H checks and fallback declarations. 1661 Do test HAVE_SYS_TYPES_H. Don't include sys/time.h. Reorder 1662 header order as per automake AC_INCLUDES_DEFAULT. 1663 * bfd-in.h: Include inttypes.h unconditionally. 1664 * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Assume long long and 1665 long double are available. 1666 (bfd_scan_vma): Assume long long and strtoull are available. 1667 * elflink.c: Include limits.h unconditionally. 1668 * elfnn-riscv.c: Likewise. 1669 * wasm-module.c: Likewise. 1670 * hpux-core.c: Include dirent.h unconditionally. 1671 * trad-core.c: Likewise. 1672 * hosts/x86-64linux.h: Include stdlib.h unconditionally. 1673 * peXXigen.c: Remove HAVE_WCHAR_H and HAVE_WCTYPE_H checks. 1674 * elf32-m68hc1x.c: Don't include alloca-conf.h. 1675 * elf64-hppa.c: Likewise. 1676 * som.c: Likewise. 1677 * wasm-module.c: Likewise. 1678 * xsym.c: Likewise. 1679 * bfd-in2.h: Regenerate. 1680 * config.in: Regenerate. 1681 * configure: Regenerate. 1682 16832021-04-01 Tamar Christina <tamar.christina@arm.com> 1684 1685 PR ld/26659 1686 * cofflink.c (_bfd_coff_generic_relocate_section): Ignore overflow. 1687 16882021-04-01 Martin Liska <mliska@suse.cz> 1689 1690 * ecoff.c (strneq): Remove strneq and use startswith. 1691 (_bfd_ecoff_slurp_armap): Likewise. 1692 16932021-04-01 Martin Liska <mliska@suse.cz> 1694 1695 * elf-bfd.h (bfd_section_is_ctf): Use startswith function. 1696 * elf.c (_bfd_elf_make_section_from_shdr): Likewise. 1697 (elf_get_reloc_section): Likewise. 1698 * elf32-arc.c (elf_arc_size_dynamic_sections): Likewise. 1699 * elf32-m32r.c (m32r_elf_section_flags): Likewise. 1700 * elf32-microblaze.c (microblaze_elf_size_dynamic_sections): Likewise. 1701 * elf32-nds32.c (nds32_elf_size_dynamic_sections): Likewise. 1702 (nds32_elf_relocate_section): Likewise. 1703 (nds32_elf_action_discarded): Likewise. 1704 (nds32_elf_check_relocs): Likewise. 1705 (nds32_elf_section_flags): Likewise. 1706 * elf32-or1k.c (or1k_elf_check_relocs): Likewise. 1707 * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise. 1708 * elf32-rx.c (rx_table_find): Likewise. 1709 (rx_table_map): Likewise. 1710 * elf32-spu.c (spu_elf_backend_symbol_processing): Likewise. 1711 (spu_elf_find_overlays): Likewise. 1712 (needs_ovl_stub): Likewise. 1713 (allocate_spuear_stubs): Likewise. 1714 (build_spuear_stubs): Likewise. 1715 (mark_overlay_section): Likewise. 1716 (spu_elf_auto_overlay): Likewise. 1717 (spu_elf_output_symbol_hook): Likewise. 1718 * elf32-tilepro.c (tilepro_elf_size_dynamic_sections): Likewise. 1719 * elf32-xtensa.c (xtensa_property_section_name): Likewise. 1720 * elf64-ppc.c (ppc64_elf_section_flags): Likewise. 1721 (ppc64_elf_relocate_section): Likewise. 1722 * elflink.c (resolve_section): Likewise. 1723 (UNARY_OP): Likewise. 1724 (BINARY_OP_HEAD): Likewise. 1725 (elf_link_input_bfd): Likewise. 1726 * elfnn-riscv.c (riscv_elf_size_dynamic_sections): Likewise. 1727 * elfxx-riscv.c (riscv_parse_subset): Likewise. 1728 * elfxx-tilegx.c (tilegx_elf_size_dynamic_sections): Likewise. 1729 * opncls.c (get_build_id): Likewise. 1730 17312021-03-31 Alan Modra <amodra@gmail.com> 1732 1733 PR 27671 1734 * bfd-in.h: Don't poison FALSE or TRUE. 1735 * bfd-in2.h: Regenerate. 1736 17372021-03-31 Alan Modra <amodra@gmail.com> 1738 1739 * sysdep.h: POISON_BFD_BOOLEAN: Define. 1740 * aix5ppc-core.c, * aout-cris.c, * aout-ns32k.c, * aout-target.h, 1741 * aoutx.h, * arc-got.h, * archive.c, * archive64.c, * archures.c, 1742 * bfd-in.h, * bfd.c, * bfdwin.c, * binary.c, * cache.c, 1743 * coff-alpha.c, * coff-arm.c, * coff-arm.h, * coff-bfd.c, 1744 * coff-bfd.h, * coff-go32.c, * coff-i386.c, * coff-ia64.c, 1745 * coff-mcore.c, * coff-mips.c, * coff-rs6000.c, * coff-sh.c, 1746 * coff-stgo32.c, * coff-tic30.c, * coff-tic4x.c, * coff-tic54x.c, 1747 * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, * coff64-rs6000.c, 1748 * coffcode.h, * coffgen.c, * cofflink.c, * compress.c, 1749 * corefile.c, * cpu-aarch64.c, * cpu-aarch64.h, * cpu-alpha.c, 1750 * cpu-arc.c, * cpu-arm.c, * cpu-arm.h, * cpu-avr.c, * cpu-bfin.c, 1751 * cpu-bpf.c, * cpu-cr16.c, * cpu-cris.c, * cpu-crx.c, 1752 * cpu-csky.c, * cpu-d10v.c, * cpu-d30v.c, * cpu-dlx.c, 1753 * cpu-epiphany.c, * cpu-fr30.c, * cpu-frv.c, * cpu-ft32.c, 1754 * cpu-h8300.c, * cpu-hppa.c, * cpu-i386.c, * cpu-ia64.c, 1755 * cpu-iamcu.c, * cpu-ip2k.c, * cpu-iq2000.c, * cpu-k1om.c, 1756 * cpu-l1om.c, * cpu-lm32.c, * cpu-m10200.c, * cpu-m10300.c, 1757 * cpu-m32c.c, * cpu-m32r.c, * cpu-m68hc11.c, * cpu-m68hc12.c, 1758 * cpu-m68k.c, * cpu-m9s12x.c, * cpu-m9s12xg.c, * cpu-mcore.c, 1759 * cpu-mep.c, * cpu-metag.c, * cpu-microblaze.c, * cpu-mips.c, 1760 * cpu-mmix.c, * cpu-moxie.c, * cpu-msp430.c, * cpu-mt.c, 1761 * cpu-nds32.c, * cpu-nfp.c, * cpu-nios2.c, * cpu-ns32k.c, 1762 * cpu-or1k.c, * cpu-pdp11.c, * cpu-pj.c, * cpu-powerpc.c, 1763 * cpu-pru.c, * cpu-riscv.c, * cpu-rl78.c, * cpu-rs6000.c, 1764 * cpu-rx.c, * cpu-s12z.c, * cpu-s390.c, * cpu-score.c, 1765 * cpu-sh.c, * cpu-sparc.c, * cpu-spu.c, * cpu-tic30.c, 1766 * cpu-tic4x.c, * cpu-tic54x.c, * cpu-tic6x.c, * cpu-tilegx.c, 1767 * cpu-tilepro.c, * cpu-v850.c, * cpu-v850_rh850.c, * cpu-vax.c, 1768 * cpu-visium.c, * cpu-wasm32.c, * cpu-xc16x.c, * cpu-xgate.c, 1769 * cpu-xstormy16.c, * cpu-xtensa.c, * cpu-z80.c, * cpu-z8k.c, 1770 * dwarf1.c, * dwarf2.c, * ecoff-bfd.h, * ecoff.c, * ecofflink.c, 1771 * elf-attrs.c, * elf-bfd.h, * elf-eh-frame.c, * elf-hppa.h, 1772 * elf-ifunc.c, * elf-m10200.c, * elf-m10300.c, * elf-nacl.c, 1773 * elf-nacl.h, * elf-properties.c, * elf-s390-common.c, 1774 * elf-s390.h, * elf-strtab.c, * elf-vxworks.c, * elf-vxworks.h, 1775 * elf.c, * elf32-am33lin.c, * elf32-arc.c, * elf32-arm.c, 1776 * elf32-arm.h, * elf32-avr.c, * elf32-avr.h, * elf32-bfin.c, 1777 * elf32-bfin.h, * elf32-cr16.c, * elf32-cr16.h, * elf32-cris.c, 1778 * elf32-crx.c, * elf32-csky.c, * elf32-csky.h, * elf32-d10v.c, 1779 * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c, 1780 * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, * elf32-gen.c, 1781 * elf32-h8300.c, * elf32-hppa.c, * elf32-hppa.h, * elf32-i386.c, 1782 * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, * elf32-m32c.c, 1783 * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c, 1784 * elf32-m68hc1x.c, * elf32-m68hc1x.h, * elf32-m68k.c, 1785 * elf32-m68k.h, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c, 1786 * elf32-metag.h, * elf32-microblaze.c, * elf32-mips.c, 1787 * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, 1788 * elf32-nios2.c, * elf32-nios2.h, * elf32-or1k.c, * elf32-pj.c, 1789 * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c, 1790 * elf32-rx.c, * elf32-s12z.c, * elf32-s390.c, * elf32-score.c, 1791 * elf32-score.h, * elf32-score7.c, * elf32-sh-relocs.h, 1792 * elf32-sh.c, * elf32-sparc.c, * elf32-spu.c, * elf32-spu.h, 1793 * elf32-tic6x.c, * elf32-tic6x.h, * elf32-tilegx.c, 1794 * elf32-tilepro.c, * elf32-v850.c, * elf32-v850.h, 1795 * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c, 1796 * elf32-xc16x.c, * elf32-xgate.c, * elf32-xstormy16.c, 1797 * elf32-xtensa.c, * elf32-z80.c, * elf64-alpha.c, * elf64-bpf.c, 1798 * elf64-gen.c, * elf64-hppa.c, * elf64-ia64-vms.c, 1799 * elf64-mips.c, * elf64-mmix.c, * elf64-nfp.c, * elf64-ppc.c, 1800 * elf64-ppc.h, * elf64-s390.c, * elf64-sparc.c, 1801 * elf64-tilegx.c, * elf64-x86-64.c, * elfcode.h, 1802 * elfcore.h, * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c, 1803 * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-aarch64.c, 1804 * elfxx-aarch64.h, * elfxx-ia64.c, * elfxx-ia64.h, 1805 * elfxx-mips.c, * elfxx-mips.h, * elfxx-riscv.c, * elfxx-riscv.h, 1806 * elfxx-sparc.c, * elfxx-sparc.h, * elfxx-target.h, 1807 * elfxx-tilegx.c, * elfxx-tilegx.h, * elfxx-x86.c, * elfxx-x86.h, 1808 * format.c, * genlink.h, * hash.c, * i386aout.c, * i386lynx.c, 1809 * i386msdos.c, * ihex.c, * libaout.h, * libbfd-in.h, 1810 * libbfd.c, * libcoff-in.h, * libecoff.h, * libpei.h, 1811 * libxcoff.h, * linker.c, * mach-o-aarch64.c, * mach-o-arm.c, 1812 * mach-o-i386.c, * mach-o-x86-64.c, * mach-o.c, * mach-o.h, 1813 * merge.c, * mmo.c, * netbsd.h, * opncls.c, * pc532-mach.c, 1814 * pdp11.c, * pe-arm.c, * pe-i386.c, * pe-mcore.c, * pe-sh.c, 1815 * pe-x86_64.c, * peXXigen.c, * pef.c, * pei-arm.c, * pei-i386.c, 1816 * pei-ia64.c, * pei-mcore.c, * pei-sh.c, * pei-x86_64.c, 1817 * peicode.h, * plugin.c, * plugin.h, * ppcboot.c, * reloc.c, 1818 * reloc16.c, * rs6000-core.c, * section.c, * simple.c, * som.c, 1819 * som.h, * srec.c, * stabs.c, * syms.c, * targets.c, * tekhex.c, 1820 * verilog.c, * vms-alpha.c, * vms-lib.c, * vms-misc.c, * vms.h, 1821 * wasm-module.c, * xcofflink.c, * xcofflink.h, * xsym.c, 1822 * xsym.h: Replace bfd_boolean with bool, FALSE with false, and 1823 TRUE with true throughout. 1824 * bfd-in2.h: Regenerate. 1825 * libbfd.h: Regenerate. 1826 * libcoff.h: Regenerate. 1827 18282021-03-31 Alan Modra <amodra@gmail.com> 1829 1830 * bfd-in.h: Include stdbool.h. 1831 (bfd_boolean): Define as bool 1832 * bfd-in2.h: Regenerate. 1833 18342021-03-31 Alan Modra <amodra@gmail.com> 1835 1836 * .gitignore: Delete bfd_stdint.h entry. 1837 * Makefile.am (bfdinclude_HEADERS): Delete bfd_stdint.h. 1838 (BUILD_HFILES, LOCAL_H_DEPS): Likewise. 1839 * bfd-in.h: Include stdint.h in place of bfd_stdint.h. 1840 * configure.ac: Don't invoke GCC_HEADER_STDINT. 1841 * configure.com: Don't create bfd_stdint.h. 1842 * Makefile.in: Regenerate. 1843 * aclocal.m4: Regenerate. 1844 * bfd-in2.h: Regenerate. 1845 * config.in: Regenerate. 1846 * configure: Regenerate. 1847 * doc/Makefile.in: Regenerate. 1848 * po/BLD-POTFILES.in: Regenerate. 1849 18502021-03-31 Alan Modra <amodra@gmail.com> 1851 1852 * bfd-in.h: Include string.h. 1853 (LITMEMCPY, LITSTRCPY): Delete. 1854 * bfd-in2.h: Regenerate. 1855 18562021-03-30 Alan Modra <amodra@gmail.com> 1857 1858 * elflink.c (elf_link_add_object_symbols): Don't set h->indx 1859 unless is_elf_hash_table. 1860 18612021-03-29 Alan Modra <amodra@gmail.com> 1862 1863 * aoutx.h (aout_link_write_symbols): Don't cast boolean expression 1864 to bfd_boolean. 1865 * elf32-or1k.c (or1k_set_got_and_rela_sizes): Dont compare booleans 1866 against FALSE. 1867 * elf32-arc.c (name_for_global_symbol): Don't compare boolean to TRUE. 1868 (is_reloc_PC_relative): Don't use "boolean_condition ? TRUE : FALSE". 1869 (is_reloc_SDA_relative, is_reloc_for_GOT): Likewise. 1870 (is_reloc_for_PLT, is_reloc_for_TLS): Likewise. 1871 * elf32-arm.c (stm32l4xx_need_create_replacing_stub): Likewise. 1872 * elf32-nds32.c (insert_nds32_elf_blank): Likewise. 1873 * elf32-rx.c (rx_set_section_contents): Likewise. 1874 * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. 1875 * elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): Likewise. 1876 * mach-o.c (bfd_mach_o_read_command): Likewise. 1877 * targets.c (bfd_get_target_info): Likewise. 1878 18792021-03-29 Alan Modra <amodra@gmail.com> 1880 1881 * coff-z80.c (z80_is_local_label_name): Return bfd_boolean. 1882 * elf32-z80.c (z80_is_local_label_name): Likewise. 1883 * elf32-spu.c (spu_elf_modify_headers): Likewise. 1884 * elf32-nds32.h (struct elf_nds32_link_hash_table <hyper_relax>): 1885 Change type to int. 1886 * vms-lib.c (_bfd_vms_lib_write_archive_contents): Correct test 1887 for error return from vms_write_data_block. 1888 18892021-03-29 Alan Modra <amodra@gmail.com> 1890 1891 * elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int. 1892 * elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise. 1893 (elf64_ia64_local_dyn_sym_thunk): Likewise. 1894 * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise. 1895 * elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs), 1896 (elfNN_aarch64_finish_local_dynamic_symbol): Likewise. 1897 * elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise. 1898 (elfNN_ia64_local_dyn_sym_thunk): Likewise. 1899 * elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise. 1900 (riscv_pcrel_reloc_eq): Likewise. 1901 (riscv_elf_finish_local_dynamic_symbol): Likewise. 1902 * elfxx-sparc.c (allocate_local_dynrelocs): Likewise. 1903 (finish_local_dynamic_symbol): Likewise. 1904 * elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise. 1905 * elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise. 1906 (mips_elf_count_got_symbols): Change return type to bfd_boolean. 1907 19082021-03-29 Alan Modra <amodra@gmail.com> 1909 1910 * elflink.c (elf_link_output_symstrtab): Make flinfo parameter 1911 a void pointer. 1912 (bfd_elf_final_link): Delete out_sym_func typedef and don't cast 1913 elf_link_output_symstrtab when calling output_arch_syms and 1914 output_arch_local_syms. 1915 * elf-bfd.h (struct elf_backend_data <elf_backend_output_arch_syms, 1916 elf_backend_output_arch_local_syms>): Change return type of func 1917 arg to match elf_link_output_symstrtab. 1918 * elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Correct 1919 return type. 1920 * elf32-nds32.c (nds32_elf_output_symbol_hook): Correct return type. 1921 (nds32_elf_output_arch_syms): Correct func return type. 1922 19232021-03-29 Alan Modra <amodra@gmail.com> 1924 1925 * elf-m10200.c (mn10200_elf_relocate_section): Return int. 1926 * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 1927 * elf32-arc.c (elf_arc_relocate_section): Likewise. 1928 * elf32-arm.c (elf32_arm_relocate_section): Likewise. 1929 * elf32-avr.c (elf32_avr_relocate_section): Likewise. 1930 * elf32-bfin.c (bfin_relocate_section): Likewise. 1931 (bfinfdpic_relocate_section): Likewise. 1932 * elf32-cr16.c (elf32_cr16_relocate_section): Likewise. 1933 * elf32-cris.c (cris_elf_relocate_section): Likewise. 1934 * elf32-crx.c (elf32_crx_relocate_section): Likewise. 1935 * elf32-csky.c (csky_elf_relocate_section): Likewise. 1936 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. 1937 * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise. 1938 * elf32-fr30.c (fr30_elf_relocate_section): Likewise. 1939 * elf32-frv.c (elf32_frv_relocate_section): Likewise. 1940 * elf32-ft32.c (ft32_elf_relocate_section): Likewise. 1941 * elf32-h8300.c (elf32_h8_relocate_section): Likewise. 1942 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 1943 * elf32-i386.c (elf_i386_relocate_section): Likewise. 1944 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. 1945 * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise. 1946 * elf32-lm32.c (lm32_elf_relocate_section): Likewise. 1947 * elf32-m32c.c (m32c_elf_relocate_section): Likewise. 1948 * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 1949 * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise. 1950 * elf32-m68hc1x.h (elf32_m68hc11_relocate_section): Likewise. 1951 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 1952 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 1953 * elf32-mep.c (mep_elf_relocate_section): Likewise. 1954 * elf32-metag.c (elf_metag_relocate_section): Likewise. 1955 * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise. 1956 * elf32-moxie.c (moxie_elf_relocate_section): Likewise. 1957 * elf32-msp430.c (elf32_msp430_relocate_section): Likewise. 1958 * elf32-mt.c (mt_elf_relocate_section): Likewise. 1959 * elf32-nds32.c (nds32_elf_relocate_section): Likewise. 1960 * elf32-nios2.c (nios2_elf32_relocate_section): Likewise. 1961 * elf32-or1k.c (or1k_elf_relocate_section): Likewise. 1962 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 1963 * elf32-pru.c (pru_elf32_relocate_section): Likewise. 1964 * elf32-rl78.c (rl78_elf_relocate_section): Likewise. 1965 * elf32-rx.c (rx_elf_relocate_section): Likewise. 1966 * elf32-s390.c (elf_s390_relocate_section): Likewise. 1967 * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise. 1968 (_bfd_score_elf_relocate_section): Likewise. 1969 * elf32-score.h (s7_bfd_score_elf_relocate_section): Likewise. 1970 * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. 1971 * elf32-sh.c (sh_elf_relocate_section): Likewise. 1972 * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise. 1973 * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. 1974 * elf32-v850.c (v850_elf_relocate_section): Likewise. 1975 * elf32-vax.c (elf_vax_relocate_section): Likewise. 1976 * elf32-visium.c (visium_elf_relocate_section): Likewise. 1977 * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise. 1978 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise. 1979 * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. 1980 * elf32-z80.c (z80_elf_relocate_section): Likewise. 1981 * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise. 1982 (elf64_alpha_relocate_section): Likewise. 1983 * elf64-bpf.c (bpf_elf_relocate_section): Likewise. 1984 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise. 1985 * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise. 1986 * elf64-mmix.c (mmix_elf_relocate_section): Likewise. 1987 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 1988 * elf64-s390.c (elf_s390_relocate_section): Likewise. 1989 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 1990 * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise. 1991 * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise. 1992 * elfnn-riscv.c (riscv_elf_relocate_section): Likewise. 1993 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise. 1994 * elfxx-mips.h (_bfd_mips_elf_relocate_section): Likewise. 1995 * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. 1996 * elfxx-sparc.h (_bfd_sparc_elf_relocate_section): Likewise. 1997 * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. 1998 * elfxx-tilegx.h (tilegx_elf_relocate_section): Likewise. 1999 20002021-03-26 Keith Seitz <keiths@redhat.com> 2001 2002 * elfcore.h (_bfd_elf_core_find_build_id): Seek file 2003 offset of program headers after calling elf_read_notes. 2004 20052021-03-23 Jan Beulich <jbeulich@suse.com> 2006 2007 * dwarf2.c (read_indexed_string): Rename index to idx. 2008 20092021-03-22 Martin Liska <mliska@suse.cz> 2010 2011 * bfd-in.h (startswith): Add startswith function. 2012 (CONST_STRNEQ): Remove. 2013 * bfd-in2.h (startswith): Regenerate with make headers. 2014 * archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith. 2015 (_bfd_slurp_extended_name_table): Likewise. 2016 * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise. 2017 * bfd.c (bfd_get_sign_extend_vma): Likewise. 2018 (bfd_convert_section_size): Likewise. 2019 (bfd_convert_section_contents): Likewise. 2020 * coff-stgo32.c (go32exe_create_stub): Likewise. 2021 (go32exe_check_format): Likewise. 2022 * coffcode.h (styp_to_sec_flags): Likewise. 2023 (GNU_DEBUGALTLINK): Likewise. 2024 * coffgen.c (_bfd_coff_section_already_linked): Likewise. 2025 (coff_gc_sweep): Likewise. 2026 (bfd_coff_gc_sections): Likewise. 2027 * cofflink.c (coff_link_add_symbols): Likewise. 2028 (process_embedded_commands): Likewise. 2029 * compress.c (bfd_is_section_compressed_with_header): Likewise. 2030 (bfd_init_section_decompress_status): Likewise. 2031 * dwarf2.c (find_debug_info): Likewise. 2032 (place_sections): Likewise. 2033 * ecoff.c (_bfd_ecoff_slurp_armap): Likewise. 2034 * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise. 2035 * elf.c (_bfd_elf_make_section_from_shdr): Likewise. 2036 (assign_section_numbers): Likewise. 2037 (elfcore_grok_win32pstatus): Likewise. 2038 * elf32-arm.c (cmse_scan): Likewise. 2039 (elf32_arm_gc_mark_extra_sections): Likewise. 2040 (elf32_arm_size_dynamic_sections): Likewise. 2041 (is_arm_elf_unwind_section_name): Likewise. 2042 * elf32-bfin.c (bfin_size_dynamic_sections): Likewise. 2043 * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise. 2044 * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise. 2045 * elf32-csky.c (csky_elf_size_dynamic_sections): Likewise. 2046 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise. 2047 * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise. 2048 * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise. 2049 * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise. 2050 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. 2051 * elf32-metag.c (elf_metag_size_dynamic_sections): Likewise. 2052 * elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise. 2053 * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise. 2054 * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise. 2055 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. 2056 * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise. 2057 * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise. 2058 * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise. 2059 * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise. 2060 * elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise. 2061 (elf32_tic6x_size_dynamic_sections): Likewise. 2062 * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise. 2063 * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise. 2064 (xtensa_is_insntable_section): Likewise. 2065 (xtensa_is_littable_section): Likewise. 2066 (xtensa_is_proptable_section): Likewise. 2067 (xtensa_property_section_name): Likewise. 2068 (xtensa_callback_required_dependence): Likewise. 2069 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. 2070 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. 2071 * elf64-ia64-vms.c (is_unwind_section_name): Likewise. 2072 (get_reloc_section): Likewise. 2073 (elf64_ia64_size_dynamic_sections): Likewise. 2074 (elf64_ia64_object_p): Likewise. 2075 * elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise. 2076 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise. 2077 * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise. 2078 * elflink.c (elf_link_add_object_symbols): Likewise. 2079 (_bfd_elf_gc_mark_extra_sections): Likewise. 2080 (bfd_elf_parse_eh_frame_entries): Likewise. 2081 (_bfd_elf_section_already_linked): Likewise. 2082 * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise. 2083 * elfnn-ia64.c (is_unwind_section_name): Likewise. 2084 (elfNN_ia64_size_dynamic_sections): Likewise. 2085 (elfNN_ia64_object_p): Likewise. 2086 * elfxx-mips.c (FN_STUB_P): Likewise. 2087 (CALL_STUB_P): Likewise. 2088 (CALL_FP_STUB_P): Likewise. 2089 (_bfd_mips_elf_section_from_shdr): Likewise. 2090 (_bfd_mips_elf_fake_sections): Likewise. 2091 (_bfd_mips_elf_size_dynamic_sections): Likewise. 2092 (_bfd_mips_final_write_processing): Likewise. 2093 (_bfd_mips_elf_final_link): Likewise. 2094 * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise. 2095 * elfxx-x86.c (elf_i386_is_reloc_section): Likewise. 2096 (elf_x86_64_is_reloc_section): Likewise. 2097 * hpux-core.c (thread_section_p): Likewise. 2098 * libcoff.h (bfd_pei_p): Likewise. 2099 * linker.c (REAL): Likewise. 2100 (unwrap_hash_lookup): Likewise. 2101 (_bfd_generic_link_add_one_symbol): Likewise. 2102 * mmo.c (mmo_internal_write_section): Likewise. 2103 * osf-core.c (osf_core_core_file_p): Likewise. 2104 * pef.c (bfd_pef_print_symbol): Likewise. 2105 * pei-x86_64.c (pex64_print_all_pdata_sections): Likewise. 2106 * som.c (som_slurp_symbol_table): Likewise. 2107 (som_slurp_armap): Likewise. 2108 * wasm-module.c (wasm_compute_custom_section_file_position): Likewise. 2109 21102021-03-22 Jan Beulich <jbeulich@suse.com> 2111 2112 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing 2113 language translation wrapping to _bfd_error_handler() 2114 invocations. 2115 21162021-03-21 Alan Modra <amodra@gmail.com> 2117 2118 * bfd-in.h (startswith): New inline. 2119 (CONST_STRNEQ): Use startswith. 2120 * bfd-in2.h: Regenerate. 2121 21222021-03-20 Alan Modra <amodra@gmail.com> 2123 2124 PR 27590 2125 * elf.c (_bfd_elf_make_section_from_shdr): Remove SHF_EXCLUDE 2126 test for .gnu.debuglto*. 2127 21282021-03-18 H.J. Lu <hongjiu.lu@intel.com> 2129 2130 PR ld/27590 2131 * elf.c (_bfd_elf_make_section_from_shdr): Treat 2132 .gnu.debuglto_.debug_ section as debugging section unless it is 2133 marked with SHF_EXCLUDE. 2134 * elflink.c (elf_create_symbuf): Revert commit 994b2513281. 2135 (bfd_elf_match_symbols_in_sections): Ignore section symbols when 2136 matching non-debugging sections or linkonce section with comdat 2137 section. 2138 21392021-03-18 H.J. Lu <hongjiu.lu@intel.com> 2140 2141 PR ld/27587 2142 * dwarf2.c (read_attribute_value): Check version >= 3 for 2143 DW_FORM_ref_addr. 2144 21452021-03-16 Nick Clifton <nickc@redhat.com> 2146 2147 * peXXigen.c (_bfd_XXi_swap_aux_out): Avoid potential buffer 2148 overrun by using sizeof of the destination x_fname field as the 2149 limit for a memcpy. 2150 21512021-03-16 Kuan-Lin Chen <kuanlinchentw@gmail.com> 2152 2153 * elfxx-riscv.c (riscv_std_z_ext_strtab): Add zba, zbb and zbc. 2154 21552021-03-12 Clément Chigot <clement.chigot@atos.net> 2156 2157 * reloc.c (BFD_RELOC_PPC_TLS_LE, BFD_RELOC_PPC_TLS_IE, 2158 BFD_RELOC_PPC_TLS_M, BFD_RELOC_PPC_TLS_ML, BFD_RELOC_PPC64_TLS_GD, 2159 BFD_RELOC_PPC64_TLS_LD, BFD_RELOC_PPC64_TLS_LE, 2160 BFD_RELOC_PPC64_TLS_IE, BFD_RELOC_PPC64_TLS_M, 2161 BFD_RELOC_PPC64_TLS_ML): New relocations. 2162 * bfd-in2.h: Regenerate. 2163 * libbfd.h: Regenerate. 2164 * coff-rs6000.c (xcoff_calculate_relocation): Call 2165 xcoff_reloc_type_tls for TLS relocations. 2166 (xcoff_howto_table): Implement TLS relocations. 2167 (_bfd_xcoff_reloc_type_lookup): Add cases TLS relocations. 2168 (xcoff_reloc_type_tls): New function. 2169 * coff64-rs6000.c (xcoff_calculate_relocation): Likewise. 2170 (xcoff_howto_table): Likewise. 2171 (_bfd_xcoff_reloc_type_lookup): Likewise. 2172 * coffcode.h (sec_to_styp_flags): Handle TLS sections. 2173 (styp_to_sec_flags): Likewise. 2174 (coff_compute_section_file_positions): Avoid file offset 2175 optimisation for .data when the previous section is .tdata. 2176 (coff_write_object_contents): Handle TLS sections. 2177 * coffswap.h (coff_swap_aouthdr_out): Add support for 2178 new fields in aouthdr. 2179 * libxcoff.h (xcoff_reloc_type_tls): Add prototype. 2180 * xcofflink.c (xcoff_link_add_symbols): Handle XMC_UL. 2181 (xcoff_need_ldrel_p): Add cases for TLS relocations. 2182 (xcoff_create_ldrel): Add l_symndx for TLS sections. 2183 21842021-03-12 Clément Chigot <clement.chigot@atos.net> 2185 2186 * reloc.c (BFD_RELOC_PPC_TOC16_HI, BFD_RELOC_PPC_TOC16_LO): 2187 New relocations. 2188 * bfd-in2.h: Regenerate. 2189 * libbfd.h: Regenerate. 2190 * coff-rs6000.c (xcoff_calculate_relocation): Call 2191 xcoff_reloc_type_toc for R_TOCU and R_TOCL. 2192 (xcoff_howto_table): Remove src_mask for TOC relocations. 2193 Add R_TOCU and R_TOCL howtos. 2194 (_bfd_xcoff_reloc_type_lookup): Add cases for 2195 BFD_RELOC_PPC_TOC16_HI and BFD_RELOC_PPC_TOC16_LO. 2196 (xcoff_reloc_type_toc): Compute the whole offset. 2197 Implement R_TOCU and R_TOCL. 2198 * coff64-rs6000.c (xcoff64_calculate_relocation): 2199 Likewise. 2200 (xcoff64_howto_table): Likewise. 2201 (xcoff64_reloc_type_lookup): Likewise. 2202 22032021-03-12 Clément Chigot <clement.chigot@atos.net> 2204 2205 * coff-rs6000.c (xcoff_calculate_relocation): Correct and 2206 add new relocations. 2207 (xcoff_howto_table): Likewise. 2208 (xcoff_rtype2howto): Increase r_type maximum value. 2209 (xcoff_ppc_relocate_section): Reuse predefined HOWTOs instead 2210 of create a new one from scratch. Enable only some relocations 2211 to have a changing r_size. 2212 * coff64-rs6000.c (xcoff64_calculate_relocation): Likewise. 2213 (xcoff64_howto_table): Likewise. 2214 (xcoff64_rtype2howto): Likewise. 2215 (xcoff64_ppc_relocate_section): Likewise. 2216 * libxcoff.h (XCOFF_MAX_CALCULATE_RELOCATION): Fix value. 2217 22182021-03-12 Clément Chigot <clement.chigot@atos.net> 2219 2220 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Move. 2221 22222021-03-12 Clément Chigot <clement.chigot@atos.net> 2223 2224 * coff64-rs6000.c (xcoff64_write_object_contents): Remove. 2225 * coffcode.h (coff_write_object_contents): Add bfd_mach_ppc_620 2226 support for o_cputype field. Avoid creating an empty a.out header 2227 for XCOFF64. 2228 22292021-03-12 Clément Chigot <clement.chigot@atos.net> 2230 2231 * coff64-rs6000.c (xcoff64_create_csect_from_smclas): Add 2232 missing smclass. 2233 22342021-03-11 Nelson Chu <nelson.chu@sifive.com> 2235 2236 * elfnn-riscv.c (riscv_elf_link_hash_table): New boolean 2237 restart_relax, used to check if we need to run the whole 2238 relaxations from relax pass 0 to 2 again. 2239 (riscv_elf_link_hash_table_create): Init restart_relax to FALSE. 2240 (_bfd_riscv_relax_align): Remove obsolete sec_flg0 set. 2241 (_bfd_riscv_relax_delete): Set again to TRUE if we do delete the code. 2242 (bfd_elfNN_riscv_restart_relax_sections): New function. Called by 2243 after_allocation to check if we need to run the whole relaxations again. 2244 (_bfd_riscv_relax_section): We will only enter into the relax pass 3 2245 when the restart_relax is FALSE; At last set restart_relax to TRUE if 2246 again is TRUE, too. 2247 * elfxx-riscv.h (bfd_elf32_riscv_restart_relax_sections): Declaration. 2248 (bfd_elf64_riscv_restart_relax_sections): Likewise. 2249 22502021-03-10 Jan Beulich <jbeulich@suse.com> 2251 2252 * cofflink.c (_bfd_coff_write_global_sym): Range-check symbol 2253 offset. 2254 22552021-03-10 Alan Modra <amodra@gmail.com> 2256 Jan Beulich <jbeulich@suse.com> 2257 2258 * elf.c (bfd_elf_generic_reloc): Make references between debug 2259 sections use section relative values. 2260 22612021-03-09 Jan Beulich <jbeulich@suse.com> 2262 2263 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Diagnose out of range RVA. 2264 22652021-03-05 H.J. Lu <hongjiu.lu@intel.com> 2266 2267 PR ld/27425 2268 PR ld/27432 2269 * bfd.c (_bfd_get_link_info): New function. 2270 * elf-bfd.h (output_elf_obj_tdata): Add link_info. 2271 (elf_link_info): New. 2272 * libbfd-in.h (_bfd_get_link_info): New prototype. 2273 * coff-x86_64.c (coff_amd64_reloc): Also subtract __ImageBase for 2274 R_AMD64_IMAGEBASE when generating x86-64 ELF executable. 2275 * pe-x86_64.c: Include "coff/internal.h" and "libcoff.h". 2276 (pex64_link_add_symbols): New function. 2277 (coff_bfd_link_add_symbols): New macro. 2278 * libbfd.h: Regenerated. 2279 22802021-03-05 Craig Blackmore <craig.blackmore@embecosm.com> 2281 Andrew Burgess <andrew.burgess@embecosm.com> 2282 2283 * elf-bfd.h (elfcore_write_riscv_csr): Declare. 2284 * elf.c (elfcore_grok_riscv_csr): New function. 2285 (elfcore_grok_note): Handle NT_RISCV_CSR. 2286 (elfcore_write_riscv_csr): New function. 2287 (elfcore_write_register_note): Handle '.reg-riscv-csr'. 2288 22892021-03-05 Craig Blackmore <craig.blackmore@embecosm.com> 2290 Andrew Burgess <andrew.burgess@embecosm.com> 2291 2292 * elfnn-riscv.c (PRPSINFO_PR_FNAME_LENGTH): Define. 2293 (PRPSINFO_PR_PSARGS_LENGTH): Define. 2294 (riscv_write_core_note): New function. 2295 (riscv_elf_grok_psinfo): Make use of two new length defines. 2296 (elf_backend_write_core_note): Define. 2297 22982021-03-05 Craig Blackmore <craig.blackmore@embecosm.com> 2299 Andrew Burgess <andrew.burgess@embecosm.com> 2300 2301 * elf-bfd.h (elfcore_write_gdb_tdesc): Declare new function. 2302 * elf.c (elfcore_grok_gdb_tdesc): New function. 2303 (elfcore_grok_note): Handle NT_GDB_TDESC. 2304 (elfcore_write_gdb_tdesc): New function. 2305 (elfcore_write_register_note): Handle NT_GDB_TDESC. 2306 23072021-03-05 Nick Clifton <nickc@redhat.com> 2308 2309 PR 27521 2310 * dwarf2.c (is_str_attr): Add DW_FORM_strx* forms. 2311 (read_indexed_string): Placeholder function. 2312 (read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx* 2313 forms. 2314 23152021-03-05 Alan Modra <amodra@gmail.com> 2316 2317 * reloc.c (bfd_perform_relocation): Revert 2021-01-12 and 2318 2020-09-16 changes. 2319 * coff-x86_64.c (coff_amd64_reloc): Do more or less the same 2320 adjustments here instead. Separate pc-relative adjustments 2321 from symbol related adjustments. Tidy comments and formatting. 2322 23232021-03-04 Jan Beulich <jbeulich@suse.com> 2324 2325 * coffcode.h (sec_to_styp_flags): Don't set IMAGE_SCN_LNK_* in 2326 final PE images. 2327 23282021-03-04 Alan Modra <amodra@gmail.com> 2329 2330 * rs6000-core.c (rs6000coff_core_p): Correct prototype. 2331 23322021-03-03 Alan Modra <amodra@gmail.com> 2333 2334 PR 27500 2335 * elflink.c (_bfd_elf_gc_mark_rsec): Do special start/stop 2336 processing not when start/stop symbol section is unmarked but 2337 on first time a start/stop symbol is processed. 2338 23392021-03-03 Alan Modra <amodra@gmail.com> 2340 2341 * reloc.c: Include x86_64.h rather than internal.h. 2342 23432021-03-02 Nick Clifton <nickc@redhat.com> 2344 2345 PR 27484 2346 * dwarf2.c (scan_unit_for_symbols): Scan twice, once to accumulate 2347 function and variable tags and a second time to resolve their 2348 attributes. 2349 23502021-03-02 Nick Alcock <nick.alcock@oracle.com> 2351 2352 * elf-strtab.c (_bfd_elf_strtab_str): Skip strings with zero refcount. 2353 23542021-03-02 Alan Modra <amodra@gmail.com> 2355 2356 PR 27451 2357 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore synthesized 2358 linker defined start/stop symbols when start_stop_gc. 2359 23602021-03-02 Alan Modra <amodra@gmail.com> 2361 2362 * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimise got 2363 indirect to pc-relative or toc-relative for undefined symbols. 2364 23652021-03-01 Alan Modra <amodra@gmail.com> 2366 Fangrui Song <maskray@google.com> 2367 2368 * elflink.c (_bfd_elf_gc_mark_rsec): Ignore synthesized linker 2369 defined start/stop symbols when start_stop_gc. 2370 (bfd_elf_gc_mark_dynamic_ref_symbol): Likewise. 2371 (bfd_elf_define_start_stop): Don't modify ldscript_def syms. 2372 * linker.c (bfd_generic_define_start_stop): Likewise. 2373 23742021-02-25 Alan Modra <amodra@gmail.com> 2375 2376 PR 27441 2377 * elf-bfd.h (struct elf_link_hash_entry): Add ref_ir_nonweak. 2378 * elflink.c (elf_link_add_object_symbols): Set ref_ir_nonweak and 2379 use when deciding an as-needed library should be loaded instead 2380 of using the binding of the library definition. 2381 23822021-02-24 Alan Modra <amodra@gmail.com> 2383 2384 PR 27459 2385 * coff-stgo32.c (go32exe_check_format): Sanity check size of 2386 header to avoid a buffer overflow. 2387 23882021-02-22 Alan Modra <amodra@gmail.com> 2389 2390 * coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16. 2391 * coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise. 2392 23932021-02-19 Nelson Chu <nelson.chu@sifive.com> 2394 2395 PR 27158 2396 * elfnn-riscv.c (perform_relocation): Updated encoding macros. 2397 (_bfd_riscv_relax_call): Likewise. 2398 (_bfd_riscv_relax_lui): Likewise. 2399 * elfxx-riscv.c (howto_table): Likewise. 2400 24012021-02-18 Nelson Chu <nelson.chu@sifive.com> 2402 2403 * Makefile.am: Added cpu-riscv.h. 2404 * Makefile.in: Regenerated. 2405 * po/SRC-POTFILES.in: Regenerated. 2406 * cpu-riscv.h: Added to support spec versions controlling. 2407 Also added extern arrays and functions for cpu-riscv.c. 2408 (enum riscv_spec_class): Define all spec classes here uniformly. 2409 (struct riscv_spec): Added for all specs. 2410 (RISCV_GET_SPEC_CLASS): Added to reduce repeated code. 2411 (RISCV_GET_SPEC_NAME): Likewise. 2412 (RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class. 2413 (RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class. 2414 (RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name. 2415 * cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec. 2416 (riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS. 2417 (riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME. 2418 (riscv_priv_specs): Moved below. 2419 (riscv_get_priv_spec_class_from_numbers): Likewise, updated. 2420 (riscv_isa_specs): Moved from include/opcode/riscv.h. 2421 * elfnn-riscv.c: Included cpu-riscv.h. 2422 (riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec. 2423 * elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h. 2424 (RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h. 2425 * elfxx-riscv.h: Removed extern functions to cpu-riscv.h. 2426 24272021-02-17 Alan Modra <amodra@gmail.com> 2428 2429 * wasm-module.c: Guard include of limits.h. 2430 (CHAR_BIT): Provide backup define. 2431 (wasm_read_leb128): Use CHAR_BIT to size "result" in bits. 2432 Correct signed overflow checking. 2433 24342021-02-17 Nelson Chu <nelson.chu@sifive.com> 2435 2436 PR 27200 2437 * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay 2438 copying the elf flags from input BFD to output BFD, until we have 2439 checked if the input BFD has no code section or not. Also fix the 2440 problem that we only check the first section rather than the entire 2441 sections for input BFD. 2442 24432021-02-16 Alan Modra <amodra@gmail.com> 2444 2445 * libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift. 2446 (_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise. 2447 24482021-02-15 Jan Beulich <jbeulich@suse.com> 2449 2450 * doc/Makefile.am: Replace "cp -p" by "$(LN_S)". 2451 * doc/Makefile.in: Re-generate. 2452 24532021-02-15 Alan Modra <amodra@gmail.com> 2454 2455 * elf32-nds32.c (nds32_get_section_contents): Replace 2456 bfd_malloc_and_get_section with bfd_get_full_section_contents. 2457 (nds32_elf_relax_delete_blanks): Init contents. 2458 (nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise. 2459 24602021-02-15 Alan Modra <amodra@gmail.com> 2461 2462 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use 2463 bfd_get_full_section_contents. 2464 24652021-02-14 Alan Modra <amodra@gmail.com> 2466 2467 * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply 2468 all fixes to bfd_generic_get_relocated_section_contents since this 2469 function was split out. 2470 24712021-02-11 Alan Modra <amodra@gmail.com> 2472 2473 * config.bfd: Remove ia64 from obsolete list. 2474 24752021-02-11 Alan Modra <amodra@gmail.com> 2476 2477 PR ld/22269 2478 * elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234. 2479 24802021-02-11 Alan Modra <amodra@gmail.com> 2481 2482 PR 27294 2483 * elf32-avr.c (avr_elf32_load_records_from_section): Use 2484 bfd_malloc_and_get_section. Use bfd_byte* vars and remove then 2485 unnecessary casts. 2486 24872021-02-11 Alan Modra <amodra@gmail.com> 2488 2489 PR 27291 2490 * section.c (bfd_get_section_contents): Avoid possible overflow 2491 when range checking offset and count. 2492 (bfd_set_section_contents): Likewise. 2493 24942021-02-03 Nick Alcock <nick.alcock@oracle.com> 2495 2496 * configure.ac (SHARED_LIBADD): Remove explicit -lintl population in 2497 favour of LIBINTL. 2498 * configure: Regenerated. 2499 25002021-02-09 Alan Modra <amodra@gmail.com> 2501 2502 * config.bfd (arm*-*-symbianelf*): Move from obsolete to removed. 2503 * configure.ac: Delete symbian entries. 2504 * elf-bfd.h (enum elf_target_os): Delete is_symbian. 2505 * elf32-arm.c: Remove symbian support. Formatting. 2506 * targets.c: Delete symbian entries. 2507 * configure: Regenerate. 2508 25092021-02-04 H.J. Lu <hongjiu.lu@intel.com> 2510 2511 PR ld/19609 2512 * elf64-x86-64.c (elf_x86_64_relocate_section): Provide more 2513 info when failed to convert GOTPCREL relocation. 2514 25152021-02-04 Nelson Chu <nelson.chu@sifive.com> 2516 2517 * elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*. 2518 25192021-02-04 Alan Modra <amodra@gmail.com> 2520 2521 PR 27311 2522 * elflink.c (elf_link_add_object_symbols): Don't pull in as-needed 2523 libraries for IR references on pass over libraries after LTO 2524 recompilation. 2525 25262021-02-03 Alan Modra <amodra@gmail.com> 2527 2528 PR 27311 2529 * elflink.c (_bfd_elf_add_default_symbol): Revert last two changes. 2530 (elf_link_add_object_symbols): Here too. Don't pull in as-needed 2531 libraries when H is an indirect symbol after calling 2532 _bfd_elf_add_default_symbol. 2533 25342021-02-03 Alan Modra <amodra@gmail.com> 2535 2536 PR 27311 2537 * elflink.c (_bfd_elf_add_default_symbol): Clear override when 2538 undecorated symbol will have a different version. 2539 25402021-02-02 Alan Modra <amodra@gmail.com> 2541 2542 PR 27311 2543 * elflink.c (_bfd_elf_add_default_symbol): Add override parameter. 2544 Use when handling default versioned symbol. Rename existing 2545 override variable to nondef_override and use for non-default 2546 versioned symbol. 2547 (elf_link_add_object_symbols): Adjust call to suit. Don't 2548 pull in as-needed libraries when override is set. 2549 25502021-02-01 Emery Hemingway <ehmry@posteo.net> 2551 2552 * config.bfd: Add *-*-genode* as a target for AArch64 and x86. 2553 25542021-02-01 Egor Vishnyakov <lenvampir@yandex.ru> 2555 2556 PR 27254 2557 * elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of 2558 offset for the R_RL78_RH_SADDR relocation. 2559 25602021-01-29 Alan Modra <amodra@gmail.com> 2561 2562 PR 27271 2563 * elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault 2564 on symbols defined in absolute or other special sections. 2565 25662021-01-28 Alan Modra <amodra@gmail.com> 2567 2568 PR 27259 2569 * elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to 2570 prevent endless looping of linked-to sections. 2571 25722020-12-17 Mihails Strasuns <mihails.strasuns@intel.com> 2573 2574 * bfd-elf.h (elfcore_write_file_note): New function. 2575 * elf.c (elfcore_write_file_note): New function. 2576 25772021-01-26 Alan Modra <amodra@gmail.com> 2578 2579 * elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0]. 2580 25812021-01-24 H.J. Lu <hongjiu.lu@intel.com> 2582 2583 PR binutils/27231 2584 * dwarf2.c (read_rnglists): Ignore empty range when parsing line 2585 number tables. 2586 25872021-01-23 H.J. Lu <hongjiu.lu@intel.com> 2588 2589 PR binutils/27231 2590 * dwarf2.c (read_rnglists): Advance rngs_ptr after 2591 _bfd_safe_read_leb128 when parsing DW_RLE_offset_pair. 2592 25932021-01-20 Alan Modra <amodra@gmail.com> 2594 2595 * elf32-ppc.c: Delete outdated comment. 2596 (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define. 2597 * elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define. 2598 25992021-01-20 Alan Modra <amodra@gmail.com> 2600 2601 * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume 2602 section symbols are present. 2603 26042021-01-19 Alan Modra <amodra@gmail.com> 2605 2606 * elf64-ppc.c (elf_hash_entry): New inline function. Use 2607 throughout to replace casts. 2608 (branch_reloc_hash_match): Remove const from params. 2609 (use_local_plt): New function. 2610 (allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub), 2611 (build_global_entry_stubs_and_plt, ppc64_elf_relocate_section): 2612 Use use_local_plt. 2613 * elf32-ppc.c (use_local_plt): New function. 2614 (allocate_dynrelocs, ppc_elf_relocate_section), 2615 (write_global_sym_plt): Use use_local_plt. 2616 26172021-01-17 H.J. Lu <hongjiu.lu@intel.com> 2618 2619 PR ld/27193 2620 * elflink.c (elf_create_symbuf): Also ignore section symbols. 2621 26222021-01-16 H.J. Lu <hongjiu.lu@intel.com> 2623 2624 PR ld/23169 2625 * elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't 2626 check pointer_equality_needed. 2627 26282021-01-15 H.J. Lu <hongjiu.lu@intel.com> 2629 2630 * elf-linker-x86.h (elf_linker_x86_params): Add 2631 report_relative_reloc. 2632 * elf32-i386.c (elf_i386_relocate_section): Call 2633 _bfd_x86_elf_link_report_relative_reloc to report relative 2634 relocations for -z report-relative-reloc. 2635 (elf_i386_finish_dynamic_symbol): Likewse. 2636 * elf64-x86-64.c (elf_x86_64_relocate_section): Likewse. 2637 (elf_x86_64_finish_dynamic_symbol): Likewse. 2638 * elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New 2639 function. 2640 * elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New 2641 prototype. 2642 26432021-01-16 Alan Modra <amodra@gmail.com> 2644 2645 * compress.c (decompress_contents): Tidy inflateEnd result test. 2646 26472021-01-16 Alan Modra <amodra@gmail.com> 2648 2649 PR 26002 2650 * elflink.c (elf_link_output_extsym): Use version 1 in 2651 .gnu.version for undefined unversioned symbols. 2652 26532021-01-15 Nelson Chu <nelson.chu@sifive.com> 2654 2655 * elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that 2656 caused the by previous commit accidentally. 2657 26582021-01-15 Nelson Chu <nelson.chu@sifive.com> 2659 2660 * elfnn-riscv.c: Indent, labels and GNU coding standards tidy, 2661 also aligned the code. 2662 26632021-01-15 Nelson Chu <nelson.chu@sifive.com> 2664 2665 * elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages. 2666 26672021-01-15 Nelson Chu <nelson.chu@sifive.com> 2668 2669 * elfnn-riscv.c: Comments tidy and improvement. 2670 * elfxx-riscv.c: Likewise. 2671 * elfxx-riscv.h: Likewise. 2672 26732021-01-14 H.J. Lu <hongjiu.lu@intel.com> 2674 2675 PR ld/26688 2676 * elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC 2677 section for R_BFIN_FUNCDESC. 2678 26792021-01-14 Nick Clifton <nickc@redhat.com> 2680 2681 * elf.c (elfcore_grok_win32pstatus): Check for a note type of 0. 2682 26832021-01-13 Alan Modra <amodra@gmail.com> 2684 2685 * Makefile.in: Regenerate. 2686 * doc/Makefile.in: Regenerate. 2687 26882021-01-13 Alan Modra <amodra@gmail.com> 2689 2690 PR 27160 2691 * section.c (struct bfd_section): Remove pattern field. 2692 (BFD_FAKE_SECTION): Adjust to suit. 2693 * bfd-in2.h: Regenerate. 2694 * elflink.c (compare_link_order, elf_fixup_link_order): Delete. 2695 (bfd_elf_final_link): Don't call elf_fixup_link_order. 2696 26972021-01-12 H.J. Lu <hongjiu.lu@intel.com> 2698 2699 PR binutils/26792 2700 * configure.ac: Use GNU_MAKE_JOBSERVER. 2701 * aclocal.m4: Regenerated. 2702 * configure: Likewise. 2703 27042021-01-12 H.J. Lu <hongjiu.lu@intel.com> 2705 2706 PR ld/27171 2707 * reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and 2708 R_AMD64_DIR32 relocations for PE/x86-64 inputs. 2709 27102021-01-11 H.J. Lu <hongjiu.lu@intel.com> 2711 2712 PR ld/27173 2713 * configure: Regenerated. 2714 27152021-01-11 Nick Clifton <nickc@redhat.com> 2716 2717 * po/fr.po: Updated French translation. 2718 * po/pt.po: Updated Portuguese translation. 2719 * po/sr.po: Updated Serbian translation. 2720 * po/uk.po: Updated Ukranian translation. 2721 27222021-01-09 H.J. Lu <hongjiu.lu@intel.com> 2723 2724 * configure: Regenerated. 2725 27262021-01-09 H.J. Lu <hongjiu.lu@intel.com> 2727 2728 PR ld/27166 2729 * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle 2730 -z lam-u48 and -z lam-u57. 2731 27322021-01-09 Nick Clifton <nickc@redhat.com> 2733 2734 * version.m4: Change to 2.36.50. 2735 * configure: Regenerate. 2736 * po/bfd.pot: Regenerate. 2737 27382021-01-09 Nick Clifton <nickc@redhat.com> 2739 2740 * 2.36 release branch crated. 2741 27422021-01-08 H.J. Lu <hongjiu.lu@intel.com> 2743 2744 * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set 2745 LAM_U57 when setting LAM_U48. 2746 27472021-01-08 H.J. Lu <hongjiu.lu@intel.com> 2748 2749 PR ld/26256 2750 PR ld/27160 2751 * elflink.c (elf_fixup_link_order): Verify that fixing up 2752 SHF_LINK_ORDER doesn't increase the output section size. 2753 27542021-01-09 Alan Modra <amodra@gmail.com> 2755 2756 * configure: Regenerate. 2757 27582021-01-07 Samuel Thibault <samuel.thibault@gnu.org> 2759 2760 * configure: Regenerate. 2761 27622021-01-07 H.J. Lu <hongjiu.lu@intel.com> 2763 2764 PR 27109 2765 * aix386-core.c (core_aix386_vec): Initialize 2766 keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS. 2767 * aout-target.h (MY (vec)): Likewise. 2768 * binary.c (binary_vec): Likewise. 2769 * cisco-core.c (core_cisco_be_vec): Likewise. 2770 (core_cisco_le_vec): Likewise. 2771 * coff-alpha.c (alpha_ecoff_le_vec): Likewise. 2772 * coff-i386.c (TARGET_SYM): Likewise. 2773 (TARGET_SYM_BIG): Likewise. 2774 * coff-ia64.c (TARGET_SYM): Likewise. 2775 * coff-mips.c (mips_ecoff_le_vec): Likewise. 2776 (mips_ecoff_be_vec): Likewise. 2777 (mips_ecoff_bele_vec): Likewise. 2778 * coff-rs6000.c (rs6000_xcoff_vec): Likewise. 2779 (powerpc_xcoff_vec): Likewise. 2780 * coff-sh.c (sh_coff_small_vec): Likewise. 2781 (sh_coff_small_le_vec): Likewise. 2782 * coff-tic30.c (tic30_coff_vec): Likewise. 2783 * coff-tic54x.c (tic54x_coff0_vec): Likewise. 2784 (tic54x_coff0_beh_vec): Likewise. 2785 (tic54x_coff1_vec): Likewise. 2786 (tic54x_coff1_beh_vec): Likewise. 2787 (tic54x_coff2_vec): Likewise. 2788 (tic54x_coff2_beh_vec): Likewise. 2789 * coff-x86_64.c (TARGET_SYM): Likewise. 2790 (TARGET_SYM_BIG): Likewise. 2791 * coff64-rs6000.c (rs6000_xcoff64_vec): Likewise. 2792 (rs6000_xcoff64_aix_vec): Likewise. 2793 * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise. 2794 (CREATE_BIGHDR_COFF_TARGET_VEC): Likewise. 2795 (CREATE_LITTLE_COFF_TARGET_VEC): Likewise. 2796 * elfxx-target.h (TARGET_BIG_SYM): Likewise. 2797 (TARGET_LITTLE_SYM): Likewise. 2798 * hppabsd-core.c (core_hppabsd_vec): Likewise. 2799 * hpux-core.c (core_hpux_vec): Likewise. 2800 * i386msdos.c (i386_msdos_vec): Likewise. 2801 * ihex.c (ihex_vec): Likewise. 2802 * irix-core.c (core_irix_vec): Likewise. 2803 * mach-o-target.c (TARGET_NAME): Likewise. 2804 * mmo.c (mmix_mmo_vec): Likewise. 2805 * netbsd-core.c (core_netbsd_vec): Likewise. 2806 * osf-core.c (core_osf_vec): Likewise. 2807 * pdp11.c (MY (vec)): Likewise. 2808 * pef.c (pef_vec): Likewise. 2809 (pef_xlib_vec): Likewise. 2810 * plugin.c (plugin_vec): Likewise. 2811 * ppcboot.c (powerpc_boot_vec): Likewise. 2812 * ptrace-core.c (core_ptrace_vec): Likewise. 2813 * sco5-core.c (core_sco5_vec): Likewise. 2814 * som.c (hppa_som_vec): Likewise. 2815 * srec.c (srec_vec): Likewise. 2816 (symbolsrec_vec): Likewise. 2817 * tekhex.c (tekhex_vec): Likewise. 2818 * trad-core.c (core_trad_vec): Likewise. 2819 * verilog.c (verilog_vec): Likewise. 2820 * vms-alpha.c (alpha_vms_vec): Likewise. 2821 * vms-lib.c (alpha_vms_lib_txt_vec): Likewise. 2822 * wasm-module.c (wasm_vec): Likewise. 2823 * xsym.c (sym_vec): Likewise. 2824 * elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED 2825 isn't set. 2826 (elf_map_symbols): Don't include ignored section symbols. 2827 * elfcode.h (elf_slurp_symbol_table): Also set 2828 BSF_SECTION_SYM_USED on STT_SECTION symbols. 2829 * elflink.c (bfd_elf_final_link): Generated section symbols only 2830 when emitting relocations or reqired. 2831 * elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New. 2832 * syms.c (BSF_SECTION_SYM_USED): New. 2833 * targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New. 2834 (bfd_target): Add keep_unused_section_symbols. 2835 (bfd_keep_unused_section_symbols): New. 2836 * bfd-in2.h: Regenerated. 2837 28382021-01-07 Nick Clifton <nickc@redhat.com> 2839 2840 PR 25713 2841 * bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to 2842 absolute paths and check to see if they are longer than MAX_PATH. 2843 28442021-01-07 Philipp Tomsich <prt@gnu.org> 2845 2846 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause. 2847 28482021-01-07 Claire Xenia Wolf <claire@symbioticeda.com> 2849 Jim Wilson <jimw@sifive.com> 2850 Andrew Waterman <andrew@sifive.com> 2851 Maxim Blinov <maxim.blinov@embecosm.com> 2852 Kito Cheng <kito.cheng@sifive.com> 2853 Nelson Chu <nelson.chu@sifive.com> 2854 2855 * elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc. 2856 28572021-01-06 H.J. Lu <hongjiu.lu@intel.com> 2858 2859 * elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect. 2860 (bfinfdpic_check_relocs): Likewise. 2861 28622021-01-06 Alan Modra <amodra@gmail.com> 2863 2864 * elf32-score.c (s3_bfd_score_info_to_howto): Report an error 2865 on unknown r_type. 2866 * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise. 2867 28682021-01-06 Alan Modra <amodra@gmail.com> 2869 2870 * config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec. 2871 (sparc64-*-solaris2*): Add sparc_elf64_vec and 2872 sparc_elf32_vec. 2873 28742021-01-06 Marcus Comstedt <marcus@mc.pp.se> 2875 2876 * config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and 2877 riscvbe*-*-*. Also added riscv_elf[32|64]_be_vec. 2878 * configure.ac: Handle riscv_elf[32|64]_be_vec. 2879 * configure: Regenerate. 2880 * elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for 2881 riscv_is_insn_reloc. 2882 (riscv_get_insn): RISC-V instructions are always little endian, but 2883 bfd_get may be used for big-endian, so add new riscv_get_insn to handle 2884 the insturctions. 2885 (riscv_put_insn): Likewsie. 2886 (riscv_is_insn_reloc): Check if we are relocaing an instruction. 2887 (perform_relocation): Call riscv_is_insn_reloc to decide if we should 2888 use riscv_[get|put]_insn or bfd_[get|put]. 2889 (riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32 2890 or bfd_[get|put]l16 for code. 2891 (riscv_elf_relocate_section): Likewise. 2892 (riscv_elf_finish_dynamic_symbol): Likewise. 2893 (riscv_elf_finish_dynamic_sections): Likewise. 2894 (_bfd_riscv_relax_call): Likewise. 2895 (_bfd_riscv_relax_lui): Likewise. 2896 (_bfd_riscv_relax_align): Likewise. 2897 (_bfd_riscv_relax_pc): Likewise. 2898 (riscv_elf_object_p): Handled for big endian. 2899 (TARGET_BIG_SYM, TARGET_BIG_NAME): Defined. 2900 * targets.c: Add riscv_elf[32|64]_be_vec. 2901 (_bfd_target_vector): Likewise. 2902 29032021-01-05 Alan Modra <amodra@gmail.com> 2904 2905 * elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export 2906 for relocatable executable. 2907 29082021-01-05 Alan Modra <amodra@gmail.com> 2909 2910 * vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check. 2911 29122021-01-05 Nelson Chu <nelson.chu@sifive.com> 2913 2914 * elfnn-riscv.c (allocate_dynrelocs): When we are generating pde, 2915 make sure gp symbol is output as a dynamic symbol. 2916 29172021-01-04 H.J. Lu <hongjiu.lu@intel.com> 2918 2919 PR ld/26256 2920 * elflink.c (compare_link_order): Place unordered sections before 2921 ordered sections. 2922 (elf_fixup_link_order): Add a link info argument. Allow mixed 2923 ordered and unordered input sections for non-relocatable link. 2924 Sort the consecutive bfd_indirect_link_order sections with the 2925 same pattern. Change the offsets of the bfd_indirect_link_order 2926 sections only. 2927 (bfd_elf_final_link): Pass info to elf_fixup_link_order. 2928 * section.c (bfd_section): Add pattern. 2929 (BFD_FAKE_SECTION): Initialize pattern to NULL. 2930 * bfd-in2.h: Regenerated. 2931 29322021-01-04 Alexander Fedotov <alfedotov@gmail.com> 2933 2934 * elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value 2935 of private flags with 0x. 2936 * elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise. 2937 29382021-01-04 Alan Modra <amodra@gmail.com> 2939 2940 PR 26822 2941 * elflink.c (elf_link_input_bfd): Use the file base name in 2942 linker generated STT_FILE symbols. 2943 29442021-01-04 Nelson Chu <nelson.chu@sifive.com> 2945 2946 * elfxx-riscv.c (riscv_compare_subsets): Removed static. 2947 * elfxx-riscv.h: Add declaration. 2948 * elfnn-riscv.c (riscv_merge_multi_letter_ext): Use 2949 riscv_compare_subsets to check the orders. 2950 (riscv_skip_prefix): Removed. 2951 (riscv_prefix_cmp): Removed. 2952 29532021-01-04 Alan Modra <amodra@gmail.com> 2954 2955 PR 26741 2956 * elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after 2957 calculating subset version length. 2958 29592021-01-01 Nicolas Boulenguez <nicolas@debian.org> 2960 2961 * xcofflink.c: Correct spelling in comments. 2962 29632021-01-01 Alan Modra <amodra@gmail.com> 2964 2965 Update year range in copyright notice of all files. 2966 2967For older changes see ChangeLog-2020 2968 2969Copyright (C) 2021-2024 Free Software Foundation, Inc. 2970 2971Copying and distribution of this file, with or without modification, 2972are permitted in any medium without royalty provided the copyright 2973notice and this notice are preserved. 2974 2975Local Variables: 2976mode: change-log 2977left-margin: 8 2978fill-column: 74 2979version-control: never 2980End: 2981