OSDN Git Service

2012-01-09 Richard Guenther <rguenther@suse.de>
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 9 Jan 2012 10:11:38 +0000 (10:11 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 9 Jan 2012 10:11:38 +0000 (10:11 +0000)
        Rotate changelogs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183007 138bc75d-0d04-0410-961f-82ee72b054a4

14 files changed:
gcc/ChangeLog
gcc/ChangeLog-2011 [new file with mode: 0644]
gcc/ada/ChangeLog
gcc/ada/ChangeLog-2011 [new file with mode: 0644]
gcc/cp/ChangeLog
gcc/cp/ChangeLog-2011 [new file with mode: 0644]
gcc/fortran/ChangeLog
gcc/fortran/ChangeLog-2011 [new file with mode: 0644]
gcc/testsuite/ChangeLog
gcc/testsuite/ChangeLog-2011 [new file with mode: 0644]
libgfortran/ChangeLog
libgfortran/ChangeLog-2011 [new file with mode: 0644]
libjava/ChangeLog
libjava/ChangeLog-2011 [new file with mode: 0644]

index 4cce735..22fb1bd 100644 (file)
        * tree-ssa-propagate.c (substitute_and_fold): Don't optimize away
        calls with side-effects.
        * tree-ssa-ccp.c (ccp_fold_stmt): Likewise.
-
-2011-12-31  Alexandre Oliva  <aoliva@redhat.com>
-
-       * cselib.h (cselib_add_permanent_equiv): Declare.
-       (canonical_cselib_val): New.
-       * cselib.c (new_elt_loc_list): Rework to support value
-       equivalences.  Adjust all callers.
-       (preserve_only_constants): Retain value equivalences.
-       (references_value_p): Retain preserved values.
-       (rtx_equal_for_cselib_1): Handle value equivalences.
-       (cselib_invalidate_regno): Use canonical value.
-       (cselib_add_permanent_equiv): New.
-       * alias.c (find_base_term): Reset locs lists while recursing.
-       * var-tracking.c (val_bind): New.  Don't add equivalences
-       present in cselib table, compared with code moved from...
-       (val_store): ... here.
-       (val_resolve): Use val_bind.
-       (VAL_EXPR_HAS_REVERSE): Drop.
-       (add_uses): Do not create MOps for addresses.  Do not mark
-       non-REG non-MEM expressions as requiring resolution.
-       (reverse_op): Record reverse as a cselib equivalence.
-       (add_stores): Use it.  Do not create MOps for addresses.
-       Do not require resolution for non-REG non-MEM expressions.
-       Simplify support for reverse operations.
-       (compute_bb_dataflow): Drop reverse support.
-       (emit_notes_in_bb): Likewise.
-       (create_entry_value): Rename to...
-       (record_entry_value): ... this.  Use cselib equivalences.
-       (vt_add_function_parameter): Adjust.
-
-2011-12-30  Michael Meissner  <meissner@linux.vnet.ibm.com>
-
-       * config/rs6000/rs6000.c (rs6000_inner_target_options): Fix thinko
-       in setting options via target #pragma or attribute.
-
-2011-12-30  Anatoly Sokolov  <aesok@post.ru>
-
-       * config/bfin/bfin.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
-       * config/bfin/bfin-protos.h (bfin_register_move_cost,
-       bfin_memory_move_cost): Remove.
-       * config/bfin/bfin.c (bfin_register_move_cost,
-       bfin_memory_move_cost): Make static. Change arguments type from
-       enum reg_class to reg_class_t and from int to bool.
-       (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
-
-2011-12-30  Nathan Sidwell  <nathan@acm.org>
-
-       * gcov.c (total_lines, total_executed): New global vars.
-       (generate_results): Call executed_summary.
-       (executed_summary): New function, broken out of ...
-       (function_summary): ... here.  Call it.
-       * coverage.c (coverage_finish): Also check for local_tick == -1.
-       * gcov-dump (tag_function): Correct labelling typo.
-
-2011-12-29  Michael Meissner  <meissner@linux.vnet.ibm.com>
-
-       PR target/51623
-       * config/rs6000/rs6000.c (rs6000_assemble_integer): Delete check
-       for an initialized pointer being in a text section with
-       -mrelocatable, since it should never happen.
-
-2011-12-29  Michael Eager  <eager@eagercon.com>
-
-       * config/microblaze/microblaze.md: Add expander for simple_return,
-       return, add return_internal and simple_return_internal insns.
-
-2011-12-29  Oleg Endo  <olegendo@gcc.gnu.org>
-
-       * config/sh/sh.h (BRANCH_COST): Use sh_branch_cost variable.
-       * config/sh/sh.c (sh_option_override): Simplify sh_branch_cost
-       expression.
-
-2011-12-28  Ian Lance Taylor  <iant@google.com>
-
-       * dwarf2out.c (gen_compile_unit_die): Use DW_LANG_Go for Go.
-
-2011-12-28  Michael Meissner  <meissner@linux.vnet.ibm.com>
-
-       PR target/51623
-       * config/rs6000/rs6000.c (rs6000_assemble_integer): Don't call
-       unlikely_text_section_p.  Instead check for being in a code section.
-
-2011-12-28  Ira Rosen  <irar@il.ibm.com>
-
-       PR tree-optimization/51684
-       * tree-vect-slp.c (vect_schedule_slp_instance): Get gsi of original
-       statement in case of a pattern.
-       (vect_schedule_slp): Likewise.
-
-2011-12-27  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR rtl-optimization/51667
-       * ree.c (insn_merge_code): Delete.
-       (is_insn_merge_attempted): Likewise.
-       (get_insn_status): Likewise.
-       (set_insn_status): Likewise.
-       (struct ext_cand): Add CODE and MODE fields.
-       (combine_set_extend): Rename to...
-       (combine_set_extension): ...this.  Use above fields and tidy up.
-       (transform_ifelse): Likewise.
-       (get_defs): Return the chain of definitions.
-       (is_this_a_cmove): Merge into...
-       (is_cond_copy_insn): ...this.  Return bool.
-       (make_defs_and_copies_lists): Adjust calls to get_defs and simplify.
-       (merge_def_and_ext): Adjust call to combine_set_extend.
-       (combine_reaching_defs): Remove calls to {g|s}et_insn_status.
-       (struct extend_info): Rename to...
-       (struct re_info): ...this.  Add DEF_MAP field.
-       (add_ext_candidate): Merge into...
-       (add_removable_extension): ...this.  Adjust calls to get_defs.  Ensure
-       reaching definitions are associated with only one kind of extension.
-       (find_removable_extensions): Create and destroy the definition map.
-       (find_and_remove_re): Return void.  Change 'long' variables to 'int'.
-       Do not deal with is_insn_merge_attempted.
-
-2011-12-25  Jan Hubicka  <jh@suse.cz>
-
-       PR middle-end/48641
-       * tree-ssa-threadupdate.c (redirect_edges): Watch for overflow.
-
-2011-12-26  Oleg Endo  <oleg.endo@t-online.de>
-
-       * config/sh/sync.md: Add soft atomics ABI description.
-       (fetchop_name): Use 'or' instead of 'ior'.
-       (fetchop_insn): Remove.
-       (atomic_compare_and_swap<mode>_soft):
-       Don't insert aligning nop after the write-back instruction.  Fix
-       multi-line asm output formatting style.
-       (atomic_fetch_<fetchop_name><mode>_soft): Likewise.
-       (atomic_fetch_nand<mode>_soft): Likewise.
-       (atomic_<fetchop_name>_fetch<mode>_soft): Likewise.
-       (atomic_nand_fetch<mode>_soft): Likewise.
-
-2011-12-23  Richard Henderson  <rth@redhat.com>
-
-       * tree.def (VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR): Remove.
-       * cfgexpand.c (expand_debug_expr): Don't handle them.
-       * expr.c (expand_expr_real_2): Likewise.
-       * fold-const.c (fold_binary_loc): Likewise.
-       * gimple-pretty-print.c (dump_binary_rhs): Likewise.
-       * tree-cfg.c (verify_gimple_assign_binary): Likewise.
-       * tree-inline.c (estimate_operator_cost): Likewise.
-       * tree-pretty-print.c (dump_generic_node): Likewise.
-       * tree-vect-generic.c (expand_vector_operations_1): Likewise.
-       * optabs.c (optab_for_tree_code): Likewise.
-       (can_vec_perm_for_code_p): Remove.
-       (expand_binop): Don't try it.
-       (init_optabs): Don't init vec_extract_even/odd_optab.
-       * genopinit.c (optabs): Likewise.
-       * optabs.h (OTI_vec_extract_even, OTI_vec_extract_odd): Remove.
-       (vec_extract_even_optab, vec_extract_odd_optab): Remove.
-       * tree-vect-data-refs.c (vect_strided_store_supported): Tidy code.
-       (vect_permute_store_chain): Use TYPE_VECTOR_SUBPARTS instead of
-       GET_MODE_NUNITS; check vect_gen_perm_mask return value instead of
-       asserting vect_strided_store_supported.
-       (vect_strided_load_supported): Use can_vec_perm_p.
-       (vect_permute_load_chain): Use VEC_PERM_EXPR.
-
-       * doc/generic.texi (VEC_EXTRACT_EVEN_EXPR): Remove.
-       (VEC_EXTRACT_ODD_EXPR): Remove.
-       * doc/md.texi (vec_extract_even, vec_extract_odd): Remove.
-
-2011-12-23  Anatoly Sokolov  <aesok@post.ru>
-
-       * config/score/score.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
-       * config/score/score-protos.h (score_register_move_cost): Remove.
-       * config/score/score.c (TARGET_REGISTER_MOVE_COST): Define.
-       (score_register_move_cost): Make static. Change arguments type from
-       enum reg_class to reg_class_t.
-
-2011-12-23  Jakub Jelinek  <jakub@redhat.com>
-           Richard Henderson  <rth@redhat.com>
-
-       * tree.def (VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR): Remove.
-       * gimple-pretty-print.c (dump_binary_rhs): Don't handle
-       VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
-       * expr.c (expand_expr_real_2): Likewise.
-       * tree-cfg.c (verify_gimple_assign_binary): Likewise.
-       * cfgexpand.c (expand_debug_expr): Likewise.
-       * tree-inline.c (estimate_operator_cost): Likewise.
-       * tree-pretty-print.c (dump_generic_node): Likewise.
-       * tree-vect-generic.c (expand_vector_operations_1): Likewise.
-       * fold-const.c (fold_binary_loc): Likewise.
-       * doc/generic.texi (VEC_INTERLEAVE_HIGH_EXPR,
-       VEC_INTERLEAVE_LOW_EXPR): Remove documentation.
-       * optabs.c (optab_for_tree_code): Don't handle
-       VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
-       (expand_binop, init_optabs): Remove vec_interleave_high_optab
-       and vec_interleave_low_optab.
-       * genopinit.c (optabs): Likewise.
-       * optabs.h (OTI_vec_interleave_high, OTI_vec_interleave_low): Remove.
-       (vec_interleave_high_optab, vec_interleave_low_optab): Remove.
-       * doc/md.texi (vec_interleave_high, vec_interleave_low): Remove
-       documentation.
-       * tree-vect-stmts.c (gen_perm_mask): Renamed to...
-       (vect_gen_perm_mask): ... this.  No longer static.
-       (perm_mask_for_reverse, vectorizable_load): Adjust callers.
-       * tree-vectorizer.h (vect_gen_perm_mask): New prototype.
-       * tree-vect-data-refs.c (vect_strided_store_supported): Don't try
-       VEC_INTERLEAVE_*_EXPR, use can_vec_perm_p instead of
-       can_vec_perm_for_code_p.
-       (vect_permute_store_chain): Generate VEC_PERM_EXPR with interleaving
-       masks instead of VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
-       * config/i386/i386.c (expand_vec_perm_interleave2): If
-       expand_vec_perm_interleave3 would handle it, return false.
-       (expand_vec_perm_broadcast_1): Don't use vec_interleave_*_optab.
-
-2011-12-23  Richard Henderson  <rth@redhat.com>
-
-       * config/mips/loongson.md (UNSPEC_LOONGSON_PINSR_0,
-       UNSPEC_LOONGSON_PINSR_1, UNSPEC_LOONGSON_PINSR_2,
-       UNSPEC_LOONGSON_PINSR_3): Replace with...
-       (UNSPEC_LOONGSON_PINSRH): ... this.
-       (UNSPEC_LOONGSON_VINIT): New.
-       (UNSPEC_LOONGSON_DSLL, UNSPEC_LOONGSON_DSRL): New.
-       (VWB): New mode iterator.
-       (V_inner): New mode attribute.
-       (loongson_vec_init1_<VHB>): New.
-       (*vec_concatv2si): New.
-       (and<VWHB>3, ior<VWHB>3, xor<VWHB>3, one_cmpl<VWHB>2): New.
-       (*loongson_nor): New.
-       (loongson_pextrh): Un-macro-ify.
-       (loongson_pmaddhw): Likewise.
-       (smaxv4hi3, umaxv8qi3, sminv4hi3, uminv8qi3): Likewise.
-       (loongson_pinsrh_0): Represent with vec_select+vec_concat.
-       (loongson_pinsrh_1, loongson_pinsrh_2, loongson_pinsrh_3): Likewise.
-       (*vec_setv4hi, vec_setv4hi): New.
-       (sdot_prodv4hi): New.
-       (smax<VWB>3, smin<VWB>3): New.
-       (reduc_uplus_v8qi): New.
-       (loongson_pshufh): Remove destination matching input.
-       (ashl<VWH>3, ashr<VWH>3, lshr<VWH>3): Fix type attribute.
-       (vec_interleave_high<VWHB>, vec_interleave_low<VWHB>): Remove.
-       (loongson_punpckhbh, loongson_punpckhhw, loongson_punpckhhw_qi,
-       loongson_punpckhwd, loongson_punpckhwd_qi, loongson_punpckhwd_hi,
-       loongson_punpcklbh, loongson_punpcklhw, loongson_punpcklhw_qi,
-       loongson_punpcklwd, loongson_punpcklwd_qi, loongson_punpcklwd_hi,
-       vec_perm_const<VWHB>, vec_unpacks_lo_<VHB>, vec_unpacks_hi_<VHB>,
-       vec_unpacku_lo_<VHB>, vec_unpacku_hi_<VHB>, vec_shl_<VWHBDI>,
-       vec_shr_<VWHBDI>, reduc_uplus_<VWH>, reduc_splus_<VWHB>,
-       reduc_smax_<VWHB>, reduc_smin_<VWHB>, reduc_umax_<VWHB>,
-       reduc_umin_<VB>): New.
-       * config/mips/mips-ps-3d.md (vec_perm_const_ps): New.
-       (mips_pul_ps, mips_puu_ps, mips_pll_ps, mips_plu_ps): Expand in
-       terms of vec_perm_const_ps.
-       (vec_perm_constv2sf): New.
-       (vec_initv2sf): Use mips_expand_vector_init.
-       (vec_concatv2sf): Rename from vec_initv2sf_internal.
-       (vec_setv2sf): Use vec_perm_const_ps.
-       (reduc_splus_v2sf, reduc_smin_v2sf, reduc_smax_v2sf): New.
-       * config/mips/loongson.h (pshufh_u, pshufh_s): Don't pass dest to
-       the builtin.
-       * config/mips/mips-modes.def (V16QI, V8HI, V4SI, V4SF): New modes.
-       * config/mips/mips-protos.h: Update.
-       * config/mips/mips.c (mips_get_arg_info): Match V2SFmode, not all
-       MODE_VECTOR_FLOAT.
-       (mips_return_mode_in_fpr_p): Likewise.
-       (mips_cannot_change_mode_class): Allow 8-byte integral mode changes.
-       (CODE_FOR_loongson_punpckhbh, CODE_FOR_loongson_punpckhhw,
-       CODE_FOR_loongson_punpckhwd, CODE_FOR_loongson_punpcklbh,
-       CODE_FOR_loongson_punpcklhw, CODE_FOR_loongson_punpcklwd): Remove.
-       (mips_builtins): Remove first operand for loongson pshufh builtins.
-       (MAX_VECT_LEN, struct expand_vec_perm_d): New.
-       (mips_expand_vselect, mips_expand_vselect_vconcat,
-       mips_expand_vpc_loongson_even_odd, mips_expand_vpc_loongson_pshufh,
-       mips_expand_vpc_loongson_bcast, mips_expand_vec_perm_const_1,
-       mips_expand_vec_perm_const, mips_vectorize_vec_perm_const_ok,
-       mips_expand_vec_unpack, mips_constant_elt_p, mips_expand_vi_broadcast,
-       mips_expand_vi_constant, mips_expand_vi_loongson_one_pinsrh,
-       mips_expand_vi_general, mips_expand_vec_reduc, mips_expand_vec_minmax,
-       TARGET_VECTORIZE_VEC_PERM_CONST_OK): New.
-       (mips_expand_vector_init): Rewrite.
-       * config/mips/predicates.md (const_2_or_3_operand): New.
-       (const_0_to_3_operand): New.
-
-2011-12-23  Dmitry Plotnikov  <dplotnikov@ispras.ru>
-
-       * config/arm/neon.md (float<mode><V_cvtto>2): New.
-       (floatuns<mode><V_cvtto>2): New.
-       (fix_trunc<mode><V_cvtto>2): New.
-       (fix_truncuns<mode><V_cvtto>2): New.
-       * config/arm/iterators.md (V_cvtto): New iterator.
-
-2011-12-23  Richard Guenther  <rguenther@suse.de>
-
-       PR rtl-optimization/50396
-       * simplify-rtx.c (simplify_binary_operation_1): Properly
-       guard code that only works for integers.
-
-2011-12-23  Tristan Gingold  <gingold@adacore.com>
-
-       * config/vms/vms-crtlmap.map (log10): Fix typo.
-
-2011-12-23  Tristan Gingold  <gingold@adacore.com>
-
-       * config/ia64/vms.h (SUPPORTS_ONE_ONLY): Define.
-
-2011-12-22  Bin Cheng  <bin.cheng@arm.com>
-       Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/43491
-       * tree-ssa-pre.c (eliminate): Don't replace global register
-       variable when it is the RHS of a single assign.
-
-2011-12-22  Joey Ye  <joey.ye@arm.com>
-
-       * toplev.c (process_options): Fix typo.
-
-2011-12-22  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
-
-       PR middle-end/51252
-       * config/pa/pa.c (pa_som_tm_clone_table_section): New function.
-       (som_tm_clone_table_section): Declare.
-       (pa_file_start_space): Create $TM_CLONE_TABLE$ subspace.
-       (pa_som_asm_init_sections): Init som_tm_clone_table_section.
-       * config/pa/som.h (TARGET_ASM_TM_CLONE_TABLE_SECTION): Define.
-
-2011-12-22  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       * doc/tm.texi.in (TARGET_PREPARE_PCH_SAVE): New hook.
-       * doc/tm.texi: Regenerate.
-       * target.def (prepare_pch_save): New hook.
-       * c-family/c-pch.c (c_common_write_pch): Call it.
-       * config/mips/mips.c (was_mips16_pch_p): Delete.
-       (mips_set_mips16_mode): Don't refer to was_mips16_pch_p.
-       (mips_prepare_pch_save): New function.
-       (TARGET_PREPARE_PCH_SAVE): Define.
-
-2011-12-22  Aldy Hernandez  <aldyh@redhat.com>
-
-       PR middle-end/51212
-       * opts.c (finish_options): Call sorry on -fgnu-tm and
-       -fnon-call-exceptions combination.
-
-2011-12-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
-
-       * doc/invoke.texi (C++ Dialect Options): Add missing options and
-       move -Wzero-as-null-pointer-constant to ...
-       (Warning Options): ... here.
-
-2011-12-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
-
-       PR target/47643
-       * doc/invoke.texi (i386 and x86-64 Options): Fix description of
-       -mtune without -march.
-
-2011-12-21  Richard Earnshaw  <rearnsha@arm.com>
-
-       PR target/51643
-       * arm.c (arm_function_ok_for_sibcall): Use DECL_WEAK in previous
-       change.
-
-2011-12-22  Tristan Gingold  <gingold@adacore.com>
-
-       * config/ia64/ia64.c (ia64_promote_function_mode): Remove.
-       (TARGET_PROMOTE_FUNCTION_MODE): Remove.
-       (ia64_function_value): Call promote_function_mode instead of
-       ia64_promote_function_mode.
-       * config/ia64/vms.h (PROMOTE_MODE): Define.
-       (TARGET_PROMOTE_FUNCTION_MODE): Define.
-
-2011-12-22  Uros Bizjak  <ubizjak@gmail.com>
-
-       PR target/27468
-       * common/config/alpha/alpha-common.c (alpha_option_optimization_table):
-       Enable flag_ree at -O2 or higher.
-
-2011-12-22  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/51650
-       * lto.c (uniquify_nodes): Register TYPE_DECLs with the
-       debuginfo machinery.
-
-2011-12-22  Bernd Schmidt  <bernds@codesourcery.com>
-
-       * tree-pass.h (pass_reload): Declare.
-       * ira.c (overall_cost_before, saved_flag_ira_share_spill_slots):
-       New global variables, moved out of ira.
-       (do_reload): New static function, split off from the second half
-       of ...
-       (ira): ... here.
-       (gate_ira): Remove.
-       (pass_ira): Use TV_IRA, set gate to NULL, and set flags to
-       TODO_dump_func.
-       (rest_of_handle_reload): New static function.
-       (pass_reload): New.
-
-2011-12-22  Uros Bizjak  <ubizjak@gmail.com>
-
-       * common/config/i386/i386-common.c (ix86_option_optimization_table):
-       Move OPT_free processing from ...
-       * config/i386/i386.c (ix86_option_override_internal):  ... here.
-
-2011-12-21  Richard Earnshaw  <rearnsha@arm.com>
-
-       PR target/51643
-       * arm.c (arm_function_ok_for_sibcall): Don't try to tailcall a
-       weak function on bare-metal EABI targets.
-
-2011-12-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
-           Jim Avera  <james_avera@yahoo.com>
-
-       * doc/extend.texi (__builtin_expect): Improve example.
-
-2011-12-21  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.c (ix86_option_override_internal): Enable flag_ree
-       also for 32bit targets.
-
-2011-12-21  Richard Henderson  <rth@redhat.com>
-
-       PR target/51552
-       * dwarf2cfi.c (dwarf2out_frame_debug): Move any_cfis_emitted code...
-       (scan_trace): ... here.
-
-2011-12-21  Jason Merrill  <jason@redhat.com>
-
-       * doc/standards.texi (C++ language): Update for C++11.
-
-2011-12-21  Jakub Jelinek  <jakub@redhat.com>
-
-       * tree-vect-patterns.c (vect_operation_fits_smaller_type): Initialize
-       *op0 and *op1 to NULL_TREE first to avoid warnings.
-       * calls.c (initialize_argument_information): Initialize base to avoid
-       warnings.
-
-       PR middle-end/51644
-       PR middle-end/51647
-       * tree-eh.c (decide_copy_try_finally): At -O0, return true
-       even when ndests is not 1, if there are only gimple_clobber_p
-       (or debug) stmts in the finally sequence.
-       * tree-inline.c (estimate_num_insns): Return 0 for gimple_clobber_p
-       stmts.
-
-2011-12-21  Aldy Hernandez  <aldyh@redhat.com>
-
-       PR middle-end/51472
-       * trans-mem.c (tm_log_add): Use create_tmp_var_reg.
-
-2011-12-21  Martin Jambor  <mjambor@suse.cz>
-
-       * tree-into-ssa.c (rewrite_update_stmt): Do not dump extra newlines.
-       (rewrite_update_enter_block): Likewise.
-       (dump_update_ssa): Likewise.
-       (update_ssa): Likewise but also dump a newline at the beginning.
-
-2011-12-21  Enkovich Ilya  <ilya.enkovich@intel.com>
-
-       PR target/50038
-       * implicit-zee.c: Delete.
-       * ree.c: New file.
-       * Makefile.in: Replace implicit-zee.c with ree.c.
-       * config/i386/i386.c (ix86_option_override_internal): Rename
-       flag_zee to flag_ree.
-       * common.opt (fzee): Ignored.
-       (free): New.
-       * passes.c (init_optimization_passes): Replace pass_implicit_zee
-       with pass_ree.
-       * tree-pass.h (pass_implicit_zee): Delete.
-       (pass_ree): New.
-       * timevar.def (TV_ZEE): Delete.
-       (TV_REE): New.
-       * doc/invoke.texi: Add -free description.
-
-2011-12-21  Tristan Gingold  <gingold@adacore.com>
-
-       * config/vms/vms-protos.h (vms_function_section): New prototype.
-       * config/vms/vms.c (vms_function_section): New function.
-       * config/vms/vms.h (TARGET_ASM_FUNCTION_SECTION): Define.
-
-2011-12-21  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/41159
-       * tree-outof-ssa.c (insert_value_copy_on_edge): Use the
-       mode of the pseudo as destination mode.  Only assert that
-       is equal to the promoted mode of the decl if it is a REG.
-
-2011-12-21  Tristan Gingold  <gingold@adacore.com>
-
-       * config/vms/xm-vms.h (STANDARD_EXEC_PREFIX): Remove define.
-
-2011-12-20  Richard Henderson  <rth@redhat.com>
-
-       * config/ia64/ia64.c (MAX_VECT_LEN): New.
-       (struct expand_vec_perm_d): New.
-       (TARGET_VECTORIZE_VEC_PERM_CONST_OK): New.
-       (ia64_unpack_assemble): Use ia64_expand_vec_perm_const_1.
-       (expand_vselect, expand_vselect_vconcat): New.
-       (expand_vec_perm_identity, expand_vec_perm_shrp): New.
-       (expand_vec_perm_1, expand_vec_perm_broadcast): New.
-       (expand_vec_perm_interleave_2, expand_vec_perm_v4hi_5): New.
-       (ia64_expand_vec_perm_const_1, ia64_expand_vec_perm_const): New.
-       (ia64_vectorize_vec_perm_const_ok): New.
-       (ia64_expand_vec_setv2sf, ia64_expand_vec_perm_even_odd): New.
-       * config/ia64/ia64-protos.h: Update.
-       * config/ia64/vect.md (VEC): New mode iterator.
-       (vecint): New mode attribute.
-       (vec_interleave_lowv8qi, vec_interleave_highv8qi): Privatize with '*'.
-       (vec_interleave_lowv4hi, vec_interleave_highv4hi): Likewise.
-       (vec_interleave_lowv2si, vec_interleave_highv2si): Likewise.
-       (vec_interleave_lowv2sf, vec_interleave_highv2sf): Likewise.
-       (mix1_even, mix1_odd, mux1_alt): Likewise.
-       (mux1_brcst_qi): Remove '*' from name.
-       (vec_extract_evenv8qi, vec_extract_oddv8qi): Remove.
-       (vec_extract_evenv4hi, vec_extract_oddv4hi): Remove.
-       (vec_extract_evenv2si, vec_extract_oddv2si): Remove.
-       (vec_extract_evenv2sf, vec_extract_oddv2sf): Remove.
-       (vec_extract_evenodd_helper): Remove.
-       (vec_setv2sf): Use ia64_expand_vec_setv2sf.
-       (vec_pack_trunc_v4hi): Use ia64_expand_vec_perm_even_odd.
-       (vec_pack_trunc_v2si): Likewise.
-       (vec_perm_const<VEC>): New.
-
-2011-12-20  Richard Henderson  <rth@redhat.com>
-
-       * tree-vect-generic.c (expand_vector_operations_1): Correct tests
-       for vector types -- use the type not the mode.  Fix optab selection
-       for vector shifts by a scalar.  Handle over-large integer modes
-       like BLKmode.
-
-2011-12-20  Richard Henderson  <rth@redhat.com>
-
-       * config/arm/arm.md (*arm_xorsi3): Match iorsi3 and perform
-       post-reload splitting.
-
-       * config/arm/arm.md (*arm_cmpdi_unsigned): Enable for thumb2.
-       * config/arm/arm.c (arm_select_cc_mode): Use it.
-
-2011-12-20  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       * tree-ssa-math-opts.c (convert_plusminus_to_widen): Restrict
-       handling of signedness differences to integer types.  Only build
-       a new optype if type1 isn't correct.
-
-2011-12-20  Vladimir Makarov  <vmakarov@redhat.com>
-
-       PR target/49865
-       * ira-costs.c (find_costs_and_classes): Prefer registers even
-       if the memory cost is the same.
-
-2011-12-20  Joseph Myers  <joseph@codesourcery.com>
-
-       * c-decl.c (diagnose_mismatched_decls, grokdeclarator, grokfield)
-       (finish_struct): Refer to C11 in comments.  Use flag_isoc11.
-       * c-parser.c (c_parser_static_assert_declaration)
-       (c_parser_static_assert_declaration_no_semi, c_parser_declspecs)
-       (c_parser_alignas_specifier, c_parser_alignof_expression): Refer
-       to C11 in comments.  Use flag_isoc11.
-       * c-typeck.c (comptypes_check_different_types): Refer to C11 in
-       comment.
-       * doc/cpp.texi (Overview): Refer to -std=c11 instead of -std=c1x.
-       * doc/cppopts.texi (-std=c11, -std=gnu11): Document in preference
-       to -std=c1x and -std=gnu1x.
-       * doc/extend.texi (Inline, Alternate Keywords, Other Builtins)
-       (__builtin_complex, Unnamed Fields): Refer to -std=c11 and C11
-       instead of -std=c1x and C1X.
-       * doc/invoke.texi (-std=c11, -std=iso9899:2011): Document in
-       preference to -std=c1x.
-       (-std=gnu11): Document in preference to -std=gnu1x.
-       * doc/standards.texi: Document C11 instead of C1X.  Document C11
-       as actual standard.  Document headers required from freestanding
-       C11 implementations.
-       * ginclude/float.h, ginclude/stddef.h: Test __STDC_VERSION__ >=
-       201112L for C11.  Update comments to refer to C11.
-
-2011-12-20  Andreas Schwab  <schwab@linux-m68k.org>
-
-       * configure: Regenerate.
-
-2011-12-20  Bernd Schmidt  <bernds@codesourcery.com>
-
-       PR middle-end/51200
-       * expr.c (store_field): Avoid a direct store if the mode is larger
-       than the size of the bit field.
-       * stor-layout.c (layout_decl): If flag_strict_volatile_bitfields,
-       treat non-volatile bit fields like volatile ones.
-       * toplev.c (process_options): Disallow combination of
-       -fstrict-volatile-bitfields and ABI versions less than 2.
-       * config/arm/arm.c (arm_option_override): Don't enable
-       flag_strict_volatile_bitfields if the ABI version is less than 2.
-       * config/h8300/h8300.c (h8300_option_override): Likewise.
-       * config/rx/rx.c (rx_option_override): Likewise.
-       * config/m32c/m32c.c (m32c_option_override): Likewise.
-       * config/sh/sh.c (sh_option_override): Likewise.
-
-2011-12-20  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/46796
-       * dwarf2out.c (modified_type_die): When the type variant
-       chain is corrupt use the types name, if available, instead
-       of __unknown__.
-
-2011-12-20  Tristan Gingold  <gingold@adacore.com>
-
-       * config/alpha/alpha.c (alpha_start_function): Adjust condition to
-       create VMS trampoline entry point.
-
-2011-12-19  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       PR rtl-optimization/42839
-       * fwprop.c (forward_propagate_subreg): Skip the SIGN/ZERO_EXTEND
-       optimization if the source register is already extended.
-
-2011-12-19  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       * lower-subreg.c (can_decompose_p): Check every word of a hard
-       register.
-
-2011-12-19  Sandra Loosemore  <sandra@codesourcery.com>
-           Tom de Vries <tom@codesourcery.com>
-
-       PR rtl-opt/50380
-       * cse.c (find_comparison_args): Detect fixed point and
-       bail early.
-
-2011-12-19  Aldy Hernandez  <aldyh@redhat.com>
-
-       PR middle-end/51411
-       * trans-mem.c (ipa_tm_create_version): Unset DECL_WEAK.
-
-2011-12-19  Quentin Neill  <quentin.neill@amd.com>
-
-       PR target/48743
-       * config/i386/driver-i386.c (host_detect_local_cpu): Also check
-       family to distinguish PROCESSOR_ATHLON.
-
-2011-12-19  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/51573
-       * streamer-hooks.h (struct streamer_hooks): Add second
-       ref_p parameter to write_tree.
-       (stream_write_tree): Adjust.
-       (stream_write_tree_shallow_non_ref): New define.
-       * lto-streamer.h (lto_output_tree): Adjust.
-       * lto-streamer-out.c (lto_output_tree): Likewise.
-       * tree-streamer-out.c (streamer_write_chain): Only
-       force the immediate tree to be streamed as non-reference.
-
-2011-12-19  Martin Jambor  <mjambor@suse.cz>
-
-       PR tree-optimization/51583
-       * tree-sra.c (load_assign_lhs_subreplacements): Call
-       force_gimple_operand_gsi when necessary also in case of no
-       corresponding replacement on the RHS.
-
-2011-12-19  Jakub Jelinek  <jakub@redhat.com>
-
-       * gimple.h (gimplify_seq_add_stmt): Rename to...
-       (gimple_seq_add_stmt_without_update): ... this.
-       * gimplify.c (gimplify_seq_add_stmt): Rename to...
-       (gimple_seq_add_stmt_without_update): ... this.
-       (gimplify_seq_add_stmt): New inline wrapper for it.
-       * tree-vect-patterns.c (append_pattern_def_seq): Use
-       gimple_seq_add_stmt_without_update instead of gimplify_seq_add_stmt.
-
-       PR tree-optimization/51596
-       * tree-cfg.c (replace_uses_by): Call gimple_purge_dead_eh_edges
-       when needed.
-
-       PR middle-end/51590
-       PR tree-optimization/51606
-       * tree-vect-patterns.c (append_pattern_def_seq, new_pattern_def_seq):
-       New inline functions.
-       (vect_recog_over_widening_pattern,
-       vect_recog_vector_vector_shift_pattern,
-       vect_recog_sdivmod_pow2_pattern, vect_recog_mixed_size_cond_pattern,
-       adjust_bool_pattern_cast, vect_recog_bool_pattern): Use them.
-
-2011-12-19  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/51572
-       * tree.c (free_lang_data_in_type): Do not unlink TYPE_DECL
-       from TYPE_FIELDS.
-       (find_decls_types_r): Walk TYPE_DECLs in TYPE_FIELDS.
-       * tree-streamer-out.c (write_ts_field_decl_tree_pointers): Do
-       not stream TREE_CHAIN.
-       (write_ts_type_non_common_tree_pointers): Stream TYPE_FIELDS
-       using streamer_write_chain.
-       * tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers):
-       Do not stream TREE_CHAIN.
-       (lto_input_ts_type_non_common_tree_pointers): Stream TYPE_FIELDS
-       using streamer_read_chain.
-       * gimple-streamer-in.c (input_gimple_stmt): Skip non-FIELD_DECLs.
-       * gimple.c (gimple_canonical_types_compatible_p): Properly
-       handle trailing non-FIELD_DECLs in TYPE_FIELDS.
-
-2011-12-19  Andreas Schwab  <schwab@linux-m68k.org>
-
-       * configure: Regenerate.
-
-2011-12-19  Bernd Schmidt  <bernds@codesourcery.com>
-
-       * emit-rtl.c (init_emit_once): Initialize const_tiny_rtx[3] for
-       partial integer modes.
-
-2011-12-19  Andreas Schwab  <schwab@linux-m68k.org>
-
-       PR target/51532
-       * config/m68k/m68k.h (FL_CAS, TARGET_CAS): Define.
-       * config/m68k/m68k.c (FL_FOR_isa_20): Add FL_CAS.
-       * config/m68k/sync.md: Use TARGET_CAS instead of (TARGET_68020 ||
-       TARGET_68040).
-
-2011-12-18  Anatoly Sokolov  <aesok@post.ru>
-
-       * config/ia64/ia64.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P,
-       LEGITIMATE_ADDRESS_REG, LEGITIMATE_ADDRESS_DISP,
-       GO_IF_LEGITIMATE_ADDRESS): Remove macros.
-       * config/ia64/ia64.c (TARGET_LEGITIMATE_ADDRESS_P): Define.
-       (ia64_reg_ok_for_base_p, ia64_legitimate_address_reg,
-       ia64_legitimate_address_disp, ia64_legitimate_address_p): New
-       functions.
-
-2011-12-17  Tom de Vries  <tom@codesourcery.com>
-
-       PR tree-optimization/51491
-       * tree-ssa-ccp.c (insert_clobber_before_stack_restore)
-       (gsi_prev_dom_bb_nondebug, insert_clobbers_for_var): New function.
-       (ccp_fold_stmt): Use insert_clobbers_for_var after a successful
-       fold_builtin_alloca_with_align.
-       (ccp_visit_stmt): Calculate and free dominator info.
-
-2011-12-16  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * config/sparc/sparc.md (UNSPEC_FRAME_BLOCKAGE): New constant.
-       (frame_blockage): New expander.
-       (frame_blockage<P:mode>): New instruction.
-       * config/sparc/sparc.c (sparc_expand_prologue): When the sequence of
-       instructions establishing the frame isn't atomic, emit frame blockage.
-
-2011-12-16  Tristan Gingold  <gingold@adacore.com>
-
-       * config/alpha/vms.h (USE_TM_CLONE_REGISTRY): Define.
-
-2011-12-16  Tristan Gingold  <gingold@adacore.com>
-
-       * config/alpha/alpha.c (alpha_use_linkage): Follow transparent alias.
-       (alpha_write_one_linkage): Use assemble_name to emit linkage name.
-
-2011-12-16  Tristan Gingold  <gingold@adacore.com>
-
-       * config/vms/t-vms (vms.o, vms-c.o): Force output filename.
-
-2011-12-16  Tristan Gingold  <gingold@adacore.com>
-
-       * config/vms/vms.c (VMS_CRTL_GLOBAL): Define.
-       (vms_patch_builtins): Handle.
-       * config/vms/vms-crtlmap.map: Add an entry for environ.
-
-2011-12-16  Jakub Jelinek  <jakub@redhat.com>
-
-       PR debug/51557
-       * sel-sched-ir.c (create_copy_of_insn_rtx): Copy all notes
-       other than REG_EQUAL, REG_EQUIV and REG_LABEL_OPERAND.
-
-       PR tree-optimization/51576
-       * tree-cfg.c (replace_uses_by): Call maybe_clean_or_replace_eh_stmt
-       even if fold_stmt didn't change anything.
-
-2011-12-16  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/51572
-       * dwarf2out.c (gen_type_die_with_usage): Use the context of
-       the TYPE_DECL as well if it is file-scope.
-
-2011-12-15  DJ Delorie  <dj@redhat.com>
-
-       * config/rl78/rl78.md (return): Rename to rl78_return.
-       * config/rl78/rl78.c (rl78_expand_epilogue): Use new name.
-       (rl78_expand_eh_epilogue): Use new name.
-       (rl78_calculate_death_notes): Likewise.
-
-2011-12-15  Jakub Jelinek  <jakub@redhat.com>
-
-       * tree-vectorizer.h (struct _stmt_vec_info): Remove pattern_def_stmt
-       field, add pattern_def_seq.
-       (STMT_VINFO_PATTERN_DEF_STMT): Remove.
-       (STMT_VINFO_PATTERN_DEF_SEQ): Define.
-       (NUM_PATTERNS): Bump to 10.
-       * tree-vect-loop.c (vect_determine_vectorization_factor,
-       vect_transform_loop): Adjust for pattern def changing from a single
-       gimple stmt to gimple_seq.
-       * tree-vect-stmts.c (vect_analyze_stmt, new_stmt_vec_info,
-       free_stmt_vec_info): Likewise.
-       * tree-vect-patterns.c (vect_recog_over_widening_pattern,
-       vect_recog_vector_vector_shift_pattern,
-       vect_recog_mixed_size_cond_pattern, adjust_bool_pattern_cast,
-       adjust_bool_pattern, vect_mark_pattern_stmts): Likewise.
-       (vect_recog_sdivmod_pow2_pattern): New function.
-       (vect_vect_recog_func_ptrs): Add it.
-
-       * config/i386/sse.md (vcond<V_256:mode><VI_256:mode>,
-       vcond<V_128:mode><VI124_128:mode>, vcond<VI8F_128:mode>v2di):
-       Use general_operand instead of nonimmediate_operand for
-       operand 5 and no predicate for operands 1 and 2.
-       * config/i386/i386.c (ix86_expand_int_vcond): Optimize
-       x < 0 ? -1 : 0 and x < 0 ? 1 : 0 into vector arithmetic
-       resp. logical shift.
-
-2011-12-15  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr-protos.h (print_operand): Remove.
-       (print_operand_address): Remove.
-       * config/avr/avr.h (PRINT_OPERAND): Remove.
-       (PRINT_OPERAND_ADDRESS): Remove.
-       (PRINT_OPERAND_PUNCT_VALID_P): Remove.
-       * config/avr/avr.c (TARGET_PRINT_OPERAND): New hook define.
-       (TARGET_PRINT_OPERAND_ADDRESS): New hook define.
-       (TARGET_PRINT_OPERAND_PUNCT_VALID_P): New hook define.
-       (print_operand_address): Rename to...
-       (avr_print_operand_address): ...this and make static.
-       (print_operand): Rename to...
-       (avr_print_operand): ...this and make static.
-       (avr_print_operand_punct_valid_p): New static function.
-
-2011-12-15  Andreas Tobler  <andreast@fgznet.ch>
-
-       * config/i386/freebsd.h (TARGET_ASM_FILE_END): Define.
-
-2011-12-15  Jakub Jelinek  <jakub@redhat.com>
-
-       PR c/51360
-       * c-parser.c (c_parser_omp_clause_num_threads,
-       c_parser_omp_clause_schedule): Call mark_exp_read.
-
-2011-12-15  Romain Geissler  <romain.geissler@gmail.com>
-
-       * builtins.def (BUILT_IN_STPNCPY_CHK): New definition.
-       * builtins.c (expand_builtin, fold_builtin_4, maybe_emit_chk_warning):
-       Add BUILT_IN_STPNCPY_CHK case.
-       * gimple-fold.c (gimple_fold_builtin): Likewise.
-       * tree-object-size.c (pass_through_call): Likewise.
-       * tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
-       call_may_clobber_ref_p_1): Likewise.
-       * tree-ssa-structalias.c (find_func_aliases_for_builtin_call,
-       find_func_clobbers): Likewise.
-       * tree.h (fold_builtin_strncpy_chk): Rename to fold_builtin_stxncpy_chk
-       * builtins.c (fold_builtin_strncpy_chk): Likewise.
-       Rewrite stpncpy_chk calls to strncpy_chk calls if returned value is
-       ignored.
-
-2011-12-15  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/51567
-       * gimple.c (compare_type_names_p): Also compare the TREE_CODE.
-       (iterative_hash_name): Also hash the TREE_CODE.
-       (gimple_types_compatible_p_1): For types with a TYPE_DECL
-       name and a type DECL_CONTEXT recurse to that type.
-       (iterative_hash_gimple_type): Likewise.
-
-2011-12-15  Iain Sandoe  <iains@gcc.gnu.org>
-
-       * config/rs6000/rs6000.c  (rs6000_emit_prologue): Move update of
-       VRSave mask to save_world() when that is in use.
-
-2011-12-15  Richard Guenther  <rguenther@suse.de>
-
-       * lto-wrapper.c (run_gcc): In non-parallel mode remove
-       ltrans inputs immediately after processing them.  In parallel
-       mode truncate the ltrans inputs in the make rule that processes
-       them if temporary files are not to be preserved.
-
-2011-12-15  Anatoly Sokolov  <aesok@post.ru>
-
-       * config/arm/arm.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
-       * config/arm/arm.c (arm_memory_move_cost, arm_register_move_cost):
-       New functions.
-       (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
-
-2011-12-15  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/51564
-       * tree.h (REGISTER_DEFS_IN_THIS_STMT, NECESSARY,
-       STMT_IN_SSA_EDGE_WORKLIST): Remove no longer existing flag
-       uses documentation.
-       (TREE_ASM_WRITTEN): Update documentation to mention its use
-       on TYPE_DECLs from debug info generation.
-       * tree-streamer-out.c (pack_ts_base_value_fields): Stream
-       TREE_ASM_WRITTEN as always zero for TYPE_DECLs, similar to
-       all other types.
-
-2011-12-15  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/51050
-       * config/avr/avr.c (expand_epilogue): Don't build SUBREG of fp.
-       (avr_prologue_setup_frame): Ditto.
-
-2011-12-15  Jakub Jelinek  <jakub@redhat.com>
-
-       PR debug/51517
-       * tree-ssa-coalesce.c (coalesce_ssa_name): For !optimize, test
-       !DECL_IGNORED_P instead of !DECL_ARTIFICIAL.
-
-2012-12-15  Richard Guenther  <rguenther@suse.de>
-
-       Revert
-       PR lto/48437
-       * lto-streamer-out.c (tree_is_indexable): Exclude block-local
-       extern declarations.
-
-       PR lto/48508
-       PR lto/48437
-       * tree-streamer-out.c (streamer_write_chain): Stream DECL_EXTERNAL
-       VAR_DECLs and FUNCTION_DECLs locally.
-
-2011-12-14  Richard Henderson  <rth@redhat.com>
-
-       * config/arm/arm.md (*addsi3_compare0_scratch): Set predicable.
-       (*compare_negsi_si, *compare_addsi2_op0): Likewise.
-       (*compare_addsi2_op1, *zeroextractsi_compare0_scratch): Likewise.
-       (*compareqi_eq0, *arm_cmpsi_insn, *arm_cmpsi_negshiftsi_si): Likewise.
-
-2011-12-14  Richard Guenther  <rguenther@suse.de>
-
-       * tree-cfg.c (replace_uses_by): Fixup TREE_CONSTANT for
-       propagating all kinds of constants.
-
-2011-12-14  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/51497
-       * lto-streamer-in.c (lto_read_body): Fixup local types
-       TYPE_CANONICAL and variant chain.
-
-2011-12-14  Richard Guenther  <rguenther@suse.de>
-
-       * tree.c (free_lang_data_in_type): Do not clear fields
-       dependent on debuginfo level setting.
-       (find_decls_types_r): Use TYPE_STUB_DECL rathern than TREE_CHAIN.
-       * tree.h (TYPE_STUB_DECL): Properly check that we access a type.
-
-2011-12-14  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/50931
-       * config/avr/avr.md (mulpsi3): New expander.
-       (*umulqihipsi3, *umulhiqipsi3): New insns.
-       (*mulsqipsi3.libgcc, *mulpsi3.libgcc): New insns.
-       (mulsqipsi3, *mulpsi3): New insn-and-splits.
-       (ashlpsi3): Turn to expander.  Move insn code to...
-       (*ashlpsi3): ...this new insn.
-
-2011-12-14  Richard Guenther  <rguenther@suse.de>
-
-       * tree-cfg.c (replace_uses_by): Only mark blocks altered
-       that will make a difference.  Only recompute ADDR_EXPR
-       invariantness if it could possibly have changed.  Do so
-       before folding the statement.
-
-2011-12-13  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * lto-streamer-out.c (write_symbol): Use proper 64-bit host type.
-       * lto-cgraph.c (input_cgraph_opt_section): Use 'int' for offsets.
-       * lto-streamer-in.c (lto_read_body): Likewise.
-       (lto_input_toplevel_asms): Likewise.
-       * lto-section-in.c (lto_create_simple_input_block): Likewise.
-       * ipa-inline-analysis.c (inline_read_section): Likewise.
-       * ipa-prop.c (ipa_prop_read_section): Likewise.
-
-       * df.h (DF_NOTE): Fix typo in comment.
-
-2011-12-13  Aldy Hernandez  <aldyh@redhat.com>
-
-       * trans-mem.c (ipa_tm_create_version_alias): Set DECL_CONTEXT and
-       DECL_LANG_SPECIFIC.
-
-2011-12-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
-
-       * regmove.c (fixup_match_2): Only access call_used_regs with hard regs.
-
-2011-12-13  Andrew Pinski  <apinski@cavium.com>
-           Adam Nemet  <anemet@caviumnetworks.com>
-
-       * config/mips/mips-cpus.def: Add Octeon2.
-       * config/mips/mips-tables.opt: Regenerate.
-       * config/mips/mips.md (define_attr "cpu"): Add Octeon2.
-       * config/mips/driver-native.c (host_detect_local_cpu): Support Octeon2.
-       * config/mips/octeon.md (octeon_arith): Add Octeon2.
-       (octeon_condmove): Likewise.
-       (octeon_load): Rename to ..
-       (octeon_load_o1): this.
-       (octeon_load_o2): New reserve.
-       (octeon_cop_o2): New reserve.
-       (octeon_store):  Match Octeon2 also.
-       (octeon_brj): Rename to ..
-       (octeon_brj_o1): this.
-       (octeon_brj_o2): New reserve.
-       (octeon_imul3): Rename to ...
-       (octeon_imul3_o1): this.
-       (octeon_imul3_o2): New reserve.
-       (octeon_imul): Rename to ...
-       (octeon_imul_o1): this.
-       (octeon_imul_o2): New reserve.
-       (octeon_mfhilo): Rename to ...
-       (octeon_mfhilo_o1): This.
-       (octeon_mfhilo_o2): New reserve.
-       (octeon_imadd): Rename to ...
-       (octeon_imadd_o1): this.
-       (octeon_imadd_o2): New reserve.
-       (octeon_idiv): Rename to ..
-       (octeon_idiv_o1): This.
-       (octeon_idiv_o2_si): New reserve.
-       (octeon_idiv_o2_di): Likewise.
-       (octeon_unknown): Match Octeon2 also.
-       * config/mips/mips.c (mips_rtx_cost_data): Add Octeon2 cost data.
-       (mips_issue_rate): Octeon2 can issue 2 at a time.
-       * config/mips/mips.h (TARGET_OCTEON): Match Octeon2 also.
-       (TARGET_OCTEON2): New define.
-       (TUNE_OCTEON): Match Octeon2 also.
-
-2011-12-13  Richard Henderson  <rth@redhat.com>
-
-       * config/sparc/tso.h: New file.
-       * config.gcc (sparc-*-linux*, sparc*-*-solaris2*): Use it.
-       * config/sparc/sparc.c (sparc_option_override): Honor
-       SUBTARGET_DEFAULT_MEMORY_MODEL.
-       * config/sparc/sparc.h (SUBTARGET_DEFAULT_MEMORY_MODEL): New.
-
-2011-12-13  Aldy Hernandez  <aldyh@redhat.com>
-
-       PR middle-end/51443
-       * trans-mem.c (struct diagnose_tm): Remove saw_unsafe.
-       (diagnose_tm_1): Same.
-       (ipa_tm_execute): Do not test tm_may_enter_irr before we set it.
-       (ipa_tm_scan_irr_function): Return gracefully when no
-       DECL_STRUCT_FUNCTION.
-       (ipa_tm_scan_irr_block): Believe the user on TM attributes.
-
-2011-12-13  Martin Jambor  <mjambor@suse.cz>
-
-       PR middle-end/50628
-       * tree-sra.c (propagate_subaccesses_across_link): Do not propagate
-       sub-accesses of scalar accesses.
-
-2011-12-13  Martin Jambor  <mjambor@suse.cz>
-
-       PR tree-optimization/51362
-       * ipa-cp.c (estimate_local_effects): When estimated size of a
-       specialized clone is zero, bump it to one.
-
-2011-12-13  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/48354
-       * tree.c (find_decls_types_r): Also walk DECL_ORIGINAL_TYPE.
-       * tree-streamer-in.c (lto_input_ts_decl_non_common_tree_pointers):
-       Stream DECL_ORIGINAL_TYPE.
-       * tree-streamer-out.c (write_ts_decl_non_common_tree_pointers):
-       Likewise.
-
-2011-12-13  Jakub Jelinek  <jakub@redhat.com>
-
-       Revert
-       2011-12-12  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51481
-       * gimple-fold.c (gimple_fold_call): Call
-       maybe_clean_or_replace_eh_stmt.  Avoid optimization if stmt has EH
-       edges, but gimple_fold_builtin result can't throw.
-
-2011-12-13  Jakub Jelinek  <jakub@redhat.com>
-           Michael Matz  <matz@suse.de>
-
-       PR tree-optimization/51117
-       * tree-eh.c (sink_clobbers): New function.
-       (execute_lower_eh_dispatch): Call it for BBs ending with
-       internally throwing RESX.
-       * cfgexpand.c (add_scope_conflicts_1): Add all conflicts only
-       at the first real instruction.
-
-2011-12-13  Tristan Gingold  <gingold@adacore.com>
-
-       * final.c (final_scan_insn): Guard the call to begin_epilogue
-       debug hook.
-
-2011-12-13  Tristan Gingold  <gingold@adacore.com>
-
-       * vmsdbgout.c (vmsdbgout_write_source_line): New function.
-       (vmsdbgout_end_prologue): Call vmsdbgout_write_source_line.
-       (vmsdbgout_begin_epilogue): Likewise.
-       (vmsdbgout_end_epilogue): Likewise.
-       (vmsdbgout_source_line): Move code to vmsdbgout_write_source_line.
-
-2011-12-13  Richard Guenther  <rguenther@suse.de>
-
-       PR middle-end/51481
-       * tree-cfg.c (replace_uses_by): Pass proper arguments to
-       maybe_clean_or_replace_eh_stmt.
-
-2011-12-13  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51519
-       * ipa-inline.c (edge_badness): Use edge growth in non-guessed
-       branch probability case as well.
-
-2011-12-13  Revital Eres  <revital.eres@linaro.org>
-
-       * modulo-sched.c (mark_loop_unsched): Free bbs.
-
-2011-12-12  Jakub Jelinek  <jakub@redhat.com>
-
-       PR rtl-optimization/51495
-       * function.c (thread_prologue_and_epilogue_insns): Don't add
-       to bb_tail basic blocks that have EDGE_COMPLEX predecessor edges
-       from basic blocks not needing prologue.
-
-       PR tree-optimization/51481
-       * gimple-fold.c (gimple_fold_call): Call
-       maybe_clean_or_replace_eh_stmt.  Avoid optimization if stmt has EH
-       edges, but gimple_fold_builtin result can't throw.
-
-2011-12-12  Vladimir Makarov  <vmakarov@redhat.com>
-
-       PR rtl-optimization/21617
-       * ira-color.c (bucket_allocno_compare_func): Don't compare
-       allocno classes.  Compare number of hard registers needed.
-
-2011-12-12  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR tree-optimization/50569
-       * tree-sra.c (build_ref_for_model): Replicate a chain of COMPONENT_REFs
-       in the expression of MODEL instead of just the last one.
-
-2011-12-12  Jakub Jelinek  <jakub@redhat.com>
-
-       PR middle-end/51510
-       * calls.c (internal_arg_pointer_based_exp_scan): Don't use
-       VEC_safe_grow_cleared if idx is smaller than VEC_length.
-
-2011-12-12  Richard Sandiford  <richard.sandiford@linaro.org>
-
-       PR middle-end/50873
-       * optabs.c (maybe_legitimize_operand_same_code): Use copy_to_mode_reg
-       instead of force_reg.  Do nothing if the address is already a
-       non-virtual pseudo register.
-
-2011-12-12  Torvald Riegel  <triegel@redhat.com>
-
-       * gimplify.c (voidify_wrapper_expr): Add default handling for
-       outermost wrapper.
-
-2011-12-12  Torvald Riegel  <triegel@redhat.com>
-
-       * tree-ssa-tail-merge.c (gimple_equal_p): Don't treat transaction
-       commits as equal.
-
-2011-12-12  Iain Sandoe  <iains@gcc.gnu.org>
-
-       * config/darwin-sections.def (zobj_const_data_section): Fix over-
-       length section name.
-
-2011-12-11  Richard Henderson  <rth@redhat.com>
-
-       * config/rs6000/rs6000.c (rs6000_expand_interleave): Use
-       BYTES_BIG_ENDIAN, not TARGET_BIG_ENDIAN.
-
-2011-12-11  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51485
-       * tree-vect-data-refs.c (vect_analyze_data_refs): Give up on
-       DRs in call stmts.
-
-2011-12-11  Patrick Marlier  <patrick.marlier@gmail.com>
-
-       * trans-mem.c (ipa_tm_transform_calls_redirect): Do not remove edge.
-
-2011-12-10  Richard Henderson  <rth@redhat.com>
-
-       * config/rs6000/altivec.md (altivec_vmrghb): Rewrite pattern as
-       vec_select + vec_concat.
-       (altivec_vmrghh, altivec_vmrghw, altivec_vmrghsf, altivec_vmrglb,
-       altivec_vmrglh, altivec_vmrglw, altivec_vmrglsf): Likewise.
-       (vec_perm_constv16qi): New.
-       (vec_extract_evenv4si, vec_extract_evenv4sf, vpkuhum_nomode,
-       vpkuwum_nomode, vec_extract_oddv8hi, vec_extract_oddv16qi,
-       vec_interleave_high<VI>, vec_interleave_low<VI>): Remove.
-       * config/rs6000/paired.md (paired_merge00): Rewrite pattern as
-       vec_select + vec_concat.
-       (paired_merge10, paired_merge01, paired_merge11): Likewise.
-       (vec_perm_constv2sf): New.
-       (vec_interleave_highv2sf, vec_interleave_lowv2sf,
-       vec_extract_evenv2sf, vec_extract_oddv2sf): Remove.
-       * config/rs6000/spe.md (spe_evmergehi): Rewrite pattern as
-       vec_select + vec_concat.
-       (spe_evmergehilo, spe_evmergelo, spe_evmergelohi): New.
-       (vec_perm_constv2si): New.
-       * config/rs6000/vector.md (vec_interleave_highv4sf,
-       vec_interleave_lowv4sf, vec_interleave_high<VEC_64>,
-       vec_interleave_low<VEC_64>): Remove.
-       * config/rs6000/vsx.md (VS_double): New mode attribute.
-       (UNSPEC_VSX_XXPERMDI): Remove.
-       (vsx_xxpermdi_<VSX_L>_1): Rewrite pattern as vec_select + vec_concat.
-       (vsx_xxmrghw_<VSX_W>, vsx_xxmrglw_<VSX_W>): Likewise.
-       (vsx_xxpermdi_<VSX_L>): Change to expander.
-       (vec_perm_const<VSX_D>): New.
-       (vsx_mergel_<VSX_D>, vsx_mergeh_<VSX_D>): New.
-       * config/rs6000/predicates.md (const_0_to_1_operand): New.
-       (const_2_to_3_operand): New.
-       * config/rs6000/rs6000.c (TARGET_VECTORIZE_VEC_PERM_CONST_OK): New.
-       (altivec_expand_vec_perm_const): New.
-       (rs6000_expand_vec_perm_const_1, rs6000_expand_vec_perm_const): New.
-       (rs6000_vectorize_vec_perm_const_ok): New.
-       (rs6000_do_expand_vec_perm): New.
-       (rs6000_expand_extract_even, rs6000_expand_interleave): New.
-       * config/rs6000/rs6000-builtin.def (VEC_MERGE*): Update rtx codes.
-       * config/rs6000/rs6000-modes.def: Add double-wide vector modes.
-       * config/rs6000/rs6000-protos.h: Update.
-
-2011-12-10  Richard Henderson  <rth@redhat.com>
-
-       * expr.c (expand_expr_real_2) [VEC_PERM_EXPR]: Avoid passing a
-       CONST_INT to expand_vec_perm as the selector.
-       * optabs.c (expand_vec_perm): Assert the selector is of a proper mode.
-
-2011-12-10  Richard Henderson  <rth@redhat.com>
-
-       * genmodes.c (struct mode_data): Remove wider_2x member.
-       (blank_mode): Adjust initializer.
-       (calc_wider_mode): Use XALLOCAVEC.
-       (emit_move_wider): Select double-width same-element vectors for
-       2xwider vectors.
-       * machmode.h (GET_MODE_2XWIDER_MODE): Update documentation.
-       * config/i386/i386.c (doublesize_vector_mode): Remove.
-       (expand_vselect_vconcat): Use GET_MODE_2XWIDER_MODE instead.
-
-2011-12-10  Joern Rennecke  <joern.rennecke@embecosm.com>
-
-       * config/epiphany/epiphany.h (USE_LOAD_POST_INCREMENT): Define.
-       (USE_LOAD_POST_DECREMENT, USE_STORE_POST_INCREMENT): Likewise.
-       (USE_STORE_POST_DECREMENT): Likewise.
-
-       * config/epiphany/epiphany.h (EPIPHANY_RETURN_REGNO): New macro,
-       broken out of ..
-       (INCOMING_RETURN_ADDR_RTX) .. this.  Use EPIPHANY_RETURN_REGNO.
-       (DWARF_FRAME_RETURN_COLUMN): New macro.
-
-       * config/epiphany/epiphany-protos.h (epiphany_start_function): Declare.
-       * config/epiphany/epiphany.c (epiphany_handle_interrupt_attribute):
-       Split "timer" value into "timer0" and "timer1".
-       Handle page_miss, message and wand.  Don't handle static_flag.
-       Adjust warning text.
-       (epiphany_start_function): New function.
-       (epiphany_compute_function_type): Split "timer" value into "timer0"
-       and "timer1".  Handle page_miss, message and wand.
-       Don't handle static_flag.
-       (epiphany_expand_epilogue): Don't use frame_insn for status / iret
-       restore.
-       * config/epiphany/epiphany.h: ASM_DECLARE_FUNCTION_NAME: Define.
-       (enum epiphany_function_type):
-       Split EPIPHANY_FUNCTION_TIMER value into EPIPHANY_FUNCTION_TIMER0
-       and EPIPHANY_FUNCTION_TIMER1.
-       Remove EPIPHANY_FUNCTION_ILINK1 and EPIPHANY_FUNCTION_ILINK2 values.
-       Add EPIPHANY_FUNCTION_PAGE_MISS and EPIPHANY_FUNCTION_MESSAGE values.
-       Rename EPIPHANY_FUNCTION_STATIC_FLAG to EPIPHANY_FUNCTION_WAND.
-
-2011-12-10  Nathan Sidwell  <nathan@acm.org>
-
-       PR gcov-profile/51449
-       * coverage.c (coverage_end_function): Always process the coverage
-       variables.
-
-2011-12-09  Aldy Hernandez  <aldyh@redhat.com>
-
-       PR/51291
-       * tree.c (build_common_builtin_nodes): Do not use TM_PURE
-       attribute unless language has support for TM.
-       * config/i386/i386.c (ix86_init_tm_builtins): Exit gracefully in
-       the absence of TM builtins.
-
-2011-12-09  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * gimple-fold.c (gimple_fold_stmt_to_constant_1) <GIMPLE_UNARY_RHS>:
-       Also check the TYPE_MODE to recognize useless pointer conversions.
-
-2011-12-09  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51117
-       * tree-eh.c (optimize_clobbers): Don't remove just one
-       clobber, but all consecutive clobbers before RESX.
-       Use gimple_clobber_p predicate.
-
-2011-12-09  Michael Meissner  <meissner@linux.vnet.ibm.com>
-
-       * config/rs6000/rs6000.c (altivec_expand_builtin): Call
-       expand_call to return a valid funciton instead of return
-       cosnt0_rtx/NULL_RTX if there was an error with the builtin.
-       (altivec_expand_ld_builtin): Ditto.
-       (rs6000_inner_target_options): If VSX is selected as a target
-       attribute or pragma, enable ALTIVEC also.
-       (rs6000_pragma_target_parse): Call rs6000_option_override_internal
-       to do all of the standard processing when switching options,
-       including redefining appropriate macros.
-
-       PR rtl-optimization/51469
-       * varasm.c (default_binds_local_p_1): If the symbol is a gnu
-       indirect function, mark the symbol as non-local.
-
-2011-12-09  H.J. Lu  <hongjiu.lu@intel.com>
-
-       PR bootstrap/51479
-       * Makefile.in (errors.o): Restored.
-
-2011-12-09  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/48042
-       * tree.c (free_lang_data_in_decl): Remove freeing conditional
-       on debuginfo level.
-
-2011-12-09  Joern Rennecke  <joern.rennecke@embecosm.com>
-
-       PR middle-end/40154
-       * emit-rtl.c (set_dst_reg_note): New function.
-       * rtl.h (set_dst_reg_note): Declare.
-       * optabs.c (expand_binop, expand_absneg_bit): Use set_dst_reg_note.
-       (emit_libcall_block, expand_fix): Likewise.
-       * function.c (assign_parm_setup_reg, expand_function_start): Likewise.
-       * expmed.c (expand_mult_const, expand_divmod): Likewise.
-       * reload1.c (gen_reload): Likewise.
-
-       * dse.c (get_stored_val, get_call_args): Use gen_int_mode.
-       * expmed.c (expand_divmod): Likewise.
-       * combine.c (simplify_if_then_else): Likewise.
-
-2011-12-09  Kai Tietz  <ktietz@redhat.com>
-
-       * ira-color.c (print_hard_regs_subforest): Use
-       HOST_WIDEST_INT_PRINT_DEC instead of %lld.
-       (allocno_hard_regs): Change type of cost member to HOST_WIDEST_INT.
-       (add_allocno_hard_regs): Change type of argument cost
-       to HOST_WIDEST_INT.
-       * ira-conflict.c (build_conflict_bit_table): Replace use
-       of long-long by HOST_WIDEST_INT.
-
-2011-12-09  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/51425
-       * config/avr/avr.md (config/avr/avr.md, *sbix_branch_tmp): Use
-       zero_extract:QIHI instead of zero_extract:HI.
-
-2011-12-09  Jakub Jelinek  <jakub@redhat.com>
-           Andrew Pinski  <apinski@cavium.com>
-
-       PR tree-optimization/51117
-       * tree-eh.c (optimize_clobbers): New function.
-       (execute_lower_eh_dispatch): Call it.
-
-2011-12-09  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51482
-       * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size):
-       Make sure to only create REAL_TYPE and INTEGER_TYPE component vectors.
-
-2011-12-09  Kai Tietz  <ktietz@redhat.com>
-
-       * implicit-zee.c (num_realized): Change type to long.
-       (num_ze_opportunities): Likewise.
-
-2011-12-08  Andrew Pinski  <apinski@cavium.com>
-
-       * config/mips/mips-cpus.def (octeon+): New CPU.
-       * config/mips/mips-tables.opt: Regenerate.
-       * config/mips/mips.h (MIPS_CPP_SET_PROCESSOR): Emit '+' as 'P'.
-
-2011-12-08  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
-
-       PR middle-end/39976
-       * tree-ssa-dom.c (enum expr_kind): Add EXPR_PHI.
-       (struct hashable_expr): Add struct phi field.
-       (initialize_hash_element): Handle phis; change to use XCNEWVEC.
-       (hashable_expr_equal_p): Handle phis.
-       (iterative_hash_hashable_expr): Likewise.
-       (print_expr_hash_elt): Likewise.
-       (free_expr_hash_elt): Likewise.
-       (dom_opt_enter_block): Create equivalences from redundant phis.
-       (eliminate_redundant_computations): Handle redundant phis.
-       (lookup_avail_expr): Handle phis.
-
-2011-12-08  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51466
-       * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Also copy
-       TREE_SIDE_EFFECTS.
-
-2011-12-08  Richard Guenther  <rguenther@suse.de>
-
-       * tree-ssa-operands.c (add_stmt_operand): Do not mark stmts
-       volatile when processing operands of an ADDR_EXPR.
-       (get_indirect_ref_operands): Likewise.
-       (get_tmr_operands): Likewise.
-       (get_expr_operands): Likewise.
-
-2011-12-08  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
-
-       PR target/50395
-       * config/s390/s390.c (s390_mainpool_finish): Emit the jump over
-       the literal pool as jump insn.
-
-2011-12-08  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/49772
-       * tree-inline.c (optimize_inline_calls): Remove bail out on errors.
-
-2011-12-08  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/50747
-       * lto-streamer-out.c (produce_symtab): Remove asserts.
-
-2011-12-08  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/49945
-       * lto-streamer-out.c (tree_is_indexable): Localize variably
-       modified types and their FIELD_DECLs.
-
-2011-12-08  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR tree-optimization/51315
-       * tree.h (get_object_or_type_alignment): Declare.
-       * expr.c (get_object_or_type_alignment): Move to...
-       * builtins.c (get_object_or_type_alignment): ...here.  Add assertion.
-       * tree-sra.c (tree_non_mode_aligned_mem_p): Rename to...
-       (tree_non_aligned_mem_p): ...this.  Add ALIGN parameter.  Look into
-       MEM_REFs and use get_object_or_type_alignment for them.
-       (build_accesses_from_assign): Adjust for above change.
-       (access_precludes_ipa_sra_p): Likewise.
-
-2011-12-08  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/48437
-       * lto-streamer-out.c (tree_is_indexable): Exclude block-local
-       extern declarations.
-
-2011-12-07  Andrew Pinski  <apinski@cavium.com>
-
-       PR middle-end/45416
-       * expr.c (do_store_flag): Rewrite code that looks for BIT_AND_EXPR for
-       SSA-expand.
-
-2011-12-07  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50823
-       * ipa-inline.c (edge_badness): Do not account for the number of
-       remaining calls.
-
-2011-12-07  Martin Jambor  <mjambor@suse.cz>
-
-       PR tree-optimization/50744
-       * ipa-cp.c (good_cloning_opportunity_p): Assert size_cost is positive,
-       compute evaluation in HOST_WIDEST_INT.
-       (safe_add): New function
-       (propagate_effects): Use safe_add to accumulate effects.
-
-2011-12-06  Joel Sherrill <joel.sherrill@oarcorp.com>
-
-       * config/rs6000/rtems.h: Switch to using global_options_set
-       in SUBSUBTARGET_OVERRIDE_OPTIONS.
-
-2011-12-06  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/visintrin.h: Add appropriate __VIS__ cpp protection.
-
-2011-12-06  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr.c (avr_file_start): Fix missing ,
-
-2011-12-06  Jakub Jelinek  <jakub@redhat.com>
-
-       PR target/51354
-       * config/i386/i386.c (ix86_emit_leave): Call ix86_add_cfa_restore_note
-       unconditionally.
-
-2011-12-06  Georg-Johann Lay  <avr@gjlay.de>
-
-       Forward-port from gcc-4_6-branch r181936 2011-12-02.
-       * config/avr/avr-mcus.def (avr_mcu_types): ATtiny4313 and
-       AT86RF401 have a 16-bit SP (their manual is bogus).
-
-2011-12-06  Georg-Johann Lay  <avr@gjlay.de>
-
-       Forward-port from gcc-4_6-branch r181936 2011-12-02.
-
-       PR target/51002
-       * config/avr/avr.md (movhi_sp_r): Set insn condition to
-       !AVR_HAVE_8BIT_SP.
-       * config/avr/avr.c (output_movhi): Use "clr%B0" instead of "in
-       %B0,__SP_H__" if AVR_HAVE_8BIT_SP.
-       (avr_file_start): Only print "__SP_H__ = 0x3e" if !AVR_HAVE_8BIT_SP.
-
-2011-12-06  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/51409
-       PR target/49868
-       * config/avr/avr.h (ADDR_SPACE_PGM, ADDR_SPACE_PGM1,
-       ADDR_SPACE_PGM2, ADDR_SPACE_PGM3, ADDR_SPACE_PGM4,
-       ADDR_SPACE_PGM5, ADDR_SPACE_PGMX): Write as enum.
-       (avr_addrspace_t): New typedef.
-       (avr_addrspace): New declaration.
-       * config/avr/avr-c.c (avr_toupper): New static function.
-       (avr_register_target_pragmas, avr_cpu_cpp_builtins): Use
-       avr_addrspace to get address space information.
-       * config/avr/avr.c (avr_addrspace): New variable.
-       (avr_out_lpm, avr_pgm_check_var_decl, avr_insert_attributes,
-       avr_asm_named_section, avr_section_type_flags,
-       avr_asm_select_section, avr_addr_space_address_mode,
-       avr_addr_space_convert, avr_emit_movmemhi): Use it.
-       (avr_addr_space_pointer_mode): Forward to avr_addr_space_address_mode.
-       (avr_pgm_segment): Remove.
-
-2011-12-06  Richard Guenther  <rguenther@suse.de>
-
-       PR middle-end/50601
-       * varasm.c (assemble_alias): Move DECL_EXTERNAL implementation
-       quirk adjustjment ...
-       * passes.c (rest_of_decl_compilation): ... here.
-
-2011-12-06  Richard Guenther  <rguenther@suse.de>
-
-       PR middle-end/51436
-       * gimple-fold.c (gimplify_and_update_call_from_tree): Guard vdef check
-       for the fact we do not have virtual operands when not optimizing.
-
-2011-12-06  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51245
-       * tree-ssa-sccvn.c (vn_reference_lookup_or_insert_constant_for_pieces):
-       New function.
-       (vn_reference_lookup_3): Use it.  Properly valueize all refs we create.
-
-2011-12-06  Iain Sandoe  <iains@gcc.gnu.org>
-
-       * config/rs6000/rs6000.c (darwin_rs6000_override_options): Initialize
-       rs6000_current_abi.
-
-2011-12-06  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51363
-       * gimple.c (gimple_rhs_has_side_effects): Remove.
-       * gimple.h (gimple_rhs_has_side_effects): Likewise.
-       * tree-ssa-dom.c (optimize_stmt): Simplify conditional.
-
-2011-12-06  Alan Modra  <amodra@gmail.com>
-
-       PR target/50906
-       * config/rs6000/rs6000.c (rs6000_emit_prologue <TARGET_SPE_ABI>):
-       Do not mark r11 setup as frame-related.  Pass correct offset to
-       rs6000_emit_savres_rtx.  Correct out-of-line rs6000_frame_related
-       arguments.  Correct sp_offset.  Remove "offset" fudge from
-       in-line rs6000_frame_related call.  Rename misleading variable.
-       Fix comments and whitespace.  Tidy some expressions.
-       (rs6000_emit_epilogue <TARGET_SPE_ABI>): Always set frame_reg_rtx
-       to r11 in out-of-line case.  Correct sp_offset.  Pass correct
-       offset to rs6000_emit_savres_rtx.  Rename misleading variable.
-       Fix comments and whitespace.  Tidy some expressions.
-       (rs6000_emit_epilogue <non-TARGET_SPE_ABI>): Add sp_offset
-       adjustment when !saving_GPRs_inline.  Correct register mode
-       used in address calcs.
-       (rs6000_emit_epilogue <non-TARGET_SPE_ABI>): Similarly when
-       !restoring_GPRs_inline.
-
-2011-12-06  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
-
-       * config/arm/vfp.md (*combine_vcvt_f64_<FCVTI32typename>): Fix
-       formatting character for vmov.f64 case.
-
-2011-12-05  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51396
-       * tree-ssa-math-opts.c (convert_mult_to_fma): Don't optimize
-       if MUL_RESULT has zero uses.
-
-       PR debug/51410
-       * c-decl.c (pop_scope): Don't add DECL_EXTERNAL decls
-       for debug info if scope is file_scope.
-
-       PR c/51339
-       * c-decl.c (c_finish_incomplete_decl, finish_decl): Call
-       relayout_decl instead of layout_decl.
-
-2011-12-05  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       * resource.c (init_resource_info): Only consider EXIT_IGNORE_STACK
-       if there is in epilogue.
-
-2011-12-05  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       * optabs.c (maybe_emit_sync_lock_test_and_set): Pass a null target
-       to emit_library_call_value.
-       (expand_atomic_compare_and_swap): Likewise.
-
-2011-12-05  Vladimir Makarov  <vmakarov@redhat.com>
-
-       PR other/50775
-       * ira-int.h (struct ira_object): Remove add_data.
-       (OBJECT_ADD_DATA): Remove.
-
-       * ira-build.c (ira_create_object): Remove OBJECT_ADD_DATA
-       initialization.
-
-       * ira-color.c (object_hard_regs_t, object_hard_regs): Rename to
-       allocno_hard_regs_t, allocno_hard_regs.
-       (object_hard_regs_node_t, object_hard_regs_node): Rename to
-       allocno_hard_regs_node_t and allocno_hard_regs_node.
-       (struct allocno_color_data): Add new member last_process.  Move
-       profitable_hard_regs, hard_regs_node, and hard_regs_subnodes_start
-       from object_color_data.
-       (object_color_data_t, object_color_data, OBJECT_COLOR_DATA): Remove.
-       (curr_allocno_process): New static variable.
-       (object_hard_regs_eq, object_hard_regs_htab): Rename to
-       allocno_hard_regs_eq and allocno_hard_regs_htab.
-       (init_object_hard_regs, finish_object_hard_regs): Rename to
-       init_allocno_hard_regs and finish_allocno_hard_regs.
-       (object_hard_regs_compare, object_hard_regs_node_t): Rename to
-       allocno_hard_regs_compare and allocno_hard_regs_node_t.
-       (create_new_object_hard_regs_node): Rename to
-       create_new_allocno_hard_regs_node.
-       (add_new_object_hard_regs_node_to_forest): Rename to
-       add_new_allocno_hard_regs_node_to_forest.
-       (add_object_hard_regs_to_forest, collect_object_hard_regs_cover):
-       Rename to add_allocno_hard_regs_to_forest and
-       collect_allocno_hard_regs_cover.
-       (setup_object_hard_regs_nodes_parent): Rename to
-       setup_allocno_hard_regs_nodes_parent.
-       (remove_unused_object_hard_regs_nodes): Rename to
-       remove_unused_allocno_hard_regs_nodes.
-       (enumerate_object_hard_regs_nodes, object_hard_regs_nodes_num):
-       Rename to enumerate_allocno_hard_regs_nodes and
-       allocno_hard_regs_nodes_num.
-       (object_hard_regs_nodes, object_hard_regs_subnode_t): Rename to
-       allocno_hard_regs_nodes and allocno_hard_regs_subnode_t.
-       (object_hard_regs_subnode, object_hard_regs_subnodes): Rename to
-       allocno_hard_regs_subnode and allocno_hard_regs_subnodes.
-       (object_hard_regs_subnode_index): Rename to
-       allocno_hard_regs_subnode_index.
-       (setup_object_hard_regs_subnode_index): Rename to
-       setup_allocno_hard_regs_subnode_index.
-       (get_object_hard_regs_subnodes_num): Rename to
-       get_allocno_hard_regs_subnodes_num.
-       (form_object_hard_regs_nodes_forest): Rename to
-       form_allocno_hard_regs_nodes_forest.
-       (finish_object_hard_regs_nodes_tree): Rename to
-       form_allocno_hard_regs_nodes_forest
-       (finish_object_hard_regs_nodes_forest): Rename to
-       finish_allocno_hard_regs_nodes_forest.
-       (setup_left_conflict_sizes_p): Use allocno data instead of object ones.
-       Process conflict allocnos once.
-       (update_left_conflict_sizes_p): Use allocno data instead of object
-       ones.  Change prototype signature.
-       (empty_profitable_hard_regs): Use allocno data instead of object ones.
-       (setup_profitable_hard_regs): Ditto.
-       (get_conflict_profitable_regs): Rename to
-       get_conflict_and_start_profitable_regs.  Use allocno data for
-       profitable regs calculation.
-       (check_hard_reg_p): Change prototype signature.  Check profitable
-       regs for allocno not the objects.
-       (assign_hard_reg): Process conflict allocnos only once for
-       updating conflict costs.
-       (setup_allocno_available_regs_num): Use allocno data instead of
-       object ones.  Modify debug output.
-       (color_pass): Remove initialization and finalization of object
-       color data.
-
-2011-12-05  Kazu Hirata  <kazu@codesourcery.com>
-
-       PR target/51408
-       * config/arm/arm.md (*minmax_arithsi): Always require the else
-       clause in the MINUS case.
-
-2011-12-05  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50904
-       * tree-ssa-loop-im.c (struct mem_ref): Remove vops member.
-       (MEM_ANALYZABLE): New.
-       (memory_references): Remove clobbered_vops and vop_ref_map
-       members, add all_refs_stored_in_loop member.
-       (memref_free): Adjust.
-       (mem_ref_alloc): Likewise.
-       (gather_mem_refs_stmt): Do not record clobbers, instead
-       record refs for unanalyzable stmts.
-       (gather_mem_refs_in_loops): Do not propagate clobbers.
-       (struct vop_to_refs_elt, vtoe_hash, vtoe_eq, vtoe_free,
-       record_vop_access, get_vop_accesses, get_vop_stores,
-       add_vop_ref_mapping): Remove.
-       (create_vop_ref_mapping_loop): Adjust to simply record all stores.
-       (analyze_memory_references): Adjust.
-       (refs_independent_p): Check for not analyzable refs.
-       (can_sm_ref_p): Likewise.
-       (ref_indep_loop_p_1): Simplify.
-       (tree_ssa_lim_finalize): Adjust.
-
-       * tree-ssa-loop-im.c (stmt_cost): Simplify, use LIM_EXPENSIVE
-       rather than magic constants.  Assign zero cost to PAREN_EXPR
-       and SSA_NAME copies.  Assign cost proportional to the vector
-       size for vector constructors.
-
-2011-12-05  Richard Guenther  <rguenther@suse.de>
-
-       * tree-ssa-alias.h (struct ao_ref_s): Add volatile_p field.
-       * tree-ssa-alias.c (ao_ref_init): Initialize it.
-       (ao_ref_init_from_ptr_and_size): Likewise.
-       (refs_may_alias_p_1): Two volatile accesses conflict.
-       (ref_maybe_used_by_call_p_1): Likewise.
-       (call_may_clobber_ref_p_1): Likewise.
-       * tree-ssa-sccvn.c (ao_ref_init_from_vn_reference): Initialize
-       volatile_p field.
-
-2011-12-05  Richard Guenther  <rguenther@suse.de>
-
-       * tree-ssa.c (verify_ssa): Verify SSA names in the loop over all SSA
-       names.  Remove SSA operand checking, call verify_ssa_operands.
-       * tree-ssa-operands.h (verify_ssa_operands): Declare.
-       * tree-ssa-operands.c (verify_ssa_operands): New function.
-
-2011-12-05  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
-
-       * config/arm/arm.c (vfp3_const_double_for_fract_bits): Define.
-       * config/arm/arm-protos.h (vfp3_const_double_for_fract_bits): Declare.
-       * config/arm/constraints.md ("Dt"): New constraint.
-       * config/arm/predicates.md
-       (const_double_vcvt_power_of_two_reciprocal): New.
-       * config/arm/vfp.md (FCVTI32typename): New.
-       (FCVT): New iterator.
-       (*combine_vcvt_f32_<FCVTI32typename>): New.
-       (*combine_vcvt_f64_<FCVTI32typename>): New.
-
-2011-12-05  Richard Guenther  <rguenther@suse.de>
-
-       * cgraph.c (cgraph_create_edge_1): Initialize
-       call_stmt_cannot_inline_p from the stmt if possible.
-       (cgraph_make_edge_direct): Likewise.
-       * gimple-streamer-in.c (input_gimple_stmt): Do not
-       call gimple_call_set_cannot_inline.
-       * gimple.h (enum gf_mask): Remove GF_CALL_CANNOT_INLINE, shift values.
-       (gimple_call_set_cannot_inline): Remove.
-       (gimple_call_cannot_inline_p): Likewise.
-       * ipa-inline-analysis.c (initialize_inline_failed): Look
-       at the edge call_stmt_cannot_inline_p flag.
-       * ipa-inline.c (can_inline_edge_p): Likewise.
-       (early_inliner): Only update the edge flag.
-       * ipa-prop.c (update_indirect_edges_after_inlining): Likewise.
-       (ipa_modify_call_arguments): Do not call gimple_call_set_cannot_inline.
-       * cgraphunit.c (assemble_thunk): Likewise.
-       * gimple-fold.c (gimple_fold_call): Likewise.
-
-       * tree.h (CALL_CANNOT_INLINE_P): Remove.
-       * tree-mudflap.c (mf_xform_statements): Do not modify alloca calls.
-       * builtins.c (expand_builtin_alloca): With -fmudflap do not expand
-       alloca calls inline.
-       * cfgexpand.c (expand_call_stmt): Do not set CALL_CANNOT_INLINE_P.
-       * gimple.c (gimple_build_call_from_tree): Do not read
-       CALL_CANNOT_INLINE_P.
-       * gimplify.c (gimplify_call_expr): Do not copy CALL_CANNOT_INLINE_P.
-
-2011-12-05  Jakub Jelinek  <jakub@redhat.com>
-           Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR middle-end/51323
-       PR middle-end/50074
-       * calls.c (internal_arg_pointer_exp_state): New variable.
-       (internal_arg_pointer_based_exp_1,
-       internal_arg_pointer_exp_scan): New functions.
-       (internal_arg_pointer_based_exp): New function.
-       (mem_overlaps_already_clobbered_arg_p): Use it.
-       (expand_call): Free internal_arg_pointer_exp_state.cache vector
-       and clear internal_arg_pointer_exp_state.scan_start.
-
-2011-12-04  Kaz Kojima  <kkojima@gcc.gnu.org>
-
-       * config/sh/linux.h (TARGET_DEFAULT): Add MASK_SOFT_ATOMIC.
-       * config/sh/sync.md: New file.
-       * config/sh/sh.md: Include sync.md.
-       * config/sh/sh.opt (msoft-atomic): New option.
-       * doc/invoke.texi (SH Options): Document it.
-
-2011-12-04  Nathan Sidwell  <nathan@acm.org>
-
-       * gcov-io.h (struct gcov_info): Replace trailing array with
-       pointer to array.
-       * profile.c (branch_prob): Only call renamed
-       coverage_begin_function once.
-       * coverage.h (coverage_begin_output): Rename to ...
-       (coverage_begin_function): ... here.
-       * coverage.c (struct function_list): Rename to ...
-       (struct coverage_data): ... this.  Update all uses.
-       (gcov_info_var, gcov_fn_info_type, gcov_fn_info_ptr_type): New globals.
-       (bbg_file_opened, bbg_function_announced): Remove.
-       (get_coverage_counts): Adjust message.
-       (coverage_begin_ouput): Rename to ...
-       (coverage_begin_function): ... here.  Move file opening to
-       coverage_init.  Adjust for being called only once.
-       (coverage_end_function): Remove bbg file and inhibit further
-       output here on error.
-       (build_info_type): Adjust for change to pointer to array.
-       (build_info): Receive array of function pointers and adjust.
-       (create_coverage): Break into ...
-       (coverage_obj_init, coverage_obj_fn, coverage_obj_finish):
-       ... these, and adjust.
-       (coverage_init): Open the notes file here.  Tidy.
-       (coverage_finish): Call coverage_obj_init etc.
-
-2011-12-04  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR middle-end/51285
-       * tree-vect-loop.c (vect_create_epilog_for_reduction): Create exit
-       phi nodes for outer loop in case of double reduction.
-
-2011-12-04  Jérémie Detrey  <Jeremie.Detrey@loria.fr>
-
-       PR target/51393
-       * config/i386/avxintrin.h (_mm256_insert_epi64): Declare second
-       parameter as long long.
-
-2011-12-04  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       PR middle-end/51351
-       * optabs.c (init_sync_libfuncs): Use "or" rather than "ior"
-       in the external names.
-
-2011-12-03  Jack Howarth <howarth@bromo.med.uc.edu>
-
-       * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Pass -no_pie for
-       non-PIC code when targeting 10.7 or later.
-
-2011-12-03  Iain Sandoe  <iains@gcc.gnu.org>
-
-       * config/darwin.h (STARTFILE_SPEC): Do not use -lbundle1.o when
-       Darwin >= 10.
-       (DARWIN_DYLIB1_SPEC): Do not use -ldylib1.10.5.o when Darwin >= 10.
-       (DARWIN_CRT1_SPEC): Use -lcrt1.10.6.o when Darwin >= 10.
-
-2011-12-03  Jakub Jelinek  <jakub@redhat.com>
-
-       * fold-const.c (fold_unary_loc): Fold VEC_UNPACK_LO_EXPR,
-       VEC_UNPACK_HI_EXPR, VEC_UNPACK_FLOAT_LO_EXPR and
-       VEC_UNPACK_FLOAT_HI_EXPR with VECTOR_CST argument.
-       (fold_binary_loc): Fold VEC_PACK_TRUNC_EXPR,
-       VEC_PACK_FIX_TRUNC_EXPR, VEC_WIDEN_MULT_LO_EXPR
-       and VEC_WIDEN_MULT_HI_EXPR with VECTOR_CST arguments.
-
-       PR debug/50317
-       * tree-ssa.c (target_for_debug_bind): Also allow is_gimple_reg_type
-       vars that aren't referenced.
-       (tree-ssa-live.c (remove_unused_locals): Don't clear TREE_ADDRESSABLE
-       of unreferenced local vars.
-       * cfgexpand.c (expand_debug_expr): For DEBUG_IMPLICIT_PTR allow also
-       TREE_ADDRESSABLE vars that satisfy target_for_debug_bind.
-
-2011-12-03  Anatoly Sokolov  <aesok@post.ru>
-
-       * config/arm/arm.h (LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove.
-       * config/arm/arm-protos.h (aapcs_libcall_value): Remove.
-       * config/arm/arm.c (TARGET_FUNCTION_VALUE_REGNO_P): Define.
-       (arm_libcall_value_1, arm_function_value_regno_p): New function.
-       (arm_function_value, arm_libcall_value): Use arm_libcall_value_1.
-       (aapcs_libcall_value): Make static.
-       (arm_libcall_value): Add static qualifier.
-
-2011-12-02  Jakub Jelinek  <jakub@redhat.com>
-
-       PR target/51387
-       * config/i386/sse.md (mul<mode>3 with VI1_AVX2 iterator): For
-       V32QImode use { 0,2,..,14,32,34,..,46,16,18,..,30,48,50,..,62 }
-       permutation instead of extract even permutation.
-
-2011-12-02  Nathan Sidwell  <nathan@acm.org>
-
-       * gcov.c (struct arc_info): Add is_throw field.
-       (struct (block_info): Add exceptional field, reduce flags size to
-       account for it.
-       (struct function_info): Add has_catch field.
-       (struct line_info): Add unexceptional field.
-       (process_file): Call find_exception_blocks if necessary.
-       (read_graph_file): Adjust.  Note if an exceptional edge is seen.
-       (find_exception_blocks): New.
-       (add_line_counts): Set line's unexceptional flag if not exceptional.
-       (output_branch_count): Note exceptional arcs, lines and blocks.
-       * gcov-dump.c (tag_arcs): Decode arc flags.
-       * doc/gcov.texi: Document '=====' lines.
-
-2011-12-02  Anatoly Sokolov  <aesok@post.ru>
-
-       * config/ia64/ia64.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS,
-       PRINT_OPERAND_PUNCT_VALID_P): Remove macros.
-       * config/ia64/ia64-protos.h (ia64_print_operand,
-       ia64_print_operand_address): Remove.
-       * config/ia64/ia64.c (TARGET_PRINT_OPERAND,
-       TARGET_PRINT_OPERAND_ADDRESS, TARGET_PRINT_OPERAND_PUNCT_VALID_P):
-       Define.
-       (ia64_print_operand_punct_valid_p): New function.
-       (ia64_print_operand, ia64_print_operand_address): Make static.
-
-2011-12-02  Michael Meissner  <meissner@linux.vnet.ibm.com>
-
-       PR target/51390
-       * config/rs6000/rs6000.c (def_builtin): Use the correct field to
-       figure out the function's attributes.
-       (struct builtin_description): Mark mask field as const since we no
-       longer need to modify it for SPE and PAIRED builtins.
-
-2011-12-02  Joseph Myers  <joseph@codesourcery.com>
-
-       Revert:
-
-       2008-09-18  Andrew Pinski  <andrew_pinski@playstation.sony.com>
-
-       PR rtl-opt/37451
-       * loop-doloop.c (doloop_modify): New argument zero_extend_p and
-       zero extend count after the correction to it is done.
-       (doloop_optimize): Update call to doloop_modify, don't zero extend
-       count before call.
-
-       2008-11-03  Andrew Pinski  <andrew_pinski@playstation.sony.com>
-
-       PR rtl-opt/37782
-       * loop-doloop.c (doloop_modify): Add from_mode argument that says what
-       mode count is in.
-       (doloop_optimize): Update call to doloop_modify.
-
-2011-12-02  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/47259
-       * ipa.c (varpool_externally_visible_p): Register variables
-       are always externally visible.
-
-2011-12-02  Sameera Deshpande  <sameera.deshpande@arm.com>
-
-       * gimple-pretty-print.c (dump_gimple_call): Dereference fn only if
-         non-NULL.
-
-2011-12-02  Martin Jambor  <mjambor@suse.cz>
-
-       PR tree-optimization/50622
-       * tree-sra.c (load_assign_lhs_subreplacements): Force gimple operand
-       if both lacc and racc are grp_partial_lhs.
-
-2011-12-01  Kaz Kojima  <kkojima@gcc.gnu.org>
-
-       PR target/50814.
-       * config/sh/sh.c (expand_ashiftrt): Handle TARGET_SH2A same as
-       TARGET_SH3.
-       (shl_sext_kind): Likewise.
-       * config/sh/sh.h (SH_DYNAMIC_SHIFT_COST): Likewise.
-       * config/sh/sh.md (ashlsi3_sh2a, ashrsi3_sh2a, lshrsi3_sh2a): Remove.
-       (ashlsi3_std): Handle TARGET_SH2A same as TARGET_SH3.
-       (ashlsi3): Likewise.
-       (ashrsi3_d): Likewise.
-       (lshrsi3_d): Likewise.
-       (lshrsi3): Likewise.
-
-2011-12-01  Diego Novillo  <dnovillo@google.com>
-
-       PR bootstrap/51346
-       * ipa-inline.c (can_inline_edge_p): If the edge E has a statement,
-       use the statement's inline indicator instead of E's.
-       Remove consistency check.
-
-2011-12-01  Diego Novillo  <dnovillo@google.com>
-
-       PR bootstrap/51346
-       Revert
-
-       2011-11-29  Diego Novillo  <dnovillo@google.com>
-
-       * gimple.c (gimple_call_set_cannot_inline): Move from gimple.h.
-       Update field call_stmt_cannot_inline_p from call
-       graph edge, if needed.
-       * gimple.h (gimple_call_set_cannot_inline): Move to gimple.c.
-
-2011-12-01  Nathan Sidwell  <nathan@acm.org>
-
-       PR gcov-profile/51113
-       * coverage.c (build_var): Keep coverage variables static.
-
-2011-12-01  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51356
-       * tree-vect-patterns.c (vect_recog_bool_pattern): Give up if
-       vectype doesn't have VECTOR_MODE_P.
-
-       PR debug/50317
-       * tree-ssa-dce.c (remove_dead_stmt): Add a debug stmt when removing
-       as unnecessary a store to a variable with gimple reg type.
-       * tree-ssa-live.c (remove_unused_locals): Clear TREE_ADDRESSABLE bit
-       on local unreferenced variables.
-       * cfgexpand.c (expand_gimple_basic_block): Don't emit DEBUG_INSNs
-       for !target_for_debug_bind variables.
-
-2011-12-01  Patrick Marlier  <patrick.marlier@gmail.com>
-
-       PR middle-end/51273
-       * cgraph.h (cgraph_call_node_duplication_hooks): Declare.
-       * cgraph.c (cgraph_call_node_duplication_hooks): Make global.
-       * cgraphunit.c (cgraph_copy_node_for_versioning): Call it.
-
-2011-12-01  Andrew Pinski  <apinski@cavium.com>
-
-       PR lto/51198
-       * tree.c (free_lang_data_in_decl): Clear FIELD_DECL's
-       DECL_INITIAL also.
-
-2011-12-01  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51246
-       * tree-predcom.c (replace_ref_with): Handle also clobber on the rhs.
-
-       PR rtl-optimization/51014
-       * loop-unroll.c (apply_opt_in_copies): Ignore label DEBUG_INSNs
-       both from bb and orig_bb.
-
-2011-12-01  Joern Rennecke  <joern.rennecke@embecosm.com>
-
-       PR tree-optimization/50802
-       * tree-vrp.c (simplify_conversion_using_ranges): Rewrite test
-       considering what happens to ranges during sign changes and/or
-       intermediate narrowing conversions.
-
-2011-11-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
-
-       PR middle-end/50283
-       * config/pa/pa.md (in_branch_delay): Disallow frame related insns.
-       (in_nullified_branch_delay): Likewise.
-       (in_call_delay): Likewise.
-
-2011-11-30  Richard Henderson  <rth@redhat.com>
-
-       * predict.c (expr_expected_value_1): Assume compare-and-swap builtin
-       boolean return is true.
-
-2011-11-30  Jakub Jelinek  <jakub@redhat.com>
-
-       PR rtl-optimization/51044
-       * dse.c (emit_inc_dec_insn_before): Ensure new_insn is an instruction
-       rather than just insn body.
-
-       PR target/50725
-       * function.c (thread_prologue_and_epilogue_insns): If
-       stack_realign_drap, add drap_reg to SET_UP_BY_PROLOGUE
-       regset.
-
-       PR middle-end/51089
-       * tree-eh.c (cleanup_empty_eh_merge_phis): Add check to
-       avoid creating duplicate edges here.
-       (cleanup_empty_eh_unsplit): And remove it in the caller.
-
-2011-11-30  Andrew Pinski  <apinski@cavium.com>
-
-       PR c/51321
-       * c-parser.c (c_parser_postfix_expression): Check groktypename results
-       before looking at the main variant.
-
-2011-11-30  Jakub Jelinek  <jakub@redhat.com>
-
-       PR rtl-optimization/48721
-       * sched-deps.c (sched_analyze_insn): For SIBLING_CALL_P set
-       reg_pending_barrier to TRUE_BARRIER.
-
-       PR rtl-optimization/48721
-       * sched-ebb.c (begin_move_insn): Insert empty unreachable
-       block after BARRIER if insn is followed by it.
-
-2011-11-30  Richard Henderson  <rth@redhat.com>
-
-       * config/sparc/sparc-opts.h (enum sparc_memory_model_type): New.
-       * config/sparc/sparc.opt (mmemory-model=): New option.
-       * doc/invoke.texi (Sparc Options): Document it.
-       * config/sparc/sparc.c (sparc_option_override): Provide default
-       for sparc_memory_model.
-       (sparc_emit_membar_for_model): Omit barrier combinations that are
-       implied by the memory model.
-
-2011-11-30  Richard Henderson  <rth@redhat.com>
-
-       * config/sparc/sync.md (I124MODE): New mode iterator.
-       (memory_barrier): Remove.
-       (atomic_exchangesi): New.
-       (swapsi): Rename from *swapsi.
-       (atomic_test_and_set<I124MODE>): New.
-       (ldstubqi): Rename from *ldstubqi, merge with expander.
-       (ldstub<I24MODE>): Rename from *ldstub<I24MODE>, merge with expander.
-       (sync_lock_test_and_setsi): Remove.
-       (sync_lock_test_and_set<I12MODE>): Remove.
-
-2011-11-30  Richard Henderson  <rth@redhat.com>
-
-       * config/sparc/constraints.md ("w"): New.
-       * config/sparc/predicates.md (mem_noofs_operand): New.
-       * config/sparc/sparc.c (sparc_expand_compare_and_swap_12): Make static.
-       Generate the boolean result of the atomic_compare_exchange.
-       (sparc_expand_compare_and_swap): New.
-       * config/sparc/sync.md (atomic_compare_and_swap<I>): New.
-       (atomic_compare_and_swap<I48MODE>_1): Rename from
-       *sync_compare_and_swap<I48MODE>, use mem_noofs_operand.
-       (*atomic_compare_and_swapdi_v8plus): Rename from
-       *sync_compare_and_swapdi_v8plus, use mem_noofs_operand.
-       (sync_compare_and_swap<I12MODE>): Remove.
-       (sync_compare_and_swap<I48MODE>): Remove.
-
-2011-11-30  Richard Henderson  <rth@redhat.com>
-
-       * config/sparc/predicates.md (register_or_v9_zero_operand): New.
-       * config/sparc/sparc.md (UNSPEC_ATOMIC): New.
-       * config/sparc/sync.md (atomic_load<I>): New.
-       (atomic_loaddi_1, atomic_store<I>, atomic_storedi_1): New.
-
-2011-11-30  Richard Henderson  <rth@redhat.com>
-
-       * config/sparc/predicates.md (zero_or_v7_operand): New.
-       * config/sparc/sparc.c (sparc_emit_membar_for_model): New.
-       * config/sparc/sparc-protos.h: Update.
-       * config/sparc/sync.md (mem_thread_fence): New.
-       (memory_barrier): Use sparc_emit_membar_for_model.
-       (membar, *membar_empty, *membar_storestore, *membar_storeload): New.
-       (*membar_v8): Accept and ignore the membar mask.
-       (*membar): Accept and print the membar mask.
-
-2011-11-30  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
-
-       * config/arm/arm.c (arm_issue_rate): Cortex-A15 can triple issue.
-       * config/arm/arm.md (mul64): New attribute.
-       (generic_sched): Cortex-A15 is not scheduled generically.
-       (cortex-a15.md): Include.
-       * config/arm/cortex-a15.md: New machine description.
-       * config/arm/t-arm (MD_INCLUDES): Add cortex-a15.md.
-
-2011-11-30  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
-
-       * config/arm/t-arm (MD_INCLUDES): Ensure all md files are listed.
-
-2011-11-30  Iain Sandoe  <iains@gcc.gnu.org>
-
-       * doc/tm.texi.in (NEXT_OBJC_RUNTIME): Update macro description.
-       * doc/tm.texi: Regenerate.
-       * flags.h (flag_next_runtime): Remove references.
-       * toplev.c: Likewise.
-       * defaults.h (NEXT_OBJC_RUNTIME): Provide default.
-       * gccspec.c (lang_specific_driver): Adjust use of NEXT_OBJC_RUNTIME.
-       * config/darwin.c (darwin_override_options): Provide default
-       Objective-C abi settings and target conflict checks.
-       * config/darwin.h (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): Remove unused
-       code. Adjust indenting.
-
-2011-11-29  Joseph Myers  <joseph@codesourcery.com>
-
-       * config/sh/sh.h (enum reg_class, REG_CLASS_NAMES)
-       (REG_CLASS_CONTENTS): Add NON_SP_REGS.
-       (REGCLASS_HAS_GENERAL_REG): Handle NON_SP_REGS.
-       * config/sh/constraints.md (u): New constraint.
-
-2011-11-29  Oleg Endo  <oleg.endo@t-online.de>
-
-       PR target/51337
-       * config/sh/sh.c (sh_secondary_reload): Add case when FPUL
-       register is being loaded from a pseudo in memory.
-
-2011-11-29  DJ Delorie  <dj@redhat.com>
-
-       * config.gcc (rl78-*-elf): New case.
-       * doc/extend.texi: Add RL78 documentation.
-       * doc/invoke.texi: Likewise.
-       * doc/md.texi: Likewise.
-       * doc/contrib.texi: Add RL78.
-       * doc/install.texi: Add rl78-*-elf.
-       * config/rl78: New directory for the Renesas RL78.
-
-2011-11-29  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51247
-       * tree-vrp.c (extract_range_from_assert): For signed 1-bit precision
-       types instead of adding 1 subtract -1 and instead of subtracting 1
-       add -1 to avoid overflows.
-
-2011-11-29  Andrew MacLeod  <amacleod@redhat.com>
-
-       PR target/50123
-       * optabs.c (maybe_optimize_fetch_op): New.  Look for more optimal
-       instructions for a FECTH_OP or OP_FECTH sequence.
-       (expand_atomic_fetch_op): Call maybe_optimize_fetch_op.
-
-2011-11-29  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/sync.md (UNSPEC_LDA, UNSPEC_STA): New unspecs.
-       (movdi_via_fpu): Remove.
-       (loaddi_via_fpu): New insn pattern.
-       (storedi_via_fpu): Ditto.
-       (atomic_loaddi_fpu): Use loaddi_via_fpu and storedi_via_fpu.
-       (atomic_storedi_fpu): Ditto.
-       * reg-stack.c (get_true_reg): Handle UNSPEC_LDA.
-       (subst_stack_regs_pat): Handle UNSPEC_STA.
-
-2011-11-29  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.md (*floathi<mode>2_i387_with_temp): Do not
-       allocate scratch memory for alternative 0.
-
-2011-11-29  Michael Meissner  <meissner@linux.vnet.ibm.com>
-
-       * config/rs6000/rs6000-builtins.def: Completely rewrite builtin
-       handling to centralize more of the builtins in this file.  Change
-       some builtin enumerations to be more consistant.  Use a new mask
-       to hold the current builtins, including SPE and PAIRED builtins
-       which no longer are set via target_flags masks.  Add
-       -mdebug=builtin debug support.  For power machines, define all
-       Altivec and VSX buitins when the compiler starts, but don't allow
-       the use of a builtin unless the appropriate switch is used, or
-       #pragma GCC target is used to change the options.  If the user
-       uses #pragma GCC target, update the appropriate hardware macros.
-       * common/config/rs6000/rs6000-common.c (rs6000_handle_option): Ditto.
-       * config/rs6000/rs6000.opt (rs6000_builtin_mask): Ditto.
-       * config/rs6000/rs6000-c.c (rs6000_macro_to_expand): Ditto.
-       (rs6000_define_or_undefine_macro): Ditto.
-       (rs6000_target_modify_macros): Ditto.
-       (rs6000_cpu_cpp_builtins): Ditto.
-       (altivec_overloaded_builtins): Ditto.
-       (altivec_build_resolved_builtin): Ditto.
-       * config/rs6000/rs6000.c (rs6000_target_modify_macros_ptr): Ditto.
-       (rs6000_builtin_info): Ditto.
-       (def_builtin): Ditto.
-       (enable_mask_for_builtins): Ditto.
-       (DEBUG_FMT_X): Ditto.
-       (rs6000_debug_reg_global): Ditto.
-       (rs6000_builtin_mask_calculate): Ditto.
-       (rs6000_option_override_internal): Ditto.
-       (rs6000_builtin_conversion): Ditto.
-       (rs6000_builtin_vectorized_function): Ditto.
-       (bdesc_3arg): Ditto.
-       (bdesc_dst): Ditto.
-       (bdesc_2arg): Ditto.
-       (builtin_description_predicates): Ditto.
-       (bdesc_altivec_preds): Ditto.
-       (bdesc_spe_predicates): Ditto.
-       (bdesc_spe_evsel): Ditto.
-       (bdesc_paired_preds): Ditto.
-       (bdesc_abs): Ditto.
-       (bdesc_1arg): Ditto.
-       (rs6000_overloaded_builtin_p): Ditto.
-       (rs6000_expand_unop_builtin): Ditto.
-       (bdesc_2arg_spe): Ditto.
-       (spe_expand_builtin): Ditto.
-       (rs6000_invalid_builtin): Ditto.
-       (rs6000_expand_builtin): Ditto.
-       (rs6000_init_builtins): Ditto.
-       (spe_init_builtins): Ditto.
-       (paired_init_builtins): Ditto.
-       (altivec_init_builtins): Ditto.
-       (builtin_function_type): Ditto.
-       (rs6000_common_init_builtins): Ditto.
-       (rs6000_builtin_reciprocal): Ditto.
-       (rs6000_builtin_mask_names): Ditto.
-       (rs6000_pragma_target_parse): Ditto.
-       (rs6000_function_specific_print): Ditto.
-       * config/rs6000/rs6000.h (MASK_DEBUG_BUILTIN): Ditto.
-       (MASK_DEBUG_ALL): Ditto.
-       (TARGET_DEBUG_BUILTIN): Ditto.
-       (TARGET_EXTRA_BUILTINS): Ditto.
-       (REGISTER_TARGET_PRAGMAS): Ditto.
-       (enum rs6000_btc): Ditto.
-       (RS6000_BTC_*): Ditto.
-       (RS6000_BTM_*): Ditto.
-       (enum rs6000_builtins): Ditto.
-       * config/rs6000/rs6000-protos.h (rs6000_overloaded_builtin_p): Ditto.
-       (rs6000_target_modify_macros): Ditto.
-       (rs6000_target_modify_macros_ptr): Ditto.
-
-       * config/rs6000/vector.md (unsfloat<VEC_int><mode>2): Use the
-       standard name for converting vector unsigned values to floating
-       point.  Delete the TARGET_VECTORIZE_BUILTIN_CONVERSION hook, which
-       is handled by machine independent code.
-       * config/rs6000/rs6000.c (TARGET_VECTORIZE_BUILTIN_CONVERSION): Ditto.
-       (rs6000_builtin_conversion): Ditto.
-
-2011-11-29  Dodji Seketeli  <dodji@redhat.com>
-
-       * tree-diagnostic (struct loc_t): Rename into struct loc_map_pair.
-       (maybe_unwind_expanded_macro_loc): Adjust.
-
-2011-11-29  David Edelsohn  <dje.gcc@gmail.com>
-           Aldy Hernandez  <aldyh@redhat.com>
-
-       * trans-mem.c (ipa_tm_create_version_alias): Mangle new_decl
-       if DECL_ONE_ONLY.
-       (ipa_tm_create_version): Same.
-
-2011-11-29  Bernd Schmidt  <bernds@codesourcery.com>
-
-       * haifa-sched.c (recompute_todo_spec): Simplify and correct the
-       code checking for a clobber of a condition register when deciding
-       whether to predicate.
-
-2011-11-29  Diego Novillo  <dnovillo@google.com>
-
-       * gimple.c (gimple_call_set_cannot_inline): Move from gimple.h.
-       Update field call_stmt_cannot_inline_p from call graph edge, if needed.
-       * gimple.h (gimple_call_set_cannot_inline): Move to gimple.c.
-
-2011-11-29  Sameera Deshpande  <sameera.deshpande@arm.com>
-
-       * config/arm/arm.md (arm_movdi): Update NEG_POOL_RANGE.
-       (movdf_soft_insn): Likewise.
-       * config/arm/fpa.md (thumb2_movdf_fpa): Likewise.
-       * config/arm/neon.md (neon_mov<mode>): Likewise.
-       * config/arm/vfp.md (movdi_vfp): Likewise.
-       (movdi_vfp_cortexa8): Likewise.
-       (movdf_vfp): Likewise.
-
-2011-11-29  Jakub Jelinek  <jakub@redhat.com>
-
-       PR middle-end/50074
-       * expr.c (expand_expr_addr_expr_1): Don't call force_operand for
-       EXPAND_SUM modifier.
-
-2011-11-29  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR tree-optimization/51301
-       * tree-vect-patterns.c (vect_recog_over_widening_pattern): Check that
-       the last statement doesn't convert to a bigger type than the original
-       type of the computation.
-
-2011-11-28  Richard Henderson  <rth@redhat.com>
-
-       * config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap):
-       Handle overlap between retval and oldval.  Always compute boolval
-       from CR0 EQ value.
-
-2011-11-28  Jakub Jelinek  <jakub@redhat.com>
-
-       PR debug/50317
-       * tree-ssa.c (execute_update_addresses_taken): Remove
-       var ={v} {CLOBBER} stmts instead of rewriting them into
-       var_N ={v} {CLOBBER}.
-
-       PR middle-end/50907
-       * function.c (convert_jumps_to_returns): When redirecting an edge
-       succ to EXIT_BLOCK_PTR, clear EDGE_CROSSING flag.
-
-       PR tree-optimization/50078
-       * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Copy over
-       TREE_THIS_VOLATILE also from the old to new lhs resp. rhs.
-
-       PR tree-optimization/50682
-       * tree-eh.c (maybe_remove_unreachable_handlers): New function.
-       * tree-flow.h (maybe_remove_unreachable_handlers): New prototype.
-       * tree-optimize.c (execute_cleanup_cfg_post_optimizing): Call it.
-
-2011-11-28  Georg-Johann Lay  <avr@gjlay.de>
-
-       * doc/extend.texi (AVR Built-in Functions): Add documentation for
-       __builtin_avr_map8 and __builtin_avr_map16.
-
-       * config/avr/avr.md: Document new %t and %T asm output codes.
-       (define_c_enum "unspec"): Add UNSPEC_MAP_BITS.
-       (adjust_len): Add map_bits.
-       (map_bitsqi, map_bitshi): New insns.
-       * config/avr/avr-protos.h (avr_out_map_bits): New.
-       * config/avr/avr-protos.c (print_operand): Implement %t and %T.
-       (adjust_insn_length): Handle ADJUST_LEN_MAP_BITS.
-       (avr_double_int_push_digit): New function.
-       (avr_map, avr_revert_map, avr_swap_map, avr_id_map): New functions.
-       (avr_sig_map, avr_map_hamming_byte): New functions.
-       (avr_out_swap_bits, avr_out_revert_bits, avr_move_bits,
-       avr_out_map_bits): New functions.
-       (enum avr_builtin_id): Add AVR_BUILTIN_MAP8, AVR_BUILTIN_MAP16.
-       (avr_init_builtins): Populate __builtin_avr_map8, __builtin_avr_map16.
-       (bdesc_2arg): Add __builtin_avr_map8, __builtin_avr_map16 ...
-       (avr_expand_builtin): ...and expand them.
-       * config/avr/avr-c.c (avr_cpu_cpp_builtins): New built-in defines:
-       __BUILTIN_AVR_MAP8, __BUILTIN_AVR_MAP16.
-
-2011-11-27  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       PR target/51278
-       * config/mips/mips.c (mips_rtx_costs): Handle baddu.
-
-2011-11-27  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       * config/mips/mips.c (mips16_unextended_reference_p): Test for BLKmode.
-
-2011-11-27  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       * config/mips/mips-protos.h (mips_emit_binary): Declare.
-       * config/mips/mips.c (mips_emit_binary): Make global.
-       (mips_set_mips16_mode): Turn off -mfix-r4000 in MIPS16 mode.
-       (mips_conditional_register_usage): Don't treat LO and HI as
-       register operands in MIPS16 mode.
-       (mips_mulsidi3_gen_fn): Use {u,}mulsidi3_{32,64}bit_mips16
-       for MIPS16 code.
-       * config/mips/predicates.md (muldiv_target_operand): New predicate.
-       (move_operand): Allow hilo_operand.
-       * config/mips/mips.md (mul<mode>3): Explicitly specify LO as the
-       target of MIPS16 multiplies, then move it into the target register.
-       (mul<mode>3_internal, *macc2, *msac2): Use muldiv_target_operand.
-       (<u>mulsidi3_32bit_mips16): New expander.
-       (<u>mulsidi3_32bit): Use muldiv_target_operand.
-       (<u>mulsidi3_32bit_r4000): Disable for ISA_HAS_DSP.
-       (<u>mulsidi3_64bit): Require !TARGET_MIPS16.  Split into
-       <u>mulsidi3_64bit_split.
-       (<u>mulsidi3_64bit_mips16): New expander.
-       (<u>mulsidi3_64bit_split): Likewise, using expansions from
-       two previous define_splits.
-       (<u>mulsidi3_64bit_hilo, *muls<u>_di, <u>msubsidi4): Use
-       muldiv_target_operand.
-       (<su>mulsi3_highpart): Use <su>mulsi3_highpart_split for MIPS16 code.
-       (<su>mulsi3_highpart_internal): Require !TARGET_MIPS16.
-       Split into <su>mulsi3_highpart_split.
-       (<su>mulsi3_highpart_split): New expander.
-       (<su>muldi3_highpart): Turn into a define_expand.
-       Use <su>muldi3_highpart_split for MIPS16 code.
-       (<su>muldi3_highpart_internal): Renamed from <su>muldi3_highpart.
-       Require !TARGET_MIPS16.  Split into <su>muldi3_highpart_split.
-       (<su>muldi3_highpart_split): New expander.
-       (<u>mulditi3): Explicitly specify LO as the target of MIPS16
-       multiplies, then move it into the target register.
-       (<u>mulditi3_internal, <u>maddsidi4): Use muldiv_target_operand.
-       (divmod<mode>4, udivmod<mode>4): Turn into define_expands.
-       Use <u>divmod<mode>4_split for MIPS16 code, then explicitly
-       move LO into operand 0.
-       (divmod<mode>4_internal, udivmod<mode>4_internal): Renamed
-       from <u>divmod<mode>4.  Use muldiv_target_operand.
-       Require !TARGET_MIPS16.  Split into <u>divmod<mode>4_split.
-       (<u>divmod<mode>4_split): New expander.
-       (<u>divmod<GPR:mode>4_hilo_<HILO:mode>): Use muldiv_target_operand.
-       (mfhi<GPR:mode>_<HILO:mode>): Use hilo_operand.
-
-2011-11-27  Richard Sandiford  <rdsandiford@googlemail.com>
-
-       * hard-reg-set.h (target_hard_regs): Add x_accessible_reg_set
-       and x_operand_reg_set.
-       (accessible_reg_set, operand_reg_set): New macros.
-       * reginfo.c (init_reg_sets): Initialize accessible_reg_set and
-       operand_reg_set.
-       (saved_accessible_reg_set, saved_operand_reg_set): New variables.
-       (save_register_info): Save them.
-       (restore_register_info): Restore them.
-       (init_reg_sets_1): Limit operand_reg_set to accessible_reg_set.
-       Remove NO_REGS registers from operand_reg_set.  Treat members
-       of operand_reg_set as fixed.
-       * recog.c (general_operand): Check operand_reg_set rather than NO_REGS.
-       (register_operand, nonmemory_operand): Likewise.
-       * varasm.c (make_decl_rtl): Always use DECL_MODE as the mode of
-       register variables.  Check accessible_reg_set and operand_reg_set.
-       * config/mips/mips.c (mips_conditional_register_usage): Remove
-       inaccessible register from accessible_reg_set, rather than just
-       making them fixed.
-
-2011-11-27  Gerald Pfeifer  <gerald@pfeifer.com>
-
-       * config/pa/pa-linux.h (TARGET_GAS): Remove comment.
-
-2011-11-26  Richard Henderson  <rth@redhat.com>
-
-       * config/arm/arm.c (arm_init_libfuncs): Call init_sync_libfuncs
-       for Linux.
-
-2011-11-26  Richard Henderson  <rth@redhat.com>
-
-       * optabs.c (expand_atomic_fetch_op): Always return result.
-
-       * optabs.c (init_sync_libfuncs_1): Include max in iteration.
-
-       * omp-low.c (expand_omp_atomic): Assume anything aligned to
-       BIGGEST_ALIGNMENT is aligned.
-
-2011-11-26  Richard Henderson  <rth@redhat.com>
-
-       * config/m68k/m68k.md (UNSPECV_CAS_1, UNSPECV_CAS_2): New.
-       (UNSPECV_TAS_1, UNSPECV_TAS_2): New.
-       (I): New mode iterator.
-       (xz): New mode attribute.
-       * config/m68k/sync.md: New file.
-
-       * config/m68k/linux.h (TARGET_INIT_LIBFUNCS): New.
-       * config/m68k/m68k.c (m68k_init_sync_libfuncs): New.
-
-2011-11-26  Nathan Sidwell  <nathan@acm.org>
-
-       PR gcov-profile/51297
-       * gcov.c (main): Allocate initial names and sources arrays.
-       (find_source): Don't check for null name or source arrays here.
-
-2011-11-26  Jakub Jelinek  <jakub@redhat.com>
-
-       PR rtl-optimization/49912
-       * cfgrtl.c (rtl_verify_flow_info_1): Ignore also EDGE_PRESERVE bit
-       when counting n_branch.
-
-2011-11-26  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/sync.md (movdi_via_fpu): Add %Z insn suffixes.
-
-2011-11-26  Joern Rennecke  <joern.rennecke@embecosm.com>
-
-       PR middle-end/50074
-       * calls.c (mem_overlaps_already_clobbered_arg_p):
-       Return false if no outgoing arguments have been stored so far.
-
-2011-11-25  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr.c (print_operand): Support code = 'i' for CONST_INT.
-
-2011-11-24  Andrew MacLeod  <amacleod@redhat.com>
-
-       PR other/51011
-       * tree.h (is_builtin_name): No longer external.
-       * builtins.c (is_builtin_name): Make static.
-       * varasm.c (incorporeal_function_p): __sync and __atomic external calls
-       are not incorporeal and may need asm label processing.
-
-2011-11-25  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/50566
-       * config/avr/avr-protos.h (avr_log_t): Add field .builtin.
-       * config/avr/avr-log.c (avr_log_set_avr_log): Initialize it.
-       Don't bypass TARGET_ALL_DEBUG.  Print self-info with ?.
-       (avr_log_vadump): Support %D and %X to print double_int.
-       (avr_double_int_pop_digit): New static function.
-       (avr_dump_double_int_hex): New static function.
-
-2011-11-24  Enkovich Ilya  <ilya.enkovich@intel.com>
-
-       PR target/51287
-       * config/i386/i386.c (distance_non_agu_define_in_bb): Fix insn
-       attr check.
-
-2011-11-24  Andrew MacLeod  <amacleod@redhat.com>
-
-       * optab.c (maybe_emit_atomic_exchange): New.  Try to emit an
-       atomic_exchange pattern.
-       (maybe_emit_sync_lock_test_and_set): New.  Try to emit an exchange
-       using __sync_lock_test_and_set.
-       (maybe_emit_compare_and_swap_exchange_loop): New. Try to emit an
-       exchange using a compare_and_swap loop.
-       (expand_sync_lock_test_and_set): New.  Expand sync_lock_test_and_set.
-       (expand_atomic_test_and_set): New.  Expand test_and_set operation.
-       (expand_atomic_exchange): Use new maybe_emit_* functions.
-       (expand_atomic_store): Use new maybe_emit_* functions.
-       * builtins.c (expand_builtin_sync_lock_test_and_set): Call
-       expand_sync_lock_test_and_set routine.
-       (expand_builtin_atomic_exchange): Remove parameter from call.
-       (expand_builtin_atomic_clear): Use atomic_clear pattern if present.
-       (expand_builtin_atomic_test_and_set): Add target and simply call
-       expand_atomic_test_and_set.
-       (expand_builtin): Add target to expand_builtin_atomic_test_and_set.
-       * expr.h (expand_atomic_exchange): Add parameter.
-       (expand_sync_lock_test_and_set): New prototype.
-       (expand_atomic_test_and_set, expand_atomic_clear): New prototypes.
-
-2011-11-24  H.J. Lu  <hongjiu.lu@intel.com>
-
-       PR target/51134
-       * config/i386/i386.h (processor_costs): Revert revision 181357.
-       * config/i386/i386.c (cost models): Likewise.
-       (core_cost): Likewise.
-       (promote_duplicated_reg): Likewise.
-       (promote_duplicated_reg_to_size): Likewise.
-       (processor_target): Likewise.
-       (expand_set_or_movmem_via_loop_with_iter): Likewise.
-       (expand_set_or_movmem_via_loop): Likewise.
-       (emit_strset): Likewise.
-       (expand_movmem_epilogue): Likewise.
-       (expand_setmem_epilogue): Likewise.
-       (expand_movmem_prologue): Likewise.
-       (expand_setmem_prologue): Likewise.
-       (expand_constant_movmem_prologue): Likewise.
-       (expand_constant_setmem_prologue): Likewise.
-       (decide_alg): Likewise.
-       (decide_alignment): Likewise.
-       (ix86_expand_movmem): Likewise.
-       (ix86_expand_setmem): Likewise.
-       (ix86_slow_unaligned_access): Likewise.
-       * config/i386/i386.md (strset): Likewise.
-       * config/i386/sse.md (vec_dupv4si): Likewise.
-       (vec_dupv2di): Likewise.
-
-2011-11-24  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr.md (*rotlhi2.15): Set length to 4.
-
-2011-11-24  Razya Ladelsky  <razya@il.ibm.com>
-
-       * tree-data-ref.c (initialize_data_dependence_relation): Update
-       comment for the self dependence case.
-       (compute_self_dependence): Remove.
-       * tree-vect-data-refs.c (vect_analyze_data_refs): Remove call to
-       compute_self_dependenc.
-
-2011-11-24  Alan Modra  <amodra@gmail.com>
-
-       * c-decl.c (warn_if_shadowing): Don't warn if shadowed
-       identifier is from system header.
-
-2011-11-23  Jakub Jelinek  <jakub@redhat.com>
-
-       PR target/51261
-       * config/i386/i386.c (decide_alg): Initialize *dynamic_check
-       even if !optimize.
-
-2011-11-23  Vladimir Makarov  <vmakarov@redhat.com>
-
-       PR rtl-optimization/48455
-       * doc/invoke.texi (-fira-region): Document default values.
-
-       * flags-types.h (enum ira_region): Add new value
-       IRA_REGION_AUTODETECT.
-
-       * common.opt (fira-region): Set up initial value to
-       IRA_REGION_AUTODETECT.
-
-       * toplev.c (process_options): Set up flag_ira_region depending on
-       -O options.
-
-       * ira.c (ira.c): Remove optimize guard for ira_build.
-
-2011-11-23  Chung-Lin Tang  <cltang@codesourcery.com>
-
-       PR rtl-optimization/50496
-       * jump.c (redirect_jump): Assert fail on nlabel == NULL_RTX
-       only after epilogue is created. Add comments.
-
-2011-11-22  Richard Henderson  <rth@redhat.com>
-
-       * config/ia64/ia64.c (ia64_expand_atomic_op): Add model parameter.
-       Generate the barrier required for the memory model.
-       (rtx_needs_barrier): Handle UNSPEC_FETCHADD_REL, UNSPEC_CMPXCHG_REL.
-       * config/ia64/ia64-protos.h: Update.
-       * config/ia64/ia64.md (UNSPEC_FETCHADD_REL): New.
-       (UNSPEC_CMPXCHG_REL): New.
-       * config/ia64/sync.md (mem_thread_fence): New.
-       (atomic_load<IMODE>, atomic_store<IMODE>): New.
-       (atomic_compare_and_swap<IMODE>): New.
-       (cmpxchg_acq_<I124MODE>, cmpxchg_acq_di): New.
-       (atomic_exchange<IMODE>): New.
-       (xchg_acq_<IMODE>): Rename from sync_lock_test_and_set<IMODE>.
-       (atomic_<FETCHOP><IMODE>, atomic_nand<IMODE>): New.
-       (atomic_fetch_<FETCHOP><IMODE>, atomic_fetch_nand<IMODE>): New.
-       (atomic_<FETCHOP>_fetch<IMODE>, atomic_nand_fetch<IMODE>): New.
-       (fetchadd_rel_<I48MODE>): New.
-       (sync_<FETCHOP><IMODE>, sync_nand<IMODE>): Remove.
-       (sync_old_<FETCHOP><IMODE>, sync_old_nand<IMODE>): Remove.
-       (sync_new_<FETCHOP><IMODE>, sync_new_nand<IMODE>): Remove.
-       (sync_compare_and_swap<IMODE>): Remove.
-       (sync_lock_release<IMODE>): Remove.
-
-       * config/ia64/ia64.md: Use define_c_enum for UNSPEC_*
-       and UNSPECV_* constants.
-
-2011-11-22  Tom de Vries  <tom@codesourcery.com>
-
-       PR rtl-optimization/50764
-       * sched-deps.c (sched_analyze_insn): Make sure frame-related insns are
-       not moved past preceding jump.
-
-2011-11-22  Jeff Law  <law@redhat.com>
-
-       * doc/contrib.texi: Add entry for David Binderman.
-
-2011-11-22  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
-
-       * postreload.c (reload_combine): Mark reg_state as invalid at
-       volatile insns if there has been a use already.
-
-2011-11-21  Aldy Hernandez  <aldyh@redhat.com>
-
-       * opts.c (finish_options): Do not fail for -fgnu-tm.
-       * gimple-streamer-out.c (output_gimple_stmt): Handle
-       GIMPLE_TRANSACTION.
-       * gimple-streamer-in.c (input_gimple_stmt): Same.
-       * lto-cgraph.c (input_overwrite_node): Read tm_clone bit.
-       (lto_output_node): Write tm_clone bit.
-
-2011-11-22  Ian Lance Taylor  <iant@google.com>
-
-       * doc/install.texi (Configuration): Correct doc of
-       --enable-build-poststage1-with-cxx: it is not experimental.
-
-2011-11-22  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51074
-       * fold-const.c (fold_binary_loc): Fix up VEC_INTERLEAVE_*_EXPR
-       handling for BYTES_BIG_ENDIAN.
-       * optabs.c (can_vec_perm_for_code_p): Likewise.
-
-2011-11-22  Michael Matz  <matz@suse.de>
-
-       PR other/51125
-       * trans-mem.c (expand_block_tm): Ignore clobbers.
-
-2011-11-22  Iain Sandoe  <iains@gcc.gnu.org>
-
-       *  config/darwin.h (ENDFILE_SPEC): New.
-       (DARWIN_CRT1_SPEC): Add crttms.o.
-       (STARTFILE_SPEC): Likewise for dynamic libs and bundles.
-       * config/i386.h (ENDFILE_SPEC): Amend to include crttme.o.
-
-2011-11-22  Michael Matz  <matz@suse.de>
-
-       PR c++/51264
-       * tree.c (iterative_hash_expr): Remove break after return.
-
-2011-11-22  Iain Sandoe  <iains@gcc.gnu.org>
-
-       * target.def (tm_clone_table_section): New hook.
-       * doc/tm.texi.in (TARGET_ASM_TM_CLONE_TABLE_SECTION): Define.
-       * doc/tm.texi: Regenerate.
-       * varasm.c (dump_tm_clone_pairs): Use target tm_clone_table_section.
-       * output.h (default_clone_table_section): New prototype.
-       * config/darwin.h (TARGET_ASM_TM_CLONE_TABLE_SECTION): New.
-       * config/darwin-protos.h (darwin_tm_clone_table_section): New prototype.
-       * config/darwin.c (darwin_tm_clone_table_section): New.
-
-2011-11-21  Torvald Riegel  <triegel@redhat.com>
-
-       * trans-mem.c (diagnose_tm_1): Print an expression instead of a
-       declaration in error messages for indirect calls.
-
-2011-11-21  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.c (sparc_regmode_natural_size): New function
-       implementing REGMODE_NATURAL_SIZE taking into consideration vector
-       modes.
-       (sparc_modes_tieable_p): Similarly for MODES_TIEABLE_P.
-       * config/sparc/sparc-protos.h (sparc_regmode_natural_size,
-       sparc_modes_tieable_p): Declare.
-       * gcc/config/sparc/sparc.h (REGMODE_NATURAL_SIZE,
-       MODES_TIEABLE_P): Use new helper functions.
-
-       Revert
-       2011-11-16  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
-
-       PR middle-end/50325
-       * expmed.c (store_bit_field_1): Use extract_bit_field on big
-       endian targets if the source cannot be exactly covered by word
-       mode chunks.
-
-2011-11-21  Jakub Jelinek  <jakub@redhat.com>
-
-       PR debug/50827
-       * var-tracking.c (loc_cmp): For ENTRY_VALUEs use ENTRY_VALUE_EXP
-       macro instead of XEXP.
-
-2011-11-21  Andreas Tobler  <andreast@fgznet.ch>
-
-       * configure: Regenerate.
-
-2011-11-21  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr.c (output_reload_in_const): Loading a byte with 0
-       must not affect cc0.
-       * config/avr/avr.md (*movhi, *movpsi, *movsi, *movsf): Zero to any
-       register does not change cc0. Same for any constant to ld-register.
-
-2011-11-21  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/mmx.md (unspec) <UNSPEC_MOVNTQ, UNSPEC_PFRCP,
-       UNSPEC_PFRCPIT1, UNSPEC_PFRCPIT2, UNSPEC_PFRSQRT, UNSPEC_PFRSQIT1>:
-       Move from config/i386/i386.md
-       (unspecv) <UNSPECV_EMMS, UNSPECV_FEMMS>: Ditto.
-       * config/i386/sse.md (unspec) <UNSPEC_MOVNT,UNSPEC_MOVU, UNSPEC_LDDQU,
-       UNSPEC_PSHUFB, UNSPEC_PSIGN, UNSPEC_PALIGNR, UNSPEC_EXTRQI,
-       UNSPEC_EXTRQ, UNSPEC_INSERTQI, UNSPEC_INSERTQ, UNSPEC_BLENDV,
-       UNSPEC_INSERTPS, UNSPEC_DP, UNSPEC_MOVNTDQA, UNSPEC_MPSADBW,
-       UNSPEC_PHMINPOSUW, UNSPEC_PTEST, UNSPEC_PCMPESTR, UNSPEC_PCMPISTR,
-       UNSPEC_FMADDSUB, UNSPEC_XOP_UNSIGNED_CMP, UNSPEC_XOP_TRUEFALSE,
-       UNSPEC_XOP_PERMUTE, UNSPEC_FRCZ, UNSPEC_AESENC, UNSPEC_AESENCLAST,
-       UNSPEC_AESDEC, UNSPEC_AESDECLAST, UNSPEC_AESIMC,
-       UNSPEC_AESKEYGENASSIST, UNSPEC_PCLMUL, UNSPEC_PCMP, UNSPEC_VPERMIL,
-       UNSPEC_VPERMIL2, UNSPEC_VPERMIL2F128, UNSPEC_CAST, UNSPEC_VTESTP,
-       UNSPEC_VCVTPH2PS, UNSPEC_VCVTPS2PH, UNSPEC_VPERMSI, UNSPEC_VPERMDF,
-       UNSPEC_VPERMSF, UNSPEC_VPERMTI, UNSPEC_GATHER, UNSPEC_VSIBADDR>: Ditto.
-       (unspecv) <UNSPECV_LDMXCSR, UNSPECV_STMXCSR, UNSPECV_CLFLUSH,
-       UNSPECV_MONITOR, UNSPECV_MWAIT, UNSPECV_VZEROALL, UNSPECV_VZEROUPPER>:
-       Ditto.
-       * config/i386/sync.md (unspec) <UNSPEC_LFENCE, UNSPEC_SFENCE,
-       UNSPEC_MFENCE, UNSPEC_MOVA>: Ditto.
-       (unspecv) <UNSPECV_CMPXCHG_1, UNSPECV_CMPXCHG_2, UNSPECV_CMPXCHG_3,
-       UNSPECV_CMPXCHG_4, UNSPECV_XCHG, UNSPECV_LOCK>: Ditto.
-       (sse2_lfence): Move from config/i386/sse.md.
-       (*sse2_lfence): Ditto.
-       (sse_sfence): Ditto.
-       (*sse_sfence): Ditto.
-       (sse2_mfence): Ditto.
-       (mfence_sse2): Ditto.  Rename from *sse2_mfence.  Enable also
-       for TARGET_64BIT.
-       (mem_thread_fence): Use mfence_sse2.
-
-2011-11-21  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr.h (struct base_arch_s): Add field sfr_offset.
-       * config/avr/avr-devices.c: Ditto. And initialize it.
-       * config/avr/avr-c.c (avr_cpu_cpp_builtins): New built-in define
-       __AVR_SFR_OFFSET__.
-       * config/avr/avr-protos.h (out_movqi_r_mr, out_movqi_mr_r): Remove.
-       (out_movhi_r_mr, out_movhi_mr_r): Remove.
-       (out_movsi_r_mr, out_movsi_mr_r): Remove.
-       * config/avr/avr.md (*cbi, *sbi): Use %i instead of %m-0x20.
-       (*insv.io, *insv.not.io): Ditto.
-       * config/avr/avr.c (out_movsi_r_mr, out_movsi_mr_r): Make static.
-       (print_operand): Implement "%i" to print address as I/O address.
-       (output_movqi): Clean up call of out_movqi_mr_r.
-       (output_movhi): Clean up call of out_movhi_mr_r.
-       (avr_file_start): Use avr_current_arch->sfr_offset instead of
-       magic -0x20. Use TMP_REGNO, ZERO_REGNO instead of 0, 1.
-       (avr_out_sbxx_branch): Use %i instead of %m-0x20.
-       (out_movqi_r_mr, out_movqi_mr_r): Ditto. And make static.
-       (out_movhi_r_mr, out_movhi_mr_r): Ditto. And use avr_asm_len.
-       (out_shift_with_cnt): Clean up code: Use avr_asm_len.
-       (output_movsisf): Use output_reload_insisf for all CONSTANT_P sources.
-       (avr_out_movpsi): USE avr_out_reload_inpsi for all CONSTANT_P sources.
-       Clean up call of avr_out_store_psi.
-       (output_reload_in_const): Don't cut symbols longer than 2 bytes.
-       (output_reload_insisf): Filter CONST_INT_P or CONST_DOUBLE_P to
-       try if setting pre-cleared register is advantageous.
-       (avr_out_plus_1): Use gen_int_mode instead of GEN_INT.
-
-2011-11-20  Joey Ye  <joey.ye@arm.com>
-
-       * expr.c (expand_expr_real_1): Correctly handle strict volatile
-       bitfield loads smaller than mode size.
-
-2011-11-20  Richard Henderson  <rth@redhat.com>
-
-       * config/mips/mips.c (mips_init_libfuncs): Call init_sync_libfuncs.
-
-2011-11-20  Uros Bizjak  <ubizjak@gmail.com>
-
-       PR target/51235
-       * config/i386/i386.c (ix86_expand_vcond): Generate TARGET_XOP
-       patterns for supported mode only.
-
-       PR target/51236
-       * config/i386/i386.c (ix86_expand_builtin)
-       <IX86_BUILTIN_GATHERALTSIV4DI>: Use CODE_FOR_avx2_gathersiv4di.
-
-2011-11-20  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.md (UNSPEC_MOVNTI): Remove.
-       (UNSPEC_MOVNTQ): New unspec.
-       * config/i386/mmx.md (sse_movntq): Rename from sse_movntdi.
-       Use UNSPEC_MOVNTQ instead of UNSPEC_MOVNT.
-       * config/i386/sse.md (sse2_movnti<mode>): Use UNSPEC_MOVNT instead of
-       UNSPEC_MOVNTI.
-       (STORENT_MODE): Add DI and V4DI modes.
-
-2011-11-20  Nathan Sidwell  <nathan@acm.org>
-
-       PR gcov-profile/51113
-       * coverage.c (build_var): Propagate visibility for public
-       decls.  Use make_decl_one_only for PIC correctness.
-
-       testsuite/
-       * gcc.misc-tests/gcov-13.c: Check gcovpart-13b coverage
-       * gcc.misc-tests/gcov-16.c: New.
-       * gcc.misc-tests/gcov-17.c: New.
-       * g++.dg/gcov/gcov-8.C: New.
-       * g++.dg/gcov/gcov-9.C: New.
-       * g++.dg/gcov/gcov-10.C: New.
-
-2011-11-19  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR rtl-optimization/51187
-       * reorg.c (relax_delay_slots): Do not consider a jump useless if there
-       is a barrier between the jump and its target label.
-
-2011-11-19  Patrick Marlier  <patrick.marlier@gmail.com>
-
-       PR middle-end/51211
-       * tracer.c (ignore_bb_p): Don't copy GIMPLE_TRANSACTION.
-
-2011-11-19  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * expmed.c (store_bit_field_1): Revert bogus formatting change.
-
-2011-11-19  Richard Earnshaw  <rearnsha@arm.com>
-
-       PR target/50493
-       * config/arm/arm.c (neon_disambiguate_copy): Correctly handle partial
-       overlap of src and dest operands.
-
-2011-11-19  Iain Sandoe  <iains@gcc.gnu.org>
-
-       * config/darwin.h (ASM_DEBUG_SPEC): New.
-       * config/darwin9.h (ASM_DEBUG_SPEC): New.
-
-2011-11-18  Jan Hubicka  <jh@suse.cz>
-
-       * config/i386/i386.c (atom_cost): Disable SSE loop until alignment
-       issues are fixed.
-
-2011-11-18  Anatoly Sokolov  <aesok@post.ru>
-
-       * config/cris/cris.c (cris_function_value_regno_p): Make static.
-       (TARGET_FUNCTION_VALUE_REGNO_P): Define.
-       * config/cris/cris.h (FUNCTION_VALUE_REGNO_P): Remove.
-       * config/cris/cris-protos.h (cris_function_value_regno_p): Remove.
-
-2011-11-18  H.J. Lu  <hongjiu.lu@intel.com>
-
-       PR target/33944
-       * doc/extend.texi: Document __builtin_ia32_movnti64.
-
-       * config/i386/emmintrin.h (_mm_stream_si64): New.
-
-       * config/i386/i386-builtin-types.def: Add VOID_FTYPE_PLONGLONG_LONGLONG.
-
-       * config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_MOVNTI64.
-       (bdesc_special_args): Update __builtin_ia32_movnti.  Add
-       __builtin_ia32_movnti64.
-       (ix86_expand_special_args_builtin): Handle
-       VOID_FTYPE_PLONGLONG_LONGLONG.
-
-       * config/i386/i386.md (UNSPEC_MOVNTI): New.
-
-       * config/i386/sse.md (sse2_movntsi): Renamed to ...
-       (sse2_movnti<mode>): This.
-
-2011-11-18  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/49868
-       * config/avr/avr.h (base_arch_s): Add field n_segments.
-       (ADDR_SPACE_PGM1, ADDR_SPACE_PGM2, ADDR_SPACE_PGM3,
-       ADDR_SPACE_PGM4, ADDR_SPACE_PGM5, ADDR_SPACE_PGMX): New address spaces.
-       (AVR_HAVE_ELPM, AVR_HAVE_ELPMX): New defines.
-       (INIT_EXPANDERS): New define.
-       * config/avr/avr-protos.h (avr_mem_pgmx_p): New.
-       (avr_init_expanders): New.
-       (avr_emit_movmemhi, avr_out_movmem): New.
-       (avr_xload_libgcc_p): New.
-       * config/avr/avr-c.c (avr_register_target_pragmas): Register
-       address spaces __pgm1, __pgm2,  __pgm3,  __pgm4  __pgm5,  __pgmx.
-       (avr_cpu_cpp_builtins): Add built-in defines __PGM1,
-       __PGM2, __PGM3, __PGM4, __PGM5, __PGMX.
-       * config/avr/avr-devices.c (avr_arch_types): Set field n_segments.
-
-       * config/avr/avr.c (AVR_SECTION_PROGMEM): Change define to cover
-       3 bits instead of just 1.
-       (xstring_empty, xstring_e, rampz_rtx): New static GTYed variables.
-       (progmem_section): Change from section to array of sections.
-       (progmem_section_prefix): New static variable.
-       (avr_file_start): Print set for __RAMPZ__
-       (avr_option_override): Move initialization of RTXes from here...
-       (avr_init_expanders): ...to this new function.
-       (avr_pgm_segment): New static function.
-       (avr_decl_pgm_p): Handle error_mark_node.
-       (avr_mem_pgmx_p, avr_decl_pgmx_p): New static functions.
-       (avr_out_xload, avr_find_unused_d_reg): New static functions.
-       (expand_prologue, expand_epilogue): Use rampz_rtx.
-       (print_operand): Hande CONST_STRING.
-       (avr_xload_libgcc_p): New static function.
-       (avr_out_lpm_no_lpmx, avr_out_lpm): Handle ELPM.
-       (avr_progmem_p): Return 2 for 24-bit flash address space.
-       (avr_out_sbxx_branch): Clean-up code from ASn macros.
-       (out_movqi_r_mr, out_movqi_mr_r): Ditto. And recognize RAMPZ's
-       address and print symbolically.
-       (avr_asm_named_section, avr_section_type_flags,
-       avr_encode_section_info, avr_asm_select_section,
-       avr_addr_space_address_mode, avr_addr_space_pointer_mode,
-       avr_addr_space_legitimate_address_p, avr_addr_space_convert,
-       avr_addr_space_legitimize_address): Handle new address spaces.
-       (avr_output_progmem_section_asm_op): New static function.
-       (avr_asm_init_sections): Initialize progmem_section[].
-       (adjust_insn_length): Handle ADJUST_LEN_XLOAD, ADJUST_LEN_MOVMEM.
-       (avr_const_address_lo16): New static function.
-       (avr_assemble_integer): Use it to handle 3-byte integers.
-       (avr_emit_movmemhi, avr_out_movmem): New functions.
-
-       * config/avr/predicates.md (nox_general_operand): Handle new
-       address spaces.
-       * config/avr/avr.md (unspec): Add UNSPEC_MOVMEM.
-       (adjust_len): Add xload, movmem.
-       (SP_ADDR): New define_constants.
-       (isa): Add "lpm", "lpmx", "elpm", "elpmx".
-       (enabled): Handle them.
-       (load<mode>_libgcc): New expander.
-       (*load.<mode>.libgcc): Rename to load_<mode>_libgcc.
-       (xload8_A, xload<mode>_A): New insn-and-splits.
-       (xload_8, xload_<mode>_libgcc, xload_<mode>, loadmem_elpm): New insns.
-       (mov<mode>): Handle new address spaces.
-       (movmemhi): Rewrite using avr_emit_movmemhi.
-       (MOVMEM_r_d): New mode attribute.
-       (movmem_<mode>, movmem_qi_elpm): New insns.
-       (setmemhi, *clrmemqi, *clrmemhi, strlenhi, *strlenhi): Unquote
-       C-code.  Use label instead of hard-coded instrunction lengths.
-
-2011-11-18  Martin Jambor  <mjambor@suse.cz>
-
-       PR tree-optimization/50605
-       * gimple.c (is_gimple_ip_invariant_address): Also handle MEM_REFs
-       of IPA invariant decls.
-
-2011-11-18  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
-
-       * tree-outof-ssa.c (insert_back_edge_copies):  Add call to
-       mark_dfs_back_edges.
-
-2011-11-18  Iain Sandoe  <iains@gcc.gnu.org>
-
-       PR target/49992
-       * configure.ac: Remove ranlib special-casing for Darwin.
-       * configure: Regenerate.
-
-2011-11-18  Uros Bizjak  <ubizjak@gmail.com>
-
-       PR tree-optimization/51118
-       * fold-const.c (fold_checksum_tree): Check for TS_TYPED structure
-       before using TREE_TYPE accessor on expr.
-
-2011-11-17  Jan Hubicka  <jh@suse.cz>
-
-       PR bootstrap/51134
-       * i386.c (atom_cost): Fix 32bit memset description.
-       (expand_set_or_movmem_via_loop_with_iter): Output proper bounds check
-       for epilogue loops.
-       (expand_movmem_epilogue): Handle epilogues up to size 15 w/o producing
-       byte loop.
-       (decide_alg): sse_loop is not useable wthen SSE2 is disabled;
-       when not optimizing always use rep movsb or lincall; do not produce
-       word sized loops when optimizing memset for size (to avoid need
-       for large constants).
-       (ix86_expand_movmem): Get into sync with ix86_expand_setmem;
-       choose unroll factors better; always do 128bit moves when producing
-       SSE loops; do not produce loopy epilogue when size is too small.
-       (promote_duplicated_reg_to_size): Do not look into desired alignments
-       when doing vector expansion.
-       (ix86_expand_setmem): Track better when promoted value is available;
-       choose unroll factors more sanely. Output loopy epilogue only
-       when needed.
-
-2011-11-17  Steve Ellcey  <sje@cup.hp.com>
-
-       PR middle-end/51144
-       * output.h (fprint_w): Remove.
-       * final.c (fprint_w): Remove.
-       (output_addr_const): Change fprint_w back to fprintf.
-
-2011-11-17  Andrew Pinski  <apinski@cavium.com>
-
-       * config/host-linux.c (TRY_EMPTY_VM_SPACE): Define for MIPS.
-
-2011-11-17  Andrew MacLeod  <amacleod@redhat.com>
-
-       * builtins.c (expand_builtin): Remove 4th parameter representing
-       weak/strong mode when __atomic_compare_exchange becomes a library call.
-
-2011-11-17  Richard Henderson  <rth@redhat.com>
-
-       * config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap): Get
-       new pseudo for target after convert_modes.
-       (rs6000_expand_atomic_exchange, rs6000_expand_atomic_op): Likewise.
-
-2011-11-17  Richard Henderson  <rth@redhat.com>
-
-       * config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap): Get
-       new pseudo for target after convert_modes.
-       (rs6000_expand_atomic_exchange, rs6000_expand_atomic_op): Likewise.
-
-2011-11-17  Richard Henderson  <rth@redhat.com>
-
-       * builtins.c (expand_builtin_mem_thread_fence): Remove.
-       (expand_builtin_mem_signal_fence): Remove.
-       (expand_builtin_atomic_thread_fence): Use expand_mem_thread_fence.
-       (expand_builtin_sync_synchronize): Likewise.
-       (expand_builtin_atomic_signal_fence): Use expand_mem_signal_fence.
-       * optabs.c (expand_asm_memory_barrier): Split out from
-       expand_builtin_mem_signal_fence.
-       (expand_mem_thread_fence): New, a combination of code from
-       expand_builtin_mem_thread_fence and expand_builtin_sync_synchronize.
-       (expand_mem_signal_fence): Moved and renamed from
-       expand_builtin_mem_signal_fence.
-       (expand_atomic_exchange): Use expand_mem_thread_fence.
-       (expand_atomic_load, expand_atomic_store): Likewise.
-       * expr.h, optabs.h: Update decls.
-
-2011-11-17  Bin Cheng  <bin.cheng@arm.com>
-
-       PR rtl-optimization/50663
-       * cprop.c (implicit_set_indexes): New global variable.
-       (insert_set_in_table): Add additional parameter and record implicit
-       set information.
-       (hash_scan_set): Add additional parameter and pass it to above.
-       (hash_scan_insn): Pass false to hash_scan_set.
-       (compute_hash_table_work): Pass true to hash_scan_set.
-       (compute_cprop_data): Add implicit set to AVIN of block which the
-       implicit set is recorded for.
-       (one_cprop_pass): Handle implicit_set_indexes array.
-
-2011-11-17  Michael Matz  <matz@suse.de>
-
-       PR middle-end/50644
-       PR middle-end/50741
-       * tree-ssa-live.c (mark_all_vars_used_1): Recurse only for decls of
-       current function.
-       (remove_unused_locals): Ditto.
-
-2011-11-16  Richard Henderson  <rth@redhat.com>
-
-       * config/alpha/alpha.c (alpha_split_compare_and_swap_12): Copy
-       ALIAS_SET_MEMORY_BARRIER when creating a new memory.
-       (alpha_split_atomic_exchange_12): Likewise.
-       * config/rs6000/rs6000.c (rs6000_adjust_atomic_subword): Likewise.
-
-2011-11-16  Joseph Myers  <joseph@codesourcery.com>
-
-       * config/i386/i386elf.h (PREFERRED_DEBUGGING_TYPE): Remove.
-
-2011-11-16  David Edelsohn  <dje.gcc@gmail.com>
-
-       * config/rs6000/rs6000.c (rs6000_xcoff_section_type_flags):
-       Default to minimum alignment if decl is NULL.
-
-2011-11-16  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/sse.md (round<mode>2_vec_pack_sfix): Optimize V2DFmode
-       sequence for AVX.
-       (<sse4_1>_round<ssemodesuffix>_vec_pack_sfix<avxsizesuffix>): Ditto.
-
-2011-11-16  Venkataramanan Kumar  <venkataramanan.kumar@amd.com>
-
-       * doc/invoke.texi: Document AMD bdver1 and btver1.
-
-2011-11-16  Richard Earnshaw  <rearnsha@arm.com>
-           Bernd Schmidt <bernds@coudesourcery.com>
-           Sebastian Huber <sebastian.huber@embedded-brains.de>
-
-       PR target/49641
-       * config/arm/arm.c (store_multiple_sequence): Avoid cases where
-       the base reg is stored iff compiling for Thumb1.
-
-2011-11-16  Razya Ladelsky  <razya@il.ibm.com>
-
-       PR tree-optimization/49960
-       * tree-data-ref.c (initialize_data_dependence_relation): Add
-       initializations.
-       Remove call to compute_self_dependence.
-       (compute_affine_dependence): Remove the !DDR_SELF_REFERENCE condition.
-       (compute_self_dependence): Remove old code. Add call to
-       compute_affine_dependence.
-       (compute_all_dependences): Remove call to compute_self_dependence.
-       Add call to compute_affine_dependence.
-
-2011-11-16  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
-
-       PR middle-end/50325
-       * expmed.c (store_bit_field_1): Use extract_bit_field on big
-       endian targets if the source cannot be exactly covered by word
-       mode chunks.
-
-2011-11-15  Joseph Myers  <joseph@codesourcery.com>
-
-       * config/i386/i386elf.h (ASM_OUTPUT_ASCII): Change STRING_LIMIT to
-       ELF_STRING_LIMIT.
-
-2011-11-15  Richard Henderson  <rth@redhat.com>
-
-       * config/alpha/alpha.c (alpha_pre_atomic_barrier): New.
-       (alpha_post_atomic_barrier): New.
-       (alpha_split_atomic_op): New memmodel argument; honor it.
-       (alpha_split_compare_and_swap): Take array of operands.  Honor
-       memmodel; always set bool output
-       (alpha_expand_compare_and_swap_12): Similarly.
-       (alpha_split_compare_and_swap_12): Similarly.
-       (alpha_split_atomic_exchange): Similarly.  Rename from
-       alpha_split_lock_test_and_set.
-       (alpha_expand_atomic_exchange_12): Similarly.  Rename from
-       alpha_expand_lock_test_and_set_12.
-       (alpha_split_atomic_exchange_12): Similarly.  Rename from
-       alpha_split_lock_test_and_set_12.
-       * config/alpha/alpha-protos.h: Update.
-       * config/alpha/alpha.md (UNSPECV_CMPXCHG): New.
-       * config/alpha/constraints.md ("w"): New.
-       * config/alpha/predicates.md (mem_noofs_operand): New.
-       * config/alpha/sync.md (atomic_compare_and_swap<mode>): Rename from
-       sync_compare_and_swap<mode>; add the new parameters.
-       (atomic_exchange<mode>): Update from sync_test_and_set<mode>.
-       (atomic_fetch_<op><mode>): Update from sync_old_<op><mode>.
-       (atomic_<op>_fetch<mode>): Update from sync_new_<op><mode>.
-       (atomic_<op><mode>): Update from sync_<op><mode>.
-
-2011-11-16  Tom de Vries  <tom@codesourcery.com>
-
-       * tree-ssa-tail-merge.c (replace_block_by): Add frequency of bb2 to bb1.
-
-2011-11-16  Alan Modra  <amodra@gmail.com>
-
-       PR rtl-optimization/51051
-       PR bootstrap/51086
-       * function.c (thread_prologue_and_epilogue_insns): Guard
-       emitting return with single_succ_p test.
-
-2011-11-15  Joern Rennecke  <joern.rennecke@embecosm.com>
-
-       * config/epiphany/epiphany.md (mov<mode>cc): Fix code to
-       get mode from CMP_OP1 if CMP_OP0 is VOIDmode.
-
-2011-11-15  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/sse.md (vec_pack_trunc_v2df): Optimize sequence for AVX.
-       (vec_pack_sfix_trunc_v2df): Ditto.
-       (vec_pack_sfix_v2df): Ditto.
-       (vec_pack_sfix_trunc_v4df): Generate fix_truncv4dfv4si2 and
-       avx_vec_concatv8si patterns.
-       (vec_pack_sfix_v4df): Generate avx_cvtpd2dq256 and
-       avx_vec_concatv8si patterns.
-
-2011-11-15  Torvald Riegel  <triegel@redhat.com>
-
-       * c-parser.c (c_parser_transaction_expression): Require parentheses
-       when parsing transaction expressions.
-
-2011-11-15  Tristan Gingold  <gingold@adacore.com>
-
-       * incpath.c (get_added_cpp_dirs): New function.
-       * incpath.h (get_added_cpp_dirs): Declare.
-       * config/vms/vms-c.c (vms_c_register_includes): New function.
-       (vms_std_modules): New variable.
-       * config/vms/vms.h (TARGET_EXTRA_INCLUDES): Define.
-       (vms_c_register_includes): Declare.
-
-2011-11-15  Tristan Gingold  <gingold@adacore.com>
-
-       * c-family/c-pragma.h (pragma_extern_prefix): Declare.
-       * c-family/c-pragma.c (pragma_extern_prefix): Make it public.
-       * config/vms/vms-c.c (saved_extern_prefix): New variable.
-       (vms_pragma_extern_prefix): New function.
-       (vms_c_register_pragma): Register vms_pragma_extern_prefix.
-
-2011-11-15  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/49868
-       * config/avr/avr.h (ADDR_SPACE_PGM): New address spaces.
-       (REGISTER_TARGET_PRAGMAS): New define.
-       * config/avr/avr-protos.h (avr_mem_pgm_p): New.
-       (avr_load_libgcc_p): New.
-       (avr_register_target_pragmas): New.
-       (asm_output_external_libcall): Remove.
-       (avr_log_t): Add field "progmem".  Order alphabetically.
-       * config/avr/avr-log.c (avr_log_set_avr_log): Set avr_log.progmem.
-       * config/avr/avr-c.c (langhooks.h): New include.
-       (avr_register_target_pragmas): New function. Register address
-       space __pgm.
-       (avr_cpu_cpp_builtins): Add built-in define __PGM.
-
-       * config/avr/avr.c: Include "c-family/c-common.h".
-       (TARGET_LEGITIMATE_ADDRESS_P): Remove define.
-       (TARGET_LEGITIMIZE_ADDRESS): Remove define.
-       (TARGET_ADDR_SPACE_SUBSET_P): Define to...
-       (avr_addr_space_subset_p): ...this new static function.
-       (TARGET_ADDR_SPACE_CONVERT): Define to...
-       (avr_addr_space_convert): ...this new static function.
-       (TARGET_ADDR_SPACE_ADDRESS_MODE): Define to...
-       (avr_addr_space_address_mode): ...this new static function.
-       (TARGET_ADDR_SPACE_POINTER_MODE): Define to...
-       (avr_addr_space_pointer_mode): ...this new static function.
-       (TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Define to...
-       (avr_addr_space_legitimate_address_p): ...this new static function.
-       (TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Define to...
-       (avr_addr_space_legitimize_address): ...this new static function.
-       (avr_mode_code_base_reg_class): Handle address spaces.
-       (avr_regno_mode_code_ok_for_base_p): Ditto.
-       (lpm_addr_reg_rtx, lpm_reg_rtx, all_regs_rtx): New static variables.
-       (avr_option_override): Initialize them.
-       (output_reload_in_const): Use all_regs_rtx. Fix signedness of loop
-       variables.
-       (avr_pgm_segment): New static function.
-       (avr_decl_pgm_p, avr_mem_pgm_p): New static functions.
-       (avr_out_lpm, avr_out_lpm_no_lpmx): New static functions.
-       (output_movqi, output_movhi, output_movsisf, avr_out_movpsi): Call
-       avr_out_lpm to handle loads from progmem.
-       (avr_load_libgcc_p): New static function.
-       (avr_progmem_p): Test if decl is in flash.
-       (avr_pgm_pointer_const_p): New static function.
-       (avr_nonconst_pointer_addrspace): New static function.
-       (avr_pgm_check_var_decl): New static function.
-       (avr_insert_attributes): Use it.  Change error message to report
-       cause (progmem or address space) when code wants to write to flash.
-       (avr_section_type_flags): Unset section flag SECTION_BSS for
-       data in progmem.
-
-       * config/avr/predicates.md (nop_general_operand): New predicate.
-       (nox_general_operand): New predicate.
-       * config/avr/avr.md (LPM_REGNO): New define_constant.
-       (load<mode>_libgcc): New expander.
-       (*load.<mode>.libgcc): New insn.
-       (mov<mode>): Handle loads from non-generic AS.
-       (movmemhi): Ditto.  Propagate address space information to newly
-       created MEM.
-       (movqi_insn, *movhi, *movpsi, *movsi, *movsf): Change predicate #1
-       to nox_general_operand.
-       (ashrqi3, ashrhi3, ashrsi3): Change predicate #1 to
-       nop_general_operand.
-       (ashlqi3, *ashlqi3, ashlhi3, ashlsi3): Ditto.
-       (lshrqi3, *lshrqi3, lshrhi3, lshrsi3): Ditto.
-       (split-lpmx): New split.
-       (*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const,
-       *lshrhi3_const, *lshrsi3_const): Indent, unquote C.
-
-2011-11-15  Maxim Kuvyrkov  <maxim@codesourcery.com>
-
-       * ipa-cp.c (ipa_value_from_jfunc): Make global.
-       (ipa_cst_from_jfunc): Remove, use ipa_value_from_jfunc instead.
-       (get_indirect_edge_target): Rename, make global.
-       (devirtualization_time_bonus, estimate_local_effects,)
-       (ipcp_discover_new_direct_edges): Update.
-       * ipa-inline-analysis.c (evaluate_conditions_for_edge):
-       Generalize to also handle types.  Rename to ...
-       (evaluate_properties_for_edge): Use instead of
-       evaluate_conditions_for_edge.
-       (estimate_edge_devirt_benefit): New function.
-       (estimate_calls_size_and_time): Use it.
-       (estimate_node_size_and_time, estimate_ipcp_clone_size_and_time,)
-       (inline_merge_summary): Update.
-       (do_estimate_edge_time, do_estimate_edge_growth): Update.  Calculate
-       parameter information at the call site and pass it on to subroutines.
-       * tree-inline.c (estimate_num_insns): Distinguish between direct and
-       indirect calls.
-       (init_inline_once): Set size and time costs or indirect calls.
-       * tree-inline.h (eni_weights): Add indirect_call_cost.
-
-2011-11-15  Tom de Vries  <tom@codesourcery.com>
-
-       PR tree-optimization/51005
-       * tree-ssa-tail-merge.c (delete_basic_block_same_succ): Rename to
-       mark_basic_block_deleted.
-       (update_worklist): Inline purge_bbs.
-       (purge_bbs, unlink_virtual_phi, update_vuses, vop_at_entry)
-       (delete_block_update_dominator_info): Remove.
-       (replace_block_by): Remove update_vops parameter.  Partially evaluate
-       for update_vops == false.
-       (apply_clusters): Remove update_vops parameter.  Remove update_vops
-       argument in replace_block_by call.
-       (update_debug_stmts): Remove MAY_HAVE_DEBUG_STMTS test.
-       (tail_merge_optimize): Remove update_vops argument to apply_clusters.
-       Remove call to purge_bbs.  Add calls to calculate_dominance_info and
-       free_dominance_info.  Add MAY_HAVE_DEBUG_STMTS  before calling
-       update_debug_stmts.  Mark vop var for renaming, if necessary.
-
-2011-11-15  Bernd Schmidt  <bernds@codesourcery.com>
-
-       PR rtl-optimization/51051
-       * cfgrtl.c (cfg_layout_can_merge_blocks_p): Return FALSE if the
-       move would cause fallthrough into the exit block.
-
-2011-11-14  Richard Henderson  <rth@redhat.com>
-
-       * config/rs6000/rs6000.c (emit_load_locked): Assert the mode is
-       handled.
-       (emit_store_conditional): Likewise.
-       (rs6000_pre_atomic_barrier, rs6000_post_atomic_barrier): New.
-       (rs6000_adjust_atomic_subword): New.
-       (rs6000_mask_atomic_subword, rs6000_finish_atomic_subword): New.
-       (rs6000_expand_atomic_op): Rename from rs6000_emit_sync; rewrite
-       for pre-reload expansion.
-       (rs6000_split_compare_and_swap, rs6000_split_compare_and_swapqhi,
-       rs6000_expand_compare_and_swapqhi): Merge into ...
-       (rs6000_expand_atomic_compare_and_swap): ... here.  New function.
-       rs6000_split_lock_test_and_set; expand immediately.  Handle
-       QImode and HImode.
-       * config/rs6000/rs6000.md (UNSPEC_LWSYNC): Move and rename
-       from UNSPECV_LWSYNC.
-       * config/rs6000/sync.md (fetchopsi_constr, fetchopdi_constr): Remove.
-       (mem_thread_fence): New.
-       (hwsync): Rename from memory_barrier.
-       (*hwsync): Rename from *sync_internal.
-       (lwsync, *lwsync): Mirror hwsync implementation.
-       (isync): Don't reference memory.
-       (loadsync): New.
-       (atomic_load<INT>, atomic_store<INT>): New.
-       (ATOMIC): New mode iterator.
-       (load_locked<ATOMIC>): Rename from load_locked_<GPR>.
-       (store_conditional<ATOMIC>): Rename from store_conditional_<GPR>.
-       (sync_compare_and_swap<GPR>): Remove.
-       (sync_compare_and_swaphi, sync_compare_and_swapqi): Remove.
-       (sync_compare_and_swapqhi_internal): Remove.
-       (sync_lock_test_and_set<GPR>): Remove.
-       (sync_<FETCHOP><INT1>): Remove.
-       (*sync_<FETCHOP>si_internal, *sync_<FETCHOP>di_internal): Remove.
-       (sync_nand<INT1>, *sync_nand<GPR>_internal): Remove.
-       (sync_old_<FETCHOP><GPR>): Remove.
-       (*sync_old_<FETCHOP>si_internal): Remove.
-       (*sync_old_<FETCHOP>di_internal): Remove.
-       (sync_old_nand<INT1>): Remove.
-       (*sync_old_nand<GPR>_internal): Remove.
-       (sync_new_<FETCHOP><GPR>): Remove.
-       (*sync_new_<FETCHOP>si_internal): Remove.
-       (*sync_new_<FETCHOP>di_internal): Remove.
-       (sync_new_nand<INT1>): Remove.
-       (*sync_new_nand<GPR>_internal): Remove.
-       (*atomic_andsi, *atomic_anddi): Remove.
-       (*sync_addshort_internal, *sync_subshort_internal): Remove.
-       (*sync_andsi_internal, *sync_boolsi_internal): Remove.
-       (*sync_boolcshort_internal): Remove.
-       (sync_lock_release<INT1>): Remove.
-       (atomic_compare_and_swap<INT1>): New.
-       (atomic_exchange<INT1>): New.
-       (atomic_<FETCHOP><INT1>, atomic_nand<INT1>): New.
-       (atomic_fetch_<FETCHOP><INT1>, atomic_fetch_nand<INT1>): New.
-       (atomic_<FETCHOP>_fetch<INT1>, atomic_nand_fetch<INT1>): New.
-
-2011-11-14  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/sse.md (round<mode>2): Use register_operand for
-       operand 1 predicate.
-       (round<mode>2_sfix): Ditto.
-       (round<mode>2_vec_pack_sfix): Ditto for operand 1 and operand 2.
-
-2011-11-14  Nathan Sidwell  <nathan@acm.org>
-
-       * gcov.c (canonicalize_name): Protect use of S_ISLNK.
-
-2011-11-14  Jan Hubicka  <jh@suse.cz>
-
-       PR target/51126
-       * config/i386/i386.c (core cost model): Correct pasto.
-
-2011-11-14  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/sse.md (round<mode>2_sfix): New expander.
-       (round<mode>2_vec_pack_sfix): Ditto.
-       (<sse4_1>_round<ssemodesuffix>_sfix<avxsizesuffix>): Ditto.
-       (<sse4_1>_round<ssemodesuffix>_vec_pack_sfix<avxsizesuffix>): Ditto.
-       * config/i386/builtin-types.def (V4SI_FTYPE_V4SF_ROUND,
-       V8SI_FTYPE_V8SF_ROUND, V4SI_FTYPE_V2DF_V2DF_ROUND,
-       V8SI_FTYPE_V4DF_V4DF_ROUND): New builtin types.
-       * config/i386/i386.c (ix86_builtins): Add
-       IX86_BUILTIN_{FLOORPD,CEILPD,ROUNDPD_AZ}_VEC_PACK_SFIX{,256} and
-       IX86_BUILTIN_{FLOORPS,CEILPS,ROUNDPS_AZ}_SFIX{,256} defines.
-       (bdesc_args): Add __builtin_ia32_{floorpd,ceilpd}_vec_pack_sfix{,256},
-       __builtin_ia32_roundpd_az_vec_pack_sfix{,256},
-       __builtin_ia32_{floorps,ceilps}_sfix{,256}and
-       __builtin_ia32_roundps_az_sfix{,256} descriptions.
-       (ix86_expand_sse_round_vec_pack_sfix): New.
-       (ix86_expand_args_builtin): Handle V4SI_FTYPE_V4SF_ROUND,
-       V8SI_FTYPE_V8SF_ROUND, V4SI_FTYPE_V2DF_V2DF_ROUND and
-       V8SI_FTYPE_V4DF_V4DF_ROUND types.  Check last argument of
-       CODE_FOR_sse4_1_roundpd_vec_pack_sfix, CODE_FOR_sse4_1_roundps_sfix,
-       CODE_FOR_avx_roundpd_vec_pack_sfix256 and CODE_FOR_avx_roundps_sfix256.
-       (ix86_builtin_vectorized_function): Handle
-       BUILT_IN_{I,L,LL}FLOOR{,F}, BUILT_IN_{I,L,LL}CEIL{,F} and
-       BUILT_IN_{I,L,LL}ROUND{,F}
-
-2011-11-14  Jan Hubicka  <jh@suse.cz>
-
-       PR middle-end/50598
-       * cgraph.h (varpool_externally_visible_p): Declare.
-       (varpool_add_new_variable): Declare.
-       * tree-emultls.c (get_emutls_init_templ_addr,
-       new_emutls_decl): Use varpool_add_new_variable.
-       * ipa.c (varpool_externally_visible_p): Export.
-       * varpool.c (varpool_add_new_variable): New function.
-
-2011-11-14  Michael Zolotukhin  <michael.v.zolotukhin@gmail.com>
-           Jan Hubicka  <jh@suse.cz>
-
-       * config/i386/i386.h (processor_costs): Add second dimension to
-       stringop_algs array.
-       * config/i386/i386.c (cost models): Initialize second dimension of
-       stringop_algs arrays.
-       (core_cost): New costs based on generic64 costs with updated stringop
-       values.
-       (promote_duplicated_reg): Add support for vector modes, add
-       declaration.
-       (promote_duplicated_reg_to_size): Likewise.
-       (processor_target): Set core costs for core variants.
-       (expand_set_or_movmem_via_loop_with_iter): New function.
-       (expand_set_or_movmem_via_loop): Enable reuse of the same iters in
-       different loops, produced by this function.
-       (emit_strset): New function.
-       (expand_movmem_epilogue): Add epilogue generation for bigger sizes,
-       use SSE-moves where possible.
-       (expand_setmem_epilogue): Likewise.
-       (expand_movmem_prologue): Likewise for prologue.
-       (expand_setmem_prologue): Likewise.
-       (expand_constant_movmem_prologue): Likewise.
-       (expand_constant_setmem_prologue): Likewise.
-       (decide_alg): Add new argument align_unknown.  Fix algorithm of
-       strategy selection if TARGET_INLINE_ALL_STRINGOPS is set; Skip sse_loop
-       (decide_alignment): Update desired alignment according to chosen move
-       mode.
-       (ix86_expand_movmem): Change unrolled_loop strategy to use SSE-moves.
-       (ix86_expand_setmem): Likewise.
-       (ix86_slow_unaligned_access): Implementation of new hook
-       slow_unaligned_access.
-       * config/i386/i386.md (strset): Enable half-SSE moves.
-       * config/i386/sse.md (vec_dupv4si): Add expand for vec_dupv4si.
-       (vec_dupv2di): Add expand for vec_dupv2di.
-
-2011-11-14  Dimitrios Apostolou  <jimis@gmx.net>
-
-       PR bootstrap/51094
-       PR middle-end/51116
-       * config/elfos.h (TARGET_ASM_INTERNAL_LABEL): Remove.
-       * varasm.c (default_elf_internal_label): Remove.
-
-2011-11-14  Kai Tietz  <ktietz@redhat.com>
-
-       * gcov.c (generate_results): Add missing semicolon and correct indent.
-
-2011-11-14  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR bootstrap/51112
-       * tree-vect-stmts.c (vectorizable_condition): Initialize comp_vectype.
-
-2011-11-14  Mingjie Xing  <mingjie.xing@gmail.com>
-
-       * doc/invoke.texi (Wunused-result): Change @pxref{Variable Attributes}
-       to @pxref{Function Attributes}.
-
-2011-11-13  Oleg Endo  <oleg.endo@t-online.de>
-
-       PR target/50694
-       * config/sh/sh.h (IS_LITTLE_ENDIAN_OPTION, UNSUPPORTED_SH2A):
-       New macros.
-       (DRIVER_SELF_SPECS): Use new macros to filter out unsupported options
-       taking the default configuration into account.
-
-2011-11-13  Jonathan Wakely  <jwakely.gcc@gmail.com>
-
-       * doc/install.texi (Specific): Fix anchor for
-       x86_64-*-solaris2.1[0-9]*.
-
-2011-11-13  Nathan Sidwell  <nathan@acm.org>
-
-       * gcov.c (source_prefix, source_length): New globals.
-       (flag_relative_only): Likewise.
-       (print_usage, options, process_args): Update.
-       (generate_results): Use coverage.name, check
-       flag_relative_only. Adjust messages.
-       (find_source): Check source_prefix.
-       (output_lines): Use coverage.name, adjust messages.
-       * doc/gcov.texi (Invoking Gcov): Document new options.
-
-2011-11-12  Jason Merrill  <jason@redhat.com>
-
-       PR c++/51060
-       * gimplify.c (gimplify_target_expr): Add a clobber to the cleanup.
-       (gimplify_modify_expr): Don't try to simplify it.
-
-2011-11-12  Dimitrios Apostolou  <jimis@gmx.net>
-
-       PR bootstrap/51094
-       * config/elfos.h (STRING_ASM_OP): Define.
-       * varasm.c (default_elf_asm_output_limited_string): Use it.
-
-       PR bootstrap/51094
-       * gcc/configure.ac: Check for stpcpy declaration.
-       * system.h: Declare it if not.
-       * config.in, configure: Regenerate.
-
-2011-11-12  Richard Henderson  <rth@redhat.com>
-
-       * config/rs6000/rs6000.md (fix_trunc<SFDF>si2_stfiwx): Use
-       nonimmediate_operand for the destination.
-       (fixuns_trunc<SFDF>si2_stfiwx): Likewise.
-
-       * builtins.c (expand_builtin_compare_and_swap): If target is const0,
-       don't pass the target to expand_atomic_compare_and_swap.
-       (expand_builtin_atomic_compare_exchange): Likewise.
-
-       * config/sh/linux.h (TARGET_INIT_LIBFUNCS): New.
-       * config/sh/sh.c (sh_init_sync_libfuncs): New.
-
-       * config/pa/pa-linux.h (TARGET_SYNC_LIBCALL): New.
-       * config/pa/pa.h (TARGET_SYNC_LIBCALL): New default.
-       * config/pa/pa.c (pa_init_libfuncs): Use init_sync_libfuncs.
-
-2011-11-12  Iain Sandoe  <iains@gcc.gnu.org>
-
-       PR target/45233
-       * config/rs6000/rs6000.c (rs6000_legitimize_reload_address):
-       Only expand a symbol ref. into an access when the entity is defined
-       in the TU.
-
-2011-11-12  Jan Hubicka  <jh@suse.cz>
-
-       PR bootstrap/50822
-       * cgraphunit.c (output_weakrefs): Output really only weakrefs.
-
-2011-11-12  Nathan Sidwell  <nathan@acm.org>
-
-       * gcov.c (struct name_map): New.
-       (names, n_names, a_names): New global vars.
-       (print_usage): Adjust usage.
-       (generate_results): Canonicalize main file name.
-       (release_structures): Adjust.
-       (name_search, name_sort): New callbacks.
-       (find_source): Look for and create a canonical name.
-       (canonicalize_name): New.
-       (make_gcov_file_name): Reimplement and fix mangling.
-       (mangle_name): New.
-       * doc/gcov.texi: Update documentation about path preservation.
-
-2011-11-11  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/linux.h (ASM_GENERATE_INTERNAL_LABEL): Delete.
-       * config/sparc/linux64.h (ASM_GENERATE_INTERNAL_LABEL): Delete.
-
-2011-11-11  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/i386-protos.h (ix86_maybe_emit_epilogue_vzeroupper):
-       New prototype.
-       * config/i386/i386.c (ix86_maybe_emit_epilogue_vzeroupper): New
-       function.
-       (ix86_expand_epilogue): Use it.
-       * config/i386/i386.md (return, simple_return): Call it in the
-       expanders.
-
-       PR tree-optimization/51091
-       * tree-stdarg.c (execute_optimize_stdarg): Ignore TREE_CLOBBER_P
-       rhs also in the va_list_simple_ptr case.
-
-       PR tree-optimization/51058
-       * tree-vect-slp.c (vect_remove_slp_scalar_calls): New function.
-       (vect_schedule_slp): Call it.
-       * tree-vect-stmts.c (vectorizable_call): If slp_node != NULL,
-       don't replace scalar calls with setting of their lhs to zero here.
-
-       PR tree-optimization/51074
-       * fold-const.c (vec_cst_ctor_to_array, fold_vec_perm): New functions.
-       (fold_binary_loc): Handle VEC_EXTRACT_EVEN_EXPR,
-       VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR and
-       VEC_INTERLEAVE_LOW_EXPR with VECTOR_CST or CONSTRUCTOR operands.
-       (fold_ternary_loc): Handle VEC_PERM_EXPR with VECTOR_CST or
-       CONSTRUCTOR operands.
-       * tree-ssa-propagate.c (valid_gimple_rhs_p): Handle ternary
-       expressions.
-       * tree-vect-generic.c (lower_vec_perm): Mask sel_int elements
-       to 0 .. 2 * elements - 1.
-
-2011-11-11  Richard Henderson  <rth@redhat.com>
-
-       * gimple-pretty-print.c (dump_gimple_omp_atomic_load): Dump needed.
-       (dump_gimple_omp_atomic_store): Likewise.
-       * optabs.c (can_atomic_exchange_p): New.
-       * optabs.h (can_atomic_exchange_p): Declare.
-       * omp-low.c (expand_omp_atomic_load): Implement.
-       (expand_omp_atomic_store): Likewise.
-       (expand_omp_atomic): Update for new arguments to load/store.
-
-2011-11-11  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * cprop.c: Adjust outdated comments throughout.
-       (hash_scan_set): Rename PAT parameter into SET.
-       (cprop_pavloc): Rename into...
-       (cprop_avloc): ...this.
-       (cprop_absaltered): Rename into...
-       (cprop_kill): ...this.
-       (alloc_cprop_mem): Adjust for above renaming.
-       (free_cprop_mem): Likewise.
-       (compute_cprop_data): Likewise.
-       (compute_local_properties): Rename TRANSP parameter into KILL and
-       adjust throughout.  Rework comments.
-       (try_replace_reg): Fix long line.
-       (cprop_jump): Likewise.
-       (constprop_register): Fix prototype and take INSN last.
-       (cprop_insn): Adjust calls to above function.  Fix long lines.
-       (bypass_block): Likewise.
-       (one_cprop_pass): Likewise.
-
-2011-11-11  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/alpha/elf.h (ELF_ASCII_ESCAPES): Rename from ESCAPES.
-       (ELF_STRING_LIMIT): Rename from STRING_LIMIT.
-
-2011-11-11  Jason Merrill  <jason@redhat.com>
-
-       * varasm.c (default_elf_asm_output_limited_string): #ifdef
-       ELF_ASCII_ESCAPES.
-       (default_elf_asm_output_ascii): Likewise.
-
-2011-11-11  Uros Bizjak  <ubizjak@gmail.com>
-
-       PR target/50762
-       * config/i386/constraints.md (j): New address constraint.
-       * config/i386/predicates.md (lea_address_operand): Redefine as
-       special predicate.
-       * config/i386/i386.md (*lea_3_zext): Use "j" constraint for operand 1.
-       (*lea_4_zext): Ditto.
-
-2011-11-11  David S. Miller  <davem@davemloft.net>
-
-       Revert
-       2011-11-05  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.md (UNSPEC_SHORT_LOAD): New unspec.
-       (zero-extend_v8qi_vis, zero_extend_v4hi_vis): New expanders.
-       (*zero_extend_v8qi_<P:mode>_insn,
-       *zero_extend_v4hi_<P:mode>_insn): New insns.
-       * config/sparc/sparc.c (vector_init_move_words,
-       vector_init_prepare_elts, sparc_expand_vector_init_vis2,
-       sparc_expand_vector_init_vis1): New functions.
-       (vector_init_bshuffle): Rewrite to handle more cases and make use
-       of locs[] array prepared by vector_init_prepare_elts.
-       (vector_init_fpmerge, vector_init_faligndata): Delete.
-       (sparc_expand_vector_init): Rewrite using new infrastructure.
-
-2011-11-11  Jakub Jelinek  <jakub@redhat.com>
-
-       * opts-common.c (generate_canonical_option): Free opt_text
-       it it has been allocated here and not stored anywhere.
-
-       * tree-vect-slp.c (vect_free_slp_tree): Also free SLP_TREE_CHILDREN
-       vector.
-       (vect_create_new_slp_node): Don't allocate node before checking stmt
-       type.
-       (vect_free_oprnd_info): Remove FREE_DEF_STMTS argument, always
-       free def_stmts vectors and additionally free oprnd_info.
-       (vect_build_slp_tree): Adjust callers.  Call it even if
-       stop_recursion.  If vect_create_new_slp_node or
-       vect_build_slp_tree fails, properly handle freeing memory.
-       If it succeeded, clear def_stmts in oprnd_info.
-
-2011-11-11  Dimitrios Apostolou  <jimis@gmx.net>
-
-       * defaults.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_INTERNAL_LABEL): Expand on
-       multiple lines for readability.
-       * output.h (fprint_whex, fprint_w, fprint_ul, sprint_ul): Declare.
-       (ASM_OUTPUT_LABELREF): Call fputs instead of asm_fprintf.
-       * dwarf2asm.c (dw2_assemble_integer, dw2_asm_output_data,
-       dw2_asm_data_uleb128, dw2_asm_delta_uleb128,
-       dw2_asm_delta_sleb128): Convert fprintf calls to the new functions.
-       * dwarf2out.c (dwarf2out_source_line): Call fprint_ul instead of
-       fprintf.
-       * final.c (fprint_whex, fprint_w, fprint_ul, sprint_ul): New functions
-       serving as fast replacements for fprintf integer to string conversions.
-       (sprint_ul_rev): Internal helper for the above.
-       (output_addr_const) <CONST_INT>: Don't use fprintf.
-       * varasm.c: Fix some whitespace inconsistencies.
-       (default_elf_asm_output_limited_string): New.
-       (default_elf_asm_output_ascii): Likewise.
-       (default_elf_internal_label): Likewise.
-       * config/elfos.h (ASM_GENERATE_INTERNAL_LABEL): Use sprint_ul and
-       stpcpy instead of sprintf.
-       (TARGET_ASM_INTERNAL_LABEL): Define as default_elf_internal_label.
-       (ELF_ASCII_ESCAPES, ELF_STRING_LIMIT): Rename from old ESCAPES and
-       STRING_LIMIT macros.
-       (ASM_OUTPUT_LIMITED_STRING, ASM_OUTPUT_ASCII): Call functions that
-       provide the same functionality.
-       * config/i386/i386.c (print_reg): Call fprint_ul instead of fprintf.
-
-2011-11-10  Andrew MacLeod  <amacleod@redhat.com>
-
-       * doc/extend.texi: Document __atomic_test_and_set and __atomic_clear.
-
-2011-11-10  Andrew MacLeod  <amacleod@redhat.com>
-
-       PR middle-end/51038
-       * builtins.c (expand_builtin_atomic_clear): New.  Expand atomic_clear.
-       (expand_builtin_atomic_test_and_set): New.  Expand atomic test_and_set.
-       (expand_builtin): Add cases for test_and_set and clear.
-       * sync-builtins.def (BUILT_IN_ATOMIC_TEST_AND_SET): New.
-       (BUILT_IN_ATOMIC_CLEAR): New.
-
-2011-11-10  Roberto Agostino Vitillo  <ravitillo@lbl.gov>
-
-       PR debug/50983
-       * dwarf2out.c (set_cur_line_info_table): Restore the last is_stmt
-       value in the current line table.
-
-2011-11-10  Nathan Sidwell  <nathan@acm.org>
-
-       * gcov.c (struct function_info): Make src an index, not a pointer.
-       (struct source_info): Remove index and next source fields.
-       (fn_end): New static var.
-       (sources_index): Remove.
-       (sources): Now a pointer to an array, not a list.
-       (n_sources, a_sources): New.
-       (process_file): Adjust for changes to read_graph_file. Insert
-       functions into source lists and check line numbers here.
-       (generate_results): Only allocate lines for sources with
-       contents.  Adjust for source array.
-       (release_structures): Likewise.
-       (find_source): Return source index, adjust for source array.
-       (read_graph_file): Return function list.  Don't insert into source
-       lists here.
-       (read_count_file): Take list of functions.
-       (solve_flow_graph): Reverse the arc lists here.
-       (add_line_counts): Adjust for source array.
-
-2011-11-10  Jakub Jelinek  <jakub@redhat.com>
-
-       PR middle-end/51077
-       * tree-object-size.c (addr_object_size): Check TREE_CODE of
-       MEM_REF's operand rather than code of the MEM_REF itself.
-
-2011-11-10  Andrew MacLeod  <amacleod@redhat.com>
-
-       PR rtl-optimization/51040
-       * optabs.c (expand_atomic_fetch_op): Patchup code for NAND should
-       be AND followed by NOT.
-       * builtins.c (expand_builtin_atomic_fetch_op): Patchup code for NAND
-       should be AND followed by NOT.
-
-2011-11-10  Jakub Jelinek  <jakub@redhat.com>
-
-       * vec.h (VEC_BASE): If base is at offset 0 in the structure,
-       use &(P)->base even if P is NULL.
-
-       PR rtl-optimization/51023
-       * combine.c (simplify_comparison) <case SIGN_EXTEND>: Don't use
-       val_signbit_known_clear_p for signed comparison narrowing
-       optimization.  Don't check for non-VOIDmode, use
-       HWI_COMPUTABLE_MODE_P macro.
-       <case ZERO_EXTEND>: Don't check for non-VOIDmode.
-       Optimize even when const_op is equal to GET_MODE_MASK (mode),
-       don't optimize if const_op is negative.
-
-2011-11-10  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51042
-       * tree-ssa-pre.c (phi_translate_1): Avoid recursing on
-       self-referential expressions.  Refactor code to avoid duplication.
-
-2011-11-10  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51070
-       * tree-loop-distribution.c (generate_builtin): Do not replace
-       the loop with a builtin if the partition contains statements which
-       results are used outside of the loop.
-       (pass_loop_distribution): Verify and collect.
-
-2011-11-10  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51030
-       * tree-ssa-phiopt.c (jump_function_from_stmt): New function.
-       (value_replacement): Use it to handle trivial non-empty
-       intermediate blocks.
-
-2011-11-10  Richard Guenther  <rguenther@suse.de>
-
-       PR middle-end/51071
-       * gimple.c (gimple_has_side_effects): Remove checking code
-       that doesn't belong here.
-
-2011-11-10  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR tree-optimization/51058
-       * tree-vect-slp.c (vect_get_constant_vectors): Handle CALL_EXPR.
-
-2011-11-10  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/51000
-       * tree-vect-patterns.c (vect_recog_bool_pattern): If adding
-       a pattern stmt for a bool store, adjust DR_STMT too.
-       Don't handle bool conversions to single bit precision lhs.
-       * tree-vect-stmts.c (vect_remove_stores): If next is a pattern
-       stmt, remove its related stmt and free its stmt_vinfo.
-       (free_stmt_vec_info): Free also pattern stmt's vinfo and
-       pattern def stmt's vinfo.
-       * tree-vect-loop.c (destroy_loop_vec_info): Don't try to
-       free pattern stmt's vinfo here.
-       (vect_transform_loop): When calling vect_remove_stores,
-       do gsi_next first and don't call gsi_remove.  If not strided
-       store, free stmt vinfo for gsi_stmt (si) rather than stmt.
-
-2011-11-09  Jakub Jelinek  <jakub@redhat.com>
-
-       PR target/50911
-       * config/i386/i386.c (expand_vec_perm_interleave2): If d->vmode is
-       V4SImode, !TARGET_SSE2 and punpck[lh]* is needed, change dremap.vmode
-       to V4SFmode.
-
-       * function.h (requires_stack_frame_p): New prototype.
-       * function.c (requires_stack_frame_p): No longer static.
-       * config/i386/i386.c (ix86_finalize_stack_realign_flags): If
-       stack_realign_fp was just a conservative guess for a function
-       which doesn't use sp/fp/argp at all, clear frame_pointer_needed
-       and stack realignment.
-
-2011-11-09  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       PR preprocessor/51061
-       * incpath.c (merge_include_chains): Make sure to not pass null
-       pointers to free_path.
-
-2011-11-09  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       * doc/invoke.texi ([Option Summary, C++ Language Options]):
-       Add -Wzero-as-null-pointer-constant.
-
-2011-11-07  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
-
-       * config/arm/arm-cores.def: Add -mcpu=cortex-a7.
-       * config/arm/arm-tables.opt: Regenerate.
-       * config/arm/arm-tune.md: Likewise.
-       * config/arm/bpabi.h (BE8_LINK_SPEC): Add Cortex A-7.
-       * doc/invoke.texi: Document -mcpu=cortex-a7.
-
-2011-11-09  Richard Guenther  <rguenther@suse.de>
-
-       Revert
-       2011-11-09  Richard Guenther  <rguenther@suse.de>
-
-       * tree-cfg.c (verify_gimple_call): Verify that
-       gimple_call_cannot_inline_p is returning a conservative
-       correct result according to gimple_check_call_matching_types.
-
-2011-11-09  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51039
-       * tree-cfg.c (verify_gimple_call): Verify that
-       gimple_call_cannot_inline_p is returning a conservative
-       correct result according to gimple_check_call_matching_types.
-       * ipa-inline-analysis.c (estimate_function_body_sizes): Remove
-       code dealing with un-inlinablility.
-       * gimple-streamer-in.c (input_gimple_stmt): Update the
-       non-inlinable flag.
-
-2011-11-09  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51039
-       * tree-inline.c (setup_one_parameter): Always perform a
-       valid gimple type change.
-       (declare_return_variable): Likewise.
-
-2011-11-09  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/rs6000/vector.md (vcondv4sfv4si, vcondv4siv4sf,
-       vconduv4sfv4si): New patterns.
-       * config/rs6000/rs6000.c (rs6000_emit_vector_cond_expr): Handle
-       different dest_mode from comparison mode.
-
-2011-11-09  Richard Guenther  <rguenther@suse.de>
-
-       * gimple-fold.c (canonicalize_constructor_val): Mark
-       address-taken variables addressable.
-
-2011-11-09  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR tree-optimization/51015
-       * tree-vect-loop.c (vect_determine_vectorization_factor): Expect
-       vectype to be set for pattern def stmts.
-
-2011-11-09  Alan Modra  <amodra@gmail.com>
-
-       * function.c (bb_active_p): Delete.
-       (dup_block_and_redirect, active_insn_between): New functions.
-       (convert_jumps_to_returns, emit_return_for_exit): New functions,
-       split out from..
-       (thread_prologue_and_epilogue_insns): ..here.  Delete
-       shadowing variables.  Don't do prologue register clobber tests
-       when shrink wrapping already failed.  Delete all last_bb_active
-       code.  Instead compute tail block candidates for duplicating
-       exit path.  Remove these from antic set.  Duplicate tails when
-       reached from both blocks needing a prologue/epilogue and
-       blocks not needing such.
-       * ifcvt.c (dead_or_predicable): Test both flag_shrink_wrap and
-       HAVE_simple_return.
-       * bb-reorder.c (get_uncond_jump_length): Make global.
-       * bb-reorder.h (get_uncond_jump_length): Declare.
-       * cfgrtl.c (rtl_create_basic_block): Comment typo fix.
-       (rtl_split_edge): Likewise.  Warning fix.
-       (rtl_duplicate_bb): New function.
-       (rtl_cfg_hooks): Enable can_duplicate_block_p and duplicate_block.
-       * Makefile.in (function.o): Update dependencies.
-
-2011-11-08  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
-           Georg-Johann Lay  <avr@gjlay.de>
-
-       * doc/tm.texi.in (MODE_CODE_BASE_REG_CLASS): Add address space
-       argument.
-       (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise.
-       * doc/tm.texi: Regenerate.
-
-       * config/cris/cris.h (MODE_CODE_BASE_REG_CLASS): Add address
-       space argument.
-       (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise.
-       * config/bfin/bfin.h (MODE_CODE_BASE_REG_CLASS): Likewise.
-       (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise.
-       * config/avr/avr.h (MODE_CODE_BASE_REG_CLASS): Add address space
-       argument.
-       (REGNO_MODE_CODE_OK_FOR_BASE_P): Ditto.
-       * config/avr/avr-protos.h (avr_mode_code_base_reg_class): Ditto.
-       (avr_regno_mode_code_ok_for_base_p): Ditto.
-       * config/avr/avr.c (avr_mode_code_base_reg_class): Ditto.
-       (avr_regno_mode_code_ok_for_base_p): Ditto.
-       (avr_reg_ok_for_addr_p): Pass AS down to
-       avr_regno_mode_code_ok_for_base_p.
-
-       * addresses.h (base_reg_class): Add address space argument.
-       Pass to MODE_CODE_BASE_REG_CLASS.
-       (ok_for_base_p_1): Add address space argument.  Pass to
-       REGNO_MODE_CODE_OK_FOR_BASE_P.
-       (regno_ok_for_base_p): Add address space argument.  Pass to
-       ok_for_base_p_1.
-
-       * regrename.c (scan_rtx_address): Add address space argument.
-       Pass address space to regno_ok_for_base_p and base_reg_class.
-       Update recursive calls.
-       (scan_rtx): Pass address space to scan_rtx_address.
-       (build_def_use): Likewise.
-       * regcprop.c (replace_oldest_value_addr): Add address space
-       argument.  Pass to regno_ok_for_base_p and base_reg_class.
-       Update recursive calls.
-       (replace_oldest_value_mem): Pass address space to
-       replace_oldest_value_addr.
-       (copyprop_hardreg_forward_1): Likewise.
-
-       * reload.c (find_reloads_address_1): Add address space argument.
-       Pass address space to base_reg_class and regno_ok_for_base_p.
-       Update recursive calls.
-       (find_reloads_address): Pass address space to base_reg_class,
-       regno_ok_for_base_p, and find_reloads_address_1.
-       (find_reloads): Pass address space to base_reg_class.
-       (find_reloads_subreg_address): Likewise.
-
-       * ira-costs.c (record_reg_classes): Update calls to base_reg_class.
-       (ok_for_base_p_nonstrict): Add address space argument.  Pass to
-       ok_for_base_p_1.
-       (record_address_regs): Add address space argument.  Pass to
-       base_reg_class and ok_for_base_p_nonstrict.  Update recursive calls.
-       (record_operand_costs): Pass address space to record_address_regs.
-       (scan_one_insn): Likewise.
-
-       * caller-save.c (init_caller_save): Update call to base_reg_class.
-       * ira-conflicts.c (ira_build_conflicts): Likewise.
-       * reload1.c (maybe_fix_stack_asms): Likewise.
-
-2011-11-08  Michael Matz  <matz@suse.de>
-
-       * gengtype.c (write_field_root): Avoid out-of-scope access of newv.
-
-       * tree-stdarg.c (execute_optimize_stdarg): Accept clobbers.
-
-       * tree.h (TREE_CLOBBER_P): New macro.
-       * gimple.h (gimple_clobber_p): New inline function.
-       * gimplify.c (gimplify_bind_expr): Add clobbers for all variables
-       that go out of scope and live in memory.
-       * tree-ssa-operands.c (get_expr_operands): Transfer volatility also
-       for constructors.
-       * cfgexpand.c (decl_to_stack_part): New static variable.
-       (add_stack_var): Allocate it, and remember mapping.
-       (fini_vars_expansion): Deallocate it.
-       (stack_var_conflict_p): Add early outs.
-       (visit_op, visit_conflict, add_scope_conflicts_1,
-       add_scope_conflicts): New static functions.
-       (expand_used_vars_for_block): Don't call add_stack_var_conflict, tidy.
-       (expand_used_vars): Add scope conflicts.
-       (expand_gimple_stmt_1): Expand clobbers to nothing.
-       (expand_debug_expr): Ditto.
-
-       * tree-pretty-print.c (dump_generic_node): Dump clobbers nicely.
-       * tree-ssa-live.c (remove_unused_locals): Remove clobbers that
-       refer to otherwise unused locals.
-       * tree-sra.c (build_accesses_from_assign): Ignore clobbers.
-       * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Clobbers of
-       SSA names aren't necessary.
-       (propagate_necessity): Accept and ignore constructors on the rhs, tidy.
-       * gimple.c (walk_gimple_op): Accept constructors like mem_rhs.
-       * tree-ssa-structalias.c (find_func_aliases): Clobbers don't store
-       any known value.
-       * tree-ssa-sccvn.c (vn_reference_lookup_3): Ditto, in particular they
-       don't zero-initialize something.
-       * tree-ssa-phiopt.c (cond_if_else_store_replacement_1): Ignore
-       clobber RHS, we don't want PHI nodes with those.
-
-2011-11-08  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/i386.c (ix86_preferred_simd_mode): Even for TARGET_AVX
-       if not TARGET_PREFER_AVX128 return 32-byte integer vectors.
-
-2011-11-08  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/51012
-       * ipa-prop.c (update_indirect_edges_after_inlining): Fixup
-       non-inlinable state.
-       * cgraph.c (cgraph_make_edge_direct): Likewise.
-
-2011-11-08  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR rtl-optimization/47698
-       * ifcvt.c (noce_operand_ok): Move around comment.
-
-2011-11-08  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/50999
-       * lto-opts.c (append_to_collect_gcc_options): Split out from...
-       (lto_write_options): ... here.  Prepend frontend specific flags.
-
-2011-11-08  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (*avx_vperm2f128<mode>3_nozero): Emit mask
-       0x12 and 0x20 as vinsert[fi]128 instead of vperm2[fi]128.
-
-       * tree-vect-stmts.c (vectorizable_call): Add SLP_NODE argument.
-       Handle vectorization of SLP calls.
-       (vect_analyze_stmt): Adjust caller, add call to it for SLP too.
-       (vect_transform_stmt): Adjust vectorizable_call caller, remove
-       assertion.
-       * tree-vect-slp.c (vect_get_and_check_slp_defs): For calls start
-       with op_idx 3.
-       (vect_build_slp_tree): Allow CALL_EXPR.
-
-2011-11-08  Richard Guenther  <rguenther@suse.de>
-
-       * gimple-fold.c (canonicalize_constructor_val): Make sure
-       we have referenced vars setup before adding to them.
-
-2011-11-07  Richard Henderson  <rth@redhat.com>
-           Aldy Hernandez  <aldyh@redhat.com>
-           Andrew MacLeod  <amacleod@redhat.com>
-           Torvald Riegel  <triegel@redhat.com>
-
-       Merged from transactional-memory.
-
-       * gtm-builtins.def: New file.
-       * trans-mem.c: New file.
-       * trans-mem.h: New file.
-
-       * opts.c (finish_options): Error out when using -flto and -fgnu-tm.
-
-       * config/i386/i386.c: Define TARGET_VECTORIZE* transactional variants.
-       (ix86_handle_tm_regparm_attribute, struct bdesc_tm,
-       ix86_builtin_tm_load, ix86_builtin_tm_store,
-       ix86_init_tm_builtins): New.
-       (ix86_init_builtins): Initialize TM builtins.
-       (struct ix86_attribute_table): Add "*tm regparm".
-       * config/i386/i386-builtin-types.def (PV2SI): Define.
-       (PCV2SI): Define.
-       Define V2SI_FTYPE_PCV2SI.
-       Define V4SF_FTYPE_PCV4SF.
-       Define V8SF_FTYPE_PCV8SF.
-       Define VOID_PV2SI_V2SI.
-
-       * doc/invoke.texi (C Dialect Options): Document -fgnu-tm and
-       tm-max-aggregate-size.
-       * doc/tm.texi.in: Add TARGET_VECTORIZE_BUILTIN_TM_LOAD and
-       TARGET_VECTORIZE_BUILTIN_TM_STORE hooks.
-       * doc/tm.texi: Regenerate.
-
-       * attribs.c (apply_tm_attr): New.
-       (init_attributes): Allow '*' prefix for overrides.
-       (register_attribute): Likewise.
-       * builtin-attrs.def (ATTR_TM_TMPURE, ATTR_TM_REGPARM): New.
-       (ATTR_TM_NOTHROW_LIST, ATTR_TM_TMPURE_NOTHROW_LIST,
-       ATTR_TM_PURE_TMPURE_NOTHROW_LIST, ATTR_TM_NORETURN_NOTHROW_LIST,
-       ATTR_TM_CONST_NOTHROW_LIST, ATTR_TMPURE_MALLOC_NOTHROW_LIST,
-       ATTR_TMPURE_NOTHROW_LIST): New.
-       * builtin-types.def (BT_FN_I[1248]_VPTR, BT_FN_FLOAT_VPTR,
-       BT_FN_DOUBLE_VPTR, BT_FN_LDOUBLE_VPTR, BT_FN_VOID_VPTR_I[1248],
-       BT_FN_VOID_VPTR_FLOAT, BT_FN_VOID_VPTR_DOUBLE,
-       BT_FN_VOID_VPTR_LDOUBLE, BT_FN_VOID_VPTR_SIZE): New.
-       * builtins.def: Include gtm-builtins.def. Add comments regarding
-       transactional memory synchronization.
-       (DEF_TM_BUILTIN): New.
-       * c-parser.c (struct c_parser): Add in_transaction.
-       (c_parser_transaction, c_parser_transaction_expression,
-       c_parser_transaction_cancel, c_parser_transaction_attributes): New.
-       (c_parser_attribute_any_word): Split out from c_parser_attributes.
-       (c_parser_statement_after_labels): Handle RID_TRANSACTION*.
-       (c_parser_unary_expression): Same.
-       * c-tree.h (c_finish_transaction): Declare.
-       * c-typeck.c (c_finish_transaction): New.
-       (build_function_call_vec): Call tm_malloc_replacement.
-       * calls.c (is_tm_builtin): New.
-       (flags_from_decl_or_type): Add ECF_TM_BUILTIN and ECF_TM_PURE.
-       * cfgbuild.c (make_edges): Add edges for REG_TM notes.
-       * cfgexpand.c (expand_call_stmt): Call
-       mark_transaction_restart_calls.
-       (gimple_expand_cfg): Free the tm_restart map.
-       (mark_transaction_restart_calls): New.
-       * cfgrtl.c (purge_dead_edges): Look for REG_TM notes.
-       * cgraph.c (dump_cgraph_node): Handle tm_clone.
-       * cgraph.h (struct cgraph_node): Add tm_clone field.
-       (decl_is_tm_clone): New.
-       (struct cgraph_local_info): Add tm_may_enter_irr.
-       (cgraph_copy_node_for_versioning): Declare.
-       * cgraphunit.c (cgraph_copy_node_for_versioning): Export;
-       copy analyzed from old version.
-       * combine.c (distribute_notes): Handle REG_TM notes.
-       * common.opt: Add -fgnu-tm.
-       * crtstuff.c (__TMC_LIST__, __TMC_END__): New.
-       (__do_global_dtors_aux): Deregister clone table.
-       (frame_dummy): Register clone table.
-       * emit-rtl.c (try_split): Handle REG_TM. Early return if no function
-       body.
-       * gimple-low.c (lower_stmt): Handle GIMPLE_EH_ELSE and
-       GIMPLE_TRANSACTION.
-       (gimple_stmt_may_fallthru): Handle GIMPLE_EH_ELSE.
-       * gimple-pretty-print.c: Include trans-mem.h.
-       (dump_gimple_fmt): Add %x.
-       (dump_gimple_call): Dump arguments for calls to _ITM_beginTransaction.
-       (dump_gimple_eh_else, dump_gimple_transaction): New.
-       (dump_gimple_stmt): Handle GIMPLE_EH_ELSE and GIMPLE_TRANSACTION.
-       * gimple.c (gimple_build_eh_else, gimple_build_transaction): New.
-       (walk_gimple_seq): Honor removed_stmt. Document usage of removed_stmt
-       field.
-       (walk_gimple_op): Handle GIMPLE_TRANSACTION.
-       (walk_gimple_stmt): Initialize and honor removed_stmt.
-       Handle GIMPLE_EH_ELSE and GIMPLE_TRANSACTION.
-       (gimple_copy): Handle GIMPLE_EH_ELSE and GIMPLE_TRANSACTION.
-       * gimple.def (GIMPLE_TRANSACTION, GIMPLE_EH_ELSE): New.
-       * gimple.h (struct gimple_statement_eh_else,
-       gimple_statement_transaction, GTMA_*): New.
-       (gimple_statement_d): Add gimple_statement_eh_else and
-       gimple_transaction.
-       (gimple_build_eh_else, gimple_build_transaction,
-       gimple_fold_call, diagnose_tm_safe_errors): Declare.
-       (get_call_expr_in): Remove prototype.
-       (gimple_has_substatements): Add GIMPLE_EH_ELSE and GIMPLE_TRANSACTION.
-       (gimple_eh_else_n_body, gimple_eh_else_e_body,
-       gimple_eh_else_set_n_body, gimple_eh_else_set_e_body,
-       gimple_transaction_body, gimple_transaction_label,
-       gimple_transaction_label_ptr, gimple_transaction_subcode,
-       gimple_transaction_set_body, gimple_transaction_set_label,
-       gimple_transaction_set_subcode): New.
-       (struct walk_stmt_info): Use BOOL_BITFIELD; add removed_stmt.
-       * gimplify.c (create_tmp_var_name): Use clean_symbol_name.
-       (voidify_wrapper_expr): Handle TRANSACTION_EXPR.
-       (gimplify_transaction): New.
-       (gimplify_expr): Handle TRANSACTION_EXPR.
-       * gsstruct.def (GSS_EH_ELSE, GSS_TRANSACTION): New.
-       * ipa-inline.c (can_inline_edge_p): Do not inline TM safe calling
-       TM pure functions.
-       * Makefile.in: Add trans-mem.o and dependencies.
-       (BUILTINS_DEF): Add gtm-builtins.def.
-       (gimple-pretty-print.o): Depend on TRANS_MEM_H.
-       (GTFILES): Add trans-mem.c.
-       * omp-low.c (WALK_SUBSTMTS): Add GIMPLE_TRANSACTION.
-       * output.h (record_tm_clone_pair, finish_tm_clone_pairs,
-       get_tm_clone_pair): Declare.
-       * params.def (PARAM_TM_MAX_AGGREGATE_SIZE): New.
-       * passes.c (init_optimization_passes): Place transactional memory
-       passes.
-       * print-tree.c (print_node): Dump tm-clone.
-       * recog.c (peep2_attempt): Handle REG_TM.
-       * reg-notes.def (TM): New.
-       * rtlanal.c (alloc_reg_note): Handle REG_TM.
-       * target.def (builtin_tm_load, builtin_tm_store): New.
-       * targhooks.c (default_builtin_tm_load_store): New.
-       * targhooks.h (default_builtin_tm_load_store): Declare.
-       * timevar.def (TV_TRANS_MEM): New.
-       * toplev.c (compile_file): Call finish_tm_clone_pairs.
-       * tree-cfg.c (make_edges): Handle GIMPLE_TRANSACTION.
-       (cleanup_dead_labels): Handle GIMPLE_TRANSACTION. Avoid unnecessary
-       writes into the statements to update labels.
-       (is_ctrl_altering_stmt): Add TM ending statements. Handle
-       GIMPLE_TRANSACTION.
-       (verify_gimple_transaction): New.
-       (verify_gimple_stmt): Handle GIMPLE_TRANSACTION.
-       (verify_gimple_in_seq_2): Handle GIMPLE_EH_ELSE and GIMPLE_TRANSACTION.
-       (gimple_redirect_edge_and_branch): Handle TM_TRANSACTION.
-       (dump_function_to_file): Display [tm-clone] if applicable.
-       * tree-eh.c (struct_ptr_eq): Make inline and move to tree.h.
-       (struct_ptr_hash): Same.
-       (collect_finally_tree): Handle GIMPLE_EH_ELSE.
-       (replace_goto_queue_1): Likewise.
-       (get_eh_else): New.
-       (honor_protect_cleanup_actions): Handle GIMPLE_EH_ELSE.
-       (lower_try_finally_nofallthru): Likewise.
-       (lower_try_finally_onedest): Likewise.
-       (lower_try_finally_copy): Likewise.
-       (lower_try_finally_switch): Likewise.
-       (lower_try_finally): Likewise.
-       (decide_copy_try_finally): Likewise.
-       (lower_eh_constructs_2): Likewise.
-       (refactor_eh_r): Likewise.
-       * tree-flow.h (struct gimple_df): Add tm_restart field.
-       Define tm_restart_node.
-       * tree-inline.c (remap_gimple_stmt): Handle GIMPLE_TRANSACTION.
-       (estimate_num_insns): Likewise.
-       (init_inline_once): Init tm_cost.
-       * tree-inline.h (struct eni_weights_d): Add tm_cost.
-       * tree-pass.h (pass_diagnose_tm_blocks, pass_lower_tm, pass_tm_init,
-       pass_tm_mark, pass_tm_memopt, pass_tm_edges, pass_ipa_tm): Declare.
-       * tree-pretty-print.c (dump_generic_node): Handle TRANSACTION_EXPR.
-       * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle
-       BUILT_IN_TM_MEMSET, BUILT_IN_TM_MEMCPY, BUILT_IN_TM_MEMMOVE.
-       Add support for TM vector loads.  Add support for TM logging builtins.
-       (call_may_clobber_ref_p_1): Add support for vector stores.
-       * tree-ssa-structalias.c (find_func_aliases): Add support for TM
-       vector stores and loads. Handle BUILT_IN_TM_MEMSET,
-       BUILT_IN_TM_MEMCPY, BUILT_IN_TM_MEMMOVE.
-       * tree.c (strip_invariant_refs): Moved from gimple.c to here.
-       (local_define_builtin): Handle ECF_TM_PURE.
-       (build_common_builtin_nodes): Set __builtin_eh_pointer to ECF_TM_PURE.
-       * tree.def (TRANSACTION_EXPR): New.
-       * tree.h (strip_invariant_refs): Moved from gimple.h to here.
-       (TRANSACTION_EXPR_BODY, TRANSACTION_EXPR_CHECK,
-       TRANSACTION_EXPR_OUTER, TRANSACTION_EXPR_RELAXED,
-       BUILTIN_TM_LOAD_STORE_P, BUILTIN_TM_LOAD_P, BUILTIN_TM_STORE_P,
-       CASE_BUILT_IN_TM_LOAD, CASE_BUILT_IN_TM_STORE): New.
-       (ECF_TM_PURE, ECF_TM_BUILTIN): New.
-       (struct tree_function_decl): Add tm_clone_flag.
-       (struct_ptr_eq, struct_ptr_hash): New.
-       (apply_tm_attr): Declare.
-       (is_tm_safe_or_pure): New.
-       (build_tm_abort_call, is_tm_safe, is_tm_pure,
-       is_tm_may_cancel_outer, is_tm_ending_fndecl, record_tm_replacement,
-       tm_malloc_replacement): Declare.
-       * varasm.c (tm_clone_hash): New.
-       (record_tm_clone_pair, finish_tm_clone_pairs, get_tm_clone_pair,
-       dump_tm_clone_to_vec, dump_tm_clone_pairs, tm_alias_pair_cmp): New.
-       (struct tm_alias_pair): New.  Declare VEC types for object.
-
-2011-11-07  Richard Henderson  <rth@redhat.com>
-
-       * optabs.h (OTI_sync_compare_and_swap, OTI_sync_lock_test_and_set,
-       OTI_sync_old_add, OTI_sync_old_sub, OTI_sync_old_ior,
-       OTI_sync_old_and, OTI_sync_old_xor, OTI_sync_old_nand,
-       OTI_sync_new_add, OTI_sync_new_sub, OTI_sync_new_ior,
-       OTI_sync_new_and, OTI_sync_new_xor, OTI_sync_new_nand): Move and
-       rename from the direct_optab_index enum.
-       (sync_compare_and_swap_optab, sync_lock_test_and_set_optab,
-       sync_old_add_optab, sync_old_sub_optab, sync_old_ior_optab,
-       sync_old_and_optab, sync_old_xor_optab, sync_old_nand_optab,
-       sync_new_add_optab, sync_new_sub_optab, sync_new_ior_optab,
-       sync_new_and_optab, sync_new_xor_optab, sync_new_nand_optab): Read
-       from the optab_table, not the direct_optab_table.
-       (init_sync_libfuncs): Declare.
-       (can_compare_and_swap_p): Update parameters.
-       * optabs.c (init_sync_libfuncs_1, init_sync_libfuncs): New.
-       (can_compare_and_swap_p): Add allow_libcall parameter; if true,
-       test for the legacy compare-and-swap libcall.
-       (expand_atomic_exchange): Use the legacy test-and-set libcall.
-       (expand_atomic_compare_and_swap): Use the legacy CAS libcall.
-       (struct atomic_op_functions): Update for optab type changes.
-       (maybe_emit_op): Likewise.
-       (expand_atomic_fetch_op): Use the legacy fetch-op libcalls.
-       * builtins.c (fold_builtin_atomic_always_lock_free): Update call
-       to can_compare_and_swap_p.
-       * omp-low.c (expand_omp_atomic_fetch_op): Likewise.
-       (expand_omp_atomic_pipeline): Likewise.
-       * genopinit.c (optabs): Make sync_old_*_optab, sync_new_*_optab,
-       sync_compare_and_swap_optab, sync_lock_test_and_set_optab regular
-       optabs.
-       * doc/md.texi (sync_compare_and_swap): Update docs for libcalls.
-
-2011-11-07  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/i386-bultin-types.def (V8SI_FTYPE_V4DF_V4DF): Add.
-       * config/i386/i386.c (enum ix86_builtins): Add
-       IX86_BUILTIN_VEC_PACK_SFIX256.
-       (bdesc_args): Add __builtin_ia32_vec_pack_sfix256.
-       (ix86_expand_args_builtin): Handle V8SI_FTYPE_V4DF_V4DF.
-       (ix86_builtin_vectorized_function): Also vectorize lrint using
-       256-bit vectors for -mavx.
-
-2011-11-07  Anatoly Sokolov  <aesok@post.ru>
-
-       * config/cris/constraints.md: New file.
-       * config/cris/cris.h (REG_CLASS_FROM_LETTER, CONSTRAINT_LEN,
-       CRIS_CONST_OK_FOR_LETTER_P, CONST_OK_FOR_CONSTRAINT_P,
-       CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_MEMORY_CONSTRAINT,
-       EXTRA_CONSTRAINT, EXTRA_CONSTRAINT_Q, EXTRA_CONSTRAINT_R,
-       EXTRA_CONSTRAINT_T, EXTRA_CONSTRAINT_S, EXTRA_CONSTRAINT_U): Remove.
-       * config/cris/cris.c: Incule "tm-constrs.h".
-       (cris_print_operand): Use satisfies_constraint_O.
-       (cris_normal_notice_update_cc, cris_rtx_costs): Use
-       satisfies_constraint_I.
-       (cris_address_cost): Use satisfies_constraint_L.
-       * config/cris/cris.md: Include "constraints.md".
-       (*mov_side<mode>, *mov_sidesisf, *mov_side<mode>_mem,
-       *mov_sidesisf_mem, *clear_side<mode>, *ext_sideqihi,
-       *ext_side<mode>si, *op_side<mode>, *op_swap_side<mode>,
-       *extopqihi_side, *extop<mode>si_side, *extopqihi_swap_side,
-       *extop<mode>si_swap_side): Use satisfies_constraint_N and
-       satisfies_constraint_J.
-       (moversideqi movemsideqi mover2side peephole2): Use
-       satisfies_constraint_N and satisfies_constraint_J.
-       (andu peephole2): Use satisfies_constraint_I and
-       satisfies_constraint_O.
-
-2011-11-07  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.c (ix86_builtin_vectorized_function): Handle
-       BUILT_IN_IRINT, BUILT_IN_IRINTF, BUILT_IN_LLRINT and BUILT_IN_LLRINTF.
-
-2011-11-07  Andrew MacLeod  <amacleod@redhat.com>
-
-       * optabs.c (get_atomic_op_for_code): Fill in optab table at runtime so
-       SWITCHABLE_TARGET can change the values during compilation.
-       (expand_atomic_fetch_op): Handle parameter change ripples for
-       get_atomic_op_for_code call.
-
-2011-11-07  Andrew MacLeod  <amacleod@redhat.com>
-
-       * doc/extend.texi: Docuemnt behaviour change for __atomic_exchange and
-       __atomic_store.
-       * optabs.c (expand_atomic_exchange): Expand to __sync_lock_test_and_set
-       only when originated from that builtin.
-       (expand_atomic_store): Expand to __sync_lock_release when originated
-       from that builtin.
-       * builtins.c (expand_builtin_sync_lock_test_and_set): Add flag that
-       expand_atomic_exchange call originated from here.
-       (expand_builtin_sync_lock_release): Add flag that expand_atomic_store
-       call originated from here.
-       (expand_builtin_atomic_exchange): Add origination flag.
-       (expand_builtin_atomic_store): Add origination flag.
-       * expr.h (expand_atomic_exchange, expand_atomic_store): Add boolean
-       parameters to indicate implementation fall back options.
-
-2011-11-07  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr.c (output_reload_in_const): Can handle CONSTANT_P
-       now, not only CONST_INT and CONST_DOUBLE.
-       (output_movqi): Use output_reload_in_const.
-       (output_reload_inhi): Ditto.
-       (output_reload_insisf): Move assertion to output_reload_in_const.
-       (avr_out_reload_inpsi): Ditto.
-
-2011-11-07  Nathan Sidwell  <nathan@acm.org>
-
-       * gcov.c (object_summary): Replace with ...
-       (object_runs): ... this.
-       (process_file): Remove functions with no data.
-       (generate_results): Ignore files with no lines.
-       (release_function): New helper, broken out of ...
-       (release_structures): ... here.  Use it.
-       (read_count_file): Adjust for new data file format.
-       (output_lines): Use object_runs.
-       * gcov-io.h (GCOV_TAG_OBJECT_SUMMARY): Obsolete.
-       (struct gcov_ctr_info): Move definition.
-       (struct gcov_fn_info): Add key field, use gcov_ctr_info for
-       trailing array.
-       (struct gcov_info): Add merge function array, remove mask and
-       counts.  Trailing array is array of pointers to function info.
-       * coverage.c (struct function_list): Replace counter numbers with
-       counter arrays.  Add fndecl field.  GTYify.
-       (counts_entry): Remove chain workspace.
-       (functions_head): GTYify.
-       (prg_n_ctrs): Remove.
-       (fn_v_ctrs): New.
-       (tree_ctr_tables): Remove.
-       (read_counts_file): Cope with blank entries and expect program
-       summaries before functions.  Don't warn on missing entries.
-       (coverage_counter_alloc): Allocate individual function arrays.
-       (tree_coverage_counter_ref, tree_coverage_counter_addr): Adjust
-       for individual function arrays.
-       (coverage_end_function): GTYify function list object. Finalize
-       function's counter arrays.
-       (build_var): New.  Create a counter-related variable with
-       appropriate linkage.
-       (build_fn_info_type): Adjust for new runtime structure.
-       (build_fn_info_value): Rename to ...
-       (build_fn_info): ... here.  Build new format data.
-       (build_ctr_info_type, build_ctr_info_value): Remove.
-       (build_info_type): New. Build new format data structure.
-       (build_info): Adjust for new format data.
-       (create_coverage): Likewise.
-       * gcov-dump.c (tag_function): Recognize placeholders.
-
-2011-11-07  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/constraints.md (Cm2): New constraint for int -2.
-       * config/avr/avr.md (addqi3): Use it. New alternatives for +/-2.
-       (*negqihi2): New insn.
-
-2011-11-07  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * dwarf2cfi.c (dwarf2out_frame_debug_expr): Check
-       HARD_FRAME_POINTER_REGNUM instead of hard_frame_pointer_rtx in Rule 18.
-
-2011-11-07  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/i386.c (ix86_expand_builtin): If gather mask
-       argument is known to have all high bits set, pass pc_rtx as
-       second argument to the expander instead of op0.
-       * config/i386/sse.md (*avx2_gathersi<mode>_2,
-       *avx2_gatherdi<mode>_2): New patterns.
-       * config/i386/avx2intrin.h (_mm256_i32gather_pd,
-       _mm256_i64gather_pd, _mm256_i32gather_ps): Set mask using
-       _mm256_cmp_pd with zero vector arguments and _CMP_EQ_OQ instead of
-       _mm256_set1_pd.
-
-       PR tree-optimization/50789
-       * tree-vect-stmts.c (process_use): Add force argument, avoid
-       exist_non_indexing_operands_for_use_p check if true.
-       (vect_mark_stmts_to_be_vectorized): Adjust callers.  Handle
-       STMT_VINFO_GATHER_P.
-       (gen_perm_mask): New function.
-       (perm_mask_for_reverse): Use it.
-       (reverse_vec_element): Rename to...
-       (permute_vec_elements): ... this.  Add Y and MASK_VEC arguments,
-       generalize for any permutations.
-       (vectorizable_load): Adjust caller.  Handle STMT_VINFO_GATHER_P.
-       * target.def (TARGET_VECTORIZE_BUILTIN_GATHER): New hook.
-       * doc/tm.texi.in (TARGET_VECTORIZE_BUILTIN_GATHER): Document it.
-       * doc/tm.texi: Regenerate.
-       * tree-data-ref.c (initialize_data_dependence_relation,
-       compute_self_dependence): No longer static.
-       * tree-data-ref.h (initialize_data_dependence_relation,
-       compute_self_dependence): New prototypes.
-       * tree-vect-data-refs.c (vect_check_gather): New function.
-       (vect_analyze_data_refs): Detect possible gather load data refs.
-       * tree-vectorizer.h (struct _stmt_vec_info): Add gather_p field.
-       (STMT_VINFO_GATHER_P): Define.
-       (vect_check_gather): New prototype.
-       * config/i386/i386-builtin-types.def: Add types for alternate
-       gather builtins.
-       * config/i386/sse.md (AVXMODE48P_DI): Remove.
-       (VEC_GATHER_MODE): Rename mode_attr to...
-       (VEC_GATHER_IDXSI): ... this.
-       (VEC_GATHER_IDXDI, VEC_GATHER_SRCDI): New mode_attrs.
-       (avx2_gathersi<mode>, *avx2_gathersi<mode>): Use <VEC_GATHER_IDXSI>
-       instead of <VEC_GATHER_MODE>.
-       (avx2_gatherdi<mode>): Use <VEC_GATHER_IDXDI> instead of
-       <AVXMODE48P_DI> and <VEC_GATHER_SRCDI> instead of VEC_GATHER_MODE
-       on src and mask operands.
-       (*avx2_gatherdi<mode>): Likewise.  Use VEC_GATHER_MODE iterator
-       instead of AVXMODE48P_DI.
-       (avx2_gatherdi<mode>256, *avx2_gatherdi<mode>256): Removed.
-       * config/i386/i386.c (enum ix86_builtins): Add
-       IX86_BUILTIN_GATHERALTSIV4DF, IX86_BUILTIN_GATHERALTDIV8SF,
-       IX86_BUILTIN_GATHERALTSIV4DI and IX86_BUILTIN_GATHERALTDIV8SI.
-       (ix86_init_mmx_sse_builtins): Create those builtins.
-       (ix86_expand_builtin): Handle those builtins and adjust expansions
-       of other gather builtins.
-       (ix86_vectorize_builtin_gather): New function.
-       (TARGET_VECTORIZE_BUILTIN_GATHER): Define.
-
-2011-11-07  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/f16cintrin.h: Remove extra _X86INTRIN_H_INCLUDED check.
-
-2011-11-07  Tristan Gingold  <gingold@adacore.com>
-
-       * config.gcc (*-*-*vms*): Set c_target_objs, cxx_target_objs.
-       * config/vms/t-vms: Add vms-c.o rule.
-       * config/vms/vms-c.c: New file.
-       * config/vms/vms-protos.h (vms_c_register_pragma): New prototype.
-       * config/vms/vms.h (REGISTER_TARGET_PRAGMAS): Define.
-
-2011-11-07  Tristan Gingold  <gingold@adacore.com>
-
-       * config/alpha/vms.h (TARGET_OBJECT_SUFFIX,
-       TARGET_EXECUTABLE_SUFFIX, TARGET_OS_CPP_BUILTINS,
-       TARGET_ABI_OPEN_VMS, LONG_TYPE_SIZE, ADA_LONG_TYPE_SIZE,
-       POINTER_SIZE, POINTERS_EXTEND_UNSIGNED): Move to config/vms/vms.h
-       (SUBTARGET_OS_CPP_BUILTINS): Define.
-       (TARGET_DEFAULT): Tune according to POINTER_SIZE.
-       (MASK_RETURN_ADDR): Define in 64 bit mode.
-       * config/ia64/vms.h: Likewise.
-       * config/vms/vms.h: New file.
-       * config/vms/vms64.h: New file.
-       * config/alpha/vms64.h: Removed.
-       * config/ia64/vms64.h: Removed.
-       * config.gcc (alpha64-dec-*vms*, alpha*-dec-*vms*, ia64-hp-*vms*):
-       Adjust for above change.
-
-2011-11-07  Enkovich Ilya  <ilya.enkovich@intel.com>
-
-       PR target/50962
-       * config/i386/i386-protos.h (ix86_use_lea_for_mov): New.
-       * config/i386/i386.c (ix86_use_lea_for_mov): Likewise.
-       * config/i386/i386.md (movsi_internal): Emit lea if profitable.
-       (movdi_internal_rex64): Likewise.
-
-2011-11-07  Sergey Ostanevich  <sergos.gnu@gmail.com>
-
-       PR rtl-optimization/47698
-       * ifcvt.c (noce_operand_ok): Return false for mems with side effects.
-
-2011-11-07  Tristan Gingold  <gingold@adacore.com>
-
-       * common/config/alpha/alpha-common.c (alpha_option_init_struct):
-       New function.
-       (TARGET_OPTION_INIT_STRUCT): Define.
-       * config/alpha/alpha.c (TARGET_MIN_ANCHOR_OFFSET)
-       (TARGET_MAX_ANCHOR_OFFSET)
-       (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Redefine.
-
-2011-11-06  Quentin Neill  <quentin.neill@amd.com>
-
-       Fix r180999, update ChangeLog
-       * config.gcc: Add f16cintrin.h.
-       * config/i386/f16cintrin.h: Add missing endif.
-
-2011-11-06  Sebastian Huber  <sebastian.huber@embedded-brains.de>
-
-       * config.gcc (arm*-*-rtemseabi*): New target.
-       * config/arm/rtems-eabi.h: New.
-       * config/arm/t-rtems-eabi: New.
-
-2011-11-06  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.md (UNSPEC_SHORT_LOAD): Delete.
-       (zero_extend_v8qi_vis, zero_extend_v4hi_vis,
-       *zero_extend_v8qi_<P:mode>_insn,
-       *zero_extend_v4hi_<P:mode>_insn): Express using vec_merge
-       and vec_duplicate instead of using an UNSPEC.
-
-2011-11-07  Alan Modra  <amodra@gmail.com>
-
-       PR target/30282
-       * config/rs6000/rs6000.c (rs6000_emit_stack_reset): Always emit
-       blockage for ABI_V4.
-
-2011-11-06  Dave Korn  <dave.korn.cygwin@gmail.com>
-
-       * config/i386/cygwin.h (LIBGCJ_SONAME): Updated to match recent
-       libgcj version bump.
-       * config/i386/mingw32.h (LIBGCJ_SONAME): Likewise.
-
-2011-11-06  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * gcse.c: Adjust outdated comments throughout.
-       (struct mem_conflict_info): New structure.
-       (mems_conflict_for_gcse_p): Use it to communicate with caller.
-       (load_killed_in_block_p): Pass it to note_stores.
-       (hash_expr): Remove superfluous line break.
-       (hash_scan_set): Rename PAT parameter into SET.
-       (hash_scan_insn): Reorder cases.
-       (canon_list_insert): Fix long line.
-       (edge_list): Delete.
-       (prune_expressions): Rename E local variable into EXPR.
-       (compute_pre_data): Return struct edge_list * object.
-       (pre_expr_reaches_here_p_work): Fix formatting.
-       (process_insert_insn): Move around comment.
-       (pre_edge_insert): Fix long line.
-       (pre_insert_copies): Likewise.
-       (gcse_emit_move_after): Swap SRC and DEST parameters.
-       (pre_delete): Adjust call to gcse_emit_move_after.
-       (pre_gcse): Take struct edge_list * parameter.  Fix long line.
-       (one_pre_gcse_pass): Use flag_gcse_lm condition for all routines.
-       Use a local list of edges.
-       (hoist_code): Fix long line.  Adjust call to gcse_emit_move_after.
-       (pre_ldst_expr_hash): Fix long line.
-       (free_ldst_mems): Rename into...
-       (free_ld_motion_mems): ...this.
-       (first_ls_expr): Delete.
-       (next_ls_expr): Likewise.
-       (print_ldst_list): Do not use above two functions.
-       (simple_mem): Adjust interface.
-       (compute_ld_motion_mems): Fix formatting.
-       (update_ld_motion_stores): Reuse local variable.
-
-2011-11-06  Joseph Myers  <joseph@codesourcery.com>
-
-       * c-decl.c (shadow_tag_warned, grokdeclarator): Handle _Alignas
-       specifiers.
-       (build_null_declspecs): Initialize align_log and alignas_p fields.
-       (declspecs_add_alignas): New.
-       * c-parser.c (c_token_starts_declspecs): Handle RID_ALIGNAS.
-       (c_parser_declspecs): Handle _Alignas specifiers.
-       (c_parser_alignas_specifier): New.
-       (c_parser_alignof_expression): Diagnose alignof use for non-C1X.
-       Diagnose _Alignof (expression).
-       * c-tree.h (struct c_declspecs): Add align_log and alignas_p fields.
-       (declspecs_add_alignas): Declare.
-       * ginclude/stddef.h (max_align_t): Define for C1X and C++11.
-       * ginclude/stdalign.h: New.
-       * Makefile.in (USER_H): Add stdalign.h.
-
-2011-11-06  Joern Rennecke  <joern.rennecke@embecosm.com>
-
-       * regset.h (fixed_reg_set_regset): Declare.
-       * dse.c: Include regset.h .
-       (struct insn_info): Add member fixed_regs_live.
-       (note_add_store_info): New typedef.
-       (note_add_store): New function.
-       (emit_inc_dec_insn_before): Expect arg to be of type insn_info_t.
-       Use gen_add3_insn / gen_move_insn.
-       Check new insn for unwanted clobbers before emitting it.
-       (check_for_inc_dec): Rename to...
-       (check_for_inc_dec_1:) ... this.  Return bool.  Take insn_info
-       parameter.  Changed all callers in file.
-       (check_for_inc_dec, copy_fixed_regs): New functions.
-       (scan_insn): Set fixed_regs_live field of insn_info.
-       * rtl.h (check_for_inc_dec): Update prototype.
-       * postreload.c (reload_cse_simplify): Take new signature of
-       check_ind_dec into account.
-       * reginfo.c (fixed_reg_set_regset): New variable.
-       (init_reg_sets_1): Initialize it.
-
-2011-11-06  Jakub Jelinek  <jakub@redhat.com>
-
-       * tree-cfg.c (gimple_can_merge_blocks_p): For -O0 don't remove
-       any user labels.
-
-2011-11-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
-
-       * config/pa/pa.c (pa_hpux_init_libfuncs): Rename to pa_init_libfuncs.
-       Remove dependence of declaration and target define on definition of
-       HPUX_LONG_DOUBLE_LIBRARY.  Update implementation.
-
-2011-11-06  Andrew Macleod  <amacleod@redhat.com>
-           Richard Henderson  <rth@redhat.com>
-           Aldy Hernandez  <aldyh@redhat.com>
-
-       Merged from cxx-mem-model.
-
-       * cppbuiltin.c (define__GNUC__): Define __ATOMIC memory models
-       * coretypes.h (enum memmodel): New.  enumerated memory model type.
-       * Makefile.in (cppbuiltin.o) Add missing dependency on $(TREE_H)
-       * genopinit,c (optabs): Add atomic direct optab handlers.
-       * sync-builtins.def (BUILT_IN_ATOMIC_*): New builtins.
-       * builtin-types.def (BT_CONST_VOLATILE_PTR,
-       BT_FN_I{1,2,4,8,16}_CONST_VPTR_INT, BT_FN_VOID_VPTR_INT,
-       BT_FN_BOOL_VPTR_INT, BT_FN_BOOL_SIZE_CONST_VPTR,
-       BT_FN_I{1,2,4,8,16}_VPTR_I{1,2,4,8,16}_INT,
-       BT_FN_VOID_VPTR_I{1,2,4,8,16}_INT, BT_FN_VOID_SIZE_VPTR_PTR_INT,
-       BT_FN_VOID_SIZE_CONST_VPTR_PTR_INT, BT_FN_VOID_SIZE_VPTR_PTR_PTR_INT,
-       BT_FN_BOOL_VPTR_PTR_I{1,2,4,8,16}_BOOL_INT_INT): New builtin types.
-       * expr.h (expand_atomic_*): Add prototypes.
-       (expand_{bool,val}_compare_and_swap): Remove prototypes.
-       * c-typeck.c (build_function_call_vec): Don't reprocess __atomic
-       parameters.
-       * common.opt (Winvalid-memory-model): New warning flag.
-       (finline-atomics): New. Flag to disable atomic inlining.
-       * params.h (ALLOW_LOAD_DATA_RACES): New.
-       (ALLOW_PACKED_LOAD_DATA_RACES): New.
-       (ALLOW_PACKED_STORE_DATA_RACES): New.
-       * params.def (PARAM_ALLOW_LOAD_DATA_RACES): New.
-       (PARAM_ALLOW_PACKED_LOAD_DATA_RACES): New.
-       (PARAM_ALLOW_PACKED_STORE_DATA_RACES): New.
-       * builtins.c (is_builtin_name): Handle __atomic.
-       (get_memmodel): New.  Extract memory model.
-       (expand_expr_force_mode): New. Factor out common code for ensuring an
-       integer argument is in the proper mode.
-       (expand_builtin_sync_operation): Remove ignore param.  Always call
-       expand_atomic_fetch_op instead of the old expanders.
-       (expand_builtin_compare_and_swap,
-       expand_builtin_sync_lock_test_and_set): Use expand_expr_force_mode,
-       call atomic expanders instead of sync expanders.
-       (expand_builtin_sync_lock_release): Call atomic_store expander.
-       (expand_builtin_atomic_compare_exchange, expand_builtin_atomic_load,
-       expand_builtin_atomic_store, expand_builtin_atomic_fetch_op): New.
-       (expand_builtin_atomic_exchange): New.
-       (fold_builtin_atomic_always_lock_free,
-       expand_builtin_atomic_always_lock_free,
-       fold_builtin_atomic_is_lock_free, expand_builtin_atomic_is_lock_free):
-       New.
-       (expand_builtin_mem_thread_fence, expand_builtin_atomic_thread_fence,
-       expand_builtin_atomic_signal_fence): New.
-       (expand_builtin_mem_signal_fence): New.
-       (expand_builtin): Add cases for BUILT_IN_ATOMIC_*.
-       (fold_builtin_2): Add cases for BUILT_IN_ATOMIC_{IS,ALWAYS}_LOCK_FREE.
-       * optabs.h (DOI_atomic_*): Define new atomics.
-       (atomic_*_optab): Define.
-       (can_compare_and_swap_p, expand_atomic_compare_and_swap): New
-       prototypes.
-       * optabs.c (expand_sync_operation, expand_sync_fetch_operation): Remove.
-       (expand_sync_lock_test_and_set): Remove.
-       (expand_atomic_load, expand_atomic_store): New.
-       (expand_atomic_exchange): New.
-       (expand_atomic_compare_and_swap): New.  Implements
-       atomic_compare_exchange via compare and swap.
-       (struct atomic_op_functions): Opcode table struct for fetch ops.
-       (get_atomic_op_for_code): New.  Return an opcode table entry.
-       (maybe_emit_op): New.  Try to emit a fetch op.
-       (expand_atomic_fetch_op): New.
-       (expand_val_compare_and_swap_1): Remove.
-       (expand_val_compare_and_swap, expand_bool_compare_and_swap): Remove.
-       (expand_atomic_compare_and_swap): Rename from
-       expand_atomic_compare_exchange.  Rewrite to return both success and
-       oldval return values; expand via both atomic and sync optabs.
-       (can_compare_and_swap_p): New.
-       (expand_compare_and_swap_loop): Use expand_atomic_compare_and_swap.
-       (maybe_gen_insn): Handle 7 and 8 operands.
-       * omp-low.c (expand_omp_atomic_fetch_op): Don't test individual
-       fetch_op optabs, only test can_compare_and_swap_p.  Use __atomic
-       builtins instead of __sync builtins.
-       (expand_omp_atomic_pipeline): Use can_compare_and_swap_p.
-       * doc/extend.texi: Document __atomic built-in functions.
-       * doc/invoke.texi: Document data race parameters.
-       * doc/md.texi: Document atomic patterns.
-       * config/i386/i386.md (UNSPEC_MOVA): New.
-       (UNSPECV_CMPXCHG): Split into ...
-       (UNSPECV_CMPXCHG_1, UNSPECV_CMPXCHG_2,
-       UNSPECV_CMPXCHG_3, UNSPECV_CMPXCHG_4): New.
-       * config/i386/sync.md (ATOMIC): New mode iterator.
-       (atomic_load<ATOMIC>, atomic_store<ATOMIC>): New.
-       (atomic_loaddi_fpu, atomic_storedi_fpu, movdi_via_fpu): New.
-       (mem_thread_fence): Rename from memory_barrier.
-       Handle the added memory model parameter.
-       (mfence_nosse): Rename from memory_barrier_nosse.
-       (sync_compare_and_swap<CASMODE>): Split into ...
-       (atomic_compare_and_swap<SWI124>): this and ...
-       (atomic_compare_and_swap<CASMODE>): this.  Handle the new parameters.
-       (atomic_compare_and_swap_single<SWI>): Rename from
-       sync_compare_and_swap<SWI>; rewrite to use split unspecs.
-       (atomic_compare_and_swap_double<DCASMODE>): Rename from
-       sync_double_compare_and_swap<DCASMODE>; rewrite to use split unspecs.
-       (*atomic_compare_and_swap_doubledi_pic): Rename from
-       sync_double_compare_and_swapdi_pic; rewrite to use split unspecs.
-       (atomic_fetch_add<SWI>): Rename from sync_old_add<SWI>; add memory
-       model parameter.
-       (*atomic_fetch_add_cmp<SWI>): Similarly.
-       (atomic_add<SWI>, atomic<any_logic><SWI>): Similarly.
-       (atomic_sub<SWI>): Similarly.  Use x86_maybe_negate_const_int.
-       (sync_lock_test_and_set<SWI>): Merge with ...
-       (atomic_exchange<SWI>): ... this.
-
-2011-11-6  Richard Guenther  <rguenther@suse.de>
-
-       * ipa-prop.c (ipa_modify_call_arguments): Re-compute inlinable flag.
-
-2011-11-06  Ira Rosen  <ira.rosen@linaro.org>
-
-       * tree-vectorizer.h (vectorizable_condition): Add argument.
-       * tree-vect-loop.c (vectorizable_reduction): Fail for condition
-       in SLP.  Update calls to vectorizable_condition.
-       * tree-vect-stmts.c (vect_is_simple_cond): Add basic block info to
-       the arguments.  Pass it to vect_is_simple_use_1.
-       (vectorizable_condition): Add slp_node to the arguments.  Support
-       vectorization of basic blocks.  Fail for reduction in SLP.  Update
-       calls to vect_is_simple_cond and vect_is_simple_use.  Support SLP:
-       call vect_get_slp_defs to get vector operands.
-       (vect_analyze_stmt): Update calls to vectorizable_condition.
-       (vect_transform_stmt): Likewise.
-       * tree-vect-slp.c (vect_create_new_slp_node): Handle COND_EXPR.
-       (vect_get_and_check_slp_defs): Handle COND_EXPR.  Allow pattern
-       def stmts.
-       (vect_build_slp_tree): Handle COND_EXPR.
-       (vect_analyze_slp_instance): Push pattern statements to root node.
-       (vect_get_constant_vectors): Fix comments.  Handle COND_EXPR.
-
-2011-11-05  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.md (UNSPEC_SHORT_LOAD): New unspec.
-       (zero-extend_v8qi_vis, zero_extend_v4hi_vis): New expanders.
-       (*zero_extend_v8qi_<P:mode>_insn,
-       *zero_extend_v4hi_<P:mode>_insn): New insns.
-       * config/sparc/sparc.c (vector_init_move_words,
-       vector_init_prepare_elts, sparc_expand_vector_init_vis2,
-       sparc_expand_vector_init_vis1): New functions.
-       (vector_init_bshuffle): Rewrite to handle more cases and make use
-       of locs[] array prepared by vector_init_prepare_elts.
-       (vector_init_fpmerge, vector_init_faligndata): Delete.
-       (sparc_expand_vector_init): Rewrite using new infrastructure.
-
-2011-11-05  Joern Rennecke  <joern.rennecke@embecosm.com>
-
-       * config.gcc (epiphany-*-*): New architecture.
-       (epiphany-*-elf): New configuration.
-       * config/epiphany, common/config/epiphany : New directories.
-       * doc/extend.texi (disinterrupt attribute): Add Epiphany.
-       (interrupt attribute): Add Epiphany.
-       (long_call, short_call attribute): Add Epiphany.
-       * doc/invoke.texi (Options): Add Epiphany options.
-       * doc/md.texi (Machine Constraints): Add Epiphany constraints.
-       * doc/install.texi (Options specification):
-       Add --with-stack-offset=@var{num} description.
-       (host/target specific issues): Add epiphany-*-elf.
-       * doc/contrib.texi (Contributors): Mention Epiphany port.
-
-2011-11-05  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/50693
-       * tree-cfg.c (gimple_can_merge_blocks_p): Allow merging with
-       non-forced user labels.
-       (gimple_merge_blocks): Turn non-forced user labels into
-       debug bind stmt with the label as first operand and reset value.
-       (gimple_duplicate_bb): Don't duplicate label debug stmts.
-       * dwarf2out.c (gen_label_die): Handle NOTE_INSN_DELETED_DEBUG_LABEL.
-       * final.c (final_scan_insn): Likewise.
-       (rest_of_clean_state): Don't dump NOTE_INSN_DELETED_DEBUG_LABEL.
-       * var-tracking.c (debug_label_num): New variable.
-       (delete_debug_insns): Don't delete DEBUG_INSNs for LABEL_DECLs,
-       instead turn them into NOTE_INSN_DELETED_DEBUG_LABEL notes.
-       * cfglayout.c (skip_insns_after_block, duplicate_insn_chain): Handle
-       NOTE_INSN_DELETED_DEBUG_LABEL.
-       (duplicate_insn_chain): Don't duplicate LABEL_DECL DEBUG_INSNs.
-       * insn-notes.def (DELETED_DEBUG_LABEL): New note kind.
-       * print-rtl.c (print_rtx): Handle NOTE_INSN_DELETED_DEBUG_LABEL.
-       * gengtype.c (adjust_field_rtx_def): Likewise.
-       * config/i386/i386.c (ix86_output_function_epilogue): For MachO
-       clear CODE_LABEL_NUMBER of NOTE_INSN_DELETED_DEBUG_LABEL
-       if their are at the end of function and nop hasn't been emitted.
-       * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Likewise.
-
-2011-11-05  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR rtl-optimization/50448
-       * cprop.c (try_replace_reg): Also try to replace uses of FROM that
-       appear in SET_DEST.
-
-2011-11-05  Peter Dufault  <dufault@hda.com>,
-           Sebastian Huber  <sebastian.huber@embedded-brains.de>
-
-       * config/rs6000/rtems.h (SUBSUBTARGET_OVERRIDE_OPTIONS):
-       Extend rs6000_spe handling.
-
-2011-11-05  Ralf Corsépius  <ralf.corsepius@rtems.org>
-
-       * config/rs6000/t-rtems: Add -mcpu=8540/-mfloat-gprs=double multilib.
-       Remove -mcpu=601 multilib.
-       Remove -Dmpc8260 multilib.
-       * config/rs6000/rtems.h: Allow --float-gprs=... to override grps
-       on E500 targets.
-
-2011-11-05  Quentin Neill  <quentin.neill@amd.com>
-
-       Piledriver f16cintrin.h fix.
-       * config/i386/f16cintrin.h: Contents moved from immintrin.h.
-       * config/i386/immintrin.h: Include f16cintrin.h.
-       * config.gcc (i[34567]86-*-*, x86_64-*-*): Add f16cintrin.h.
-
-
-2011-11-04  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR c++/50608
-       * c-parser.c (c_parser_postfix_expression) <RID_OFFSETOF>: Adjust call
-       to fold_offsetof.
-       * c-typeck.c (build_unary_op) <ADDR_EXPR>: Call fold_offsetof_1.
-
-2011-11-04  Alan Modra  <amodra@gmail.com>
-
-       * reload1.c (gen_reload): Don't use REGNO on SUBREGs.
-       * print-rtl.c (print_rtx): Don't segfault on negative regno.
-
-2011-11-04  David S. Miller  <davem@davemloft.net>
-
-       PR target/49965
-       * config/sparc/sparc.c (sparc_expand_conditional_move): Handle the
-       fact that sparc_emit_float_lib_cmp modifies the comparison in
-       operands[1].
-
-2011-11-04  Ralf Corsépius  <ralf.corsepius@rtems.org>
-
-       * config/lm32/t-rtems: New.
-       * config.gcc (lm32-*-rtems*): Add t-rtems.
-
-2011-11-04  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR target/50979
-       * config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=v8.
-
-2011-11-04  Jiangning Liu  <jiangning.liu@arm.com>
-
-       PR rtl-optimization/38644
-       * config/arm/arm.c (thumb1_expand_epilogue): Add memory barrier
-       for epilogue having stack adjustment.
-
-2011-11-04  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/50931
-       * config/avr/avr-modes.def: New file defining PSImode.
-       * config/avr/avr-c.c (__INT24_MAX__, __INT24_MIN__,
-       __UINT24_MAX__): New built-in defines.
-       * config/avr/avr.md (adjust_len): Add tstpsi, mov24,  reload_in24,
-       ashlpsi, ashrpsi, lshrpsi.
-       (QISI, QIDI, HISI, HIDI, MPUSH, rotx, rotsmode): Add PSI.
-       (MOVMODE): New mode iterator.
-       (movpsi): New expander.
-       (movqi, movhi, movsi, movsf, movpsi): Write as one using MOVMODE.
-       (*reload_inpsi, *movpsi): New insns.
-       (*reload_inpsi): New RTL peephole.
-       (addpsi3, *addpsi3_zero_extend.qi, *addpsi3_zero_extend.hi,
-       *addpsi3_sign_extend.hi): New insns.
-       (subpsi3, *subpsi3_zero_extend.qi, *subpsi3_zero_extend.hi,
-       *subpsi3_sign_extend.hi): New insns.
-       (divmodpsi4, udivmodpsi4): New define insn-and-split.
-       (*divmodpsi4_call, *udivmodpsi4_call): New insns.
-       (andpsi3, iorpsi3, xorpsi3): New insns.
-       (*rotlpsi2.1, *rotlpsi2.23): New insns.
-       (*rotw<mode>): Insn condition only allow even-sized modes.
-       (*rotb<mode>): Insn condition allows odd-sized modes.
-       (ashlpsi3, ashrpsi3, lshrpsi3, *addpsi3.lt0): New insns.
-       (negpsi2, one_cmplpsi2): New insns.
-       (extendqipsi2, extendhipsi2, extendpsisi2): New insns.
-       (zero_extendqipsi2, zero_extendhipsi2, zero_extendpsisi2): New
-       insn-and-splits.
-       (*cmppsi, *negated_tstpsi, *reversed_tstpsi): New insns.
-       (cbranchpsi4): New expander.
-       * config/avr/constraints.md (Ca3, Co3, Cx3): New constraints.
-       * config/avr/avr-protos.h (avr_out_tstpsi, avr_out_movpsi,
-       avr_out_ashlpsi3, avr_out_ashrpsi3, avr_out_lshrpsi3,
-       avr_out_reload_inpsi): New prototypes.
-
-       * config/avr/avr.c (TARGET_SCALAR_MODE_SUPPORTED_P): Define to...
-       (avr_scalar_mode_supported_p): ...this new static function.
-       (avr_asm_len): Always return "".
-       (avr_out_load_psi, avr_out_store_psi): New static functions.
-       (avr_out_movpsi, avr_out_reload_inpsi): New functions.
-       (avr_out_tstpsi): New function.
-       (avr_out_ashlpsi3, avr_out_ashrpsi3, avr_out_lshrpsi3): New functions.
-       (avr_out_plus_1, output_reload_in_const): Handle 3-byte types.
-       (avr_simplify_comparison_p): Ditto.
-       (adjust_insn_length): Handle ADJUST_LEN_RELOAD_IN24,
-       ADJUST_LEN_MOV24, ADJUST_LEN_TSTPSI, ADJUST_LEN_ASHLPSI,
-       ADJUST_LEN_ASHRPSI, ADJUST_LEN_LSHRPSI.
-       (avr_rtx_costs_1): Report PSI costs.
-       (avr_libcall_value): Handle odd-sized parameters.
-       (avr_init_builtin_int24): New static function to define built-in
-       24-bit types __int24 and __uint24.
-       (avr_init_builtins): Use it.
-
-2011-11-04  Thomas Doerfler <thomas.doerfler@embedded-brains.de>
-
-       PR target/50989
-       * config/arm/rtems-elf.h, config/arm/t-rtems: Add optional
-       support for VFP floating point model.
-
-2011-11-04  Tristan Gingold  <gingold@adacore.com>
-
-       * config/alpha/vms.h (ASM_OUTPUT_DEF): Do not switch section.
-
-2011-11-04  Ira Rosen  <ira.rosen@linaro.org>
-
-       Unrevert:
-       2011-10-24  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR tree-optimization/50730
-       * tree-vect-data-refs.c (vect_analyze_data_refs): Stop basic block
-       analysis if encountered unsupported data-ref.
-
-2011-11-04  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/i386.c (ix86_expand_vector_convert_uns_vsivsf): New
-       function.
-       * config/i386/i386-protos.h (ix86_expand_vector_convert_uns_vsivsf):
-       New prototype.
-       * config/i386/sse.md (floatuns<sseintvecmodelower><mode>2): Use it.
-       For floatunsv8siv8sf2 require TARGET_AVX2.
-
-       * config/i386/i386.c (ix86_expand_adjust_ufix_to_sfix_si): Add
-       XORP argument.  Subtract 0x1p31 instead of 0x1p32.  Use normal
-       signalling comparison instead of non-signalling.  Store into
-       *XORP pseudo holding 0x80000000 integers if 0x1p31 has been
-       subtracted and 0 otherwise.
-       * config/i386/i386-protos.h (ix86_expand_adjust_ufix_to_sfix_si):
-       Adjust prototype.
-       * config/i386/sse.md (fixuns_trunc<mode><sseintvecmodelower>2): Enable
-       already for TARGET_SSE2.  Xor in vector initialized by
-       ix86_expand_adjust_ufix_to_sfix_si at the end.
-       (vec_pack_ufix_trunc_<mode>): Likewise.
-
-       * tree-vect-stmts.c (vectorizable_conversion): Rewritten to handle
-       not just FLOAT_EXPR and FIX_TRUNC_EXPR, but also CONVERT_EXPR_CODE_P,
-       WIDEN_MULT_EXPR and WIDEN_LSHIFT_EXPR to handle what
-       vectorizable_type_demotion and vectorizable_type_promotion did.
-       Additionally handle FLOAT_EXPR and FIX_TRUNC_EXPR where the integer
-       is {,un}signed {char,short}.
-       (vect_create_vectorized_demotion_stmts): Fix comment typo.  For
-       recursive calls unconditionally use VEC_PACK_TRUNC_EXPR.
-       Push vec_dest back to the vec_dsts vector at the end.
-       (vect_create_vectorized_promotion_stmts): Don't recurse, do just
-       one step.  Removed multi_step_cvt, vec_dsts, slp_node and
-       prev_stmt_info arguments, add vec_dest argument.  Push always
-       into vec_tmp, not just when multi_step_cvt != 0, replace *vec_oprdn0
-       with vec_tmp at the end after freeing old *vec_oprnd0 vector.
-       (vectorizable_type_demotion, vectorizable_type_promotion): Removed.
-       (vect_analyze_stmt): Don't call vectorizable_type_demotion and
-       vectorizable_type_promotion.  Call vectorizable_conversion even
-       for SLP bb vectorization.
-       (vect_transform_stmt): Call vectorizable_conversion instead of
-       vectorizable_type_demotion and vectorizable_type_promotion.
-       (supportable_widening_operation): Clear *multi_step_cvt first,
-       simplify c1/c2 computation, free *interm_types vector on failure.
-       (supportable_narrowing_operation): Clear *multi_step_cvt first,
-       free *interm_types vector on failure, handle multi-step
-       FIX_TRUNC_EXPR.
-
-2011-11-04  Tristan Gingold  <gingold@adacore.com>
-
-       * config/alpha/alpha.c (alpha_write_linkage): Remove fundecl
-       argument.  Conditionally generate crash debug info.  Adjust
-       for alpha_funcs_tree removal.
-       (machine_function): Add links field.
-       (alpha_start_function): Conditionally generate crash debug info.
-       (alpha_end_function): Adjust call to alpha_write_linkage.
-       (alpha_funcs): Remove.
-       (links_kind): Remove.
-       (alpha_links): Remove num, target and lkind field.  Add func field.
-       (alpha_links_tree): Remove.
-       (alpha_funcs_tree): Remove.
-       (alpha_need_linkage): Remove.
-       (alpha_use_linkage): Change prototype.  Adjust.
-       (alpha_write_one_linkage): Use ASM_OUTPUT_INTERNAL_LABEL.
-       Use SYMBOL_REF_EXTERNAL_P and SYMBOL_REF_LOCAL_P macro.
-       * config/alpha/alpha-protos.h (alpha_use_linkage): Update.
-       (alpha_need_linkage): Remove.
-       * config/alpha/alpha.md: Update calls to alpha_use_linkage.
-       Adjust calls to alpha_need_linkage.
-
-2011-11-03  Uros Bizjak  <ubizjak@gmail.com>
-
-       * sched-vis.c (print_value): Handle STRICT_LOW_PART.
-
-2011-11-03  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.md (lround<X87MODEF:mode><SWI248x:mode>2,
-       rint<mode>2, floor<mode>2, lfloor<MODEF:mode><SWI48:mode>2,
-       btrunc<mode>2, lwp_lwpval<mode>3): Use operands[N] instead of operandN.
-
-2011-11-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       PR target/50978
-       * config/arm/t-bpabi: New file.
-       * config.gcc (arm*-*-linux*): Add arm/t-bpabi to tmake_file for
-       arm*-*-linux-*eabi.
-       (arm*-*-uclinux*): Add arm/t-bpabi to tmake_file for
-       arm*-*-uclinux*eabi.
-       (arm*-*-eabi*, arm*-*-symbianelf*): Add arm/t-bpabi to tmake_file
-       for arm*-*-eabi*.
-
-2011-11-03  Michael Matz  <matz@suse.de>
-
-       PR bootstrap/50857
-       * configure.ac: Check for -fno-exceptions -fno-rtti.
-       * configure: Regenerate.
-       * Makefile.in (NOEXCEPTION_FLAGS): New flag.
-       (ALL_CXXFLAGS): Use it.
-
-2011-11-03  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.md: Use {} for multi-line preparation statements.
-
-2011-11-03  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * config/sparc/sparc.md (movtf_insn_sp32_no_fpu): Consolidate into...
-       (movtf_insn_sp32): ...this.
-       (movtf_insn_sp64_no_fpu): Consolidate into...
-       (movtf_insn_sp64): ...this.
-       (movtf_insn_sp64_hq): Do not test TARGET_FPU.
-       * config/sparc/sparc.c (sparc_legitimate_address_p): Likewise.
-
-2011-11-03  Tristan Gingold  <gingold@adacore.com>
-
-       * config/vms/vms.c (vms_patch_builtins): Fix typo.
-
-2011-11-03  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/44965
-       * lto-opts.c: Re-implement.
-       * lto-streamer.h (lto_register_user_option): Remove.
-       (lto_read_file_options): Likewise.
-       (lto_reissue_options): Likewise.
-       (lto_clear_user_options): Likewise.
-       (lto_clear_file_options): Likewise.
-       * opts-global.c (post_handling_callback): Remove.
-       (set_default_handlers): Do not set post_handling_callback.
-       (decode_options): Remove LTO specific code.
-       * lto-wrapper.c (merge_and_complain): New function.
-       (run_gcc): Read all input file options and
-       prepend a merged set before the linker driver options.
-       * gcc.c (driver_post_handling_callback): Remove.
-       (set_option_handlers): Do not set post_handling_callback.
-       * opts-common.c (handle_option): Do not call post_handling_callback.
-       * opts.h (struct cl_option_handlers): Remove post_handling_callback.
-
-2011-11-03  Richard Guenther  <rguenther@suse.de>
-
-       * collect2.c (main): Guard object_nbr variable with TARGET_AIX_VERSION.
-
-2011-11-03  Martin Jambor  <mjambor@suse.cz>
-
-       * ipa-prop.c (type_change_info): New fields offset, object,
-       known_current_type and multiple_types_encountered.
-       (extr_type_from_vtbl_ptr_store): New function.
-       (check_stmt_for_type_change): Use it, set multiple_types_encountered if
-       the result is different from the previous one.
-       (detect_type_change): Renamed to detect_type_change_1. New parameter
-       comp_type.  Set up new fields in tci, build known type jump
-       functions if the new type can be identified.
-       (detect_type_change): New function.
-       * tree.h (DECL_CONTEXT): Comment new use.
-
-2011-11-03  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/48217
-       * lto-wrapper.c (get_options_from_collect_gcc_options): Properly
-       decode an encoded literal '.
-
-2011-11-03  Tristan Gingold  <gingold@adacore.com>
-
-       * collect2.c (main): Add support of -f (response file) on AIX.
-
-2011-11-03  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR tree-optimization/50912
-       * tree-vectorizer.h (slp_void_p): New.
-       (struct _slp_tree): Replace left and right with children.  Update
-       documentation.
-       (struct _slp_oprnd_info): New.
-       (vect_get_vec_defs): Declare.
-       (vect_get_slp_defs): Update arguments.
-       * tree-vect-loop.c (vect_create_epilog_for_reduction): Call
-       vect_get_vec_defs instead of vect_get_slp_defs.
-       (vectorizable_reduction): Likewise.
-       * tree-vect-stmts.c (vect_get_vec_defs): Remove static, add argument.
-       Update call to vect_get_slp_defs.
-       (vectorizable_conversion): Update call to vect_get_vec_defs.
-       (vectorizable_assignment, vectorizable_shift,
-       vectorizable_operation): Likewise.
-       (vectorizable_type_demotion): Call vect_get_vec_defs instead of
-       vect_get_slp_defs.
-       (vectorizable_type_promotion, vectorizable_store): Likewise.
-       (vect_analyze_stmt): Fix typo.
-       * tree-vect-slp.c (vect_free_slp_tree): Update SLP tree traversal.
-       (vect_print_slp_tree, vect_mark_slp_stmts,
-       vect_mark_slp_stmts_relevant, vect_slp_rearrange_stmts,
-       vect_detect_hybrid_slp_stmts, vect_slp_analyze_node_operations,
-       vect_schedule_slp_instance): Likewise.
-       (vect_create_new_slp_node): New.
-       (vect_create_oprnd_info, vect_free_oprnd_info): Likewise.
-       (vect_get_and_check_slp_defs): Pass information about defs using
-       oprnds_info, allow any number of operands.
-       (vect_build_slp_tree): Likewise.  Update calls to
-       vect_get_and_check_slp_defs.  Fix comments.
-       (vect_analyze_slp_instance): Move node creation to
-       vect_create_new_slp_node.
-       (vect_get_slp_defs): Allow any number of operands.
-
-2011-11-02  Peter Bergner  <bergner@vnet.ibm.com>
-           Iain Sandoe  <iains@gcc.gnu.org>
-
-       * config/rs6000/rs6000.c (USE_HIDDEN_LINKONCE): New define.
-       (get_ppc476_thunk_name): Use it.
-       (rs6000_code_end): Likewise.
-       (macho_branch_islands): Fix typo.
-
-2011-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
-           Jason Merrill  <jason@redhat.com>
-
-       PR c++/50810
-       * configure.ac: Add -Wno-narrowing to warning options.
-       * doc/invoke.texi ([-Wnarrowing], [-Wc++0x-compat]): Update.
-
-2011-11-02  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR target/50945
-       * config/sparc/sparc.md (movsf_insn): Reindent constraints.
-       (movdf_insn_sp32): Likewise.  Remove redundant G constraint.
-       (movdf_insn_sp64): Likewise.
-       (DFmode splitter): Do not test TARGET_FPU.
-       (movtf_insn_sp32): Reindent constraints.
-       (movtf_insn_sp32_no_fpu): Likewise.
-       (movtf_insn_sp64): Likewise.
-       (movtf_insn_sp64_hq): Likewise.
-       (movtf_insn_sp64_no_fpu): Likewise.
-
-2011-11-02  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       PR c++/50956
-       * builtins.c (fold_builtin_memchr): Fix cast.
-
-2011-11-02  Teresa Johnson  <tejohnson@google.com>
-
-       * config/i386/predicates.md (promotable_binary_operator): Add minus
-       to the list of promotable operators.
-
-2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       * gthr-single.h, gthr.h: Move to ../libgcc.
-       * gthr-aix.h: Move to ../libgcc/config/rs6000.
-       * gthr-dce.h: Move to ../libgcc/config/pa.
-       * gthr-lynx.h: Move to ../libgcc/config.
-       * gthr-mipssde.h: Move to ../libgcc/config/mips.
-       * gthr-posix.h: Move to ../libgcc/config.
-       * gthr-rtems.h: Likewise.
-       * gthr-tpf.h: Move to ../libgcc/config/s390.
-       * gthr-vxworks.h: Move to ../libgcc/config.
-       * gthr-win32.h: Move to ../libgcc/config/i386.
-       * configure.ac (gthread_flags): Remove
-       (gthr-default.h): Don't create.
-       (thread_file): Don't substitute.
-       * configure: Regenerate.
-       * Makefile.in (GCC_THREAD_FILE): Remove.
-       (GTHREAD_FLAGS): Remove.
-       (libgcc.mvars): Remove GTHREAD_FLAGS.
-       * config/t-vxworks (EXTRA_HEADERS): Remove.
-
-2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-           Paolo Bonzini  <bonzini@gnu.org>
-
-       * configure.ac (libgcc_tm_file_list, libgcc_tm_include_list): Remove.
-       * configure: Regenerate.
-       * Makefile.in (libgcc_tm_file_list, libgcc_tm_include_list): Remove.
-       (TM_H): Remove libgcc_tm.h, $(libgcc_tm_file_list).
-       (libgcc_tm.h, cs-libgcc_tm.h): Remove.
-       (clean): Remove libgcc_tm.h
-       * mkconfig.sh: Don't include libgcc_tm.h in tm.h.
-       * config.gcc (libgcc_tm_file): Remove.
-       (arm*-*-linux*): Remove libgcc_tm_file for arm*-*-linux-*eabi.
-       (arm*-*-uclinux*): Remove libgcc_tm_file for arm*-*-uclinux*eabi.
-       (arm*-*-eabi*, arm*-*-symbianelf*): Remove libgcc_tm_file.
-       (avr-*-rtems*): Likewise.
-       (avr-*-*): Likewise.
-       (frv-*-elf): Likewise.
-       (frv-*-*linux*): Likewise.
-       (h8300-*-rtems*): Likewise.
-       (h8300-*-elf*): Likewise.
-       (i[34567]86-*-darwin*): Likewise.
-       (x86_64-*-darwin*): Likewise.
-       (rx-*-elf*): Likewise.
-       (tic6x-*-elf): Likewise.
-       (tic6x-*-uclinux): Likewise.
-       (i[34567]86-*-linux*, x86_64-*-linux*): Likewise.
-
-2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       * Makefile.in (LIBGCC2_DEBUG_CFLAGS LIBGCC2_CFLAGS)
-       (LIBGCC2_INCLUDES, TARGET_LIBGCC2_CFLAGS, LIB2FUNCS_EXTRA)
-       (LIB2FUNCS_STATIC_EXTRA, LIB2FUNCS_EXCLUDE, T, T_TARGET)
-       (INCLUDES_FOR_TARGET): Remove.
-       (LIBGCC2_CFLAGS): Don't export.
-       (LIB2FUNCS_ST, LIB2_DIVMOD_FUNCS, LIB2ADD, LIB2ADD_ST, srcdirify):
-       Remove.
-       (libgcc-support): Remove $(LIB2ADD), $(LIB2ADD_ST) dependencies.
-       (libgcc.mvars): Likewise.
-       Don't emit LIB2FUNCS_ST, LIB2FUNCS_EXCLUDE, LIB2ADD, LIB2ADD_ST,
-       LIB2_SIDITI_CONV_FUNCS, LIB2_DIVMOD_FUNCS, LIBGCC2_CFLAGS,
-       TARGET_LIBGCC2_CFLAGS.
-       Emit GTHREAD_FLAGS.
-       * libgcc2.c, libgcc2.h, gbl-ctors.h, longlong.h: Move to ../libgcc.
-       * config/darwin-64.c: Move to ../libgcc/config.
-       * config/divmod.c, config/floatunsidf.c, config/floatunsisf.c,
-       config/floatunsitf.c, config/floatunsixf.c, config/udivmod.c,
-       config/udivmodsi4.c: Move to ../libgcc/config.
-       * config/gthr-posix.c: Move to ../libgcc/config/alpha.
-       * config/memcmp.c, config/memcpy.c, config/memmove.c,
-       config/memset.c: Move to ../libgcc/config.
-       * config/t-darwin (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/t-freebsd: Remove.
-       * config/t-freebsd-thread: Move to ../libgcc/config.
-       * config/t-libgcc-pic: Move to ../libgcc/config.
-       * config/t-libunwind (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/t-linux: Remove.
-       * config/t-lynx (TARGET_LIBGCC2_CFLAGS, LIBGCC, INSTALL_LIBGCC):
-       Remove.
-       * config/t-openbsd-thread: Move to ../libgcc/config.
-       * config/t-rtems (LIBGCC2_INCLUDES): Remove.
-       * config/t-sol2 (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/t-svr4: Remove.
-       * config/t-vxworks (LIBGCC, INSTALL_LIBGCC, TARGET_LIBGCC2_CFLAGS)
-       (LIBGCC2_DEBUG_CFLAGS, LIB2FUNCS_EXTRA, LIBGCC2_INCLUDES): Remove.
-       * config/vxlib.c, config/vxlib-tls.c: Move to ../libgcc/config.
-       * config/alpha/qrnnd.asm: Move to ../libgcc/config/alpha/qrnnd.S.
-       * config/alpha/t-alpha, config/alpha/t-ieee: Remove.
-       * config/alpha/t-vms (LIB2FUNCS_EXTRA, LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/alpha/vms-gcc_shell_handler.c: Move to ../libgcc/config/alpha.
-       * config/arm/bpabi.c, config/arm/unaligned-funcs.c,
-       config/arm/fp16.c, config/arm/linux-atomic.c,
-       config/arm/linux-atomic-64bit.c: Move to ../libgcc/config/arm.
-       * config/arm/t-arm-elf (LIBGCC, INSTALL_LIBGCC)
-       (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/arm/t-bpabi, config/arm/t-linux: Remove.
-       * config/arm/t-linux-eabi (TARGET_LIBGCC2_CFLAGS)
-       (LIB2FUNCS_STATIC_EXTRA): Remove.
-       * config/arm/t-netbsd: Remove.
-       * config/arm/t-strongarm-elf (LIBGCC, INSTALL_LIBGCC)
-       (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/arm/t-symbian (LIB2FUNCS_STATIC_EXTRA): Remove.
-       * config/arm/t-wince-pe (LIBGCC, INSTALL_LIBGCC)
-       (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/avr/t-avr (LIB2FUNCS_EXCLUDE, TARGET_LIBGCC2_CFLAGS)
-       (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/bfin/t-bfin-elf (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/bfin/t-bfin-linux: Likewise.
-       * config/bfin/t-bfin-uclinux: Likewise.
-       * config/c6x/eqd.c, config/c6x/eqf.c, config/c6x/ged.c,
-       config/c6x/gef.c, config/c6x/gtd.c, config/c6x/gtf.c,
-       config/c6x/led.c, config/c6x/lef.c, config/c6x/ltd.c,
-       config/c6x/ltf.c: Move to ../libgcc/config/c6x.
-       * config/c6x/t-c6x-elf (LIB2FUNCS_EXCLUDE, LIB2FUNCS_EXTRA): Remove.
-       * config/c6x/t-c6x-uclinux (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/cris/arit.c: Move to ../libgcc/config/cris.
-       * config/cris/cris_abi_symbol.c: Remove.
-       * config/cris/cris.h: Remove obsolete comment.
-       * config/cris/mulsi3.asm: Move to ../libgcc/config/cris/mulsi3.S.
-       * config/cris/t-cris (LIB2FUNCS_EXTRA, CRIS_LIB1CSRC)
-       ($(LIB2FUNCS_EXTRA)): Remove.
-       * config/cris/t-elfmulti (LIB2FUNCS_STATIC_EXTRA, INSTALL_LIBGCC)
-       (LIBGCC): Remove.
-       * config/cris/t-linux (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/fr30/t-fr30: Remove.
-       * config/frv/cmovd.c, config/frv/cmovh.c, config/frv/cmovw.c,
-       config/frv/modi.c, config/frv/uitod.c, config/frv/uitof.c,
-       config/frv/ulltod.c, config/frv/ulltof.c, config/frv/umodi.c: Move
-       to ../libgcc/config/frv.
-       * config/frv/t-frv (LIB2FUNCS_EXTRA, TARGET_LIBGCC2_CFLAGS)
-       (cmovh.c, cmovw.c, cmovd.c, modi.c, umodi.c, uitof.c, uitod.c)
-       (ulltof.c, LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/frv/t-linux (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/h8300/clzhi2.c, config/h8300/ctzhi2.c,
-       config/h8300/fixunssfsi.c, config/h8300/parityhi2.c,
-       config/h8300/popcounthi2.c: Move to ../libgcc/config/h8300.
-       * config/h8300/t-h8300 (LIB2FUNCS_EXTRA, TARGET_LIBGCC2_CFLAGS)
-       (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/i386/gthr-win32.c: Move to ../libgcc/config/i386.
-       * config/i386/t-cygming (LIBGCC2_INCLUDES): Remove.
-       * config/i386/t-cygwin: Remove.
-       * config/i386/t-darwin (LIB2_SIDITI_CONV_FUNCS, LIB2FUNCS_EXTRA)
-       (LIB2FUNCS_EXCLUDE): Remove.
-       * config/i386/t-darwin64 (LIB2_SIDITI_CONV_FUNCS, LIB2FUNCS_EXTRA)
-       (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/i386/t-gthr-win32: Move to ../libgcc/config/i386.
-       * config/i386/t-linux64 (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/i386/t-mingw-w32: Likewise.
-       * config/i386/t-mingw-w64: Likewise.
-       * config/i386/t-openbsd: Likewise.
-       * config/i386/t-nto: Remove.
-       * config/ia64/quadlib.c: Move to ../libgcc/config/ia64.
-       * config/ia64/t-hpux (LIBGCC, INSTALL_LIBGCC, LIB2FUNCS_EXTRA)
-       (quadlib.c): Remove.
-       * config/ia64/t-ia64: Remove comment.
-       * config/iq2000/lib2extra-funcs.c: Move to
-       ../libgcc/config/iq2000/lib2funcs.c.
-       * config/iq2000/t-iq2000: Remove.
-       * config/m32c/m32c-lib2.c: Move to ../libgcc/config/m32c/lib2funcs.c.
-       * config/m32c/m32c-lib2-trapv.c: Move to ../libgcc/config/m32c/trapv.c.
-       * config/m32r/t-linux (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/m32c/t-m32c (LIB2FUNCS_EXTRA): Remove.
-       * config/m32r/t-m32r (TARGET_LIBGCC2_CFLAGS, LIBGCC)
-       (INSTALL_LIBGCC): Remove.
-       * config/m68k/fpgnulib.c: Move to ../libgcc/config/m68k.
-       * config/m68k/t-floatlib: Remove.
-       * config/m68k/t-mlibs (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/mcore/t-mcore (TARGET_LIBGCC2_CFLAGS): Remove.
-       Fix typo.
-       (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/mep/mep-lib2.c: Move to ../libgcc/config/mep/lib2funcs.c.
-       * config/mep/mep-tramp.c: Move to ../libgcc/config/mep/tramp.c.
-       * config/mep/t-mep (LIB2FUNCS_EXTRA): Remove.
-       * config/mips/t-elf (TARGET_LIBGCC2_CFLAGS, LIBGCC)
-       (INSTALL_LIBGCC): Remove.
-       * config/mips/t-isa3264: Likewise.
-       * config/mips/t-mips (LIB2_SIDITI_CONV_FUNCS): Remove.
-       * config/mips/t-r3900 (TARGET_LIBGCC2_CFLAGS, LIBGCC)
-       (INSTALL_LIBGCC): Remove.
-       * config/mips/t-sde (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/mips/t-sr71k (TARGET_LIBGCC2_CFLAGS, LIBGCC)
-       (INSTALL_LIBGCC): Remove.
-       * config/mips/t-vr (TARGET_LIBGCC2_CFLAGS)
-       (LIB2FUNCS_STATIC_EXTRA): Remove.
-       * config/mips/vr4120-div.S: Move to ../libgcc/config/mips.
-       * config/mmix/t-mmix (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/mn10300/t-mn10300 (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/pa/fptr.c, config/pa/linux-atomic.c: Move to
-       ../libgcc/config/pa.
-       * config/pa/lib2funcs.asm: Move to ../libgcc/config/pa/lib2funcs.S.
-       * config/pa/quadlib.c: Move to ../libgcc/config/pa.
-       * config/pa/t-dce-thr (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/pa/t-linux, config/pa/t-linux64: Remove.
-       * config/pa/t-pa-hpux, config/pa/t-pa-hpux10,
-       config/pa/t-pa-hpux11, config/pa/t-pa64: Remove.
-       * config/pdp11/t-pdp11 (TARGET_LIBGCC2_CFLAGS, LIB2FUNCS_EXTRA):
-       Remove.
-       * config/picochip/libgccExtras: Move to ../libgcc/config/picochip.
-       * config/picochip/t-picochip (LIB2FUNCS_EXTRA, RANLIB_FOR_TARGET)
-       (TARGET_LIBGCC2_CFLAGS, LIBGCC2_DEBUG_CFLAGS): Remove.
-       * config/rs6000/crtresfpr.asm: Move to
-       ../libgcc/config/rs6000/crtresfpr.S.
-       * config/rs6000/crtresgpr.asm: Move to
-       ../libgcc/config/rs6000/crtresgpr.S.
-       * config/rs6000/crtresxfpr.asm: Move to
-       ../libgcc/config/rs6000/crtresxfpr.S.
-       * config/rs6000/crtresxgpr.asm: Move to
-       ../libgcc/config/rs6000/crtresxgpr.S.
-       * config/rs6000/crtsavfpr.asm: Move to
-       ../libgcc/config/rs6000/crtsavfpr.S.
-       * config/rs6000/crtsavgpr.asm: Move to
-       ../libgcc/config/rs6000/crtsavgpr.S.
-       * config/rs6000/darwin-asm.h: Move to ../libgcc/config/rs6000.
-       * config/rs6000/darwin-fpsave.asm: Move to
-       ../libgcc/config/rs6000/darwin-fpsave.S.
-       * config/rs6000/darwin-gpsave.asm: Move to
-       ../libgcc/config/rs6000/darwin-gpsave.S.
-       * config/rs6000/darwin-tramp.asm: Move to
-       ../libgcc/config/rs6000/darwin-tramp.S.
-       * config/rs6000/darwin-vecsave.asm: Move to
-       ../libgcc/config/rs6000/darwin-vecsave.S.
-       * config/rs6000/darwin-world.asm: Move to
-       ../libgcc/config/rs6000/darwin-world.S.
-       * config/rs6000/e500crtres32gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtres32gpr.S.
-       * config/rs6000/e500crtres64gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtres64gpr.S.
-       * config/rs6000/e500crtres64gprctr.asm: Move to
-       ../libgcc/config/rs6000/e500crtres64gprctr.S.
-       * config/rs6000/e500crtrest32gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtrest32gpr.S.
-       * config/rs6000/e500crtrest64gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtrest64gpr.S.
-       * config/rs6000/e500crtresx32gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtresx32gpr.S.
-       * config/rs6000/e500crtresx64gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtresx64gpr.S.
-       * config/rs6000/e500crtsav32gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtsav32gpr.S.
-       * config/rs6000/e500crtsav64gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtsav64gpr.S.
-       * config/rs6000/e500crtsav64gprctr.asm: Move to
-       ../libgcc/config/rs6000/e500crtsav64gprctr.S.
-       * config/rs6000/e500crtsavg32gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtsavg32gpr.S.
-       * config/rs6000/e500crtsavg64gpr.asm: Move to
-       ../libgcc/config/rs6000/e500crtsavg64gpr.S.
-       * config/rs6000/e500crtsavg64gprctr.asm: Move to
-       ../libgcc/config/rs6000/e500crtsavg64gprctr.S.
-       * config/rs6000/eabi.asm: Move to ../libgcc/config/rs6000/eabi.S.
-       * config/rs6000/t-aix43 (LIBGCC, INSTALL_LIBGCC, LIB2FUNCS_EXTRA)
-       (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/rs6000/t-aix52: Likewise.
-       * config/rs6000/t-darwin: Remove.
-       * config/rs6000/t-darwin64 (LIB2_SIDITI_CONV_FUNCS)
-       (LIB2FUNCS_EXTRA): Remove.
-       * config/rs6000/t-fprules (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/rs6000/t-linux64 (TARGET_LIBGCC2_CFLAGS): Remove.
-       * config/rs6000/t-lynx (LIB2FUNCS_EXTRA, tramp.S, LIBGCC)
-       (INSTALL_LIBGCC): Remove.
-       * config/rs6000/t-netbsd (LIB2FUNCS_EXTRA)
-       (LIB2FUNCS_STATIC_EXTRA, tramp.S, crtsavfpr.S, crtresfpr.S)
-       (crtsavgpr.S, crtresgpr.S, crtresxfpr.S, crtresxgpr.S, LIBGCC)
-       (INSTALL_LIBGCC, $(T)crtsavfpr$(objext), $(T)crtresfpr$(objext))
-       ($(T)crtsavgpr$(objext), $(T)crtresgpr$(objext))
-       ($(T)crtresxfpr$(objext), $(T)crtresxgpr$(objext)): Remove.
-       * config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA)
-       (LIB2FUNCS_STATIC_EXTRA, eabi.S, tramp.S): Remove.
-       * config/rs6000/t-spe (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/rs6000/t-vxworks: Remove comment.
-       * config/rs6000/tramp.asm: Move to ../libgcc/config/rs6000/tramp.S.
-       * config/rx/t-rx (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/sh/linux-atomic.asm: Move to
-       ../libgcc/config/sh/linux-atomic.S.
-       * config/sh/t-linux (LIB2FUNCS_EXTRA): Remove.
-       * config/sh/t-netbsd: Remove.
-       * config/sh/t-sh (TARGET_LIBGCC2_CFLAGS, LIBGCC, INSTALL_LIBGCC):
-       Remove.
-       * config/sparc/t-elf (LIBGCC, INSTALL_LIBGCC): Remove.
-       * config/sparc/t-leon: Likewise.
-       * config/sparc/t-leon3: Likewise.
-       * config/sparc/t-linux64: Likewise.
-       * config/sparc/t-netbsd64: Fix typo.
-       Remove comment.
-       * config/spu/divmodti4.c, config/spu/divv2df3.c,
-       config/spu/float_disf.c, config/spu/float_unsdidf.c,
-       config/spu/float_unsdisf.c, config/spu/float_unssidf.c,
-       config/spu/mfc_multi_tag_release.c,
-       config/spu/mfc_multi_tag_reserve.c, config/spu/mfc_tag_release.c,
-       config/spu/mfc_tag_reserve.c, config/spu/mfc_tag_table.c,
-       config/spu/multi3.c: Move to ../libgcc/config/spu.
-       * config/spu/t-spu-elf (TARGET_LIBGCC2_CFLAGS, LIB2FUNCS_EXCLUDE)
-       (LIB2FUNCS_STATIC_EXTRA, LIB2_SIDITI_CONV_FUNCS, LIBGCC)
-       (INSTALL_LIBGCC): Remove.
-       * config/stormy16/stormy16-lib2.c: Move to
-       ../libgcc/config/stormy16/lib2.c.
-       * config/stormy16/stormy16-lib2-ashlsi3.c: Move to
-       ../libgcc/config/stormy16/ashlsi3.c.
-       * config/stormy16/stormy16-lib2-ashrsi3.c: Move to
-       ../libgcc/config/stormy16/ashrsi3.c.
-       * config/stormy16/stormy16-lib2-clzhi2.c: Move to
-       ../libgcc/config/stormy16/clzhi2.c.
-       * config/stormy16/stormy16-lib2-cmpsi2.c: Move to
-       ../libgcc/config/stormy16/cmpsi2.c.
-       * config/stormy16/stormy16-lib2-ctzhi2.c: Move to
-       ../libgcc/config/stormy16/ctzhi2.c.
-       * config/stormy16/stormy16-lib2-divsi3.c: Move to
-       ../libgcc/config/stormy16/divsi3.c.
-       * config/stormy16/stormy16-lib2-ffshi2.c: Move to
-       ../libgcc/config/stormy16/ffshi2.c.
-       * config/stormy16/stormy16-lib2-lshrsi3.c: Move to
-       ../libgcc/config/stormy16/lshrsi3.c.
-       * config/stormy16/stormy16-lib2-modsi3.c: Move to
-       ../libgcc/config/stormy16/modsi3.c.
-       * config/stormy16/stormy16-lib2-parityhi2.c: Move to
-       ../libgcc/config/stormy16/parityhi2.c.
-       * config/stormy16/stormy16-lib2-popcounthi2.c: Move to
-       ../libgcc/config/stormy16/popcounthi2.c.
-       * config/stormy16/stormy16-lib2-ucmpsi2.c: Move to
-       ../libgcc/config/stormy16/ucmpsi2.c.
-       * config/stormy16/stormy16-lib2-udivmodsi4.c: Move to
-       ../libgcc/config/stormy16/udivmodsi4.c.
-       * config/stormy16/stormy16-lib2-udivsi3.c: Move to
-       ../libgcc/config/stormy16/udivsi3.c.
-       * config/stormy16/stormy16-lib2-umodsi3.c: Move to
-       ../libgcc/config/stormy16/umodsi3.c.
-       * config/stormy16/t-stormy16: Move to ../libgcc/config/t-stormy16.
-       * config/v850/t-v850 (INSTALL_LIBGCC): Remove.
-       * config/xtensa/lib2funcs.S: Move to ../libgcc/config/xtensa.
-       * config/xtensa/t-elf: Remove.
-       * config/xtensa/t-xtensa (LIB2FUNCS_EXTRA): Remove.
-       * config.gcc (*-*-freebsd*): Remove t-freebsd, t-freebsd-thread
-       from tmake_file.
-       (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
-       *-*-gnu*, *-*-kopensolaris*-gnu): Remove t-linux from tmake_file.
-       (*-*-netbsd*): Remove t-libgcc-pic from tmake_file.
-       (*-*-openbsd*): Likewise.
-       Remove t-openbsd-thread for posix threads.
-       (alpha*-*-linux*): Remove alpha/t-alpha, alpha/t-ieee from tmake_file.
-       (alpha*-*-freebsd*): Likewise.
-       (alpha*-*-netbsd*): Likewise.
-       (alpha*-*-openbsd*): Likewise.
-       (alpha64-dec-*vms*): Likewise.
-       (alpha*-dec-*vms*): Likewise.
-       (arm*-*-netbsdelf*): Remove arm/t-netbsd from tmake_file.
-       (arm*-*-linux*): Remove t-linux from tmake_file.
-       Remove arm/t-bpabi from tmake_file for arm*-*-linux-*eabi.
-       (arm*-*-uclinux*): Remove arm/t-bpabi from tmake_file for
-       arm*-*-uclinux*eabi.
-       (arm*-*-eabi*, arm*-*-symbianelf* ): Remove arm/t-bpabi from
-       tmake_file for arm*-*-eabi*.
-       (fr30-*-elf): Remove tmake_file.
-       (hppa*64*-*-linux*): Remove tmake_file.
-       (hppa*-*-linux*): Likewise.
-       (hppa[12]*-*-hpux10*): Remove pa/t-pa-hpux10, pa/t-pa-hpux from
-       tmake_file.
-       (hppa*64*-*-hpux11*): Remove pa/t-pa64, pa/t-pa-hpux from tmake_file.
-       (hppa[12]*-*-hpux11*): Remove pa/t-pa-hpux11, pa/t-pa-hpux from
-       tmake_file.
-       (i[34567]86-*-elf*): Remove tmake_file.
-       (x86_64-*-elf*): Likewise.
-       (i[34567]86-*-nto-qnx*): Likewise.
-       (i[34567]86-*-cygwin*): Remove i386/t-cygwin from tmake_file.
-       (i[34567]86-*-mingw*, x86_64-*-mingw*): Remove i386/t-gthr-win32
-       from tmake_file if using win32 threads.
-       (iq2000*-*-elf*): Remove tmake-file.
-       (microblaze*-linux*): Likewise.
-       (sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*)
-       (sh[2346lbe]*-*-linux*, sh-*-netbsdelf*, shl*-*-netbsdelf*)
-       (sh5-*-netbsd*, sh5l*-*-netbsd*, sh64-*-netbsd*)
-       (sh64l*-*-netbsd*): Remove sh/t-netbsd from tmake_file for
-       sh5*-*-netbsd*, sh64*-netbsd*, *-*-netbsd.
-       (xtensa*-*-elf*): Remove tmake_file.
-
-2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       * Makefile.in (LIB1ASMSRC): Don't export.
-       (libgcc.mvars): Don't emit LIB1ASMFUNCS, LIB1ASMSRC.
-       * config/arm/arm.c: Update lib1funcs.asm filename.
-       * config/arm/linux-eabi.h: Likewise.
-       * config/arm/bpabi-v6m.S, config/arm/bpabi.S,
-       config/arm/ieee754-df.S, config/arm/ieee754-sf.S: Move to
-       ../libgcc/config/arm.
-       * config/arm/lib1funcs.asm: Move to ../libgcc/config/arm/lib1funcs.S.
-       * config/arm/t-arm (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/arm/t-arm-elf (LIB1ASMFUNCS): Remove.
-       * config/arm/t-bpabi: Likewise.
-       * config/arm/t-linux (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/arm/t-linux-eabi (LIB1ASMFUNCS): Remove.
-       * config/arm/t-strongarm-elf: Likewise.
-       * config/arm/t-symbian: Likewise.
-       * config/arm/t-vxworks: Likewise.
-       * config/arm/t-wince-pe: Likewise.
-       * config/avr/libgcc.S: Move to ../libgcc/config/avr.
-       * config/avr/t-avr (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/bfin/lib1funcs.asm: Move to ../libgcc/config/bfin/lib1funcs.S.
-       * config/bfin/t-bfin: Remove.
-       * config/bfin/t-bfin-elf (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/bfin/t-bfin-linux: Likewise.
-       * config/bfin/t-bfin-uclinux: Likewise.
-       * config/c6x/lib1funcs.asm: Move to ../libgcc/config/c6x/lib1funcs.S.
-       * config/c6x/t-c6x-elf (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/fr30/lib1funcs.asm: Move to ../libgcc/config/fr30/lib1funcs.S.
-       * config/fr30/t-fr30 (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/frv/lib1funcs.asm: Move to ../libgcc/config/frv/lib1funcs.S.
-       * config/frv/t-frv (CROSS_LIBGCC1, LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/h8300/fixunssfsi.c: Update lib1funcs.asm filename.
-       * config/h8300/lib1funcs.asm: Move to
-       ../libgcc/config/h8300/lib1funcs.S.
-       * config/h8300/t-h8300 (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/i386/cygwin.asm: Move to ../libgcc/config/i386/cygwin.S.
-       * config/i386/t-cygming (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/i386/t-interix: Likewise.
-       * config/ia64/lib1funcs.asm: Move to ../libgcc/config/ia64/lib1funcs.S.
-       * config/ia64/t-hpux (LIB1ASMFUNCS, LIBGCC1_TEST): Remove.
-       * config/ia64/t-ia64 (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/iq2000/t-iq2000 (LIBGCC1, CROSS_LIBGCC1): Remove.
-       * config/m32c/m32c.c: Update m32c-lib1.S filename.
-       * config/m32c/m32c-lib1.S: Move to ../libgcc/config/m32c/lib1funcs.S.
-       * config/m32c/t-m32c (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/m32r/t-linux (CROSS_LIBGCC1, LIBGCC1, LIBGCC1_TEST): Remove.
-       * config/m68k/lb1sf68.asm: Move to ../libgcc/config/m68k/lb1sf68.S.
-       * config/m68k/t-floatlib (LIB1ASMSRC, LIB1ASMFUNCS): New file.
-       * config/mcore/lib1.asm: Move to ../libgcc/config/mcore/lib1funcs.S.
-       * config/mcore/t-mcore (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/mep/mep-lib1.asm: Move to ../libgcc/config/mep/lib1funcs.S.
-       * config/mep/t-mep (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/mips/mips16.S: Move to ../libgcc/config/mips.
-       * config/mips/t-libgcc-mips16: Remove.
-       * config/mips/t-sr71k (LIBGCC1, CROSS_LIBGCC1): Remove.
-       * config/pa/milli64.S: Move to ../libgcc/config/pa.
-       * config/pa/t-linux (LIB1ASMFUNCS, LIB1ASMSRC): Remove.
-       * config/pa/t-linux64: Likewise.
-       * config/picochip/libgccExtras/fake_libgcc.asm: Move to
-       ../libgcc/config/picochip/lib1funcs.S.
-       * config/picochip/t-picochip (LIB1ASMFUNCS, LIB1ASMSRC): Remove.
-       * config/sh/lib1funcs.asm: Move to ../libgcc/config/sh/lib1funcs.S.
-       * config/sh/lib1funcs.h: Move to ../libgcc/config/sh.
-       * config/sh/sh.h: Update lib1funcs.asm filename.
-       * config/sh/t-linux (LIB1ASMFUNCS_CACHE): Remove.
-       * config/sh/t-netbsd: Likewise.
-       * config/sh/t-sh (LIB1ASMSRC, LIB1ASMFUNCS, LIB1ASMFUNCS_CACHE):
-       Remove.
-       * config/sh/t-sh64 (LIB1ASMFUNCS): Remove.
-       * config/sparc/lb1spc.asm: Move to ../libgcc/config/sparc/lb1spc.S.
-       * config/sparc/lb1spl.asm: Remove.
-       * config/sparc/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config/sparc/t-leon: Likewise.
-       * config/spu/t-spu-elf (LIBGCC1, CROSS_LIBGCC1): Remove.
-       * config/v850/lib1funcs.asm: Move to ../libgcc/config/v850/lib1funcs.S.
-       * config/v850/t-v850 (LIB1ASMSRC, LIB1ASMFUNCS): Remove
-       * config/vax/lib1funcs.asm: Move to ../libgcc/config/vax/lib1funcs.S.
-       * config/vax/t-linux: Remove.
-       * config/xtensa/ieee754-df.S, config/xtensa/ieee754-sf.S: Move to
-       ../libgcc/config/xtensa.
-       * config/xtensa/lib1funcs.asm: Move to
-       ../libgcc/config/xtensa/lib1funcs.S.
-       * config/xtensa/t-xtensa (LIB1ASMSRC, LIB1ASMFUNCS): Remove.
-       * config.gcc (bfin*-rtems*): Remove bfin/t-bfin from tmake_file.
-       (bfin*-*): Likewise.
-       (mips64*-*-linux*, mipsisa64*-*-linux*): Remove
-       mips/t-libgcc-mips16 from tmake_file.
-       (mips*-*-linux*): Likewise.
-       (mips*-sde-elf*): Likewise.
-       (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*)
-       (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*)
-       (mipsisa64r2-*-elf*, mipsisa64r2el-*-elf*): Likewise.
-       (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*): Likewise.
-       (mips-*-elf*, mipsel-*-elf*): Likewise.
-       (mips64-*-elf*, mips64el-*-elf*): Likewise.
-       (mips64orion-*-elf*, mips64orionel-*-elf*): Likewise.
-       (mips*-*-rtems*): Likewise.
-       (mipstx39-*-elf*, mipstx39el-*-elf*): Likewise.
-       (vax-*-linux*): Remove vax/t-linux from tmake_file.
-
-2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       * config.gcc (extra_parts): Remove.
-       (*-*-freebsd*): Remove extra_parts.
-       (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
-       *-*-gnu*, *-*-kopensolaris*-gnu): Likewise.
-       (*-*-netbsd*): Remove t-libc-ok, t-netbsd from tmake_file.
-       Remove extra_parts for *-*-netbsd*1.[7-9]*, *-*-netbsd[2-9]*,
-       *-*-netbsdelf[2-9]*.
-       (*-*-openbsd*): Remove t-libc-ok from tmake_file.
-       (alpha*-*-linux*): Remove extra_parts.
-       (alpha*-*-freebsd*): Likewise.
-       (bfin*-linux-uclibc*): Likewise.
-       (fr30-*-elf): Likewise.
-       (moxie-*-elf): Likewise.
-       (moxie-*-uclinux*): Likewise.
-       (h8300-*-rtems*): Remove h8300/t-elf from tmake_file.
-       (h8300-*-elf*): Likewise.
-       (hppa*64*-*-hpux11*): Remove extra_parts.
-       (i[34567]86-*-elf*): Remove i386/t-i386elf, i386/t-crtstuff from
-       tmake_file.
-       (x86_64-*-elf*): Likewise.
-       (i[34567]86-*-freebsd*): Remove tmake_file.
-       (x86_64-*-freebsd*): Likewise.
-       (x86_64-*-netbsd*): Likewise.
-       (i[34567]86-*-openbsd2.*, i[34567]86-*openbsd3.[0123]): Remove
-       t-libc-ok from tmake_file.
-       (i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu,
-       i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*,
-       i[34567]86-*-kopensolaris*-gnu): Remove i386/t-crtstuff from
-       tmake_file.
-       Remove extra_parts.
-       (x86_64-*-linux*, x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu):
-       Remove i386/t-crtstuff from tmake_file.
-       (i[34567]86-*-lynxos*): Likewise.
-       Remove extra_parts.
-       (ia64*-*-elf*): Remove extra_parts.
-       (ia64*-*-freebsd*): Likewise.
-       (ia64*-*-linux*): Likewise.
-       (ia64-hp-*vms*): Remove ia64/t-vms from tmake_file.
-       (m32r-*-elf*): Remove extra_parts.
-       (m32rle-*-elf*): Likewise.
-       (m32r-*-rtems*): Likewise.
-       (m68k-*-elf*, fido-*-elf*): Likewise.
-       (m68k*-*-openbsd*): Remove t-libc-ok from tmake_file.
-       (m68k-*-rtems*): Remove extra_parts.
-       (mep-*-*): Likewise.
-       (microblaze*-linux*): Likewise.
-       (mips64*-*-linux*, mipsisa64*-*-linux*): Likewise.
-       (mips*-*-linux*): Likewise.
-       (powerpc-*-lynxos*): Likewise.
-       (s390x-ibm-tpf*): Likewise.
-       (score-*-elf): Likewise.
-       Remove tmake_file.
-       (sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*, sh[2346lbe]*-*-linux*,
-       sh-*-netbsdelf*, shl*-*-netbsdelf*, sh5-*-netbsd*, sh5l*-*-netbsd*,
-       sh64-*-netbsd*, sh64l*-*-netbsd*): Remove sh/t-elf from tmake_file.
-       Remove sh/t-superh from tmake_file for sh*-superh-elf.
-       Remove sh/t-linux64 from tmake_file for sh64*-*-linux*.
-       (sh-*-rtems*): Remove sh/t-elf from tmake_file.
-       (sh-wrs-vxworks): Likewise.
-       (sparc-*-linux*): Remove extra_parts.
-       (sparc64-*-linux*): Likewise.
-       (sparc64-*-freebsd*, ultrasparc-*-freebsd*): Likewise.
-       (xstormy16-*-elf): Likewise.
-       (xtensa*-*-linux*): Remove xtensa/t-linux from tmake_file.
-       (am33_2.0-*-linux*): Remove extra_parts.
-       * configure.ac (extra_parts): Don't substitute.
-       * configure: Regenerate.
-       * crtstuff.c: Move to ../libgcc.
-       * Makefile.in (CRTSTUFF_CFLAGS): Remove.
-       (EXTRA_PARTS): Remove.
-       (CRTSTUFF_T_CFLAGS): Remove.
-       (MOSTLYCLEANFILES): Remove $(EXTRA_PARTS).
-       (GCC_EXTRA_PARTS): Remove.
-       (libgcc.mvars): Remove GCC_EXTRA_PARTS, CRTSTUFF_CFLAGS,
-       CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S.
-       Emit GCC_CFLAGS, INHIBIT_LIBC_CFLAGS.
-       ($(T)crtbegin.o, $(T)crtend.o, $(T)crtbeginS.o, $(T)crtendS.o)
-       ($(T)crtbeginT.o): Remove.
-       * config/alpha/t-vms (EXTRA_PARTS): Remove.
-       ($(T)vms-dwarf2.o, $(T)vms-dwarf2eh.o): Remove.
-       * config/alpha/vms-dwarf2.asm: Move to
-       ../libgcc/config/alpha/vms-dwarf2.S.
-       * config/alpha/vms-dwarf2eh.asm: Move to
-       ../libgcc/config/alpha/vms-dwarf2eh.S.
-       * config/arm/crti.asm: Move to ../libgcc/config/arm/crti.S.
-       * config/arm/crtn.asm: Move to ../libgcc/config/arm/crtn.S.
-       * config/arm/t-arm-elf (EXTRA_MULTILIB_PARTS): Remove.
-       ($(T)crti.o, $(T)crtn.o): Remove.
-       * config/arm/t-linux: Remove comment.
-       * config/arm/t-linux-eabi (EXTRA_MULTILIB_PARTS): Remove.
-       * config/arm/t-strongarm-elf (EXTRA_MULTILIB_PARTS): Remove.
-       ($(T)crti.o, $(T)crtn.o): Remove.
-       * config/arm/t-symbian (EXTRA_MULTILIB_PARTS): Remove.
-       * config/bfin/crti.s: Move to ../libgcc/config/bfin/crti.S.
-       * config/bfin/crtn.s: Move to ../libgcc/config/bfin/crtn.S.
-       * config/bfin/crtlibid.s: Move to ../libgcc/config/bfin/crtlibid.S.
-       * config/bfin/t-bfin (EXTRA_PARTS): Remove.
-       ($(T)crti.o, $(T)crtn.o): Remove.
-       * config/bfin/t-bfin-elf (CRTSTUFF_T_CFLAGS): Remove.
-       ($(T)crti.o, $(T)crtn.o, $(T)crtlibid.o): Remove
-       (EXTRA_MULTILIB_PARTS): Remove.
-       * config/bfin/t-bfin-linux (CRTSTUFF_T_CFLAGS,
-       EXTRA_MULTILIB_PARTS): Remove.
-       * config/bfin/t-bfin-uclinux (CRTSTUFF_T_CFLAGS): Remove.
-       ($(T)crtlibid.o): Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       * config/c6x/crti.s: Move to ../libgcc/config/c6x/crti.S.
-       * config/c6x/crtn.s: Move to ../libgcc/config/c6x/crtn.S.
-       * config/c6x/t-c6x-elf ($(T)crti.o, $(T)crtn.o): Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       (CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/c6x/t-c6x-uclinux (CRTSTUFF_T_CFLAGS,
-       CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/cris/t-elfmulti (CRTSTUFF_T_CFLAGS): Remove.
-       * config/cris/t-linux (CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/fr30/crti.asm: Move to ../libgcc/config/fr30/crti.S.
-       * config/fr30/crtn.asm: Move to ../libgcc/config/fr30/crtn.S.
-       * config/fr30/t-fr30 ($(T)crti.o, $(T)crtn.o): Remove.
-       * config/frv/frvbegin.c, config/frv/frvend.c: Move to
-       ../libgcc/config/frv.
-       * config/frv/t-frv (EXTRA_MULTILIB_PARTS): Remove.
-       (FRVSTUFF_CFLAGS, $(T)frvbegin$(objext), $(T)frvend$(objext)): Remove.
-       * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Remove.
-       (CRTSTUFF_T_CFLAGS): Remove.
-       * config/h8300/crti.asm: Move to ../libgcc/config/h8300/crti.S.
-       * config/h8300/crtn.asm: Move to ../libgcc/config/h8300/crtn.S.
-       * config/h8300/t-elf: Remove.
-       * config/i386/cygming-crtbegin.c, config/i386/cygming-crtend.c:
-       Move to ../libgcc/config/i386.
-       * config/i386/t-crtstuff: Remove.
-       * config/i386/t-i386elf: Remove.
-       * config/i386/t-linux64 (EXTRA_MULTILIB_PARTS): Remove.
-       * config/i386/t-nto (CRTSTUFF_T_CFLAGS, EXTRA_PARTS): Remove.
-       * config/ia64/crtbegin.asm: Move to ../libgcc/config/ia64/crtbegin.S.
-       * config/ia64/crtend.asm: Move to ../libgcc/config/ia64/crtend.S.
-       * config/ia64/crti.asm: Move to ../libgcc/config/ia64/crti.S.
-       * config/ia64/crtn.asm: Move to ../libgcc/config/ia64/crtn.S.
-       * config/ia64/t-vms: Remove.
-       * config/ia64/vms-crtinit.asm: Move to
-       ../libgcc/config/ia64/vms-crtinit.S.
-       * config/m32c/t-m32c (EXTRA_MULTILIB_PARTS): Remove.
-       * config/m32r/initfini.c: Move to ../libgcc/config/m32r.
-       * config/m32r/t-linux (CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/m32r/t-m32r (CRTSTUFF_T_CFLAGS): Remove.
-       ($(T)crtinit.o, $(T)crtfini.o): Remove.
-       (m32rx, m32r2): Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       * config/m68k/crti.s: Move to ../libgcc/config/m68k/crti.S.
-       * config/m68k/crtn.s: Move to ../libgcc/config/m68k/crtn.S.
-       * config/m68k/t-crtstuff: Remove.
-       * config/m68k/t-linux (EXTRA_MULTILIB_PARTS): Remove.
-       * config/m68k/t-m68kelf: Remove.
-       * config/m68k/t-uclinux (EXTRA_MULTILIB_PARTS): Remove.
-       * config/mcore/crti.asm: Move to ../libgcc/config/mcore/crti.S.
-       * config/mcore/crtn.asm: Move to ../libgcc/config/mcore/crtn.S.
-       * config/mcore/t-mcore ($(T)crti.o, $(T)crtn.o): Remove.
-       (EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Remove.
-       * config/mep/t-mep (CRTSTUFF_CFLAGS): Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       * config/microblaze/crti.s: Move to ../libgcc/config/microblaze/crti.S.
-       * config/microblaze/crtn.s: Move to ../libgcc/config/microblaze/crtn.S.
-       * config/microblaze/t-microblaze (EXTRA_MULTILIB_PARTS,
-       EXTRA_PARTS): Remove.
-       ($(T)crti$(objext), $(T)crtn$(objext)): Remove.
-       * config/mips/crti.asm: Move to ../libgcc/config/mips/crti.S.
-       * config/mips/crtn.asm: Move to ../libgcc/config/mips/crtn.S.
-       * config/mips/t-elf (CRTSTUFF_T_CFLAGS): Remove.
-       ($(T)crti.o, $(T)crtn.o): Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       * config/mips/t-isa3264: Likewise.
-       * config/mips/t-linux64 (EXTRA_MULTILIB_PARTS): Remove.
-       * config/mips/t-r3900 (EXTRA_MULTILIB_PARTS): Remove.
-       (CRTSTUFF_T_CFLAGS): Remove.
-       * config/mips/t-sde (CRTSTUFF_T_CFLAGS): Remove.
-       ($(T)crti.o, $(T)crtn.o): Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       * config/mips/t-sr71k (EXTRA_MULTILIB_PARTS, CRTSTUFF_T_CFLAGS):
-       Remove.
-       ($(T)crti.o, $(T)crtn.o): Remove.
-       * config/mips/t-st (EXTRA_MULTILIB_PARTS): Remove.
-       * config/mips/t-vr (CRTSTUFF_T_CFLAGS): Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       ($(T)crti.o, $(T)crtn.o): Remove.
-       * config/mmix/crti.asm: Move to ../libgcc/config/crti.S.
-       * config/mmix/crtn.asm: Move to ../libgcc/config/crtn.S.
-       * config/mmix/t-mmix (CRTSTUFF_T_CFLAGS): Remove.
-       * config/moxie/crti.asm, config/moxie/crtn.asm: Remove.
-       * config/pa/stublib.c: Move to libgcc/config/pa.
-       * config/pa/t-linux (CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/pa/t-linux64 (CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/pa/t-pa-hpux11 (LIBGCCSTUB_OBJS, stublib.c): Remove.
-       (pthread_default_stacksize_np-stub.o, pthread_mutex_lock-stub.o)
-       (pthread_mutex_unlock-stub.o, pthread_once-stub.o)
-       ($(T)libgcc_stub.a): Remove.
-       * config/pa/t-pa64 (LIBGCCSTUB_OBJS, stublib.c): Remove.
-       (rfi-stub.o, dfi-stub.o, cxaf-stub.o, jvrc-stub.o)
-       (pthread_default_stacksize_np-stub.o, pthread_mutex_lock-stub.o)
-       (pthread_mutex_unlock-stub.o, pthread_once-stub.o)
-       ($(T)libgcc_stub.a): Remove.
-       * config/rs6000/eabi-cn.asm: Move to
-       ../../../libgcc/config/rs6000/eabi-cn.S.
-       * config/rs6000/eabi-ci.asm: Move to
-       ../../../libgcc/config/rs6000/eabi-ci.S.
-       * config/rs6000/sol-ci.asm: Move to
-       ../../../libgcc/config/rs6000/sol-ci.S.
-       * config/rs6000/sol-cn.asm: Move to
-       ../../../libgcc/config/rs6000/sol-cn.S.
-       * config/rs6000/t-lynx (EXTRA_MULTILIB_PARTS): Remove.
-       (CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/rs6000/t-netbsd (CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S):
-       Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       * config/rs6000/t-ppccomm (EXTRA_MULTILIB_PARTS): Remove.
-       (ecrti.S, ecrtn.S, ncrti.S, ncrtn.S): Remove.
-       ($(T)ecrti$(objext), $(T)ecrtn$(objext), $(T)ncrti$(objext),
-       ($(T)ncrtn$(objext)): Remove.
-       (CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/rs6000/t-vxworks (EXTRA_MULTILIB_PARTS): Remove.
-       * config/rx/t-rx (EXTRA_MULTILIB_PARTS): Remove.
-       * config/score/crti.asm: Move to ../libgcc/config/score/crti.S.
-       * config/score/crtn.asm: Move to ../libgcc/config/score/crtn.S.
-       * config/score/t-score-elf: Remove.
-       * config/sh/crt1.asm: Move to ../libgcc/config/sh/crt1.S.
-       * config/sh/crti.asm: Move to ../libgcc/config/sh/crti.S.
-       * config/sh/crtn.asm: Move to ../libgcc/config/sh/crtn.S.
-       * config/sh/lib1funcs-4-300.asm: Move to
-       ../../../libgcc/config/sh/lib1funcs-4-300.S.
-       * config/sh/lib1funcs-Os-4-200.asm: Move to
-       ../libgcc/config/sh/lib1funcs-Os-4-200.S.
-       * config/sh/t-elf: Remove.
-       * config/sh/t-linux (EXTRA_MULTILIB_PARTS): Remove.
-       * config/sh/t-linux64: Remove.
-       * config/sh/t-netbsd (EXTRA_MULTILIB_PARTS): Remove.
-       * config/sh/t-sh ($(T)crt1.o, $(T)crti.o, $(T)crtn.o): Remove.
-       (IC_EXTRA_PARTS, OPT_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Remove.
-       ($(T)ic_invalidate_array_4-100.o)
-       ($(T)libic_invalidate_array_4-100.a)
-       ($(T)ic_invalidate_array_4-200.o)
-       ($(T)libic_invalidate_array_4-200.a, $(T)ic_invalidate_array_4a.o)
-       ($(T)libic_invalidate_array_4a.a, $(T)sdivsi3_i4i-Os-4-200.o)
-       ($(T)udivsi3_i4i-Os-4-200.o, $(T)unwind-dw2-Os-4-200.o)
-       ($(T)libgcc-Os-4-200.a, $(T)div_table-4-300.o)
-       ($(T)libgcc-4-300.a): Remove.
-       * config/sh/t-superh: Remove.
-       * config/sh/t-vxworks (EXTRA_MULTILIB_PARTS): Remove.
-       * config/sparc/t-linux64 (CRTSTUFF_T_CFLAGS): Remove.
-       * config/spu/cache.S: Move to ../libgcc/config/spu.
-       * config/spu/cachemgr.c: Move to ../libgcc/config/spu.
-       * config/spu/t-spu-elf (CRTSTUFF_T_CFLAGS): Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       ($(T)cachemgr.o, $(T)cachemgr_nonatomic.o, $(T)libgcc_%.a): Remove.
-       ($(T)cache8k.o, $(T)cache16k.o, $(T)cache32k.o, $(T)cache32k.o)
-       ($(T)cache64k.o, $(T)cache128k.o): Remove.
-       * config/t-freebsd (CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/t-libc-ok: Remove.
-       * config/t-linux (CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/t-lynx (CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/t-netbsd: Remove.
-       * config/t-svr4 (CRTSTUFF_T_CFLAGS_S): Remove.
-       * config/t-vxworks (EXTRA_MULTILIB_PARTS): Remove.
-       * config/vms/t-vms (VMS_EXTRA_PARTS): Remove.
-       ($(T)vcrt0.o, $(T)pcrt0.o): Remove.
-       * config/vms/vms-ucrt0.c: Move to ../libgcc/config/vms.
-       * config/xtensa/crti.asm: Move to ../libgcc/config/xtensa/crti.S.
-       * config/xtensa/crtn.asm: Move to ../libgcc/config/xtensa/crtn.S.
-       * config/xtensa/t-elf (CRTSTUFF_T_CFLAGS, CRTSTUFF_T_CFLAGS_S): Remove.
-       (EXTRA_MULTILIB_PARTS): Remove.
-       * config/xtensa/t-linux: Remove.
-       * config/xtensa/t-xtensa ($(T)crti.o, $(T)crtn.o): Remove.
-
-2011-11-02  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.c (bdesc_args) [IX86_BUILTIN_CVTTPD2DQ256]: Use
-       CODE_FOR_fix_truncv4dfv4si2, not CODE_FOR_fix_truncv4sfv4si2.
-
-2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       PR translation/45116
-       * Makefile.in (slibdir): Remove, don't export.
-       (SHLIB_NM_FLAGS): Remove.
-       (libgcc.mvars): Don't emit SHLIB_LINK, SHLIB_INSTALL,
-       SHLIB_DLLDIR, SHLIB_EXT, SHLIB_MKMAP, SHLIB_MKMAP_OPTS,
-       SHLIB_MAPFILES, SHLIB_NM_FLAGS.
-       (DRIVER_DEFINES): Test SHLIB instead of SHLIB_LINK.
-       (gcc.o): Pass SHLIB instead of SHLIB_LINK.
-       (gccspec.o): Likewise.
-       (installdirs): Don't create $(DESTDIR)$(slibdir).
-       * configure.ac (slibdir): Remove.
-       * configure: Regenerate.
-       * libgcc-libsystem.ver: Move to ../libgcc/config.
-       * mkmap-flat.awk, mkmap-symver.awk: Move to ../libgcc.
-       * config/libgcc-glibc.ver: Move to ../libgcc/config.
-       * config/t-libunwind (SHLIB_LC): Remove.
-       * config/t-linux (SHLIB_MAPFILES): Remove.
-       * config/t-slibgcc-dummy: Rename to config/t-slibgcc.
-       * config/t-slibgcc-elf-ver: Remove.
-       * config/t-slibgcc-libgcc, config/t-slibgcc-nolc-override: Move to
-       ../libgcc/config.
-       * config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: Move
-       to ../libgcc/config/alpha.
-       * config/alpha/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
-       SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_SYMVEC,
-       SHLIB_SYMVECX2, SHLIB_LINK): Remove.
-       * config/arm/libgcc-bpabi.ver: Move to ../libgcc/config/arm.
-       * config/arm/t-bpabi (SHLIB_MAPFILES): Remove.
-       * config/arm/t-netbsd (SHLIB_EXT, SHLIB_NAME, SHLIB_SONAME,
-       SHLIB_OBJS, SHLIB_LINK, SHLIB_INSTALL): Remove.
-       * config/arm/t-symbian (SHLIB_LC): Remove.
-       * config/bfin/libgcc-bfin.ver: Move to
-       ../libgcc/config/bfin/libgcc-glibc.ver.
-       * config/bfin/t-bfin-linux (SHLIB_MAPFILES): Remove.
-       * config/c6x/libgcc-c6xeabi.ver: Move to
-       ../libgcc/config/c6x/libgcc-eabi.ver.
-       * config/c6x/t-c6x-elf (SHLIB_MAPFILES): Remove.
-       * config/cris/libgcc.ver: Move to
-       ../libgcc/config/cris/libgcc-glibc.ver.
-       * config/cris/t-linux (SHLIB_MAPFILES): Remove.
-       * config/frv/libgcc-frv.ver: Move to ../libgcc/config/frv.
-       * config/frv/t-linux (SHLIB_MAPFILES): Remove.
-       * config/i386/darwin-libgcc.10.4.ver: Move to
-       ../libgcc/config/i386/libgcc-darwin.10.4.ver.
-       * config/i386/darwin-libgcc.10.5.ver: Move to
-       ../libgcc/config/i386/libgcc-darwin.10.5.ver.
-       * config/i386/libgcc-glibc.ver: Move to ../libgcc/config/i386.
-       * config/i386/t-cygming (SHLIB_EXT, SHLIB_IMPLIB, SHLIB_SOVERSION,
-       SHLIB_SONAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_DIR, SHLIB_SLIBDIR_QUAL)
-       SHLIB_PTHREAD_CFLAG, SHLIB_PTHREAD_LDFLAG, SHLIB_LINK,
-       SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MKMAP_OPTS, SHLIB_MAPFILES): Remove.
-       * config/i386/t-cygwin (SHLIB_LC, SHLIB_EH_EXTENSION,
-       SHLIB_IMPLIB, SHLIB_SONAME, SHLIB_MKMAP_OPTS): Remove.
-       * config/i386/t-dlldir, config/i386/t-dlldir-x: Move to
-       ../libgcc/config/i386.
-       * config/i386/t-dw2-eh, config/i386/t-sjlj-eh: Move to
-       ../libgcc/config/i386.
-       * config/i386/t-linux: Move to ../libgcc/config/i386.
-       * config/i386/t-mingw-pthread: Move to ../libgcc/config/i386.
-       * config/i386/t-mingw-w32 (SHLIB_LC): Remove.
-       * config/i386/t-mingw-w64: Likewise.
-       * config/i386/t-mingw32: Remove.
-       * config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: Move
-       to ../libgcc/config/ia64.
-       * config/ia64/t-glibc: Remove.
-       * config/ia64/t-hpux (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL): Remove.
-       * config/ia64/t-ia64 (SHLIB_MAPFILES): Remove.
-       * config/ia64/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
-       SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_LINK): Remove.
-       * config/ia64/vms_symvec_libgcc_s.opt: Remove.
-       * config/m32r/libgcc-glibc.ver: Move to ../libgcc/config/m32r.
-       * config/m32r/t-linux (SHLIB_MAPFILES): Remove.
-       * config/m68k/t-slibgcc-elf-ver: Move to ../libgcc/config/m68k.
-       * config/mips/t-libgcc-mips16 (SHLIB_MAPFILES): Remove.
-       * config/pa/t-hpux-shlib: Move to ../libgcc/config/pa/t-slibgcc-hpux.
-       * config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver:
-       Move to ../libgcc/config/pa.
-       * config/rs6000/darwin-libgcc.10.4.ver: Move to
-       ../libgcc/config/rs6000/libgcc-darwin.10.4.ver.
-       * config/rs6000/darwin-libgcc.10.5.ver: Move to
-       ../libgcc/config/rs6000/libgcc-darwin.10.5.ver.
-       * config/rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL,
-       SHLIB_LIBS, SHLIB_MKMAP, SHLIB_NM_FLAGS, AR_FLAGS_FOR_TARGET): Remove.
-       * config/rs6000/t-aix52: Likewise.
-       * config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: Move to
-       ../libgcc/config/sh.
-       * config/sparc/libgcc-sparc-glibc.ver: Move to
-       ../libgcc/config/sparc/libgcc-glibc.ver.
-       * config/sparc/t-linux: Move to ../libgcc/config/sparc.
-       * config/xtensa/t-linux (SHLIB_MAPFILES): Remove.
-       * config/xtensa/libgcc-xtensa.ver: Move to
-       ../libgcc/config/xtensa/libgcc-glibc.ver.
-       * config.gcc (*-*-freebsd*): Replace t-slibgcc-elf-ver with
-       t-slibgcc in tmake_file.
-       Remove t-slibgcc-nolc-override for *-*-freebsd[34],
-       *-*-freebsd[34].* with pthreads.
-       (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu,
-       *-*-knetbsd*-gnu, *-*-gnu*, *-*-kopensolaris*-gnu): Replace
-       t-slibgcc-elf-ver with t-slibgcc in tmake_file.
-       (*-*-netbsd*): Likewise.
-       (*-*-solaris2*): Replace t-slibgcc-dummy with t-slibgcc in tmake_file.
-       (*-*-*vms*): Add t-slibgcc to tmake_file.
-       (alpha*-*-linux*): Remove alpha/t-linux from tmake_file.
-       (alpha*-dec-osf5.1*): Replace t-slibgcc-dummy with t-slibgcc in
-       tmake_file.
-       (arm*-*-linux*): Remove t-slibgcc-libgcc from tmake_file for
-       arm*-*-linux-*eabi.
-       (bfin*-linux-uclibc*): Replace t-slibgcc-dummy with t-slibgcc in
-       tmake_file.
-       (crisv32-*-linux*, cris-*-linux*): Likewise.
-       (hppa*-*-linux*): Remove t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver,
-       pa/t-slibgcc-dwarf-ver from tmake_file.
-       (hppa[12]*-*-hpux10*): Replace pa/t-hpux-shlib with t-slibgcc in
-       tmake_file.
-       Remove pa/t-slibgcc-sjlj-ver, pa/t-slibgcc-dwarf-ver from tmake_file.
-       (hppa*64*-*-hpux11*): Likewise.
-       (hppa[12]*-*-hpux11*): Likewise.
-       (i[34567]86-*-darwin*): Replace t-slibgcc-dummy in t-slibgcc in
-       tmake_file.
-       (x86_64-*-darwin*): Likewise.
-       (i[34567]86-*-cygwin*): Remove tmake_eh_file, tmake_dlldir_file.
-       Add t-slibgcc to tmake_file.
-       (i[34567]86-*-mingw*, x86_64-*-mingw*): Likewise.
-       Remove i386/t-mingw32 from tmake_file unless x86_64-w64-*,
-       i[34567]86-w64-*.
-       Remove i386/t-mingw-pthread from tmake_file.
-       (ia64*-*-linux*): Remove ia64/t-glibc from tmake_file.
-       (ia64*-*-hpux*): Add t-slibgcc to tmake_file.
-       (ia64-hp-*vms*): Likewise.
-       (m32r-*-linux*): Replace t-slibgcc-elf-ver with t-slibgcc in
-       tmake_file.
-       (m32rle-*-linux*): Likewise.
-       (m68k-*-linux*): Remove m68k/t-slibgcc-elf-ver from tmake_file.
-       (microblaze*-linux*): Remove t-slibgcc-elf-ver,
-       t-slibgcc-nolc-override from tmake_file.
-       (mips-sgi-irix6.5*): Replace t-slibgcc-dummy with t-slibgcc in
-       tmake_file.
-       (powerpc-*-darwin*): Likewise.
-       (powerpc64-*-darwin*): Likewise.
-       (powerpc-*-freebsd*): Remove t-slibgcc-libgcc from tmake_file.
-       (powerpc-*-linux*, powerpc64-*-linux*): Likewise.
-       (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
-       t-slibgcc to tmake_file.
-       (rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
-       (rs6000-ibm-aix5.2.*, powerpc-ibm-aix5.2.*): Likewise.
-       (rs6000-ibm-aix5.3.*, powerpc-ibm-aix5.3.*): Likewise.
-       (rs6000-ibm-aix[6789].*, powerpc-ibm-aix[6789].*): Likewise.
-       (sparc-*-linux*): Remove sparc/t-linux from tmake_file.
-       (sparc64-*-linux*): Likewise.
-       (tic6x-*-uclinux): Replace t-slibgcc-elf-ver with t-slibgcc in
-       tmake_file.
-       (i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu,
-       x86_64-*-kfreebsd*-gnu, i[34567]86-*-gnu*): Remove i386/t-linux
-       from tmake_file.
-
-2011-11-02  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50902
-       * tree-vect-stmts.c (vectorizable_load): Properly convert
-       an invariant initializer element.
-
-2010-11-02  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50890
-       * gimple.h (gimple_fold_call): Remove.
-       * gimple-fold.c (fold_stmt_1): Move all call related code to ...
-       (gimple_fold_call): ... here.  Make static.  Update the
-       cannot-inline flag on direct calls.
-       * ipa-inline.c (early_inliner): Copy the cannot-inline flag
-       from the statements to the edges.
-
-2011-11-01  Ian Lance Taylor  <iant@google.com>
-
-       * godump.c (struct macro_hash_value): Define.
-       (macro_hash_hashval): New static function.
-       (macro_hash_eq, macro_hash_del): New static functions.
-       (go_define): Use macro_hash_value to store values in macro_hash.
-       Replace an old value on a redefinition.  Don't print anything to
-       go_dump_file.
-       (go_undef): Delete the entry from the hash table.
-       (go_output_typedef): For an enum, use macro_hash_value, and don't
-       print anything to go_dump_file.
-       (go_print_macro): New static function.
-       (go_finish): Traverse macro_hash with go_print_macro.
-       (dump_go_spec_init): Update macro_hash creation for macro_hash_value.
-
-2011-11-02  Alan Modra  <amodra@gmail.com>
-
-       * config/rs6000/rs6000.c (rs6000_code_end): Declare ATTRIBUTE_UNUSED.
-
-2011-11-01  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       PR c++/44277
-       * doc/invoke.texi: Document -Wzero-as-null-pointer-constant.
-
-2011-11-01  Andrew Stubbs  <ams@codesourcery.com>
-
-       * config/arm/bpabi.h (BE8_LINK_SPEC): Recognize generic-armv7 tuning.
-
-2011-11-01  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.md (splitters for int-float conversion): Use
-       SUBREG_REG on SUBREGs in splitter constraints.
-
-2011-11-01  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/i386-protos.h (ix86_expand_adjust_ufix_to_sfix_si): New
-       prototype.
-       * config/i386/i386.c (ix86_expand_adjust_ufix_to_sfix_si): New
-       function.
-       * config/i386/sse.md (fixuns_trunc<mode><sseintvecmodelower>2): Use it.
-       (ssepackfltmode): New mode attr.
-       (vec_pack_ufix_trunc_<mode>): New expander.
-
-2011-11-01  Uros Bizjak  <ubizjak@gmail.com>
-
-       PR target/50940
-       * config/i386/i386.md (floatsi<mode>2_vector_sse_with_temp splitter):
-       Compare <ssevecmode>mode to V4SFmode, not V4SImode.
-
-2011-11-01  Peter Bergner  <bergner@vnet.ibm.com>
-
-       * config.gcc (powerpc*-*-linux*): Add powerpc*-*-linux*ppc476* variant.
-       * config/rs6000/476.h: New file.
-       * config/rs6000/476.opt: Likewise.
-       * config/rs6000/rs6000.h (TARGET_LINK_STACK): New define.
-       (SET_TARGET_LINK_STACK): Likewise.
-       (TARGET_ASM_CODE_END): Define.
-       * config/rs6000/rs6000.c (rs6000_option_override_internal): Enable
-       TARGET_LINK_STACK for -mtune=476 and -mtune=476fp.
-       (rs6000_legitimize_tls_address): Emit the link stack preserving GOT
-       code if TARGET_LINK_STACK.
-       (rs6000_emit_load_toc_table): Likewise.
-       (output_function_profiler): Likewise
-       (macho_branch_islands): Likewise
-       (machopic_output_stub): Likewise
-       (get_ppc476_thunk_name): New function.
-       (rs6000_code_end): Likewise.
-       * config/rs6000/rs6000.md (load_toc_v4_PIC_1, load_toc_v4_PIC_1b):
-       Convert to a define_expand.
-       (load_toc_v4_PIC_1_normal): New define_insn.
-       (load_toc_v4_PIC_1_476): Likewise.
-       (load_toc_v4_PIC_1b_normal): Likewise.
-       (load_toc_v4_PIC_1b_476): Likewise.
-
-2011-11-01  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/50910
-       * config/avr/avr.opt (-mbranch-cost=): New option.
-       * config/avr/avr.h (BRANCH_COST): Define to avr_branch_cost.
-       * config/avr/avr.c (avr_rtx_costs_1): Adjust [U]DIV/[U]MOD costs.
-       * config/avr/avr.md (*addqi3.lt0, *addhi3.lt0, *addsi3.lt0): New insns.
-       (*addhi3_zero_extend1): Remove % in constraint of operand 1.
-       (*addhi3.sign_extend1, *subhi3.sign_extend2): New insns.
-
-2011-11-01  Tom de Vries  <tom@codesourcery.com>
-
-       PR tree-optimization/50908
-       * tree-ssa-tail-merge.c (update_vuses): Now that edges are removed
-       before update_vuses, test for 1 predecessor rather than two.
-       (delete_block_update_dominator_info): New function, part of it factored
-       out of ...
-       (replace_block_by): Use delete_block_update_dominator_info.  Call
-       update_vuses after deleting bb1 and updating dominator info, instead of
-       before.
-
-2011-11-01  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.c (vector_init_faligndata): New function.
-       (sparc_expand_vector_init): Use it for V4HImode on VIS1.
-
-       * config/sparc/sparc.c (sparc_expand_vcond): New function.
-       * config/sparc/sparc-protos.h (sparc_expand_vcond): Declare it.
-       * config/sparc/sparc.md (vcond<mode><mode>): New VIS3 expander.
-       (vconduv8qiv8qi): Likewise.
-
-2011-11-01  Alexandre Oliva  <aoliva@redhat.com>
-
-       PR debug/50869
-       * cselib.c (cfa_base_preserved_regno): Initialize.
-       (cselib_expand_value_rtx_1): Don't expand it.
-       * var-tracking.c (vt_expand_var_loc_chain): Initialize depth.
-       Check it's only zero if result is NULL.
-
-2011-11-01  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (fixuns_trunc<mode><sseintvecmodelower>2): New
-       expander.
-
-       * config/i386/sse.md (sseintvecmode): Remove duplicate modes.
-       (sseintvecmodelower): New mode iterator.
-       (floatv8siv8sf2, floatunsv4siv4sf2): Macroize into...
-       (float<sseintvecmodelower><mode>2): ... this using VF1 iterator.
-       (floatunsv4siv4sf2): Macroize into...
-       (floatuns<sseintvecmodelower><mode>2): ... this using VF1 iterator.
-
-2011-10-31  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.md (cmask patterns): Allow zero operand.
-
-       * dwarf2out.c (cached_next_real_insn): New.
-       (dwarf2out_end_epilogue): Set it to NULL_RTX.
-       (dwarf2out_var_location): Remove cached_next_real_insn local static.
-
-2011-10-31  Richard Henderson  <rth@redhat.com>
-
-       * config/i386/sse.md (floatv8siv8sf2): Rename from avx_cvtdq2ps256.
-       (floatv4siv4sf2): Rename from sse2_cvtdq2ps.
-       (floatunsv4siv4sf2): Rename from sse2_cvtudq2ps.
-       (fix_truncv8sfv8si2): Rename from avx_cvttps2dq256.
-       (fix_truncv4sfv4si2): Rename from sse2_cvttps2dq.
-       (floatv4siv4df2): Rename from avx_cvtdq2pd256.
-       (fix_truncv4dfv4si2): Rename from avx_cvttpd2dq256.
-       (vec_unpacku_float_hi_v8si): Update for insn pattern name changes.
-       * config/i386/i386.md (splitters for int-float conversion): Likewise.
-       * config/i386/i386.c (ix86_split_convert_uns_si_sse): Likewise.
-       (bdesc_args): Likewise.
-       (enum ix86_builtins) [IX86_BUILTIN_CVTUDQ2PS]: Remove.
-       (ix86_vectorize_builtin_conversion): Remove.
-       (TARGET_VECTORIZE_BUILTIN_CONVERSION): Remove.
-
-2011-10-31  Martin Jambor  <mjambor@suse.cz>
-
-       * ipa-prop.c (mark_modified): Moved up in the file.
-       (is_parm_modified_before_call): Renamed to
-       is_parm_modified_before_stmt, moved up in the file.
-       (load_from_unmodified_param): New function.
-       (compute_complex_assign_jump_func): Also attempt to create pass
-       through jump functions for values loaded from (addressable)
-       parameters.
-
-2011-10-31  Jakub Jelinek  <jakub@redhat.com>
-
-       * tree-vect-stmts.c (vectorizable_shift): If op1 is vect_external_def
-       in a loop and has different type from op0, cast it to op0's type
-       before the loop first.  For slp give up.  Don't crash if op1_vectype
-       is NULL.
-
-2011-10-31  Paul Brook  <paul@codesourcery.com>
-
-       * cgraphunit.c: Don't mark clones as static constructors.
-
-2011-10-31  David Edelsohn  <dje.gcc@gmail.com>
-
-       * gcc-ar: Do not include stdio.h.
-
-2011-10-31  Diego Novillo  <dnovillo@google.com>
-
-       * tree-streamer-out.c (pack_ts_base_value_fields): Emit
-       TYPE_ADDR_SPACE.
-       * tree-streamer-in.c (unpack_ts_base_value_fields): Read
-       TYPE_ADDR_SPACE.
-
-2011-10-30  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.c (vector_init_bshuffle): New function.
-       (vector_init_fpmerge): New function.
-       (sparc_expand_vector_init): Use them to improve non-const cases.
-
-       * dwarf2out.c (dwarf2out_var_location): When processing several
-       consecutive location notes, cache the result of next_real_insn().
-
-2011-10-30  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.md (avx2_vec_dup<mode>): Macroize insn from
-       avx2_vec_dup{v8sf,v4sf} using VF1 mode iterator.
-       (vec_dupv4sf): Remove expander.
-       (vec_dupv4sf): Merge from *vec_dupv4sf and *vec_dupv4sf_avx.
-       (vec_dupv2df): Remove expander.
-       (vec_dupv2df): Merge from *vec_dupv2df and *vec_dupv2df_sse3.
-       (*vec_concatv2df): Merge *vec_concatv2df_sse3.
-       (*vec_dupv4si): Merge *vec_dupv4si_avx.
-       (*vec_dupv2di): Merge *vec_dupv2di_sse3.
-
-2011-10-30  Dmitry Plotnikov  <dplotnikov@ispras.ru>
-
-       * tree-cfg.c (verify_gimple_assign_unary): Allow vector conversions.
-       * optabs.c (supportable_convert_operation): New function.
-       * optabs.h (supportable_convert_operation): New prototype.
-       * tree-vect-stmts.c (vectorizable_conversion): Change condition and
-       behavior for NONE modifier case.
-       * tree.h (VECTOR_INTEGER_TYPE_P): New macro.
-
-2011-10-30  Jakub Jelinek  <jakub@redhat.com>
-
-       * tree-vectorizer.h (NUM_PATTERNS): Bump to 9.
-       * tree-vect-patterns.c (vect_recog_vector_vector_shift_pattern): New
-       function.
-       (vect_vect_recog_func_ptrs): Add it.
-
-2011-10-30  David S. Miller  <davem@davemloft.net>
-
-       * reorg.c (label_before_next_insn): New function.
-       (relax_delay_slots): Use it instead of prev_label.
-       * rtl.h (prev_label): Delete declaration.
-       * emit-rtl.c (prev_label): Remove.
-
-2011-10-30  Revital Eres  <revital.eres@linaro.org>
-
-       * modulo-sched.c (generate_prolog_epilog): Mark prolog and epilog
-       as BB_DISABLE_SCHEDULE.
-       (mark_loop_unsched): New function.
-       (sms_schedule): Call it.
-
-2011-10-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
-
-       PR target/50617
-       * config/pa/protos.h (attr_length_save_restore_dltp): Delete.
-       (cmpib_comparison_operator): Likewise.
-       (following_cal, output_and, output_ior, output_move_double,
-       output_fp_move_double, output_block_move, output_block_clear,
-       output_cbranch, output_lbranch, output_bb, output_bvb, output_dbra,
-       output_movb, output_parallel_movb, output_parallel_addb, output_call,
-       output_indirect_call, output_millicode_call, output_mul_insn,
-       output_div_insn, output_mod_insn, singlemove_string,
-       output_arg_descriptor, output_global_address, print_operand,
-       legitimize_pic_address, hppa_encode_label, symbolic_expression_p,
-       fmpyaddoperands, fmpysuboperands, emit_bcond_fp, emit_move_sequence,
-       emit_hpdiv_const, is_function_label_plus_const, jump_in_call_delay,
-       hppa_fpstore_bypass_p, attr_length_millicode_call, attr_length_call,
-       attr_length_indirect_call, return_addr_rtx, function_arg_padding,
-       insn_refs_are_delayed, get_deferred_plabel, ldil_cint_p, zdepi_cint_p,
-       output_ascii, compute_frame_size, and_mask_p, cint_ok_for_move,
-       hppa_expand_prologue, hppa_expand_epilogue, ior_mask_p,
-       compute_zdepdi_operands, output_64bit_and, output_64bit_ior,
-       reloc_needed, magic_milli, shadd_constant_p): Consistently prefix
-       exported functions and variables with "pa_".
-       * config/pa/predicates.md: Likewise.
-       * config/pa/pa64-hpux.h: likewise.
-       * config/pa/som.h: Likewise.
-       * config/pa/elf.h: Likewise.
-       * config/pa/pa64-linux.h: Likewise.
-       * config/pa/pa.md: Likewise.
-       * config/pa/pa.c: Likewise.
-       * config/pa/pa-linux.h: Likewise.
-       * config/pa/pa.h: Likewise.
-       * config/pa/constraints.md: Likewise.
-
-2011-10-29  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.md (xop_sha<mode>3): Rename from xop_ashl<mode>3.
-       Update all uses.
-       (xop_shl<mode>3): Rename from xop_lshl<mode>3.  Update all uses.
-       * config/i386/i386.c: Update all uses.
-
-2011-10-29  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.md (lshlv16qi3): Remove expander.
-       (lshrv16qi3): New expander.
-       (<shift_insn>v16qi3): Macroize expander from ashrv16qi3 and lshrv16qi3
-       using any_shiftrt code iterator. Cleanup.
-       (ashlv16qi3): Cleanup.
-       (ashrv2di3): Ditto.
-
-2011-10-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
-
-       PR target/50691
-       * config/pa/pa.c (emit_move_sequence): Legitimize TLS symbol
-       references.
-       (pa_legitimate_constant_p): Return false for TLS_MODEL_GLOBAL_DYNAMIC
-       and TLS_MODEL_LOCAL_DYNAMIC symbol references.
-
-2011-10-29  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/50887
-       * config/avr/avr.opt (-maccumulate-args): New option.
-       * config/avr/avr.h (STARTING_FRAME_OFFSET): Redefine to
-       avr_starting_frame_offset.
-       (ACCUMULATE_OUTGOING_ARGS): Define to avr_accumulate_outgoing_args.
-       * config/avr/avr.md (UNSPECV_WRITE_SP_IRQ_ON): Remove.
-       (UNSPECV_WRITE_SP_IRQ_OFF): Remove.
-       (UNSPECV_WRITE_SP): New constant.
-       (*addhi3_sp_R): Rewrite to...
-       (*addhi3_sp): ...this new insn.
-       (movhi_sp_r_irq_off, movhi_sp_r_irq_on): Combine to...
-       (movhi_sp_r): ...this new insn.
-       * config/avr/avr-protos.h (avr_accumulate_outgoing_args): New.
-       (avr_starting_frame_offset): New.
-       * config/avr/avr.c (avr_accumulate_outgoing_args): New function.
-       (avr_starting_frame_offset): New function.
-       (avr_outgoing_args_size): New static function.
-       (avr_initial_elimination_offset): Use it.
-       (avr_simple_epilogue): Use it.
-       (avr_asm_function_end_prologue): Use it.
-       (expand_epilogue): Use it.
-       (expand_prologue): Use it.  Break out code to...
-       (avr_prologue_setup_frame): ...this new static function.
-       (avr_can_eliminate): Allow eliminating to frame pointer if there
-       is one.
-       (avr_frame_pointer_required_p): Use frame pointer if target has a
-       nonlocal label.
-       * config/avr/constraints.md (R): Remove.
-       (Csp): New constraint.
-       * config/avr/predicates.md (avr_sp_immediate_operand): Use it.
-
-2011-10-29  Andi Kleen  <ak@linux.intel.com>
-
-       * gcc-ar.c (target_machine): Add.
-
-2011-10-29  Anatoly Sokolov  <aesok@post.ru>
-
-       * config/cris/cris.c (reg_ok_for_base_p, reg_ok_for_index_p,
-       cris_constant_index_p, cris_base_p, cris_index_p,
-       cris_base_or_autoincr_p, cris_bdap_index_p, cris_biap_index_p,
-       cris_legitimate_address_p): New functions.
-       (TARGET_LEGITIMATE_ADDRESS_P): Define.
-       (cris_pic_symbol_type, cris_valid_pic_const): Change arguments type
-       from rtx to const_rtx.
-       (cris_print_operand_address, cris_address_cost,
-       cris_side_effect_mode_ok):  Use
-       cris_constant_index_p, cris_base_p, cris_base_or_autoincr_p,
-       cris_biap_index_p and cris_bdap_index_p.
-       * config/cris/cris.h (CONSTANT_INDEX_P, BASE_P, BASE_OR_AUTOINCR_P,
-       BDAP_INDEX_P, BIAP_INDEX_P, GO_IF_LEGITIMATE_ADDRESS,
-       REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P): Remove.
-       (EXTRA_CONSTRAINT_Q, EXTRA_CONSTRAINT_R, EXTRA_CONSTRAINT_T): Use
-       cris_constant_index_p, cris_base_p, cris_base_or_autoincr_p,
-       cris_biap_index_p and cris_bdap_index_p.
-       * config/cris/cris.md (moversideqi movemsideqi peephole2): Use
-       cris_base_p.
-       * config/cris/cris-protos.h (cris_constant_index_p, cris_base_p,
-       cris_base_or_autoincr_p, cris_bdap_index_p, cris_biap_index_p): New
-       prototype.
-       (cris_pic_symbol_type, cris_valid_pic_const): Update prototype.
-
-2011-10-21  Andi Kleen  <ak@linux.intel.com>
-
-       * ggc-page (PAGE_ALIGN): Add.
-       (alloc_page, ggc_pch_total_size, ggc_pch_this_base, ggc_pch_read):
-       Replace ROUND_UP with PAGE_ALIGN.
-
-2011-10-20  Andi Kleen  <ak@linux.intel.com>
-
-       * ggc-page (alloc_anon): Add check argument.
-       (alloc_page): Add fallback to 1 page allocation.
-       Adjust alloc_anon calls to new argument.
-
-2011-10-18  Andi Kleen  <ak@linux.intel.com>
-
-       * ggc-page (release_pages): First free large continuous
-       chunks in the madvise path.
-
-2011-10-18  Andi Kleen  <ak@linux.intel.com>
-
-       * ggc-page.c (alloc_pages): Always round up entry_size.
-
-2011-10-19  Andi Kleen  <ak@linux.intel.com>
-
-       * Makefile.in (MOSTLYCLEANFILES): Add gcc-ar/nm/ranlib.
-       (native): Add gcc-ar, gcc-nm, gcc-ranlib.
-       (AR_LIBS, gcc-ar, gcc-ar.o, gcc-ranlib, gcc-ranlib.o,
-       gcc-nm, gcc-nm.o, gcc-ranlib.c, gcc-nm.c): Add.
-       (install): Depend on install-gcc-ar.
-       (install-gcc-ar): Add.
-       (uninstall): Uninstall gcc-ar, gcc-nm, gcc-ranlib.
-       * gcc-ar.c: Add new file.
-
-2011-10-28  Pat Haugen <pthaugen@us.ibm.com>
-
-       * config/rs6000/rs6000.md (define_attr "type"): Add vecdouble.
-       * config/rs6000/vsx.md (VStype_simple, VStype_mul): Use vecdouble
-       type for V2DF.
-       (VStype_div): Use vector types for V2DF/V4SF.
-       (VStype_sqrt): Use *sqrt types.
-       (VS_spdp_type): Change type to vecdouble.
-       (*vsx_fmav2df4, *vsx_nfmsv2df4, vsx_xvcvdpsxws, vsx_xvcvdpuxws,
-       vsx_xvcvuxdsp, vsx_xvcvsxwdp, vsx_xvcvuxwdp, vsx_xvcvspsxds,
-       vsx_xvcvspuxds): Likewise.
-       (*vsx_fms<mode>4): Set type via <VStype_mul>.
-       (*vsx_eq_<mode>_p, *vsx_gt_<mode>_p, *vsx_ge_<mode>_p): Set type via
-       <VStype_simple>.
-       * config/rs6000/power7.md (power7-vecstore): Correct VSU pipe.
-       (power7-fpcompare, power7-sdiv, power7-ddiv, power7-sqrt,
-       power7-dsqrt): Correct insn latency.
-       (power7-vecsimple): Add veccmp type and correct dispatch/VSU values.
-       (power7-veccmp): Delete.
-       (power7-vecfloat): Correct latency/dispatch/VSU values.
-       (define_bypass "power7-vecfloat"): Correct latency and types.
-       (power7-veccomplex, power7-vecperm): Correct dispatch/VSU values.
-       (power7-vecdouble, power7-vecfdiv, power7-vecdiv): New.
-
-2011-10-28  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.md (shift_insn): Rename code attribute from
-       shiftrt_insn.  Also handle ashift RTX.
-       (shift): Rename code attribute from shiftrt.  Also handle ashift RTX.
-       (vshift): New code attribute.
-       (<shift_insn>*): Rename from <shiftrt_insn>*. Update asm templates.
-       (any_lshift): Move and rename code iterator from ...
-       * config/i386/sse.md (lshift): ... here.
-       (lshift_insn): Remove code attribute.
-       (lshift): Remove code attribute.
-       (vlshr<mode>3): Use lshiftrt RTX.
-       (vashr<mode>3, ashrv16qi3, ashrv2di3): Use ashiftrt RTX.
-       (vashl<mode>3, ashlv16qi3): Use ashift RTX.
-       (avx2_<lshift>v<mode>): Rename from avx2_<shift_insn>v<mode>.  Use
-       any_lshift code iterator.  Update asm template.
-       (<shift_insn><mode>3): Macroize insn from lshr<mode>3 and ashl<mode>3
-       usign any_lshift code iterator.
-       * config/i386/mmx.md (mmx_<shift_insn><mode>3): Macroize insn from
-       mmx_lshr<mode>3 and mmx_ashl<mode>3 usign any_lshift code iterator.
-       * config/i386/i386.c (bdesc_args) <__builtin_ia32_psll>: Update.
-
-2011-10-28  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/49313
-       * config/avr/avr.md (parityhi2): Expand allowing pseudos.
-       (*parityhi2): New pre-reload insn-and-split to map 16-bit parity
-       to the libgcc insn.
-       (*parityqihi2): Same for 8-bit parity.
-
-2011-10-28  Julian Brown  <julian@codesourcery.com>
-
-       PR rtl-optimization/47918
-       * reload1.c (set_initial_label_offsets): Use initial offsets
-       for labels on the nonlocal_goto_handler_labels chain.
-
-2011-10-28  Iain Sandoe  <iains@gcc.gnu.org>
-
-       * config/rs6000/t-darwin (LIB2FUNCS_STATIC_EXTRA):
-       Move darwin-fpsave.asm from here to ... LIB2FUNCS_EXTRA.
-       (LIB2FUNCS_EXTRA):  Add darwin-gpsave.asm.
-       (TARGET_LIBGCC2_CFLAGS): Ensure that fPIC and -pipe are inherited from
-       config/t-darwin.
-       * config/rs6000/darwin.h (FP_SAVE_INLINE): Adjust to enable.
-       (GP_SAVE_INLINE): Likewise.
-       (SAVE_FP_PREFIX,  SAVE_FP_SUFFIX, RESTORE_FP_PREFIX,
-       RESTORE_FP_SUFFIX): Set to empty strings.
-       * config/rs6000/rs6000.c (rs6000_savres_strategy): Implement for Darwin.
-       (debug_stack_info): Print savres_strategy.
-       (rs6000_savres_routine_name): Implement for Darwin.
-       (rs6000_make_savres_rtx): Adjust used register for Darwin.
-       (rs6000_emit_prologue): Implement out-of-line saves for Darwin.
-       (rs6000_output_function_prologue): Don't emit .extern for Mach-O.
-       (rs6000_emit_epilogue): Implement out-of-line saves for Darwin.
-       * config/rs6000/darwin-gpsave.asm: New file.
-
-2011-10-28  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (VI4SD_AVX2): Removed.
-       (VI48_AVX2, VI128_128, VI48_128, VI48_256): New mode iterators.
-       (vashl<mode>3): Use VI12_128 iterator instead of VI124_128.
-       Add another expander using VI48_128 iterator for
-       TARGET_AVX2 || TARGET_XOP and another using VI48_256 iterator
-       for TARGET_AVX2.
-       (vlshr<mode>3): Likewise.  Change register_operand predicate to
-       nonimmediate_operand on last operand in the VI12_128 expander.
-       (vashr<mode>3): Use VI128_128 iterator instead of VI124_128.
-       (vashrv4si3, vashrv8si3): New expanders.
-       (avx2_ashrvv8si, avx2_ashrvv4si, avx2_<lshift>vv8si,
-       avx2_<lshift>vv2di): Removed.
-       (avx2_ashrv<mode>): New insn with VI4_AVX2 iterator.
-       (avx2_<lshift>v<mode>): Macroize using VI48_AVX2
-       iterator.  Simplify pattern.
-
-2010-10-28  Richard Guenther  <rguenther@suse.de>
-
-       PR driver/50876
-       * lto-wrapper.c (get_options_from_collect_gcc_options):
-       Properly count arguments.
-       (run_gcc): Use an obstack to collect argv, properly separate
-       switches and their arguments.
-
-2011-10-28  Jakub Jelinek  <jakub@redhat.com>
-
-       * tree-vect-stmts.c (vectorizable_shift): Give up if op1 has different
-       vector mode from vectype's mode.
-
-2011-10-28  Chung-Lin Tang  <cltang@codesourcery.com>
-
-       PR rtl-optimization/49720
-       * simplify-rtx.c (simplify_relational_operation_1): Detect
-       infinite recursion condition in "(eq/ne (plus x cst1) cst2)
-       simplifies to (eq/ne x (cst2 - cst1))" case.
-
-2011-10-27  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.md (snedi_special): Only match when not VIS3.
-       (*snedi_zero): Likewise.
-       (*snedi_zero_trunc): Likewise.
-       (snedi_special_vis3): New expander.
-       (*snedi_zero_vis3): New insn.
-       (*snedi_zero_trunc_vis3): Likewise.
-       (*sltu_insn_vis3): Likewise.
-       (*sltu_insn_vis3_trunc): Likewise.
-       (addxc): Likewise.
-       (*addxc_trunc_sp64_vis3): Likewise.
-       * config/sparc/sparc.c (emit_scc_insn): When VIS3 use the
-       gen_snedi_special_vis3 expander, and try GTU/LTU addx based
-       sequences on DImode values.
-
-       * config/sparc/sparc.md (64-bit vector moves): Use 'e' not 'f'
-       constraint.
-
-       * regcprop.c (copyprop_hardreg_forward_1): Reject the
-       transformation when we narrow the mode on big endian.
-
-2011-10-27  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (avx_cvtpd2dq256_2, avx_cvttpd2dq256_2,
-       vec_pack_sfix_trunc_v4df, vec_pack_sfix_v4df): New expanders.
-       (*avx_cvtpd2dq256_2, *avx_cvttpd2dq256_2): New insns.
-
-       * config/i386/i386.c (ix86_print_operand): Handle 'q' and 'x'
-       overrides for -masm=intel memory.
-       * config/i386/sse.md (sse2_cvtdq2pd, sse2_cvtps2pd,
-       sse4_1_<code>v8qiv8hi2, avx2_<code>v8qiv8si2,
-       sse4_1_<code>v4hiv4si2, avx2_<code>v4hiv4di2,
-       sse4_1_<code>v2siv2di2): Use %q1 instead of %1 for -masm=intel.
-       (sse4_1_<code>v4qiv4si2, avx2_<code>v4qiv4di2,
-       sse4_1_<code>v2hiv2di2): Use %k1 instead of %1 for -masm=intel.
-       (sse4_1_<code>v2qiv2di2): Use %w1 instead of %1 for -masm=intel.
-
-2011-10-27  Martin Jambor  <mjambor@suse.cz>
-
-       * ipa-prop.c (compute_pass_through_member_ptrs): Rename parm_info
-       to parm_ainfo.
-       (ipa_compute_jump_functions_for_edge): Likewise.
-       (ipa_compute_jump_functions): Likewise.
-       (ipa_analyze_indirect_call_uses): Likewise.
-       (ipa_analyze_call_uses): Likewise.
-       (ipa_analyze_params_uses): Likewise.
-       (ipa_analyze_node): Likewise.
-
-2011-10-27  Uros Bizjak  <ubizjak@gmail.com>
-
-       PR target/50875
-       * config/i386/sse.md (*avx_unpcklpd256): Remove extra insn
-       constraints.  Change alternative 1 to "x,m,1".
-
-2011-10-27  Jakub Jelinek  <jakub@redhat.com>
-
-       * Makefile.in (build/gencheck.o): Depend on tree.def and
-       c-family/c-common.def.
-
-       * tree-ssa-strlen.c: Include expr.h.
-       (get_stridx): Don't use c_strlen, instead use string_constant
-       and compute string length from it.
-       * Makefile.in (tree-ssa-strlen.o): Depend on $(EXPR_H).
-
-2011-10-27  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR rtl-optimization/46603
-       PR bootstrap/50879
-       * reload.c (push_reload): In the out case, restore previous behavior
-       for subregs that don't have word mode.
-
-2011-10-27  Ian Lance Taylor  <iant@google.com>
-
-       * cppdefault.c: Undef NATIVE_SYSTEM_HEADER_DIR if
-       CROSS_DIRECTORY_STRUCTURE is defined and TARGET_SYSTEM_ROOT is not.
-       (cpp_include_defaults): Only use NATIVE_SYSTEM_HEADER_DIR if it is
-       defined.
-
-2011-10-27  Richard Henderson  <rth@redhat.com>
-
-       * optabs.c (expand_vec_perm): Use the correct mode for scaling the
-       selector.  Save the qimode constant selector for later use by the
-       qimode vec_perm pattern.
-
-2011-10-27  Bernd Schmidt  <bernds@codesourcery.com>
-
-       * config/c6x/c6x.c (unit_req_imbalance, res_mii): Cast the first arg
-       to unit_req_factor to the right enum type.
-       (get_unit_operand_masks, reshuffle_units, try_rename_operands,
-       hwloop_optimize): Remove unused variables.
-
-2010-10-27  Richard Guenther  <rguenther@suse.de>
-
-       PR middle-end/50731
-       * tree-vect-generic.c (do_binop): Handle scalar operands.
-
-2011-08-27  Uros Bizjak  <ubizjak@gmail.com>
-
-       PR target/37191
-       * config/i386/sse.md (*vec_extract_v4sf_mem): Avoid combining registers
-       from different units in a single alternative.
-
-2011-10-26  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.c (emit_scc_insn): Force attempt of v9 sequences
-       if we're comparing DImode and comparison is other than EQ or NE.
-
-       * config/sparc/sparc.c (emit_scc_insn): Do not try v9 sequences until
-       LEU/LTU/GEU/GTU is attempted.
-       * config/sparc/sparc.md (*neg_snesi_sign_extend): New 64-bit insn
-       and split.
-       (*neg_seqsi_sign_extend): Likewise.
-       (*sltu_extend_sp64, *neg_sltu_extend_sp64, *sgeu_extend_sp64,
-       *neg_sgeu_extend_sp64): New insns.
-
-       * config/sparc/sparc-protos.h (sparc_expand_conditional_move): Declare.
-       * config/sparc/sparc.md (mov<I:mode>cc, mov<F:mode>cc): Call it.
-       (*mov<I:mode>_cc_v9): Normalize to expect operand 0 always in operand 4.
-       (*mov<I:mode>_cc_reg_sp64): Likewise.
-       (*movsf_cc_v9): Likewise.
-       (*movsf_cc_reg_sp64): Likewise.
-       (*movdf_cc_v9): Likewise.
-       (*movdf_cc_reg_sp64): Likewise.
-       (*movtf_cc_hq_v9): Likewise.
-       (*movtf_cc_reg_hq_sp64): Likewise.
-       (*movtf_cc_v9): Likewise.
-       (*movtf_cc_reg_sp64): Likewise.
-       * config/sparc/sparc.c (sparc_expand_conditional_move): New function.
-       (sparc_print_operand): Delete 'c' and 'd' handling, no longer used.
-
-2011-10-26  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * reload.c (reload_inner_reg_of_subreg): Change type of return value
-       and type of OUTPUT parameter to bool and adjust.  Document MODE and
-       OUTPUT parameters.  Use HARD_REGISTER_P.  Reorder final condition
-       and improve associated comment.
-       (push_reload): Clarify and update comments about reloading of subregs.
-       Adjust calls to reload_inner_reg_of_subreg.  Compute the class upfront
-       for the reloading of subregs in the out case as well.
-
-2011-10-26  Alexandre Oliva  <aoliva@redhat.com>
-
-       PR debug/50826
-       * var-tracking.c (rtx_debug_expr_p): New.
-       (use_type): Don't use debug exprs to track non-VTA variables.
-
-2011-10-26  Jeff Law  <law@redhat.com>
-
-       * doc/invoke.texi (sink-frequency-threshold): Document.
-       * tree-ssa-sink.c: Include params.h.
-       (select_best_block): New function.
-       (statement_sink_location): Use it.
-       * params.def (SINK_FREQUENCY_THRESHOLD): New PARAM.
-
-2011-10-26  Iain Sandoe  <iains@gcc.gnu.org>
-
-       PR target/48108
-       * config/darwin.c (top level): Amend comments concerning LTO output.
-       (lto_section_num): New variable.  (darwin_lto_section_e): New GTY.
-       (LTO_SECTS_SECTION, LTO_INDEX_SECTION): New.
-       (LTO_NAMES_SECTION): Rename.
-       (darwin_asm_named_section): Record LTO section counts and switches
-       in a vec of darwin_lto_section_e.
-       (darwin_file_start): Remove unused code.
-       (darwin_file_end): Put an LTO section termination label.  Handle
-       output of the wrapped LTO sections, index and names table.
-
-2011-10-26  Alan Modra  <amodra@gmail.com>
-
-       * config/rs6000/rs6000.c (rs6000_make_savres_rtx): Delete unneeded
-       declaration.
-       (rs6000_emit_stack_reset): Only return insn emitted when it adjusts sp.
-       (rs6000_make_savres_rtx): Rename to rs6000_emit_savres_rtx.  Use
-       simple_return in pattern, emit instruction, and set jump_label.
-       (rs6000_emit_prologue): Update for rs6000_emit_savres_rtx.  Use
-       simple_return rather than return.
-       (emit_cfa_restores): New function.
-       (rs6000_emit_epilogue): Emit cfa_restores when flag_shrink_wrap.
-       Add missing cfa_restores for SAVE_WORLD.  Add missing LR cfa_restore
-       when using out-of-line gpr restore.  Add missing LR and FP regs
-       cfa_restores for out-of-line fpr restore.  Consolidate code setting
-       up cfa_restores.  Formatting.  Use LR_REGNO define.
-       (rs6000_output_mi_thunk): Use simple_return rather than return.
-       * config/rs6000/rs6000.md (sibcall*, sibcall_value*): Likewise.
-       (return_internal*): Likewise.
-       (any_return, return_pred, return_str): New iterators.
-       (return, conditional return insns): Provide both return and
-       simple_return variants.
-       * config/rs6000/rs6000.h (EARLY_R12, LATE_R12): Define.
-       (REG_ALLOC_ORDER): Move r12 before call-saved regs when FIXED_R13.
-       Move r11 and r0 later to suit shrink-wrapping.
-
-2011-10-26  Richard Guenther  <rguenther@suse.de>
-
-       * lto-wrapper.c (run_gcc): Properly init/free obstack.
-
-2011-10-26  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/i386.md (UNSPEC_VSIBADDR): New.
-       * config/i386/predicates.md (vsib_address_operand,
-       vsib_mem_operator): New predicates.
-       * config/i386/i386.c (ix86_print_operand_address): Handle
-       UNSPEC_VSIBADDR addresses.
-       * config/i386/sse.md (avx2_gathersi<mode>, avx2_gatherdi<mode>,
-       avx2_gatherdi<mode>256): Adjust expanders to use MEM with
-       UNSPEC_VSIBADDR address.
-       (*avx2_gathersi<mode>, *avx2_gatherdi<mode>, *avx2_gatherdi<mode>256):
-       Adjust insns to use MEM with UNSPEC_VSIBADDR address.
-
-2011-10-26  Tom de Vries  <tom@codesourcery.com>
-
-       PR tree-optimization/50763
-       * tree-ssa-tail-merge.c (replace_block_by): Update vops if phi_vuse1 or
-       phi_vuse2 is NULL_TREE only if bb1 dominates or is dominated by bb2.
-
-2011-10-26  Richard Guenther  <rguenther@suse.de>
-
-       PR lto/41844
-       * Makefile.in (lto-wrapper): Depend on and link against opts-common.o.
-       (lto-wrapper.o): Depend on $(OPTS_H) and $(OPTIONS_H).
-       * lto-wrapper.c (get_options_from_collect_gcc_options): New function.
-       (run_gcc): Use it.  Filter out language specific options.
-
-2011-10-26  Andreas Tobler  <andreast@fgznet.ch>
-
-       * config/i386/freebsd64.h (LINK_SPEC): Emit the same warning as the
-       32-bit target does.
-
-2011-10-25  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       PR driver/46617
-       * gcc.c (main): Fix fatal_error string for translation.
-
-2011-10-25  Ian Lance Taylor  <iant@google.com>
-
-       * tree-eh.c (do_return_redirection): Remove return_value_p
-       parameter.  Change all callers.
-       (lower_try_finally_nofallthru): Remove local return_val.
-       (lower_try_finally_onedest): Likewise.
-       (lower_try_finally_copy): Likewise.
-       (lower_try_finally_switch): Likewise.
-
-2011-10-25  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * config/i386/mmx.md (*mmx_maskmovq): Replace :SI with :P and
-       remove "&& !TARGET_64BIT"
-       (*mmx_maskmovq_rex): Removed.
-
-2011-10-25  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR rtl-optimization/46603
-       * reload.c (push_reload): In the out case, reload the subreg as well
-       as the reg if it has word mode.
-
-2011-10-25  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * dwarf2out.c (add_gnat_descriptive_type_attribute): Temporarily
-       suppress debug info for the parent type.
-
-2011-10-25  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * config/ia64/ia64.c (ia64_profile_hook): Fix thinko.
-
-2011-10-25  Richard Henderson  <rth@redhat.com>
-
-       * config/i386/sse.md (VEC_EXTRACT_EVENODD_MODE): Remove.
-       (vec_extract_even<mode>, vec_extract_odd<mode>): Remove.
-
-       * config/rs6000/altivec.md (vec_extract_evenv8hi,
-       vec_extract_evenv16qi, vec_extract_oddv4si,
-       vec_extract_oddv4sf): Remove.
-
-       * config/spu/spu.md (vec_extract_evenv4si, vec_extract_evenv4sf,
-       vec_extract_evenv8hi, vec_extract_evenv16qi, vec_extract_oddv4si,
-       vec_extract_oddv4sf, vec_extract_oddv8hi, vec_extract_oddv16qi,
-       vec_interleave_highv4sf, vec_interleave_lowv4sf,
-       vec_interleave_highv4si, vec_interleave_lowv4si,
-       vec_interleave_highv8hi, vec_interleave_lowv8hi,
-       vec_interleave_highv16qi, vec_interleave_lowv16qi): Remove.
-
-       * expr.c (expand_expr_real_2) [VEC_EXTRACT_EVEN_EXPR]: Use binop.
-       [VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR]: Likewise.
-       [VEC_INTERLEAVE_LOW_EXPR]: Likewise.
-       * optabs.c (expand_binop): Implement vec_interleave_high_optab,
-       vec_interleave_low_optab, vec_extract_even_optab,
-       vec_extract_odd_optab with expand_vec_perm.
-       (can_vec_perm_for_code_p): New.
-       * optabs.h: Update.
-       * tree-vect-data-refs.c (vect_strided_store_supported): Allow for
-       fallback via can_vec_perm_for_code_p.
-       (vect_strided_load_supported): Likewise.
-       * tree-vect-generic.c (expand_vector_operations_1): Never lower
-       VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR,
-       VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR.
-
-       * target.def (vec_perm_const_ok): Change parameters to mode and
-       array of indicies.
-       * doc/tm.texi: Rebuild.
-       * config/i386/i386.c (ix86_vectorize_vec_perm_const_ok): Change
-       parameters to mode and array of indicies.
-       * expr.c (expand_expr_real_2) [VEC_PERM_EXPR]: Expand operands here.
-       * optabs.c (can_vec_perm_p): Rename from can_vec_perm_expr_p.
-       Change parameters to mode and array of indicies.
-       (expand_vec_perm_1): Rename from expand_vec_perm_expr_1.
-       (expand_vec_perm): Rename from expand_vec_perm_expr.  Change
-       parameters to mode and rtx inputs.  Try lowering to QImode
-       vec_perm_const before trying fully variable permutation.
-       * optabs.h: Update decls.
-       * tree-vect-generic.c (lower_vec_perm): Extract array of indices from
-       VECTOR_CST to pass to can_vec_perm_p.
-       * tree-vect-slp.c (vect_get_mask_element): Change mask parameter type
-       from int pointer to unsigned char pointer.
-       (vect_transform_slp_perm_load): Update for change to can_vec_perm_p.
-       * tree-vect-stmts.c (perm_mask_for_reverse): Likewise.
-
-       * tree.def (VEC_EXTRACT_EVEN_EXPR): Fix typo in text name.
-       (VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR,
-       VEC_INTERLEAVE_LOW_EXPR): Likewise.
-
-2011-10-25  Mike Stump  <mikestump@comcast.net>
-
-       * reload.c (regno_clobbered_p): Fix typo.
-
-2011-10-25  Dodji Seketeli  <dodji@redhat.com>
-
-       * input.c (expand_location): Rewrite using linemap_resolve_location
-       and linemap_expand_location.  Add a comment.
-
-2011-10-25  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/50596
-       * tree-vect-stmts.c (vect_mark_relevant): Only use
-       FOR_EACH_IMM_USE_FAST if lhs is SSA_NAME.
-       (vectorizable_store): If is_pattern_stmt_p look through
-       VIEW_CONVERT_EXPR on lhs.
-       * tree-vect-patterns.c (check_bool_pattern, adjust_bool_pattern):
-       Use unsigned type instead of signed.
-       (vect_recog_bool_pattern): Optimize also stores into bool memory in
-       addition to casts from bool to integral types.
-       (vect_mark_pattern_stmts): If pattern_stmt already has vinfo
-       created, don't create it again.
-
-2011-10-25  Kai Tietz  <ktietz@redhat.com>
-
-       * config/i386/i386.c (ix86_frame_pointer_required): Require
-       frame-pointer, if setjmp is used for 32-bit ms-abi.
-
-2011-10-24  Michael Meissner  <meissner@linux.vnet.ibm.com>
-
-       * builtins.c (set_builtin_user_assembler_name): Remove extra
-       newline added in October 11th, 2011 change.
-
-2011-10-24  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/little-endian.opt: Delete.
-       * config.gcc: Remove references to config/sparc/little-endian.opt
-       * doc/invoke.texi: Remove documentation of -mlittl-endian on sparc.
-       * config/sparc/linux64.h: Delete references to -mlittle-endian.
-       * config/sparc/netbsd-elf.h: Likewise.
-       * config/sparc/openbsd64.h: Likewise.
-       * config/sparc/sparc.h: Likewise.
-       * config/sparc/sp64-elf.h: Likewise and delete overrides for
-       BYTES_BIG_ENDIAN and WORDS_BIG_ENDIAN.
-       * config/sparc/sparc.c (dump_target_flag_bits): Remove reference
-       to MASK_LITTLE_ENDIAN.
-       * config/sparc/sparc.opt (Mask(LITTLE_ENDIAN)): Delete.
-
-       * config/sparc/sparc.md: Only use F, G, and C constraints in FP insns.
-       Only use D, Y, and Z constraints in vector insns.
-
-       * config/sparc/sparc.md (cpu_feature, enabled): New attributes.
-       (*movsi_insn_novis3, *movsi_insn_vis3): Consolidate into one pattern
-       called *movsi_insn.
-       (*movdi_insn_sp32_v9_novis3, *movdi_insn_sp32_v9_vis3): Consolidate
-       into *movdi_insn_sp32.
-       (*movdi_insn_sp64_novis3, *movdi_insn_sp64_vis3): Consolidate into
-       one pattern called *movdi_insn_sp64.
-       (*movsf_insn_novis3, *movsf_insn_vis3, *movsf_insn_no_fpu):
-       Consolidate into one pattern called *movsf_insn.
-       (*movdf_insn_sp32_no_fpu, *movdf_insn_sp32_v9_novis3,
-       *movdf_insn_sp32_v9_vis3, *movdf_insn_sp32_v9_no_fpu): Consolidate
-       into *movdf_insn_sp32.
-       (*movdf_insn_sp64_novis3, *movdf_insn_sp64_vis3,
-       *movdf_insn_sp64_no_fpu): Consolidate into one pattern called
-       *movdf_insn_sp64.
-       (*zero_extendsidi2_insn_sp64_novis3,
-       *zero_extendsidi2_insn_sp64_vis3): Consolidate into one pattern
-       called *zero_extendsidi2_insn_sp64.
-       (*sign_extendsidi2_insn_novis3, *sign_extendsidi2_insn_vis3):
-       Consolidate into one pattern named *sign_extendsidi2_insn.
-       (*mov<VM32:mode>_insn_novis3, *mov<VM32:mode>_insn_vis3):
-       Consolidate into one pattern named *mov<VM32:mode>_insn.
-       (*mov<VM64:mode>_insn_sp64_novis3,
-       *mov<VM64:mode>_insn_sp64_novis3): Consolidate into one pattern
-       named *mov<VM64:mode>_insn_sp64.
-       (*mov<VM64:mode>_insn_sp32_novis3,
-       *mov<VM64:mode>_insn_sp32_vis3): Consolidate into one pattern
-       named *mov<VM64:mode>_insn_sp32.
-
-2011-10-24  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
-
-       * tree-ssa-strlen.c (get_string_length): Change assertion to STPCPY.
-       (zero_length_string): Change assertion to accept strinfo without
-       length but with stmt instead.
-       Set the endptr pointer also if starting a new chain.
-       (adjust_related_strinfos): Ignore strinfos marked for delayed
-       length computation.
-       (handle_builtin_strcpy): Mark earlier strinfo elements also for
-       delayed length computation.
-
-2011-10-24  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/50820
-       Port from 4.6 branch r180379
-       * doc/invoke.texi (AVR Options): New subsubsection to explain EIND
-       handling and indirect jump/calls on devices > 128k.
-
-2011-10-24  Anatoly Sokolov  <aesok@post.ru>
-           Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/49824
-       * doc/extend.texi (Declaring Attributes of Functions):
-       Document OS_main and OS_task attributes.
-       (Specifying Attributes of Variables): Move up
-       subsection "AVR Variable Attributes" as of alphabetical order.
-
-2011-10-24  Richard Guenther  <rguenther@suse.de>
-
-       * tree-vect-stmts.c (vect_get_vec_def_for_operand): Convert constants
-       to vector element type.
-       (vectorizable_assignment): Bail out for non-mode-precision operations.
-       (vectorizable_shift): Likewise.
-       (vectorizable_operation): Likewise.
-       (vectorizable_type_demotion): Likewise.
-       (vectorizable_type_promotion): Likewise.
-       (vectorizable_store): Handle non-mode-precision stores.
-       (vectorizable_load): Handle non-mode-precision loads.
-       (get_vectype_for_scalar_type_and_size): Return a vector type
-       for non-mode-precision integers.
-       * tree-vect-loop.c (vectorizable_reduction): Bail out for
-       non-mode-precision reductions.
-
-2011-10-24  Julian Brown  <julian@codesourcery.com>
-
-       * config/m68k/m68k.c (notice_update_cc): Tighten condition for
-       setting CC_REVERSED for FP comparisons.
-
-2011-10-24  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50838
-       * tree-data-ref.c (dr_analyze_indices): Properly canonicalize
-       a MEM_REF base if we change it.
-
-2011-10-24  Bernd Schmidt  <bernds@codesourcery.com>
-
-       PR bootstrap/50836
-       * rtlanal.c: Swap includes of "hard-reg-set.h" and "rtl.h".
-
-       PR rtl-optimization/50833
-       * function.c (thread_prologue_and_epilogue_insns): Expect the
-       return insn optimization only if optimize.
-
-2011-10-24  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr.c: Break long lines.
-       Define target hooks on the fly if applicable.
-       (TARGET_ASM_FUNCTION_RODATA_SECTION): Remove first definition
-       overridden later.
-       (targetm): Move definition to end of file.
-       (avr_can_eliminate): Make static on the fly.
-       (avr_frame_pointer_required_p): Ditto.
-       (avr_hard_regno_scratch_ok): Ditto.
-       (avr_builtin_setjmp_frame_value): Make static on the fly.
-       Indent according to coding rules.
-       (avr_case_values_threshold): Ditto.
-       (avr_attribute_table): Move down.
-
-2011-10-24  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR tree-optimization/50730
-       * tree-vect-data-refs.c (vect_analyze_data_refs): Stop basic block
-       analysis if encountered unsupported data-ref.
-
-2011-10-23  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.c (sparc_option_override): Remove -mv8plus
-       cpu adjustment.
-       * config/sparc/linux64.h (CC1_SPEC): When defaulting to 64-bit,
-       append -mcpu=v9 when -mv8plus is given.
-
-       * config/sparc/sparc.h (SECONDARY_MEMORY_NEEDED): We can move
-       between float and non-float regs when VIS3.
-       * config/sparc/sparc.c (eligible_for_restore_insn): We can't
-       use a restore when the source is a float register.
-       (sparc_split_regreg_legitimate): When VIS3 allow moves between
-       float and integer regs.
-       (sparc_register_move_cost): Adjust to account for VIS3 moves.
-       (sparc_preferred_reload_class): On 32-bit with VIS3 when moving an
-       integer reg to a class containing EXTRA_FP_REGS, constrain to FP_REGS.
-       (sparc_secondary_reload): On 32-bit with VIS3 when moving between
-       float and integer regs we sometimes need a FP_REGS class
-       intermediate move to satisfy the reload.  When this happens
-       specify an extra cost of 2.
-       (*movsi_insn): Rename to have "_novis3" suffix and add !VIS3 guard.
-       (*movdi_insn_sp32_v9): Likewise.
-       (*movdi_insn_sp64): Likewise.
-       (*movsf_insn): Likewise.
-       (*movdf_insn_sp32_v9): Likewise.
-       (*movdf_insn_sp64): Likewise.
-       (*zero_extendsidi2_insn_sp64): Likewise.
-       (*sign_extendsidi2_insn): Likewise.
-       (*movsi_insn_vis3): New insn.
-       (*movdi_insn_sp32_v9_vis3): New insn.
-       (*movdi_insn_sp64_vis3): New insn.
-       (*movsf_insn_vis3): New insn.
-       (*movdf_insn_sp32_v9_vis3): New insn.
-       (*movdf_insn_sp64_vis3): New insn.
-       (*zero_extendsidi2_insn_sp64_vis3): New insn.
-       (*sign_extendsidi2_insn_vis3): New insn.
-       (TFmode reg/reg split): Make sure both REG operands are float.
-       (*mov<VM32:mode>_insn): Add "_novis3" suffix and !VIS3 guard. Remove
-       easy constant to integer reg alternatives.
-       (*mov<VM64:mode>_insn_sp64): Likewise.
-       (*mov<VM64:mode>_insn_sp32_novis3): Likewise.
-       (*mov<VM32:mode>_insn_vis3): New insn.
-       (*mov<VM64:mode>_insn_sp64_vis3): New insn.
-       (*mov<VM64:mode>_insn_sp32_vis3): New insn.
-       (VM64 reg<-->reg split): New splitter for 32-bit.
-
-       * config/sparc/sparc.c (sparc_split_regreg_legitimate): New function.
-       * config/sparc/sparc-protos.h (sparc_split_regreg_legitimate):
-       Declare it.
-       * config/sparc/sparc.md (DImode reg/reg split): Use it.
-       (DFmode reg/reg split): Likewise.
-
-       * config/sparc/sparc.md (*movdi_insn_sp32_v9): Add alternatives for
-       generating fzero and fone instructions.
-       (DImode const_int --> reg splitter): Only trigger for integer regs.
-
-       * config/sparc/predicates.md (input_operand): Disallow vector
-       constants other than 0 and -1.
-       * config/sparc/sparc.c (sparc_preferred_reload_class): Return
-       NO_REGS for vector constants other than 0 and -1.
-
-       * config/sparc/sparc.h (SPARC_FIRST_INT_REG, SPARC_LAST_INT_REG,
-       SPARC_INT_REG_P): Define.
-       (HARD_REGNO_NREGS): Use SPARC_INT_REG_P.
-       (REGNO_OK_FOR_INDEX_P): Likewise.
-       * config/sparc/sparc.c (gen_df_reg): Likewise.
-       (eligible_for_return_delay): Likewise.
-       (eligible_for_sibcall_delay): Likewise.
-       (sparc_legitimate_address_p): Likewise.
-       (emit_save_or_restore_regs): Likewise.
-       (registers_ok_for_ldd_peep): Likewise.
-       * config/spac/sparc.md (DI mode splitters): Likewise.
-       (SF mode const splitters): Likewise.
-       (DF mode splitters): Likewise.
-       (32-bit DI mode logical op splitters): Likewise.
-
-2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       PR c++/50841
-       Revert:
-       2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       PR c++/50810
-       * doc/invoke.texi ([-Wnarrowing], [-Wc++0x-compat]): Update.
-
-2011-10-23  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/sse.md (avx2_lshl<mode>3): Remove insn pattern.
-       (VI248_256): Remove mode iterator.
-       * config/i386/i386.c (ix86_expand_vec_perm): Use gen_ashlv4di3
-       instead of gen_avx2_lshlv4di3.
-       (bdesc_args): Use CODE_FOR_ashl{v16hi,v8si,v4di}3 instead of
-       CODE_FOR_avx2_lshl{v16hi,v8si,v4di}3.
-
-2011-10-23  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/sse.md (sseintprefix): Rename from gthrfirstp.
-       (<avx_avx2>_maskload<ssemodesuffix><avxsizesuffix>): Delete expander.
-       (<avx_avx2>_maskload<ssemodesuffix><avxsizesuffix>) Merge insn
-       pattern from *avx2_maskload<ssemodesuffix><avxsizesuffix> and
-       *avx_maskload<ssemodesuffix><avxsizesuffix> using V48_AVX mode
-       iterator.  Use sseintprefix mode attribute.
-       (<avx_avx2>_maskstore<ssemodesuffix><avxsizesuffix>): Delete expander.
-       (<avx_avx2>_maskstore<ssemodesuffix><avxsizesuffix>) Merge insn
-       pattern from *avx2_maskstore<ssemodesuffix><avxsizesuffix> and
-       *avx_maskstore<ssemodesuffix><avxsizesuffix> using V48_AVX mode
-       iterator.  Use sseintprefix mode attribute.
-       (*avx2_gathersi<mode>) Use sseintprefix and ssemodesuffix mode
-       attributes.
-       (*avx2_gatherdi<mode>): Ditto.
-       (*avx2_gatherdi<mode>256): Ditto.
-       (VI48_AVX2): Remove mode iterator.
-       (gthrlastfp): Remove mode attribute.
-
-2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       PR c++/50810
-       * doc/invoke.texi ([-Wnarrowing], [-Wc++0x-compat]): Update.
-
-2011-10-23  Tom de Vries  <tom@codesourcery.com>
-
-       PR tree-optimization/50763
-       * tree-ssa-tail-merge.c (same_succ_flush_bb): New function, factored
-       out of ...
-       (same_succ_flush_bbs): Use same_succ_flush_bb.
-       (purge_bbs): Remove argument.  Remove calls to same_succ_flush_bbs,
-       release_last_vdef and delete_basic_block.
-       (unlink_virtual_phi): New function.
-       (update_vuses): Add and use vuse1_phi_args argument.  Set var to
-       SSA_NAME_VAR of vuse1 or vuse2, and use var.  Handle case that
-       def_stmt2 is NULL.  Use phi result as phi arg in case vuse1 or vuse2
-       is NULL_TREE.  Replace uses of vuse1 if vuse2 is NULL_TREE.  Fix code
-       to limit replacement of uses.  Propagate phi argument for phis with a
-       single argument.
-       (replace_block_by): Update vops if phi_vuse1 or phi_vuse2 is NULL_TREE.
-       Set vuse1_phi_args if vuse1 is a phi defined in bb1.  Add
-       vuse1_phi_args as argument to call to update_vuses.  Call
-       release_last_vdef, same_succ_flush_bb, delete_basic_block.  Update
-       CDI_DOMINATORS info.
-       (tail_merge_optimize): Remove argument in call to purge_bbs.  Remove
-       call to free_dominance_info.  Only call calculate_dominance_info once.
-
-2011-10-23  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * fold-const.c (invert_tree_comparison): Always invert EQ_EXPR/NE_EXPR.
-
-       PR tree-optimization/44683
-       * tree-ssa-dom.c (record_edge_info): Record simple equivalences only if
-       we can be sure that there are no signed zeros involved.
-
-2011-10-23  Jan Hubicka  <jh@suse.cz>
-
-       * ipa-inline.c (estimate_badness): Scale up and handle overflows.
-
-2011-10-23  Uros Bizjak  <ubizjak@gmail.com>
-
-       PR target/50788
-       * config/i386/sse.md (<avx_avx2>_maskload<ssemodesuffix><avxsizesuffix>):
-       Remove (match_dup 0).
-       (*avx2_maskload<ssemodesuffix><avxsizesuffix>): New insn pattern.
-       (*avx_maskload<ssemodesuffix><avxsizesuffix>): Ditto.
-       (*avx2_maskstore<ssemodesuffix><avxsizesuffix>): Ditto.
-       (*avx_maskstore<ssemodesuffix><avxsizesuffix>): Ditto.
-       (*avx2_maskmov<ssemodesuffix><avxsizesuffix>): Remove insn pattern.
-       (*avx_maskmov<ssemodesuffix><avxsizesuffix>): Ditto.
-
-2011-10-23  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR tree-optimization/50819
-       * tree-vectorizer.h (vect_analyze_data_ref_dependences): Remove
-       the last argument.
-       * tree-vect-loop.c (vect_analyze_loop_2): Update call to
-       vect_analyze_data_ref_dependences.
-       * tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Remove
-       the last argument.  Check load-after-store dependence for unknown
-       dependencies in basic blocks.
-       (vect_analyze_data_ref_dependences): Update call to
-       vect_analyze_data_ref_dependences.
-       * tree-vect-patterns.c (vect_recog_widen_shift_pattern): Fix typo.
-       * tree-vect-slp.c (vect_bb_vectorizable_with_dependencies): Remove.
-       (vect_slp_analyze_bb_1): Update call to
-       vect_analyze_data_ref_dependences.  Don't call
-       vect_bb_vectorizable_with_dependencies.
-
-2011-10-22  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.h (SECONDARY_INPUT_RELOAD_CLASS,
-       SECONDARY_OUTPUT_RELOAD_CLASS): Delete.
-       * config/sparc/sparc.c (TARGET_SECONDARY_RELOAD): Redefine.
-       (sparc_secondary_reload): New function.
-
-       * config/sparc/sparc.h (sparc_costs): Remove extern decl.
-       (struct processor_costs): Move from here..
-       * config/sparc/sparc.c (struct processor_costs): To here.
-       (sparc_costs): Mark static.
-
-       * config/sparc/sparc.c (short_branch, reg_unused_after): Delete.
-       * config/sparc/sparc-protos.h (short_branch, reg_unused_after):
-       Get rid of declarations.
-
-2011-10-21  Paul Brook  <paul@codesourcery.com>
-
-       * config/c6x/c6x.c (c6x_asm_emit_except_personality,
-       c6x_asm_init_sections): New functions.
-       (TARGET_ASM_EMIT_EXCEPT_PERSONALITY, TARGET_ASM_INIT_SECTIONS): Define.
-
-2011-10-21  Jakub Jelinek  <jakub@redhat.com>
-
-       PR target/50813
-       * config/i386/i386.c (expand_vec_perm_even_odd_1): Handle
-       V4DImode and V8SImode for !TARGET_AVX2.
-
-2011-10-21  Bernd Schmidt  <bernds@codesourcery.com>
-
-       PR bootstrap/50825
-       * sched-deps.c (add_dependence): If not doing predication, promote
-       REG_DEP_CONTROL to REG_DEP_ANTI.
-
-2011-10-21  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr.h (LEGITIMIZE_RELOAD_ADDRESS): Pass address of X
-       instead of X to avr_legitimize_reload_address.
-       * config/avr/avr-protos.h (avr_legitimize_reload_address): Change
-       first argument's type from rtx to rtx*.
-       * config/avr/avr.c (avr_legitimize_reload_address): Ditto.
-       Pass PX to push_reload instead of &X.  Change log messages for
-       better distinction.
-
-2011-10-21  Roland Stigge  <stigge@antcom.de>
-
-       PR translation/47064
-       * params.def: Fix typo "compilatoin" -> "compilation".
-
-2011-10-21  H.J. Lu  <hongjiu.lu@intel.com>
-           Kirill Yukhin  <kirill.yukhin@intel.com>
-
-       PR target/50740
-       * config/i386/driver-i386.c (host_detect_local_cpu): Do cpuid 7 only
-       if max_level allows that.
-
-2011-10-21  Bernd Schmidt  <bernds@codesourcery.com>
-
-       * reg-notes.def (DEP_CONTROL): New.
-       * sched-ebb.c (add_deps_for_risky_insns): Add a REG_DEP_CONTROL when
-       not doing speculation.
-       * rtlanal.c (record_hard_reg_sets, find_all_hard_reg_sets,
-       record_hard_reg_uses_1, record_hard_reg_uses): New functions.
-       * function.c (record_hard_reg_sets, record_hard_reg_uses,
-       record_hard_reg_uses_1): Remove; move to rtlanal.c.
-       * lists.c (copy_INSN_LIST, concat_INSN_LIST): New functions.
-       * haifa-sched.c: Swap includes of "rtl.h" and "hard-reg-set.h".
-       (MUST_RECOMPUTE_SPEC_P): New macro.
-       (real_insn_for_shadow): New function.
-       (cond_clobbered_p, recompute_todo_spec, check_clobbered_conditions,
-       toggle_cancelled_flags): New static functions.
-       (schedule_insn): Relax an assert to only check for empty hard back
-       dependencies.  Skip cancelled dependencies.  Call
-       check_clobbered_conditions.
-       (copy_insn_list): Remove function, renamed moved to lists.c.
-       (save_backtrack_point): Use new spelling copy_INSN_LIST.
-       (unschedule_insns_until): Ensure TODO_SPEC is reset properly.
-       (restore_last_backtrack_point): Likewise.  Call toggle_cancelled_flags.
-       (estimate_insn_tick): Ignore cancelled dependencies.
-       (haifa_speculate_insn): Move declaration.
-       (try_ready): Move code into recompute_todo_spec and call it.  Tweak
-       some asserts.  Ensure predicated patterns are restored if necessary.
-       Dump DEP_CONTROL flag.
-       (haifa_change_pattern): Merge with sched_change_pattern.
-       (sched_change_pattern): Remove function.
-       * sched-deps.c (NON_FLUSH_JUMP_KIND, NON_FLUSH_JUMP): Remove.  All
-       uses changed to simply not test NON_FLUSH_JUMP_P.
-       (ds_to_dk, dk_to_ds, dump_dep, ds_to_dt, dump_ds, check_dep): Handle
-       REG_DEP_CONTROL.
-       (dep_spec_p): If DO_PREDICATION, REG_DEP_CONTROL is speculative.
-       (reg_pending_control_uses, control_dependency_cache): New static
-       variables.
-       (sched_get_reverse_condition_uncached): New function.
-       (sd_find_dep_between): Remove pointless assert.  Look in
-       control_dependency_cache.
-       (ask_dependency_caches, set_dependency_caches, sd_delete_dep,
-       extend_dependency_caches, sched_deps_finish): Handle REG_DEP_CONTROL
-       and control_dependency_cache.
-       (sd_unresolve_dep): Use dep_spec_p.
-       (add_dependence): Now a wrapper around add_dependence_1, handling
-       REG_DEP_CONTROL specially.
-       (flush_pending_lists): Clear pending_jump_insns.
-       (sched_analyze_1): Handle pending_jump_insns like a memory flush.
-       (sched_analyze_2): Unconditionally add to pending memory flushes,
-       keep previous behaviour but apply it to pending_jump_insns instead.
-       (sched_analyze_insn): Defer adding jump reg dependencies using
-       reg_pending_control_uses; add them to the control_uses list.  Handle
-       pending_jump_insns and control_uses when adding dependence lists.
-       (deps_analyze_insn): Update INSN_COND_DEPS.
-       (deps_analyze_insn): Add jumps to pending_jump_insns rather than
-       last_pending_memory_flush.
-       (init_deps): Initialize pending_jump_insns.
-       (free_deps): Free control_uses.
-       (remove_from_deps): Remove from pending_jump_insns.
-       (init_deps_global): Allocate reg_pending_control_uses).
-       (finish_deps_global): Free it.
-       (add_dependence_1): Renamed from add_dependence.  Handle
-       REG_DEP_CONTROL.
-       * rtl.h (record_hard_reg_uses, find_all_hard_reg_sets): Declare.
-       (copy_INSN_LIST, concat_INSN_LIST): Declare.
-       * sched-int.h (struct deps_reg): Add control_uses.
-       (struct deps_desc): Add pending_jump_insns.
-       (struct _haifa_deps_insn_data): Add cond_deps.
-       (struct _haifa_insn_data): Add must_recompute_spec and predicated_pat.
-       (INSN_COND_DEPS, PREDICATED_PAT): New macros.
-       (BITS_PER_DEP_WEAK): Adjust for two extra bits in the word.
-       (DEP_CONTROL): New macro.
-       (DEP_TYPES): Include it.
-       (HARD_DEP): Adjust definition.
-       (DEP_CANCELLED): New macro.
-       (enum SCHED_FLAGS): Add DO_PREDICATION.
-       (sched_get_reverse_condition_uncached, real_insn_for_shadow): Declare.
-       * sched-rgn.c (concat_INSN_LIST): Remove function.
-       (deps_join): Handle pending_jump_insns.
-       (free_pending_lists): Likewise.
-       * config/c6x/c6x.c (c6x_set_sched_flags): Set DO_PREDICATION for final
-       schedule.
-
-2011-10-21  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/50820
-       * config/avr/libgcc.S (__EIND__): New define to 0x3C.
-       (__tablejump__): Consistently use EIND for indirect jump/call.
-       (__tablejump_elpm__): Ditto.
-
-2011-10-21  Bernd Schmidt  <bernds@codesourcery.com>
-
-       * config/c6x/c6x.md (attr "op_pattern"): New.
-       (load_sdata_pic, mov<mode>_insn for QIHIM and SISFVM): Set it.
-       * config/c6x/c6x-mult.md.in (mulhi3_VARIANT_, mulhisi3_insn_VARIANT_):
-       Likewise.
-       * config/c6x/c6x-mult.md: Regenerate.
-       * config/c6x/c6x.c: Include "regrename.h".
-       (unit_req_table): New typedef.
-       (unit_reqs): Use it for the declaration.
-       (unit_req_factor, get_unit_reqs, merge_unit_reqs, unit_req_imbalance,
-       get_unit_operand_masks, try_rename_operands, reshuffle_units): New
-       static functions.
-       (count_unit_reqs): New arg reqs.  All callers changed.  Use
-       get_unit_reqs, and don't merge here.
-       (res_mii): New arg reqs.  All callers changed.  Rewrite to use a loop
-       using unit_req_factor.
-       (hwloop_optimize): Call reshuffle_units.  Call merge_unit_reqs after
-       count_unit_reqs.
-       (c6x_reorg): Add reg notes problem, and call df_analyze.
-       * Makefile.in ($(out_object_file)): Depend on regrename.h.
-
-2011-10-21  Kai Tietz  <ktietz@redhat.com>
-
-       * fold-const.c (simple_operand_p_2): Handle integral
-       casts from boolean-operands.
-
-2011-10-21  Jan Hubicka  <jh@suse.cz>
-
-       * cgraph.c (dump_cgraph_node): Dump alias flag.
-       * cgraphunit.c (handle_alias_pairs): Handle weakrefs with
-       no destination.
-       (get_alias_symbol): New function.
-       (output_weakrefs): Output also weakrefs with no destinatoin.
-       (lto_output_node): Output weakref alias flag when at function boundary.
-
-2011-10-21  Andrew Stubbs  <ams@codesourcery.com>
-
-       PR target/50809
-       * config/arm/driver-arm.c (vendors): Make static.
-
-2011-10-21  Uros Bizjak  <ubizjak@gmail.com>
-
-       * config/i386/i386.c (ix86_emit_swdivsf): Force b into register.
-       (ix86_emit_swsqrtsf): Force a into register.
-
-2011-10-20  Mike Stump  <mikestump@comcast.net>
-
-       * regcprop.c (copyprop_hardreg_forward_1): Update recog_data
-       after validate_change wipes it out.
-
-2011-10-20  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
-
-       * config/spu/spu.md ("vec_permv16qi"): Reduce selector modulo 32
-       before using the shufb instruction.
-
-2011-10-20  Kirill Yukhin  <kirill.yukhin@intel.com>
-
-       PR target/50766
-       * config/i386/i386.md (bmi_bextr_<mode>): Update register/
-       memory operand order.
-       (bmi2_bzhi_<mode>3): Ditto.
-       (bmi2_pdep_<mode>3): Ditto.
-       (bmi2_pext_<mode>3): Ditto.
-
-2011-10-20  Richard Henderson  <rth@redhat.com>
-
-       * target.def (vec_perm_const_ok): Rename from builtin_vec_perm_ok.
-       * optabs.c (can_vec_perm_expr_p): Update to match.
-       (expand_vec_perm_expr): Likewise.
-       * config/i386/i386.c (TARGET_VECTORIZE_VEC_PERM_CONST_OK): Rename
-       from TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK.
-       * doc/tm.texi.in: Likewise.
-
-2011-10-20  Sergey Ostanevich  <sergos.gnu@gmail.com>
-
-       PR target/50572
-       * config/i386/i386.c (processor_target_table): Change Atom
-       align_loops_max_skip to 15.
-
-2011-10-20  Richard Henderson  <rth@redhat.com>
-
-       * target.def (builtin_vec_perm): Remove.
-       * doc/tm.texi.in (TARGET_VECTORIZE_BUILTIN_VEC_PERM): Remove.
-
-       * config/i386/i386.c (ix86_expand_vec_perm_builtin): Remove.
-       (IX86_BUILTIN_VEC_PERM_*): Remove.
-       (bdesc_args): Remove vec_perm builtins
-       (ix86_expand_builtin): Likewise.
-       (ix86_expand_vec_perm_const_1): Rename from
-       ix86_expand_vec_perm_builtin_1.
-       (extract_vec_perm_cst): Merge into...
-       (ix86_vectorize_vec_perm_const_ok): ... here.  Rename from
-       ix86_vectorize_builtin_vec_perm_ok.
-       (TARGET_VECTORIZE_BUILTIN_VEC_PERM): Remove.
-
-       * config/rs6000/rs6000.c (rs6000_builtin_vec_perm): Remove.
-       (TARGET_VECTORIZE_BUILTIN_VEC_PERM): Remove.
-
-       * config/spu/spu.c (spu_builtin_vec_perm): Remove.
-       (TARGET_VECTORIZE_BUILTIN_VEC_PERM): Remove.
-
-2011-10-20  Uros Bizjak  <ubizjak@gmail.com>
-
-       PR target/47989
-       * config/i386/i386.h (RECIP_MASK_DEFAULT): New define.
-       * config/i386/i386.op (recip_mask): Initialize with RECIP_MASK_DEFAULT.
-       * doc/invoke.texi (ix86 Options, -mrecip): Document that GCC
-       implements vectorized single float division and vectorized sqrtf(x)
-       with reciprocal sequence with additional Newton-Raphson step with
-       -ffast-math.
-
-2011-10-20  Dodji Seketeli  <dodji@redhat.com>
-
-       * ggc-zone.c (ggc_internal_alloc_zone_stat): Rename
-       ggc_alloced_size_order_for_request into ggc_round_alloc_size like
-       it was done in ggc-page.c.
-
-       PR other/50659
-       * doc/cppopts.texi: Use @smallexample/@end smallexample in
-       documentation for -fdebug-cpp instead of @quotation/@end quotation
-       that is not supported by contrib/texi2pod.pl.
-
-2011-10-19  Jan Hubicka  <jh@suse.cz>
-
-       * ipa-inline.c (inline_small_functions): Always update all calles after
-       inlining.
-
-2011-10-19  Jan Hubicka  <jh@suse.cz>
-
-       PR bootstrap/50709
-       * ipa-inline.c (inline_small_functions): Fix checking code to not make
-       effect on fibheap stability.
-
-2011-10-20  Maxim Kuvyrkov  <maxim@codesourcery.com>
-
-       * config/m68k/t-linux (M68K_MLIB_CPU): Add ColdFire CPUs.
-
-2011-10-20  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
-
-       PR target/50106
-       * config/arm/arm.c (thumb_unexpanded_epilogue): Handle return
-       reg size from 1-3.
-
-2011-10-20  Richard Guenther  <rguenther@suse.de>
-
-       * tree-ssa-loop-im.c (stmt_cost): Add WIDEN_*, FMA_EXPR
-       and rotates to the set of expensive operations.
-
-2011-10-19  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.c (sparc_expand_move): Use can_create_pseudo_p.
-       (sparc_emit_set_const32): Likewise.
-       (sparc_emit_set_const64_longway): Likewise.
-       (sparc_emit_set_const64): Likewise.
-       (sparc_legitimize_pic_address): Likewise.
-       (memory_ok_for_ldd): Likewise.
-
-2011-10-20  Dehao Chen  <dehao@google.com>
-
-       * profile.c (compute_branch_probabilities): Compute and dump the
-       overlap between the static estimation and the instrumentation profile.
-       (OVERLAP_BASE): New macro.
-       (compute_frequency_overlap): New function
-
-2011-10-19  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/i386.c (expand_vec_perm_vpshufb2_vpermq_even_odd): Use
-       d->op1 instead of d->op0 for the second vpshufb.
-       (expand_vec_perm_even_odd_1): For V8SImode fix vpshufd immediates.
-       (ix86_expand_vec_perm_const): If mask indicates two operands are
-       needed, but both are the same and expanding them as d.op0 == d.op1
-       failed, retry with d.op0 != d.op1.
-       (ix86_expand_vec_perm_builtin): Likewise.  Handle sorry printing
-       also for d.nelt == 32.
-
-       PR middle-end/50754
-       * cfgexpand.c (expand_debug_expr): Handle WIDEN_LSHIFT_EXPR, ignore
-       VEC_PERM_EXPR.
-
-2011-10-19  Bernd Schmidt  <bernds@codesourcery.com>
-
-       * regrename.h: New file.
-       * regrename.c: Include it.  Also include "emit-rtl.h".
-       (struct du_head, struct du_chain, du_head_p DEF_VEC and
-       DEF_VEC_ALLOC_P): Move to regrename.h.
-       (do_replace): Remove declaration.
-       (insn_rr): New variable.
-       (cur_operand): New static variable.
-       (regrename_chain_from_id): Renamed from chain_from_id and no longer
-       static.  All callers changed.
-       (record_operand_use): New static function.
-       (scan_rtx_reg): Use it.
-       (find_best_rename_reg): New function, broken out of rename_chains.
-       (rename_chains): Use it.  Don't update chain regno and nregs here, ...
-       (regrename_do_replace): ... do it here instead.  Renamed from
-       do_replace, and no longer static.  All callers changed.
-       (regrename_analyze): No longer static.  New arg bb_mask.
-       All callers changed.  If bb_mask is nonzero, use it to limit the
-       number of basic blocks we analyze.  If we failed to analyze a block,
-       clear insn operand data.
-       (record_out_operands): New arg insn_info.  Update cur_operand if it is
-       nonnull.
-       (build_def_use): If insn_rr is nonnull, pass an insn_info to
-       record_out_operands, and update cur_operand here as well.
-       (regrename_init, regrename_finish): New functions.
-       (regrename_optimize): Use them.
-       * Makefile.in (regrename.o): Adjust dependencies.
-
-2011-10-19  Tom de Vries  <tom@codesourcery.com>
-
-       PR tree-optimization/50769
-       * tree-ssa-tail-merge.c (replace_block_by): Calculate phi_vuse2
-       unconditionally.  Handle case that phi_vuse2 is not an SSA_NAME.  Add
-       dummy argument .MEM to phi when increasing number of arguments of phi by
-       redirecting edges to the block with phi.
-
-2011-10-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
-
-       PR bootstrap/50777
-       * configure.ac: Save and restore CXXFLAGS around
-       gcc_AC_CHECK_DECLS uses.
-       Check for madvise() declaration with g++ if --enable-build-with-cxx.
-       * configure: Regenerate.
-       * config.in: Regenerate.
-       * ggc-page.c (USING_MADVISE): Also check HAVE_DECL_MADVISE.
-
-2011-10-19  Alexandre Oliva  <aoliva@redhat.com>
-
-       PR debug/49310
-       * var-tracking.c (loc_exp_dep, onepart_aux): New structs.
-       (variable_part): Replace offset with union.
-       (enum onepart_enum, onepart_enum_t): New.
-       (variable_def): Drop cur_loc_changed, add onepart.
-       (value_chain_def, const_value_chain): Remove.
-       (VAR_PART_OFFSET, VAR_LOC_1PAUX): New macros, with checking.
-       (VAR_LOC_DEP_LST, VAR_LOC_DEP_LSTP): New macros.
-       (VAR_LOC_FROM, VAR_LOC_DEPTH, VAR_LOC_DEP_VEC): Likewise.
-       (value_chain_pool, value_chains): Remove.
-       (dropped_values): New.
-       (struct parm_reg): Only if HAVE_window_save.
-       (vt_stack_adjustments): Don't record register arguments.
-       (dv_as_rtx): New.
-       (dv_onepart_p): Return a onepart_enum_t.
-       (onepart_pool): New.
-       (dv_pool): Remove.
-       (dv_from_rtx): New.
-       (variable_htab_free): Release onepart aux data.  Reset flags.
-       (value_chain_htab_hash, value_chain_htab_eq): Remove.
-       (unshare_variable): Use onepart field.  Propagate onepart aux
-       data or offset.  Drop cur_loc_changed.
-       (val_store): Cope with NULL insn.  Rephrase dump output.  Check
-       for unsuitable locs.  Add FIXME on using cselib locs.
-       (val_reset): Remove FIXME of unfounded concerns.
-       (val_resolve): Check for unsuitable locs.  Add FIXME on using
-       cselib locs.
-       (variable_union): Use onepart field, adjust access to offset.
-       (NO_LOC_P): New.
-       (VALUE_CHANGED, DECL_CHANGED): Update doc.
-       (set_dv_changed): Clear NO_LOC_P when changed.
-       (find_loc_in_1pdv): Use onepart field.
-       (intersect_loc_chains): Likewise.
-       (unsuitable_loc): New.
-       (loc_cmp): Keep ENTRY_VALUEs at the end of the loc list.
-       (add_value_chain, add_value_chains): Remove.
-       (add_cselib_value_chains, remove_value_chain): Likewise.
-       (remove_value_chains, remove_cselib_value_chains): Likewise.
-       (canonicalize_loc_order_check): Use onepart.  Drop cur_loc_changed.
-       (canonicalize_values_star, canonicalize_vars_star): Use onepart.
-       (variable_merge_over_cur): Likewise.  Adjust access to offset.
-       Drop cur_loc_changed.
-       (variable_merge_over_src): Use onepart field.
-       (remove_duplicate_values): Likewise.
-       (variable_post_merge_new_vals): Likewise.
-       (find_mem_expr_in_1pdv): Likewise.
-       (dataflow_set_preserve_mem_locs): Likewise.  Drop cur_loc_changed
-       and value chains.
-       (dataflow_set_remove_mem_locs): Likewise.  Use VAR_LOC_FROM.
-       (variable_different_p): Use onepart field.  Move onepart test out
-       of the loop.
-       (argument_reg_set): Drop.
-       (add_uses, add_stores): Preserve but do not record in dynamic
-       tables equivalences for ENTRY_VALUEs and CFA_based addresses.
-       Avoid unsuitable address expressions.
-       (EXPR_DEPTH): Unlimit.
-       (EXPR_USE_DEPTH): Repurpose PARAM_MAX_VARTRACK_EXPR_DEPTH.
-       (prepare_call_arguments): Use DECL_RTL_IF_SET.
-       (dump_var): Adjust access to offset.
-       (variable_from_dropped, recover_dropped_1paux): New.
-       (variable_was_changed): Drop cur_loc_changed.  Use onepart.
-       Preserve onepart aux in empty_var.  Recover empty_var and onepart
-       aux from dropped_values.
-       (find_variable_location_part): Special-case onepart.  Adjust
-       access to offset.
-       (set_slot_part): Use onepart.  Drop cur_loc_changed.  Adjust
-       access to offset.  Initialize onepaux.  Drop value chains.
-       (delete_slot_part): Drop value chains.  Use VAR_LOC_FROM.
-       (VEC (variable, heap), VEC (rtx, stack)): Define.
-       (expand_loc_callback_data): Drop dummy, cur_loc_changed,
-       ignore_cur_loc.  Add expanding, pending, depth.
-       (loc_exp_dep_alloc, loc_exp_dep_clear): New.
-       (loc_exp_dep_insert, loc_exp_dep_set): New.
-       (notify_dependents_of_resolved_value): New.
-       (update_depth, vt_expand_var_loc_chain): New.
-       (vt_expand_loc_callback): Revamped.
-       (resolve_expansions_pending_recursion): New.
-       (INIT_ELCD, FINI_ELCD): New.
-       (vt_expand_loc): Use the new macros above.  Drop ignore_cur_loc
-       parameter, adjust all callers.
-       (vt_expand_loc_dummy): Drop.
-       (vt_expand_1pvar): New.
-       (emit_note_insn_var_location): Operate on non-debug decls only.
-       Revamp multi-part cur_loc recomputation and one-part expansion.
-       Drop cur_loc_changed.  Adjust access to offset.
-       (VEC (variable, heap)): Drop.
-       (changed_variables_stack, changed_values_stack): Drop.
-       (check_changed_vars_0, check_changed_vars_1): Remove.
-       (check_changed_vars_2, check_changed_vars_3): Remove.
-       (values_to_stack, remove_value_from_changed_variables): New.
-       (notify_dependents_of_changed_value, process_changed_values): New.
-       (emit_notes_for_changes): Revamp onepart updates.
-       (emit_notes_for_differences_1): Use onepart.  Drop cur_loc_changed
-       and value chains.  Propagate onepaux.  Recover empty_var and onepaux
-       from dropped_values.
-       (emit_notes_for_differences_2): Drop value chains.
-       (emit_notes_in_bb): Adjust.
-       (vt_emit_notes): Drop value chains, changed_variables_stack.
-       Initialize and release dropped_values.
-       (create_entry_value): Revamp.
-       (vt_add_function_parameter): Use new interface.
-       (note_register_arguments): Remove.
-       (vt_initialize): Drop value chains and register arguments.
-       (vt_finalize): Drop value chains.  Release windowed_parm_regs only
-       if HAVE_window_save.
-       * rtl.h: Document various pass-local uses of RTL flags.
-       * tree.h (DECL_RTL_KNOWN_SET): New.
-       * doc/invoke.texi (param max-vartrack-expr-depth): Update
-       description and default.
-
-2011-10-19  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/50447
-       * config/avr/avr.md (cc): New alternative out_plus_noclobber.
-       (adjust_len): Ditto.
-       (addhi3): Don't pipe through short; use gen_int_mode instead.
-       Prior to reload, expand to gen_addhi3_clobber.
-       (*addhi3): Use avr_out_plus_noclobber if applicable, use
-       out_plus_noclobber in cc and adjust_len attribute.
-       (addhi3_clobber): 2 new RTL peepholes.
-       (addhi3_clobber): New insn.
-       * config/avr/avr-protos.h: (avr_out_plus_noclobber): New prototype.
-       * config/avr/avr.c (avr_out_plus_noclobber): New function.
-       (notice_update_cc): Handle CC_OUT_PLUS_NOCLOBBER.
-       (avr_out_plus_1): Tweak if only MSB is +/-1 and other bytes are 0.
-       Set cc0 to set_zn for adiw on 16-bit values.
-       (adjust_insn_length): Handle ADJUST_LEN_OUT_PLUS_NOCLOBBER.
-       (expand_epilogue): No need to add 0 to frame_pointer_rtx.
-
-2011-10-19  Richard Guenther  <rguenther@suse.de>
-
-       PR middle-end/50780
-       * tree-ssa-forwprop.c (forward_propagate_into_cond): Verify
-       the condition is properly gimple before using it.
-       * tree-eh (stmt_could_throw_1_p): Properly extract the
-       operation type from comparisons.
-
-2011-10-19  Roland Stigge  <stigge@antcom.de>
-
-       PR translation/48638
-       * plugin.c (add_new_plugin): Fix typo in fatal_error message.
-
-2011-10-19  Roland Stigge  <stigge@antcom.de>
-
-       PR translation/49517
-       * config/rx/rx.c (rx_print_operand): Fix typo in warning message.
-
-2011-10-19  Richard Guenther  <rguenther@suse.de>
-
-       PR middle-end/50768
-       * gimple-fold.c (gimplify_and_update_call_from_tree): Rewrite.
-
-2011-10-19  Andrey Belevantsev  <abel@ispras.ru>
-
-       PR rtl-optimization/50340
-       * sel-sched-ir.c (update_target_availability): LHS register
-       availability is not known if the unavailable LHS of the other
-       expression is a different register.
-
-2011-10-19  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
-
-       PR target/50310
-       * config/spu/spu.c (spu_emit_vector_compare): Support unordered
-       floating-point comparisons.
-
-2011-10-19  Jan Hubicka  <jh@suse.cz>
-
-       * cgraphunit.c (handle_alias_pairs): Also handle wekref with
-       destination declared.
-       (output_weakrefs): New function.
-       * varpool.c (varpool_create_variable_alias): Handle external aliases.
-
-2011-10-19  Jakub Jelinek  <jakub@redhat.com>
-
-       * dwarf2out.c (loc_descriptor): For SUBREG pass SUBREG_REG's mode as
-       second argument instead of mode.
-
-2011-10-18  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/i386.c (ix86_expand_vec_perm): In merge_two use
-       mode SUBREG of operands[0] as target.
-       (valid_perm_using_mode_p): Don't ignore higher bits of d->perm.
-       (expand_vec_pshufb): For V8SImode vmode emit avx2_permvarv8si.
-       (expand_vec_perm_1): Handle identity and some broadcast
-       permutations.
-       (expand_vec_perm_interleave2): Handle also 32-byte modes, using
-       vperm2[fi]128 or vpunpck[lh]* followed by single insn permutation.
-       For d->testing_p return true earlier to avoid creating more GC
-       garbage.
-       (expand_vec_perm_vpermq_perm_1): New function.
-       (expand_vec_perm_vpshufb2_vpermq): For d->testing_p return true
-       earlier to avoid creating more GC garbage.  Fix handling of
-       V16HImode.  Avoid some SUBREGs in SET_DEST.
-       (expand_vec_perm_broadcast_1): Return false for 32-byte integer
-       vector modes.
-       (expand_vec_perm_vpshufb4_vpermq2): New function.
-       (ix86_expand_vec_perm_builtin_1): Call expand_vec_perm_vpermq_perm_1
-       and expand_vec_perm_vpshufb4_vpermq2.
-
-2011-10-18  Andrew Stubbs  <ams@codesourcery.com>
-
-       * config/arm/driver-arm.c (host_detect_local_cpu): Close the file
-       before exiting.
-
-2011-10-18  Andrew Stubbs  <ams@codesourcery.com>
-
-       PR tree-optimization/50717
-       * tree-ssa-math-opts.c (is_widening_mult_p): Remove the 'type'
-       parameter.  Calculate 'type' from stmt.
-       (convert_mult_to_widen): Update call the is_widening_mult_p.
-       (convert_plusminus_to_widen): Likewise.
-
-2011-10-18  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
-
-       * config/spu/spu.c (struct machine_function): New data structure.
-       (spu_init_machine_status): New function.
-       (spu_option_override): Install it.
-       (get_pic_reg): Set and use cfun->machine->pic_reg.
-       (spu_split_immediate): Do not set crtl->uses_pic_offset_table.
-       (need_to_save_reg): Use cfun->machine->pic_reg instead of
-       checking crtl->uses_pic_offset_table.
-       (spu_expand_prologue): Likewise.
-
-2011-10-18  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/50735
-       * function.c (gimplify_parameters): Use create_tmp_var instead of
-       create_tmp_reg.  If parm is not TREE_ADDRESSABLE and type is complex
-       or vector type, set DECL_GIMPLE_REG_P.
-
-2011-10-18  Andrew Stubbs  <ams@codesourcery.com>
-
-       * config.host (arm*-*-linux*): Add driver-arm.o and x-arm.
-       * config/arm/arm.opt: Add 'native' processor_type and
-       arm_arch enum values.
-       * config/arm/arm.h (host_detect_local_cpu): New prototype.
-       (EXTRA_SPEC_FUNCTIONS): New define.
-       (MCPU_MTUNE_NATIVE_SPECS): New define.
-       (DRIVER_SELF_SPECS): New define.
-       * config/arm/driver-arm.c: New file.
-       * config/arm/x-arm: New file.
-       * doc/invoke.texi (ARM Options): Document -mcpu=native,
-       -mtune=native and -march=native.
-
-2011-10-18  Alexander Monakov  <amonakov@ispras.ru>
-
-       PR rtl-optimization/50205
-       * sel-sched.c (count_occurrences_1): Simplify on the assumption that
-       p->x is a register.  Forbid substitution when the same register is
-       found in a different mode.
-       (count_occurrences_equiv): Assert that 'what' is a register.
-
-2011-10-18  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50767
-       * tree-ssa-pre.c (create_expression_by_pieces): Update the
-       folded statement.
-
-2011-10-18  Julian Brown  <julian@codesourcery.com>
-
-       * config/arm/arm.c (arm_block_move_unaligned_straight)
-       (arm_adjust_block_mem, arm_block_move_unaligned_loop)
-       (arm_movmemqi_unaligned): New.
-       (arm_gen_movmemqi): Support unaligned block copies.
-
-2011-10-18  Ira Rosen  <ira.rosen@linaro.org>
-
-       * doc/md.texi (vec_widen_ushiftl_hi, vec_widen_ushiftl_lo,
-       vec_widen_sshiftl_hi, vec_widen_sshiftl_lo): Document.
-       * tree-pretty-print.c (dump_generic_node): Handle WIDEN_LSHIFT_EXPR,
-       VEC_WIDEN_LSHIFT_HI_EXPR and VEC_WIDEN_LSHIFT_LO_EXPR.
-       (op_code_prio): Likewise.
-       (op_symbol_code): Handle WIDEN_LSHIFT_EXPR.
-       * optabs.c (optab_for_tree_code): Handle
-       VEC_WIDEN_LSHIFT_HI_EXPR and VEC_WIDEN_LSHIFT_LO_EXPR.
-       (init-optabs): Initialize optab codes for vec_widen_u/sshiftl_hi/lo.
-       * optabs.h (enum optab_index): Add OTI_vec_widen_u/sshiftl_hi/lo.
-       * genopinit.c (optabs): Initialize the new optabs.
-       * expr.c (expand_expr_real_2): Handle
-       VEC_WIDEN_LSHIFT_HI_EXPR and VEC_WIDEN_LSHIFT_LO_EXPR.
-       * gimple-pretty-print.c (dump_binary_rhs): Likewise.
-       * tree-vectorizer.h (NUM_PATTERNS): Increase to 8.
-       * tree.def (WIDEN_LSHIFT_EXPR, VEC_WIDEN_LSHIFT_HI_EXPR,
-       VEC_WIDEN_LSHIFT_LO_EXPR): New.
-       * cfgexpand.c (expand_debug_expr): Handle new tree codes.
-       * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Add
-       vect_recog_widen_shift_pattern.
-       (vect_handle_widen_mult_by_const): Rename...
-       (vect_handle_widen_op_by_const): ...to this.  Handle shifts.
-       Add a new argument, update documentation.
-       (vect_recog_widen_mult_pattern): Assume that only second
-       operand can be constant.  Update call to
-       vect_handle_widen_op_by_const.
-       (vect_recog_over_widening_pattern): Fix typo.
-       (vect_recog_widen_shift_pattern): New.
-       * tree-vect-stmts.c (vectorizable_type_promotion): Handle
-       widening shifts.
-       (supportable_widening_operation): Likewise.
-       * tree-inline.c (estimate_operator_cost): Handle new tree codes.
-       * tree-vect-generic.c (expand_vector_operations_1): Likewise.
-       * tree-cfg.c (verify_gimple_assign_binary): Likewise.
-       * config/arm/neon.md (neon_vec_<US>shiftl_<mode>): New.
-       (vec_widen_<US>shiftl_lo_<mode>, neon_vec_<US>shiftl_hi_<mode>,
-       vec_widen_<US>shiftl_hi_<mode>, neon_vec_<US>shift_left_<mode>):
-       Likewise.
-       * config/arm/predicates.md (const_neon_scalar_shift_amount_operand):
-       New.
-       * config/arm/iterators.md (V_innermode): New.
-       * tree-vect-slp.c (vect_build_slp_tree): Require same shift operand
-       for widening shift.
-
-2011-10-18  Richard Guenther  <rguenther@suse.de>
-
-       * tree-ssa-alias.h (struct pt_solution): Remove
-       vars_contains_restrict member.
-       (pt_solutions_same_restrict_base): Remove.
-       (pt_solution_set): Adjust.
-       * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Remove
-       vars_contains_restrict handling.
-       (dump_points_to_solution): Likewise.
-       (ptr_derefs_may_alias_p): Do not call pt_solutions_same_restrict_base.
-       * tree-ssa-structalias.c (struct variable_info): Remove is_restrict_var
-       field.
-       (new_var_info): Do not initialize it.
-       (ipa_escaped_pt): Adjust.
-       (make_constraint_from_restrict): Make the tag global.
-       (make_constraint_from_global_restrict): New function.
-       (make_constraint_from_heapvar): Remove.
-       (create_variable_info_for): Do not make restrict vars point
-       to NONLOCAL.
-       (intra_create_variable_infos): Likewise.
-       (find_what_var_points_to): Remove vars_contains_restrict handling.
-       (pt_solution_set): Adjust.
-       (pt_solution_ior_into): Likewise.
-       (pt_solutions_same_restrict_base): Remove.
-       (compute_points_to_sets): Do not test is_restrict_var.
-       * cfgexpand.c (update_alias_info_with_stack_vars): Adjust.
-       * gimple-pretty-print.c (pp_points_to_solution): Likewise.
-
-2011-10-18  Tom de Vries  <tom@codesourcery.com>
-
-       PR tree-optimization/50672
-       * tree-ssa-dce.c (mark_virtual_operand_for_renaming): New function,
-       factored out of ...
-       (mark_virtual_phi_result_for_renaming): Use
-       mark_virtual_operand_for_renaming.
-       * tree-flow.h (mark_virtual_operand_for_renaming): Declare.
-       * tree-ssa-tail-merge.c (release_last_vdef): New function.
-       (purge_bbs): Add update_vops parameter.  Call release_last_vdef for each
-       deleted basic block.
-       (tail_merge_optimize): Add argument to call to purge_bbs.
-
-2011-10-18  Richard Guenther  <rguenther@suse.de>
-
-       PR middle-end/50716
-       * expr.c (get_object_or_type_alignment): New function.
-       (expand_assignment): Use it.
-       (expand_expr_real_1): Likewise.
-
-2011-10-18  Dodji Seketeli  <dodji@redhat.com>
-
-       PR bootstrap/50760
-       * input.c (dump_line_table_statistics): Use long, not size_t.
-
-2011-10-17  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * config/sparc/sparc.md (in_call_delay): Fix formatting issues.
-
-2011-10-17  Simon Baldwin  <simonb@google.com>
-           Ian Lance Taylor  <iant@google.com>
-
-       * configure.ac: Add --with-native-system-header-dir.  Set and
-       substitute NATIVE_SYSTEM_HEADER_DIR.  Use native_system_header
-       when setting target_header_dir.
-       * config.gcc: Always set native_system_header_dir.
-       (*-*-gnu*): Set native_system_header_dir.  Don't use t-gnu.
-       (i[34567]86-pc-msdosdjgpp*): Set native_system_header_dir.  Don't
-       use i386/t-djgpp.
-       (i[34567]86-*-mingw* | x86_64-*-mingw*): Set
-       native_system_header_dir.
-       (spu-*-elf*): Set native_system_header_dir.
-       * Makefile.in (NATIVE_SYSTEM_HEADER_DIR): Set to
-       @NATIVE_SYSTEM_HEADER_DIR@.
-       (PREPROCESSOR_DEFINES): Define NATIVE_SYSTEM_HEADER_DIR.
-       * cppdefault.c (STANDARD_INCLUDE_DIR): Don't define.
-       (NATIVE_SYSTEM_HEADER_COMPONENT): Rename from
-       STANDARD_INCLUDE_COMPONENT.
-       (cpp_include_defaults): Don't use SYSTEM_INCLUDE_DIR.  Rename
-       STANDARD_INCLUDE_DIR to NATIVE_SYSTEM_HEADER_DIR.
-       * system.h: Poison SYSTEM_INCLUDE_DIR, STANDARD_INCLUDE_DIR, and
-       STANDARD_INCLUDE_COMPONENT.
-       * config/i386/t-mingw32 (NATIVE_SYSTEM_HEADER_DIR): Remove.
-       * config/i386/t-mingw-w32: Likewise.
-       * config/i386/t-mingw-w64: Likewise.
-       * config/spu/t-spu-elf: Likewise.
-       * config/i386/t-djgpp: Remove.
-       * config/t-gnu: Remove.
-       * config/i386/mingw32.h (STANDARD_INCLUDE_DIR): Don't define.
-       (NATIVE_SYSTEM_HEADER_COMPONENT): Rename from
-       STANDARD_INCLUDE_COMPONENT.
-       * config/i386/djgpp.h (STANDARD_INCLUDE_DIR): Don't define.
-       * config/spu/spu-elf.h: Likewise.
-       * config/vms/xm-vms.h: Likewise.
-       * config/gnu.h: Likewise.
-       * config/openbsd.h (INCLUDE_DEFAULTS): Change STANDARD_INCLUDE_DIR
-       and STANDARD_INCLUDE_COMPONENT to NATIVE_SYSTEM_HEADER_DIR and
-       NATIVE_SYSTME_HEADER_COMPONENT.
-       * doc/install.texi (Configuration): Document
-       --with-native-system-header-dir.  Mention it in the documentation
-       for --with-sysroot and --with-build-sysroot.
-       * doc/tm.texi.in (Driver): Don't document SYSTEM_INCLUDE_DIR or
-       STANDARD_INCLUDE_DIR.  Rename STANDARD_INCLUDE_COMPONENT to
-       NATIVE_SYSTEM_HEADER_COMPONENT.  Rename uses of
-       STANDARD_INCLUDE_DIR to NATIVE_SYSTEM_HEADER_DIR.
-       * doc/fragments.texi (Target Fragment): Don't document
-       NATIVE_SYSTEM_HEADER_DIR.
-       * configure, doc/tm.texi: Rebuild.
-
-2011-10-17  Richard Henderson  <rth@redhat.com>
-
-       * config/sparc/sparc.md: Use register_or_zero_operand where rJ
-       is the constraint.
-
-       * config/sparc/sparc.md (vec_perm_constv8qi, vec_perm<mode>): New
-       patterns.
-       * config/sparc/sparc.c (sparc_expand_vec_perm_bmask): New function.
-       * config/sparc/sparc-protos.h (sparc_expand_vec_perm_bmask): Declare.
-
-2011-10-17  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc-modes.def: Add single entry vector modes for
-       DImode and SImode.
-       * config/sparc/sparc.md (V32, V32I, V64, V64I, V64N8): Delete
-       mode iterators.
-       (mov<V32:mode>): Revert back to plain SFmode pattern.
-       (*movsf_insn): Likewise.
-       (mov<V64:mode>): Revert back to plain DFmode pattern.
-       (*movdf_insn_sp32): Likewise.
-       (*movdf_insn_sp32_v9): Likewise.
-       (*movdf_insn_sp64): Likewise.
-       (V64 mode splitters) Likewise.
-       (addsi3): Remove VIS alternatives.
-       (subsi3): Likewise.
-       (and<V64I:mode>3): Revert to DImode only pattern.
-       (and<V64I:mode>3_sp32): Likewise.
-       (*and<V64I:mode>3_sp64): Likewise.
-       (and<V32I:mode>3): Likewise.
-       (*and_not_<V64I:mode>_sp32): Likewise.
-       (*and_not_<V64I:mode>_sp64): Likewise.
-       (*and_not_<V32I:mode>): Likewise.
-       (ior<V64I:mode>3): Likewise.
-       (*ior<V64I:mode>3_sp32): Likewise.
-       (*ior<V64I:mode>3_sp64): Likewise.
-       (ior<V32I:mode>3): Likewise.
-       (*or_not_<V64I:mode>_sp32): Likewise.
-       (*or_not_<V64I:mode>_sp64): Likewise.
-       (*or_not_<V32I:mode>): Likewise.
-       (xor<V64I:mode>3): Likewise.
-       (*xor<V64I:mode>3_sp32): Likewise.
-       (*xor<V64I:mode>3_sp64): Likewise.
-       (xor<V32I:mode>3): Likewise.
-       (V64I mode splitters): Likewise.
-       (*xor_not_<V64I:mode>_sp32): Likewise.
-       (*xor_not_<V64I:mode>_sp64): Likewise.
-       (*xor_not_<V32I:mode>): Likewise.
-       (one_cmpl<V64I:mode>2): Likewise.
-       (*one_cmpl<V64I:mode>2_sp32): Likewise.
-       (*one_cmpl<V64I:mode>2_sp64): Likewise.
-       (one_cmpl<V32I:mode>2): Likewise.
-       (VM32, VM64, VMALL): New mode iterators.
-       (vbits, vconstr, vfptype): New mode attributes.
-       (mov<VMALL:mode>): New expander.
-       (*mov<VM32:mode>_insn): New insn.
-       (*mov<VM64:mode>_insn_sp64): New insn.
-       (*mov<VM64:mode>_insn_sp32): New insn, and associated splitter
-       specifically for the register to memory case.
-       (vec_init<mode>): New expander.
-       (VADDSUB): New mode iterator.
-       (<plusminus_insn>v2si3, <plusminus_insn>v2hi3): Remove and replace
-       with...
-       (<plusminus_insn><mode>3): New consolidated pattern.
-       (VL): New mode iterator for logical operations.
-       (vlsuf): New more attribute.
-       (vlop): New code iterator.
-       (vlinsn, vlninsn): New code attributes.
-       (<code><mode>3): New insn to non-negated vector logical ops.
-       (*not_<code><mode>3): Likewise for negated variants.
-       (*nand<mode>_vis): New insn.
-       (vlnotop): New code iterator.
-       (*<code>_not1<mode>_vis, *<code>_not2<mode>_vis): New insns.
-       (one_cmpl<mode>2): New insn.
-       (faligndata<V64I:mode>_vis): Rewrite to use VM64 iterator.
-       (bshuffle<VM64:mode>_vis): Likewise.
-       (v<vis3_shift_patname><mode>3): Use GCM mode iterator.
-       (fp<plusminus_insn>64_vis): Use V1DI mode.
-       (VASS mode iterator): Use V1SI not SI mode.
-       * config/sparc/sparc.c (sparc_vis_init_builtins): Account for
-       single-entry vector mode changes.
-       (sparc_expand_builtin): Likewise.
-       (sparc_expand_vector_init): New function.
-       * config/sparc/sparc-protos.h (sparc_expand_vector_init): Declare.
-
-2011-10-17  Kai Tietz  <ktietz@redhat.com>
-
-       * fold-const.c (simple_operand_p_2): New function.
-       (fold_truthop): Rename to
-       (fold_truth_andor_1): function name.
-       Additionally remove branching creation for logical and/or.
-       (fold_truth_andor): Handle branching creation for logical and/or here.
-
-2011-10-17  Andi Kleen  <ak@linux.intel.com>
-
-       * ggc-page.c (USING_MADVISE): Adjust ifdef to check for USING_MMAP.
-
-2011-10-17  Georg-Johann Lay  <avr@gjlay.de>
-
-       * config/avr/avr.h (ASSEMBLER_DIALECT): Remove.
-       * config/avr/avr.md (mcu_have_movw, mcu_mega): Remove attributes.
-       (adjust_len): Add alternative "call".
-       (isa, enabled): New insn attributes.
-       (length): Use match_test with AVR_HAVE_JMP_CALL instead of
-       mcu_mega attribute.
-       (*sbrx_branch<mode>): Ditto.
-       (*sbrx_and_branch<mode>): Ditto.
-       (*sbix_branch): Ditto.
-       (*sbix_branch_bit7): Ditto.
-       (*sbix_branch_tmp): Ditto.
-       (*sbix_branch_tmp_bit7): Ditto.
-       (jump): Ditto.
-       (negsi2): Use attribute "isa" instead of assembler dialect.
-       (extendhisi2): Ditto.
-       (call_insn, call_value_insn): Set adjust_len attribute.
-       (indirect_jump): Indent to coding rules.
-       (call_prologue_saves): Use isa attribute instead of mcu_mega.
-       (epilogue_restores): Ditto.  Fix setting of SP as described in the
-       RTX pattern.
-       (*indirect_jump): Fusion of *jcindirect_jump, *njcindirect_jump
-       and *indirect_jump_avr6.
-       (*tablejump): Fusion of *tablejump_rjmp and *tablejump_lib.
-       (*jcindirect_jump, *njcindirect_jump, *indirect_jump_avr6): Remove.
-       (*tablejump_rjmp, *tablejump_lib): Remove.
-       * config/avr/avr.c (adjust_insn_length): Handle ADJUST_LEN_CALL.
-
-2011-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       PR c++/50757
-       * doc/invoke.texi ([Wnonnull]): Update.
-
-2011-10-17  Richard Henderson  <rth@redhat.com>
-
-       PR 50746
-       * optabs.c (expand_vec_perm_expr): Fix indexing error.
-
-2011-10-17  Sergio Durigan Junior  <sergiodj@redhat.com>
-
-       * configure.ac: Display `yes' if the SystemTap header has been found.
-       * configure: Regenerate.
-
-2011-10-08  Andi Kleen  <ak@linux.intel.com>
-
-       PR other/50636
-       * config.in, configure: Regenerate.
-       * configure.ac (madvise): Add to AC_CHECK_FUNCS.
-       * ggc-page.c (USING_MADVISE): Add.
-       (page_entry): Add discarded field.
-       (alloc_page): Check for discarded pages.
-       (release_pages): Add USING_MADVISE branch.
-
-2011-10-17  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50729
-       * tree-vrp.c (extract_range_from_unary_expr_1): Remove redundant test.
-       (simplify_conversion_using_ranges): Properly test the
-       intermediate result.
-
-2011-10-15  Tom Tromey  <tromey@redhat.com>
-           Dodji Seketeli  <dodji@redhat.com>
-
-       * ggc.h (ggc_round_alloc_size): Declare new public entry point.
-       * ggc-none.c (ggc_round_alloc_size): New public stub function.
-       * ggc-page.c (ggc_alloced_size_order_for_request): New static
-       function.  Factorized from ggc_internal_alloc_stat.
-       (ggc_round_alloc_size): New public function.  Uses
-       ggc_alloced_size_order_for_request.
-       (ggc_internal_alloc_stat): Use ggc_alloced_size_order_for_request.
-       * ggc-zone.c (ggc_round_alloc_size): New public function extracted
-       from ggc_internal_alloc_zone_stat.
-       (ggc_internal_alloc_zone_stat): Use ggc_round_alloc_size.
-       * toplev.c (general_init): Initialize
-       line_table->alloced_size_for_request.
-
-2011-10-15  Tom Tromey  <tromey@redhat.com>
-           Dodji Seketeli  <dodji@redhat.com>
-
-       * input.c (ONE_K, ONE_M, SCALE, STAT_LABEL, FORMAT_AMOUNT): New macros.
-       (num_expanded_macros_counter, num_macro_tokens_counter): Declare
-       new counters.
-       (dump_line_table_statistics): Define new function.
-       * input.h (dump_line_table_statistics): Declare new function.
-       * toplev.c (dump_memory_report): Call dump_line_table_statistics.
-
-2011-10-15  Tom Tromey  <tromey@redhat.com>
-           Dodji Seketeli  <dodji@redhat.com>
-
-       * doc/cppopts.texi: Document -fdebug-cpp.
-       * doc/invoke.texi: Add -fdebug-cpp to the list of preprocessor options.
-
-2011-10-15  Tom Tromey  <tromey@redhat.com>
-           Dodji Seketeli  <dodji@redhat.com>
-
-       * gcc/diagnostic.h (diagnostic_report_current_module): Add a
-       location parameter.
-       * diagnostic.c (diagnostic_report_current_module): Add a location
-       parameter to the function definition.  Use it instead of
-       input_location.  Resolve the virtual location rather than just
-       looking up its map and risking to touch a resulting macro map.
-       (default_diagnostic_starter): Pass the relevant diagnostic
-       location to diagnostic_report_current_module.
-       * tree-diagnostic.c (maybe_unwind_expanded_macro_loc): New.
-       (virt_loc_aware_diagnostic_finalizer): Likewise.
-       (diagnostic_report_current_function): Pass the
-       relevant location to diagnostic_report_current_module.
-       * tree-diagnostic.h (virt_loc_aware_diagnostic_finalizer): Declare
-       new function.
-       * toplev.c (general_init): By default, use the new
-       virt_loc_aware_diagnostic_finalizer as diagnostic finalizer.
-       * Makefile.in: Add vec.h dependency to tree-diagnostic.c.
-
-2011-10-15  Tom Tromey  <tromey@redhat.com>
-           Dodji Seketeli  <dodji@redhat.com>
-
-       * doc/cppopts.texi (-ftrack-macro-expansion): Document new option.
-       * doc/invoke.texi (-ftrack-macro-expansion): Add this to the list of
-       preprocessor related options.
-
-2011-10-15  Tom Tromey  <tromey@redhat>
-           Dodji Seketeli  <dodji@redhat.com>
-
-       * input.h (struct expanded_location): Move to libcpp/line-map.h.
-       (LOCATION_COLUMN): New accessor
-       (in_system_header_at): Use linemap_location_in_system_header_p.
-       * diagnostic.c (diagnostic_report_current_module): Adjust to avoid
-       touching the internals of struct line_map.  Use the public API instead.
-       (diagnostic_report_diagnostic): Don't use relational operator '<'
-       on virtual locations.  Use linemap_location_before_p instead.
-       * input.c (expand_location): Adjust to expand to the tokens'
-       spelling location when macro location tracking is on.
-
-
-2011-10-08  Andi Kleen  <ak@linux.intel.com>
-
-       * ggc-page.c (GGC_QUIRE_SIZE): Increase to 512
-
-2011-10-13  Andi Kleen  <ak@linux.intel.com>
-
-       * toplev.c (compile_file): Rename __gnu_slim_lto to __gnu_lto_slim.
-
-2011-10-16  Ira Rosen  <ira.rosen@linaro.org>
-
-       PR tree-optimization/50727
-       * tree-vect-patterns.c (vect_operation_fits_smaller_type): Add
-       DEF_STMT to the list of statements to be replaced by the
-       pattern statements.
-
-2011-10-16  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR rtl-optimization/50615
-       * combine.c (distribute_notes) <REG_ARGS_SIZE>: Skip if I3 is a no-op.
-
-2011-10-16  Jakub Jelinek  <jakub@redhat.com>
-
-       PR tree-optimization/50596
-       * tree-vectorizer.h (NUM_PATTERNS): Increase to 7.
-       * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Add
-       vect_recog_bool_pattern.
-       (check_bool_pattern, adjust_bool_pattern_cast,
-       adjust_bool_pattern, vect_recog_bool_pattern): New functions.
-
-2011-10-16  Ira Rosen  <ira.rosen@linaro.org>
-
-       * tree-vect-stmts.c (vectorizable_load): For SLP without permutation
-       treat the first load of the node as the first element in its
-       interleaving chain.
-       * tree-vect-slp.c (vect_get_and_check_slp_defs): Swap the operands if
-       necessary and possible.
-       (vect_build_slp_tree): Add new argument.  Allow load groups of any size
-       in basic blocks.  Keep all the loads for further permutation check.
-       Use the new argument to determine if there is a permutation.  Update
-       the recursive calls.
-       (vect_supported_load_permutation_p): Allow subchains of interleaving
-       chains in basic block vectorization.
-       (vect_analyze_slp_instance): Update the call to vect_build_slp_tree.
-       Check load permutation based on the new parameter.
-       (vect_schedule_slp_instance): Don't start from the first element in
-       interleaving chain unless the loads are permuted.
-
-2011-10-15  Jan Hubicka  <jh@suse.cz>
-
-       PR target/48668
-       PR target/50689
-       * cgraphunit.c (cgraph_expand_function): Expand thunks and alises
-       after function body.
-
-2011-10-15  Richard Henderson  <rth@redhat.com>
-
-       * tree-vect-slp.c: Include langhooks.h.
-       (vect_create_mask_and_perm): Emit VEC_PERM_EXPR, not a builtin.
-       (vect_transform_slp_perm_load): Use can_vec_perm_expr_p.  Simplify
-       mask creation for VEC_PERM_EXPR.
-       * tree-vect-stmts.c (perm_mask_for_reverse): Return the mask,
-       not the builtin.
-       (reverse_vec_elements): Emit VEC_PERM_EXPR not a builtin.
-       * Makefile.in (tree-vect-slp.o): Update dependency.
-       * optabs.c (can_vec_perm_expr_p): Allow NULL as unknown constant.
-
-2011-10-15  Alan Modra  <amodra@gmail.com>
-
-       PR bootstrap/50738
-       * ifcvt.c (dead_or_predicable): Revert accidental commit with
-       HAVE_simple_return test.
-
-2011-10-15  Alan Modra  <amodra@gmail.com>
-
-       * ifcvt.c (dead_or_predicable): Disable if-conversion when
-       doing so is likely to kill a shrink-wrapping opportunity.
-
-       PR rtl-optimization/49941
-       * jump.c (mark_jump_label_1): Set JUMP_LABEL for simple_return jumps.
-
-       * rtl.h (set_return_jump_label): Declare.
-       * function.c (set_return_jump_label): New function, extracted..
-       (thread_prologue_and_epilogue_insns): ..from here.  Use it in
-       another instance to set return jump_label.
-       * cfgrtl.c (force_nonfallthru_and_redirect): Use set_return_jump_label.
-       * reorg.c (find_end_label): Likewise.
-
-2011-10-14  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sol2.h: Protect -m{cpu,tune}=native handling
-       with a more complete cpp test.
-       * config/sparc/linux64.h: Likewise.
-       * config/sparc/linux.h: Likewise.
-       * config/sparc/sparc.opt (sparc_debug): New target variable.
-       (mdebug): New target option.
-       * config/sparc/sparc.h (MASK_DEBUG_OPTIONS, MASK_DEBUG_ALL,
-       TARGET_DEBUG_OPTIONS): New defines.
-       * config/sparc/sparc.c (debug_target_flag_bits,
-       debug_target_flags): New functions.
-       (sparc_option_override): Add name strings back to cpu_table[].
-       Parse -mdebug string.  When TARGET_DEBUG_OPTIONS is true, print
-       out the target flags before and after override processing as well
-       as the selected cpu.  If MASK_V8PLUS, make sure that the selected
-       cpu is at least v9.
-
-2011-10-15  Oleg Endo  <oleg.endo@t-online.de>
-
-       PR target/49263
-       * config/sh/sh.h (ZERO_EXTRACT_ANDMASK): New macro.
-       * config/sh/sh.c (sh_rtx_costs): Add test instruction case.
-       * config/sh/sh.md (tstsi_t): Name existing insn.  Make inner
-       and instruction commutative.
-       (tsthi_t, tstqi_t, tstqi_t_zero, tstsi_t_and_not,
-       tstsi_t_zero_extract_eq, tstsi_t_zero_extract_xor,
-       tstsi_t_zero_extract_subreg_xor_little,
-       tstsi_t_zero_extract_subreg_xor_big): New insns.
-       (*movsicc_t_false, *movsicc_t_true): Replace space with tab in
-       asm output.
-       (*andsi_compact): Reorder alternatives so that K08 is considered first.
-
-2011-10-14  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR target/50354
-       * config/sparc/linux64.h (TARGET_DEFAULT): Only override if the default
-       processor is at least V9 and TARGET_64BIT_DEFAULT is defined.
-
-2011-10-14  Gerald Pfeifer  <gerald@pfeifer.com>
-
-       * invoke.texi (AVR Options): Avoid \leq{}.
-
-2011-10-14  Kai Tietz  <ktietz@redhat.com>
-
-       * gimplify.c (gimplify_expr): Take care that for bitwise-binary
-       transformation the operands have compatible types.
-
-2011-10-14  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (vec_widen_smult_hi_v8hi,
-       vec_widen_smult_lo_v8hi, vec_widen_umult_hi_v8hi,
-       vec_widen_umult_lo_v8hi): Macroize using VI2_AVX2
-       mode iterator and any_extend code iterator.
-       (vec_widen_<s>mult_hi_v8si, vec_widen_<s>mult_lo_v8si): New expanders.
-       (vec_widen_smult_hi_v4si, vec_widen_smult_lo_v4si): Enable
-       also for TARGET_SSE4_1 using pmuldq insn.
-       (sdot_prodv8hi): Macroize using VI2_AVX2 iterator.
-       (sse2_sse4_1): New code attr.
-       (udot_prodv4si): Macroize using any_extend code iterator.
-       (<s>dot_prodv8si): New expander.
-
-2011-10-14  Yakovlev Vladimir  <vladimir.b.yakovlev@intel.com>
-
-       * config/i386/i386.c (atom_cost): Changed cost for loading
-       QImode using movzbl.
-
-2011-10-14  Michael Meissner  <meissner@linux.vnet.ibm.com>
-
-       * config/rs6000/rs6000.c (rs6000_init_builtins): Fix typo in my
-       change on October 11th, 2011.
-
-2011-10-14  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (vec_interleave_high<mode>,
-       vec_interleave_low<mode>): Add AVX2 expanders for VI_256 modes.
-       * config/i386/i386.c (expand_vec_perm_interleave3): New function.
-       (ix86_expand_vec_perm_builtin_1): Call it.
-
-2011-10-14  Georg-Johann Lay  <avr@gjlay.de>
-
-       Fix thinko from r179765
-       * config/avr/avr.c (avr_option_override): Don't override
-       flag_omit_frame_pointer if not actually needed.
-
-2011-10-14  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/46278
-       * doc/invoke.texi (AVR Options): Document -mstrict-X.
-
-       * config/avr/avr.opt (-mstrict-X): New option.
-       (avr_strict_X): New variable reflecting -mstrict-X.
-       * config/avr/avr.c (avr_reg_ok_for_addr_p): Add parameter
-       outer_code and pass it down to avr_regno_mode_code_ok_for_base_p.
-       (avr_legitimate_address_p): Pass outer_code to
-       avr_reg_ok_for_addr_p and use that function in case PLUS.
-       (avr_mode_code_base_reg_class): Depend on avr_strict_X.
-       (avr_regno_mode_code_ok_for_base_p): Ditto, and depend on outer_code.
-       (avr_option_override): Disable -fcaller-saves if -mstrict-X is on.
-
-2011-10-14  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (neg<mode>2): Use VI_AVX2 iterator instead
-       of VI_128.
-
-       * config/i386/sse.md (mulv2di3): Macroize using VI8_AVX2 iterator.
-       (ashl<mode>3): Use VI248_AVX2 iterator instead of VI248_128.
-       Use <sseinsnmode> instead of TI in mode attr.
-
-2011-10-14  David Alan Gilbert  <david.gilbert@linaro.org>
-
-       * config/arm/linux-atomic-64bit.c: New (based on linux-atomic.c).
-       * config/arm/linux-atomic.c: Change comment to point to 64bit version.
-       (SYNC_LOCK_RELEASE): Instantiate 64bit version.
-       * config/arm/t-linux-eabi: Pull in linux-atomic-64bit.c.
-
-2011-10-14  David Alan Gilbert  <david.gilbert@linaro.org>
-
-       * config/arm/arm.c (arm_output_ldrex): Support ldrexd.
-       (arm_output_strex): Support strexd.
-       (arm_output_it): New helper to output it in Thumb2 mode only.
-       (arm_output_sync_loop): Support DI mode.  Change comment to
-       not support const_int.
-       (arm_expand_sync): Support DI mode.
-       * config/arm/arm.h (TARGET_HAVE_LDREXBHD): Split into LDREXBH
-       and LDREXD.
-       * config/arm/iterators.md (NARROW): move from sync.md.
-       (QHSD): New iterator for all current ARM integer modes.
-       (SIDI): New iterator for SI and DI modes only.
-       * config/arm/sync.md (sync_predtab): New mode_attr.
-       (sync_compare_and_swapsi): Fold into sync_compare_and_swap<mode>.
-       (sync_lock_test_and_setsi): Fold into sync_lock_test_and_setsi<mode>.
-       (sync_<sync_optab>si): Fold into sync_<sync_optab><mode>.
-       (sync_nandsi): Fold into sync_nand<mode>.
-       (sync_new_<sync_optab>si): Fold into sync_new_<sync_optab><mode>.
-       (sync_new_nandsi): Fold into sync_new_nand<mode>.
-       (sync_old_<sync_optab>si): Fold into sync_old_<sync_optab><mode>.
-       (sync_old_nandsi): Fold into sync_old_nand<mode>.
-       (sync_compare_and_swap<mode>): Support SI & DI.
-       (sync_lock_test_and_set<mode>): Likewise.
-       (sync_<sync_optab><mode>): Likewise.
-       (sync_nand<mode>): Likewise.
-       (sync_new_<sync_optab><mode>): Likewise.
-       (sync_new_nand<mode>): Likewise.
-       (sync_old_<sync_optab><mode>): Likewise.
-       (sync_old_nand<mode>): Likewise.
-       (arm_sync_compare_and_swapsi): Turn into iterator on SI & DI.
-       (arm_sync_lock_test_and_setsi): Likewise.
-       (arm_sync_new_<sync_optab>si): Likewise.
-       (arm_sync_new_nandsi): Likewise.
-       (arm_sync_old_<sync_optab>si): Likewise.
-       (arm_sync_old_nandsi): Likewise.
-       (arm_sync_compare_and_swap<mode> NARROW): use sync_predtab, fix indent.
-       (arm_sync_lock_test_and_setsi<mode> NARROW): Likewise.
-       (arm_sync_new_<sync_optab><mode> NARROW): Likewise.
-       (arm_sync_new_nand<mode> NARROW): Likewise.
-       (arm_sync_old_<sync_optab><mode> NARROW): Likewise.
-       (arm_sync_old_nand<mode> NARROW): Likewise.
-
-2011-10-14  David Alan Gilbert  <david.gilbert@linaro.org>
-
-       PR target/48126
-       * config/arm/arm.c (arm_output_sync_loop): Move label before barrier.
-
-2011-10-14  David Alan Gilbert  <david.gilbert@linaro.org>
-
-       * config/arm/arm.h (TARGET_HAVE_DMB_MCR): MCR Not available in Thumb1.
-
-2011-10-14  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       * doc/invoke.texi ([Wformat-zero-length]): Tidy.
-
-2011-10-14  Jakub Jelinek  <jakub@redhat.com>
-
-       * gimple.c (walk_stmt_load_store_addr_ops): Call visit_addr also
-       on COND_EXPR/VEC_COND_EXPR comparison operands if they are ADDR_EXPRs.
-
-2011-10-14  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50723
-       * ipa-split.c (split_function): Use GSI_CONTINUE_LINKING.
-
-2011-10-14  Nicola Pero  <nicola.pero@meta-innovation.com>
-
-       * gengtype.c (files_rules): Added rules for objc/objc-map.h and
-       objc/objc-map.c.
-
-2011-10-14  Paolo Carlini  <paolo.carlini@oracle.com>
-
-       PR c++/17212
-       * doc/invoke.texi ([Wformat-zero-length]): Update.
-
-2011-10-14  Iain Sandoe  <iains@gcc.gnu.org>
-
-       PR bootstrap/50699
-       * config/darwin.c (darwin_patch_builtin): Adjust argument type. Only
-       build for powerpc targets.  (darwin_patch_builtins): Only build for
-       powerpc targets.
-
-2011-10-14  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (*avx_cvtdq2pd256_2): Rename to...
-       (avx_cvtdq2pd256_2): ... this.
-       (sseunpackfltmode): New mode attr.
-       (vec_unpacks_float_hi_v8hi, vec_unpacks_float_lo_v8hi,
-       vec_unpacku_float_hi_v8hi, vec_unpacku_float_lo_v8hi): Macroize
-       using VI2_AVX2 iterator.
-       (vec_unpacku_float_hi_v8si, vec_unpacku_float_lo_v8si): New expanders.
-
-2011-10-13  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.md (plusminus): New code iterator.
-       (plusminus_insn): New code attr.
-       (addv2si3, subv2si3, addv4hi3, subv4hi3, addv2hi3, subv2hi3): Merge
-       using plusminus and plusminus_insn.
-       (fpadd64_vis, fpsub64_vis): Likewise.
-
-2011-10-13  Richard Henderson  <rth@redhat.com>
-
-       * doc/md.texi (vec_perm): Document fallback to byte permutation.
-       * genopinit.c (optabs): Add vec_perm_const.
-       * optabs.c (can_vec_perm_expr_p): Rename from expand_vec_perm_expr_p.
-       Reject non-vector modes.  Allow fallback to byte permutation.
-       (expand_vec_perm_expr_1): Split out from ...
-       (expand_vec_perm_expr): ... here.  Allow fallback to byte permutation.
-       * optabs.h (DOI_vec_perm_const, vec_perm_const_optab): New.
-       * tree-vect-generic.c (lower_vec_perm): Update for name change.
-
-2011-10-13  Richard Henderson  <rth@redhat.com>
-
-       * config/rs6000/altivec.md (vec_permv16qi): New pattern.
-
-       * config/rs6000/spu.md (vec_permv16qi): New pattern.
-
-       * config/i386/i386.c (ix86_expand_vec_perm_const): New.
-       * config/i386/i386-protos.h: Update.
-       * config/i386/sse.md (VEC_PERM_CONST): New mode iterator.
-       (vec_perm_const<VEC_PERM_CONST>): New expander.
-
-       * optabs.c (expand_vector_broadcast): New.
-       (expand_binop): Expand scalar shifts of vectors to vector shifts
-       of vectors, if the former isn't supported.
-       * tree-vect-generic.c (expand_vector_operations_1): Don't do that
-       here; always simplify to scalar shift of vector if possible.
-
-       * config/rs6000/rs6000.c (rs6000_expand_vector_init): Fix mode
-       test for vector splat.
-
-2011-10-13  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (vec_set<mode>): Change V_128 iterator mode to V.
-
-2011-10-13  Jakub Jelinek  <jakub@redhat.com>
-           Richard Guenther  <rguenther@suse.de>
-
-       * tree-ssa.c (maybe_optimize_var): Drop TREE_ADDRESSABLE from vector
-       or complex vars even if their DECL_UID is in not_reg_needs bitmap.
-
-2011-10-13  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (reduc_umin_v8hi): New pattern.
-       * config/i386/i386.c (ix86_build_const_vector): Handle
-       also V32QI, V16QI, V16HI and V8HI modes.
-       (emit_reduc_half): New function.
-       (ix86_expand_reduc): Use phminposuw insn for V8HImode UMIN.
-       Use emit_reduc_half helper function.
-
-2011-10-13  Lawrence Crowl  <crowl@google.com>
-           Diego Novillo  <dnovillo@google.com>
-
-       * lto-streamer-in.c (input_struct_function_base): Factor out of ...
-       (input_function): ... here.
-       * lto-streamer-out.c (output_struct_function_base): Factor out of ...
-       (output_function): ... here.
-
-2011-10-13  Gabriel Charette  <gchare@google.com>
-           Diego Novillo  <dnovillo@google.com>
-
-       * streamer-hooks.h (struct streamer_hooks): Add hooks
-       input_location and output_location.
-       * lto-streamer-in.c (lto_input_location): Use
-       streamer_hooks.input_location, if set.
-       * lto-streamer-out.c (lto_output_location): Use
-       streamer_hooks.output_location, if set.
-
-2011-10-13  Eric Botcazou  <ebotcazou@adacore.com>
-
-       * doc/invoke.texi (SPARC options): Document -mfix-at697f.
-       * config/sparc/sparc.opt (mfix-at697f): New option.
-       * config/sparc/sparc.c (TARGET_MACHINE_DEPENDENT_REORG): Define.
-       (sparc_reorg): New function.
-
-2011-10-13  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50712
-       * ipa-split.c (split_function): Always re-gimplify parameters
-       when they are not gimple vals before passing them.  Properly
-       check for type compatibility.
-
-2011-10-13  Tom de Vries  <tom@codesourcery.com>
-
-       * function.c (gimplify_parameters): Set number of arguments of call to
-       BUILT_IN_ALLOCA_WITH_ALIGN to 2.
-
-2011-10-13  Tom de Vries  <tom@codesourcery.com>
-
-       * emit-rtl.c (set_mem_attributes_minus_bitpos): Set MEM_READONLY_P
-       for static const strings.
-       * varasm.c (build_constant_desc): Generate the memory location of the
-       constant using gen_const_mem.
-
-2011-10-13  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50698
-       * tree-data-ref.c (split_constant_offset_1): Also process
-       offsets of &MEM.
-
-2011-10-12  David S. Miller  <davem@davemloft.net>
-
-       * config/sparc/sparc.md (UNSPEC_FPMERGE): Delete.
-       (UNSPEC_MUL16AU, UNSPEC_MUL8, UNSPEC_MUL8SU, UNSPEC_MULDSU): New
-       unspecs.
-       (fpmerge_vis): Remove inaccurate comment, represent using vec_select
-       of a vec_concat.
-       (vec_interleave_lowv8qi, vec_interleave_highv8qi): New insns.
-       (fmul8x16_vis, fmul8x16au_vis, fmul8sux16_vis, fmuld8sux16_vis):
-       Reimplement as unspecs and remove inaccurate comments.
-       (vis3_shift_patname): New code attr.
-       (<vis3_shift_insn><vbits>_vis): Rename to
-       "v<vis3_shift_patname><mode>3".
-       (vis3_addsub_ss_patname): New code attr.
-       (<vis3_addsub_ss_insn><vbits>_vis): Rename to
-       "<vis3_addsub_ss_patname><mode>3".
-       * config/sparc/sparc.c (sparc_vis_init_builtins): Update to
-       accommodate pattern name changes.
-
-       * config/sparc/sparc.h: Do not force TARGET_VIS3 and TARGET_FMAF
-       to zero when assembler lacks support for such instructions.
-       * config/sparc/sparc.c (sparc_option_override): Clear MASK_VIS3
-       and MASK_FMAF in defaults when assembler lacks necessary support.
-
-2011-10-12  Jakub Jelinek  <jakub@redhat.com>
-
-       * config/i386/sse.md (vec_unpacks_lo_<mode>,
-       vec_unpacks_hi_<mode>, vec_unpacku_lo_<mode>,
-       vec_unpacku_hi_<mode>): Change VI124_128 mode to VI124_AVX2.
-       * config/i386/i386.c (ix86_expand_sse_unpack): Handle
-       V32QImode, V16HImode and V8SImode for TARGET_AVX2.
-
-       * config/i386/sse.md (vec_avx2): New mode_attr.
-       (mulv16qi3): Macroize to cover also mulv32qi3 for TARGET_AVX2 into ...
-       (mul<mode>3): ... this.
-
-       * config/i386/i386.md (UNSPEC_VPERMDI): Remove.
-       * config/i386/i386.c (ix86_expand_vec_perm): Handle
-       V16QImode and V32QImode for TARGET_AVX2.
-       (MAX_VECT_LEN): Increase to 32.
-       (expand_vec_perm_blend): Add support for 32-byte integer
-       vectors with TARGET_AVX2.
-       (valid_perm_using_mode_p): New function.
-       (expand_vec_perm_pshufb): Add support for 32-byte integer
-       vectors with TARGET_AVX2.
-       (expand_vec_perm_vpshufb2_vpermq): New function.
-       (expand_vec_perm_vpshufb2_vpermq_even_odd): New function.
-       (expand_vec_perm_even_odd_1): Handle 32-byte integer vectors
-       with TARGET_AVX2.
-       (ix86_expand_vec_perm_builtin_1): Try expand_vec_perm_vpshufb2_vpermq
-       and expand_vec_perm_vpshufb2_vpermq_even_odd.
-       * config/i386/sse.md (VEC_EXTRACT_EVENODD_MODE): Add for TARGET_AVX2
-       32-byte integer vector modes.
-       (vec_pack_trunc_<mode>): Use VI248_AVX2 instead of VI248_128.
-       (avx2_interleave_highv32qi, avx2_interleave_lowv32qi): Remove pasto.
-       (avx2_pshufdv3, avx2_pshuflwv3, avx2_pshufhwv3): Generate
-       4 new operands.
-       (avx2_pshufd_1, avx2_pshuflw_1, avx2_pshufhw_1): Don't use
-       match_dup, instead add 4 new operands and require they have
-       right cross-lane values.
-       (avx2_permv4di): Change into define_expand.
-       (avx2_permv4di_1): New instruction.
-       (avx2_permv2ti): Use nonimmediate_operand instead of register_operand
-       for "xm" constrained operand.
-       (VEC_PERM_AVX2): Add V32QI and V16QI for TARGET_AVX2.
-
-       * config/i386/sse.md (avx2_gathersi<mode>,
-       avx2_gatherdi<mode>, avx2_gatherdi<mode>256): Add clobber of
-       match_scratch, change memory_operand to register_operand,
-       add (mem:BLK (scratch)) use.
-       (*avx2_gathersi<mode>, *avx2_gatherdi<mode>,
-       *avx2_gatherdi<mode>256): Add clobber of match_scratch,
-       add earlyclobber to the output operand and match_scratch,
-       add (mem:BLK (scratch)) use, change the other mem to match_operand.
-       Use %p6 instead of %c6 in the pattern.
-       * config/i386/i386.c (ix86_expand_builtin): Adjust for
-       operand 2 being a Pmode register_operand instead of memory_operand.
-
-2011-10-12  Kai Tietz  <ktietz@redhat.com>
-
-       * config/i386/i386.md (simple_return): Disable if TARGET_SEH is active.
-
-2011-10-12  Steve Ellcey  <sje@cup.hp.com>
-
-       * config/ia64/ia64.c (ia64_init_builtins): Fix unbalanced parentheses.
-
-2011-10-12  Richard Guenther  <rguenther@suse.de>
-
-       * tree-ssa-alias.c (maybe_skip_until): Cache also at the point
-       of the first store we visit in a basic-block.
-       (get_continuation_for_phi): Search for a candidate VUSE that
-       might dominates all others.  Do pairwise disambiguation against
-       that candidate.
-
-2011-10-12  Paul Koning  <pkoning@gcc.gnu.org>
-
-       PR tree-optimization/50189
-       * tree-vrp.c (extract_range_from_assert): Use the type of
-       the variable, not the limit.
-
-2011-10-12  Richard Guenther  <rguenther@suse.de>
-
-       PR tree-optimization/50700
-       * tree-object-size.c (addr_object_size): Simplify and treat
-       MEM_REF bases consistently.
-
-2011-10-12  Bernd Schmidt  <bernds@codesourcery.com>
-
-       * function.c (prepare_shrink_wrap, bb_active_p): New function.
-       (thread_prologue_and_epilogue_insns): Use bb_active_p.  Call
-       prepare_shrink_wrap, then recompute bb_active_p for the last block.
-
-2011-10-12  Joseph Myers  <joseph@codesourcery.com>
-
-       PR c/50565
-       * convert.c (convert_to_integer): Do not narrow operands of
-       pointer subtraction.
-
-2011-10-12  Nick Clifton  <nickc@redhat.com>
-
-       * config/arm/arm.h (EMIT_EABI_ATTRIBUTE): New macro.  Used to
-       emit a .eabi_attribute assembler directive, possibly with a
-       comment attached.
-       * config/arm/arm.c (arm_file_start): Use the new macro.
-       * config/arm/arm-c.c (arm_output_c_attributes): Likewise.
-
-2011-10-12  Georg-Johann Lay  <avr@gjlay.de>
-
-       PR target/49939
-       * config/avr/avr.md (*movqi): Rename to movqi_insn.
-       (*call_insn): Rename to call_insn.
-       (*call_value_insn): Rename to call_value_insn.
-       * config/avr/avr.c (avr_2word_insn_p): New static function.
-       (jump_over_one_insn_p): Use it.
-
-2011-10-12  Richard Sandiford  <richard.sandiford@linaro.org>
-
-       PR middle-end/48660
-       * expr.h (copy_blkmode_to_reg): Declare.
-       * expr.c (copy_blkmode_to_reg): New function.
-       (expand_assignment): Don't expand register RESULT_DECLs before
-       the lhs.  Use copy_blkmode_to_reg to copy BLKmode values into a
-       RESULT_DECL register.
-       (expand_expr_real_1): Handle BLKmode decls when looking for promotion.
-       * stmt.c (expand_return): Move BLKmode-to-register code into
-       copy_blkmode_to_reg.
-
-2011-10-11  Eric Botcazou  <ebotcazou@adacore.com>
-
-       PR target/49965
-       * config/sparc/sparc.md (mov<I:mode>cc): Do not save comparison code.
-       (mov<F:mode>cc): Likewise.
-
-2011-10-11  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
-
-       * tree-ssa-address.c (copy_ref_info): Remove copy of TREE_THIS_NOTRAP.
-
-2011-10-11  Michael Meissner  <meissner@linux.vnet.ibm.com>
-
-       * tree.h (built_in_decls): Delete old interface with two parallel
-       arrays to hold standard builtin declarations, and replace it with
-       a function based interface that can support creating builtins on
-       the fly in the future.  Change all uses, and poison the old
-       names.  Make sure 0 is not a legitimate builtin index.
-       (implicit_built_in_decls): Ditto.
-       (built_in_info): Ditto.
-       (BUILTIN_VALID_P): Ditto.
-       (builtin_decl_explicit): Ditto.
-       (builtin_decl_implicit): Ditto.
-       (set_builtin_decl): Ditto.
-       (set_builtin_decl_implicit_p): Ditto.
-       (builtin_decl_explicit_p): Ditto.
-       (builtin_decl_implicit_p): Ditto.
-       * tree-complex.c (expand_complex_libcall): Ditto.
-       * tree-loop-distribution.c (generate_memset_zero): Ditto.
-       * tree-ssa-strlen.c (get_string_length): Ditto.
-       (handle_builtin_strcpy): Ditto.
-       (handle_builtin_strcat): Ditto.
-       * tree.c (iterative_hash_expr): Ditto.
-       (local_define_builtin): Ditto.
-       (build_common_builtin_nodes): Ditto.
-       * builtins.c (built_in_decls): Ditto.
-       (implicit_built_in_decls): Ditto.
-       (built_in_info): Ditto
-       (expand_builtin_classify_type): Ditto.
-       (mathfn_built_in_1): Ditto.
-       (expand_builtin_cexpi): Ditto.
-       (expand_builtin_mempcpy_args): Ditto.
-       (expand_builtin_stpcpy): Ditto.
-       (gimplify_va_arg_expr): Ditto.
-       (expand_builtin_sync_operation): Ditto.
-       (build_builtin_expect_predicate): Ditto.
-       (fold_builtin_memory_op): Ditto.
-       (fold_builtin_strcpy): Ditto.
-       (fold_builtin_stpcpy): Ditto.
-       (fold_builtin_strncpy): Ditto.
-       (fold_builtin_interclass_mathfn): Ditto.
-       (fold_builtin_classify): Ditto.
-       (fold_builtin_2): Ditto.
-       (fold_builtin_strstr): Ditto.
-       (fold_builtin_strrchr): Ditto.
-       (fold_builtin_strpbrk): Ditto.
-       (fold_builtin_strcat): Ditto.
-       (fold_builtin_strn