OSDN Git Service

2010-12-02 Richard Guenther <rguenther@suse.de>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 8d8c120..1b942af 100644 (file)
@@ -1,3 +1,209 @@
+2010-12-02  Richard Guenther  <rguenther@suse.de>
+
+       * value-prof.c (gimple_ic): Use stmt_ends_bb_p to detect
+       the case we need to split the edge and not the block.
+
+2010-12-02  Bernd Schmidt  <bernds@codesourcery.com>
+
+       DFA model for Core 2 and Core i7 scheduling.
+
+       * config/i386/core2.md: New DFA model for Core 2 and Core i7.
+       * config/i386/i386.c (ix86_option_override_internal): Update entries
+       for Core 2 and Core i7.
+       (ix86_issue_rate): Set issue rate to 3 [be realistic].
+       * config/i386/i386.md: Include "core2.md".
+       (define_attr cpu): Add "corei7".
+
+2010-12-02  Maxim Kuvyrkov  <maxim@codesourcery.com>
+
+       Define tuning for Core 2 and Core i7.
+
+       * config/i386/i386-c.c (ix86_target_macros_internal): Update.
+       * config/i386/i386.c (core2_cost): Delete, use generic costs instead.
+       (m_CORE2): Replace with m_CORE2_{32,64}.
+       (m_CORE2I7{,_32,_64}): New macros.
+       (m_GENERIC32, m_GENERIC64): Update.
+       (initial_ix86_tune_features, x86_accumulate_outgoing_args,)
+       (x86_arch_always_fancy_math_387): Set m_CORE2I7_32 iff m_GENERIC32 and
+       set m_CORE2I7_64 iff m_GENERIC64.
+       (processor_target_table): Use generic costs for Core 2 and Core i7.
+       (ix86_option_override_internal): Update entries for Core 2 and Core i7.
+       (ix86_issue_rate): Remove entry for Core 2.
+       (ia32_multipass_dfa_lookahead, ix86_sched_init_global): Update.
+       * config/i386/i386.h (TARGET_CORE2_32, TARGET_CORE2_64): New macros.
+       (TARGET_CORE2): Update.
+       (PROCESSOR_CORE2_32, PROCESSOR_CORE2_64): New constants.
+       (PROCESSOR_CORE2): Remove.
+
+2010-12-02  Richard Guenther  <rguenther@suse.de>
+
+       * lto-streamer.h (LTO_major_version): Bump to 2.
+
+2010-12-02  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/44871
+       * gimple.c (canonical_type_hash_cache): New hashtable.
+       (gimple_type_hash): Make a wrapper around ...
+       (gimple_type_hash_1): ... this.  Take gtc_mode argument.
+       (gimple_canonical_type_hash): Likewise.
+       (gtc_visit): Take a gtc_mode argument.
+       (gimple_types_compatible_p_1): Likewise. Do not compare struct
+       tag names or field names when computing canonical types.
+       (gimple_types_compatible_p): Adjust.
+       (visit): Take a gtc_mode argument.
+       (iterative_hash_gimple_type): Likewise.  Do not hash struct tag
+       names or field names when computing hashes of canonical types.
+       (gimple_register_canonical_type): Use gimple_canonical_type_hash
+       for the hash.
+       (print_gimple_types_stats): Dump stats of canonical_type_hash_cache.
+       (free_gimple_type_tables): Free canonical_type_hash_cache.
+
+2010-12-02  Richard Guenther  <rguenther@suse.de>
+           Ira Rosen  <irar@il.ibm.com>
+
+       PR tree-optimization/46663
+       * tree-vect-patterns.c (vect_recog_pow_pattern): Check that
+       FUNCTION_DECL exists and that it's a builtin.
+
+2010-12-02  Jie Zhang  <jie@codesourcery.com>
+
+       PR middle-end/46674
+       * varasm.c (compute_visible_aliases): Handle user set
+       assembler name.
+
+2010-12-01  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       * config/rs6000/rs6000.c (rs6000_option_override_internal): Fix
+       thinko regarding setting -mno-<xxx> debug switches.
+       (rs6000_rtx_costs): Add FMA.  Delete old rtl based FMA costs.
+
+2010-12-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * intl.c: Don't include tm.h.
+       * Makefile.in (intl.o): Don't depend on $(TM_H).
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (analyze_drs_in_stmts): Fix set but
+       unused warning.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (analyze_drs): Removed.
+       (build_scop_drs): Do not call analyze_drs.
+       (analyze_drs_in_stmts): New.
+       (insert_stmts): New.
+       (insert_out_of_ssa_copy): Call analyze_drs_in_stmts.
+       (insert_out_of_ssa_copy_on_edge): Same.
+       (rewrite_close_phi_out_of_ssa): Call insert_stmts.
+       (rewrite_phi_out_of_ssa): Same.
+       (rewrite_cross_bb_scalar_dependence): Same.
+       (split_reduction_stmt): Move data references in the new basic blocks.
+       (translate_scalar_reduction_to_array_for_stmt): Call insert_stmts.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * sese.c (rename_uses): Do not handle ADDR_EXPR in LHS of assignments.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR middle-end/45297
+       * graphite-poly.c (new_poly_bb): Returns a poly_bb_p.  Do not take
+       the reduction bool in parameter.  Clear PBB_IS_REDUCTION.  Set GBB_PBB.
+       * graphite-poly.h (new_poly_bb): Update declaration.
+       (gbb_from_bb): Moved here...
+       (pbb_from_bb): New.
+       * graphite-sese-to-poly.c (var_used_in_not_loop_header_phi_node):
+       Removed.
+       (graphite_stmt_p): Removed.
+       (try_generate_gimple_bb): Returns a gimple_bb_p.  Do not pass in
+       sbitmap reductions.  Always build a gimple_bb_p.  Do not call
+       new_poly_bb.
+       (build_scop_bbs_1): Do not pass in sbitmap reductions.
+       (build_scop_bbs): Same.
+       (gbb_from_bb): ... from here.
+       (add_conditions_to_constraints): Moved up.
+       (analyze_drs): New.
+       (build_scop_drs): Call analyze_drs.  Remove all the PBBs that do
+       not contain data references.
+       (new_pbb_from_pbb): New.
+       (insert_out_of_ssa_copy_on_edge): Call new_pbb_from_pbb after a
+       block is split.
+       (rewrite_close_phi_out_of_ssa): Update call to
+       insert_out_of_ssa_copy_on_edge.
+       (rewrite_reductions_out_of_ssa): Now static.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
+       (split_pbb): New.
+       (split_reduction_stmt): Call split_pbb.
+       (translate_scalar_reduction_to_array): Pass in the scop, do not
+       pass in the sbitmap reductions.
+       (rewrite_commutative_reductions_out_of_ssa_close_phi): Same.
+       (rewrite_commutative_reductions_out_of_ssa_loop): Same.
+       (rewrite_commutative_reductions_out_of_ssa): Same.
+       (build_poly_scop): Call build_scop_bbs,
+       rewrite_commutative_reductions_out_of_ssa,
+       rewrite_reductions_out_of_ssa, and
+       rewrite_cross_bb_scalar_deps_out_of_ssa.  Move build_scop_drs
+       before scop_to_lst.
+       * graphite-sese-to-poly.h (rewrite_commutative_reductions_out_of_ssa):
+       Removed declaration.
+       (rewrite_reductions_out_of_ssa): Same.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
+       (build_scop_bbs): Same.
+       * graphite.c (graphite_transform_loops): Do not initialize reductions.
+       Do not call build_scop_bbs,
+       rewrite_commutative_reductions_out_of_ssa,
+       rewrite_reductions_out_of_ssa, and
+       rewrite_cross_bb_scalar_deps_out_of_ssa.
+       * sese.h (struct gimple_bb): Add field pbb.
+       (GBB_PBB): New.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (handle_scalar_deps_crossing_scop_limits):
+       New.
+       (rewrite_cross_bb_scalar_deps): Pass in the scop.  Call
+       handle_scalar_deps_crossing_scop_limits.
+       (rewrite_cross_bb_scalar_deps_out_of_ssa): Create an empty BB
+       after the scop.  Update call to rewrite_cross_bb_scalar_deps.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * sese.c (rename_uses): Call recompute_tree_invariant_for_addr_expr
+       when replacing a constant in an ADDR_EXPR.
+
+2010-12-01  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-blocking.c (lst_do_strip_mine_loop): Extra parameter
+       for the stride.
+       (lst_do_strip_mine): Same.
+       (scop_do_strip_mine): Same.
+       * graphite-poly.c (apply_poly_transforms): Update call to
+       scop_do_strip_mine.
+       * graphite-poly.h (scop_do_strip_mine): Update declaration.
+
+2010-12-01  Jan Hubicka  <jh@suse.cz>
+
+       * tree.c (build_common_builtin_nodes): Do not initialize
+       BUILT_IN_PROFILE_FUNC_ENTER and BUILT_IN_PROFILE_FUNC_EXIT.
+       * builtins.c (expand_builtin_profile_func): Remove.
+       (expand_builtin): Do not handle BUILT_IN_PROFILE_FUNC_ENTER and
+       BUILT_IN_PROFILE_FUNC_EXIT.
+       * builtins.def (profile_func_enter, profile_func_exit): Remove stubs.
+       (__cyg_profile_func_enter, __cyg_profile_func_exit): New.
+       * gimplify.c (gimplify_function_tree): Reorganize code calling
+       profiling functions.
+
+2010-12-01  Joseph Myers  <joseph@codesourcery.com>
+
+       * opts.c: Expand comment on tm.h include.
+
+2010-12-01  Yao Qi  <yao@codesourcery.com>
+
+       * config/arm/predicates.md ("vfp_register_operand"): Return true for
+       VFP_D0_D7_REGS classes.
+
 2010-12-01  Joseph Myers  <joseph@codesourcery.com>
 
        * common.opt (flag_stack_check): New Variable entry.