OSDN Git Service

* configure.ac: Add test for new section attribute
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 1abfbba..417ba5b 100644 (file)
@@ -1,3 +1,189 @@
+2011-09-28  Kai Tietz  <ktietz@redhat.com>
+
+       * configure.ac: Add test for new section attribute
+       specifier "e" via define HAVE_GAS_SECTION_EXCLUDE.
+       * config.in: Regenerated.
+       * configure: Regenerated.
+       * config/i386/winnt.c (i386_pe_asm_named_section): Emit
+       new section flag "e" for excluded sections, if supported.
+       Otherwise we mark section withc SECTION_EXCLUDE flag
+       as never-load.
+
+2011-09-28  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/m32r/m32r.md: Use match_test rather than eq/ne symbol_ref
+       throughout file.
+
+2011-09-28  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/iq2000/iq2000.md: Use match_test rather than eq/ne symbol_ref
+       throughout file.
+
+2011-09-27  Sriraman Tallam  <tmsriram@google.com>
+
+       * output.h (SECTION_EXCLUDE): New macro.
+       * varasm.c (default_elf_asm_named_section): Check for
+       SECTION_EXCLUDE.        
+
+2011-09-27  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * fwprop.c (forward_propagate_and_simplify): After checking
+       reg/subreg combinations, check whether the modes are the same.
+
+2011-09-27  Bernd Schmidt  <bernds@codesourcery.com>
+           Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config/mips/mips.c (mips_add_cfa_restore): New function.
+       (mips16e_save_restore_reg): Use it.
+       (mips_restore_reg): Likewise.  Split double FPRs for
+       REG_CFA_RESTORE notes.
+
+2011-09-27  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       PR middle-end/50386
+       PR middle-end/50326
+       * tree-sra.c (build_ref_for_model): Use the type of the field as
+       the type of the COMPONENT_REF.
+
+2011-09-27  Jeff Law  <law@redhat.com>
+
+       * ifcvt.c (cheap_bb_rtx_cost_p): Add SCALE argument.  Scale
+       non-jumping insns by REG_BR_PROB_BASE and the maximum cost
+       by SCALE.
+       (find_if_case_1): Use the probability of the THEN clause when
+       determining if speculation is profitable.
+       (find_if_case_2): Similarly for the ELSE clause.
+
+2011-09-27  Jakub Jelinek  <jakub@redhat.com>
+
+       * common.opt: Add -foptimize-strlen option.
+       * Makefile.in (OBJS): Add tree-ssa-strlen.o.
+       (tree-sssa-strlen.o): Add dependencies.
+       * opts.c (default_options_table): Enable -foptimize-strlen
+       by default at -O2 if not -Os.
+       * passes.c (init_optimization_passes): Add pass_strlen
+       after pass_object_sizes.
+       * timevar.def (TV_TREE_STRLEN): New timevar.
+       * params.def (PARAM_MAX_TRACKED_STRLENS): New parameter.
+       * tree-pass.h (pass_strlen): Declare.
+       * tree-ssa-strlen.c: New file.
+       * c-decl.c (merge_decls): If compatible stpcpy prototype
+       is seen, set implicit_built_in_decls[BUILT_IN_STPCPY].
+
+2011-09-27  Tom de Vries  <tom@codesourcery.com>
+
+       PR middle-end/43864
+       * tree-ssa-tail-merge.c: New file.
+       (struct same_succ_def): Define.
+       (same_succ, const_same_succ): New typedef.
+       (struct bb_cluster_def): Define.
+       (bb_cluster, const_bb_cluster): New typedef.
+       (struct aux_bb_info): Define.
+       (BB_SIZE, BB_SAME_SUCC, BB_CLUSTER, BB_VOP_AT_EXIT): Define.
+       (gvn_uses_equal): New function.
+       (same_succ_print, same_succ_print_traverse, update_dep_bb)
+       (stmt_update_dep_bb, local_def, same_succ_hash)
+       (inverse_flags, same_succ_equal, same_succ_alloc, same_succ_delete)
+       (same_succ_reset): New function.
+       (same_succ_htab, same_succ_edge_flags)
+       (deleted_bbs, deleted_bb_preds): New var.
+       (debug_same_succ): New function.
+       (worklist): New var.
+       (print_worklist, add_to_worklist, find_same_succ_bb, find_same_succ)
+       (init_worklist, delete_worklist, delete_basic_block_same_succ)
+       (same_succ_flush_bbs, purge_bbs, update_worklist): New function.
+       (print_cluster, debug_cluster, update_rep_bb)
+       (add_bb_to_cluster, new_cluster, delete_cluster): New function.
+       (all_clusters): New var.
+       (alloc_cluster_vectors, reset_cluster_vectors, delete_cluster_vectors)
+       (merge_clusters, set_cluster): New function.
+       (gimple_equal_p, gsi_advance_bw_nondebug_nonlocal, find_duplicate)
+       (same_phi_alternatives_1, same_phi_alternatives, bb_has_non_vop_phi)
+       (deps_ok_for_redirect_from_bb_to_bb, deps_ok_for_redirect)
+       (find_clusters_1, find_clusters): New function.
+       (update_vuses, vop_phi, vop_at_entry, replace_block_by): New function.
+       (update_bbs): New var.
+       (apply_clusters): New function.
+       (update_debug_stmt, update_debug_stmts): New function.
+       (tail_merge_optimize): New function.
+       tree-pass.h (tail_merge_optimize): Declare.
+       * tree-ssa-pre.c (execute_pre): Use tail_merge_optimize.
+       * Makefile.in (OBJS-common): Add tree-ssa-tail-merge.o.
+       (tree-ssa-tail-merge.o): New rule.
+       * opts.c (default_options_table): Set OPT_ftree_tail_merge by default at
+       OPT_LEVELS_2_PLUS.
+       * tree-ssa-sccvn.c (vn_valueize): Move to ...
+       * tree-ssa-sccvn.h (vn_valueize): Here.
+       * timevar.def (TV_TREE_TAIL_MERGE): New timevar.
+       * common.opt (ftree-tail-merge): New switch.
+       * params.def (PARAM_MAX_TAIL_MERGE_COMPARISONS)
+       (PARAM_MAX_TAIL_MERGE_ITERATIONS): New parameter.
+       * doc/invoke.texi (Optimization Options, -O2): Add -ftree-tail-merge.
+       (-ftree-tail-merge, max-tail-merge-comparisons)
+       (max-tail-merge-iterations): New item.
+
+2011-09-27  Jan Hubicka  <jh@suse.cz>
+
+       * ipa-inline-analysis.c (MAX_TIME): Reduce to avoid overflows.
+
+2011-09-27  Jan Hubicka  <jh@suse.cz>
+
+       * ipa-inline-analysis.c (eliminated_by_inlining_prob): Handle parameters
+       passed by reference; handle loads from non-SSA scalars and update comments.
+
+2011-09-27  Bernd Schmidt  <bernds@codesourcery.com>
+
+       PR rtl-optimization/50249
+       * reload1.c (reload_reg_reaches_end_p): Accept a reloadnum argument
+       instead of opnum and type.  All callers changed.  Remove useless
+       declaration.
+       Search forward for other reloads of the same type for the same operand
+       using the same register; if any are found, return false.
+       (reload_regs_reach_end_p): Same argument changes; all callers changed.
+
+2011-09-27  Andi Kleen  <ak@linux.intel.com>
+           Jan Hubicka  <jh@suse.cz>
+
+       * doc/invoke.texi (ffat-lto-objects): Document.
+       * toplev.c (compile_file): Do not output assembly when doing slim lto;
+       Output __gnu_slim_lto when doing slim lto.
+       * cgraphunit.c (ipa_passes): Do only analysis when producing slim lto.
+       (cgraph_optimize): Return early when doing slim lto.
+       * opts.c (finish_options): Complain about lack of linker plugin
+       when doing slim lto.
+       * common.opt (ffat-lto-objects): New.
+
+2011-09-27  Richard Sandiford  <richard.sandiford@linaro.org>
+
+       * ipa-inline-analysis.c (predicate_probability): Avoid comparison
+       between signed and unsigned.
+
+2011-09-27  Ira Rosen  <ira.rosen@linaro.org>
+
+       * tree-vect-stmts.c (vectorizable_type_demotion): Handle basic block
+       vectorization.
+       (vectorizable_type_promotion): Likewise.
+       (vect_analyze_stmt): Call vectorizable_type_demotion and
+       vectorizable_type_promotion for basic blocks.
+       (supportable_widening_operation): Don't assume loop vectorization.
+       * tree-vect-slp.c (vect_build_slp_tree): Allow multiple types for
+       basic blocks.  Update vectorization factor for basic block
+       vectorization.
+       (vect_analyze_slp_instance): Allow multiple types for basic block
+       vectorization.  Recheck unrolling factor after construction of SLP
+       instance.
+
+2011-09-27  Richard Guenther  <rguenther@suse.de>
+
+       * tree-object-size.c (compute_object_sizes): Fix dumping of
+       folded statement.
+
+2011-09-27  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/50363
+       * tree-ssa-pre.c (create_expression_by_pieces): Handle
+       pointer conversions in POINTER_PLUS_EXPRs properly.
+
 2011-09-27  Richard Sandiford  <richard.sandiford@linaro.org>
 
        * config/arm/neon.md (neon_vget_highv16qi, neon_vget_highv8hi)