X-Git-Url: http://drtracing.org/?a=blobdiff_plain;ds=sidebyside;f=binutils%2FChangeLog;h=7537fcbadb08ce09bf1f12f67af1618d8a67f0b4;hb=e4b7104b1e0c70613d0f553cb18d25c7343647d3;hp=b520cc96993830e7ef65f29ae4bbe5d1dc0f53c6;hpb=a15de1f5999228fa53c6c266e09499388f64869b;p=deliverable%2Fbinutils-gdb.git diff --git a/binutils/ChangeLog b/binutils/ChangeLog index b520cc9699..7537fcbadb 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,663 @@ +2020-06-22 Nick Clifton + + PR 26112 + * dwarf.c (display_debug_str_offsets): Add code to display the + contents of the .debug_str_offsets section. + (display_debug_macro): Add support for DW_MACRO_define_strx and + DW_MACRO_undef_strx. + +2020-06-22 Saagar Jha + + * od-macho.c: Dump linkedit data for new load commands. + +2020-06-19 Alan Modra + + * testsuite/config/default.exp (ld_elf_shared_opt): Don't set. + * testsuite/lib/binutils-common.exp (check_relro_support): New proc. + (run_dump_test): Use check_relro_support to decide whether to pass + extra ld option "-z norelro". + +2020-06-11 Alan Modra + + * readelf.c (process_mips_specific): Don't alloc memory for + Elf_Internal_Options. + +2020-06-11 Alan Modra + + * readelf.c (process_mips_specific): Assert size of internal + types match size of external types, and simplify allocation of + internal buffer. Catch possible integer overflow when sanity + checking option size. Don't assume options are a regular array. + Sanity check reginfo option against option size. Use PRI macros + when printing. + +2020-06-10 Ralf Habacker + + PR 26082 + * mclex.c (yylex): Reject lines that reach end-of-file without a + terminating newline character. + +2020-06-08 Nick Clifton + + PR 26093 + * doc/binutils.texi (strings): Fix typo. + +2020-06-08 Nick Clifton + + PR 26086 + * dwarf.c (process_debug_info): Check that there is space in the + debug_information array before filling in an entry. + +2020-06-06 Alan Modra + + * doc/binutils.texi (PowerPC -M option): Mention power10 and pwr10. + +2020-06-05 Joel Anderson + + PR 26082 + * mclex.c (yylex): Add test for an empty input stream. + +2020-06-04 Stephen Casner + + * testsuite/binutils-all/pr25662-pdp11.s: Alternate source file + for test using section pseudo-ops compatible with pdp11. + * testsuite/binutils-all/objcopy.exp: Select alternate source. + +2020-06-04 Jose E. Marchesi + + * objdump.c (disassemble_data): Set disasm_info.endian_code to + disasm_info.endian after the latter is initialized to the + endianness reported by BFD. + +2020-06-04 Alan Modra + + * testsuite/binutils-all/i386/i386.exp: Remove global directive + outside proc body. + * testsuite/binutils-all/x86-64/objects.exp: Likewise. + * testsuite/binutils-all/x86-64/x86-64.exp: Likewise. + +2020-06-03 Joel Anderson + + * windmc.h (struct mc_node): Add id_typecast field. + * mcparse.y (message): Initialise the id_typecast field. + * windmc.c (write_dbg): Use the id_typecast field as a parameter + when calling write_dbg_define. + (write_header): Likewise. + +2020-06-03 Alan Modra + + PR 26069 + * objcopy.c (copy_relocations_in_section): Free relpp on error. + Don't accidentally free isection->orelocation. + +2020-06-02 Alan Modra + + * testsuite/binutils-all/ar.exp (obj): Set up object file name + extension. Use throughout. Don't completely exclude non-ELF + alpha targets. Run long_filenames test for tic30. Exclude thin + archive tests for aix, ecoff and vms. + * estsuite/binutils-all/objdump.exp (obj): Set up object file name + extension. Use throughout. Don't exclude non-ELF alpha targets + from "bintest.a". + +2020-05-28 Max Filippov + + * MAINTAINERS (Xtensa): Add myself as maintainer. + +2020-05-23 Alan Modra + + * testsuite/binutils-all/ar.exp (many_files): New test. + +2020-05-21 Alan Modra + + * addr2line.c: Replace "if (x) free (x)" with "free (x)" throughout. + * dlltool.c: Likewise. + * elfcomm.c: Likewise. + * rddbg.c: Likewise. + * readelf.c: Likewise. + * stabs.c: Likewise. + * windmc.c: Likewise. + * windres.c: Likewise. + * wrstabs.c: Likewise. + +2020-05-21 Alan Modra + + * readelf.c (get_num_dynamic_syms): Bounds check mipsxlat array + access. + +2020-05-20 Nelson Chu + + * dwarf.c: Updated since DECLARE_CSR is changed. + +2020-05-19 H.J. Lu + + PR binutils/25809 + * readelf.c (process_program_headers): Warn if the PT_DYNAMIC + segment doesn't match the .dynamic section and checks are + enabled. + (struct filedata): Add dynamic_symtab_section and + dynamic_strtab_section fields. + (process_section_headers): Set dynamic_symtab_section to the + .dynsym section. Set dynamic_strtab_section to the .dynstr + section. + (process_dynamic_section): Warn if the .dynsym section doesn't + match DT_SYMTAB and DT_SYMENT or the .dynstr section doesn't + DT_STRTAB and DT_STRSZ. But only if checks are enabled. + +2020-05-19 Alan Modra + + * ar.c (map_over_members, get_pos_bfd, delete_members, move_members), + (replace_members): Use bfd_get_filename rather than accessing + bfd->filename directly. + * arsup.c (map_over_list, ar_delete, ar_replace, ar_extract): Likewise. + * binemul.c (do_ar_emul_append): Likewise. + * coffgrok.c (coff_grok): Likewise. + +2020-05-18 Stafford Horne + + * MAINTAINERS (OR1K): Add myself as maintainer. + +2020-05-07 Andrew Burgess + + * doc/binutils.texi: Mention 'entry address' in the set-start and + adjust-start options descriptions. + +2020-05-05 Nick Clifton + + * dwarf.c (do_checks): New global variable. + (display_formatted_table): Warn about an unexpected number of + columns in the table, if checks are enabled. Do not complain + about the lack of data following the number of entries in the + table if the table is empty. + (display_debug_lines_decoded): Only warn about an unexpected + number of columns in a table if checks are enabled. + * dwarf.h (do_checks): Add a prototype. + * elfcomm.c (error): Remove weak attribute. + (warn): Likewise. + * readelf.c (do_checks): Delete. + (warn): Delete. + (process_section_headers): Only warn about empty sections if + checks are enabled. + +2020-05-04 Fangrui Song + + * objcopy.c (copy_object): Allow empty section. + * testsuite/binutils-all/update-section.exp: Add test. + +2020-05-04 Nick Clifton + + PR 25917 + * dwarf.c (display_debug_lines_decoded): Warn if encountering a + supicious number of entries for DWARF-5 format directory and file + name tables. Do not display file name table header if the table + is empty. Do not allocate space for empty tables. + +2020-05-04 Alan Modra + + * readelf.c (process_nds32_specific): Check size of .nds32_e_flags + section. Don't assume endian of host matches nds32 target. Free + buffer. + +2020-05-01 Alan Modra + Haim Shimonovich + + * objdump.c (disassemble_bytes): Don't scan for zeros when + disassembling zeros. Translate "resuming at file offset" message. + Formatting. Replace some signed variables with unsigned. + +2020-04-30 Alex Coplan + + * testsuite/binutils-all/aarch64/in-order-all.d: Update to use new + disassembly. + * testsuite/binutils-all/aarch64/out-of-order-all.d: Likewise. + +2020-04-30 Nick Clifton + + * testsuite/lib/binutils-common.exp (check_pie_support): New + proc. + +2020-04-29 Andrew Burgess + + * dwarf.c (display_debug_ranges): Ignore duplicate entries in + range_entries for the same offset. + +2020-04-29 Nick Clifton + + * readelf.c (warn): New function - like elfcomm.c version but only + produces output if warnings are enabled. + (struct options): Add --lint and --enable-checks. + (usage): Add entry for --lint. + (parse_args): Handle -L. If checks are enabled but no dumps have + been selected then enable all dumps. + (process_section_headers): Replace long if-then-else sequence with + a switch. Add warning messages for empty SHT_REL, SHT_RELA and + SHT_PROGBITS sections. + (process_file): Do not complain if the file is an archive and lint + mode has been enabled. + * elfcomm.c (error): Make the function weak. + (warn): Likewise. + * NEWS: Mention the new feature. + * doc/binutils.texi: Document the new feature. + * dwarf.h (report_leb_status): Add file name and line number + parameters. Include them in the diagnostic output. + (READ_ULEB): Pass file and line number to report_leb_status. + (READ_SLEB): Likewise. + * dwarf.c (read_and_print_leb128): Pass file and line number to + report_leb_status. + * testsuite/binutils-all/readelf.exp: Add test of new feature. + * testsuite/binutils-all/zero-sec.s: New test source file. + * testsuite/binutils-all/zero-sec.r: Expected output from new + test. + +2020-04-29 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-04-26 Alan Modra + + * readelf.c (get_num_dynamic_syms): Check DT_MIPS_XHASH was + read before dereferencing, and gracefully return. Remove + gnu_hash_error variable. Free gnu hash arrays if number of + syms found is zero. + +2020-04-24 Alan Modra + + * readelf.c (get_num_dynamic_syms): Check for nbuckets and nchains + non-zero. + (process_dynamic_section): Call get_num_dynamic_syms once rather + than in segment loop. Break out of segment loop on a successful + load of dynamic symbols. Formatting. + (process_object): Return error status from process_dynamic_section. + +2020-04-23 Anton Kolesov + + * elf-bfd.h (elfcore_write_arc_v2): Add prototype. + * elf.c (elfcore_grok_arc_v2): New function. + (elfcore_grok_note): Call the new function to handle the corresponding + note. + (elfcore_write_arc_v2): New function. + (elfcore_write_register_note): Call the new function to handle the + corresponding pseudo-sections. + +2020-04-22 Max Filippov + + PR ld/25861 + * readelf.c (is_none_reloc): Recognize + BFD_RELOC_XTENSA_PDIFF{8,16,32} and + BFD_RELOC_XTENSA_NDIFF{8,16,32}. + +2020-04-22 Nick Clifton + + * MAINTAINERS: Remove Chris Faylor as the ix86 PE maintainer. + +2020-04-22 Alan Modra + + * readelf.c (archive_file_offset, archive_file_size, dynamic_addr), + (dynamic_size, dynamic_nent, dynamic_strings, dynamic_strings_length), + (num_dynamic_syms, nbuckets, nchains, buckets, chains), + (ngnubuckets, gnubuckets, gnuchains, mipsxlat, ngnuchains), + (gnusymidx, dynamic_symbols, dynamic_syminfo, dynamic_syminfo_offset), + (dynamic_syminfo_nent, program_interpreter, dynamic_info), + (dynamic_info_DT_GNU_HASH, dynamic_info_DT_MIPS_XHASH, version_info), + (dynamic_section, symtab_shndx_list, group_count, section_groups), + (section_headers_groups): Move to struct filedata. Update use + throughout file. + +2020-04-22 Alan Modra + + * readelf.c (struct dump_data): New, used.. + (cmdline): ..here, and.. + (struct filedata): ..here. Adjust all uses. + (request_dump_bynumber, request_dump, parse_args): Pass in a + struct dump_data* rather than Filedata*. Adjust callers. + (main): Don't set cmdline.file_name. + +2020-04-20 Alan Modra + + * readelf.c (process_symbol_table): Clear ngnuchains, ngnubuckets + and nbuckets. + +2020-04-20 Alan Modra + + * readelf.c (process_section_headers): Free dynamic symbols etc. + earlier. + +2020-04-20 Alan Modra + + * readelf.c (get_num_dynamic_syms): Formatting. Don't return + on error without freeing. + (process_dynamic_section): Don't recreate dynamic symbols from + dynamic tag info when the dynamic symbols have already been + read via section headers. + +2020-04-17 Fredrik Strupe + + * testsuite/binutils-all/arm/vdup-cond.d: New test for testing that + conditional VDUP instructions are disassembled correctly. + * testsuite/binutils-all/arm/vdup-cond.s: New file used by + vdup-cond.d. + * testsuite/binutils-all/arm/vdup-thumb.d: New test for testing + that VDUP instructions (which are conditional in A32) can be + disassembled in thumb mode. + * testsuite/binutils-all/arm/vdup-cond.s: New file used by + vdup-thumb.d. + +2020-04-17 Alan Modra + + PR 25840 + * debug.c (debug_class_type_samep): Don't segfault on NULL type. + +2020-04-16 Alan Modra + + * doc/binutils.texi: Mention --no-show-raw-insn in objdump + --no-addresses description. + +2020-04-15 Alan Modra + + * objdump.c (no_addresses): New static var. + (usage): Print help for --no-addresses. + (long_options): Add --no-addresses entry. + (objdump_print_addr_with_sym, objdump_print_addr): Omit symbol address. + (disassemble_bytes): Don't print current line address, or reloc + address. + * doc/binutils.texi: Document objdump --no-addresses. + +2020-04-15 Alan Modra + + PR 25822 + * readelf.c (get_num_dynamic_syms): Don't set num_of_syms when + reading buckets or chains fails. + +2020-04-15 Alan Modra + + * readelf.c (process_symbol_table): Zero gnubuckets, gnuchains + etc. after freeing. + +2020-04-15 Alan Modra + + * readelf.c (get_group_flags): Translate text. + (get_file_type, get_symbol_binding, get_symbol_type), + (get_ppc64_symbol_other, get_symbol_other): Increase size of buffer. + +2020-04-15 Alan Modra + + PR 25821 + * readelf.c (get_num_dynamic_syms): Typo fix. + +2020-04-14 Alan Modra + + * readelf.c (process_mips_specific): Free eopt and iopt. Avoid + possibility of overflow when checking number of conflicts. + +2020-04-14 H.J. Lu + + PR binutils/25707 + * readelf.c (nbuckets): New. + (nchains): Likewise. + (buckets): Likewise. + (chains): Likewise. + (ngnubuckets): Likewise. + (gnubuckets): Likewise. + (gnuchains): Likewise. + (mipsxlat): Likewise. + (ngnuchains): Likewise. + (gnusymidx): Likewise. + (VALID_SYMBOL_NAME): Likewise. + (VALID_DYNAMIC_NAME): Use it. + (get_dynamic_data): Moved before process_dynamic_section. + (get_num_dynamic_syms): New function. + (process_dynamic_section): Use DT_SYMTAB, DT_SYMENT, DT_HASH, + DT_GNU_HASH and DT_MIPS_XHASH to reconstruct dynamic symbol + table. Use DT_STRTAB and DT_STRSZ to reconstruct dynamic string + table. + (get_symbol_index_type): Don't print "bad section index" when + there is no section header. + (print_dynamic_symbol): Rewrite. + (process_symbol_table): Call print_dynamic_symbol to dump dynamic + symbol table. + +2020-04-02 Rainer Orth + + * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Don't + enable on *-*-solaris*. + +2020-03-30 Nick Clifton + + PR binutils/25662 + * objcopy.c (copy_object): When copying PE format files set the + timestamp field in the pe_data structure if the preserve_dates + flag is set. + * testsuite/binutils-all/objcopy.exp (objcopy_test) Use + --preserve-dates in place of the -p option, in order to make its + effect more obvious. + +2020-03-28 Alan Modra + + * testsuite/binutils-all/objcopy.exp (objcopy_test): Only + clear_xfail hppa*-*-*elf*. Revert mips xfails. + +2020-03-28 Alan Modra + + * testsuite/binutils-all/objcopy.exp (objcopy_test): Move xfails + from here to calls. Remove "m8*-*-*" entry. Don't xfail tic54x + but do xfail spu, mipstx39 and mips-sgi-irix for the executable + test. Pass "-p" to objcopy for the executable test. + +2020-03-27 Jozef Lawrynowicz + + PR binutils/25662 + * testsuite/binutils-all/objcopy.exp (objcopy_test): Add argument to + specify whether an object file or executable should be built and tested. + Change test names to report whether an object file or executable is + being tested. + * testsuite/binutils-all/pr25662.ld: New test. + * testsuite/binutils-all/pr25662.s: New test. + +2020-03-27 Alan Modra + + * readelf.c (process_archive): Don't double free qualified_name. + Don't break out of loop with "negative" archive_file_size, just + set file offset to max. + +2020-03-25 Alan Modra + + * readelf.c (process_archive): Prevent endless loop. + +2020-03-24 H.J. Lu + + PR binutils/25708 + * nm.c (print_symname): Replace _bfd_elf_get_symbol_version_name + with bfd_get_symbol_version_string. + (print_symbo): Pass TRUE to bfd_get_symbol_version_string. + * objdump.c (objdump_print_symname): Likewise. + +2020-03-24 H.J. Lu + + PR binutils/25708 + * nm.c (SYM_NAME): Removed. + (print_symname): Add a pointer to struct extended_symbol_info + argument. Call _bfd_elf_get_symbol_version_name to get symbol + version. + (print_symdef_entry): Pass NULL to print_symname. + (print_symbol_info_bsd): Update call to print_symname. + (print_symbol_info_sysv): Likewise. + (print_symbol_info_posix): Likewise. + +2020-03-24 Alan Modra + + * readelf.c (process_mips_specific): Free iconf on error path. + +2020-03-23 Nick Clifton + + PR 25714 + * wrstabs.c (stab_pop_type): Replace assertion with error return. + * write_stabs_in_sections_debugging_info: Likewise. + * stab_enum_type: Likewise. + * stab_modify_type: Likewise. + * stab_struct_field: Likewise. + * stab_end_struct_type: Likewise. + * stab_start_class_type: Likewise. + * stab_class_static_member: Likewise. + * stab_class_baseclass: Likewise. + * stab_class_start_method: Likewise. + * stab_class_method_var: Likewise. + * stab_class_end_method: Likewise. + * stab_end_class_type: Likewise. + * stab_typedef_type: Likewise. + * stab_start_function: Likewise. + * stab_end_block: Likewise. + * stab_lineno: Likewise. + +2020-03-20 Nick Clifton + + * readelf.c (get_compression_header): Add ATTRIBUTE_WARN_UNUSED_RESULT. + (process_section_headers): Check the return value from + get_compression_header. + (dump_section_as_strings): Likewise. + (dump_section_as_bytes): Likewise. + (load_specific_debug_section): Likewise. + +2020-03-20 H.J. Lu + + * ar.c (main): Update bfd_plugin_set_program_name call. + * nm.c (main): Likewise. + +2020-03-19 Nick Clifton + + PR 25676 + * testsuite/binutils-all/dw4.s: New test source file. + * testsuite/binutils-all/nm.exp: Run the new test. + +2020-03-19 H.J. Lu + + * readelf.c (process_symbol_table): Use unsigned long for si. + +2020-03-19 Alan Modra + + * elfcomm.c: Don't include bfd.h or bucomm.h. + (program_name): Declare. + (process_archive_index_and_symbols): Replace bfd_boolean with int, + and substitute FALSE and TRUE. + (setup_archive, setup_nested_archive): Likewise. + * elfcomm.h: Likewise. + +2020-03-19 Alan Modra + + * readelf.c (process_archive): Always return via path freeing + memory. Formatting. + +2020-03-19 Alan Modra + + * readelf.c (process_netbsd_elf_note): Validate descsz before + accessing descdata. Formatting. + +2020-03-19 Alan Modra + + * elfcomm.c (setup_archive): Make file_size an off_t. Comment. + * elfcomm.h (setup_archive): Update prototype. + +2020-03-16 Alan Modra + + * readelf.c (get_symbols): New function. + (process_relocs, ia64_process_unwind, hppa_process_unwind), + (arm_process_unwind, get_symbol_for_build_attribute): Use it. + +2020-03-16 Alan Modra + + * unwind-ia64.c (unw_decode_uleb128): Prevent overlarge shifts. + Detect shift overflows and check that terminating byte is found. + Print an error on a bad uleb128. + +2020-03-14 Alan Modra + + * readelf.c (process_file): Clean ba_cache. + +2020-03-14 Alan Modra + + * elfcomm.h (setup_archive): Update prototype. + * elfcomm.c (setup_archive): Add file_size parameter and sanity + check longnames_size. + (setup_nested_archive): Get file size and pass to setup_archive. + * elfedit.c (process_archive): Likewise. + * readelf.c (process_archive): Pass filedata->file_size to + setup_archive. + +2020-03-14 Alan Modra + + * readelf.c (dump_section_as_strings): Free memory on error exit. + (dump_section_as_bytes, process_notes_at): Likewise. + (get_build_id): Free enote. + +2020-03-13 Kamil Rytarowski + + * readelf.c (get_netbsd_elfcore_note_type): Add support for + NT_NETBSDCORE_LWPSTATUS notes. + +2020-03-13 Alan Modra + + * elfcomm.c (get_archive_member_name): Always return malloc'd + string or NULL. + * elfedit.c (process_archive): Tidy memory on all return paths. + * readelf.c (process_archive): Likewise. + (process_symbol_table): Likewise. + (ba_cache): New, replacing .. + (get_symbol_for_build_attribute): ..static vars here. Free + strtab and symtab before loading new ones. Reject symtab without + valid strtab in loop, breaking out of loop on valid symtab. + (process_file): Free ba_cache symtab and strtab here, resetting + ba_cache. + +2020-03-12 Alan Modra + + * readelf.c (process_section_headers): Don't just set + filedata->section_headers NULL, free it first. Similarly for + dynamic_symbols, dynamic_strings, dynamic_syminfo and + symtab_shndx_list. Zero associated counts too. + (process_object): Free symtab_shndx_list. + (process_file): Free various allocated filedata tables. + +2020-03-11 Nick Clifton + + PR 25611 + PR 25614 + * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and + li_segment_size fields. + * dwarf.c (read_debug_line_header): Record the address size and + segment selector size values (if present) in the lineinfo + structure. + (display_formatted_table): Warn if the format count is empty but + the table itself is not empty. + Display the format count and entry count at the start of the table + dump. + (display_debug_lines_raw): Display the address size and segement + selector size fields, if present. + * testsuite/binutils-all/dw5.W: Update expected output. + +2020-03-11 Alan Modra + + PR 25651 + * objcopy.c (copy_object): Test "gaps" not gap_fill_set or + pad_to_set on second block of code dealing with padding. + Replace "c" with "num_sec" and don't recalculate number of + sections on second block. Size arrays using sizeof (element) + rather than sizeof (element type). + +2020-03-10 Alan Modra + + * objdump.c (disassemble_section): Don't call qsort unless + sym count is at least two. + (disassemble_data): Don't call memcpy with NULL src. + +2020-03-09 Alan Modra + + PR 25645 + * readelf.c (dump_ia64_vms_dynamic_fixups): Pass size and nmemb + to get_data rather than multiplying. + (dump_ia64_vms_dynamic_relocs): Likewise. + (process_version_sections): Correct order of size and nmemb args + in get_data call. + (process_mips_specific): Likewise. + 2020-03-08 H.J. Lu * readelf.c (get_dynamic_data): Replace "memory chekers" with