OSDN Git Service

2005-08-03 Andrew Pinski <pinskia@physics.uc.edu>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index a4025df..08c73b2 100644 (file)
@@ -1,3 +1,674 @@
+2005-08-03  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * convert.c (convert_to_integer): Use fold_build1 instead of
+       build1 when converting an integer to an integer.
+
+2005-08-02  Richard Henderson  <rth@redhat.com>
+
+       * combine.c (combine_instructions): Don't use reg_equal/equiv
+       results if the mode doesn't match.
+
+2005-08-02  Mark Mitchell  <mark@codesourcery.com>
+
+       * config/i386/t-mingw32 (NATIVE_SYSTEM_HEADER_DIR): Set it.
+       * doc/fragments.texi (NATIVE_SYSTEM_HEADER_DIR): Document it.
+
+2005-08-02  Richard Henderson  <rth@redhat.com>
+
+       PR 23196
+       * explow.c (memory_address): Remove special-case for 
+       virtual_stack_vars_rtx and virtual_incoming_args_rtx.
+
+2005-08-02  Diego Novillo  <dnovillo@redhat.com>
+
+       PR 23164
+       * tree-cfgcleanup.c (cleanup_tree_cfg): Do not limit the
+       number of calls to cleanup_tree_cfg_1.
+
+2005-08-02  Martin Reinecke  <martin@mpa-garching.mpg.de>
+
+       * doc/invoke.texi: document file extensions .F90 and .F95
+
+2005-08-02  Richard Guenther  <rguenther@suse.de>
+
+       * fold-const.c (tree_expr_nonnegative_p): frexp(x, &e) is
+       positive if its first argument is positive.
+
+2005-08-02  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/23177
+       * tree-ssa-operands.c (get_tmr_operands): Use get_expr_operands
+       on TMR_TAG.
+
+2005-08-02  James A. Morrison  <phython@gcc.gnu.org>
+
+       PR tree-optimization/23129
+       * tree-vrp.c (extract_range_from_binary_expr): Set value range to
+       varying for divisions with anti-ranges.
+
+2005-08-02  Jan Hubicka  <jh@suse.cz>
+
+       * tree-ssa-dom.c (thread_across_edge): Remove updating here.
+       * tree-ssa-threadupdate.c (thread_block): Add it here.
+
+2005-08-01  James E Wilson  <wilson@specifix.com>
+
+       * config/mips/mips.c (mips_encode_section_info, mips_attribute_table,
+       TARGET_ENCODE_SECTION_INFO, TARGET_ATTRIBUTE_TABLE): New.
+       * config/mips/mips.h (SYMBOL_FLAG_LONG_CALL, SYMBOL_REF_LONG_CALL_P):
+       New.
+       * config/mips/predicates.md (const_call_insn_operand): Add check for
+       SYMBOL_REF_LONG_CALL_P.
+       * doc/extend.texi (long_call): Document the new attribute.
+
+2005-08-01  Ian Lance Taylor  <ian@airs.com>
+           Richard Henderson  <rth@redhat.com>
+
+       * Makefile.in (RTL_BASE_H): Add real.h.
+       * real.h (REAL_VALUE_FROM_CONST_DOUBLE): Use structure copy
+       instead of memcpy.
+       * emit-rtl.c (const_double_from_real_value): Likewise; use rtx.u.rv
+       directly.
+       * rtl.c (rtl_check_failed_code_mode): New.
+       * rtl.h (struct rtx_def): Add u.rv.
+       (XCMWINT, XCNMPRV): New.
+       (CONST_DOUBLE_LOW, CONST_DOUBLE_HIGH): Use XCMWINT.
+       (CONST_DOUBLE_REAL_VALUE): Use XCNMPRV; constify.
+
+2005-08-01  Richard Henderson  <rth@redhat.com>
+
+       * dwarf2out.c (mem_loc_descriptor): Use XEXP, not SUBREG_REG,
+       with auto-inc codes.
+
+       * config/alpha/predicates.md (and_operand): Test mode of CONST_DOUBLE.
+
+2005-08-01  Jan Hubicka  <jh@suse.cz>
+
+       * i386-protos.h (asm_preferred_eh_data_format): Declare.
+       * i386.c: Include dwarf2.h
+       (asm_preferred_eh_data_format): New.
+       * i386.h (ASM_PREFERRED_EH_DATA_FORMAT): Move offline.
+
+2005-08-01  Ian Lance Taylor  <ian@airs.com>
+
+       * config/host-linux.c (linux_gt_pch_get_address): Add new name
+       randomize_va_space for virtual address randomization control.
+
+2005-08-01  Steven Bosscher  <stevenb@suse.de>
+
+       * common.opt (flag_ipa_cp): Put in right place to maintain
+       alphabetic sort.
+
+2005-08-01  Jan Hubicka  <jh@suse.cz>
+
+       * profile.c (compute_value_histograms): Fix thinko.
+       * value-prof.c: Include toplev.h
+       (check_counter): New function.
+       (tree_divmod_fixed_value_transform, tree_mod_pow2_value_transform,
+       tree_mod_subtract_transform): Add sanity check.
+
+2005-08-01  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/23133
+       * tree-ssa-math-opts.c (execute_cse_reciprocals): Walk
+       current functions parameter decls to find defs to cse
+       reciprocals of.
+
+2005-08-01  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/23109
+       * tree-ssa-math-opts.c (execute_cse_reciprocals_1):
+       If trapping math is in effect, use post-dominator information
+       to check if we'd in any case reach a trapping point before
+       doing the reciprocal insertion.
+       (execute_cse_reciprocals): Compute post-dominators, if necessary.
+       * tree-ssa-loop-im.c (determine_invariantness_stmt): RDIV
+       expressions are invariant only if trapping math is not in effect.
+
+2005-08-01  Razya Ladelsky  <razya@il.ibm.com>
+
+       * cgraph.h (update_call_expr, cgraph_copy_node_for_versioning,
+       cgraph_function_versioning): New declarations.
+       * cgraphunit.c: Add include to ipa-prop.h.
+       (update_call_expr, cgraph_copy_node_for_versioning,
+       cgraph_function_versioning): New functions.
+       * integrate.c (copy_decl_for_inlining): Remove.
+       * ipa-prop.h (ipa_replace_map): New struct.
+       (struct ipa_node): Add ipcp_orig_node, count_scale, new fields.
+       * ipa-cp.c (ipcp_method_orig_node, ipcp_method_is_cloned,
+       ipcp_method_set_orig_node, ipcp_cloned_create, ipcp_method_get_scale,
+       ipcp_method_set_scale, ipcp_method_compute_scale, ipcp_after_propagate,
+       ipcp_iterate_stage, ipcp_method_scale_print,
+       ipcp_profile_mt_count_print, ipcp_profile_cs_count_print,
+       ipcp_profile_edge_print, ipcp_profile_bb_print , ipcp_profile_print,
+       ipcp_replace_map_create, ipcp_redirect, ipcp_update_callgraph,
+       ipcp_update_bb_counts, ipcp_update_profiling,
+       ipcp_update_edges_counts): New functions.
+       (ipcp_method_cval_init): Remove restriction regarding local methods.
+       (ipcp_init_stage): Add ipcp_method_compute_scale.
+       (ipcp_insert_stage): Add versioning.
+       (ipcp_structures_print): Add ipcp_method_scale_print.
+       (ipcp_driver): Dump profiling info.
+       * Makefile.in: Remove integrate.h dependency from tree-inline.o.
+       Add ipa-prop.h dependency to tree-inline.o and cgraphunit.o.
+       * tree-inline.c: Remove include to integrate.h, Add include ipa-prop.h.
+       (struct inline_data): Add versioning_p, ipa_info, new fields.
+       (remap_decl, mark_local_for_remap_r, setup_one_parameter,
+       declare_return_variable): Replace calls to copy_decl_for_inlining with
+       copy_decl_for_dup.
+       (copy_body_r, copy_bb, copy_cfg_body, copy_tree_r, inlining_p): Add
+       versioning support.
+       (copy_decl_for_dup): Rename from copy_decl_for_inlining.
+       Add argument VERSIONING.
+       (copy_arguments_for_versioning, copy_static_chain,
+       function_versionable_p, tree_versionable_function_p,
+       tree_function_versioning, replace_ref_tree): New functions.
+       * tree-inline.h: Include varray.h.
+       (tree_versionable_function_p,  tree_function_versioning,
+       tree copy_decl_for_dup): New declarations.
+
+2005-08-01  Razya Ladelsky  <razya@il.ibm.com>
+
+       * ipa-cp.c: New file. Contains IPCP specific functionality.
+       * ipa-prop.h: New file. Contains structures/definitions that can be
+       used by several interprocedural data flow optimizations (and also IPCP).
+       * ipa-prop.c: New file.
+       * Makefile.in: Add ipa-cp.c, ipa-prop.h, ipa-prop.c.
+       * common.opt: Add ipa-cp flag.
+       * timevar.def: Add IPCP optimization.
+       * tree-optimize.c (init_tree_optimization_passes): Schedule
+       pass_ipa_cp.
+       * tree-pass.h (pass_ipa_cp): Declare.
+
+2005-08-01  Kazu Hirata  <kazu@codesourcery.com>
+
+       * dwarf2out.c, fold-const.c, ipa-type-escape.c,
+       loop-invariant.c, predict.c, predict.def, reload1.c, reorg.c,
+       tree-sra.c, config/arm/arm.c, config/crx/crx.c,
+       config/i386/i386.c, config/mips/mips.h,
+       config/rs6000/rs6000.h, config/sh/sh.c,
+       config/stormy16/stormy16.c: Fix comment typos.
+
+2005-08-01  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/22311
+       * c-typeck.c (build_binary_op): Use common_type wrapper on
+       shortened types.
+       (common_type): Update comment.
+
+2005-07-31  Steven Bosscher  <stevenb@suse.de>
+
+       PR target/23095
+       * common.opt (flag_gcse_after_reload): Don't initialize to 2.
+       (flag_rerun_cse_after_loop): Initialize this to 2 instead.
+       * postreload-gcse.c (hash_scan_set): Do not consider stack regs.
+
+2005-07-31  Jan Hubicka  <jh@suse.cz>
+
+       * pretty-print.h (pp_widest_integer): New macro.
+       * tree-pretty-print.c (dump_bb_header): Print BB frequencies and
+       counts.
+
+2005-07-31  Jan Hubicka  <jh@suse.cz>
+
+       * output.h (enum section_category): Export from varasm.c
+       (categorize_decl_for_section): Likewise.
+       * varasm.c (enum section_category): Kill.
+       (categorize_decl_for_section): Make global.
+       * i386-protos.h (x86_output_aligned_bss, x86_elf_aligned_common):
+       Declare.
+       * i386.c (ix86_section_threshold): New static variable.
+       (ix86_in_large_data_p, ix86_encode_section_info,
+       x86_64_elf_unique_section,
+       x86_64_elf_select_section): New functions.
+       (TARGET_ENCODE_SECTION_INFO): Define
+       (override_options): Enable medium model for PIC.
+       (ix86_expand_prologue): Expand gen_set_got_rex64.
+       (legitimate_constant_p): Handle new UNSPECs.
+       (legitimate_pic_address_disp_p): Likewise.
+       (legitimize_pic_address): Lower MEDIUM model addressing.
+       * i386.h (PIC_OFFSET_TABLE_REGNUM): Set for medium model PIC.
+       (enum cmodel): Add MEDIUM_PIC.
+       (SYMBOL_REF_FAR_ADDR_P): New macro.
+       (SYMBOL_FLAG_FAR_ADDR): New flag.
+       * i386.md (movdi): Support medium model.
+       (set_got_rex64): New pattern.
+       * i386.opt (mlarge-data-threshold): New flag.
+       * predicates.md (zext_operand/sext_operand): Deal with medium model.
+       * x86-64.h (ASM_OUTPUT_ALIGNED_BSS): Use x86_output_aligned_bss.
+       (ASM_OUTPUT_ALIGNED_COMMON, TARGET_ASM_SELECT_SECTION,
+       TARGET_ASM_UNIQUE_SECTION): New.
+
+       * invoke.texi (-mlarge_data_threshold): Document
+
+2005-07-31  Jan Hubicka  <jh@suse.cz>
+
+       * tree-outof-ssa.c (coalesce_ssa_name): Use coalesce_cost.
+       (coalesce_vars): Likewise.
+       * tree-ssa-live.c (coalesce_cost): New.
+       (build_tree_conflict_graph): Use coalesce_cost.
+       * tree-ssa-live.h (coalesce_cost): Declare.
+
+2005-07-30  Richard Earnshaw  <richard.earnshaw@arm.com>
+
+       * arm.md (all peepholes for post-increment operations): Delete.
+       (strqi_preinc, strqi_predec, loadqi_preinc, loadqi_predec)
+       (loadqisi_preinc, loadqisi_predec, strsi_preinc, strsi_predec)
+       (loadsi_preinc, loadsi_predec, strqi_shiftpreinc, strqi_shiftpredec)
+       (loadqi_shiftpreinc, loadqi_shiftpredec, strsi_shiftpreinc)
+       (strsishift_predec, loadsi_shiftpreinc, loadsi_shiftpredec): Delete.
+
+2005-07-30  James A. Morrison  <phython@gcc.gnu.org>
+
+       * fold-const.c (tree_expr_nonnegative_p): Always return true for
+       non-integral types.
+
+2005-07-29  Wolfgang Bangerth <bangerth@dealii.org>
+
+       PR target/22582
+       * doc/invoke.texi: Document -rdynamic.
+
+2005-07-30  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/23143
+       * c-parser.c (c_parser_parms_list_declarator): Call
+       mark_forward_parm_decls.
+       * c-decl.c (merge_decls): Only check DECL_IN_SYSTEM_HEADER for
+       decls with visibility structure.
+
+2005-07-30  Paul Brook  <paul@codesourcery.com>
+
+       * config/arm/arm.c (arm_coproc_mem_operand): Fix inaccurate comment.
+
+2005-07-30  Paul Brook  <paul@codesourcery.com>
+
+       * config/arm/arm-protos.h (arm_canonicalize_comparison): Update
+       prototype.
+       * config/arm/arm.c (arm_canonicalize_comparison): Use correct limit
+       value for mode.
+       * config/arm/arm.h (CANONICALIZE_COMPARISON): Pass mode argument.
+
+2005-07-29  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/529
+       * c-decl.c (warn_if_shadowing): Don't check for PARM_DECL in
+       nested function declarators.
+       (pushdecl): Don't call warn_if_shadowing for PARM_DECL.
+       (grokparms): Call warn_if_shadowing for parameters used within the
+       parameter list.
+       (store_parm_decls_newstyle): Call warn_if_shadowing for parameters
+       not used within the parameter list.
+       (store_parm_decls_oldstyle): Call warn_if_shadowing for parameters.
+
+2005-07-30  Jan Hubicka  <jh@suse.cz>
+
+       * expr.c (expand_expr_real_1): Do not load mem targets into register.
+       * i386.c (ix86_fixup_binary_operands): Likewise.
+       (ix86_expand_unary_operator): Likewise.
+       (ix86_expand_fp_absneg_operator): Likewise.
+       * optabs.c (expand_vec_cond_expr): Validate dest.
+
+2005-07-29  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/21720
+       * real.c (real_from_string): Also set last bit if there is a
+       nonzero hex digit beyond GCC's internal precision after ".".
+
+2005-07-29  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/altivec.md: Convert UNSPEC numerical values to
+       define_constants.  Change duplicate values to unassigned numbers.
+       Change UNSPEC_SUBS to UNSPEC_VSUBS.
+       (*altivec_vspltsf): New.
+       (altivec_vperm_v4sf): Delete.
+       (altivec_vperm_<mode>): Use mode macro V.
+       (altivec_vsldoi_<mode>): Convert to mode macro pattern.
+       (altivec_predicate_v4sf): Delete.
+       (altivec_predicate_<mode>): Use mode macro V.
+       (*altivec_lvesfx): New.
+       (*altivec_stvesfx): New.
+       (vec_realign_load_v4sf): Delete.
+       (vec_realign_load_<mode>): Use mode macro V.
+       * config/rs6000/rs6000.c (generate_set_vrsave): Use
+       UNSPECV_SET_VRSAVE.
+
+2005-07-29  Mark Mitchell  <mark@codesourcery.com>
+
+       PR bootstrap/23131
+       * configure.ac (SYSTEM_HEADER_DIR): Avoid setting to empty
+       string. 
+       * configure: Regenerated.
+
+2005-07-29  Paul Brook  <paul@codesourcery.com>
+
+       * doc/install.texi: Add link to GFortran binaries wiki page.
+
+2005-07-29  David Ung  <davidu@mips.com>
+
+       * config/mips/mips.c (mips_cpu_info_table): Add 5kf to the table.
+       (mips_rtx_cost_data): Add costs for 5kc and 5kf.
+       * config/mips/mips.h (processor_type): Add PROCESSOR_5KF.
+       * config/mips/mips.md (cpu): Add 5kf name.
+       (includes): Includes 5k.md.
+       * config/mips/5k.md: New DFA pipeline for the 5kc/5kf.
+       * doc/invoke.texi (MIPS Options): Updated cpu name supported with
+       -march flag.    
+
+2005-07-29  Diego Novillo  <dnovillo@redhat.com>
+
+       PR 22550
+       * tree-cfgcleanup.c (cleanup_tree_cfg_1): Extract from ...
+       (cleanup_tree_cfg): ... here.
+       Call cleanup_tree_cfg_1 until there are no more cleanups to
+       do.
+
+2005-07-29  James A. Morrison  <phython@gcc.gnu.org>
+
+       * tree-vrp.c (compare_range_with_value): Return true or false
+       for ~[VAL_1, VAL_2] OP VAL if VAL_1 <= VAL <= VAL_2 for NE_EXPR and
+       EQ_EXPR respectively.
+
+2005-07-29  Kazu Hirata  <kazu@codesourcery.com>
+
+       * cfg.c, tree-complex.c, config/frv/frv.c, config/i386/i386.c:
+       Fix comment typos.
+
+2005-07-29  Diego Novillo  <dnovillo@redhat.com>
+
+       * tree-ssa-dom.c (struct opt_stats_d): Add field num_iterations.
+       (tree_ssa_dominator_optimize): Increment it.
+       (dump_dominator_optimization_stats): Print it.
+
+2005-07-29  Richard Earnshaw  <richard.earnshaw@arm.com>
+           Steven Bosscher  <stevenb@suse.de>
+
+       PR rtl-optimization/23117
+       * sched-rgn.c (add_branch_dependences): Handle COND_EXEC correctly
+       when head == tail.  Tidy comment.
+
+2005-07-28  Richard Henderson  <rth@redhat.com>
+
+       * cse.c (exp_equiv_p): Special case CONST_DOUBLE.
+       * cselib.c (rtx_equal_for_cselib_p): Likewise.
+       * jump.c (rtx_renumbered_equal_p): Likewise.
+       * loop.c (rtx_equal_for_loop_p): Tidy and special case PC, CC0,
+       CONST_INT and CONST_DOUBLE.
+       (rtx_equal_for_prefetch_p): Likewise, plus LABEL_REF.
+       * reload.c (operands_match_p): Special case CONST_INT and
+       CONST_DOUBLE; check mode earlier.
+
+2005-07-29  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/22240
+       * c-typeck.c (convert_for_assignment): Do not check
+       DECL_IN_SYSTEM_HEADER on NULL fundecl.
+
+2005-07-29  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/22192
+       * c-typeck.c (composite_type): Prefer constant size arrays to
+       VLAs.
+
+2005-07-29  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/21720
+       * real.c (real_from_string): Set last bit if there is a nonzero
+       hex digit beyond GCC's internal precision.
+
+2005-07-28  Richard Henderson  <rth@redhat.com>
+
+       PR rtl-opt/22619
+       * cfgcleanup.c (try_forward_edges): Watch out for end of
+       insn chain.
+
+2005-07-28  James E Wilson  <wilson@specifixinc.com>
+
+       PR c/23106
+       * doc/invoke.texi (Wstrict-aliasing=2): Fix misleading wording.
+
+2005-07-28  Jan Hubicka  <jh@suse.cz>
+
+       * Makefile.in (rtl-profile.o): Kill all traces of it.
+       * common.opt (fspeculative-prefetching, ftree-based-profiling): Kill.
+       * coverage.h (rtl_coverage_counter_ref): Kill.
+       * opts.c (flag_speculative_prefetching_set): Kill.
+       (flag_loop_optimize_set): New.
+       (common_handle_option): Disable loop optimizer when profiling;
+       do not handle speculative prefetching.
+       * passes.c (init_optimization_passes): Replace pass_profiling combo
+       by branch_prob pass.
+       * profile.c (compute_value_histograms): Update for simplified value
+       profiles.
+       (rtl_register_profile_hooks): Kill.
+       (pass_profiling): Kill.
+       (rest_of_handle_branch_prob): Do not profile.
+       * toplev.c (process_options): Remove speculative prefetching.
+       * toplev.h (flag_tree_based_profiling): Kill.
+       * tree-profile.c (prepare_instrumented_value,
+       tree_gen_interval_profiler, tree_gen_pow2_profiler,
+       tree_gen_one_value_profiler, do_tree_profiling): Update for
+       simplified datastructures.
+       * value-prof.c: Add comment that speculative prefetching was dropped;
+       update rest of file for simplified datastructures.
+       (NOPREFETCH_RANGE_MIN, NOPREFETCH_RANGE_MAX,
+       rtl_divmod_values_to_profile, insn_prefetch_values_to_profile,
+       find_mem_reference_1, find_mem_reference_2, find_mem_reference,
+       rtl_values_to_profile, rtl_divmod_fixed_value, rtl_mod_pow2,
+       rtl_mod_subtract, gen_speculative_prefetch,
+       rtl_divmod_fixed_value_transform, rtl_mod_pow2_value_transform,
+       rtl_mod_subtract_transform, speculative_prefetching_transform): Kill.
+       (gate_handle_value_profile_transformations,
+       rest_of_handle_value_profile_transformations,
+       pass_value_profile_transformations): Kill.
+       * value-prof.h (histogram_value_t): Remove IL based unions.
+       (rtl_register_value_prof_hooks, rtl_register_profile_hooks,
+       rtl_profile_hooks): Remove hooks.
+
+       * invoke.texi (-ftree-based-profiling, -fspeculative-prefetching): Kill.
+
+       * cgraph.c (cgraph_clone_edge): New UPDATE_ORIGINAL argument.
+       (cgraph_clone_node): Likewise.
+       * cgraph.h (cgraph_clone_edge): Update prototype.
+       (cgraph_clone_node): Likewise.
+       * ipa-inline.c (cgraph_clone_inlined_nodes): Update call of
+       cgraph_clone_node.
+       (lookup_recursive_calls): Consider profile.
+       (cgraph_decide_recursive_inlining): Fix updating; use new
+       probability argument; use profile.
+       * params.def (PARAM_MIN_INLINE_RECURSIVE_PROBABILITY): New.
+       * tree-inline.c (copy_bb): Update clal of clone_edge.
+       * tree-optimize.c (tree_rest_of_compilation): UPdate cal of clone_node.
+
+       * invoke.texi (min-inline-recursive-probability): Document.
+
+2005-07-28  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * doc/install.texi (Configuration): Update Valgrind homepage.
+
+2005-07-28  Richard Henderson  <rth@redhat.com>
+
+       PR middle-end/21362
+       * cfgrtl.c (rtl_merge_blocks): Call maybe_remove_eh_handler on
+       labels we want to delete.
+       (cfg_layout_merge_blocks): Likewise.
+
+2005-07-28  Richard Henderson  <rth@redhat.com>
+
+       PR target/17692
+       * config/i386/i386.c (ix86_split_sse_movcc): Emit DELETED note
+       when expanding to nothing.
+
+2005-07-28  Josh Conner  <jconner@apple.com>
+
+       * ipa-inline.c (update_caller_keys): Fix estimated_growth caching.
+       (cgraph_decide_inlining_of_small_functions): Likewise.
+
+2005-07-28  Josh Conner  <jconner@apple.com>
+
+       * ipa-inline.c (cgraph_edge_badness): Update comments.  Invert shift
+       direction of badness if negative.
+       (cgraph_default_inline_p): Add reason to parameters, and assign it
+       a value.
+       (cgraph_decide_inlining_of_small_functions): New parameter in call
+       to cgraph_default_inline_p.
+       (cgraph_decide_inlining_incrementally): Likewise.
+       * cgraphunit.c (decide_is_function_needed): Likewise.
+       * cgraph.h (cgraph_default_inline_p): Likewise.
+
+2005-07-28  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       * builtins.c: Fix comment typo(s).
+       * genautomata.c: Likewise.
+       * gimplify.c: Likewise.
+       * tree-dfa.c: Likewise.
+       * tree-flow-inline.h: Likewise.
+       * tree-into-ssa.c: Likewise.
+       * tree-ssa-alias.c: Likewise.
+       * tree-ssa-ccp.c: Likewise.
+       * tree-ssa-copy.c: Likewise.
+       * tree-ssa-dce.c: Likewise.
+       * tree-ssa-dom.c: Likewise.
+       * tree-ssa-operands.c: Likewise.
+       * tree-tailcall.c: Likewise.
+       * tree-vectorizer.c: Likewise.
+       * tree-vrp.c: Likewise.
+       * tree.c: Likewise.
+
+2005-07-28  Jeff Law  <law@redhat.com>
+
+       * tree-vrp.c (test_for_singularity): Extracted from  ...
+       (simplify_cond_using_ranges): Attempt to simplify a relational
+       test to NE_EXPR.  Dump information when a COND_EXPR is simplified.
+
+2005-07-28  Dorit Nuzman  <dorit@il.ibm.com>
+
+       PR tree-optimization/22506
+       * tree-vectorizer.c (update_phi_nodes_for_guard2): Skip loop-closed
+       phis whose argument is constant.
+
+2005-07-28  J"orn Rennecke <joern.rennecke@st.com>
+
+       PR rtl-optimization/18992
+       Back out this patch:
+         2003-10-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+         PR optimization/12142
+         * cse.c (count_reg_usage): In a SET with a REG SET_DEST, count the
+         uses of the register in the SET_SRC.  Remove unnecessary argument.
+
+       Replace it with this:
+       * cse.c (count_reg_usage): In INSN, JUMP_INSN and CALL_INSN cases,
+       if flag_non_call_exceptions is set and the insn may trap, pass
+       pc_rtx as dest for recursion.
+       In SET_SRC part of SET case, if dest is already set, pass it down
+       unchanged.
+
+2005-07-28  Jan Hubicka  <jh@suse.cz>
+
+       * cfg.c (update_bb_profile_for_threading): Use RDIV.
+       (scale_bbs_frequencies_int): Likewise, assert for possible overflow.
+       (scale_bbs_frequencies_gcov_type): Be more curefull about overflows and
+       roundoff errors.
+       * tree-cfg.c (tree_duplicate_sese_region): Use counts for updating
+       profile when available.
+
+2005-07-28  Jan Beulich <jbeulich@novell.com>
+
+       * config/ia64/ia64.c (ia64_load_pair_ok): New.
+       (ia64_print_operand): Describe and handle 'X'.
+       (ia64_register_move_cost): Also handle FP_REGS.
+       (ia64_preferred_reload_class): Likewise.
+       (ia64_secondary_reload_class): Likewise.
+       (ia64_dependencies_evaluation_hook): New local variable c. Initialize
+       it. Also check for ITANIUM_CLASS_FLDP.
+       * config/ia64/ia64.h (FP_REGNO_P): New.
+       (HARD_REGNO_MODE_OK): Remove explusion of TImode.
+       (reg_class): Add FP_REGS.
+       (REG_CLASS_NAMES): Adjust for it.
+       (REG_CLASS_CONTENTS): Likewise.
+       (REGNO_REG_CLASS): Use FP_REGS where appropriate.
+       (REG_CLASS_FROM_LETTER): Handle 'x'.
+       (CLASS_MAX_NREGS): Handle FP_REGS.
+       (MEMORY_MOVE_COST): Likewise.
+       * config/ia64/ia64.md (itanium_class): Add fldp.
+       (type): Handle fldp.
+       (movti_internal): More allowable operand combinations. Use ldfp8 when
+       splitting unnecessary. Remove predicable attribute. Adjust
+       itanium_class attribute.
+       (smuldi3_highpart): Remove outdated comment.
+       (mulditi3, umulditi3, rotlti3): New expanders.
+       (addti3, subti3, mulditi3_internal, umulditi3_internal, negti2, rotlti3_internal): New insns.
+       (absti2): Disabled new insn for future reference.
+       Respective new splitters.
+       * config/ia64/itanium1.md (1_fldp, 1b_fldp): New insn reservations.
+       * config/ia64/itanium2.md (2_fldp, 2b_fldp): Likewise.
+       * config/ia64/ia64-protos.h (ia64_load_pair_ok): New.
+
+2005-07-25  James A. Morrison  <phython@gcc.gnu.org>
+
+       PR rtl-optimization/23047
+       * simplify-rtx.c (simplify_const_relational_operation): Respect
+       flag_wrapv for comparisons with ABS.
+
+2005-07-27  James A. Morrison  <phython@gcc.gnu.org>
+
+       PR tree-optimization/22493
+       * tree-vrp.c (extract_range_from_unary_expr): Deal with -fwrapv and
+       VR_ANTI_RANGEs properly for NEGATE_EXPRs and ABS_EXPRs.
+
+2005-07-27  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/frv/frv.opt (moptimize-membar): New.
+
+       * doc/invoke.texi: Document -moptimize-membar and its inverse.
+
+       * config/frv/frv.h: Remove machine_function definition.
+
+       * config/frv/frv.c (struct frv_io): New.
+       (struct machine_function): Moved from frv.h.  Add has_membar_p.
+       (frv_same_doubleword_p, frv_io_fixed_order_p, frv_io_union)
+       (frv_extract_membar, frv_io_check_address, frv_io_handle_set)
+       (frv_io_handle_use_1, frv_io_handle_use, frv_optimize_membar_local)
+       (frv_optimize_membar_global, frv_optimize_membar): New functions.
+       (frv_reorg): Call frv_optimize_membar when appropriate.
+       (bdesc_loads, bdesc_stores): Use the membar code as the icode field.
+       (frv_expand_builtin): Adjust calls accordingly.
+       (frv_io_address_cookie): New function.
+       (frv_expand_load_builtin, frv_expand_store_builtin): Emit a normal
+       load or store rather than a special insn.  Add ccnstant address and
+       io-type operands to the membar.
+       (frv_ifcvt_modify_tests): Unsign regno.
+       (frv_ifcvt_modify_tests): Same.
+
+       * config/frv/frv.md: Remove UNSPEC_BUILTIN_{LOAD,STORE}.  Change
+       UNSPEC_OPTIONAL_MEMBAR constant.
+       (builtin_read_<mode>): Delete.
+       (builtin_write_<mode>): Delete.
+       ("optional_membar_<mode>"): Add operand.
+
+       * testsuite/gcc.target/frv/all-builtin-read8.c: Delete.
+       * testsuite/gcc.target/frv/all-builtin-read16.c: Delete.
+       * testsuite/gcc.target/frv/all-builtin-read32.c: Delete.
+       * testsuite/gcc.target/frv/all-builtin-read64.c: Delete.
+       * testsuite/gcc.target/frv/all-builtin-write8.c: Delete.
+       * testsuite/gcc.target/frv/all-builtin-write16.c: Delete.
+       * testsuite/gcc.target/frv/all-builtin-write32.c: Delete.
+       * testsuite/gcc.target/frv/all-builtin-write64.c: Delete.
+       * testsuite/gcc.target/frv/all-read-write-1.c: New.
+
+2005-07-28  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * df.c (df_uses_record): Handle SCRATCH.
+
+2005-07-28  Steven Bosscher  <stevenb@suse.de>
+
+       PR debug/20161
+       * passes.c (rest_of_decl_compilation): If decl is a type and
+       we have encountered errors, don't emit debug information.
+
+2005-07-27  Kenneth Zadeck <zadeck@naturalbridge.com>
+
+       * params.def: Fixed comment.
+       
 2005-07-27  Bjoern Haase  <bjoern.m.haase@web.de>
 
        PR target/19885