+2011-08-09 Kirill Yukhin <kirill.yukhin@intel.com>
+
+ * config/i386/i386.c: Remove traling spaces.
+ * config/i386/sse.md: Likewise.
+ (*fma_fmadd_<mode>): Update.
+ (*fma_fmsub_<mode>): Likewise.
+ (*fma_fnmadd_<mode>): Likewise.
+ (*fma_fnmsub_<mode>): Likewise.
+
+2011-08-09 Nick Clifton <nickc@redhat.com>
+
+ * config/rx/rx.md: Disable extender peepholes at -O3.
+
+2011-08-09 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/49781
+ * config/i386/i386.md (reload_noff_load): New.
+ (reload_noff_store): Ditto.
+ * config/i386/i386.c (ix86_secondary_reload): Use
+ CODE_FOR_reload_noff_load and CODE_FOR_reload_noff_store to handle
+ double-word moves from/to non-offsetable addresses instead of
+ generating XMM temporary.
+
+2011-08-09 Anatoly Sokolov <aesok@post.ru>
+
+ * config/mmix/mmix.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P): Remove.
+
+2011-08-09 Ira Rosen <ira.rosen@linaro.org>
+
+ PR tree-optimization/50014
+ * tree-vect-loop.c (vectorizable_reduction): Get def type before
+ calling vect_get_vec_def_for_stmt_copy ().
+
+2011-08-08 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR rtl-optimization/49990
+ * ira-costs.c (print_allocno_costs, print_pseudo_costs): Don't
+ ignore classes which can not change mode.
+ (find_costs_and_classes): Ditto.
+
+2011-08-08 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/49990
+ * config/i386/i386.c (ix86_expand_prologue): Call
+ for SEH target gen_prologue_use instead of gen_blockage
+ at prologue's end.
+
+2011-08-08 Martin Jambor <mjambor@suse.cz>
+
+ PR middle-end/49923
+ * tree-sra.c (access_precludes_ipa_sra_p): Also check access
+ memory alignment.
+
+2011-08-08 Diego Novillo <dnovillo@google.com>
+
+ * Makefile.in (LTO_STREAMER_H): Add DIAGNOSTIC_H.
+ (DATA_STREAMER_H): New.
+ (GIMPLE_STREAMER_H): New.
+ (TREE_STREAMER_H): New.
+ (STREAMER_HOOKS_H): New.
+ (OBJS): Add data-streamer.o, data-streamer-in.o, data-streamer-out.o,
+ gimple-streamer-in.o, gimple-streamer-out.o, streamer-hooks.o,
+ tree-streamer.o, tree-streamer-in.o and tree-streamer-out.o.
+ (data-streamer.o): New.
+ (data-streamer-in.o): New.
+ (data-streamer-out.o): New.
+ (gimple-streamer-in.o): New.
+ (gimple-streamer-out.o): New.
+ (streamer-hooks.o): New.
+ (tree-streamer.o): New.
+ (tree-streamer-in.o): New.
+ (tree-streamer-out.o): New.
+ (lto-cgraph.o): Add dependency on DATA_STREAMER_H and TREE_STREAMER_H.
+ (lto-streamer-in.o): Add dependency on DATA_STREAMER_H,
+ GIMPLE_STREAMER_H and TREE_STREAMER_H.
+ (lto-streamer-out.o): Add dependency on DATA_STREAMER_H,
+ GIMPLE_STREAMER_H and TREE_STREAMER_H.
+ (lto-streamer.o): Add dependency on STREAMER_HOOKS_H.
+ (ipa-prop.o): Add dependency on DATA_STREAMER_H and TREE_STREAMER_H.
+ (ipa-inline-analysis.o): Likewise.
+ (ipa-pure-const.o): Likewise.
+ * data-streamer-in.c: New.
+ * data-streamer-out.c: New.
+ * data-streamer.c: New.
+ * data-streamer.h: New.
+ * gimple-streamer-in.c: New.
+ * gimple-streamer-out.c: New.
+ * gimple-streamer.h: New.
+ * ipa-inline-analysis.c: Include data-streamer.h.
+ * ipa-prop.c: Include data-streamer.h.
+ * ipa-pure-const.c: Include data-streamer.h.
+ * lto-cgraph.c: Include data-streamer.h.
+ * lto-section-in.c (lto_input_uleb128): Move to data-streamer-in.c.
+ (lto_input_widest_uint_uleb128): Likewise.
+ (lto_input_sleb128): Likewise.
+ (bp_unpack_var_len_unsigned): Likewise.
+ (bp_unpack_var_len_int): Likewise.
+ * lto-section-out.c (lto_output_uleb128_stream): Move to
+ data-streamer-out.c.
+ (lto_output_widest_uint_uleb128_stream): Likewise.
+ (lto_output_sleb128_stream): Likewise.
+ (bp_pack_var_len_unsigned): Likewise.
+ (bp_pack_var_len_int): Likewise.
+ * lto-streamer-in.c: Include data-streamer.h and gimple-streamer.h.
+ (struct string_slot): Remove. Update all users.
+ (lto_tag_check_set): Make extern.
+ (lto_tag_check_range): Move to lto-streamer.h.
+ (lto_tag_check): Likewise.
+ (hash_string_slot_node): Remove. Update all users.
+ (eq_string_slot_node): Remove. Update all users.
+ (string_for_index): Move to data-streamer-in.c
+ (input_string_internal): Likewise.
+ (input_string_cst): Move to tree-streamer-in.c.
+ (input_identifier): Likewise.
+ (lto_input_string): Move to data-streamer-in.c
+ (input_record_start): Move to data-streamer.h
+ (canon_file_name): Use new definition of struct string_slot
+ from data-streamer.h. Set S_SLOT.LEN.
+ (lto_input_location): Make extern.
+ (lto_input_chain): Move to tree-streamer-in.c.
+ (lto_init_eh): Make extern.
+ (input_phi): Move to gimple-streamer-in.c.
+ (input_gimple_stmt): Likewise.
+ (input_bb): Likewise.
+ (unpack_ts_base_value_fields): Move to tree-streamer-in.c.
+ (unpack_ts_real_cst_value_fields): Likewise.
+ (unpack_ts_fixed_cst_value_fields): Likewise.
+ (unpack_ts_decl_common_value_fields): Likewise.
+ (unpack_ts_decl_wrtl_value_fields): Likewise.
+ (unpack_ts_decl_with_vis_value_fields): Likewise.
+ (unpack_ts_function_decl_value_fields): Likewise.
+ (unpack_ts_type_common_value_fields): Likewise.
+ (unpack_ts_block_value_fields): Likewise.
+ (unpack_ts_translation_unit_decl_value_fields): Likewise.
+ (unpack_value_fields): Likewise.
+ (lto_materialize_tree): Likewise.
+ (lto_input_ts_common_tree_pointers): Likewise.
+ (lto_input_ts_vector_tree_pointers): Likewise.
+ (lto_input_ts_complex_tree_pointers): Likewise.
+ (lto_input_ts_decl_minimal_tree_pointers): Likewise.
+ (lto_input_ts_decl_common_tree_pointers): Likewise.
+ (lto_input_ts_decl_non_common_tree_pointers): Likewise.
+ (lto_input_ts_decl_with_vis_tree_pointers): Likewise.
+ (lto_input_ts_field_decl_tree_pointers): Likewise.
+ (lto_input_ts_function_decl_tree_pointers): Likewise.
+ (lto_input_ts_type_common_tree_pointers): Likewise.
+ (lto_input_ts_type_non_common_tree_pointers): Likewise.
+ (lto_input_ts_list_tree_pointers): Likewise.
+ (lto_input_ts_vec_tree_pointers): Likewise.
+ (lto_input_ts_exp_tree_pointers): Likewise.
+ (lto_input_ts_block_tree_pointers): Likewise.
+ (lto_input_ts_binfo_tree_pointers): Likewise.
+ (lto_input_ts_constructor_tree_pointers): Likewise.
+ (lto_input_ts_target_option): Likewise.
+ (lto_input_ts_translation_unit_decl_tree_pointers): Likewise.
+ (lto_input_tree_pointers): Likewise.
+ (lto_get_pickled_tree): Likewise.
+ (lto_get_builtin_tree): Likewise.
+ (lto_read_tree): Likewise.
+ (lto_input_integer_cst): Likewise.
+ (lto_input_tree): Likewise.
+ * lto-streamer-out.c: Include data-streamer.h,
+ gimple-streamer.h and streamer-hooks.h.
+ (struct string_slot): Move to data-streamer.h.
+ (hash_string_slot_node): Likewise.
+ (eq_string_slot_node): Likewise.
+ (lto_string_index): Move to data-streamer-out.c.
+ (lto_output_string_with_length): Likewise.
+ (lto_output_string): Likewise.
+ (output_string_cst): Move to tree-streamer-out.c.
+ (output_identifier): Likewise.
+ (output_zero): Move to data-streamer-out.c
+ (output_uleb128): Likewise.
+ (output_sleb128): Likewise.
+ (output_record_start): Move to data-streamer.h
+ (pack_ts_base_value_fields): Move to tree-streamer-out.c.
+ (pack_ts_real_cst_value_fields): Likewise.
+ (pack_ts_fixed_cst_value_fields): Likewise.
+ (pack_ts_decl_common_value_fields): Likewise.
+ (pack_ts_decl_wrtl_value_fields): Likewise.
+ (pack_ts_decl_with_vis_value_fields): Likewise.
+ (pack_ts_function_decl_value_fields): Likewise.
+ (pack_ts_type_common_value_fields): Likewise.
+ (pack_ts_block_value_fields): Likewise.
+ (pack_ts_translation_unit_decl_value_fields): Likewise.
+ (pack_value_fields): Likewise.
+ (lto_output_chain): Likewise.
+ (lto_output_ts_common_tree_pointers): Likewise.
+ (lto_output_ts_vector_tree_pointers): Likewise.
+ (lto_output_ts_complex_tree_pointers): Likewise.
+ (lto_output_ts_decl_minimal_tree_pointers): Likewise.
+ (lto_output_ts_decl_common_tree_pointers): Likewise.
+ (lto_output_ts_decl_non_common_tree_pointers): Likewise.
+ (lto_output_ts_decl_with_vis_tree_pointers): Likewise.
+ (lto_output_ts_field_decl_tree_pointers): Likewise.
+ (lto_output_ts_function_decl_tree_pointers): Likewise.
+ (lto_output_ts_type_common_tree_pointers): Likewise.
+ (lto_output_ts_type_non_common_tree_pointers): Likewise.
+ (lto_output_ts_list_tree_pointers): Likewise.
+ (lto_output_ts_vec_tree_pointers): Likewise.
+ (lto_output_ts_exp_tree_pointers): Likewise.
+ (lto_output_ts_block_tree_pointers): Likewise.
+ (lto_output_ts_binfo_tree_pointers): Likewise.
+ (lto_output_ts_constructor_tree_pointers): Likewise.
+ (lto_output_ts_target_option): Likewise.
+ (lto_output_ts_translation_unit_decl_tree_pointers): Likewise.
+ (lto_output_tree_pointers): Likewise.
+ (lto_output_tree_header): Likewise.
+ (lto_output_builtin_tree): Likewise.
+ (lto_write_tree): Likewise.
+ (lto_output_integer_cst): Likewise.
+ (lto_output_tree): Likewise.
+ (output_phi): Move to gimple-streamer-out.c.
+ (output_gimple_stmt): Likewise.
+ (output_bb): Likewise.
+ * lto-streamer.c: Include tree-streamer.h and streamer-hooks.h.
+ (streamer_hooks): Move to streamer-hooks.c.
+ (check_handled_ts_structures): Move to tree-streamer.c
+ (lto_streamer_cache_add_to_node_array): Likewise.
+ (lto_streamer_cache_insert_1): Likewise.
+ (lto_streamer_cache_insert): Likewise.
+ (lto_streamer_cache_insert_at): Likewise.
+ (lto_streamer_cache_append): Likewise.
+ (lto_streamer_cache_lookup): Likewise.
+ (lto_streamer_cache_get): Likewise.
+ (lto_record_common_node): Likewise.
+ (lto_preload_common_nodes): Likewise.
+ (lto_streamer_cache_create): Likewise.
+ (lto_streamer_cache_delete): Likewise.
+ (streamer_hooks_init): Move to streamer-hooks.c.
+ * lto-streamer.h: Include diagnostic.h
+ (struct output_block, struct lto_input_block,
+ struct data_in, struct bitpack_d): Remove forward declarations.
+ (struct bitpack_d): Move to data-streamer.h.
+ (struct lto_streamer_cache_d): Move to tree-streamer.h.
+ (struct streamer_hooks): Move to streamer-hooks.h.
+ (bp_pack_var_len_unsigned): Move to data-streamer.h.
+ (bp_pack_var_len_int): Likewise.
+ (bp_unpack_var_len_unsigned): Likewise.
+ (bp_unpack_var_len_int): Likewise.
+ (lto_input_location): Declare.
+ (lto_tag_check_set): Declare.
+ (lto_init_eh): Declare.
+ (lto_output_tree_ref): Declare.
+ (lto_output_location): Declare.
+ (bitpack_create): Move to data-streamer.h.
+ (bp_pack_value): Likewise.
+ (lto_output_bitpack): Likewise.
+ (lto_input_bitpack): Likewise.
+ (bp_unpack_value): Likewise.
+ (lto_output_1_stream): Likewise.
+ (lto_input_1_unsigned): Likewise.
+ (lto_output_int_in_range): Likewise.
+ (lto_input_int_in_range): Likewise.
+ (bp_pack_int_in_range): Likewise.
+ (bp_unpack_int_in_range): Likewise.
+ (lto_output_enum): Likewise.
+ (lto_input_enum): Likewise.
+ (bp_pack_enum): Likewise.
+ (bp_unpack_enum): Likewise.
+ * streamer-hooks.c: New.
+ * streamer-hooks.h: New.
+ * tree-streamer-in.c: New.
+ * tree-streamer-out.c: New.
+ * tree-streamer.c: New.
+ * tree-streamer.h: New.
+
+2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * gthr-posix95.h: Remove.
+ * gthr.h [_PTHREADS95]: Remove.
+ * configure.ac (enable_threads): Remove posix95.
+ * configure: Regenerate.
+ * doc/install.texi (Configuration, --enable-threads): Remove posix95.
+
+2011-08-08 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/49781
+ * config/i386/i386.c (ix86_decompose_address): Allow zero-extended
+ SImode addresses.
+ (ix86_print_operand_address): Handle zero-extended addresses.
+ (memory_address_length): Add length of addr32 prefix for
+ zero-extended addresses.
+ (ix86_secondary_reload): Handle moves to/from double-word general
+ registers from/to zero-extended addresses.
+ * config/i386/predicates.md (lea_address_operand): Reject
+ zero-extended operands.
+
+2011-08-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR other/48007
+ * config.gcc (libgcc_tm_file): Add i386/value-unwind.h for Linux/x86.
+
+ * system.h (REG_VALUE_IN_UNWIND_CONTEXT): Poisoned.
+ (ASSUME_EXTENDED_UNWIND_CONTEXT): Likewise.
+
+ * unwind-dw2.c (ASSUME_EXTENDED_UNWIND_CONTEXT): New.
+ (_Unwind_Context_Reg_Val): Likewise.
+ (_Unwind_Get_Unwind_Word): Likewise.
+ (_Unwind_Get_Unwind_Context_Reg_Val): Likewise.
+ (_Unwind_Context): Use _Unwind_Context_Reg_Val on the reg field.
+ (_Unwind_IsExtendedContext): Check ASSUME_EXTENDED_UNWIND_CONTEXT
+ for EXTENDED_CONTEXT_BIT.
+ (__frame_state_for): Likewise.
+ (uw_init_context_1): Likewise.
+ (_Unwind_GetGR): Updated.
+ (_Unwind_SetGR): Likewise.
+ (_Unwind_GetGRPtr): Likewise.
+ (_Unwind_SetGRPtr): Likewise.
+ (_Unwind_SetGRValue): Likewise.
+ (_Unwind_GRByValue): Likewise.
+ (uw_install_context_1): Likewise.
+
+ * doc/tm.texi.in: Document REG_VALUE_IN_UNWIND_CONTEXT and
+ ASSUME_EXTENDED_UNWIND_CONTEXT.
+ * doc/tm.texi: Regenerated.
+
+2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * Makefile.in (gengtype$(exeext)): Add $(LDFLAGS).
+
+2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * doc/invoke.texi (DEC Alpha Options, -mcpu): native support isn't
+ Linux/GNU-specific.
+ (DEC Alpha Options, -mtune): Likewise.
+ (MIPS Options, -march): native is supported on IRIX.
+
+2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * config/sparc/driver-sparc.c: New file.
+ * config/sparc/x-sparc: New file.
+ * config.host: Use driver-sparc.o, sparc/x-sparc on sparc*-*-solaris2*.
+ * config/sparc/sparc.opt (native): New value for enum processor_type.
+ * config/sparc/sparc-opts.h (PROCESSOR_NATIVE): Declare.
+ * config/sparc/sparc.c (sparc_option_override): Abort if
+ PROCESSOR_NATIVE gets here.
+ * config/sparc/sol2.h [__sparc__] (host_detect_local_cpu): Declare.
+ (EXTRA_SPEC_FUNCTIONS, MCPU_MTUNE_NATIVE_SPECS,
+ DRIVER_SELF_SPECS): Define.
+ * doc/invoke.texi (SPARC Options, -mcpu): Document native.
+ (SPARC Options, -mtune): Likewise.
+ * configure.ac (EXTRA_GCC_LIBS): Check for libkstat.
+ Substitute result.
+ * configure: Regenerate.
+ * Makefile.in (EXTRA_GCC_LIBS): Set.
+ (xgcc$(exeext)): Add $(EXTRA_GCC_LIBS).
+ (cpp$(exeext)): Likewise.
+
+2011-08-08 Richard Guenther <rguenther@suse.de>
+
+ * tree-vrp.c (extract_range_from_unary_expr_1): New function,
+ split out from ...
+ (extract_range_from_unary_expr): ... here. Handle BIT_NOT_EXPR
+ by composition.
+
+2011-08-08 Mikael Pettersson <mikpe@it.uu.se>
+
+ PR tree-optimization/50005
+ * ipa-inline-analysis (remap_predicate): Add cast to
+ silence signed/unsigned comparison warning.
+
+2011-08-08 Richard Sandiford <richard.sandiford@linaro.org>
+
+ * modulo-sched.c (get_sched_window): Use a table for the debug output.
+ Print the current ii.
+ (sms_schedule_by_order): Reduce whitespace in dump line.
+
+2011-08-08 Richard Sandiford <richard.sandiford@linaro.org>
+
+ * modulo-sched.c (get_sched_window): Use just one loop for predecessors
+ and one loop for successors. Fix upper bound of memory range.
+
+2011-08-06 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/50001
+ * config/alpha/alpha.c (alpha_instantiate_decls): New function.
+ (TARGET_INSTANTIATE_DECLS): New define.
+
+2011-08-06 Paolo Bonzini <bonzini@gnu.org>
+ Mikael Morin <mikael.morin@sfr.fr>
+
+ * Makefile.in (INCLUDES_FOR_TARGET): New.
+ (LIBGCC2_CFLAGS): Use it.
+ (CRTSTUFF_CFLAGS): Use it instead of INCLUDES.
+
+2011-08-06 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c (ix86_compute_frame_layout): Simplify
+ frame->save_regs_using_mov calculation.
+
+2011-08-06 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (ssemodesuffix): Remove V8SI mode.
+ * config/i386/sse.md (castmode): New mode attribute.
+ (avx_<castmode><avxsizesuffix>_<castmode>): Rename from
+ avx_<ssemodesuffix><avxsizesuffix>_<ssemodesuffix>.
+
+2011-08-05 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/49494
+ * ipa-inline-analysis.c (remap_predicate): Add bounds check.
+
+2011-08-05 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/49500
+ * tree-emultls.c (new_emutls_decl):Add alias_of parameter;
+ handle aliases.
+ (create_emultls_var):New function.
+ (ipa_lower_emutls): Handle aliases correctly.
+
+2011-08-05 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/49735
+ * ipa-inline.c (recursive_inlining): Look through aliases.
+
+2011-08-05 Jason Merrill <jason@redhat.com>
+
+ * config/i386/i386.c (setup_incoming_varargs_ms_64): Move
+ declarations to beginning of function.
+
+2011-08-05 Bernd Schmidt <bernds@codesourcery.com>
+
+ PR rtl-optimization/49900
+ * sched-ebb.c (add_deps_for_risky_insns): Also add dependencies to
+ ensure basic blocks stay in the same order.
+
+2011-08-05 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/s390/s390.c (s390_expand_cs_hqi): Add new arguments to
+ store_bit_field.
+ (s390_expand_atomic): Same.
+
+2011-08-05 Richard Henderson <rth@redhat.com>
+
+ PR rtl-opt/49977
+ * dwarf2cfi.c (scan_insn_after): Split out of ...
+ (scan_trace): ... here. Correctly place notes wrt sequences.
+
+2011-08-05 Kaz Kojima <kkojima@gcc.gnu.org>
+ Richard Henderson <rth@redhat.com>
+
+ PR rtl-opt/49982
+ * expr.c (fixup_args_size_notes): Look through no-op moves.
+
+2011-08-05 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*push<mode>2): Use "o" constraint instead
+ of "m" for operand 0. Add type and mode attribute.
+ (*pushxf_nointeger"): Use "<" constraint for operand 0.
+ (*pushdf_rex64): New pattern, split out of *pushdf. Use "m"
+ constraint instead of "o" for opreand 1.
+ (*pushdf): Disable for TARGET_64BIT. Correct mode attribute.
+ (*movdi_internal_rex64): Use "!o" constraint instead of "!m" for
+ operand 0, alternative 4.
+ (*movdf_internal_rex64): Ditto for operand 0, alernative 6.
+
+2011-08-05 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/predicates.md (lea_address_operand): Rename from
+ no_seg_address_operand.
+ * config/i386/i386.md (*lea_1): Update operand 1 predicate for rename.
+ (*lea_1_zext): Ditto.
+ (*lea_2): Ditto.
+ (*lea_2_zext): Ditto.
+
+2011-08-05 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c (ix86_print_operand_address): Handle SUBREGs of
+ parts.base and parts.index.
+ * config/i386/predicates.md (aligned_operand): Ditto.
+ (cmpxchg8b_pic_memory_operand): Ditto.
+
+2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * config/soft-fp: Move to ../libgcc.
+ * Makefile.in (SFP_MACHINE): Remove.
+ (libgcc-support): Remove $(SFP_MACHINE) dependency.
+ * config/arm/sfp-machine.h: Move to ../libgcc/config/arm.
+ * config/arm/t-arm-softfp: Move to
+ ../libgcc/config/arm/t-softfp.
+ * config/c6x/sfp-machine.h: Move to ../libgcc/config/c6x.
+ * config/c6x/t-c6x-softfp: Remove.
+ * config/i386/sfp-machine.h: Move to ../libgcc/config/i386.
+ * config/i386/t-fprules-softfp: Move to
+ ../libgcc/config/t-softfp-tf.
+ * config/ia64/sfp-machine.h: Move to ../libgcc/config/ia64.
+ * config/ia64/t-fprules-softfp: Remove.
+ * config/lm32/sfp-machine.h: Move to ../libgcc/config/lm32.
+ * config/lm32/t-fprules-softfp: Remove.
+ * config/moxie/sfp-machine.h: Remove.
+ * config/moxie/t-moxie-softfp: Remove.
+ * config/rs6000/darwin-ldouble-format: Move to
+ ../libgcc/config/rs6000/ibm-ldouble-format.
+ * config/rs6000/darwin-ldouble.c: Move to
+ ../libgcc/config/rs6000/ibm-ldouble.c
+ * config/rs6000/libgcc-ppc-glibc.ver: Move to ../libgcc/config/rs6000.
+ * config/rs6000/libgcc-ppc64.ver: Likewise.
+ * config/rs6000/sfp-machine.h: Likewise.
+ * config/rs6000/t-aix43 (SHLIB_MAPFILES): Remove
+ $(srcdir)/config/rs6000/libgcc-ppc64.ver.
+ (LIB2FUNCS_EXTRA): Remove.
+ (TARGET_LIBGCC2_CFLAGS): Remove.
+ * config/rs6000/t-aix52: Likewise
+ * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Remove
+ $(srcdir)/config/rs6000/darwin-ldouble.c.
+ (SHLIB_MAPFILES): Remove.
+ * config/rs6000/t-darwin64 (LIB2FUNCS_EXTRA): Remove
+ $(srcdir)/config/rs6000/darwin-ldouble.c.
+ * config/rs6000/t-fprules-softfp: Move to
+ ../libgcc/config/t-softfp-sfdf.
+ * config/rs6000/t-freebsd: Move to ../libgcc/config/rs6000.
+ * config/rs6000/t-linux64 (softfp_wrap_start, softfp_wrap_end): Remove.
+ * config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA): Remove
+ $(srcdir)/config/rs6000/darwin-ldouble.c.
+ * config/score/sfp-machine.h: Move to ../libgcc/config/score.
+ * config/score/t-score-softfp: Remove.
+ * config.gcc (arm*-*-linux*): Remove arm/t-arm-softfp,
+ soft-fp/t-softfp from tmake_file.
+ (arm*-*-uclinux*): Likewise.
+ (arm*-*-ecos-elf): Likewise.
+ (arm*-*-eabi*, arm*-*-symbianelf*): Likewise.
+ (arm*-*-rtems*): Likewise.
+ (arm*-*-elf): Likewise.
+ (moxie-*-elf): Remove moxie/t-moxie-softfp, soft-fp/t-softfp from
+ tmake_file.
+ (moxie-*-uclinux*): Likewise.
+ (moxie-*-rtems*): Likewise.
+ (lm32-*-elf*): Remove lm32/t-fprules-softfp, soft-fp/t-softfp from
+ tmake_file.
+ (lm32-*-rtems*): Likewise.
+ (lm32-*-uclinux*): Likewise.
+ (powerpc-*-freebsd*): Remove rs6000/t-freebsd,
+ rs6000/t-fprules-softfp, soft-fp/t-softfp from tmake_file.
+ (powerpc-*-linux*, powerpc64-*-linux*): Remove
+ rs6000/t-fprules-softfp, soft-fp/t-softfp from tmake_file.
+ (score-*-elf): Remove score/t-score-softfp, soft-fp/t-softfp from
+ tmake_file.
+ (tic6x-*-elf): Remove c6x/t-c6x-softfp, soft-fp/t-softfp from
+ tmake_file.
+ (tic6x-*-uclinux): Likewise.
+ (i[34567]86-*-darwin*, x86_64-*-darwin*): Remove i386/t-fprules-softfp,
+ soft-fp/t-softfp from tmake_file.
+ (i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu)
+ (x86_64-*-kfreebsd*-gnu, i[34567]86-*-gnu*): Likewise.
+ (i[34567]86-*-solaris2*, x86_64-*-solaris2.1[0-9]*): Likewise.
+ (i[34567]86-*-cygwin*, i[34567]86-*-mingw*, x86_64-*-mingw*): Likewise.
+ (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Likewise.
+
+2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS, TPBIT_FUNCS): Remove.
+ (libgcc-support): Remove $(FPBIT), $(DPBIT), $(TPBIT) dependencies.
+ (libgcc.mvars): Remove FPBIT, FPBIT_FUNCS, DPBIT, DPBIT_FUNCS,
+ TPBIT, TPBIT_FUNCS.
+ * config/fp-bit.c, config/fp-bit.h: Move to ../libgcc.
+ * config/arm/t-strongarm-elf (FPBIT, DPBIT, dp-bit.c, fp-bit.c):
+ Remove.
+ * config/arm/t-vxworks: Likewise.
+ * config/arm/t-wince-pe: Likewise.
+ * config/avr/t-avr (fp-bit.c, FPBIT): Remove.
+ * config/bfin/t-bfin (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ * config/bfin/t-bfin-elf: Likewise.
+ * config/bfin/t-bfin-linux: Likewise.
+ * config/bfin/t-bfin-uclinux: Likewise.
+ * config/cris/t-cris (FPBIT, DPBIT, dp-bit.c, tmplibgcc_fp_bit.c):
+ Remove.
+ * config/fr30/t-fr30: Likewise.
+ * config/frv/t-frv: Likewise.
+ * config/h8300/t-h8300 (FPBIT, fp-bit.c): Remove.
+ * config/iq2000/t-iq2000 (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ * config/m32c/t-m32c: Likewise.
+ * config/m32r/t-linux: (LIB2FUNCS_EXTRA, fp-bit.c, dp-bit.c): Remove.
+ * config/m32r/t-m32r (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ * config/mcore/t-mcore: Likewise.
+ * config/mep/t-mep: Likewise.
+ * config/microblaze/t-microblaze: Likewise.
+ * config/mips/t-linux64 (TPBIT, tp-bit.c): Remove.
+ * config/mips/t-mips (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ * config/mips/t-sdemtk (FPBIT, DPBIT): Remove.
+ * config/mips/t-sr71k (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ * config/mn10300/t-linux: Remove.
+ * config/mn10300/t-mn10300 (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ * config/pdp11/t-pdp11: Likewise.
+ * config/picochip/t-picochip (FPBIT, fp-bit.c): Remove.
+ * config/rs6000/ppc64-fp.c: Move to ../libgcc/config/rs6000.
+ * config/rs6000/t-aix43 (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ (LIB2FUNCS_EXTRA): Remove $(srcdir)/config/rs6000/ppc64-fp.c.
+ * config/rs6000/t-aix52: Likewise.
+ * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Remove
+ $(srcdir)/config/rs6000/ppc64-fp.c.
+ * config/rs6000/t-fprules-fpbit: Remove.
+ * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Remove.
+ * config/rs6000/t-lynx (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ * config/sh/t-netbsd (FPBIT, DPBIT): Remove.
+ * config/sh/t-sh (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ * config/sparc/t-elf: Likewise.
+ * config/sparc/t-leon: Likewise.
+ * config/sparc/t-leon3: Likewise.
+ * config/spu/t-spu-elf: Likewise.
+ (DPBIT_FUNCS): Remove.
+ * config/stormy16/t-stormy16 (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
+ * config/v850/t-v850: Likewise.
+ * config.gcc (avr-*-rtems*): Add avr/avr-lib.h to libgcc_tm_file.
+ (avr-*-*): Likewise.
+ (h8300-*-rtems*): Set libgcc_tm_file.
+ (h8300-*-elf*): Likewise.
+ (powerpc-*-eabisimaltivec*): Remove rs6000/t-fprules-fpbit from
+ tmake_file.
+ (powerpc-*-eabisim*): Likewise.
+ (powerpc-*-elf*): Likewise.
+ (powerpc-*-eabialtivec*): Likewise.
+ (powerpc-xilinx-eabi*): Likewise.
+ (powerpc-*-eabi*): Likewise.
+ (powerpc-*-rtems*): Likewise.
+ (powerpc-wrs-vxworks, powerpc-wrs-vxworksae): Likewise.
+ (powerpcle-*-elf*): Likewise.
+ (powerpcle-*-eabisim*): Likewise.
+ (powerpcle-*-eabi*): Likewise.
+ (rx-*-elf*): Add rx/rx-lib.h to libgcc_tm_file.
+ (am33_2.0-*-linux*): Remove mn10300/t-linux from tmake_file.
+ * doc/fragments.texi (Target Fragment, Floating Point Emulation):
+ Remove.
+
+2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * Makefile.in (UNWIND_H): Remove.
+ (LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): Move to
+ ../libgcc/Makefile.in.
+ (LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL): Likewise.
+ (LIBUNWINDDEP): Remove.
+ (libgcc-support): Remove LIB2ADDEH, $(srcdir)/emutls.c dependencies.
+ (libgcc.mvars): Remove LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED,
+ LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL.
+ (stmp-int-hdrs): Remove $(UNWIND_H) dependency.
+ Don't copy $(UNWIND_H).
+ * config.gcc (ia64*-*-linux*): Remove with_system_libunwind handling.
+ * configure.ac (GCC_CHECK_UNWIND_GETIPINFO): Remove.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+ * emutls.c, unwind-c.c, unwind-compat.c, unwind-compat.h,
+ unwind-dw2-fde-compat.c, unwind-dw2-fde-glibc.c, unwind-dw2-fde.c,
+ unwind-dw2-fde.h, unwind-dw2.c, unwind-dw2.h, unwind-generic.h,
+ unwind-pe.h, unwind-sjlj.c, unwind.inc: Move to ../libgcc.
+ * unwind-dw2-fde-darwin.c: Move to ../libgcc/config.
+ * config/arm/libunwind.S, config/arm/pr-support.c,
+ config/arm/unwind-arm.c, config/arm/unwind-arm.h: Move to
+ ../libgcc/config/arm.
+ * config/arm/t-bpabi (UNWIND_H, LIB2ADDEH): Remove.
+ * config/arm/t-symbian (UNWIND_H, LIB2ADDEH): Remove.
+ * config/frv/t-frv ($(T)frvbegin$(objext)): Use
+ $(srcdir)/../libgcc to refer to unwind-dw2-fde.h.
+ ($(T)frvend$(objext)): Likewise.
+ * config/ia64/t-glibc (LIB2ADDEH): Remove.
+ * config/ia64/t-glibc-libunwind: Move to ../libgcc/config/ia64.
+ * config/ia64/fde-glibc.c, config/ia64/fde-vms.c,
+ config/ia64/unwind-ia64.c, config/ia64/unwind-ia64.h: Move to
+ ../libgcc/config/ia64.
+ * config/ia64/t-hpux (LIB2ADDEH): Remove.
+ * config/ia64/t-ia64 (LIB2ADDEH): Remove.
+ * config/ia64/t-vms (LIB2ADDEH): Remove.
+ * config/ia64/vms.h (UNW_IVMS_MODE,
+ MD_UNW_COMPATIBLE_PERSONALITY_P): Remove.
+ * config/picochip/t-picochip (LIB2ADDEH): Remove.
+ * config/rs6000/aix.h (R_LR, MD_FROB_UPDATE_CONTEXT): Remove.
+ * config/rs6000/t-darwin (LIB2ADDEH): Remove.
+ * config/rs6000/darwin-fallback.c: Move to ../libgcc/config/rs6000.
+ * config/sh/t-sh ($(T)unwind-dw2-Os-4-200.o): Use
+ $(srcdir)/../libgcc to refer to unwinder sources.
+ * config/spu/t-spu-elf (LIB2ADDEH): Remove.
+ * config/t-darwin (LIB2ADDEH): Remove.
+ * config/t-freebsd (LIB2ADDEH): Remove.
+ * config/t-libunwind (LIB2ADDEH, LIB2ADDEHSTATIC): Remove.
+ * config/t-libunwind-elf: Move to ../libgcc/config.
+ * config/t-linux (LIB2ADDEH): Remove.
+ * config/t-sol2 (LIB2ADDEH): Remove.
+ * config/xtensa/t-xtensa (LIB2ADDEH): Remove.
+ * system.h (MD_FROB_UPDATE_CONTEXT): Poison.
+
+2011-08-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.c (processor_alias_table): Add core-avx-i.
+
+ * doc/invoke.texi: Document core-avx-i.
+
+2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * tsystem.h (CONST_CAST2, CONST_CAST): Define.
+
+2011-08-05 Ira Rosen <ira.rosen@linaro.org>
+
+ * tree-vect-loop.c (vect_create_epilog_for_reduction): Use the
+ result of multiple results reduction when extracting the final
+ value using scalar code.
+
+2011-08-05 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49984
+ * tree-vrp.c (extract_range_from_binary_expr_1): Handle BIT_XOR_EXPR.
+
+2011-08-05 Richard Guenther <rguenther@suse.de>
+
+ * tree-vrp.c (zero_nonzero_bits_from_vr): Make sure to always
+ return true for constant integer ranges.
+ (extract_range_from_binary_expr_1): Simplify BIT_AND_EXPR and
+ BIT_IOR_EXPR handling.
+
+2011-08-04 Kai Tietz <ktietz@redhat.com>
+
+ * config/i386/i386.c (setup_incoming_varargs_ms_64): Set
+ ix86_varargs_gpr_size and ix86_varargs_fpr_size to zero.
+
+2011-08-04 Ira Rosen <ira.rosen@linaro.org>
+
+ * tree-vectorizer.h (struct _stmt_vec_info): Add new field for
+ pattern def statement, and its access macro.
+ (NUM_PATTERNS): Set to 5.
+ * tree-vect-loop.c (vect_determine_vectorization_factor): Handle
+ pattern def statement.
+ (vect_transform_loop): Likewise.
+ * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Add new
+ function vect_recog_over_widening_pattern ().
+ (vect_operation_fits_smaller_type): New function.
+ (vect_recog_over_widening_pattern, vect_mark_pattern_stmts):
+ Likewise.
+ (vect_pattern_recog_1): Move the code that marks pattern
+ statements to vect_mark_pattern_stmts (), and call it. Update
+ documentation.
+ * tree-vect-stmts.c (vect_supportable_shift): New function.
+ (vect_analyze_stmt): Handle pattern def statement.
+ (new_stmt_vec_info): Initialize pattern def statement.
+
+2011-08-04 Richard Henderson <rth@redhat.com>
+
+ PR target/49964
+ * config/i386/i386.c (ix86_expand_call): Don't create nested
+ PARALLELs for TARGET_VZEROUPPER.
+ (ix86_split_call_vzeroupper): Fix extraction of the original call.
+ * config/i386/i386.md (*call_rex64_ms_sysv_vzeroupper): Don't
+ recognize nested PARALLELs.
+ (*call_pop_vzeroupper, *sibcall_pop_vzeroupper,
+ *call_value_rex64_ms_sysv_vzeroupper, *call_value_pop_vzeroupper,
+ *sibcall_value_pop_vzeroupper): Likewise.
+
+2011-08-04 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/49968
+ * calls.c (expand_call): Use fixup_args_size_notes for
+ emit_stack_restore.
+ * expr.c (fixup_args_size_notes): Allow STACK_POINTER_REGNUM sets
+ in non-standard modes.
+
+2011-08-04 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (self_spec): New variable.
+ (static_specs): Add self_spec.
+ (main): Call do_self_spec on "self_spec" specs after reading
+ user specs files. Move compare_debug handling right after that.
+
+2011-08-04 Richard Guenther <rguenther@suse.de>
+
+ * tree-vrp.c (vrp_expr_computes_nonnegative): Remove.
+ (value_range_nonnegative_p): New function.
+ (ssa_name_nonnegative_p): Use it.
+ (value_range_constant_singleton): New function.
+ (op_with_constant_singleton_value_range): Use it.
+ (extract_range_from_binary_expr_1): New function, split out from ...
+ (extract_range_from_binary_expr): ... this. Remove fallback
+ constant folding done here.
+
+2011-08-04 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49806
+ * tree-vrp.c (op_with_boolean_value_range_p): New function.
+ (simplify_truth_ops_using_ranges): Simplify. Allow inserting
+ a new statement for a final conversion to bool.
+
+2011-08-04 Romain Geissler <romain.geissler@gmail.com>
+
+ * gengtype-state.c: Include "bconfig.h" if
+ GENERATOR_FILE is defined, "config.h" otherwise.
+ * gengtype.c: Likewise.
+ * gengtype-lex.l: Likewise.
+ * gengtype-parse.c: Likewise.
+ * Makefile.in (gengtype-lex.o-warn): New variable.
+ (plugin_resourcesdir): Likewise.
+ (plugin_bindir): Likewise.
+ (plugin_includedir): Use $(plugin_resourcesdir) as prefix base.
+ (MOSTLYCLEANFILES): Add gengtype$(exeext).
+ (native): Depend on gengtype$(exeext) is $enable_plugin
+ is set to "yes".
+ (gtype.state): Depend on s-gtype. Use temporary file.
+ (gengtype-lex.o): New rule.
+ (gengtype-parse.o): Likewise.
+ (gengtype-state.o): Likewise.
+ (gengtype$(exeext)): Likewise.
+ (install-gengtype): Likewise.
+ (gengtype.o): Likewise.
+ (build/gengtype.o): Depend on version.h.
+ (build/gengtype-state): Depend on double-int.h, version.h,
+ $(HASHTAB_H), $(OBSTACK_H), $(XREGEX_H) and build/errors.o.
+ (install-plugin): Depend on install-gengtype.
+
+2011-08-04 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/49905
+ * tree.h (init_attributes): New prototype.
+ * attribs.c (init_attributes): No longer static.
+
+2011-08-04 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
+
+ * config/arm/arm.c (arm_set_fixed_optab_libfunc): Constify
+ maybe_suffix.
+
+2011-08-03 David Li <davidxl@google.com>
+
+ * tree-optimize.c (execute_fixup_cfg): Fix up entry
+ outgoing edge counts after inlining.
+
+2011-08-03 David Li <davidxl@google.com>
+
+ * profile.c (compute_branch_probabilities): Compute
+ function frequency after profile annotation.
+
+2011-08-04 Alan Modra <amodra@gmail.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_epilogue): Simplify
+ use_backchain_to_restore_sp initialisation.
+ (rs6000_legitimate_offset_address_p): Simplify offset test.
+
+2011-08-03 Richard Henderson <rth@redhat.com>
+
+ * config/spu/spu.md: Use define_c_enum instead of define_constants.
+ (UNSPECV_BLOCKAGE, UNSPECV_LNOP, UNSPECV_SYNC): Rename from UNSPEC_*.
+ (UNSPECV_NOP): New.
+
+2011-08-03 Richard Henderson <rth@redhat.com>
+
+ PR target/34888
+ * config/avr/avr.md: New splitter for REG_ARGS_SIZE 0.
+
+2011-08-03 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/49948
+ * gimple.c (walk_stmt_load_store_addr_ops): Walk CONSTRUCTOR elements.
+
+2011-08-03 Anatoly Sokolov <aesok@post.ru>
+
+ * config/m32c/m32c.c (class_sizes): Remove.
+ (reduce_class): Change arguments and return type to reg_class_t.
+ Change type cc var to HARD_REG_SET. Change type best var to
+ reg_class_t. Change type best_size var to unsigned int. Remove
+ initialization class_sizes var. Use reg_class_size array instead
+ of class_sizes. Use reg_class_contents array instead
+ of class_contents.
+
2011-08-03 Richard Guenther <rguenther@suse.de>
PR middle-end/49958