OSDN Git Service

* c-common.h (objc_comptypes): Remove prototype.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 2e341ec..5a6bae1 100644 (file)
@@ -1,3 +1,977 @@
+2005-05-24  Ziemowit Laski  <zlaski@apple.com>
+
+       * c-common.h (objc_comptypes): Remove prototype.
+       (objc_compare_types): New prototype.
+       (objc_volatilized_decl): Likewise.
+       (objc_type_quals_match): Likewise.
+       * c-decl.c (objc_mark_locals_volatile): Streamline by calling
+       objc_volatilize_decl().
+       * c-typeck.c (comp_target_types): Remove third parameter; do
+       not call objc_comptypes().
+       (comptypes): Remove calls to objc_comptypes().
+       (build_function_call): Extend compatible prototype check to ObjC.
+       (build_conditional_expr): Adjust call to comp_target_types().
+       (convert_for_assignment): Call objc_compare_types() instead of
+       objc_comptypes(); adjust calls to comp_target_types(); call
+       objc_type_quals_match() before issuing qualifier mismatch
+       warnings.
+       (build_binary_op): Call objc_compare_types() before issuing
+       pointer mismatch warnings; adjust calls to
+       comp_target_types().
+       * stub-objc.c (objc_comptypes): Remove stub.
+       (objc_compare_types): New stub.
+       (objc_volatilized_decl): Likewise.
+       (objc_type_quals_match): Likewise.
+
+2005-05-24  Paolo Carlini  <pcarlini@suse.de>
+
+       * config/ia64/ia64intrin.h: Define nothing for C++:
+       overloaded builtins have been ported to C++.
+
+2005-05-24  Jeff Law  <law@redhat.com>
+
+       * tree-nested.c (build_addr): New "context" argument.  Temporarily
+       set current_function_decl around the call to build the ADDR_EXPR.
+       (get_static_chain): Pass proper context to build_addr.
+       (convert_nl_goto_reference): Likewise.
+       (convert_tramp_reference): Likewise.
+       (final_nesting_tree_1): Likewise.
+       * tree-profile.c (tree_gen_interval_profiler): Likewise.
+       (tree_gen_pow2_profiler): Likewise.
+       (tree_gen_one_value_profiler): Likewise.
+       * tree-ssa-loop-ivopts.c (build_addr_strip_iref): Likewise.
+       * tree.h (build_addr): Update prototype.
+
+2005-05-24  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-flow.h (bb_ann_d): Remove has_escape_site.
+       * tree-ssa-alias.c (compute_points_to_addr_escape): Don't
+       write to has_escape_site.
+
+2005-05-24  Jeff Law  <law@redhat.com>
+
+       * Makefile.in (tree-cfg.o): Depend on tree-ssa-propagate.h.
+       * tree-cfg.c: Include tree-ssa-propagate.h.
+       (replace_uses_by): Call recompute_tree_invarant_for_addr_expr as
+       needed.
+
+2005-05-24  Nick Clifton  <nickc@redhat.com>
+
+       * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
+       __NO_FPRS__ when 'f' class registers will not be available. 
+
+2005-05-24  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+       * config/m32r/m32r.c (m32r_expand_block_move):  Return 0 if
+       nothing was done.
+       * config/m32r/m32r.md (movmemsi):  If m32r_expand_block_move did
+       nothing then FAIL.
+       * config/m32r/m32r/m32r-protos.h  (m32r_expand_block_move): Update
+       prototype.
+
+2005-05-23  Jeff Law  <law@redhat.com>
+
+       * tree-ssa-dom.c (cprop_into_stmt): Do not call
+       recompute_tree_invariant_for_addr_expr here.
+       (optimize_stmt): Call it here instead and do so if anything
+       at all has changed in the statement and the RHS is an ADDR_EXPR.
+       * tree-ssa-forwprop.c (tidy_after_forward_propagate_addr): If
+       needed, call recompute_tree_invariant_for_addr_expr.
+       * tree-ssa-propagate.c (substitute_and_fold): Call
+       recompute_tree_invariant_for_addr_expr as needed.
+
+2005-05-23  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+       * config/s390/s390.c (s390_optimize_prologue): Don't replace an insn
+       saving less registers than the replacement.
+
+2005-05-23  Jan Hubicka  <jh@suse.cz>
+
+       * tree-flow.h (stmt_ann_d): Kill GTY ((skip)) mark on BB.
+
+2005-05-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * config/sparc/sparc-protos.h (sparc_expand_move): New prototype.
+       * config/sparc/sparc.c (sparc_expand_move): New function.
+       (sparc_emit_set_const64): Rewrite assert condition on entry.
+       (legitimate_constant_p) <CONST_VECTOR>: New case.
+       (legitimize_pic_address): Use TARGET_ARCH64 to select the mode.
+       * config/sparc/sparc.md (movqi, movhi, movsi, movdi, movV32,
+       movV64, movtf): Use nonimmediate_operand for the first operand.
+       Rewrite.  Only invoke sparc_expand_move.
+       * config/sparc/predicates.md (input_operand): Reorder tests.
+
+2005-05-23  Jan Beulich  <jbeulich@novell.com>
+
+       * gthr-posix.h (__gthread_recursive_mutex_init_function): Add
+       missing return statement.
+
+2005-05-22  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * config/sparc/sparc.c (sparc_emit_float_lib_cmp): Use
+       emit_move_insn for moves to TFmode stack slots.
+
+2005-05-21  Richard Guenther  <rguenth@gcc.gnu.org>
+
+       * tree-stdarg.c (execute_optimize_stdarg): Handle references
+       to va_list of the form &va[0].
+
+2005-05-20  Jan Hubicka  <jh@suse.cz>
+
+       * Makefile.in (insn-emit.o): Add basic-block.h dependency.
+       * genemit.c (main): Make insn-emit to include basic-block.h too.
+
+2005-05-20  Jan Hubicka  <jh@suse.cz>
+
+       * cgraphunit.c (cgraph_expand_function): Force function being lowered.
+
+2005-05-19  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.c (emit_unlikely_jump, emit_load_locked,
+       emit_store_conditional): Split out from ...
+       (alpha_split_atomic_op): ... here.
+       (alpha_split_compare_and_swap): New; extract from .md file.
+       (alpha_split_lock_test_and_set): Likewise.
+       * config/alpha/alpha-protos.h: Update.
+       * config/alpha/sync.md (sync_compare_and_swap<I48MODE>): Move
+       split code into alpha.c.
+       (sync_lock_test_and_set<I48MODE>): Likewise.
+
+2005-05-19  Richard Henderson  <rth@redhat.com>
+
+       * unwind.h, unwind-pe.h: Revert gcc_unreachable change of 05-17.
+
+2005-05-19  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/sse.md (mulv4si3): Use all register inputs.
+       (mulv2di3): Likewise.
+
+2005-05-19  Richard Guenther  <rguenth@gcc.gnu.org>
+
+       * tree-ssa-loop-ivopts.c (determine_base_object): Use
+       build_fold_addr_expr to generate trees of correct type.
+       Use fold_buildN if possible.
+
+2005-05-19  Jan Hubicka  <jh@suse.cz>
+
+       * basic-block.h (REG_BR_PROB_BASE): Define.
+       * cgraph.c (cgraph_create_edge): Initialize loop_nest and count.
+       (dump_cgraph_node): Dump count.
+       (cgraph_clone_edge): Rescale counts.
+       (cgraph_clone_node): Likewise.
+       * cgraph.h: Include basic-block.h
+       (cgraph_node): Add count.
+       (cgraph_edge): Add count and loop_nest.
+       (cgraph_node, cgraph_edge, cgraph_clone_edge, cgraph_clone_node):
+       Update prototypes.
+       * cgraphunit.c: Kill now redundant inlining comment.
+       (cgraph_create_edges): Make static, maintain current basic block;
+       fix pasto.
+       (record_call_1): Fill in new fields.
+       * ipa-inline.c (cgraph_clone_inlined_nodes): Update call of
+       cgraph_clone_node.
+       (cgraph_decide_recursive_inlining): Likewise.
+       * rtl.h (REG_BR_PROB_BASE): Kill.
+       * tree-inline.c (copy_body_r): Update call of cgraph_clone_edge.
+       (expand_call_inline): Update call of cgraph_create_edge.
+       * tree-optimize.c (tree_rest_of_compilation): Likewise.
+
+2005-05-19  Nick Clifton  <nickc@redhat.com>
+
+       * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Use the
+       new rs6000_explicit_options structure.
+
+2005-05-19  Richard Henderson  <rth@redhat.com>
+
+       PR target/21390
+       * config/alpha/alpha.c (alpha_emit_conditional_branch): Move 
+       TFmode code swapping ...
+       (alpha_emit_xfloating_compare): ... here.
+       (alpha_emit_setcc): Update to match.
+       (alpha_lookup_xfloating_lib_func): Assert TARGET_HAS_XFLOATING_LIBS.
+
+2005-05-19  Richard Henderson  <rth@redhat.com>
+
+       PR target/21657
+       * config/ia64/ia64.c (ia64_expand_tls_address): Remove extra
+       memory indirection in local-dynamic case.
+
+2005-05-18  Jie Zhang  <jie.zhang@analog.com>
+           Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/bfin.c (branch_dest): Add comment why it's
+       necessary.
+       * config/bfin/bfin.md (attr "length" default): Change the offset of
+       forward conditional branch of length 4 from 4096 to 4092.
+
+2005-05-19  Jan Beulich  <jbeulich@novell.com>
+
+       * unwind-compat.c: Include tconfig.h and tsystem.h.
+       * unwind-dw2-fde-compat.c: Likewise.
+
+2005-05-18  Richard Henderson  <rth@redhat.com>
+
+       PR 21541
+       * ifcvt.c (noce_process_if_block): Avoid conversion when the
+       memory destination is readonly.
+
+2005-05-18  Richard Henderson  <rth@redhat.com>
+
+       PR 21541
+       * tree-ssa-operands.c (opf_non_specific): New.
+       (get_asm_expr_operands): Set it.
+       (add_call_clobber_ops, add_call_read_ops): Likewise.
+       (add_stmt_operand): Test it instead of opf_kill_def when
+       considering unmodifiable variables.
+
+       * tree-ssa-operands.c (get_expr_operands): Fix exact test.
+
+2005-05-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * cfgexpand.c, tree-cfg.c, tree-inline.c, tree-optimize.c,
+       tree-ssa-forwprop.c: Fix comment typos.
+       * doc/invoke.texi: Fix a typo.
+
+2005-05-18  Richard Henderson  <rth@redhat.com>
+
+       * config.gcc (powerpc-*-linux*): Include linux64.opt when
+       including linux64.h.
+
+2005-05-18  Richard Henderson  <rth@redhat.com>
+
+       * tree-cfg.c (pass_remove_useless): Revert last change.
+       * tree-optimize.c (init_tree_optimization_passes): Initialize
+       all_lowering_passes with PROP_gimple_any.
+
+2005-05-18  Devang Patel  <dpatel@apple.com>
+
+       * config/rs6000/rs6000.md (insvsi_internal1): Subtract shift from
+       the mask end.
+       
+2005-05-18  Richard Henderson  <rth@redhat.com>
+
+       * tree-ssa-forwprop.c (cfg_changed): New.
+       (tidy_after_forward_propagate_addr): New.
+       (forward_propagate_addr_expr): Use it, and fold_stmt_inplace.
+       (forward_propagate_addr_into_variable_array_index): Likewise.
+       (tree_ssa_forward_propagate_single_use_vars): Cleanup cfg if
+       edges were removed.
+
+2005-05-18  Geoffrey Keating  <geoffk@apple.com>
+
+       * dummy-checksum.c: New.
+       * genchecksum.c: New.
+       * c.opt (print_pch_checksum): New flag.
+       * c-pch.c (struct c_pch_validity): Make much shorter.
+       (no_checksum): New.
+       (host_machine): Remove.
+       (target_machine): Remove.
+       (get_ident): Change PCH version number.
+       (pch_init): When -fverbose-asm, print out the compiler fingerprint.
+       Don't put triplets or version string in PCH validity data.
+       Do put the compiler checksum in the validity data.
+       (c_common_valid_pch): Don't check triplets or version string.  Do
+       check checksum.
+       (c_common_print_pch_checksum): New.
+       * c-opts.c (c_common_handle_option): Add OPT_print_pch_checksum.
+       Print fingerprint with -v.
+       * c-common.h (c_common_print_pch_checksum): New.
+       (executable_checksum): New.
+       * Makefile.in (STAGEMOVESTUFF): Add cc1*-dummy, *-checksum.c.
+       (cc1-dummy): New rule.
+       (cc1-checksum.c): New rule.
+       (cc1-checksum.o): New rule.
+       (cc1): Add checksum support.
+       (build/genchecksum): New.
+       (build/genchecksum.o): New.
+       (dummy-checksum.o): New.
+       (genobjnames): Add genchecksum.o.
+       (mostlyclean): Remove *-checksum.c.
+       (gnucompare): Add libgcc to list of directories checked.
+       Make comparison problems in libgcc/ and with checksum files only
+       be warnings.
+       * doc/invoke.texi (Precompiled Headers): Remove caution.
+       Document that it must be the exact same binary.  Add a few
+       known-safe flags to the list.
+
+       * rs6000/predicates.md (fix_trunc_dest_operand): New.
+       * rs6000/rs6000.md (fix_truncdfsi2): Use fix_trunc_dest_operand.
+       Check that a memory operand is valid before trying to use it.
+       
+       * tree-cfg.c (pass_remove_useless): This pass works on trees.
+
+2005-05-18  Richard Guenther  <rguenth@gcc.gnu.org>
+
+       * tree.c (build1_stat): Don't try to handle two-operand
+       tree codes.
+
+2005-05-18  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config.gcc (sh*-*-*): Define SUPPORT_* macros to 1.
+       * config/sh/sh.h: Update mask names throughout.
+       (target_flags, ISIZE_BIT, DALIGN_BIT, SH1_BIT, SH2_BIT, SH3_BIT)
+       (SH_E_BIT, HARD_SH4_BIT, FPU_SINGLE_BIT, SH4_BIT, SH4A_BIT, FMOVD_BIT)
+       (SH5_BIT, SPACE_BIT, BIGTABLE_BIT, RELAX_BIT, USERMODE_BIT)
+       (HITACHI_BIT, NOMACSAVE_BIT, PREFERGOT_BIT, PADSTRUCT_BIT)
+       (LITTLE_ENDIAN_BIT, IEEE_BIT, SAVE_ALL_TR_BIT, HARD_SH2A_BIT)
+       (HARD_SH2A_DOUBLE_BIT, INDEXED_ADDRESS_BIT, PT_FIXED_BIT)
+       (INVALID_SYMBOLS_BIT, ADJUST_UNROLL_BIT, TARGET_DUMPISIZE)
+       (TARGET_ALIGN_DOUBLE, TARGET_SH1, TARGET_SH2, TARGET_SH3)
+       (TARGET_HARD_SH4, TARGET_FPU_SINGLE, TARGET_SH5, TARGET_FMOVD)
+       (TARGET_IEEE, TARGET_SMALLCODE, TARGET_BIGTABLE, TARGET_RELAX)
+       (TARGET_HITACHI, TARGET_NOMACSAVE, TARGET_PADSTRUCT)
+       (TARGET_LITTLE_ENDIAN, TARGET_USERMODE, TARGET_PREFERGOT)
+       (TARGET_SAVE_ALL_TARGET_REGS, TARGET_ALLOW_INDEXED_ADDRESS)
+       (TARGET_PT_FIXED, TARGET_INVALID_SYMBOLS, TARGET_ADJUST_UNROLL)
+       (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E)
+       (TARGET_SWITCH_SH2A, TARGET_SWITCH_SH2A_SINGLE_ONLY)
+       (TARGET_SWITCH_SH2A_SINGLE, TARGET_SWITCH_SH2A_NOFPU)
+       (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E, TARGET_SWITCH_SH4_SINGLE_ONLY)
+       (TARGET_SWITCH_SH4_SINGLE, TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4)
+       (TARGET_SWITCH_SH4A, TARGET_SWITCH_SH4A_SINGLE_ONLY)
+       (TARGET_SWITCH_SH4A_SINGLE, TARGET_SWITCH_SH4A_NOFPU)
+       (TARGET_SWITCH_SH4AL, TARGET_SWITCH_SH5_64MEDIA)
+       (TARGET_SWITCH_SH5_64MEDIA_NOFPU, TARGET_SWITCHES_SH5_32MEDIA)
+       (TARGET_SWITCHES_SH5_32MEDIA_NOFPU, TARGET_SWITCH_SH5_32_ANY_EXTRA)
+       (TARGET_SWITCH_SH5_MEDIA_ANY_EXTRA, TARGET_SWITCHES)
+       (SUBTARGET_SWITCHES): Delete.
+       (TARGET_SH2E, TARGET_SH2A, TARGET_SH2A_SINGLE, TARGET_SH2A_DOUBLE)
+       (TARGET_SH3E, TARGET_CACHE32, TARGET_SUPERSCALAR, TARGET_HARVARD)
+       (TARGET_FPU_DOUBLE, TARGET_SH4A_ARCH, TARGET_SHMEDIA32)
+       (TARGET_SHMEDIA64): Redefine using other TARGET_* macros.
+       (TARGET_SH4): Undefine options.h definition and check MASK_SH1 as well.
+       (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4, SUPPORT_SH4_SINGLE)
+       (SUPPORT_SH2A, SUPPORT_SH2A_SINGLE): Make numeric.
+       (SUPPORT_SH2): Define to 1 if SUPPORT_SH1.
+       (SUPPORT_SH3): Likewise SUPPORT_SH2.
+       (SUPPORT_SH4_NOFPU): Likewise SUPPORT_SH3.
+       (SUPPORT_SH4A_NOFPU, SUPPORT_SH4AL, SUPPORT_SH2A_NOFPU): Likewise
+       SUPPORT_SH4_NOFPU.
+       (SUPPORT_SH3E): Likewise SUPPORT_SH2E.
+       (SUPPORT_SH4_SINGLE_ONLY, SUPPORT_SH4A_SINGLE_ONLY)
+       (SUPPORT_SH2A_SINGLE_ONLY): Likewise SUPPORT_SH3E.
+       (SUPPORT_SH4A): Likewise SUPPORT_SH4.
+       (SUPPORT_SH4A_SINGLE): Likewise SUPPORT_SH4_SINGLE.
+       (SUPPORT_SH5_32MEDIA): Likewise SUPPORT_SH5_COMPACT.
+       (SUPPORT_SH5_32MEDIA_NOFPU): Likewise SUPPORT_SH5_COMPACT_NOFPU.
+       (SUPPORT_ANY_SH5_32MEDIA, SUPPORT_ANY_SH5_64MEDIA)
+       (SUPPORT_ANY_SH5): New macros.
+       (TARGET_NONE): Replace with...
+       (MASK_ARCH): ...this new macro.
+       * config/sh/elf.h: Update mask names
+       * config/sh/linux.h: Likewise.
+       * config/sh/little.h: Likewise.
+       * config/sh/netbsd-elf.h: Likewise.
+       * config/sh/symbian-pre.h: Likewise.
+       * config/sh/sh.c (sh_handle_option): New function.
+       (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults.
+       (calc_live_regs): Use MASK_FPU_SINGLE instead of FPU_SINGLE_BIT.
+       (sh_target_switches, target_switches): Delete.
+       (sh_pch_valid_p): Check for specific differences in the target_flags
+       settings.
+       (sh_init_cumulative_args): Use MASK_HITACHI instead of HITACHI_BIT.
+       * config/sh/sh.opt: New file.
+
+2005-05-18  Richard Henderson  <rth@redhat.com>
+
+       PR target/21632
+       * config/ia64/ia64.c (ia64_extra_constraint) <'T'>: Use
+       small_addr_symbolic_operand.
+
+2005-05-18  Jeff Law  <law@redhat.com>
+
+       * tree-ssa-forwprop.c (forward_propagate_addr_expr): Do not
+       propagate an ADDR_EXPR if the definition and use sites are
+       in different EH regions.
+
+2005-05-18  Ian Lance Taylor  <ian@airs.com>
+
+       * read-rtl.c (mode_attr_index): Use obstack_grow0, not
+       obstack_grow.
+
+2005-05-18  Daniel Berlin  <dberlin@dberlin.org>
+
+       * cfgrtl.c (purge_dead_edges): Don't remove fake edges.
+
+2005-05-18  Daniel Berlin  <dberlin@dberlin.org>
+       
+       Fix PR tree-optimization/21407
+
+       * tree-ssa-operands.c (note_addressable): Change
+       COMPONENT_REF handling in response to aliasing
+       discussion.
+
+2005-05-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * config/sparc/sol2.h (TARGET_DEFAULT): Add back MASK_APP_REGS.
+       * config/sparc/sol2-64.h (TARGET_DEFAULT): Likewise.
+       * config/sparc/sp-elf.h (TARGET_DEFAULT): Delete.
+       * doc/invoke.texi (SPARC options): Document that -mapp-regs is
+       the default on Solaris too.
+
+2005-05-17  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree-ssa-pre.c (find_or_generate_expression): CALL_EXPR
+       is okay too.
+
+2005-05-17  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * timevar.def (TV_SCEV_CONST): New timevar.
+       * tree-optimize.c (init_tree_optimization_passes): Add
+       pass_scev_cprop.
+       * tree-pass.h (pass_scev_cprop): Declare.
+       * tree-scalar-evolution.c (scev_const_prop): New function.
+       * tree-scalar-evolution.h (scev_const_prop): Declare.
+       * tree-ssa-loop.c (gate_scev_const_prop, pass_scev_cprop):
+       New.
+       * tree-cfg.c (replace_uses_by): Export.
+       * tree-flow.h (replace_uses_by): Declare.
+
+2005-05-17  Ziemowit Laski  <zlaski@apple.com>
+           Mike Stump  <mrs@apple.com>
+
+       Yet more Objective-C++...
+
+       * c-common.h (objc_finish_try_stmt): Add.
+       (objc_build_synchronized): Add.
+       (objc_generate_write_barrier): Add.
+       * stub-objc.c (objc_build_synchronized): Add return value.
+       (objc_finish_try_stmt): Likewise.
+       (objc_generate_write_barrier): Add.
+
+       * c-common.h (objc_rewrite_function_call): Add.
+       * c-typeck.c (build_function_call): Allow objc to rewrite
+       FUNCTION_DECLs.
+       (build_modify_expr): Allow objc to generate write barriers.
+       * c.opt (Wassign-intercept): Add.
+       (Wstrict-selector-match): Add.
+       (fobjc-call-cxx-cdtors): Add.
+       (fobjc-direct-dispatch): Add.
+       (fobjc-gc): Add.
+       * dbxout.c (get_lang_number): Add Objective-C++ support.
+       * doc/invoke.texi (-fobjc-call-cxx-cdtors): Likewise.
+       (-Wstrict-selector-match): Likewise.
+       (-fobjc-direct-dispatch): Likewise.
+       (-Wassign-intercept): Likewise.
+       (Overall Options): Likewise.
+       * gengtype.c (get_output_file_with_visibility): Likewise.
+       * stub-objc.c (objc_rewrite_function_call): Add.
+       * config/darwin.h (ASM_OUTPUT_LABELREF): Improved quoting support.
+
+       * c-common.c (flag_objc_exceptions): Remove.
+       (flag_objc_sjlj_exceptions): Remove.
+       * c-decl.c (objc_mark_locals_volatile): Don't change decls
+       that are already ok.
+       * c-opts.c (c_common_handle_option, case
+       OPT_fobjc_exceptions): Remove.
+       (case OPT_fobjc_sjlj_exceptions): Remove
+       * c.opt (fobjc-call-cxx-cdtors): Have opt create the flag.
+       (fobjc-exceptions): Likewise.
+       (fobjc-sjlj-exceptions): Likewise.
+       * config/rs6000/darwin.h (OFFS_MSGSEND_FAST): Add.
+       (OFFS_ASSIGNIVAR_FAST): Add.
+       
+2005-05-17  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * config/sparc/sparc.md (movhi): Do not test constness
+       of operand #1 twice.
+       (movsi): Likewise.
+       (movdi): Unconditionally accept zero as second operand
+       when the first is memory.
+       (movdi_insn_sp32): Handle above case.
+       (DImode splitter): Use predicates.
+       (DImode splitter): Use const_zero_operand predicate.
+       (movsf_insn): Swap 2 alternatives.
+
+2005-05-17  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * tree-ssa-loop-ivopts.c (find_bivs, find_givs_in_stmt_scev): Apply
+       expand_simple_operations to bases of the ivs.
+       (tree_int_cst_sign_bit): Export.
+       * tree-flow.h (expand_simple_operations): Declare.
+       * tree-ssa-loop-niter.c (number_of_iterations_cond): Use
+       tree_int_cst_sign_bit.
+       (expand_simple_operations): Export.
+       * tree.h (tree_int_cst_sign_bit): Declare.
+
+2005-05-17  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * tree-cfg.c (tree_can_merge_blocks_p): Allow phi nodes in the
+       merged block.
+       (replace_uses_by): New function.
+       (tree_merge_blocks): Eliminate the phi nodes in the merged block.
+       * tree-flow.h (fold_stmt_inplace): Declare.
+       * tree-ssa-ccp.c (fold_stmt_inplace): New function.
+       * tree-ssa-dom.c (tree_ssa_dominator_optimize): Update dominance
+       info after cfg cleanup.
+
+2005-05-17  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * cfgloop.h (just_once_each_iteration_p): Declaration changed.
+       * cfgloopanal.c (just_once_each_iteration_p): Make the loop argument
+       const.
+
+2005-05-17  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * ggc-page.c (ggc_alloc_stat): Record amount of memory allocated.
+       * ggc-zone.c (ggc_alloc_zone_1): Ditto.
+       * timevar.c (timevar_ggc_mem_total): New variable.
+       (GGC_MEM_BOUND): New constant.
+       (get_time): Record ggc memory status.
+       (timevar_accumulate): Accumulate amount of ggc memory.
+       (timevar_print): Print consumption of ggc memory.
+       * timevar.def (TV_FIND_REFERENCED_VARS, TV_TREE_REDPHI,
+       TV_TREE_LOOP_BOUNDS, TV_TREE_LOOP_IVCANON, TV_TREE_VECTORIZATION,
+       TV_TREE_LINEAR_TRANSFORM): Shorten strings to fit in 22 characters.
+       * timevar.h (struct timevar_time_def): Add ggc_mem field.
+       (timevar_ggc_mem_total): Declare.
+
+2005-05-17  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-into-ssa.c (update_ssa): Clean up by shortening the
+       live range of DFS.
+
+2005-05-17  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/cris.md (ncond, ocode, rcond): Remove separate
+       define_code_attr.
+       ("b<ncond:code>", "b<ocond:code>", "b<rcond:code>")
+       ("*b<ncond:code>_reversed", "*b<ocond:code>_reversed")
+       ("*b<rcond:code>_reversed", "s<ncond:code>", "s<rcond:code>")
+       ("s<ocond:code>"): Rename from respectively "b<ncond>",
+       "b<ocond>", "b<rcond>", ("*b<ncond>_reversed",
+       "*b<ocond>_reversed", "*b<rcond>_reversed", "s<ncond>",
+       "s<rcond>" and "s<ocond>".
+       ("b<ocond:code>", "*b<ocond:code>_reversed")
+       ("*b<rcond:code>_reversed"): Remove extraneous backslashes in
+       output statement section.
+
+2005-05-17  Roger Sayle  <roger@eyesopen.com>
+
+       * c-typeck.c (common_type): Also handle BOOLEAN_TYPEs.
+
+2005-05-17  Steven Bosscher  <stevenb@suse.de>
+           Stuart Hastings <stuart@apple.com>
+           Jan Hubicka  <jh@suse.cz>
+           Dale Johannesen  <dalej@apple.com>
+
+       * cgraph.h (cgraph_node): Add 'lowered' state.
+       (cgraph_lower_function): Declare.
+       * cgraphunit.c (cgraph_finalize_function): Initialize lowered flag.
+       (cgraph_lower_function): New function.
+       (cgraph_create_edges): Deal with lowered function bodies.
+       (verify_cgraph_node): Likewise.
+       (cgraph_analyze_function): Do lowering job.
+       (cgraph_build_static_cdtor): Likewise.
+       * function.h (struct function): Add saved_eh and saved_cfg.
+       * integrate.c (copy_decl_for_inlining): Kill LABEL_DECL_UID field.
+       * tree-cfg.c (fold_cond_expr_cond): Export.
+       * tree-flow.h (fold_cond_expr_cond): Declare.
+       * tree-inline.c: Include basic-block, ggc, tree-flow, except.h and
+       pointer-set.
+       (struct_inline_data): Kill fnd, first_inlined_fn, ret_label,
+       in_target_cleanup_p, tree_pruner, tsi; add callee, caller and
+       callee_cfun, block, eh_region, eh_region_offset.
+       (inlining_p): New predicate.
+       (remap_decl): Update for new inline_data; declare newly created inline
+       vars in low gimple way.
+       (copy_body_r): Update for new datastructure, simplify some of handling
+       when we are in gimple; remap LABEL_DECLs for EH; copy TREE_BLOCK;
+       deal with RESX_EXPRs.
+       (copy_bb): New.
+       (copy_edges_for_bb): Likewise.
+       (remap_decl_1): New.
+       (copy_cfg_body): New.
+       (copy_generic_body): Rewrite to work on low gimple.
+       (copy_body): Turn into simple wrapper around copy_cfg_body.
+       (setup_one_parameter): Insert new statements into given basic block.
+       (initialize_initialized_parameters): Likewise, reorganize way things are
+       gimplified.
+       (declare_return_variable): Update for new inline data datastructure.
+       (inline_forbidden_p): Work on low gimple.
+       (estimate_num_insns): Likewise.
+       (expand_call_inline): Work on CFG.
+       (push_cfun, pop_cfun): New functions.
+       (cfun_stack): New stack.
+       (add_lexical_block): New function.
+       (gimple_expand_calls_inline): Work on basic block.
+       (optimize_inline_calls): Likewise.
+       (clone_body, save_body, unsave_ewpr_now): Update for new
+       datastructures.
+       (declare_inline_vars): Work on block instead of bind_expr.
+       (inlining_p): New predicate.
+       * tree-inline.h (push_cfun, pop_cfun): Declare.
+       * tree-optimize.c: Include except.h
+       (all_lowering_passes): New variable.
+       (execute_fixup_cfg, pass_fixup_cfg): New pass.
+       (init_tree_optimization_passes): Move some to all_lowering_passes.
+       (tree_lowering_passes): New function.
+       (tree_rest_of_compilation): Register cfg hooks; save/unsave eh.
+       * tree-pass.h (tree_lowering_passes): Declare
+
+2005-05-17  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * unwind-dw2-fde-darwin.c: Include tsystem.h.
+
+2005-05-17  Jeff Law  <law@redhat.com>
+
+       * Makefile.in (tree-ssa-forwprop.o): Depend on langhooks.h.
+       * tree-ssa-forwprop.c: Include langhooks.h.
+       (forward_propagate_addr_expr_into_variable_array_index): New.
+       (forward_propagate_addr_expr): New.
+       (tree_ssa_forward_propagate_single_use_vars): Loop over all
+       the statements in the block instead of just the last statement.
+       Call forward_propagate_addr_expr as needed.
+       (pass_forwprop): Update the SSA graph after forward propagation is
+       complete.
+
+2005-05-17  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * unwind-dw2-fde-glibc.c (base_from_cb_data,
+       _Unwind_IteratePhdrCallback): Use gcc_assert and gcc_unreachable as
+       appropriate.
+       * unwind-dw2-fde.c (__deregister_frame_info_bases,
+       base_from_object, fde_split, end_fde_sort): Likewise.
+       * unwind-dw2.c (_Unwind_GetGR, _Unwind_SetGR, execute_stack_op, 
+       execute_cfa_program, _Unwind_SetSpColumn, uw_update_context_1,
+       uw_init_context_1): Likewise.
+       * unwind.inc (_Unwind_RaiseException_Phase2, _Unwind_Resume,
+       _Unwind_Resume_or_Rethrow): Likewise.
+       * unwind-pe.h (__gxx_abort): Do not define.
+       (size_of_encoded_value, base_of_encoded_value,
+       read_encoded_value_with_base): Use gcc_unreachable.
+       * unwind.h (_Unwind_GetTextRelBase): Likewise.
+
+2005-05-17  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * config/arm/lib1funcs.asm (cfi_pop, cfi_push, cfi_start)
+       (cfi_end): New macros.
+       (RETLDM): Use cfi_pop.  Expect an eight byte stack frame.
+       (ARM_LDIV0, THUMB_LDIV0, DIV_FUNC_END): Use CFI macros.  Create
+       an eight byte stack frame.
+       (__NR_tkill): Define.
+       (__div0): Use gettid tkill on GNU/Linux.
+       (_arm_return): Add CFI.
+       (Lchange_\register, .Lchange_lr): Create an eight byte stack frame.
+
+2005-05-17  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * configure.ac: Remove spaces around assignment to
+       gcc_cv_ld_sysroot.
+       * configure: Regenerated.
+
+2005-05-17  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/aix.h (TARGET_ALTIVEC_VRSAVE): Delete.
+       * config/rs6000/rs6000.c (rs6000_explicit_options): Add
+       aix_struct_ret.
+       (rs6000_override_options): Do not protect TARGET_ALTIVEC_VRSAVE.
+       Modify aix_struct_return variable, not target_flags.
+       (rs6000_handle_option): Do not protect TARGET_ALTIVEC_VRSAVE.
+       (rs6000_return_in_memory): Test aix_struct_return.
+       * config/rs6000/rs6000.opt (maix-struct-return): Convert to
+       independent variable.  Report mxl-compat.
+
+2005-05-17  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/bfin.md (eh_return): Add missing DONE.
+
+2005-05-17  Ian Lance Taylor  <ian@airs.com>
+
+       * read-rtl.c (struct macro_traverse_data): Add unknown_mode_attr
+       field.
+       (mode_attr_index): Remove check for defined attribute.  Remove
+       infile parameter.  Change all callers.
+       (apply_mode_maps): Add unknown parameter.  Change caller.  Always
+       return after finding attribute.
+       (apply_macro_to_rtx): Add unknown_mode_attr parameter.  Change
+       callers.
+       (apply_macro_traverse): Set mtd->unknown_mode_attr.
+       (read_rtx): Use mtd.unknown_mode_attr to check for an undefined
+       attribute used for a mode.
+
+2005-05-17  Paolo Bonzini  <bonzini@gnu.org>
+
+       * tree-ssa-math-opts.c: New file.
+
+2005-05-17  Paolo Bonzini  <bonzini@gnu.org>
+
+       * Makefile.in: Add tree-ssa-math-opts.c.
+       * expr.c (expand_expr_real_1) <case RDIV_EXPR>: Never emit as a*(1/b).
+       * fold-const.c (distribute_real_division): New.
+       (fold_binary) <case PLUS_EXPR, case MINUS_EXPR>: Use it.
+       * tree-pass.h (pass_cse_reciprocals): New.
+       * tree-optimize.c (init_tree_optimization_passes): Run it.
+       * doc/passes.texi: Document the new pass.
+
+2005-05-17  Richard Guenther  <rguenth@gcc.gnu.org>
+
+       PR middle-end/21595
+       * builtins.c (fold_builtin_constant_p): Handle
+       &"string cst"[0] as constant.
+
+2005-05-17  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/sse.md (mulv16qi3, mulv2di3): New.
+
+2005-05-17  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/21492
+       * cfgcleanup.c (try_crossjump_to_edge): update_forwarder_flag for
+       src2 if src2 has been split.
+
+       PR tree-optimization/21610
+       * c-typeck.c (decl_constant_value_for_broken_optimization): If not
+       returning DECL, call unshare_expr.
+
+2005-05-17  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/cris.md: Unquote preparation and output statements.
+       (BWD, WD, BW): New, mode-macros.
+       (S, s, m, mm, nbitsm1): New, mode-attrs.
+       (szext, shift, shiftrt, ncond, ocond, rcond): New, code-macros.
+       (u, su, shlr, slr, ncond, ocond, rcond, rCC, oCC, roCC): New,
+       code-attrs.
+       ("tst<mode>"): Replace "tstqi", "tsthi" and "tstsi".
+       ("*cmp_ext<mode>"): Replace "*cmp_extsi" and "*cmp_exthi".
+       ("*cmp_swapext<mode>"): Replace "*cmp_swapextqi" and
+       "*cmp_swapexthi".
+       ("cmp<mode>"): Replace "cmphi" and "cmpqi".
+       ("movdi"): Move misplaced head comment regarding necessity of
+       movdi from movsi to here.
+       ("*mov_side<mode>_biap"): Replace "*mov_sideqi_biap" and
+       "*mov_sidehi_biap".
+       ("*mov_side<mode>"): Replace "*mov_sideqi" and "*mov_sidehi".
+       ("*mov_side<mode>_biap_mem", "*mov_sidehi_biap_mem"): Replace
+       "*mov_sideqi_biap_mem".
+       ("*mov_side<mode>_mem"): Replace "*mov_sideqi_mem" and
+       "*mov_sidehi_mem".
+       ("*clear_side<mode>_biap"): Replace "*clear_sidesi_biap",
+       "*clear_sidehi_biap" and "*clear_sideqi_biap".
+       ("*clear_side<mode>"): Replace "*clear_sidesi", "*clear_sidehi"
+       and "*clear_sideqi".
+       ("*ext_side<mode>si_biap"): Replace "*ext_sideqisi_biap" and
+       "*ext_sidehisi_biap".
+       ("*ext_side<mode>si"): Replace "*ext_sideqisi" and
+       "*ext_sidehisi".
+       ("reload_in<mode>"): Replace "reload_inhi" and "reload_inqi".
+       ("reload_out<mode>"): Replace "reload_outhi" and "reload_outqi".
+       ("extend<mode>di2"): Replace "extendhidi2" and "extendqidi2".
+       ("extend<mode>si2"): Replace "extendhisi2" and "extendqisi2".
+       ("zero_extend<mode>si2"): Replace "zero_extendhisi2" and
+       "zero_extendqisi2".
+       ("*op_side<mode>_biap"): Replace "*op_sideqi_biap",
+       "*op_sidehi_biap" and "*op_sidesi_biap".
+       ("*op_side<mode>"): Replace "*op_sideqi", "*op_sidehi" and
+       "*op_sidesi".
+       ("*op_swap_side<mode>_biap"): Replace "*op_swap_sideqi_biap",
+       "*op_swap_sidehi_biap" and "*op_swap_sidesi_biap".
+       ("*op_swap_side<mode>"): Replace "*op_swap_sideqi",
+       "*op_swap_sidehi" and "*op_swap_sidesi".
+       ("sub<mode>3"): Replace "subhi3" and "subqi3", correcting a typo
+       in the N alternative of "subqi3".
+       ("*extop<mode>si_side_biap"): Replace "*extopqisi_side_biap" and
+       "*extophisi_side_biap".
+       ("*extop<mode>si_side"): Replace "*extopqisi_side" and
+       "*extophisi_side".
+       ("*extop<mode>si_swap_side_biap"): Replace
+       "*extopqisi_swap_side_biap" and "*extophisi_swap_side_biap".
+       ("*extop<mode>si_swap_side"): Replace "*extopqisi_swap_side" and
+       "*extophisi_swap_side".
+       ("*extop<mode>si"): Replace "*extopqisi" and "*extophisi".
+       ("*extop<mode>si_swap"): Replace "*extopqisi_swap" and
+       "*extophisi_swap".
+       ("<u>mul<s><mode>3"): Replace "umulhisi3", "umulqihi3",
+       "mulqihi3", "mulhisi3" and "mulhisi3".
+       ("<u>mulsidi3"): Replace "mulsidi3" and "umulsidi3".
+       ("<su>mulsi3_highpart"): Replace "smulsi3_highpart" and
+       "umulsi3_highpart".
+       ("xor<mode>3"): Replace "xorhi3" and "xorqi3".
+       ("neg<mode>2"): Replace "negsi2", "neghi2" and "negqi2".
+       ("one_cmpl<mode>2"): Replace "one_cmplhi2" and "one_cmplqi2".
+       ("<shlr>si3"): Replace "ashrsi3", "lshrsi3" and "ashlsi3".
+       ("ashr<mode>3"): Replace "ashrhi3" and "ashrqi3".
+       ("*expanded_<shlr><mode>"): Replace "*expanded_ashrhi",
+       "*expanded_ashrqi", "*expanded_lshrhi" and "*expanded_lshrqi".
+       ("*<shlr><mode>_lowpart"): Replace "*ashrhi_lowpart",
+       "*ashrqi_lowpart", "*lshrhi_lowpart" and "*lshrqi_lowpart".
+       ("lshr<mode>3"): Replace "lshrhi3" and "lshrqi3".
+       ("ashl<mode>3"): Replace "ashlhi3" and "ashlqi3".
+       ("*ashl<mode>_lowpart"): Replace "*ashlqi_lowpart" and
+       "*ashlhi_lowpart".
+       ("abs<mode>2"): Replace "abshi2" and "absqi2".
+       ("b<ncond>"): Replace "beq", "bne", "bgtu", "bltu", "bgeu" and
+       "bleu".
+       ("b<ocond>"): Replace "bgt" and "ble".
+       ("b<rcond>"): Replace "blt" and "bge".
+       ("*b<ncond>_reversed"): Replace "*beq_reversed", "*bne_reversed",
+       "*bgtu_reversed", "*bltu_reversed", "*bgeu_reversed" and
+       "*bleu_reversed".
+       ("*b<ocond>_reversed"): Replace "*bgt_reversed" and
+       "*ble_reversed".
+       ("*b<rcond>_reversed"): Replace "*blt_reversed" and
+       "*blt_reversed".
+       ("s<ncond>"): Replace "sgeu", "sltu", "seq", "sgtu", "sleu" and
+       "sne".
+       ("s<rcond>"): Replace "sge" and "slt".
+       ("s<ocond>"): Replace "sgt" and "sle".
+       ("clear.[bwd] [rx=rx+rz.S2]"): Replace split clear.d
+       [rx=rx+rz.S2], clear.w [rx=rx+rz.S2] and clear.b [rx=rx+rz.S2].
+       ("clear.[bwd] [rx=rx+i]"): Replace splits clear.d [rx=rx+i],
+       clear.w [rx=rx+i] and clear.b [rx=rx+i].
+
+2005-05-17  Jakub Jelinek  <jakub@redhat.com>
+
+       * varasm.c (struct constant_descriptor_tree): Add hash field.
+       (const_desc_hash): Just return hash field.
+       (const_desc_eq): If hash values are different, return 0 immediately.
+       (output_constant_def): Compute hash field of temporary key, use
+       htab_find_slot_with_hash instead of htab_find_slot.  Set hash in
+       newly built constant descriptor.
+       (lookup_constant_def): Compute hash field of temporary key, use
+       htab_find_with_hash instead of htab_find.
+
+2005-05-16  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/sse.md (mulv4si3): New.
+
+2005-05-17  Hans-Peter Nilsson  <hp@axis.com>
+
+       * config/cris/cris.h (EXTRA_CONSTRAINT_T): Remove FIXME and
+       tests for noncanonical versions of reg+constant and
+       reg+reg*{1,2,4}.
+
+2005-05-16  Richard Henderson  <rth@redhat.com>
+           Steven Bosscher <stevenb@suse.de>
+
+       PR tree-opt/21399
+       * tree-eh.c (maybe_clean_or_replace_eh_stmt): Rename from 
+       maybe_clean_eh_stmt; take old stmt parameter.  Update EH
+       region data structure to match replacement.
+       * tree-flow.h: Update to match.
+       * tree-ssa-ccp.c (execute_fold_all_builtins): Likewise.
+       * tree-ssa-dom.c (optimize_stmt): Likewise.
+       * tree-ssa-pre.c (eliminate): Likewise.
+       * tree-ssa-propagate.c (substitute_and_fold): Likewise.
+
+2005-05-16  Caroline Tice  <ctice@apple.com>
+
+       * bb-reorder.c (verify_hot_cold_block_grouping):  Replace
+       internal_error with gcc_assert.
+       * dwarf2out.c (dwarf2out_switch_text_section):  Likewise.
+       * function.h (struct function): Remove space between "*" and
+       struct field names.
+       * varasm.c (initialize_cold_section_name):   Add gcc_assert;
+       modify to use alloca.
+       (unlikely_text_section): Add check for flag_function_sections.
+       (assemble_start_function):  Move call to resolve_section, so it
+       comes before first call to unlikely_text_section.
+       (assemble_end_function):  Add test and call to function_section
+       if appropriate.
+       
+2005-05-16  Roger Sayle  <roger@eyesopen.com>
+
+       * c-common.c (c_common_truthvalue_conversion): Use fold_build2
+       instead of build_binary_op when performing code transformations
+       to avoid error messages about constructs not it the user's code.
+
+2005-05-16  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-ssa-pre.c: Fix a comment typo.
+
+2005-05-16  Richard Henderson  <rth@redhat.com>
+
+       PR target/21556
+       * config/ia64/ia64.md (load_dtpmod, load_ltoff_dtpmod, load_dtprel,
+       load_dtprel64, load_dtprel22, load_dtprel_gd, load_ltoff_dtprel,
+       add_dtprel, add_dtprel14, add_dtprel22, load_tprel, load_tprel64,
+       load_tprel22, load_tprel_ie, load_ltoff_tprel, add_tprel, add_tprel14,
+       add_tprel22): Remove mode from symbolic operand.
+
+2005-05-16  Richard Sandiford  <rsandifo@redhat.com>
+
+       * optc-gen.awk: Include intl.h after the externally-provided files.
+
+2005-05-16  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-ssa-copy.c (copy_prop_visit_assignment): Clean up by
+       folding a COND_EXPR_COND in a nondestructive manner.
+
+2005-05-16  Fariborz Jahanian <fjahanian@apple.com>
+
+       * config/rs6000/altivec.md (altivec_vmrghb, altivec_vmrghh, 
+       altivec_vmrghw, altivec_vmrglb, altivec_vmrglh, altivec_vmrglw):
+       New values for vec_select definitions and bitmask for element
+       selection.
+        
+2005-05-16  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * dwarf2out.c (used_rtx_varray): Rename to used_rtx_array.
+       Change the type to VEC(rtx,gc)*.
+       (mem_loc_descriptor, add_const_value_attributes,
+       dwarf2out_init): Adjust uses of used_rtx_varray.
+
+       * tree-data-ref.c (compute_all_dependences): Change the type
+       of dependence_relations to VEC(ddr_p,heap)**.
+       (compute_data_dependences_for_loop): Change the type of
+       allrelations to VEC(ddr_p,heap)*.
+
+2005-05-16  Richard Sandiford  <rsandifo@redhat.com>
+
+       * Makefile.in (options.c): Tell optc-gen.awk to include config.h,
+       system.h, coretypes.h and tm.h.
+       (options.o): Update dependencies accordingly.
+       * optc-gen.awk: Allow header_name to be a list of filenames.
+       Handle the "Condition" flag.
+       * opts.h (CL_DISABLED): New flag.
+       * opts.c (handle_option): Print an error for CL_DISABLED options.
+       * doc/options.texi: Document the "Condition" option flag.
+
+2005-05-16  Paolo Bonzini  <bonzini@gnu.org>
+
+       * tree-inline.c (estimate_num_insns_1): Handle VEC_COND_EXPR.
+
+2005-05-15  Roger Sayle  <roger@eyesopen.com>
+
+       * tree-scalar-evolution.c (set_nb_iterations_in_loop): Only
+       check for TREE_OVERFLOW on INTEGER_CST trees.
+       * tree-chrec.c (chrec_convert): Only clear TREE_OVERFLOW on
+       CONSTANT_CLASS_P tree nodes.
+
+2005-05-15  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/21551
+       * config/ia64/ia64.c (ia64_expand_move): Don't add addend twice.
+
+2005-05-15  Daniel Berlin  <dberlin@dberlin.org>
+           
+       Fix PR tree-optimization/21576
+       
+       * tree-ssa-pre.c (expression_node_pool): New pool.
+       (comparison_node_pool): Ditto.
+       (list_node_pool): Ditto.
+       (pool_copy_list): New function.
+       (phi_translate): Handle CALL_EXPR.
+       (valid_in_set): Ditto.
+       (create_expression_by_pieces): Ditto.
+       (insert_into_preds_of_block): Ditto.
+       (insert_aux): Ditto.
+       (compute_avail): Ditto.
+       (create_value_expr_from): Handle TREE_LIST and CALL_EXPR.
+       (can_value_number_call): New function.
+       (find_leader): Update comment.
+       (init_pre): Create new pools.
+       (fini_pre): Free new pools.
+       (pass_pre): Add TODO_update_ssa for the future when we are going
+       to need vops.
+       * tree-vn.c (expressions_equal_p): Handle TREE_LIST.
+       (set_value_handle): Ditto.
+       (get_value_handle): Ditto.
+
+2005-05-15  Richard Earnshaw  <richard.earnshaw@arm.com>
+
+       * arm.c (thumb_unexpanded_epilogue): Delete unused variable 'mode'.
+
 2005-05-15  Andreas Jaeger  <aj@suse.de>
 
        * gcc.c (pfatal_pexecute): Remove unused local function.