2014-06-20  Petr Machata  <pmachata@redhat.com>

	* alpha_retval.c (alpha_return_value_location): Call
	dwarf_peeled_die_type instead of inlining equivalent code.
	* arm_retval.c (arm_return_value_location): Likewise.
	* i386_retval.c (i386_return_value_location): Likewise.
	* ia64_retval.c (ia64_return_value_location): Likewise.
	* ppc64_retval.c (ppc64_return_value_location): Likewise.
	* ppc_retval.c (ppc_return_value_location): Likewise.
	* s390_retval.c (s390_return_value_location): Likewise.
	* sh_retval.c (sh_return_value_location): Likewise.
	* sparc_retval.c (sparc_return_value_location): Likewise.
	* tilegx_retval.c (tilegx_return_value_location): Likewise.
	* x86_64_retval.c (x86_64_return_value_location): Likewise.

2014-05-19  Mark Wielaard  <mjw@redhat.com>

	* arm_init.c (arm_init): Hook check_reloc_target_type.
	* arm_symbol.c (arm_check_reloc_target_type): New function.
	* ia64_init.c (ia64_init): Hook check_reloc_target_type.
	* ia64_symbol.c (ia64_check_reloc_target_type): New function.

2014-04-22  Kurt Roeckx  <kurt@roeckx.be>

	* i386_initreg.c: Make Linux only.
	* x86_64_initreg.c: Make Linux only.

2014-04-13  Mark Wielaard  <mjw@redhat.com>

	* Makefile.am: Remove libelf and libdw definitions when MUDFLAP
	is defined. Remove libmudflap from LINK line.

2014-04-09  Mark Wielaard  <mjw@redhat.com>

	* Makefile.am (aarch64_SRCS): Add aarch64_initreg.c.
	* aarch64_corenote.c (prstatus_regs): Mark pc_register.
	* aarch64_init.c: Assign frame_nregs. Hook set_initial_registers_tid.
	* aarch64_initreg: New file.

2014-03-28  Jean Pihet  <jean.pihet@linaro.org>

	* arm_initreg.c (arm_set_initial_registers_tid): Handle compat mode.
	ARM compatible code running on AARCH64.

2014-03-19  Mark Wielaard  <mjw@redhat.com>

	* aarch64_reloc.def: AARCH64_ABS32 and AARCH64_ABS64 are also valid
	in ET_REL.

2014-01-30  Petr Machata  <pmachata@redhat.com>

	* aarch64_regs.c (aarch64_register_info.regtype): Make this
	variadic printf-like function.  Call one vsnprintf instead of two
	snprintf's.
	(regtyper, regtypen): Drop.
	(aarch64_register_info): Adjust callers.

2014-01-26  Mark Wielaard  <mjw@redhat.com>

	* Makefile.am (arm_SRCS): Add arm_initreg.c.
	* arm_init.c (arm_init): Define frame_nregs and hook
	set_initial_registers_tid.
	* arm_initreg.c: New file.

2014-01-25  Mark Wielaard  <mjw@redhat.com>

	* arm_cfi.c (arm_abi_cfi): Restore SP (r13) from CFA.

2014-01-24  Mark Wielaard  <mjw@redhat.com>

	* arm_reloc.def: Update list.

2014-01-22  Mark Wielaard  <mjw@redhat.com>

	* Makefile.am (aarch64_regs_no_Wformat): Removed.
	* aarch64_regs.c (regtype): Add bool nr argument. snprintf arg
	when nr is true.
	(regtyper): New function.
	(regtypen): Likewise.
	(aarch64_register_info): Call either regtyper or regtypen not
	regtype directly.

2014-01-14  Mark Wielaard  <mjw@redhat.com>

	* aarch64_symbol.c (aarch64_check_special_symbol): Check shdr is
	not NULL before usage.

2014-01-04  Mark Wielaard  <mjw@redhat.com>

	* ppc64_symbol.c (ppc64_machine_flag_check): New function.
	* ppc64_init.c (ppc64_init): Hook machine_flag_check.

2014-01-03  Mark Wielaard  <mjw@redhat.com>

	* Makefile.am (aarch64_SRCS): Add aarch64_cfi.c.
	* aarch64_cfi.c: New file.
	* aarch64_init.c (aarch64_init): Hook abi_cfi.
	* aarch64_regs.c (aarch64_register_info): Set *prefix to "".

2013-12-19  Mark Wielaard  <mjw@redhat.com>

	* aarch64_init.c (aarch64_init): Hook check_special_symbol.
	* aarch64_symbol.c (aarch64_check_special_symbol): New function.

2013-12-18  Mark Wielaard  <mjw@redhat.com>

	* Makefile.am (ppc64_SRCS): Add ppc64_resolve_sym.c.
	* ppc64_resolve_sym.c: New file.
	* ppc64_init.c: Hook resolve_sym_value and find function descriptor
	table.

2013-12-18  Mark Wielaard  <mjw@redhat.com>

	* s390_initreg.c (s390_set_initial_registers_tid): Use union
	to avoid type-punning when assigning a double to a Dwarf_Word.

2013-12-18  Jan Kratochvil  <jan.kratochvil@redhat.com>

	unwinder: s390 and s390x
	* Makefile.am (s390_SRCS): Add s390_initreg.c and s390_unwind.c.
	* s390_corenote.c (prstatus_regs): Set PC_REGISTER.  Reindent all the
	entries.
	* s390_init.c (s390_init): Initialize frame_nregs,
	set_initial_registers_tid, normalize_pc and unwind.
	* s390_initreg.c: New file.
	* s390_unwind.c: New file.

2013-12-15  Jan Kratochvil  <jan.kratochvil@redhat.com>

	unwinder: ppc and ppc64
	* Makefile.am (ppc_SRCS, ppc64_SRCS): Add ppc_initreg.c.
	* ppc64_init.c (ppc64_init): Initialize also frame_nregs,
	set_initial_registers_tid and dwarf_to_regno.
	* ppc_corenote.c (PRSTATUS_REGSET_ITEMS) <nip>: Set PC_REGISTER.
	* ppc_init.c (ppc64_init): Initialize also frame_nregs,
	set_initial_registers_tid and dwarf_to_regno.
	* ppc_initreg.c: New file.

2013-11-25  Petr Machata  <pmachata@redhat.com>

	* Makefile.am (modules): Add aarch64.
	(libebl_pic): Add libebl_aarch64_pic.a.
	(aarch64_SRCS): New variable.
	(libebl_aarch64_pic_a_SOURCES): Likewise.
	(am_libebl_aarch64_pic_a_OBJECTS): Likewise.
	(aarch64_regs_no_Wformat): Likewise.
	* aarch64_corenote.c, aarch64_init.c: New files.
	* aarch64_regs.c, aarch64_reloc.def: Likewise.
	* aarch64_retval.c, aarch64_symbol.c: Likewise.
	* libebl_CPU.h (dwarf_peel_type): New function.
	(dwarf_peeled_die_type): Likewise.

2013-11-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
	    Mark Wielaard  <mjw@redhat.com>

	* Makefile.am (i386_SRCS): Add i386_initreg.c.
	(x86_64_SRCS): Add x86_64_initreg.c.
	* i386_initreg.c: New file.
	* i386_init.c (i386_init): Initialize frame_nregs and
	set_initial_registers_tid.
	* x86_64_initreg.c: New file.
	* x86_64_init.c (x86_64_init): Initialize frame_nregs and
	set_initial_registers_tid.

2013-10-06  Mark Wielaard  <mjw@redhat.com>

	* ppc_cfi.c (ppc_abi_cfi): Use DW_CFA_val_offset for reg1, not
	DW_CFA_val_expression.

2013-08-29  Mark Wielaard  <mjw@redhat.com>

	* Makefile.am (arm_SRCS): Add arm_cfi.c.
	* arm_cfi.c: New file.
	* arm_init.c (arm_init): Initialize abi_cfi.

2013-08-27  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* Makefile.am (ppc_SRCS, ppc64_SRCS): Add ppc_cfi.c.
	(s390_SRCS): Add s390_cfi.c.
	* ppc64_init.c (ppc64_init): Initialize abi_cfi.
	* ppc_cfi.c: New file.
	* ppc_init.c (ppc_init): Initialize abi_cfi.
	* s390_cfi.c: New file.
	* s390_init.c (s390_init): Initialize abi_cfi.

2013-08-28  Mark Wielaard  <mjw@redhat.com>

	* arm_regs.c (arm_register_info): Set *prefix to "".
	* ppc_regs.c (ppc_register_info): Likewise.
	* sh_regs.c (sh_register_info): Likewise.

2013-04-24  Mark Wielaard  <mjw@redhat.com>

	* Makefile.am: Use AM_CPPFLAGS instead of INCLUDES.

2013-02-06  Mark Wielaard  <mjw@redhat.com>

	* libebl_CPU.h (DWARF_TAG_OR_RETURN): New macro.
	* backends/alpha_retval.c (alpha_return_value_location): Use new
	DWARF_TAG_OR_RETURN macro instead of dwarf_tag ().
	* backends/arm_retval.c (arm_return_value_location): Likewise.
	* backends/i386_retval.c (i386_return_value_location): Likewise.
	* backends/ia64_retval.c (hfa_type): Likewise.
	(ia64_return_value_location): Likewise.
	* backends/ppc64_retval.c (ppc64_return_value_location): Likewise.
	* backends/ppc_retval.c (ppc_return_value_location): Likewise.
	* backends/s390_retval.c (s390_return_value_location): Likewise.
	* backends/sh_retval.c (sh_return_value_location): Likewise.
	* backends/sparc_retval.c (sparc_return_value_location): Likewise.
	* backends/tilegx_retval.c (tilegx_return_value_location): Likewise.
	* backends/x86_64_retval.c (x86_64_return_value_location): Likewise.

2013-01-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
	    Roland McGrath <roland@hack.frob.com>

	* Makefile.am (s390_SRCS): Add s390_corenote.c and s390x_corenote.c.
	* linux-core-note.c (ALIGN_PR_REG): New definitions.
	(struct EBLHOOK(prstatus)): Change field pr_reg to anonymous struct with
	ALIGN_PR_REG.
	(EXTRA_ITEMS): New macro.
	* s390_corenote.c: New file.
	* s390_init.c (s390x_core_note): New declaration.
	(s390_init): Install s390x_core_note and s390_core_note.
	* s390x_corenote.c: New file.

2013-01-30  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* arm_corenote.c (vfp_items): Remove zero COUNT initializer.

2012-10-12  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* linux-core-note.c (prstatus_items): Rename groups of sigpend and
	sighold to signal2 and signal3.

2012-09-24  Petr Machata  <pmachata@redhat.com>

	* arm_corenote.c (vfp_items, vfp_regs): New const variables.
	(EXTRA_NOTES): Use it for NT_ARM_VFP.
	* linux-core-note.c (EXTRA_REGSET_ITEMS): New macro.

2012-09-17  Petr Machata  <pmachata@redhat.com>

	* arm_corenote.c (FPREGSET_SIZE): Change to 116.

2012-08-22  Jeff Kenton  <jkenton@tilera.com>

	* Makefile.am (modules): Add tilegx.
	(libebl_pic): Add libebl_tilegx_pic.a.
	(tilegx_SRCS): New variable.
	(libebl_tilegx_pic_a_SOURCES): Likewise.
	(am_libebl_tilegx_pic_a_OBJECTS): Likewise.
	* tilegx_corenote.c: New file.
	* tilegx_regs.c: New file.
	* tilegx_reloc.def: New file.
	* tilegx_init.c: New file.
	* tilegx_retval.c: New file.
	* tilegx_symbol.c: New file.

2011-03-09  Mark Wielaard  <mjw@redhat.com>

	* alpha_init.c (alpha_init): Initialize check_st_other_bits hook.
	* alpha_symbol.c (alpha_check_st_other_bits): New function.

2011-03-09  Roland McGrath  <roland@redhat.com>

	* alpha_symbol.c (alpha_check_special_symbol): New function.
	* alpha_init.c (alpha_init): Initialize hook.

2010-11-08  Roland McGrath  <roland@redhat.com>

	* i386_retval.c (loc_intreg): Typo fix.
	Reported by Thorsten Glaser <tg@mirbsd.de>.

2010-04-10  Matt Fleming  <matt@console-pimps.org>

	* sh_corenote.c: New file.
	* sh_regs.c: New file.
	* sh_retval.c: New file.
	* sh_symbol.c (sh_machine_flag_check): New function.
	* Makefile.am (sh_SRCS): Add new files.
	* sh_init.c (sh_init): Add initializers.

2010-04-07  Roland McGrath  <roland@redhat.com>

	* arm_reloc.def: Accept PC24 and ABS32 in EXEC|DYN too.

2010-03-04  Ulrich Drepper  <drepper@redhat.com>

	* x86_64_reloc.def: Add entries for R_X86_64_SIZE32 and
	R_X86_64_SIZE64.

2010-02-18  Roland McGrath  <roland@redhat.com>

	* Makefile.am (libebl_%.so): Use multi-target pattern rule instead of
	intermediate dependency file for libebl_%.map, working around apparent
	make -j timing-sensitive bugs.

2010-02-15  Roland McGrath  <roland@redhat.com>

	* Makefile.am: Use config/eu.am for common stuff.

2010-01-05  Roland McGrath  <roland@redhat.com>

	* arm_retval.c (arm_return_value_location): Use dwarf_aggregate_size.
	* ia64_retval.c (ia64_return_value_location): Likewise.
	* ppc_retval.c (ppc_return_value_location): Likewise.
	* ppc64_retval.c (ppc64_return_value_location): Likewise.
	* sparc_retval.c (sparc_return_value_location): Likewise.

	* ppc64_retval.c (ppc64_return_value_location):
	Use vr2 for DW_TAG_array_type with DW_AT_GNU_vector.
	* ppc_retval.c (ppc_return_value_location): Likewise.

2010-01-04  Roland McGrath  <roland@redhat.com>

	* linux-core-note.c (vmcoreinfo_items): New static const variable.
	(EBLHOOK(core_note)): Update arguments for new protocol.
	Validate the name as "CORE" or "LINUX" for known n_type cases.
	Handle name "VMCOREINFO" n_type=0 with vmcoreinfo_items.
	* i386_corenote.c (EXTRA_NOTES): Update parameter usage.
	* x86_corenote.c (EXTRA_NOTES_IOPERM): Likewise.

2009-09-10  Mark Wielaard  <mjw@redhat.com>

	* sparc_retval.c: Fix license header.

2009-08-07  Roland McGrath  <roland@redhat.com>

	* x86_64_reloc.def: Add PC64, GOTOFF64, GOTPC32, GOTPC32_TLSDESC,
	TLSDESC_CALL, TLSDESC.

2009-07-08  Roland McGrath  <roland@redhat.com>

	* x86_64_cfi.c (x86_64_abi_cfi): New file.
	* Makefile.am (x86_64_SRCS): Add it.
	* x86_64_init.c (x86_64_init): Add initializer.

	* i386_cfi.c (i386_abi_cfi): New file.
	* Makefile.am (i386_SRCS): Add it.
	* i386_init.c (i386_init): Initialize abi_cfi hook.

2009-06-01  Ulrich Drepper  <drepper@redhat.com>

	* i386_reloc.def: Add IRELATIVE entry.
	* x86_64_reloc.def: Likewise.

2009-04-16  Roland McGrath  <roland@redhat.com>

	* arm_regs.c (arm_register_info): Handle VFP registers.

	* i386_corenote.c (EXTRA_NOTES): NT_PRXFPREG -> NT_PRXFPREG

2009-04-14  Roland McGrath  <roland@redhat.com>

	* arm_retval.c: New file.
	* arm_attrs.c: New file.
	* Makefile.am (arm_SRCS): Add them.
	* arm_symbol.c (arm_segment_type_name): New function.
	(arm_section_type_name): New function.
	(arm_machine_flag_check): New function.
	* arm_init.c (arm_init): Initialize those hooks.

	* arm_regs.c: New file.
	* arm_corenote.c: New file.
	* arm_auxv.c: New file.
	* Makefile.am (arm_SRCS): Add them.
	* arm_init.c (arm_init): Initialize core_note, register_info,
	and auxv_info hooks.

	* ia64_symbol.c (ia64_section_type_name): Remove "SHT_" prefixes.

2009-04-01  Roland McGrath  <roland@redhat.com>

	* sparc_reloc.def: Update table.
	Data from Dave Miller <davem@davemloft.net>.

2009-02-15  Roland McGrath  <roland@redhat.com>

	* ppc_attrs.c (ppc_check_object_attribute): Handle tag
	GNU_Power_ABI_Struct_Return.

2008-10-04  Ulrich Drepper  <drepper@redhat.com>

	* i386_reloc.def: Fix entries for TLS_GOTDESC, TLS_DESC_CALL, and
	TLS_DESC.

2008-08-01  Roland McGrath  <roland@redhat.com>

	* x86_corenote.c: New file.
	* Makefile.am (noinst_HEADERS): Add it.
	* i386_corenote.c: Include it, use EXTRA_NOTES_IOPERM in EXTRA_NOTES.
	* x86_64_corenote.c: Likewise.

	* linux-core-note.c (prstatus_items): Use 'B' instead of 'b'
	for sigpend and sighold.

2008-07-04  Roland McGrath  <roland@redhat.com>

	* i386_syscall.c: New file.
	* x86_64_syscall.c: New file.
	* ppc_syscall.c: New file.
	* Makefile.am (i386_SRCS, x86_64_SRCS, ppc_SRCS, ppc64_SRCS): Add them.
	* i386_init.c (i386_init): Initialize syscall_abi hook.
	* x86_64_init.c (x86_64_init): Likewise.
	* ppc_init.c (ppc_init): Likewise.
	* ppc64_init.c (ppc64_init): Likewise.

	* ppc_corenote.c (PRSTATUS_REGSET_ITEMS): Add nip.
	Fix offset calculation for 64-bit case.

2008-04-04  Roland McGrath  <roland@redhat.com>

	* alpha_symbol.c (alpha_check_special_section): New function.
	* alpha_init.c (alpha_init): Initialize check_special_section hook.

2008-03-31  Roland McGrath  <roland@redhat.com>

	* sparc_symbol.c (sparc_symbol_type_name): New function.
	(sparc_dynamic_tag_name): New function.
	(sparc_dynamic_tag_check): New function.
	* sparc_init.c (sparc_init): Initialize those hooks.

	* sparc_symbol.c (sparc_check_special_section): New function.
	* sparc_init.c (sparc_init): Initialize check_special_section hook.

2008-02-20  Roland McGrath  <roland@redhat.com>

	* ppc_attrs.c: New file.
	* Makefile.am (ppc_SRCS, ppc64_SRCS): Add it.
	* ppc_init.c (ppc_init): Initialize check_object_attribute hook.

2008-02-14  Roland McGrath  <roland@redhat.com>

	* alpha_auxv.c: New file.
	* Makefile.am (alpha_SRCS): Add it.
	* alpha_init.c (alpha_init): Initialize auxv_info hook.

2008-02-08  Roland McGrath  <roland@redhat.com>

	* ppc_corenote.c (spe_regs): New const variable.
	(EXTRA_NOTES): Use it for NT_PPC_SPE.

2008-01-02  Roland McGrath  <roland@redhat.com>

	* i386_corenote.c (tls_items): New const table.
	(tls_info): New function, uses it.
	(EXTRA_NOTES): Use it to handle NT_386_TLS.

2008-01-08  Ulrich Drepper  <drepper@redhat.com>

	* Makefile.am: Add x86-64 disassembler.
	* x86_64_init.c (x86_64_init): Hook up disassembler.

2007-12-28  Ulrich Drepper  <drepper@redhat.com>

	* Makefile.am: Add x86 disassembler.
	* i386_init.c (i386_init): Hook up disassembler.

2007-12-15  Roland McGrath  <roland@redhat.com>

	* ppc_regs.c (ppc_register_info): Return "spefscr", not "spr512".

2007-10-18  Roland McGrath  <roland@redhat.com>

	* ppc_regs.c (ppc_register_info): Assign 67 to "vscr".
	Return "vector" and 32 bits for vscr and vrsave.
	* ppc_corenote.c (altivec_regs): New variable.
	(EXTRA_NOTES): New macro, handle NT_PPC_VMX.

	* linux-core-note.c (EXTRA_REGSET): New macro.
	Remove NT_PRXFPREG case.  Instead, use EXTRA_NOTES if defined.
	* i386_corenote.c (EXTRA_NOTES): Define it.

2007-10-09  Roland McGrath  <roland@redhat.com>

	* sparc_auxv.c: New file.
	* Makefile.am (sparc_SRCS): Add it.
	* sparc_init.c (sparc_init): Initialize auxv_info hook.

2007-10-08  Roland McGrath  <roland@redhat.com>

	* linux-core-note.c (TIMEVAL_FIELD): New macro.
	(prstatus_items): Use it.
	* sparc_corenote.c: New file.
	* sparc64_corenote.c: New file.
	* Makefile.am (sparc_SRCS): Add them.
	* sparc_init.c (sparc_init): Initialize core_note hook.

	* sparc_symbol.c (sparc_machine_flag_check): New function.
	* sparc_init.c (sparc_init): Use it.

2007-09-27  Roland McGrath  <roland@redhat.com>

	* alpha_retval.c: Use dwarf_attr_integrate and dwarf_hasattr_integrate.
	* i386_retval.c: Likewise.
	* ia64_retval.c: Likewise.
	* ppc64_retval.c: Likewise.
	* ppc_retval.c: Likewise.
	* s390_retval.c: Likewise.
	* sparc_retval.c: Likewise.
	* x86_64_retval.c: Likewise.

2007-10-31  Ulrich Drepper  <drepper@redhat.com>

	* Makefile.am: More dependencies for the libebl_* libraries.

2007-08-23  Roland McGrath  <roland@redhat.com>

	* x86_64_regs.c (x86_64_register_info): Put %rflags in "integer" set.

2007-08-22  Roland McGrath  <roland@redhat.com>

	* linux-core-note.c (prstatus_items): Add .group initializers.
	(prpsinfo_items): Likewise.
	* x86_64_corenote.c (PRSTATUS_REGSET_ITEMS): Likewise.
	* i386_corenote.c (PRSTATUS_REGSET_ITEMS): Likewise.
	* ppc_corenote.c (PRSTATUS_REGSET_ITEMS): Likewise.

2007-08-20  Roland McGrath  <roland@redhat.com>

	* ppc_symbol.c (ppc_check_special_symbol): For _GLOBAL_OFFSET_TABLE_
	when DT_PPC_GOT is not found, anywhere in the section is valid.

2007-08-19  Roland McGrath  <roland@redhat.com>

	* i386_auxv.c: New file.
	* Makefile.am (i386_SRCS, x86_64_SRCS): Add it.
	* ppc_auxv.c: New file.
	* Makefile.am (ppc_SRCS, ppc64_SRCS): Add it.
	* i386_init.c (i386_init): Initialize auxv_info hook.
	* x86_64_init.c (x86_64_init): Likewise.
	* ppc_init.c (ppc_init): Likewise.
	* ppc64_init.c (ppc64_init): Likewise.

	* alpha_corenote.c: New file.
	* Makefile.am (alpha_SRCS): Add it.
	* alpha_init.c (alpha_init): Initialize core_note hook.

	* ppc_corenote.c: New file.
	* ppc64_corenote.c: New file.
	* Makefile.am (ppc_SRCS, ppc64_SRCS): Add them.
	* ppc_init.c (ppc_init): Initialize core_note hook.
	* ppc64_init.c (ppc64_init): Likewise.

	* linux-core-note.c: New file.
	* Makefile.am (noinst_HEADERS): Add it.
	* i386_corenote.c: Rewritten.
	* x86_64_corenote.c: Likewise.

2007-05-23  Roland McGrath  <roland@redhat.com>

	* alpha_regs.c (alpha_register_info): fp -> s6

2007-04-26  Roland McGrath  <roland@redhat.com>

	* alpha_symbol.c (alpha_machine_section_flag_check): New function.
	* alpha_init.c (alpha_init): Initialize hook.

	* alpha_regs.c: New file.
	* Makefile.am (alpha_SRCS): Add it.
	* alpha_init.c (alpha_init): Initialize register_info hook.

2007-04-22  Roland McGrath  <roland@redhat.com>

	* ppc_regs.c (ppc_register_info): Use some names instead of sprNNN:
	mq, xer, lr, ctr, dsisr, dar, dec, vrsave.
	Set *BITS to 64 for FPU registers.

	* i386_regs.c (i386_register_info): Set *BITS to 16 for fctrl, fstat.
	* x86_64_regs.c (x86_64_register_info): Likewise for fcw, fsw.

2007-04-01  Roland McGrath  <roland@redhat.com>

	* x86_64_regs.c (x86_64_register_info): Add more registers from newer
	ABI spec.

2007-01-11  Roland McGrath  <roland@redhat.com>

	* ia64_symbol.c (ia64_machine_section_flag_check): New function.
	* ia64_init.c (ia64_init): Use it.

	* ia64_symbol.c (ia64_section_type_name): Typo fix in string.

2006-10-09  Roland McGrath  <roland@redhat.com>

	* ia64_symbol.c (ia64_reloc_simple_type): Treat SECREL types as simple.

2006-08-29  Roland McGrath  <roland@redhat.com>

	* sparc_retval.c: New file.
	* Makefile.am (sparc_SRCS): Add it.
	* sparc_init.c (sparc_init): Initialize return_value_location hook.

2006-08-22  Roland McGrath  <roland@redhat.com>

	* i386_regs.c (i386_register_name): Renamed i386_register_info.
	Take new args, yield more info.
	* i386_init.c (i386_init): Update initializer.
	* ia64_regs.c (ia64_register_name): Likewise.
	* ia64_init.c (ia64_init): Likewise.
	* ppc_regs.c (ppc_register_name): Likewise.
	* ppc64_init.c (ppc64_init): Likewise.
	* ppc_init.c (ppc_init): Likewise.
	* s390_regs.c (s390_register_name): Likewise.
	* s390_init.c (s390_init): Likewise.
	* sparc_regs.c (sparc_register_name): Likewise.
	* sparc_init.c (sparc_init): Likewise.
	* x86_64_regs.c (x86_64_register_name): Likewise.
	* x86_64_init.c (x86_64_init): Likewise.

2006-08-08  Roland McGrath  <roland@redhat.com>

	* Makefile.am (%.os): Don't depend on %.o, since we don't actually
	need static object for anything here.  This rule is the only source of
	.deps/ files.

2006-06-23  Stepan Kasal  <skasal@redhat.com>

	* Makefile.am (PACKAGE_VERSION): Remove superfluous definition.

2006-08-03  Roland McGrath  <roland@redhat.com>

	* sparc_regs.c (sparc_register_name): List 32 FPU regs only for
	EM_SPARC.  EM_SPARC32PLUS also has 64.

2006-07-21  Roland McGrath  <roland@redhat.com>

	* i386_regs.c (i386_register_name): Fix return value when using stpcpy.
	* ppc_regs.c (ppc_register_name): Likewise.
	* s390_regs.c (s390_register_name): Likewise.

	* ia64_retval.c: New file.
	* Makefile.am (ia64_SRCS): Add it.
	* ia64_init.c (ia64_init): Install return_value_location hook.

	* ia64_regs.c: New file.
	* Makefile.am (ia64_SRCS): Add it.
	* ia64_init.c (ia64_init): Install register_name hook.

