config.gcc: Match arm*-*-linux-* for ARM Linux/GNU.
[gcc.git] / gcc / ChangeLog
index b74a547aa9c0e14b8b30aaaf08e8ecab154b2363..948857d974076c90f52a2cf27dbf3b2b7a96f9d7 100644 (file)
@@ -1,3 +1,150 @@
+2012-10-15  Matthias Klose  <doko@ubuntu.com>
+
+       * config.gcc: Match arm*-*-linux-* for ARM Linux/GNU.
+       * doc/install.texi: Use arm-*-*linux-* instead of arm-*-*linux-gnueabi.
+
+2012-10-13  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/sse.md (UNSPEC_MOVU): Remove.
+       (UNSPEC_LOADU): New.
+       (UNSPEC_STOREU): Ditto.
+       (<sse>_movu<ssemodesuffix><avxsizesuffix>): Split to ...
+       (<sse>_loadu<ssemodesuffix><avxsizesuffix>): ... this and ...
+       (<sse>_storeu<ssemodesuffix><avxsizesuffix>) ... this.
+       (<sse2>_movdqu<avxsizesuffix>): Split to ...
+       (<sse2>_loaddqu<avxsizesuffix>): ... this and ...
+       (<sse2>_storedqu<avxsizesuffix>): ... this.
+       (*sse4_2_pcmpestr_unaligned): Update.
+       (*sse4_2_pcmpistr_unaligned): Ditto.
+
+       * config/i386/i386.c (ix86_avx256_split_vector_move_misalign): Use
+       gen_avx_load{dqu,ups,upd}256 to load from unaligned memory and
+       gen_avx_store{dqu,ups,upd}256 to store to unaligned memory.
+       (ix86_expand_vector_move_misalign): Use gen_sse_loadups or
+       gen_sse2_load{dqu,upd} to load from unaligned memory and
+       gen_sse_loadups or gen_sse2_store{dqu,upd}256 to store to
+       unaligned memory.
+       (struct builtin_description bdesc_spec) <IX86_BUILTIN_LOADUPS>:
+       Use CODE_FOR_sse_loadups.
+       <IX86_BUILTIN_LOADUPD>: Use CODE_FOR_sse2_loadupd.
+       <IX86_BUILTIN_LOADDQU>: Use CODE_FOR_sse2_loaddqu.
+       <IX86_BUILTIN_STOREUPS>: Use CODE_FOR_sse_storeups.
+       <IX86_BUILTIN_STOREUPD>: Use CODE_FOR_sse2_storeupd.
+       <IX86_BUILTIN_STOREDQU>: Use CODE_FOR_sse2_storedqu.
+       <IX86_BUILTIN_LOADUPS256>: Use CODE_FOR_avx_loadups256.
+       <IX86_BUILTIN_LOADUPD256>: Use CODE_FOR_avx_loadupd256.
+       <IX86_BUILTIN_LOADDQU256>: Use CODE_FOR_avx_loaddqu256.
+       <IX86_BUILTIN_STOREUPS256>: Use CODE_FOR_avx_storeups256.
+       <IX86_BUILTIN_STOREUPD256>: Use CODE_FOR_avx_storeupd256.
+       <IX86_BUILTIN_STOREDQU256>: Use CODE_FOR_avx_storedqu256.
+
+2012-10-15  Dodji Seketeli  <dodji@redhat.com>
+
+       * alias.c: Cleanup comments.
+
+2012-10-15  Marc Glisse  <marc.glisse@inria.fr>
+
+       PR tree-optimization/54915
+       * tree-ssa-forwprop.c (simplify_vector_constructor): Check
+       argument's type.
+
+2012-10-15  Richard Biener  <rguenther@suse.de>
+
+       * data-streamer.h (bp_pack_string_with_length): New function.
+       (bp_pack_string): Likewise.
+       (bp_unpack_indexed_string): Likewise.
+       (bp_unpack_string): Likewise.
+       * data-streamer-out.c (bp_pack_string_with_length): Likewise.
+       (bp_pack_string): Likewise.
+       * data-streamer-in.c (bp_unpack_indexed_string): Likewise.
+       (bp_unpack_string): Likewise.
+       * tree-streamer-out.c (pack_ts_translation_unit_decl_value_fields):
+       Pack TRANSLATION_UNIT_LANGUAGE here, not ...
+       (write_ts_translation_unit_decl_tree_pointers): ... here.  Remove.
+       (streamer_pack_tree_bitfields): Adjust.
+       (streamer_write_tree_body): Likewise.
+       * tree-streamer-in.c (unpack_ts_translation_unit_decl_value_fields):
+       Unpack TRANSLATION_UNIT_LANGUAGE here, not ...
+       (lto_input_ts_translation_unit_decl_tree_pointers): ... here.  Remove.
+       (unpack_value_fields): Adjust.
+       (streamer_read_tree_body): Likewise.
+
+2012-10-15  J"orn Rennecke  <joern.rennecke@arc.com>
+
+       * genoutput.c (process_template): Process '*' in '@' alternatives.
+       * doc/md.texi (node Output Statement): Provide example for the above.
+
+2012-10-15  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/54920
+       * tree-ssa-pre.c (create_expression_by_pieces): Properly
+       allocate temporary storage for all NARY elements.
+
+2012-10-15  Joern Rennecke  <joern.rennecke@embecosm.com>
+
+       * web.c (union_match_dups): Properly handle OP_INOUT match_dups.
+
+2012-10-15  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * expr.c (expand_expr_real_1) <VIEW_CONVERT_EXPR>: Do not unnecessarily
+       copy the object in the MEM_P case.
+
+2012-10-15  Richard Guenther  <rguenther@suse.de>
+
+       * tree-streamer-out.c (streamer_pack_tree_bitfields): Back
+       BINFO_BASE_ACCESSES and CONSTRUCTOR lengths here.
+       (streamer_write_chain): Write TREE_CHAIN as null-terminated list.
+       (write_ts_exp_tree_pointers): Adjust.
+       (write_ts_binfo_tree_pointers): Likewise.
+       (write_ts_constructor_tree_pointers): Likewise.
+       * tree-streamer-in.c (streamer_read_chain): Read TREE_CHAIN as
+       null-terminated list.
+       (unpack_value_fields): Unpack BINFO_BASE_ACCESSES and
+       CONSTRUCTOR lengths and materialize the arrays.
+       (lto_input_ts_exp_tree_pointers): Adjust.
+       (lto_input_ts_binfo_tree_pointers): Likewise.
+       (lto_input_ts_constructor_tree_pointers): Likewise.
+
+2012-10-14  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * config/mmix/mmix.c (mmix_opposite_regno): Handle the
+       return-value register too.
+
+2012-10-14  Steven Bosscher  <steven@gcc.gnu.org>
+
+       PR rtl-optimization/38711
+       * df.h (df_get_live_out, df_get_live_in): Make static inline functions.
+       * df-problems.c (df_get_live_out, df_get_live_in): Moved to df.h.
+       * ira-lives.c (process_bb_node_lives): Use df_get_live_out instead of
+       DF_LR_OUT.
+       * ira-build.c (create_bb_allocnos): Likewise.
+       (create_loop_allocnos): Likewise, and use df_get_live_in instead of
+       DF_LR_IN.
+       * ira-emit.c (generate_edge_moves): Likewise.
+       (add_ranges_and_copies): Likewise.
+       * ira-color.c (ira_loop_edge_freq): Use df_get_live_out instead of
+       DF_LR_OUT, and df_get_live_in instead of DF_LR_IN.
+       * ira.c (mark_elimination): Update DF_LR and DF_LIVE.
+       (build_insn_chain): Use df_get_live_out instead of DF_LR_OUT.
+       (do_reload): Remove the DF_LIVE problem for -O1.
+
+2012-10-14  Steven Bosscher  <steven@gcc.gnu.org>
+
+       PR rtl-optimization/54919
+       * loop-unroll.c (struct var_to_expand): Remove accum_pos field.
+       (analyze_insn_to_expand_var): Do not record accum_pos.
+       (expand_var_during_unrolling): Use validate_replace_rtx_group to
+       perform replacement of all references to SET_DEST (set) with the
+       new register, including references in REG_EQUAL notes.
+       (insert_var_expansion_initialization): Insert initializatio insns
+       at the bottom of the pre-header of the loop.
+
+2012-10-14  Jan Hubicka  <jh@suse.cz>
+
+       * tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop): Do not
+       predict loops with multiple exits realistically.
+       * cfgloopanal.c (single_likely_exit): New function.
+
 2012-10-14  Uros Bizjak  <ubizjak@gmail.com>
 
        * config/alpha/alpha.md: Remove empty predicates and/or constraints.
 
 2012-04-26  Bernd Schmidt  <bernds@codesourcery.com>
 
-       PR middle-end/52997
+       PR middle-end/52997
        * ira.c (find_moveable_pseudos): Call resize_reg_info.
 
        PR middle-end/52940