2013-05-28  Cary Coutant  <ccoutant@google.com>

	* dwarf.c (display_debug_lines_raw): Print section offsets.

2013-05-15  Cary Coutant  <ccoutant@google.com>

	* dwarf.c (SAFE_BYTE_GET64): Correct end-of-buffer check;
	don't increment PTR.
	(decode_location_expression): DW_OP_const2u should read 2 bytes.
	(display_debug_lines_decoded): Adjust formatting.
	* elfcomm.c (byte_get_little_endian): Add cases for 5-, 6-, and
	7-byte reads.
	(byte_get_big_endian): Likewise.
	(byte_get_signed): Likewise.

2013-05-09  Andrew Pinski  <apinski@cavium.com>

	* doc/binutils.texi: Document -Mvirt disassembler option.

2013-05-02  Nick Clifton  <nickc@redhat.com>

	* readelf.c: Add support for MSP430X architecture.

2013-05-02  Nick Clifton  <nickc@redhat.com>

	* dwarf.c (display_debug_lines_raw): Do not treat .debug_line.dwo
	sections as if they were fragmentary .debug_line sections.
	(display_debug_lines_decoded): Likewise.

2013-04-29  Nick Clifton  <nickc@redhat.com>

	* dwarf.c (read_debug_line_header): New function.  Reads in a
	header in a .debug_line section.
	(display_debug_lines_raw): Use new function.  Handle fragmentary
	.debug_line sections.
	(display_debug_lines_decoded): Likewise.
	* readelf.c (process_section_headers): Handle fragmenatry
	.debug_line sections.
	(display_debug_section): Likewise.

2013-04-26  Ian Lance Taylor  <iant@google.com>

	* MAINTAINERS: Add myself and Cary as gold maintainers.

2013-04-08  Tom Tromey  <tromey@redhat.com>

	* dwarf.c (process_debug_info): Check dwarf_cutoff_level.

2013-04-08  Tom Tromey  <tromey@redhat.com>

	* dwarf-mode.el: Bump version number.
	(dwarf-mode): Remove autoload.
	(dwarf-die-reference): Relax regexp.

2013-04-05  Alan Modra  <amodra@gmail.com>

	PR binutils/15324
	* configure.in: Add strnlen to AC_CHECK_DECLS, sort.
	* dwarf.c (strnlen): Provide fallback decl.
	* config.in: Regnerate.
	* configure: Regenerate.

2013-03-29  H.J. Lu  <hongjiu.lu@intel.com>

	* dwarf.c (process_debug_info): Increment hdrptr by 8 after
	SAFE_BYTE_GET64.

2013-03-27  Phil Krylov <phil.krylov@gmail.com>

	PR binutils/13409
	* winduni.c (codepages[]): Use UTF-16LE.
	(wind_MultiByteToWideChar): Likewise.
	(wind_WideCharToMultiByte): Likewise.

2013-03-27  Alan Modra  <amodra@gmail.com>

	PR binutils/15206
	* dwarf.c (read_and_display_attr_value): Cast format '*' arg to int.

2013-03-26  Nick Clifton  <nickc@redhat.com>

	PR binutils/15206
	* dwarf.c (SAFE_BYTE_GET): New macro - checks remaining buffer
	space before calling byte_get.
	(SAFE_BYTE_GET_AND_INC): New macro.
	(SAFE_SIGNED_BYTE_GET): New macro.
	(SAFE_SIGNED_BYTE_GET_AND_INC): New macro.
	(SAFE_BYTE_GET64): New macro.
	(process_extened_line_op): Use new macros.  Use strnlen when
	appropriate.
	(fetch_indirect_string): Likewise.
	(get_FORM_name): Likewise.
	(decode_location_expression): Likewise.
	(read_and_display_attr_value): Likewise.
	(process_debug_info): Likewise.
	(display_debug_lines_raw): Likewise.
	(display_debug_lines_decoded): Likewise.
	(display_debug_pubnames): Likewise.
	(display_debug_macinfo): Likewise.
	(get_line_filename_and_dirname): Likewise.
	(display_debug_macro): Likewise.
	(display_loc_list): Likewise.
	(display_loc_list_dwo): Likewise.
	(display_debug_aranges): Likewise.
	(display_debug_ranges): Likewise.
	(frame_display_row): Likewise.
	(display_debug_frames): Likewise.

