OSDN Git Service

* bb-reorder.c (make_reorder_chain_1): Protect against
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index ba8d64a..a975304 100644 (file)
@@ -1,3 +1,518 @@
+2002-03-21  DJ Delorie  <dj@redhat.com>
+
+       * bb-reorder.c (make_reorder_chain_1): Protect against
+       when redundant edges are omitted.
+       * predict.c (dump_prediction): Likewise.
+
+2002-03-21  Richard Henderson  <rth@redhat.com>
+
+       PR target/5996
+       * fixinc/inclhack.def (solaris_stdio_tag): New.
+       * fixinc/fixincl.x: Regenerate.
+
+2002-03-21  Eric Botcazou <ebotcazou@multimania.com>
+
+       PR c/5597
+       * c-typeck.c (process_init_element): Flag non-static
+       initialization of a flexible array member as illegal.
+
+2002-03-22  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/t-linux64: New.
+       * config.gcc (powerpc64-*-linux* <tmake_file>): Drop t-ppcos and
+       t-ppccomm.  Use t-rs6000 and t-linux64.
+       (powerpc64-*-gnu* <tmake_file>): Likewise.
+       * mklibgcc.in (SHLIB_MKMAP_OPTS): New variable.
+       * mkmap-symver.awk (dotsyms): If set, output .foo as well as foo.
+       * Makefile.in (SHLIB_MKMAP_OPTS): Pass to mklibgcc.
+
+2002-03-21  Aldy Hernandez  <aldyh@redhat.com>
+
+       * langhooks.c (lhd_tree_inlining_cannot_inline_tree_fn): Check
+       flag_really_no_inline instead of optimize == 0.
+
+       * c-objc-common.c (c_cannot_inline_tree_fn): Same.
+
+       * cp/tree.c (cp_cannot_inline_tree_fn): Same.
+
+       * flags.h (flag_really_no_inline): New.
+
+       * c-common.c (c_common_post_options): Initialzie
+       flag_really_no_inline.
+
+       * toplev.c (flag_really_no_inline): New.
+
+2002-03-21  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/avr/avr.md (length): Fix length computation for
+       conditional branches.
+
+2002-03-21  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * Makefile.in (fold-const.o, stor-layout.o, stmt.o,
+       sdbout.o, profile.o): Update.
+       * c-common.c (c_common_nodes_and_builtins): Use pushdecl
+       langhook.
+       * c-common.h (gettags): Move here from tree.h.
+       * c-tree.h (pushdecl, pushlevel, poplevel, set_block,
+       insert_block, getdecls, kept_level_p, global_bindings_p): New.
+       * dbxout.c (dbxout_init): Use getdecls langhook.
+       * expr.c (expand_expr): Use insert_block langhook.
+       * fold-const.c: Include langhooks.h.
+       (fold_range_test, fold_binary_op_with_conditional_arg,
+       fold): Use global_bindings_p langhook.
+       * integrate.c (expand_inline_function): Use insert_block langhook.
+       * langhooks-def.h (LANG_HOOKS_DECLS, LANG_HOOKS_PUSHLEVEL,
+       LANG_HOOKS_POPLEVEL, LANG_HOOKS_GLOBAL_BINDINGS_P,
+       LANG_HOOKS_INSERT_BLOCK, LANG_HOOKS_SET_BLOCK, LANG_HOOKS_PUSHDECL,
+       LANG_HOOKS_GETDECLS): New.
+       (LANG_HOOKS_INITIALIZER): Update.
+       * langhooks.c (lhd_clear_binding_stack): Use global_bindings_p
+       langhook.
+       * langhooks.h (struct lang_hooks_for_decls): New.
+       (struct lang_hooks): Update.
+       * profile.c: Include langhooks.h.
+       (output_func_start_profiler): Use new langhooks.
+       * sdbout.c: Include langhooks.h.
+       (sdbout_init, sdbout_finish): Use getdecls langhook.
+       * stmt.c: Include langhooks.h.
+       (expand_fixup, fixup_gotos): Use new langhooks.
+       * stor-layout.c: Include langhooks.h.
+       (variable_size): Use global_bindings_p langhook.
+       * toplev.c (compile_file): Use getdecls langhook.
+       * tree-inline.c (remap_block): Use insert_block langhook.
+       * tree.h (pushdecl, pushlevel, poplevel, set_block, gettags,
+       insert_block, getdecls, kept_level_p, global_bindings_p): Remove.
+
+2002-03-21  Richard Henderson  <rth@redhat.com>
+
+       * config/rs6000/rs6000.c (rs6000_select_rtx_section): Put symbolic
+       constants in .data when -fpic.
+
+2002-03-21  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/contrib.texi (Contributors): Use GNU/Linux instead of Linux
+       where appropriate.
+
+2002-03-21  Tom Tromey  <tromey@redhat.com>
+
+       * config/i386/sol2.h (ASM_QUAD): Undef.  Fixes PR bootstrap/5948.
+
+Thu Mar 21 09:50:48 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * config/ia64/ia64.c (hfa_element_mode, case ARRAY_TYPE): Recurse.
+
+       * expr.c (emit_group_store): Don't copy const0_rtx to a CONCAT.
+
+2002-03-21  Eric Botcazou <ebotcazou@multimania.com>
+           Richard Henderson  <rth@redhat.com>
+
+       PR c/5354
+       * c-common.c (c_expand_expr): Preserve result of a statement
+       expression if needed.
+
+2002-03-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR bootstrap/4195
+       * genrecog.c (maybe_both_true_mode): Remove.
+       (maybe_both_true_2, write_switch): Revert 2001-07-17 changes.
+       * machmode.def (Pmode): Likewise.
+
+Thu Mar 21 01:55:06 EST 2002  John Wehle  (john@feith.com)
+
+       * alias.c: (nonlocal_mentioned_p): Use for_each_rtx.
+       (nonlocal_mentioned_p_1): New function.
+       (nonlocal_referenced_p, nonlocal_referenced_p_1): Likewise.
+       (nonlocal_set_p, nonlocal_set_p_1): Likewise.
+       (mark_constant_function): Recognize pure functions.
+       * rtl.h (global_reg_mentioned_p): New prototype.
+       * rtlanal.c (global_reg_mentioned_p,
+       global_reg_mentioned_p_1): New function.
+
+2002-03-21  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * fixinc/inclhack.def (alpha_assert): Fix assert macro in Tru64
+       UNIX assert.h.
+       * fixinc/fixincl.x: Regenerate.
+
+2002-03-20  Jason Merrill  <jason@redhat.com>
+
+       * config/i386/cygwin.h (DWARF2_UNWIND_INFO): Define to 0.
+
+2002-03-20  Michael Meissner  <meissner@redhat.com>
+
+       * doc/invoke.texi (Optimize Options): Document that -O2 sets
+       -fstrict-aliasing.
+
+2002-03-20  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.h (ASM_OUTPUT_POOL_PROLOGUE): Emit a
+       ".literal_position" directive before the constant pool.
+
+2002-03-20  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+
+       * doc/contrib.texi (Contributors): Update Geoffrey Keating.
+       Add Craig Rodrigues.
+       Add Brad Lucier to testers.
+
+2002-03-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/4792
+       * config/arc/arc.md (movsicc, movdicc, movsfcc, movdfcc): Add mode
+       to if_then_else.
+       (movsicc_insn, movdicc_insn, movsfcc_insn, movdfcc_insn): Likewise.
+       * config/arc/arc.c (arc_final_prescan_insn): Use extract_insn_cached
+       instead of insn_extract.
+
+2002-03-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR bootstrap/4192
+       * config/fr30/fr30.md (jump): Remove clobber of fixed register.
+
+       * genemit.c (output_added_clobbers_hard_reg_p): Only output return
+       stmt if some case has been output.
+
+2002-03-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/5972
+       * config/i386/i386.md (movdicc_c_rex64, movsicc_noc, movhicc_noc,
+       movsfcc_1, movdfcc_1): Add %O2.
+       * config/i386/i386.c (print_operand): Handle %ON.
+       Print . before float condition codes in Sun as cmov syntax.
+       * config/i386/sol2.h (CMOV_SUN_AS_SYNTAX): Define for Sun as.
+       * config.gcc (i[34567]86-*-solaris2*): Remove comment which is
+       no longer true.
+
+2002-03-20  Philip Blundell  <pb@nexus.co.uk>
+
+       * config/arm/arm.c (arm_output_epilogue): Don't generate separate
+       return instruction if PC was popped.
+
+2002-03-20  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.md: Remove unused type attributes.
+       (adddi_carry, subddi_carry): Change type attribute to "multi".
+
+2002-03-19  Dale Johannesen  <dalej@apple.com>
+
+       PR optimization/5999, middle-end/5731
+       * expr.c (expand_expr) [RDIV_EXPR]: Only convert real divisions into
+       multiplications by reciprocals.
+
+2002-03-20  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * Makefile.in: Update.
+       * c-common.c: Include langhooks.h.
+       (inline_forbidden_p): Use new hook.
+       * diagnostic.c: Include langhooks.h.
+       (format_with_decl, announce_function,
+       default_print_error_function): Use new hook.
+       * dwarf2out.c (dwarf2_name): Use new hook.
+       * function.c: Include langhooks.h.
+       (init_function_start): Use new hook.
+       * langhooks-def.h (lhd_decl_printable_name): New.
+       (LANGHOOKS_DECL_PRINTABLE_NAME): New.
+       (LANGHOOKS_INITIALIZER): Update.
+       * langhooks.c (lhd_decl_printable_name): New.
+       * langhooks.h (struct lang_hooks): New hook.
+       * toplev.c (decl_name, decl_printable_name): Remove.
+       (open_dump_file): Use new hook.
+       (process_options): Remove old hook.
+       * tree.h (decl_printable_name): Remove.
+objc:
+       * objc-act.c (objc_init): Remove old hook.
+       (objc_printable_name): Export.
+       * objc-act.h (objc_printable_name): New.
+       * objc-lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
+
+2002-03-19  Jim Blandy  <jimb@redhat.com>
+
+       * c-lex.c (cb_file_change): Pass the #inclusion's line number to
+       the start_source_file debug hook, not the current line number.
+
+2002-03-19  Richard Henderson  <rth@redhat.com>
+
+       * flow.c (EH_USES): Provide default.
+       (calculate_global_regs_live): Use it for EH edges and noreturn calls.
+       * doc/tm.texi (EH_USES): New.
+
+       * config/ia64/ia64.c (ia64_eh_uses): New.
+       * config/ia64/ia64-protos.h: Update.
+       * config/ia64/ia64.h (EH_USES): New.
+
+2002-03-19  Richard Henderson  <rth@redhat.com>
+
+       * varasm.c (output_constant_def): Fix stupid typo.
+
+2002-03-19  Richard Henderson  <rth@redhat.com>
+
+       PR 5879
+       * except.c (current_function_has_exception_handlers): New.
+       * except.h: Declare it.
+       * sibcall.c (optimize_sibling_and_tail_recursive_call): Use it.
+       Combine tests that disable all sibcalls for the function.
+
+2002-03-19  Olivier Hainque  <hainque@act-europe.fr>
+
+       * varasm.c (output_constant_def): Don't call ENCODE_SECTION_INFO
+       for INTEGER_CST.
+
+2002-03-19  Richard Henderson  <rth@redhat.com>
+
+       PR 5977, 5991
+       * config/ia64/ia64.c: Revert 2002-03-01 patch.
+       * config/ia64/ia64.h (INIT_EXPANDERS): New.
+
+2002-03-19  Jim Blandy  <jimb@redhat.com>
+
+       * cppmacro.c (cpp_macro_definition): Emit a space after the macro
+       name, even if the replacement list contains no tokens, as required
+       by Dwarf.
+
+2002-03-19  Jason Merrill  <jason@redhat.com>
+
+       * varasm.c (globalize_decl): Get the name from the RTL, not
+       DECL_ASSEMBLER_NAME.
+
+       * Makefile.in (LIBGCC2_DEBUG_CFLAGS): Set to -g.
+
+2002-03-19  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.md (adddi3, adddi_carry, subdi3,
+       subdi_carry): Define.
+
+2002-03-19  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (rs6000_override_options): Only warn
+       about -fpic/-fPIC if extra_warnings set.
+
+2002-03-19  David Edelsohn  <edelsohn@gnu.org>
+
+       * expr.c (expand_expr): Sign-extend CONST_INT generated from
+       TREE_STRING_POINTER.
+       * fold-const.c (fold): Delete #if 0 ARRAY_REF case.
+
+Tue Mar 19 14:12:32 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * config/sparc/sparc.h (CAN_ELMINIATE): Can only eliminate FP
+       in favor of SP if FRAME_POINTER_REQUIRED is false.
+
+2002-03-19  Lars Brinkhoff  <lars@nocrew.org>
+
+       * emit-rtl.c (gen_int_mode): New function.
+       * rtl.h: Prototype for it.
+       * combine.c (make_extraction, simplify_comparison), expmed.c
+       (store_bit_field, expand_mult_highpart, expand_divmod), expr.c
+       (convert_modes, store_field), optabs.c (expand_fix),
+       simplify-rtx.c (neg_const_int, simplify_unary_real),
+
+       * config/rs6000/rs6000.c, config/rs6000/rs6000.md:
+       Use it instead of GEN_INT (trunc_int_for_mode (...)).
+
+2002-03-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/5656
+       * langhooks.h (struct lang_hooks_for_tree_inlining): Add
+       convert_parm_for_inlining.
+       * c-lang.c (LANG_HOOKS_TREE_INLINING_CONVERT_PARM_FOR_INLINING):
+       Define.
+       * langhooks-def.h: Likewise.
+       * objc/objc-lang.c: Likewise.
+       * langhooks.c (lhd_tree_inlining_convert_parm_for_inlining): New
+       function.
+       * tree-inline.c (initialize_inlined_parameters):
+       Call convert_parm_for_inlining lang hook if needed.
+       * c-typeck.c (c_convert_parm_for_inlining): New function.
+       * c-tree.h (c_convert_parm_for_inlining): Add prototype.
+
+2002-03-18  Mark Mitchell  <mark@codesourcery.com>
+
+       * calls.c (precompute_arguments): Do not assume that temporaries 
+       can be destroyed after expanding the argument.
+       (expand_call): Likewise.
+
+2002-03-15  Eric Christopher  <echristo@redhat.com>
+
+       * config/mips/mips.md (movdf_internal2): Add two new move constraints.
+       Fix register preference on last change.
+       * config/mips/mips.c (mips_return_in_memory): New function.
+       * config/mips/mips.h (RETURN_IN_MEMORY): Use.
+       * config/mips/mips-protos.h: Declare.
+       * config/mips/abi64.h (RETURN_IN_MEMORY): Remove. Add to above.
+       * config/mips/elf64.h: Add #ifndef/#endif brackets around defaults.
+
+2002-03-18  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/mips/mips.md (andsi3) [TARGET_MIPS16]: Force operand 1 to
+       a register too.
+       (anddi3, iorsi3): Likewise.
+
+       * config/mips/mips.h (ENCODE_SECTION_INFO) [TARGET_MIPS16]: Don't
+       use %gprel for symbols that are going to be placed in linkonce
+       sections.
+
+       * config/mips/mips.h (ELIMINABLE_REGS): Can't eliminate
+       RETURN_ADDRESS_POINTER_REGNUM to $ra.
+       (CAN_ELIMINATE): Only eliminate it to $sp if a frame pointer is
+       not needed.  Disregard leaf_function_p().
+       (INITIAL_ELIMINATION_OFFSET): Adjust for elimination of rap to
+       mips16 frame pointer.
+       * config/mips/mips.md (store ra): Only to small SP offsets.
+       2001-08-22  Graham Stott  <grahams@redhat.com>
+       * config/mips/mips.h (RETURN_ADDR_RTX): For a leaf function
+       return a REG rtx for the return address register.
+
+2002-03-18  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Treat
+       constant-pool addresses as "mode-dependent".
+       (GO_IF_LEGITIMATE_ADDRESS): Rename macro arguments.
+
+2002-03-18  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/5740
+       * expr.c (emit_group_load): Use extract_bit_field if
+       needed for CONCAT arguments.
+
+2002-03-18  Richard Earnshaw  <rearnsha@arm.com>
+
+       PR target/4863
+       * arm.md (tablejump): Make this a define_expand.  For PIC add the
+       offset to the base of the table.
+       (thumb_tablejump): Matcher for Thumb tablejump insn.
+       * config/arm/aout.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output thumb entries
+       as the difference of two labels.
+       * config/arm/aof.h (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
+       * config/arm/elf.h (JUMP_TABLES_IN_TEXT_SECTION): Only put ARM jump
+       tables in the code.
+       * config/arm/coff.h (JUMP_TABLES_IN_TEXT_SECTION): Likewise.
+       * arm.c (get_jump_table_size): If the table is not in the text
+       section, return zero.
+
+2002-03-18  Bernd Schmidt  <bernds@redhat.com>
+
+       * config/arm/arm.c (arm_gen_movstrqi): Use gen_lowpart instead
+       of gen_rtx_SUBREG.
+       (arm_reload_out_hi): Use gen_lowpart instead of
+       gen_rtx_SUBREG to access QImode components.
+       * config/arm/arm.md: Disable zero_extend split for QImode
+       subregs in BIG_ENDIAN mode.
+       (storehi_bigend): Match use of least significant byte.
+       (storeinthi): Remove extraneous SUBREG.
+       Add missing construction of operands[2].
+       (movhi): Use gen_lowpart in place of gen_rtx_SUBREG.
+       (movqi): Use gen_lowpart in place of gen_rtx_SUBREG.
+       Replace gen_rtx (SUBREG) with gen_rtx_SUBREG.
+
+2002-03-18  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/rs6000.h (PREDICATE_CODES): Add PARALLEL to
+       any_operand.
+
+2002-03-17  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.c (alpha_emit_set_const_1): Build add insns
+       explicitly.
+
+2002-03-17  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * config/mmix/mmix.md ("fixuns_truncdfdi2"): Use (unsigned_fix:DI
+       (unsigned_fix:DF op1)), not (unsigned_fix:DI (fix:DF op1)).
+
+2002-03-17  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * ifcvt.c (dead_or_predicable): Fix uninitialized variable.
+
+       * predict.c (estimate_bb_frequencies): Delete unused variables.
+
+2002-03-17  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/ia64.c (ia64_attribute_table): Move before
+       targetm definition.  Make static.
+
+2002-03-17  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * c-common.h (yyparse, c_common_parse_file): New.
+       * c-lang.c: Include c-common.h.
+       (LANG_HOOKS_PARSE_FILE): Redefine.
+       * c-lex.c: Include c-common.h.
+       (yyparse): Rename c_common_parse_file.  Call yyparse.
+       * c-parse.in (yyparse): Remove macro.
+       * c-tree.h (yyparse_1): Remove.
+       * langhooks-def.h (LANG_HOOKS_PARSE_FILE): New.
+       (LANG_HOOKS_INITIALIZER): Update.
+       * langhooks.h (struct lang_hoooks): New hook parse_file.
+       * toplev.c (compile_file): Use parse_file hook.
+       * tree.h (yyparse): Remove.
+       * objc/objc-lang.c (LANG_HOOKS_PARSE_FILE): Redefine.
+
+2002-03-17  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * config/mmix/mmix.md ("truncdfsf2"): Correct operator is
+       float_truncate, not fix.
+       ("*truncdfsf2_real"): Ditto.
+       ("*nonlocal_goto_receiver_expanded"): Fix output template formatting.
+
+       * config/mmix/mmix.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Don't define.
+
+2002-03-16  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/mips/mips.h (CAN_ELIMINATE): Don't eliminate rap to $fp
+       (s8), but rather HARD_FRAME_POINTER_REGNUM.  Add parentheses
+       where appropriate.  Make the second reference to
+       leaf_function_p a function call, as intended.  Reindented.
+
+       * config/mips/mips.h (ISA_HAS_COND_TRAP): Not available on MIPS16.
+       * config/mips/mips.md (trap) [TARGET_MIPS16]: Emit `break 0'.
+
+       * config/mips/mips.md (addsi3, adddi3): Use scratch register to
+       add register to non-constant into sp.
+
+       * config/mips/mips-protos.h (embedded_pic_fnaddr_reg): New.
+       * config/mips/mips.h (embedded_pic_fnaddr_rtx): Lose.
+       (mips16_gp_pseudo_rtx): Lose.
+       (INIT_EXPANDERS): Deleted.
+       * config/mips/mips.c (mips_init_machine_status): New.
+       (mips_free_machine_status): New.
+       (mips_mark_machine_status): New.
+       (override_options): Set them.
+       (embedded_pic_fnaddr_rtx, mips16_gp_pseudo_rtx): Moved to...
+       (struct machine_function): ... new.  Replaced all references.
+       (mips_add_gc_roots): Don't mark them.
+       (embedded_pic_fnaddr_reg): New, extracted from...
+       (embedded_pic_offset): ... here.
+       * config/mips/mips.md (movdi): Call embedded_pic_fnaddr_reg.
+       (movsi): Likewise.
+
+2002-03-16  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cppinit.c: Revert -MD removal.
+
+2002-03-16  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+       * config/m68hc11/m68hc11.c (m68hc11_override_options): Don't use
+       soft registers by default for 68HC12.
+       (m68hc11_conditional_register_usage): Don't use Z register for 68HC12
+       when compiling with -fomit-frame-pointer.
+       (expand_prologue): Use push/pop to allocate 4-bytes of locals on 68HC12.
+       (expand_epilogue): Likewise.
+       (m68hc11_gen_rotate): Use exg when rotating by 8.
+
+2002-03-16  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
+
+       * config/m68hc11/m68hc11-protos.h (ix_reg): Declare.
+       * config/m68hc11/m68hc11.md ("addsi3"): Use general_operand for sources.
+       (splits): Remove unused add splits.
+       ("*addhi3_68hc12"): Tune constraints.
+       ("addhi_sp"): Try to use X instead of Y in all cases and if the
+       constant fits in 8-bits and D is dead use abx/aby instructions.
+       ("*addhi3"): Remove extern declaration of ix_reg.
+       ("*subsi3"): Optimize and provide new split.
+       ("subhi3"): Cleanup.
+       ("*subhi3_sp"): Avoid saving X if we know it is dead.
+       (arith splits): For 68hc12 save the address register on the stack
+       and do the arithmetic operation with a pop.
+
 2002-03-16  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
 
        * config/m68hc11/m68hc11.md ("*movqi_68hc12"): Fix constraints, avoid
@@ -1337,7 +1852,7 @@ Fri Mar  1 20:59:14 CET 2002  Jan Hubicka  <jh@suse.cz>
 
        * config/rs6000/rs6000.h (HANDLE_PRAGMA_PACK): Delete.
        * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Define.
-       * config/rs6000/xcoff.h (COLLET_EXPORT_LIST): Delete.
+       * config/rs6000/xcoff.h (COLLECT_EXPORT_LIST): Delete.
 
 2002-03-01  Kazu Hirata  <kazu@hxi.com>
 
@@ -4350,7 +4865,7 @@ Mon Feb    4 19:23:19 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        * config/arm/arm.c (arm_hard_regno_mode_ok): Allow any value in
        any geenral register.
 
-2001-02-04  Bernd Schmidt  <bernds@redhat.com>
+2001-02-04  Bernd Schmidt  <bernds@redhat.com>s
 
        * cfgrtl.c (force_nonfallthru_and_redirect): Don't try to redirect
        the entry block.