+2019-12-23 Hans-Peter Nilsson <hp@axis.com>
+
+ * dwarf.c (display_debug_lines_decoded): Cast printf parameter to
+ format type to correct last change.
+
+2019-12-23 Alan Modra <amodra@gmail.com>
+
+ * dwarf.h (read_leb128): Update prototype.
+ (report_leb_status): New inline function.
+ (SKIP_ULEB, SKIP_SLEB, READ_ULEB, READ_SLEB): Define.
+ * dwarf.c: Use above macros throughout file. Formatting.
+ (read_leb128): Reorder params. Add status return param.
+ Don't stop reading until finding terminator or end of data.
+ Detect loss of significant bits. Sign extend only on
+ terminating byte.
+ (read_sleb128, read_uleb128): Delete functions.
+ (SKIP_ULEB, SKIP_SLEB, READ_ULEB, READ_SLEB): Delete macros.
+ (read_and_print_leb128): Rewrite.
+ (process_extended_line_op): Return a size_t. Use size_t vars.
+ Adjust to suit new macros. Add proper name size to "data" when
+ processing DW_LNE_define_file.
+ (process_abbrev_section): Adjust to suit new macros.
+ (decode_location_expression, skip_attr_bytes): Likewise.
+ (get_type_signedness): Likewise.
+ (read_and_display_attr_value): Likewise. Consolidate block code.
+ (process_debug_info): Adjust to suit new macros.
+ (display_formatted_table, display_debug_lines_raw): Likewise.
+ (display_debug_lines_decoded): Likewise. Properly check for end
+ of DW_LNS_extended_op.
+ (display_debug_macinfo): Adjust to suit new macros.
+ (get_line_filename_and_dirname, display_debug_macro): Likewise.
+ (display_view_pair_list): Likewise. Don't back off when hitting
+ end of data.
+ (display_loc_list): Adjust to suit new macros.
+ (display_loclists_list, display_loc_list_dwo): Likewise.
+ (display_debug_rnglists_list, read_cie): Likewise.
+ (display_debug_frames): Likewise.
+ * readelf.c: Use new ULEB macros throughout file.
+ (read_uleb128): Delete.
+ (decode_arm_unwind_bytecode): Use read_leb128.
+ (decode_tic6x_unwind_bytecode): Likewise.
+ (display_tag_value): Adjust to suit new macros.
+ (display_arc_attribute, display_arm_attribute): Likewise.
+ (display_gnu_attribute, display_power_gnu_attribute): Likewise.
+ (display_s390_gnu_attribute, display_sparc_gnu_attribute): Likewise.
+ (display_mips_gnu_attribute, display_tic6x_attribute): Likewise.
+ (display_msp430x_attribute, display_msp430_gnu_attribute): Likewise.
+ (display_riscv_attribute, process_attributes): Likewise.
+
+2019-12-17 Alan Modra <amodra@gmail.com>
+
+ * objdump.c (compare_section): New static var.
+ (compare_symbols): Sort by current section only. Don't access
+ symbol name out of bounds when checking for file symbols.
+ Sort section symbols and object symbols.
+ (find_symbol_for_address): Remove bogus debugging and section
+ symbol test.
+ (disassemble_data): Move symbol sort from here..
+ (disassemble_section): ..to here. Set compare_section.
+
+2019-12-17 Alan Modra <amodra@gmail.com>
+
+ * testsuite/binutils-all/objcopy.exp: Remove tic80 support.
+ * testsuite/binutils-all/objdump.exp: Likewise.
+
+2019-12-11 Alan Modra <amodra@gmail.com>
+
+ * od-xcoff.c (dump_dumpx_core): Adjust for bfd_h_get_8 change.
+
+2019-12-10 Alan Modra <amodra@gmail.com>
+
+ PR 24960
+ * objdump.c (disassemble_data): Call disassemble_free_target.
+
+2019-12-10 Alan Modra <amodra@gmail.com>
+
+ * objdump.c (struct objdump_disasm_info): Delete "sec".
+ (find_symbol_for_address): Use inf->section rather than aux->sec.
+ (objdump_print_addr, disassemble_bytes): Likewise.
+ (disassemble_section): Don't set aux->sec.
+
+2019-12-08 Alan Modra <amodra@gmail.com>
+
+ * testsuite/lib/binutils-common.exp (regexp_diff): Support #?REGEXP.
+
+2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * dwarf.c (regname_internal_riscv): New function.
+ (init_dwarf_regnames_riscv): Use new function.
+
+2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * dwarf.c (typedef dwarf_regname_lookup_ftype): New typedef.
+ (dwarf_regnames_lookup_func): New static global.
+ (init_dwarf_regnames_i386): Set dwarf_regnames_lookup_func.
+ (init_dwarf_regnames_iamcu): Likewise.
+ (init_dwarf_regnames_x86_64): Likewise.
+ (init_dwarf_regnames_aarch64): Likewise.
+ (init_dwarf_regnames_s390): Likewise.
+ (init_dwarf_regnames_riscv): Likewise.
+ (init_dwarf_regnames_by_elf_machine_code): Reset
+ dwarf_regnames_lookup_func to NULL.
+ (init_dwarf_regnames_by_bfd_arch_and_mach): Likewise.
+ (regname_internal_by_table_only): New function.
+ (regname): Make use of dwarf_regnames_lookup_func.
+
+2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * dwarf.c (init_dwarf_regnames_i386): Make static.
+ (init_dwarf_regnames_iamcu): Make static.
+ (init_dwarf_regnames_x86_64): Make static.
+ (init_dwarf_regnames_aarch64): Make static.
+ (init_dwarf_regnames_s390): Make static.
+ (init_dwarf_regnames_riscv): Make static.
+ * dwarf.h (init_dwarf_regnames_i386): Delete declaration.
+ (init_dwarf_regnames_iamcu): Delete declaration.
+ (init_dwarf_regnames_x86_64): Delete declaration.
+ (init_dwarf_regnames_aarch64): Delete declaration.
+ (init_dwarf_regnames_s390): Delete declaration.
+ (init_dwarf_regnames_riscv): Delete declaration.
+
+2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * dwarf.c (init_dwarf_regnames_by_bfd_arch_and_mach): New
+ function.
+ * dwarf.h (init_dwarf_regnames_by_bfd_arch_and_mach): Declare.
+ * objdump.c (dump_dwarf): Call new function instead of calling
+ specific initialization routines. Restrucure so that eh_addr_size
+ is still calculated correctly.
+
+2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * dwarf.c (init_dwarf_regnames): Renamed to...
+ (init_dwarf_regnames_by_elf_machine_code): ...this.
+ * dwarf.h (init_dwarf_regnames): Renamed to...
+ (init_dwarf_regnames_by_elf_machine_code): ...this.
+ * readelf.c (process_file_header): Update call to use new name.
+
+2019-11-22 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * dwarf.c (frame_need_space): Compare dwarf_regnames_count against
+ 0, and only warn about large numbers of registers if the number is
+ more than the dwarf_regnames_count.
+
+2019-11-25 Christian Eggers <ceggers@gmx.de>
+
+ * objdump.c (disassemble_data): Provide section parameter to
+ bfd_octets_per_byte.
+ (dump_section): likewise
+ (dump_section_header): likewise. Show SEC_ELF_OCTETS flag if set.
+
+2019-11-21 Alan Modra <amodra@gmail.com>
+
+ PR 273
+ * size.c (sysv_internal_sizer, sysv_internal_printer): Exclude
+ sections with no flag bits set.
+ * testsuite/binutils-all/size.exp: Allow $CODE$ as a text section.
+
+2019-11-21 Nick Clifton <nickc@redhat.com>
+
+ * objcopy.c (merge_gnu_build_notes): Allow for the possibility
+ that the new notes might actually be larger than the original
+ notes.
+
+2019-11-21 Alan Modra <amodra@gmail.com>
+
+ * testsuite/lib/binutils-common.exp (is_pecoff_format): Rewrite
+ with positive logic and add more target triples.
+
+2019-11-19 Alan Modra <amodra@gmail.com>
+
+ PR 24499
+ * objcopy.c (copy_file): Ignore --add-gnu-debuglink for archives.
+
+2019-11-19 Alan Modra <amodra@gmail.com>
+
+ PR 24968
+ * objcopy.c (copy_object): For ELF output and non-ELF input without
+ arch, take arch from output file if not given by -B. Don't
+ bfd_get_arch_info when we already have iarch.
+
+2019-11-19 Alan Modra <amodra@gmail.com>
+
+ PR 25191
+ * objcopy.c (is_nondebug_keep_contents_section): Use bfd_get_flavour.
+ (copy_object): Likewise.
+ (setup_section): Likewise. If flavour of input and output files
+ differ, restrict section flags to the intersection of input and
+ output bfd_applicable_section_flags.
+
+2019-11-19 Alan Modra <amodra@gmail.com>
+
+ * bucomm.c (bfd_nonfatal_message): Add a space between program
+ name and file.
+
+2019-11-18 Alan Modra <amodra@gmail.com>
+
+ PR 25198
+ * prdbg.c (tg_start_class_type): Correct scope of idbuf.
+
+2019-11-08 Alan Modra <amodra@gmail.com>
+
+ PR 25172
+ * objdump.c (usage): Correct --stop-address description.
+
+2019-11-07 Nick Clifton <nickc@redhat.com>
+
+ * ar.c (open_output_file): Check for filename validity before
+ prefixing with output directory.
+ Display the constructed output filename if in verbose mode.
+ (extract_file): Let open_output_file display the filename.
+
+2019-11-07 Nick Clifton <nickc@redhat.com>
+
+ * objcopy.c (copy_object): Skip note sections that do not have
+ an output section. Always copy note sections, even if no
+ changes are made.
+
+2019-11-06 Christian Eggers <ceggers@gmx.de>
+
+ * readelf.c (IN_RANGE): Rename parameter OFF to NELEM. Add
+ comment. Catch potential integer overflow and fix off by one
+ error whilst checking reloc location against section size.
+ (apply_relocations): Use IN_RANGE macro.
+
+2019-11-04 Fangrui Song <maskray@google.com>
+
+ * objcopy.c (enum option_values): Add OPTION_KEEP_SECTION.
+ (SECTION_CONTEXT_KEEP): Define. Adjust other SECTION_CONTEXT macros.
+ (copy_usage): Describe --keep-section.
+ (strip_usage): Likewise.
+ (copy_main): Handle SECTION_CONTEXT_KEEP.
+ (strip_main): Likewise.
+ (is_strip_section_1): Likewise.
+ * testsuite/binutils-all/objcopy.exp: Add tests.
+ * testsuite/binutils-all/keep-section-1.d: New test driver file.
+ * testsuite/binutils-all/keep-section-2.d: Likewise.
+ * doc/binutils.texi: Document the new feature.
+ * NEWS: Mention the new feature.
+
+2019-10-20 Palmer Dabbelt <palmer@sifive.com>
+
+ * MAINTAINERS: Change palmer@sifive.com to palmer@dabbelt.com.
+
+2019-10-30 Fangrui Song <i@maskray.me>
+ Nick Clifton <nickc@redhat.com>
+
+ * ar.c (emum long option numbers): Declare. Use to provide
+ numerical values for long options.
+ (long_options): Add --output option.
+ (usage): Mention the --output option.
+ (open_output_file): New function. Create a filepath for an output
+ file and open it.
+ (extract_file): Use open_output_file().
+ (open_output_file):
+ * testsuite/binutils-all/ar.exp: Add a test of the new feature.
+ * doc/binutils.texi: Document the new feature.
+ * NEWS: Mention the new feature.
+
+2019-10-26 Alan Modra <amodra@gmail.com>
+
+ * objcopy.c (sort_gnu_build_notes): Correct sort of deleted
+ note2.
+
+2019-10-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfedit.c (elf_x86_feature): Report unknown x86 feature.
+
+2019-10-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elfedit.c (update_gnu_property): Replace BYTE_PUT with byte_put.
+
+2019-10-25 Nick Clifton <nickc@redhat.com>
+
+ * objcopy.c (struct merged_note_section): New structure. Used to
+ chain together details of mergeable note sections.
+ (is_merged_note_section): Rename to is_megreable_note_section and
+ return true for note sections that use GNU_BUILD_ATTRS_SECTION_NAME
+ as a prefix.
+ (num_bytes): Delete
+ (objcoopy_internal_note): Add padded_namesz field.
+ (DEBUG_MERGE): New macro. Set to non-zero to enable debugging of
+ the note merging code.
+ (gap_exists): Rename to overlaps_or_adjoins and return TRUE for
+ overlapping notes or adjoining notes.
+ (contained_by, is_deleted_note, is_version_note)
+ (compare_gnu_build_notes, sort_gnu_build_notes): New functions.
+ (merge_gnu_build_notes): Rework. Sort notes into a mergeable
+ order first. Merge them. Then sort them into an ascending
+ address order before writing them out.
+ (copy_object): Handle more than one mergeable note section.
+ * testsuite/binutils-all/note-2-32.d: Update for new merging
+ behaviour.
+ * testsuite/binutils-all/note-2-32.s: Likewise.
+ * testsuite/binutils-all/note-2-64.d: Likewise.
+ * testsuite/binutils-all/note-2-64.s: Likewise.
+ * testsuite/binutils-all/note-3-32.d: Likewise.
+ * testsuite/binutils-all/note-3-32.s: Likewise.
+ * testsuite/binutils-all/note-3-64.d: Likewise.
+ * testsuite/binutils-all/note-3-64.s: Likewise.
+ * testsuite/binutils-all/note-4-32.d: Likewise.
+ * testsuite/binutils-all/note-4-32.s: Likewise.
+ * testsuite/binutils-all/note-4-64.d: Likewise.
+ * testsuite/binutils-all/note-4-64.s: Likewise.
+ * testsuite/binutils-all/note-6-32.s: New test source file.
+ * testsuite/binutils-all/note-6-64.s: New test source file.
+ * testsuite/binutils-all/note-6-32.d: New test driver file.
+ * testsuite/binutils-all/note-6-64.d: New test driver file.
+ * testsuite/binutils-all/objcopy.exp: Run the new test.
+
+2019-10-25 Alan Modra <amodra@gmail.com>
+
+ * readelf.c (process_program_headers): Check PT_PHDR p_offset
+ as well as p_vaddr. Use p_filesz, not p_memsz, in vaddr test.
+
2019-10-21 Alan Modra <amodra@gmail.com>
PR 452