2013-03-25  Nick Clifton  <nickc@redhat.com>

	PR binutils/15202
	* dwarf.c (read_leb128): Add END parameter.  Do not read at or
	beyond end.
	(read_sleb128): Add END parameter.
	(read_uleb128): New function.
	(process_extended_line_op): Pass END to leb128 functions.
	(process_abbrev_section): Likewise.
	(decode_location_expression): Likewise.
	(read_and_display_attr_value): Likewise.
	(read_and_display_attr): Likewise.
	(process_debug_info): Likewise.
	(display_debug_lines_raw): Likewise.
	(display_debug_lines_decoded): Likewise.
	(display_debug_macinfo): Likewise.
	(get_line_filename_and_dirname): Likewise.
	(display_debug_macro): Likewise.
	(display_loc_list_dwo): Likewise.
	(display_debug_ranges): Likewise.
	* dwarf.h (read_leb128): Update prototype.
	* readelf.c (read_uleb128): Add END parameter.
	(decode_arm_unwind_bytecode): Pass END to read_uleb128.
	(decode_tic6x_unwind_bytecode): Likewise.
	(display_tag_value): New function.
	(display_arm_attribute): Add END parameter. Pass END to
	read_uleb128.  Use display_tag_value.
	(display_gnu_attribute): Likewise.
	(display_power_gnu_attribute): Likewise.
	(display_sparc_gnu_attribute): Likewise.
	(display_mips_gnu_attribute): Likewise.
	(display_tic6x_attribute): Likewise.
	(process_attributes): Likewise.
	(display_raw_attribute): New function.

2013-03-22  Nick Clifton  <nickc@redhat.com>

	PR binutils/15201
	* dwarf.c (display_debug_ranges): Add checks for reading beyond
	the end of the section.

	PR binutils/15157
	* readelf.c (apply_relocations): Catch relocations with negative
	offsets.

2013-03-15  Nick Clifton  <nickc@redhat.com>

	* addr2line.c (slurp_symtab): If canonicalization reveals that
	there were no ordinary symbols, try loading the dynamic symbols
	instead.

2013-03-14  Markos Chandras  <markos.chandras@imgtec.com>

	* MAINTAINERS: Add myself as Meta maintainer.

2013-03-08  Andreas Arnez  <arnez@linux.vnet.ibm.com>

	* readelf.c (get_note_type): Add NT_S390_TDB.

2013-03-07  Alan Modra  <amodra@gmail.com>

	* strings.c (get_char): Dispense with buf[].  Instead shift
	chars into big-endian value and byte-swap later if
	little-endian.  Don't EOF check value read from object.

2013-03-05  Corinna Vinschen  <vinschen@redhat.com>

	* configure.in: Build DLL tools on x86_64-*-cygwin* as well.
	* configure: Regenerate.

2013-03-04  Nick Clifton  <nickc@redhat.com>

	* elfcomm.c (error): Flush stdout before emitting the error
	message.
	(warn): Likewise.

2013-03-01  Cary Coutant  <ccoutant@google.com>

	* dwarf.c (cu_tu_indexes_read, shndx_pool, shndx_pool_size)
	(shndx_pool_used): Move to top of file.
	(struct cu_tu_set): New type.
	(cu_count, tu_count, cu_sets, tu_sets): New file scope variables.
	(fetch_indexed_string): Add "this_set" parameter.  Update all callers.
	(find_cu_tu_set_v2): New function.
	(read_and_display_attr_value): Add "this_set" parameter.
	(read_and_display_attr): Likewise.
	(process_debug_info): Track base offsets for DWARF package files.
	(load_debug_info): Call load_cu_tu_indexes.
	(get_DW_SECT_short_name): New function.
	(process_cu_tu_index): Add support for version 2 DWARF package files.

2013-02-27  Alan Modra  <amodra@gmail.com>

	PR binutils/15191
	* readelf.c (offsetof): Define.
	(CHECK_ENTSIZE_VALUES): Remove extraneous indefinite article.
	(process_corefile_note_segment): Allow notes without name or
	desc.  Combine out-of-range checks.  Disallow "negative"
	notesz or descsz.

2013-02-26  Nick Clifton  <nickc@redhat.com>

	PR binutils/15191
	* readelf.c (process_corefile_note_segment): Prevent attempts to
	read beyond the end of the note buffer.

2013-02-15  Kai Tietz  <ktietz@redhat.com>

	* objcopy.c (copy_main): Initialize context variable.

2013-02-15  Nick Clifton  <nickc@redhat.com>

	PR binutils/15140
	* ar.c (open_inarch): Fail on attempts to convert a normal archive
	to a thin archive or vice versa.
	* elfcomm.c (make_qualified_name): Handle corrupted thin
	archives.
	* readelf.c (process_archive): Likewise.
	* doc/binutils.texi: Clarify documentation describing thin
	archives.

2013-02-15  Nick Clifton  <nickc@redhat.com>

	PR binutils/15033
	* objcopy.c (enum change_action): Delete.
	(struct section_list): Delete remove, copy, change_vma, change_lma
	and set_flags fields.  Add context field.
	(find_section_list): Add a context parameter.  Add support for
	wildcard characters in section names.
	(is_strip_section): Check for sections being both  copied and
	removed.
	(copy_object): Pass context to find_section_list.
	(setup_section): Likewise.
	(copy_section): Likewise.
	(copy_main): Likewise.
	* doc/binutils: Document the new behaviour.
	* NEWS: Mention the new feature

2013-02-14  Nick Clifton  <nickc@redhat.com>

	PR binutils/15125
	* objcopy.c (copy_object): Provide a helpful warning message when
	adding a gnu_debuglink section to an object which already contains
	one.

