2016-09-26  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	Backport from mainline
	2016-02-15  Nick Clifton  <nickc@redhat.com>

	* readelf.c (get_section_type_name): Add hex prefix to offsets
	printed for LOPROC and LOOS values.  Ensure that a result is
	always returned for the V850 target, even when an unrecognised
	processor specific value is encountered.
	(process_section_headers): Display key values in the order in
	which they appear to the user.  Add the "C (compressed)" value to
	the list.

2016-09-26  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* readelf.c (get_elf_section_flags): Fix readelf after purecode
	backport.

2016-09-23  Andre Vieria  <andre.simoesdiasvieira@arm.com>

	* objdump.c (dump_section_header): Handle SEC_ELF_PURECODE.
	* readelf.c (get_elf_section_flags): Handle PURECODE.
	(process_section_headers): Add purecode to help message.

2016-03-29  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* readelf.c (display_arm_attribute): Add output for Tag_DSP_extension.
	(arm_attr_public_tags): Define DSP_extension attribute.

2016-03-29  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	Revert
	2015-12-17  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* readelf.c (display_arm_attribute): Add output for Tag_DSP_extension.
	(arm_attr_public_tags): Define DSP_extension attribute.

2015-12-17  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* readelf.c (display_arm_attribute): Add output for Tag_DSP_extension.
	(arm_attr_public_tags): Define DSP_extension attribute.

2015-12-17  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* readelf.c (arm_attr_tag_CPU_arch): Add ARMv8-M Baseline Tag_CPU_arch
	value.

2015-12-17  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* readelf.c (arm_attr_tag_CPU_arch): Add ARMv8-M Mainline Tag_CPU_arch
	value.
	(arm_attr_tag_THUMB_ISA_use): Add ARMv8-M Mainline Tag_THUMB_ISA_use
	value.
