X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=3307d716977aa7f90be1897835445e2ca5bae522;hb=fd68342f263d114b2caf15f09d1792bed52d1a6a;hp=60c43a61bc53805f225b62c7d247b8f8f84999cf;hpb=5dcaa548b2384c5c5a7fe4dafefd4e61fa627ccf;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 60c43a61bc5..3307d716977 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,183 @@ +2012-02-07 Alan Modra + + PR target/52107 + * config/rs6000/rs6000.c (rs6000_emit_move): Don't create DImode + subregs of TFmode. + +2012-02-06 Bill Schmidt + + PR tree-optimization/50969 + * tree-vect-stmts.c (vect_model_store_cost): Correct statement cost to + use vec_perm rather than vector_stmt. + (vect_model_load_cost): Likewise. + * config/i386/i386.c (ix86_builtin_vectorization_cost): Change cost of + vec_perm to be the same as other vector statements. + * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Revise + cost of vec_perm for TARGET_VSX. + +2012-02-06 Richard Guenther + + PR tree-optimization/52115 + * tree-sra.c (access_has_replacements_p): New function. + (sra_modify_assign): Use it to decide whether a use is uninitialized. + +2012-02-06 Patrick Marlier + + PR middle-end/52047 + * trans-mem.c (expand_call_tm): Add an assertion. + * calls.c (flags_from_decl_or_type): Add ECF_TM_PURE to 'no vops' + functions. + +2012-02-06 Richard Guenther + + PR tree-optimization/50955 + * tree-ssa-loop-ivopts.c (get_computation_cost_at): Artificially + raise cost of expressions that replace an address with an + expression based on a different pointer. + +2012-02-06 Jakub Jelinek + + PR target/52129 + * calls.c (mem_overlaps_already_clobbered_arg_p): If val is + CONST_INT_P, subtract resp. add crtl->args.pretend_args_size to it. + +2012-02-06 Jonathan Wakely + + PR c++/48680 + * doc/invoke.texi (C++ Dialect Options): Use @option markup for + -Weffc++ and specify guidelines come from second edition. + +2012-02-05 Richard Sandiford + + * config/mips/mips.md (sibcall_internal, sibcall_value_internal) + (sibcall_value_multiple_internal, call_split, call_internal_direct) + (call_direct_split, call_value_split, call_value_internal_direct) + (call_value_direct_split, call_value_multiple_split): Use jal and + jal_macro attributes. + +2012-02-05 Richard Sandiford + + * reload1.c (reload_regs_reach_end_p): Replace with... + (reload_reg_rtx_reaches_end_p): ...this function. + (new_spill_reg_store): Update commentary. + (emit_input_reload_insns): Don't clear new_spill_reg_store here. + (emit_output_reload_insns): Check reload_reg_rtx_reaches_end_p + before setting new_spill_reg_store. + (emit_reload_insns): Use a separate loop to clear new_spill_reg_store. + Use reload_reg_rtx_reaches_end_p instead of reload_regs_reach_end_p. + Also use reload_reg_rtx_reaches_end_p when reading new_spill_reg_store + for non-spill reload registers. + +2012-02-05 Ira Rosen + + PR tree-optimization/52091 + * tree-vectorizer.h (vect_is_simple_use): Add an argument. + (vect_is_simple_use_1): Likewise. + * tree-vect-loop.c (vectorizable_reduction): Update calls + to vect_is_simple_use_1 and vect_is_simple_use. + (vectorizable_live_operation): Likewise. + * tree-vect-patterns.c (widened_name_p, + vect_recog_vector_vector_shift_pattern, check_bool_pattern): + Likewise. + * tree-vect-stmts.c (process_use, vect_get_vec_def_for_operand, + vectorizable_call, vectorizable_conversion, + vectorizable_assignment, vectorizable_shift, + vectorizable_operation, vectorizable_store, vectorizable_load): + Likewise. + (vect_is_simple_cond): Add an argument, pass it to + vect_is_simple_use_1. + (vectorizable_condition): Update calls to vect_is_simple_cond, + vect_is_simple_use. + (vect_is_simple_use): Add an argument, the statement in which + OPERAND is used. Check that if OPERAND's def stmt is a double + reduction phi node, the use is a phi node too. + (vect_is_simple_use_1): Add an argument, pass it to + vect_is_simple_use. + * tree-vect-slp.c (vect_get_and_check_slp_defs): Update a call + to vect_is_simple_use. + +2012-02-04 Jakub Jelinek + + PR rtl-optimization/52095 + * modulo-sched.c (dump_insn_locator): New function. + (loop_canon_p, sms_schedule): Use it. + + PR rtl-optimization/52113 + * lower-subreg.c (decompose_multiword_subregs): Call recog_memoized + even for decomposable shift/zext insns. + +2012-02-03 Jakub Jelinek + Zdenek Dvorak + + PR rtl-optimization/52092 + * loop-unswitch.c (unswitch_single_loop): Call copy_rtx_if_shared + on get_iv_value result. + +2012-02-02 Andrew Pinski + + PR middle-end/47982 + PR middle-end/43967 + * doc/libgcc.texi (__udivmoddi4/__udivmodti4): Fix documentation typo. + +2012-02-02 Jakub Jelinek + + PR middle-end/48071 + * diagnostic.c (diagnostic_finish): Remove trailing newlines. + +2012-02-02 Vladimir Makarov + + PR rtl-optimization/49800 + * haifa-sched.c (sched_init): Call regstat_init_n_sets_and_refs. + (sched_finish): Call regstat_free_n_sets_and_refs. + +2012-02-02 Jia Liu + + * config/mips/mips-dspr2.md (mips_prepend): Mask operand 3 rather + than operand 2. + +2012-02-02 Jan Hubicka + Tom de Vries + + PR middle-end/51998 + * cgraphunit.c (cgraph_analyze_function): Break cyclic aliases. + * varpool.c (varpool_analyze_pending_decls): Likewise. + +2012-02-02 Sumanth G + Jayant R Sonar + + * config.gcc: Add cr16-* support. + + * doc/extend.texi: Document cr16 extensions. + * doc/install.texi: Document cr16 install. + * doc/invoke.texi: Document cr16 options. + * doc/md.texi: Document cr16 constraints. + + * common/config/cr16/cr16-common.c: New file. + * config/cr16/cr16.c: New file. + * config/cr16/cr16.h: New file. + * config/cr16/cr16.md: New file. + * config/cr16/cr16.opt: New file. + * config/cr16/cr16-protos.h: New file. + * config/cr16/predicates.md: New file. + * config/cr16/constraints.md: New file. + * config/cr16/t-cr16: New file. + +2012-02-02 Jakub Jelinek + + PR target/52086 + * config/i386/i386.md (*addqi_2 peephole with SImode addition): Check + that operands[2] is either immediate, or q_regs_operand. + + PR tree-optimization/52073 + * tree-vect-stmts.c (vect_mark_relevant): When checking uses of + a pattern stmt for pattern uses, ignore uses outside of the loop. + +2012-02-01 Georg-Johann Lay + + * config/avr/avr.c: Resolve all AS1 and AS2 macros. + * config/avr/avr.h (AS1, AS2, AS2C, AS3): Remove. + (OUT_AS1, OUT_AS2): Remove. + 2012-02-01 Georg-Johann Lay PR rtl-optimization/51374