2013-02-07  Nick Clifton  <nickc@redhat.com>

	* elfcomm.c (get_archive_member_name): Prevent seg-fault if a
	corrupt archive uses long names but has no long name table.

2013-02-06  Sandra Loosemore  <sandra@codesourcery.com>
            Andrew Jenner <andrew@codesourcery.com>

	Based on patches from Altera Corporation.

	* readelf.c: Include elf/nios2.h.
	(dump_relocations): Add case for EM_ALTERA_NIOS2.
	(get_nios2_dynamic_type): New.
	(get_dynamic_type): Add case for EM_ALTERA_NIOS2.
	(is_32bit_abs_reloc): Fix EM_ALTERA_NIOS2 case.
	(is_16bit_abs_reloc): Likewise.
	(is_none_reloc): Add EM_ALTERA_NIOS2 and EM_NIOS32 cases.
	* NEWS: Note Altera Nios II support.
	* MAINTAINERS: Add Nios II maintainers.

2013-01-29  Xi Wang  <xi.wang@gmail.com>

	* readelf.c (process_version_sections): Fix overflow checks to
	avoid undefined behaviour.

2013-01-28  Doug Evans  <dje@google.com>

	* dwarf.c (display_gdb_index): Handle .gdb_index version 8.

2013-01-28  Robert Schiele  <rschiele@gmail.com>

	* objcopy.c (parse_flags): Add merge and strings section flags.

2013-01-25  Cary Coutant  <ccoutant@google.com>

	* dwarf.c (display_loc_list): Update offset for each line
	printed.
	(print_addr_index): New function.
	(display_loc_list_dwo): Update offset for each line printed.
	Fix problems displaying loclists in .dwo files.  Add support
	for type 4 entries.
	(display_debug_loc): Remove custom header for .dwo files.
	(display_debug_addr): Adjust formatting.

2013-01-25  Marco Atzeri  <marco.atzeri@gmail.com>

	* objcopy.c : Enable long section names for OPTION_ADD_GNU_DEBUGLINK.

2013-01-24  Doug Evans  <dje@google.com>

	* dwarf.c (display_debug_addr): Add missing parentheses to expression.

2013-01-24  Nick Clifton  <nickc@redhat.com>

	* readelf.c (get_machine_flags): Decode E_V850E3V5_ARCH.

2013-01-23  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* readelf.c: Add strings for NT_S390_LAST_BREAK and
	NT_S390_SYSTEM_CALL.

2013-01-18  Nick Clifton  <nickc@redhat.com>

	PR binutils/15026
	* addr2line.c (translate_addresses): When pretty printing, print
	unknown function names on the same line as unknown symbol names.

2013-01-17  Nickolai Zeldovich  <nickolai@csail.mit.edu>

	* objdump.c (dump_target_specific): Fix NULL pointer test.

2013-01-16  Alan Modra  <amodra@gmail.com>

	PR binutils/15018
	* stabs.c (parse_stab_members): Always set physname here to avoid
	gcc warning..
	(parse_stab_argtypes): ..and don't duplicate the init here.

2013-01-10  Will Newton <will.newton@imgtec.com>

	* binutils/readelf.c: (guess_is_rela): Add EM_METAG.
	(dump_relocations): Add EM_METAG.
	(get_machine_name): Correct case for Meta.
	(is_32bit_abs_reloc): Add support for Meta ADDR32 reloc.
	(is_none_reloc): Add support for Meta NONE reloc.

2013-01-08  Yufeng Zhang  <yufeng.zhang@arm.com>

	* readelf.c (get_note_type): Handle NT_ARM_TLS, NT_ARM_HW_BREAK
	and NT_ARM_HW_WATCH.

2013-01-07  Roland McGrath  <mcgrathr@google.com>

	* objcopy.c (deterministic): Make int rather than bfd_boolean,
	initialize to -1.
	(strip_options, copy_options): Add -U/--disable-deterministic-archives.
	(default_deterministic): New function.
	(strip_main, copy_main): Handle -U.  Call default_deterministic.
	(copy_usage, strip_usage): Describe -U.  Cite whether -D or -U is
	the default based on DEFAULT_AR_DETERMINISTIC.
	* doc/binutils.texi (objcopy, strip): Describe -U and effect of
	configure options on -D.

	* ar.c (default_deterministic): Comment fix.

2013-01-07  Patrice Dumas  <pertusus@free.fr>

	* doc/binutils.texi: Fix ordering of top level nodes.
	Replace erroneous uses of @itemx with @item.

2013-01-04  Andreas Schwab  <schwab@linux-m68k.org>

	* doc/binutils.texi (elfedit): Fix use of @itemx in @table.

2013-01-03  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	* MAINTAINERS: Add myself as AArch64 co-maintainer.

2013-01-02  H.J. Lu  <hongjiu.lu@intel.com>

	* version.c (print_version): Update copyright year to 2013.

For older changes see ChangeLog-2012

Copyright (C) 2013 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:
