OSDN Git Service

* config/i386/sse.md (sseintprefix): Rename from gthrfirstp.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 74b3d01..0386102 100644 (file)
@@ -1,3 +1,92 @@
+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,
        * 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.
+       (TARGET_ASM_EMIT_EXCEPT_PERSONALITY, TARGET_ASM_INIT_SECTIONS): Define.
 
 2011-10-21  Jakub Jelinek  <jakub@redhat.com>