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:
