2017-12-19 Nick Clifton PR 22587 * readelf.c (process_section_headers): Do not complain about an sh_info field of 0 in relocation sections of ET_EXEC or ET_DYN type executables. 2017-12-19 Alan Modra * testsuite/binutils-all/ar.exp (unique_symbol): Don't run AR if assembly fails. * testsuite/binutils-all/arc/objdump.exp (check_assembly): If objfile is empty, fail test. * testsuite/binutils-all/arm/objdump.exp: Don't return if assembly fails for a test, continue on to other tests. * testsuite/binutils-all/bfin/objdump.exp: Likewise. * testsuite/binutils-all/hppa/objdump.exp: Likewise. * testsuite/binutils-all/m68k/objdump.exp: Likewise. * testsuite/binutils-all/vax/objdump.exp: Likewise. * testsuite/binutils-all/size.exp: Likewise. * testsuite/binutils-all/nm.exp: Likewise. Move PR12753 test. * testsuite/binutils-all/objcopy.exp: Don't perror on assembly fail. * testsuite/binutils-all/objdump.exp: Report assembly fails. 2017-12-18 Nick Clifton PR 22532 * dwarf.c (read_and_display_attr_value): Add attributes that might use the DW_FORM_exprloc form, and if so, display the decoded location expression list. 2017-12-14 Alan Modra * testsuite/lib/utils-lib.exp (default_binutils_assemble_flags): Don't perror on assembler diagnostic output. * testsuite/binutils-all/nm.exp: Run unique symbol test on all ELF targets. Resolve as "unsupported" on assembly failure. 2017-12-11 Renlin Li * testsuite/binutils-all/aarch64/objdump.d: New. * testsuite/binutils-all/aarch64/objdump.s: New. 2017-12-08 Nick Clifton * objcopy.c (copy_relocations_in_section): Use the orelocations field of the input section, if it has been initialised. * testsuite/binutils-all/note-2-64.d: Skip test on Sparc64. 2017-12-06 Jim Wilson PR 22465 * objcopy.c (copy_section): New local extra. If isection->lma not exactly divisible by interleave, then bias from. Also adjust osection->lma if necessary. 2017-12-06 Alan Modra PR 22552 * readelf.c (process_file_header): Don't assume XINDEX case value for e_shstrndx is within bounds. (load_debug_section): Sanity test e_shstrndx before attempting to read .shstrtab. Wrap long lines. 2017-12-01 Oleksandr Pikozh * doc/binutils.texi: Add --strip-unneeded to objcopy synopsis. 2017-11-30 Nick Clifton PR 22510 * readelf.c (load_debug_section): Fail if there are no section headers available. 2017-11-29 Nick Clifton PR 22508 * objdump.c (dump_relocs_in_section): Also check the section's relocation count to make sure that it is reasonable before attempting to allocate space for the relocs. 2017-11-29 Stefan Stroe * po/Make-in (datadir): Define as @datadir@. (localedir): Define as @localedir@. (gnulocaledir, gettextsrcdir): Use @datarootdir@. 2017-11-28 H.J. Lu PR binutils/22490 * readelf.c (process_notes_at): Add an argument for note alignment. If note alignment is less than 4, use 4 byte alignment. Otherwise, skip notes if alignment isn't 4 nor 8 bytes. (process_corefile_note_segments): Pass segment alignment to process_notes_at. (process_note_sections): Pass section alignment to process_notes_at. (process_object): Call load_separate_debug_file only if e_shstrndx != SHN_UNDEF. 2017-11-27 Nick Clifton PR 22490 * readelf.c (dump_section_as_bytes): Check for a NULL string section pointer. (process_notes_at): Compute the alignment to use if displaying notes from a segment. 2017-11-26 H.J. Lu * dwarf.c (load_separate_debug_info): Rename argument name from link to xlink. 2017-11-24 H.J. Lu PR binutils/22444 * readelf.c (process_notes_at): Use ELF_NOTE_DESC_OFFSET to get the offset of the note descriptor. Use ELF_NOTE_NEXT_OFFSET to get the offset of the next note entry. 2017-11-23 Pavel I. Kryukov PR 22485 * readelf.c (process_archive): Use memset to initiaise thin_filedata structure. 2017-11-21 H.J. Lu PR binutils/22451 * testsuite/binutils-all/x86-64/objects.exp: New file. * testsuite/binutils-all/x86-64/pr22451.o.bz2: Likewise. 2017-11-21 Claudiu Zissulescu * testsuite/binutils-all/arc/objdump.exp: Update pattern matching expression. 2017-11-21 Nick Clifton * dwarf.c (dwo_name, dwo_dir, dwo_id, dwo_id_len): New variables. (read_and_display_attr_value): Record dwo variables if requested. (display_augmentation_data): Rename to display_data and make generic. (load_dwo_file): New function. Loads a separate dwarf object file. (load_separate_debug_file): Add reporting and loading of separate dwarf objet files. * readelf.c (process_section_headers): Add do_debug_links to list of flags requiring a debug dump. (display_debug_section): Tidy up code. * doc/debug.options.texi: Add note that dwo links will also be followed. * testsuite/binutils-all/debuglink.s: Tidy code. * testsuite/binutils-all/dwo.s: New test file. * testsuite/binutils-all/readelf.wk2: New file - expected output from readelf. * testsuite/binutils-all/readelf.exp: Run the new test. 2017-11-18 Alan Modra PR 22443 * nm.c (sort_symbols_by_size): Don't attempt to access section symbol internal_elf_sym. (print_symbol): Likewise. Don't call bfd_get_symbol_version_string for section symbols. * objdump.c (compare_symbols): Don't attempt to access section symbol internal_elf_sym. (objdump_print_symname): Don't call bfd_get_symbol_version_string for section symbols. 2017-11-17 Jim Wilson * readelf.c (elf/riscv.h): Alphabetize include. (is_32bit_inplace_add_reloc, is_32bit_inplace_sub_reloc) (is_64bit_inplace_add_reloc, is_64bit_inplace_sub_reloc) (is_16bit_inplace_add_reloc, is_16bit_inplace_sub_reloc) (is_8bit_inplace_add_reloc, is_8bit_inplace_sub_reloc): New. (apply_relocations): New locals reloc_inplace and reloc_subtract. Call the new functions and set the new locals. Call byte_get if reloc_inplace. Subtract sym->st_value if reloc_subtract. 2017-11-17 Nick Clifton PR 22449 * ar.c (write_archive): Free the temporary file name. 2017-11-17 Nick Clifton * readelf.c (process_archive): Include member name in the file_name of the filedata structure. 2017-11-15 Alan Modra PR 22426 * objcopy.c (copy_main): Free tmpname. 2017-11-15 Nick Clifton PR 15152 * dwarf.h (enum dwarf_section_display_enum): Add gnu_debuglink, gnu_debugaltlink and separate_debug_str. (struct dwarf_section): Add filename field. Add prototypes for load_separate_debug_file, close_debug_file and open_debug_file. * dwarf.c (do_debug_links): New. (do_follow_links): New. (separate_debug_file, separate_debug_filename): New. (fetch_alt_indirect_string): New function. Retrieves a string from the debug string table in the separate debug info file. (read_and_display_attr_value): Use it with DW_FORM_GNU_strp_alt. (load_debug_section_with_follow): New function. Like load_debug_section, but if the first attempt fails, then tries again in the separate debug info file. (introduce): New function. (process_debug_info): Use load_debug_section_with_follow and introduce. (load_debug_info): Likewise. (display_debug_lines_raw): Likewise. (display_debug_lines_decoded): Likewise. (display_debug_macinfo): Likewise. (display_debug_macro): Likewise. (display_debug_abbrev): Likewise. (display_debug_loc): Likewise. (display_debug_str): Likewise. (display_debug_aranges): Likewise. (display_debug_addr); Likewise. (display_debug_frames): Likewise. (display_gdb_index): Likewise. (process_cu_tu_index): Likewise. (load_cu_tu_indexes): Likewise. (display_debug_links): New function. Displays the contents of a .gnu_debuglink or .gnu_debugaltlink section. (calc_gnu_debuglink_ctc32):New function. Calculates a CRC32 value. (check_gnu_debuglink): New function. Checks the CRC of a potential separate debug info file. (parse_gnu_debuglink): New function. Reads a CRC value out of a .gnu_debuglink section. (check_gnu_debugaltlink): New function. (parse_gnu_debugaltlink): New function. Reads the build-id value out of a .gnu_debugaltlink section. (load_separate_debug_info): New function. Finds and loads a separate debug info file. (load_separate_debug_file): New function. Attempts to find and follow a link to a separate debug info file. (free_debug_memory): Free the separate debug info file information. (opts_table): Add "follow-links" and "links". (dwarf_select_sections_by_letters): Add "k" and "K". (debug_displays): Reformat. Add .gnu-debuglink and .gnu_debugaltlink. Add an extra entry for .debug_str in a separate debug info file. * doc/binutils.texi: Move description of debug dump features common to both readelf and objdump into... * objdump.c (usage): Add -Wk and -WK. (load_specific_debug_section): Initialise the filename field in the dwarf_section structure. (close_debug_file): New function. (open_debug_file): New function. (dump_dwarf): Load and dump the separate debug info sections. * readelf.c (struct filedata): New structure. Contains various variables that used to be global: (current_file_size, string_table, string_table_length, elf_header) (section_headers, program_headers, dump_sects, num_dump_sects): Move into filedata structure. (cmdline): New global variable. Contains list of sections to dump by number, as specified on the command line. Add filedata parameter to most functions. (load_debug_section): Load the string table if it has not already been retrieved. (close_file): New function. (close_debug_file): New function. (open_file): New function. (open_debug_file): New function. (process_object): Process sections in any separate debug info files. * doc/debug.options.texi: New file. Add description of =links and =follow-links options. * NEWS: Mention the new feature. * elfcomm.c: Have the byte get functions take a const pointer. * elfcomm.h: Update prototypes. * testsuite/binutils-all/dw5.W: Update expected output. * testsuite/binutils-all/objdump.WL: Update expected output. * testsuite/binutils-all/objdump.exp: Add test of -WK and -Wk. * testsuite/binutils-all/readelf.exp: Add test of -wK and -wk. * testsuite/binutils-all/readelf.k: New file. * testsuite/binutils-all/objdump.Wk: New file. * testsuite/binutils-all/objdump.WK2: New file. * testsuite/binutils-all/linkdebug.s: New file. * testsuite/binutils-all/debuglink.s: New file. 2017-11-10 Jim Wilson * testsuite/binutils-all/objdump.exp: Expect the debug_ranges test to pass. 2017-11-07 Jim Wilson * MAINTAINERS (RISC-V): Fix typo in my email address. 2017-11-07 Palmer Dabbelt * MAINTAINERS (RISC-V): Add Jim Wilson as a maintainer. Clean up Andrew's entry (remove trailing space, add tabs). Change Palmer's email address, and clean up entry (add tabs). 2017-11-07 Alan Modra * dwarf.c (read_uleb128): Properly pluralize messages. (display_debug_lines_raw, display_debug_loc): Likewise. (display_debug_names, process_cu_tu_index): Likewise. * od-macho.c (dump_code_signature_superblob): Likewise. * readelf.c (process_program_headers): Likewise. (process_section_header, process_relocs): Likewise. (hppa_process_unwind, arm_process_unwind): Likewise. (process_dynamic_section, process_version_sections): Likewise. (process_symbol_table, process_syminfo): Likewise. (apply_relocations, process_mips_specific): Likewise. (process_gnu_liblist, process_notes_at): Likewise. (process_archive): Likewise. * testsuite/binutils-all/dw2-1.W, * testsuite/binutils-all/dw2-3.W, * testsuite/binutils-all/dw2-3gabi.W, * testsuite/binutils-all/dw5.S, * testsuite/binutils-all/dw5.W, * testsuite/binutils-all/i386/compressed-1a.d, * testsuite/binutils-all/libdw2-compressedgabi.out, * testsuite/binutils-all/objdump.W, * testsuite/binutils-all/readelf.r, * testsuite/binutils-all/readelf.r-64, * testsuite/binutils-all/x86-64/compressed-1a.d: Update for pluralization fixes. 2017-11-07 Alan Modra * sysdep.h (textdomain, bindtextdomain): Use safer "do nothing". (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. 2017-11-03 Claudiu Zissulescu * doc/binutils.texi (ARC): Update disassembler options. * testsuite/binutils-all/arc/hexprint.s: New file. * testsuite/binutils-all/arc/objdump.exp: Test hex printing feature. 2017-11-03 Mingi Cho Nick Clifton PR 22386 * dwarf.c (read_cie): Use bfd_size_type for augmentation_data_len. (display_augmentation_data): New function. (display_debug_frames): Use it. Check for integer overflow when testing augmentation_data_len. 2017-11-02 Mingi Cho PR 22384 * readelf.c (print_gnu_property_note): Improve overflow checks so that they will work on a 32-bit host. 2017-11-01 James Bowman * readelf.c (is_16bit_abs_reloc): Add entry for FT32. 2017-10-31 Nick Clifton * readelf.c (process_relocs): Tell users if no static relocs were found, but if they had added --use-dynamic to the command line then relocs would have been displayed. 2017-10-28 Alan Modra PR 22361 * readelf.c (process_archive_index_and_symbols): Ensure ar_size field is zero terminated for strtoul. (setup_archive, get_archive_member_name): Likewise. 2017-10-27 Simon Marchi * dwarf.c (struct Frame_Chunk) : Change type to unsigned int. (display_debug_frames): Read CFA reg as an unsigned number. 2017-10-25 Alan Modra * nm.c (filter_symbols): Match "__gnu_lto_slim" optionally prefixed with "_". 2017-10-18 Eric Botcazou * MAINTAINERS: Add myself as Visium maintainer. 2017-10-18 Nick Clifton * README-how-to-make-a-release: A note about checking file and directory permissions. * MAINTAINERS: Move Svein Seldal to Past Maintainers section. 2017-10-18 Alan Modra PR 22303 * readelf.c (print_core_note): Ensure "count" sanity check calculation doesn't overflow. (process_notes_at): Perform note namesz and descsz checks using unsigned comparisons against data remaining. Catch alignment overflow of namesz and descsz too. Don't allocate a temp for terminating "name" when there is space available before descdata. 2017-10-17 Tom Tromey * MAINTAINERS: Add myself as dwarf-mode.el maintainer. 2017-10-11 Peeter Joot Nick Clifton * dwarf.c (read_and_display_attr_value): Handle DW_AT_endianity, DW_END_default, DW_END_big, DW_END_little, DW_ATE_UCS, DW_ATE_ASCII, DW_CC_pass_by_reference, DW_CC_pass_by_value, DW_CC_GNU_renesas_sh, DW_CC_GNU_borland_fastcall_i386, DW_AT_decimal_sign, DW_AT_defaulted, DW_AT_discr_list. (get_TAG_name): Report user generated tag values. * testsuite/binutils-all/dwarf-attributes.S: New test. * testsuite/binutils-all/dwarf-attributes.W. Expected output from readelf. * testsuite/binutils-all/readelf.exp: Run the new test. 2017-10-10 Tom Tromey * dwarf-mode.el: Bump to version 1.4. 2017-10-10 Tom Tromey * dwarf-mode.el (dwarf--process, dwarf--deletion-region): New defvar. (dwarf--check-running, dwarf--sentinel, dwarf--invoke) (dwarf--filter): New functions. (dwarf-do-insert-substructure, dwarf-do-refresh): Call dwarf--check-running, dwarf--invoke. (dwarf-browse): Initialize new variables. 2017-10-10 Tom Tromey * dwarf-mode.el: Set lexical-binding. 2017-10-10 Tom Tromey * dwarf-mode.el (dwarf-mode-map): New defvar. 2017-10-10 Tom Tromey PR 22249 * dwarf.c (process_debug_info): Skip any comp unit that ends before dwarf_start_die. 2017-10-06 Alan Modra * dwarf.c (process_debug_info): Consolidate header length checks. (display_debug_pubnames_worker): Use "start" to read header. Properly check header length and report errors earlier. Simplify loop printing pubnames. (get_line_filename_and_dirname): Catch small negative "length" values. (display_debug_aranges): Likewise. Report header errors earlier using standardized message. (display_debug_names): Likewise. 2017-10-05 Joseph Myers * readelf.c (decode_arm_unwind): Initialize res to TRUE. 2017-10-05 Nick Clifton PR 22260 * objcopy.c (strip_main): Add 'M' character to short options list when calling getopt_long. 2017-10-05 Nick Clifton PR 22262 * readelf.c (dump_relocations): Do not truncate reloc names when displaying output in wide mode. 2017-10-05 Nick Clifton * README-how-to-make-a-release: Merge steps 3, 4 and 5, and insert the git tag operation at the correct location. 2017-10-05 Alan Modra PR 22239 * dwarf.c (read_cie): Don't compare "start" and "end" pointers after adding a possibly wild length to "start", compare the length to the difference of the pointers instead. Remove now redundant "negative" length test. 2017-10-05 Tristan Gingold * MAINTAINERS: Update email address. Redirect release maintainer to global maitainers. 2017-10-01 Alan Modra PR 22232 PR 22230 * objdump.c (load_specific_debug_section): Introduce a temp to stop bfd_get_full_section_contents NULLing out section->start. 2017-10-01 Alan Modra PR 22230 * objdump.c (load_specific_debug_section): Allocate an extra byte for a terminating NUL. 2017-09-30 Alan Modra PR 21978 * objdump.c: Formatting. (show_line): Reset prev_line when function name changes. 2017-09-27 Nick Clifton PR 22219 * dwarf.c (process_debug_info): Add a check for a negative cu_length field. 2017-09-27 Alan Modra PR 22216 * readelf.c (process_symbol_table): Check that DT_HASH symbol chains are only visited once, and report an error if not. Display invalid symbol index if chain is out of range. Use the same logic when calculating histograms rather than the PR 17531 fix. Delete bogus check that chained index is less than number of buckets. 2017-09-26 Nick Clifton PR 22154 * dwarf.c (get_line_filename_and_dirname): Add extra checks for buffer overruns. 2017-09-26 Nick Clifton * README-how-to-make-a-release: New file. 2017-09-26 Alan Modra PR 21732 * dwarf.c (READ_ULEB): Don't use DWARF_VMA_FMT in translated string. (READ_SLEB): Likewise. * readelf.c (bfd_vmatoa): New function. (get_data, get_dynamic_data): Use it for printing error messages. 2017-09-25 H.J. Lu PR binutils/22203 * nm.c (display_rel_file): Free memory returned from bfd_get_synthetic_symtab. 2017-09-22 Alexandre Oliva * dwarf.h (debug_info): Add loc_views and num_loc_views. * dwarf.c (vm1): New constant. (print_dwarf_view): New function. (read_and_display_attr_value): Support DW_AT_GNU_locviews. (process_debug_info): Keep num_loc_offsets and num_loc_views in sync. (display_view_pair_list): New function. (display_loc_list_dwo): Take vstart_ptr; update it. Dump location view pairs before the range they apply to, when a viewlist augments the loc list. (display_loc_list): Likewise. Check view numbers in range tests. (display_loclists_list): Likewise. Handle view pair entries, and warn on trailing ones. (loc_views): New variable. (loc_offsets_compar): Compare loc_views if loc_offsets are the same. (display_debug_loc): Check and sort loc_views too. Accept loc_view as expected_start. Skip if lists and views are the same. Dump locview list separately in order, and pass the locview list base to each list dump function. Warn and skip overlap and hole checking if we find loclists and locviews to not be adjacent. * testsuite/binutils-all/locview-1.s: New. * testsuite/binutils-all/readelf.locview-1: New. * testsuite/binutils-all/locview-2.s: New. * testsuite/binutils-all/readelf.locview-2: New. * testsuite/binutils-all/readelf.exp: Run new tests. Fix option spelling in pr18374 fail message. XFAIL dw5 test on nds32*-elf. 2017-09-22 Alan Modra * testsuite/binutils-all/readelf.exp: Don't perror and exit on bintest.s assembly failure. Report tests unresolved instead. Likewise for version note test, pr18374, decompress, and dw5 tests. (readelf_test): Set testname to include both option and binary file name. Use for pass/fail. 2017-09-21 Maciej W. Rozycki * readelf.c (get_machine_flags) : New case. 2017-09-05 Nick Clifton PR 21995 * readelf.c (process_mips_specific): Add checks for a NULL data pointer. 2017-09-05 Alexander Fedotov Edmar Wienskoski PR 21994 * readelf.c (process_version_sections ): Check vd_aux and vda_next for sanity. Delete "end". Correct overflow checks. (process_version_sections ): Correct overflow check. Don't report invalid vna_next on overflow. Do report invalid vna_next on size less than aux info. 2017-08-23 Alan Modra PR 21990 * readelf.c (process_version_sections ): Check for invalid vn_next field before adding to idx. Use unsigned long for index vars. Move index checks. : Likewise for vd_next. 2017-08-17 Nick Clifton * testsuite/binutils-all/note-3-64.s: New test. Checks assembly and decoding of version2 GNU build attribute notes. * testsuite/binutils-all/note-3-32.s: New test. 32-bit version of the above test. * testsuite/binutils-all/note-3-64.d: New test driver. * testsuite/binutils-all/note-3-32.d: New test driver. * testsuite/binutils-all/objcopy.exp: Run the new test. * readelf.c (is_64bit_abs_reloc): Add R_SPARC_64. 2017-08-14 Gustavo Romero * readelf.c (get_note_type): Handle PPC note types available since Linux 4.8. 2017-08-12 Alan Modra * readelf.c (process_note): Qualify NT_GNU_BUILD_ATTRIBUTE notes by name data. 2017-08-08 Nick Clifton PR 21909 * prdbg.c (pr_int_type): Increase size of local string buffer. (pr_float_type): Likewise. (pr_bool_type): Likewise. 2017-08-02 Nick Clifton PR 21702 * arsup.c (ar_addmod): Add plugin support for the MRI ADDMOD command. 2017-08-02 Nick Clifton * testsuite/binutils-all/objdump.exp (cpus_expected): Add am33-2. 2017-08-02 Alan Modra * readelf.c (is_32bit_abs_reloc): Add R_IA64_SECREL32MSB and R_IA64_DIR32MSB. (is_64bit_abs_reloc): Add R_IA64_DIR64MSB. (is_64bit_pcrel_reloc): Add R_IA64_PCREL64MSB. 2017-08-01 Nick Clifton * po/sv.po: Updated Swedish translation. 2017-07-31 Marty Plummer PR 21861 * winduni.c (codepages): Use cp1252 for codepage 0. 2017-07-25 Nick Clifton PR 21820 * readelf.c (dump_section_as_strings): Do not fail if the section was empty. (dump_section_as_bytes): Likewise. 2017-07-24 Nick Clifton PR 21813 * rddbg.c (read_symbol_stabs_debugging_info): Check for an empty string whilst concatenating symbol names. 2017-07-21 Nick Clifton * po/fr.po: Updated French translation. 2017-07-21 Simon Marchi * dwarf.c (last_pointer_size, warned_about_missing_comp_units): Remove. (load_debug_info): Remove assignments to those two variables. 2017-07-21 Alexandre Oliva * dwarf.c (struct State_Machine_Registers): Add view field. (reset_state_machine): Reset view. (process_extended_line_op): Reset view when appropriate. (display_debug_lines_raw): Increment or reset view when appropriate. Print nonzero views. Support print view resets, disabled by default. (display_debug_lines_decoded): Likewise. Disambiguate op_code tests, enabling printing of end_sequence. * testsuite/binutils-all/dw2-1.W: Add nonzero views. * testsuite/binutils-all/dw2-3.W: Likewise. * testsuite/binutils-all/dw2-3gabi.W: Likewise. * testsuite/binutils-all/dw5.W: Add end sequence lines. * testsuite/binutils-all/i386/compressed-1a.d: Add nonzero views. * testsuite/binutils-all/libdw2-compressedgabi.out: Likewise. * testsuite/binutils-all/objdump.W: Likewise. * testsuite/binutils-all/objdump.WL: Add end sequence lines. * testsuite/binutils-all/x86-64/compressed-1a.d: Add nonzero views. 2017-07-19 Tristan Gingold * nm.c (show_stats): Remove variable. (long_options): Remove --stats option. (main): Remove handling of --stats. 2017-07-18 Nick Clifton PR 21775 * coffgrok.c: Fix spelling typos. * readelf.c: Likewise. * stabs.c: Likewise. * testsuite/binutils-all/objcopy.exp: Likewise. 2017-07-18 Nick Clifton * po/sv.po: Updated Swedish translation. 2017-07-18 Hans-Peter Nilsson * dwarf.c (display_debug_names): Initialize hash_prev. 2017-07-17 Nick Clifton PR 21433 * ar.c (main): Skip check for no files on the command line when running in MRI mode. 2017-07-13 H.J. Lu * testsuite/binutils-all/objdump.exp: Always delete $testarchive first. 2017-07-12 Alan Modra * po/bg.po: Update from translationproject.org/latest/binutils/. * po/ca.po: Likewise. * po/da.po: Likewise. * po/es.po: Likewise. * po/fi.po: Likewise. * po/fr.po: Likewise. * po/hr.po: Likewise. * po/id.po: Likewise. * po/it.po: Likewise. * po/ja.po: Likewise. * po/ro.po: Likewise. * po/ru.po: Likewise. * po/sk.po: Likewise. * po/sr.po: Likewise. * po/sv.po: Likewise. * po/tr.po: Likewise. * po/uk.po: Likewise. * po/vi.po: Likewise. * po/zh_CN.po: Likewise. * po/zh_TW.po: Likewise. 2017-07-12 Nick Clifton Fix compile time warnings using gcc 7.1.1. * dwarf.c (dwarf_vmatoa_1): Do not pass a NULL string pointer to sprintf. * srconv.c (walk_tree_type): Initialise the spare field of the IT_dty structure. 2017-07-11 Andreas Schwab * readelf.c (process_note): Print newline after description data in narrow mode. (print_core_note): Print newline if nothing was printed in wide mode. 2017-07-09 Rafael Fontenelle * dwarf.c (display_formatted_table): Fix error message typo. 2017-07-07 John Baldwin * readelf.c (get_freebsd_elfcore_note_type): Handle NT_FREEBSD_PTLWPINFO. 2017-07-05 H.J. Lu * dwarf.c (display_debug_names): Replace index with xindex. 2017-07-04 Tristan Gingold * configure: Regenerate. 2017-07-04 Tristan Gingold * NEWS: Add marker for 2.29. 2017-07-03 Tristan Gingold * po/binutils.pot: Regenerate. 2017-07-03 Alan Modra * strings.c (filename_and_size_t): Delete. (strings_a_section): Don't check section size against file size. Use bdf_malloc_and_get_section. Report an error on failures. Replace arg param with filename and got_a_section param. (got_a_section): Move to.. (strings_object_file): ..an auto var here. Iterate over sections rather than calling bfd_map_over_sections. Adjust strings_a_section call. 2017-07-02 Jan Kratochvil * dwarf.c: Include assert.h. (MAX, MIN, get_IDX_name, display_debug_names): New. (debug_displays): Add .debug_names. * dwarf.h: (enum dwarf_section_display_enum): Add debug_names. * readelf.c (process_section_headers): Add ".debug_names". 2017-07-01 Alan Modra PR binutils/21665 * objdump.c (strtab): Make var a bfd_byte*. (disassemble_section): Don't limit malloc size. Instead, use bfd_malloc_and_get_section. (read_section_stabs): Use bfd_malloc_and_get_section. Return bfd_byte*. (find_stabs_section): Remove now unnecessary cast. * objcopy.c (copy_object): Use bfd_malloc_and_get_section. Free contents on error return. * nlmconv.c (copy_sections): Use bfd_malloc_and_get_section. 2017-06-30 Nick Clifton PR binutils/21665 * objdump.c (disassemble_section): Move check for an overlarge section to just before the allocation of memory. Do not check section size against file size, but instead use an arbitrary 2Gb limit. Issue a warning message if the section is too big. 2017-06-30 Maciej W. Rozycki * NEWS: Mention microMIPS XPA support. 2017-06-30 Maciej W. Rozycki * NEWS: Mention microMIPS Release 5 ISA support. 2017-06-30 Maciej W. Rozycki * testsuite/binutils-all/mips/mips-xpa-virt-1.d: New test. * testsuite/binutils-all/mips/mips-xpa-virt-2.d: New test. * testsuite/binutils-all/mips/mips-xpa-virt-3.d: New test. * testsuite/binutils-all/mips/mips-xpa-virt-4.d: New test. * testsuite/binutils-all/mips/mips-xpa-virt.s: New test source. * testsuite/binutils-all/mips/mips.exp: Run the new tests. 2017-06-29 Anton Kolesov * testsuite/binutils-all/arc/double_store.s: New file. * testsuite/binutils-all/arc/objdump.exp: Tests for disassembler options. (do_objfile): New function. (check_assembly): Likewise. 2017-06-29 Andreas Arnez * readelf.c (get_note_type): Add NT_S390_GS_CB and NT_S390_GS_BC. 2017-06-28 H.J. Lu * objdump.c (dump_relocs_in_section): Cast to ufile_ptr when comparing against bfd_get_file_size return. 2017-06-28 Nick Clifton * objcopy.c (merge_gnu_build_notes): Add support for version 2 notes. * readelf.c (print_gnu_build_attribute_name): Likewise. 2017-06-28 Maciej W. Rozycki Matthew Fortune * readelf.c (get_machine_flags) : New case. (print_mips_isa_ext) : Likewise. * NEWS: Mention Imagination interAptiv MR2 processor support. 2017-06-26 Nick Clifton PR binutils/21665 * objdump.c (disassemble_section): Skip any section that is bigger than the entire file. 2017-06-26 Nick Clifton PR binutils/21659 * bucomm.c (get_file_size): Explicitly warn if the file is a directory. 2017-06-24 Thomas Preud'homme * readelf.c (arm_attr_tag_CPU_arch): Fill value for ARMv8-R. 2017-06-23 Nick Clifton PR binutils/21659 * strings.c (strings_file): Warn about attempts to run strings on a directory. 2017-06-22 H.J. Lu * readelf.c (decode_x86_feature): Decode GNU_PROPERTY_X86_FEATURE_1_SHSTK. * testsuite/binutils-all/i386/shstk.d: New file. * testsuite/binutils-all/i386/shstk.s: Likewise. * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise. * testsuite/binutils-all/x86-64/shstk.d: Likewise. * testsuite/binutils-all/x86-64/shstk.s: Likewise. 2017-06-22 H.J. Lu * readelf.c (decode_x86_feature): New. (print_gnu_property_note): Call decode_x86_feature on GNU_PROPERTY_X86_FEATURE_1_AND. * testsuite/binutils-all/i386/empty.d: New file. * testsuite/binutils-all/i386/empty.s: Likewise. * testsuite/binutils-all/i386/ibt.d: Likewise. * testsuite/binutils-all/i386/ibt.s: Likewise. * testsuite/binutils-all/x86-64/empty-x32.d: Likewise. * testsuite/binutils-all/x86-64/empty.d: Likewise. * testsuite/binutils-all/x86-64/empty.s: Likewise. * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise. * testsuite/binutils-all/x86-64/ibt.d: Likewise. * testsuite/binutils-all/x86-64/ibt.s: Likewise. 2017-06-21 H.J. Lu * dwarf.c (READ_ULEB): Use DWARF_VMA_FMT to report error. (READ_SLEB): Likewise. 2017-06-21 Nick Clifton PR binutils/21648 * dwarf.c (LEB): Rename to SKIP_ULEB and READ_ULEB. Add check for reading a value that is too big for the containing variable. (SLEB): Rename to SKIP_SLEB and READ_SLEB. Add similar check. Replace uses of LEB and SLEB with appropriate new macro. (display_debug_frames): Use an unsigned int for the 'reg' variable. Use a signed long for the 'l' variable. 2017-06-20 Andreas Krebbel * readelf.c (get_s390_segment_type): Add support for the new segment type PT_S390_PGSTE. (get_segment_type): Call get_s390_segment_type. 2017-06-19 Nick Clifton PR binutils/21619 * objdump.c (disassemble_bytes): Check that there is sufficient data available before attempting to display it. 2017-06-06 Simon Marchi * sysinfo.y: Free memory allocated by token NAME. 2017-05-30 Anton Kolesov * doc/binutils.texi: Document new cpu=... disassembler options for ARC. 2017-05-30 H.J. Lu PR binutils/21519 * objdump.c (dump_relocs_in_section): Replace get_file_size with bfd_get_file_size to get archive element size. * testsuite/binutils-all/objdump.exp (test_objdump_f): New proc. (test_objdump_h): Likewise. (test_objdump_t): Likewise. (test_objdump_r): Likewise. (test_objdump_s): Likewise. Add objdump tests on archive. 2017-05-24 Yao Qi * objdump.c (disassemble_data): Caller update. 2017-05-19 Jose E. Marchesi * objcopy.c (merge_gnu_build_notes): Remove workaround that prevented deleting relocations in duplicated notes in mips64 and sparc. 2017-05-19 Maciej W. Rozycki * testsuite/binutils-all/mips/mips-note-2.d: New test. * testsuite/binutils-all/mips/mips-note-2r.d: New test. * testsuite/binutils-all/mips/mips-note-2-n32.d: New test. * testsuite/binutils-all/mips/mips-note-2-n64.d: New test. * testsuite/binutils-all/mips/mips-note-2r-n32.d: New test. * testsuite/binutils-all/mips/mips-note-2r-n64.d: New test. * testsuite/binutils-all/mips/mips.exp: Define `has_newabi'. Run the new tests. 2017-05-19 Maciej W. Rozycki * testsuite/lib/utils-lib.exp (run_dump_test): Handle the `dump' option. 2017-05-19 Jose E. Marchesi * NEWS: Mention the SPARC M8 support. 2017-05-19 Maciej W. Rozycki * testsuite/binutils-all/mips/mips.exp: Bail out right away if non-ELF. 2017-05-18 Alan Modra * strings.c: Don't compare boolean values against TRUE or FALSE. 2017-05-15 Jeff Law * readelf.c (display_arc_attribute): Avoid implicit fallthru. 2017-05-15 Maciej W. Rozycki * testsuite/binutils-all/mips/mips16-undecoded.d: Add `-mips3' to `as' flags. * testsuite/binutils-all/mips/mips16e2-undecoded.d: New test. * testsuite/binutils-all/mips/mips16e2-extend-insn.d: New test. * testsuite/binutils-all/mips/mips16-undecoded.s: Remove `.module mips3'. * testsuite/binutils-all/mips/mips.exp: Run the new tests. 2017-05-15 Maciej W. Rozycki * readelf.c (print_mips_ases): Handle MIPS16e2 ASE. * NEWS: Mention MIPS16e2 ASE support. 2017-05-12 Maciej W. Rozycki * testsuite/binutils-all/mips/mips16-extend-insn.d: Adjust BREAK and SDBBP disassembly. 2017-05-10 Maciej W. Rozycki * testsuite/binutils-all/mips/mips.exp: Define `tempfile' and `copyfile' variables. 2017-05-10 Claudiu Zissulescu * readelf.c (decode_ARC_machine_flags): Recognize OSABI v4. (get_arc_section_type_name): New function. (get_section_type_name): Use the above function. (display_arc_attribute): New function. (process_arc_specific): Likewise. (process_arch_specific): Handle ARC specific information. 2017-05-09 Kaz Kojima * MAINTAINERS (SH): Remove myself as SH maintainer. 2017-05-02 H.J. Lu * objcopy.c (merge_gnu_build_notes): Cast relcount to unsigned long when comparing with sec->reloc_count. 2017-05-02 Nick Clifton * objcopy.c (merge_gnu_build_notes): Disable merge if there are more internal relocs than external relocs. 2017-05-02 Maciej W. Rozycki * testsuite/binutils-all/mips/mips16-undecoded.d: Adjust the disassembly of PC-relative LA and LW synthetic instructions. 2017-05-02 Nick Clifton PR 21440 * objdump.c (dump_relocs_in_section): Check for an excessive number of relocs before attempting to dump them. 2017-05-01 Alan Modra * objcopy.c (merge_gnu_build_notes): Correct code deleting relocs. 2017-04-28 Nick Clifton PR binutils/21439 * readelf.c (print_gnu_build_attribute_name): Allow for an empty name field. 2017-04-28 Nick Clifton PR binutils/21437 * readelf.c (process_version_sections): Check for underflow when computing the start address of the auxiliary version data. 2017-04-28 Nick Clifton PR binutils/21438 * dwarf.c (process_extended_line_op): Do not assume that the string extracted from the section is NUL terminated. (fetch_indirect_string): If the string retrieved from the section is not NUL terminated, return an error message. (fetch_indirect_line_string): Likewise. (fetch_indexed_string): Likewise. 2017-04-26 Nick Clifton PR binutils/21433 * bucomm.c (get_file_size): Return -1 if file_name is NULL. * ar.c (main): Fail with usage() invocation if no file names are provided. 2017-04-26 Nick Clifton * readelf.c (process_section_headers): Warn about overlarge sections. (print_gnu_build_attribute_name): Print the number of unrecognised note types. Fix formatting in the presence of errors. (testsuite/binutils-all/note-2-32.s): Fix encoding of numeric notes. (testsuite/binutils-all/note-2-64.s): Likewise. 2017-04-26 Maciej W. Rozycki * readelf.c (process_mips_specific): Add static GOT support. 2017-04-25 Maciej W. Rozycki * readelf.c (process_mips_specific): Remove error reporting from GOT[1] processing. 2017-04-25 Maciej W. Rozycki * readelf.c (process_mips_specific): Remove null GOT data check. 2017-04-25 Maciej W. Rozycki * testsuite/binutils-all/mips/mips16-alias.d: New test. * testsuite/binutils-all/mips/mips16-noalias.d: New test. * testsuite/binutils-all/mips/mips16-alias.s: New test source. * testsuite/binutils-all/mips/mips.exp: Run the new tests. 2017-04-23 Alan Modra PR 21418 * ar.c (main): Check -a, -b, -i and -N args are given. 2017-04-23 Alan Modra PR 21417 * ar.c (main): Check that an archive file is given after options. 2017-04-23 Alan Modra PR 21415 * objdump.c (disassemble_section): Check bfd_get_section_contents status. 2017-04-23 Alan Modra PR 21408 * dwarf.c (display_debug_lines_decoded): Don't segfault on NULL file_table. 2017-04-21 Nick Clifton PR binutils/21378 * readelf.c (print_gnu_build_attribute_name): Check for an overlarge name field. 2017-04-13 Nick Clifton PR binutils/21379 * readelf.c (process_dynamic_section): Detect over large section offsets in the DT_SYMTAB entry. 2017-04-13 Nick Clifton PR binutils/21345 * readelf.c (process_mips_specific): Catch an unfeasible memory allocation before it happens and print a suitable error message. 2017-04-13 Nick Clifton * objcopy.c: Add --no-merge-notes option to disable note merging. Add --[no-]merge-notes option to strip, and enable it by default. (num_bytes): New function. (merge_gnu_build_notes): Add code to merge stack size notes. * binutils.texi: Update strip and objcopy documentation. * readelf.c (print_gnu_build_attribute_name): Use defined constants for note types. 2017-04-10 John Delsignor PR binutils/21319 * dwarf.c (display_gdb_index): Correct test for a corrupt address table size. 2017-04-05 Jiong Wang * objcopy.c (struct redefine_node): Delete the field "next". (redefine_sym_list): Deleted. (redefine_specific_htab): New hash table. (redefine_specific_reverse_htab): Likewise. (eq_string_redefnode): New function. (htab_hash_redefnode): Likewise. (create_symbol2redef_htab): Likewise. (add_specific_symbol_node): Likewise. (create_symbol_htabs): Create redefine_specific_htab and redefine_specific_reverse_htab. (lookup_sym_redefinition): Use hash table instead of list. (redefine_list_append): Likewise, and rename to add_redefine_and_check. (copy_main): Use redefine_specific_htab instead of redefine_sym_list. Update comments. 2017-04-04 H.J. Lu * NEWS: Mention support for ELF SHF_GNU_MBIND and PT_GNU_MBIND_XXX. * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX. (get_elf_section_flags): Handle SHF_GNU_MBIND. (process_section_headers): Likewise. * testsuite/binutils-all/mbind1.s: New file. * testsuite/binutils-all/objcopy.exp: Run readelf test on mbind1.s. 2017-04-03 Nick Clifton PR binutils/21345 * readelf.c (get_program_headers): Check for there being too many program headers before attempting to allocate space for them. 2017-04-03 Nick Clifton PR binutils/21344 * readelf.c (process_mips_specific): Check for an out of range GOT entry before reading the module pointer. 2017-04-03 Nick Clifton PR binutils/21343 * readelf.c (get_unwind_section_word): Fix snafu checking for invalid word offsets in ARM unwind information. 2017-03-31 Pip Cet * NEWS: Use "WebAssembly" consistently. * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice. 2017-03-30 Pip Cet * readelf.c: Add support for wasm32 ELF format WebAssembly files. (guess_is_rela): Likewise. (dump_relocations): Likewise. (is_32bit_abs_reloc): Likewise. (is_none_reloc_): Likewise. * NEWS: Mention the new support. * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32 as ELF target. (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE. * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations. * testsuite/binutils-all/wasm32: New directory. * testsuite/binutils-all/wasm32/create-wasm.d: New file. * testsuite/binutils-all/wasm32/create-wasm.s: Likewise. * testsuite/binutils-all/wasm32/custom-section.d: Likewise. * testsuite/binutils-all/wasm32/custom-section.s: Likewise. * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise. * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise. * testsuite/binutils-all/wasm32/long-sections.d: Likewise. * testsuite/binutils-all/wasm32/long-sections.s: Likewise. * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise. * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise. * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise. * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise. * testsuite/binutils-all/wasm32/prepared-section.d: Likewise. * testsuite/binutils-all/wasm32/prepared-section.s: Likewise. * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests. 2017-03-29 Alan Modra * doc/binutils.texi (objdump): Document PowerPC -M options. 2017-03-21 Andi Kleen * objdump.c (unwind_inlines): Add. (option_values): Add OPTION_INLINES. (show_line): Unwind inlines if requested. (main): Parse OPTION_INLINES. (usage): Document --inlines. * doc/binutils.texi: Document --inlines. * NEWS: Likewise. 2017-03-21 Nick Clifton * readelf.c (print_gnu_build_attribute_name): Allow stack protection notes to contain numeric values. Use a colon rather than a space to separate a string name from its values. Decode the numeric value of a stack protection note. * objcopy.c (merge_gnu_build_notes): Allow version notes to contain extra text after the protocol version number. 2017-03-20 Mark Wielaard * readelf.c (process_program_headers): Move dynamic_addr check after .dynamic section cross check. 2017-03-17 Nick Clifton * readelf.c (print_gnu_build_attribute_name): Fix off by one error printing the value for a build note with an ascii name. 2017-03-16 Nick Clifton * readelf.c (print_gnu_build_attribute_name): Add support for GNU_BUILD_ATTRIBUTE_SHORT_ENUM. 2017-03-14 Nick Clifton * readelf.c (print_gnu_build_attribute_description): Move symbol printing code to... (print_symbol_for_build_attribute): New function. ...here. Add to find the best symbol to associate with an OPEN note. Add code to cache the symbol table and string table, so that they are not loaded every time a note is displayed. * testsuite/binutils-all/note-2-32.s: Add a function symbol. * testsuite/binutils-all/note-2-64.s: Likewise. * testsuite/binutils-all/note-2-32.d: Update expected note output. * testsuite/binutils-all/note-2-64.d: Likewise. 2017-03-13 Alan Modra Taeung Song * objdump.c (update_source_path): Add abfd param. Add struct stat var. Pass to try_print_file_open. Warn if source is more recent than object. (try_print_file_open, slurp_file): Add struct stat param to return fstat. (show_line): Call update_source_path with bfd. 2017-03-10 Chia-Hao Lo PR binutils/21235 * objdump.c (main): Set do_wide with --wide. 2017-03-10 Nick Clifton * readelf.c (get_machine_name): Rearrange switch table in order of increasing machine number. Add missing entries. 2017-03-08 H.J. Lu PR binutils/21231 * readelf.c (decode_x86_isa): Change argument to unsigned int. (print_gnu_property_note): Retrieve property type and datasz as 4-byte integer. Consolidate property datasz check. Check GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER. * testsuite/binutils-all/i386/pr21231a.d: New file. * testsuite/binutils-all/i386/pr21231a.s: Likewise. * testsuite/binutils-all/i386/pr21231b.d: Likewise. * testsuite/binutils-all/i386/pr21231b.s: Likewise. * testsuite/binutils-all/x86-64/pr21231a.d: Likewise. * testsuite/binutils-all/x86-64/pr21231a.s: Likewise. * testsuite/binutils-all/x86-64/pr21231b.d: Likewise. * testsuite/binutils-all/x86-64/pr21231b.s: Likewise. 2017-03-06 Nick Clifton * readelf.c (print_gnu_build_attribute_name): Read byte values from the name string as unsigned bytes. (process_notes_at): Use memcpy to copy an unterminated name string. 2017-03-06 Sam Thursfield * configure.ac (AC_CHECK_DECLS): Add asprintf. * config.in: Regenerate. * configure: Regenerate. 2017-03-02 Nick Clifton * readelf.c (print_gnu_build_attribute_description): Use global symbols for OPEN attributes if at all possible. * objcopy.c (is_merged_note_section): Support build note sections without the SHF_GNU_BUILD_NOTE section flag set. 2017-03-02 Jan Kratochvil * dwarf.c (debug_displays_assert): New static assertion. 2017-03-02 Jan Kratochvil * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists. 2017-03-01 Nick Clifton * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs. (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs. (decode_x86_isa): New function. (print_gnu_property_note): New function. (print_gnu_note): Handle GNU_PROPERTY_NOTEs. (print_gnu_build_attribute_description): New function. (print_gnu_build_attribute_name): New function. (process_note): Add support for GNU_BUILD_NOTEs. * objcopy.c (--merge-notes): New command line option. (copy_options): Add merge-notes. (copy_usage): Likewise. (is_merge_note_section): New function. (merge_gnu_build_notes): New function. (copy_object): Merge note sections if asked to do so. (skip_section): Add skip_copy parameter. Add support for skipping merged note sections. (copy_relocations_in_section): Update call to skip_section. (copy_section): Likewise. (copy_main): Add support for merge-notes option. * doc/binutils.texi: Document the new option to objcopy. * NEWS: Mention the new feature. * testsuite/binutils-all/note-2-32.d: New test. Checks note merging on 32-bit targets. * testsuite/binutils-all/note-2-32.s: New test source file. * testsuite/binutils-all/note-2-64.d: New test. Like note-2-32.d but for 64-bit targets. * testsuite/binutils-all/note-2-64.s: New test source file. * testsuite/binutils-all/objcopy.exp: Run the new test. 2017-02-28 Peter Bergner * objdump.c (main): Use remove_whitespace_and_extra_commas. 2017-02-27 Jan Kratochvil Fix compilation with GCC 4.4.7. * dwarf.c (display_loclists_list, display_debug_rnglists_list): Initialize begin and end. 2017-02-25 Alan Modra * testsuite/binutils-all/dw5.S: Replace .string with .asciz. Support hpux .comm variant. * testsuite/binutils-all/readelf.exp: Define HPUX when assembling dw5 test for hppa64-hpux. 2017-02-24 Nick Clifton * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms, (do_reloc, do_sections, do_section_groups, do_section_details, (do_segments, do_unwind, do_using_dynamic, do_header, do_dump, (do_version, do_histogram, do_debugging, do_arch, do_notes, (do_archive_index, is_32bit_elf, decompress_dumps): Use bfd_boolean type. (parse_args): Treat the do_* variables as booleans. (print_vma): Return an unsigned int. (print_symbol): Change width parameter to signed int. (is_ia64_vms): Change return type to bfd_boolean. (guess_is_rela): Likewise. (slurp_rela_relocs): Likewise. (slurp_rel_relocs): Likewise. (dump_relocations): Likewise. (process_file_header): Likewise. (get_program_headers): Likewise. (process_program_headers): Likewise. (process_section_headers): Likewise. (process_section_groups): Likewise. (dump_ia64_vms_dynamic_fixups): Likewise. (dump_ia64_vms_dynamic_relocs): Likewise. (process_ia64_vms_dynamic_relocs): Likewise. (process_relocs): Likewise. (dump_ia64_unwind): Likewise. (ia64_process_unwind): Likewise. (dump_hppa_unwind): Likewise. (slurp_hppa_unwind_table): Likewise. (hppa_process_unwind): Likewise. (decode_arm_unwind_bytecode): Likewise. (decode_tic6x_unwind_bytecode): Likewise. (decode_arm_unwind): Likewise. (dump_arm_unwind): Likewise. (arm_process_unwind): Likewise. (process_unwind): Likewise. (get_32bit_dynamic_section): Likewise. (get_64bit_dynamic_section): Likewise. (process_dynamic_section): Likewise. (process_version_sections): Likewise. (process_symbol_table): Likewise. (process_syminfo): Likewise. (apply_relocations): Likewise. (disassemble_section): Likewise. (dump_section_as_strings): Likewise. (dump_section_as_bytes): Likewise. (load_specific_debug_section): Likewise. (load_debug_section): Likewise. (display_debug_section): Likewise. (process_section_contents): Likewise. (process_attributes): Likewise. (process_nds32_specific): Likewise. (process_gnu_liblist): Likewise. (print_core_note): Likewise. (print_gnu_note): Likewise. (print_v850_note): Likewise. (process_netbsd_elf_note): Likewise. (print_stapsdt_note): Likewise. (print_ia64_vms_note): Likewise. (process_note): Likewise. (process_notes_at): Likewise. (process_corefile_note_segments): Likewise. (process_v850_notes): Likewise. (process_note_sections): Likewise. (process_notes): Likewise. (process_arch_specific): Likewise. (get_file_header): Likewise. (process_object): Likewise. (process_archive): Likewise. (process_file): Likewise. (section_subset): Make static. (get_mips_reg_size): Return a signed integer. (process_object): Reverse the logic of the return value. (process_archive): Likewise. (process_file): Likewise. (process_program_headers): Fix snafu - if the program headers are not available then this is not a cause to fail. (process_corefile_note_segments): Likewise. 2017-02-24 Maciej W. Rozycki * readelf.c (get_ver_flags): Tidy the formatting of the string returned 2017-02-24 Maciej W. Rozycki * readelf.c (process_version_sections) : Make `isum' unsigned. : Likewise. 2017-02-24 Maciej W. Rozycki * readelf.c (process_version_sections) : Limit the number of entries processed by the section size. Don't break out of the loop if `ent.vd_next' is 0. 2017-02-23 Jan Kratochvil * testsuite/binutils-all/dw5.S: New file. * testsuite/binutils-all/dw5.W: New file. * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test. 2017-02-23 Jan Kratochvil * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16. 2017-02-23 Jan Kratochvil * dwarf.c (display_debug_macro): Support DWARF-5. Rename DW_MACRO_GNU_*. 2017-02-23 Jan Kratochvil * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer, DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert and DW_OP_reinterpret. (read_and_display_attr_value): Support DW_AT_call_value, DW_AT_call_data_value, DW_AT_call_target and DW_AT_call_target_clobbered. 2017-02-23 Jan Kratochvil * dwarf.c (fetch_indirect_line_string): New function. (abbrev_attr): New field implicit_const. (add_abbrev_attr): New parameter implicit_const. (process_abbrev_section): Support DW_FORM_implicit_const. (decode_location_expression): Support DW_OP_entry_value. (read_and_display_attr_value): Add parameter implicit_const. Support DW_FORM_line_strp and DW_FORM_implicit_const. (read_and_display_attr): Add parameter implicit_const. (process_debug_info): Support line_str and DWARF-5. (read_debug_line_header): Support DWARF-5. (display_formatted_table): New function. (display_debug_lines_raw): New parameter file. Support DWARF-5. (display_debug_lines_decoded): New parameter fileptr. Support DWARF-5. (display_debug_lines): Pass file parameter. (display_debug_macro): Update read_and_display_attr_value caller. (display_debug_abbrev): Support DW_FORM_implicit_const. (display_loclists_list): New function. (display_loc_list): Support .debug_loclists. (display_debug_ranges_list): New function from display_debug_ranges. (display_debug_rnglists_list): New function. (display_debug_ranges): Support .debug_rnglists. (debug_displays): Add .debug_line_str, .debug_loclists and .debug_rnglists. * dwarf.h: Include dwarf2.h (DWARF2_Internal_LineInfo): Add li_offset_size. (DWARF2_Internal_CompUnit): Add cu_unit_type. (enum dwarf_section_display_enum): Add line_str. * readelf.c (process_section_headers): Add rnglists and loclists. 2017-02-23 Jan Kratochvil * dwarf.c (display_block): Add parameter delimiter. (decode_location_expression): Update display_block callers. (read_and_display_attr_value): Add parameter delimiter. (read_and_display_attr, display_debug_macro): Update read_and_display_attr_value caller. 2017-02-23 Jan Kratochvil * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address and off. (display_loc_list_dwo): Use dwarf_vma for offset. (display_debug_loc): Use dwarf_vma for offset, base_address. (struct range_entry, range_entry_compar): Use dwarf_vma for ranges_offset. (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and base_address. 2017-02-23 Nick Clifton * readelf.c (display_tag_value): Use an explicit signed type for the tag parameter. (display_gnu_attributes): Use an unsigned integer type for attribute tags. (display_power_gnu_attribute): Likewise. (display_s390_gnu_attribute): Likewise. (display_sparc_hwcaps): Likewise. (display_sparc_hwcaps2): Likewise. (display_sparc_gnu_attribute): Likewise. (display_mips_gnu_attribute): Likewise. (display_tic6x_attribute): Likewise. (display_raw_attribute): Likewise. (process_attributes): Likewise. (process_arm_specific): Delete redundant function. (process_power_specific): Likewise. (process_s390_specific): Likewise. (process_sparc_specific): Likewise. (process_tic6x_specific): Likewise. (process_msp430x_specific): Likewise. (display_public_gnu_attributes): New function. Displays known information about an unknown gnu attribute. (display_generic_attribute): New function. Calls display_tag_value for non-nul tags. (process_arch_specific): Call process_attributes even for architectures not known to specifically support gnu attributes. 2017-02-22 Jan Kratochvil * dwarf.c (decode_location_expression): Display also OP. 2017-02-22 Maciej W. Rozycki * readelf.c (process_version_sections) : Print a new line between the heading and the first version definition entry. 2017-02-20 Nick Clifton PR binutils/21156 * dwarf.c (cu_tu_indexes_read): Move into... (load_cu_tu_indexes): ... here. Change the variable into tri-state. Change the function into boolean, returning false if the indicies could not be loaded. (find_cu_tu_set): Return NULL if the indicies could not be loaded. 2017-02-17 Nick Clifton PR binutils/21156 * readelf.c (find_section_in_set): Test for invalid section indicies. 2017-02-17 Nick Clifton * readelf.c (get_section_type_name): Add decoding of GNU section types. 2017-02-15 Nick Clifton * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past Maintainers section. 2017-02-14 Nick Clifton PR binutils/21159 * readelf.c (dump_section_as_strings): Reset the start address if no decompression is perfromed. (dump_section_as_bytes): Likewise. 2017-02-14 Nick Clifton PR binutils/21158 * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or empty symbol name. 2017-02-14 Nick Clifton PR binutils/21157 * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE pairs. (parse_number): Exit early if passed an empty string. 2017-02-14 Nick Clifton PR binutils/21155 * readelf.c (IN_RANGE): New macro. Tests for an address + offset being within a given range. (target_specific_reloc_handling): Use macro to test for underflow as well as overflow of reloc offset. 2017-02-13 Nick Clifton PR binutils/21150 * nm.c (file_symbol): Add test of string length before testing string characters. 2017-02-13 Nick Clifton PR binutils/21135 * readelf.c (dump_section_as_bytes): Handle the case where uncompress_section_contents returns false. (dump_section_as_bytes, load_specific_debug_section): Likewise. 2017-02-13 Nick Clifton PR binutils/21149 * readelf.c (get_compression_header): Add size parameter. Check size against sizeof compression header before attempting to extract the header. (process_section_headers): Pass size to get_compression_header. (dump_section_as_strings): Likewise. (dump_section_as_bytes): Likewise. (load_specific_debug_section): Likewise. 2017-02-13 Nick Clifton PR binutils/21148 * readelf.c (process_version_sections): Include size of auxiliary version information when checking for buffer overflow. 2017-02-13 Nick Clifton PR binutils/21147 * readelf.c (process_section_contents): Fix off by one error reporting un-dumped sections. 2017-02-13 Nick Clifton PR binutils/21139 * readelf.c (target_specific_reloc_handling): Add num_syms parameter. Check for symbol table overflow before accessing symbol value. If reloc pointer is NULL, discard all saved state. (apply_relocations): Pass num_syms to target_specific_reloc_handling. Call target_specific_reloc_handling with a NULL reloc pointer after processing all of the relocs. 2017-02-13 Nick Clifton PR binutils/21137 * readelf.c (target_specific_reloc_handling): Add end parameter. Check for buffer overflow before writing relocated values. (apply_relocations): Pass end to target_specific_reloc_handling. 2017-01-27 Dilyan Palauzov Nick Clifton PR 20343 * doc/binutils.texi (ar): Extend documentation of the --plugin option. Include a description of where the plugins should be located. (nm): Likewise. 2017-01-23 Nick Clifton * MAINTAINERS: Add Bernd to Past Maintainers section. (SCORE): Remove Mei Ligang as maintainer. Add to Past Maintainers section. 2017-01-23 Bernd Schmidt * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer. 2017-01-20 Andrew Burgess * objdump.c (dump_section_header): Extract max section name length from data parameter, use this when formatting output. (find_longest_section_name): New function. (dump_headers): Calculate longest section name when in wide mode, reformat to unify printing of header line. 2017-01-18 Bernhard Rosenkranzer PR 21059 * arlex.l: Support processing with flex 2.6.3. * deflex.l: Likewise. 2017-01-17 Dmitry Timoshkov * resbin.c: Optional dialog control data immediately follows the control description without alignment. * testsuite/binutils-all/windres/controldata.rc: New test. source. * testsuite/binutils-all/windres/controldata.rsd: New test. 2017-01-12 Nick Clifton PR binutils/20876 * NEWS: Mention the new feature. * testsuite/binutils-all/objdump.exp (test_build_id_debuglink): New proc to test the location of separate debug info files using the build-id method. 2017-01-10 Nick Clifton PR 21034 * stabs.c (parse_stab_members): Fix thinko checking for g++ version 1 stabs information. 2017-01-09 Nick Clifton * objdump.c (display_file): Add new parameter 'last_file'. If last_file is true, do not call bfd_close at the end of the function. (main): Set the value of the last_file parameter when calling display_file. 2017-01-09 Alan Modra * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn comment. 2017-01-06 Nick Clifton * MAINTAINERS: Move Paul Brook to the Past Maintainers section. 2017-01-04 Dilan Palauzov PR 20958 * syslex.l (option): Add noyywrap (yywrap): Delete. 2017-01-02 Alan Modra Update year range in copyright notice of all files. For older changes see ChangeLog-2016 Copyright (C) 2017 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never End: