+2005-04-29 Mark Mitchell <mark@codesourcery.com>
+
+ * config/arm/arm.h (ARM_EABI_CTORS_SECTION_OP): Do not define if a
+ definition has already been provided.
+ (ARM_EABI_DTORS_SECTION_OP): Likewise.
+ * config/arm/symbian.h (ARM_EABI_CTORS_SECTION_OP): Define.
+ (ARM_EABI_DTORS_SECTION_OP): Likewise.
+
+2005-04-29 Jim Tison <jtison@us.ibm.com>
+
+ * config/s390/s390.md ("prologue_tpf", "epilogue_tpf"): Alter
+ trace hooks calls to improve performance.
+
+2005-04-29 Julian Brown <julian@codesourcery.com>
+ Mark Mitchell <mark@codesourcery.com>
+ Paul Brook <paul@codesourcery.com>
+
+ * crtstuff.c: Handle targets that use .init_array.
+ * function.c (HAS_INIT_SECTION): Do not define. Instead, make sure
+ that INVOKE__main is set correctly.
+ (expand_main_function): Test INVOKE__main.
+ * libgcc2.c: Do not define __main when using .init_array.
+ * config/arm/arm.c (arm_elf_asm_constructor): New function.
+ * config/arm/arm.h (CTORS_SECTION_ASM_OP): Define, with specialized
+ libgcc version.
+ (DTORS_SECTION_ASM_OP): Likewise.
+ (CTOR_LIST_BEGIN): Define specially when in libgcc.
+ (CTOR_LIST_END): Likewise.
+ (DTOR_LIST_BEGIN): Likewise.
+ (DTOR_LIST_END): Likewise.
+ * config/arm/bpapi.h (INIT_SECTION_ASM_OP): Do not define it.
+ (FINI_SECTION_ASM_OP): Likewise.
+ (INIT_ARRAY_SECTION_ASM_OP): Define.
+ (FINI_ARRAY_SECTION_ASM_OP): Likewise.
+ * config/arm/elf.h (TARGET_ASM_CONSTRUCTOR): Define.
+ (SUPPORTS_INIT_PRIORITY): Evaluate to false for EABI based targets.
+ * doc/tm.texi (INIT_ARRAY_SECTION_ASM_OP): Document.
+ (FINI_ARRAY_SECTION_ASM_OP): Likewise.
+
+2005-04-29 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/m68k/m68k.c (m68k_initial_elimination_offset): Use
+ gcc_assert and gcc_unreachable as appropriate.
+ (output_dbcc_and_branch, output_scc_di, legitimize_pic_address,
+ const_int_cost, output_move_const_into_data_reg,
+ output_move_qimode, output_move_double, find_addr_reg,
+ print_operand, print_operand_address): Likewise.
+ * config/m68k/m68k.md (adddi3, subdi3, negsf2, negdf2, abssf2,
+ absdf2, sordered, sunordered, suneq, sunge, sungt, sunle, sunlt,
+ sltgt, bordered, bunordered, buneq, bunge, bungt, bunle, bunlt,
+ bltgt, *bordered_rev, *bunordered_rev, *buneq_rev, *bunge_rev,
+ *bunle_rev, *bunlt_rev, *bltgt_rev, negxf2, absxf2,
+ conditional_trap): Likewise.
+ * config/m68k/m68kelf.h (ASM_OUTPUT_ALIGN): Remove unreachable code.
+
+2005-04-29 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/xtensa/xtensa.c (gen_int_relational): Use gcc_assert and
+ gcc_unreachable as appropriate.
+ (gen_conditional_move, xtensa_split_operand_pair,
+ xtensa_split_operand_pair, xtensa_copy_incoming_a7,
+ xtensa_copy_incoming_a7, xtensa_copy_incoming_a7,
+ xtensa_copy_incoming_a7, xtensa_output_literal,
+ xtensa_output_literal, xtensa_output_literal): Likewise.
+ * config/xtensa/xtensa.h (INITIAL_ELIMINATION_OFFSET): Likewise.
+ * config/xtensa/xtensa.md (*btrue, *bfalse, *ubtrue, *ubfalse,
+ *bittrue, *bitfalse, *masktrue, *maskfalse, movsicc_internal0,
+ movsicc_internal1, movsfcc_internal0,
+ movsfcc_internal1): Likewise.
+
+2005-04-28 James E Wilson <wilson@specifixinc.com>
+
+ * config/i386/i386.h (HI_REGISTER_NAMES): Fix typos in comment.
+ (ADDITIONAL_REGISTER_NAMES): Delete obsolete mmx register entries.
+
2005-04-28 DJ Delorie <dj@redhat.com>
* opt-functions.awk (var_set): Emit proper initializer for