+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 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.
+