* tree-vect-transform.c (vectorizable_operation): Try word_mode
vectorization if UNITS_PER_WORD == UNITS_PER_SIMD_WORD, even
if a vector mode is available.
testsuite/ChangeLog:
2005-05-26 Paolo Bonzini <bonzini@gnu.org>
* gcc.dg/vect/vect-7.c: Remove xfail for alpha.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100195
138bc75d-0d04-0410-961f-
82ee72b054a4
+2005-05-26 Paolo Bonzini <bonzini@gnu.org>
+
+ * tree-vect-transform.c (vectorizable_operation): Try word_mode
+ vectorization if UNITS_PER_WORD == UNITS_PER_SIMD_WORD, even
+ if a vector mode is available.
+
2005-05-25 Roger Sayle <roger@eyesopen.com>
PR middle-end/21709
2005-05-17 Paolo Bonzini <bonzini@gnu.org>
+ * tree-ssa-math-opts.c: New file.
+
+2005-05-17 Paolo Bonzini <bonzini@gnu.org>
+
* Makefile.in: Add tree-ssa-math-opts.c.
* expr.c (expand_expr_real_1) <case RDIV_EXPR>: Never emit as a*(1/b).
* fold-const.c (distribute_real_division): New.
+2005-05-26 Paolo Bonzini <bonzini@gnu.org>
+
+ * gcc.dg/vect/vect-7.c: Remove xfail for alpha.
+
2005-05-26 Andreas Jaeger <aj@suse.de>
* gcc.dg/tree-ssa/ssa-pre-14.c (foo): Use correct type for strlen.
return main1 ();
}
-/* Fails for targets that don't vectorize PLUS. */
-/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { xfail alpha*-*-* } } } */
+/* Fails for 32-bit targets that don't vectorize PLUS. */
+/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 0 "vect" } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
{
if (vect_print_dump_info (REPORT_DETAILS, UNKNOWN_LOC))
fprintf (vect_dump, "op not supported by target.");
- return false;
+ if (GET_MODE_SIZE (vec_mode) != UNITS_PER_WORD
+ || LOOP_VINFO_VECT_FACTOR (loop_vinfo)
+ < vect_min_worthwhile_factor (code))
+ return false;
+ if (vect_print_dump_info (REPORT_DETAILS, UNKNOWN_LOC))
+ fprintf (vect_dump, "proceeding using word mode.");
}
/* Worthwhile without SIMD support? */