2006-07-05  Ulrich Drepper  <drepper@redhat.com>

	* alpha_init.c: Initialize sysvhash_entrysize.
	* s390_init.c: Likewise.

2006-07-04  Ulrich Drepper  <drepper@redhat.com>

	* common-reloc.c (relative_reloc_p): New function.
	(init_reloc): Hook it up.
	* ia64_reloc.def: Define NO_RELATIVE_RELOC.

2006-06-13  Roland McGrath  <roland@redhat.com>

	* ppc64_retval.c: Remove SVR4_STRUCT_RETURN braino.

2006-06-12  Ulrich Drepper  <drepper@redhat.com>

	* common-reloc.c (none_reloc_p): New function.
	(init_reloc): Hook it up.

2006-02-22  Roland McGrath  <roland@redhat.com>

	* ppc64_retval.c (SVR4_STRUCT_RETURN): New macro.
	(ppc64_return_value_location): Use registers for aggregate conditional
	on that.
	* ppc_retval.c (SVR4_STRUCT_RETURN): New macro.
	(ppc_return_value_location): Use registers for aggregate conditional
	on that.

2006-01-12  Roland McGrath  <roland@redhat.com>

	* s390_retval.c: New file.
	* Makefile.am (s390_SRCS): Add it.
	* s390_init.c (s390_init): Install return_value_location hook.

2006-01-11  Roland McGrath  <roland@redhat.com>

	* s390_regs.c: New file.
	* Makefile.am (s390_SRCS): Add it.
	* s390_init.c (s390_init): Install register_name hook.

	* s390_reloc.def: Update bits per
	Martin Schwidefsky <schwidefsky@de.ibm.com>.

2005-12-10  Ulrich Drepper

	* common-reloc.c (R_NAME): Generate string correctly.

2005-12-05  Roland McGrath  <roland@redhat.com>

	* i386_regs.c (i386_register_name): Use a table for the first 8 regs.
	* x86_64_regs.c (x86_64_register_name): Likewise.

2005-11-25  Roland McGrath  <roland@redhat.com>

	* i386_regs.c (i386_register_name): Return 0, not 1, for gaps.

	* i386_regs.c: New file.
	* ppc_regs.c: New file.
	* sparc_regs.c: New file.
	* x86_64_regs.c: New file.
	* Makefile.am
	(i386_SRCS, x86_64_SRCS, ppc_SRCS, ppc64_SRCS, sparc_SRCS): Add them.
	* i386_init.c: Initialize register_name hook.
	* ppc_init.c: Likewise.
	* ppc64_init.c: Likewise.
	* sparc_init.c: Likewise.
	* x86_64_init.c: Likewise.

2005-11-19  Roland McGrath  <roland@redhat.com>

	* ppc64_reloc.def: REL30 -> ADDR30.

2005-11-18  Roland McGrath  <roland@redhat.com>

	* alpha_init.c: Use HOOK macro.
	* arm_init.c: Likewise.
	* i386_init.c: Likewise.
	* ia64_init.c: Likewise.
	* ppc64_init.c: Likewise.
	* ppc_init.c: Likewise.
	* s390_init.c: Likewise.
	* sh_init.c: Likewise.
	* sparc_init.c: Likewise.
	* x86_64_init.c: Likewise.

2005-11-17  Roland McGrath  <roland@redhat.com>

	* Makefile.am (uninstall): Don't try to remove $(pkgincludedir).
	(CLEANFILES): Add libebl_$(m).so.

	* ppc_reloc.def: Update bits per Alan Modra <amodra@bigpond.net.au>.
	* ppc64_reloc.def: Likewise.

2005-11-15  Roland McGrath  <roland@redhat.com>

	* Contents moved here from ../libebl.
