2019-02-02  Nick Clifton  <nickc@redhat.com>

	2.32 Release
	* version.m4 (BFD_VERSION): Set to 2.32.
	* development.sh (development): Set to false.
	(experimental) Set to false.
	* configure: Regenerate.
	* po/bfd.pot: Regenerate.

2019-01-28  Nick Clifton  <nickc@redhat.com>

	Import from mainline:
	2019-01-21  Sergio Durigan Junior  <sergiodj@redhat.com>

	* elf32-arm.c (elf32_arm_final_link_relocate): Use 'llabs' instead
	of 'labs' (and fix GCC warning).

2019-01-25  Nick Clifton  <nickc@redhat.com>

	* po/ru.po: Updated Russian translation.

2019-01-23  Nick Clifton  <nickc@redhat.com>

	* po/fr.po: Updated French translation.

2019-01-21  Nick Clifton  <nickc@redhat.com>

	* po/pt.po: Updated Portuguese translation.
	* po/uk.po: Updated Ukranian translation.

2019-01-19  Nick Clifton  <nickc@redhat.com>

	* version.m4: Reset to 2.31.90
	* configure: Regenerate.
	* po/bfd.pot: Regenerate.

2018-06-24  Nick Clifton  <nickc@redhat.com>

	2.32 branch created.

2019-01-16  Kito Cheng  <kito@andestech.com>

	* elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
	for OBJ_ATTR_PROC.

2019-01-16  Kito Cheng  <kito@andestech.com>
	    Nelson Chu  <nelson@andestech.com>

	* elfnn-riscv.c (in_subsets): New.
	(out_subsets): Likewise.
	(merged_subsets): Likewise.
	(riscv_std_ext_p): Likewise.
	(riscv_non_std_ext_p): Likewise.
	(riscv_std_sv_ext_p): Likewise.
	(riscv_non_std_sv_ext_p): Likewise.
	(riscv_version_mismatch): Likewise.
	(riscv_i_or_e_p): Likewise.
	(riscv_merge_std_ext): Likewise.
	(riscv_merge_non_std_and_sv_ext): Likewise.
	(riscv_merge_arch_attr_info): Likewise.
	(riscv_merge_attributes): Likewise.
	(_bfd_riscv_elf_merge_private_bfd_data): Merge attribute.

	* elfnn-riscv.c (riscv_elf_obj_attrs_arg_type): New.
	(elf_backend_obj_attrs_vendor): Define.
	(elf_backend_obj_attrs_section_type): Likewise.
	(elf_backend_obj_attrs_section): Likewise.
	(elf_backend_obj_attrs_arg_type): Define as
	riscv_elf_obj_attrs_arg_type.
	* elfxx-riscv.c (riscv_estimate_digit): New.
	(riscv_estimate_arch_strlen1): Likewise.
	(riscv_estimate_arch_strlen): Likewise.
	(riscv_arch_str1): Likewise.
	(riscv_arch_str): Likewise.
	* elfxx-riscv.h (riscv_arch_str): Declare.

2019-01-14  John Darrington <john@darrington.wattle.id.au>

	* bfd-in2.h [BFD_RELOC_S12Z_OPR]: New reloc.
	* libbfd.h: regen.
	* elf32-s12z.c (eld_s12z_howto_table): R_S12Z_OPR takes non zero
	source field.  (md_apply_fix): Apply final fix
	to BFD_RELOC_S12Z_OPR.
	* reloc.c[BFD_RELOC_S12Z_OPR]: New reloc.

2019-01-14  Maamoun Tarsha  <maamountk@hotmail.com>

	PR 20113
	* elf32-s390.c (allocate_dynrelocs): Update comment.

2019-01-09  Andrew Paprocki  <andrew@ishiboo.com>

	* warning.m4: Adjust egrep pattern for non-GNU compilers.
	* configure: Regenerate.

2019-01-08  Alan Modra  <amodra@gmail.com>

	PR 23699
	PR 24065
	* ihex.c (ihex_write_object_contents): Properly check 32-bit
	address range.

2019-01-05  Yoshinori Sato <ysato@users.sourceforge.jp>

	* bfd/archures.c: Add bfd_mach_rx_v2 and bfd_mach_rx_v3.
	* bfd/bfd-in2.h: Regenerate.
	* bfd/cpu-rx.c (arch_info_struct): Add RXv2 and RXv3 entry.
	* bfd/elf32-rx.c (elf32_rx_machine): Add RXv2 and RXv3 support.

2019-01-04  Lifang Xia  <lifang_xia@c-sky.com>

	* config.bfd (csky-*-elf* | csky-*-linux*): Modify the csky
	default target, little endian target is more suitable.

2019-01-04  Alan Modra  <amodra@gmail.com>

	PR 24061
	PR 21786
	* coff-rs6000.c (GET_VALUE_IN_FIELD): Add base parameter and
	adjust all callers.
	(EQ_VALUE_IN_FIELD): Likewise.
	* coff64-rs6000.c (GET_VALUE_IN_FIELD): Likewise.

2019-01-01  Alan Modra  <amodra@gmail.com>

	Update year range in copyright notice of all files.

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