+2017-10-05 Tamar Christina <tamar.christina@arm.com>
+
+ * doc/sourcebuild.texi (vect_sizes_16B_8B, vect_sizes_32B_16B): New.
+
2017-10-05 Jan Hubicka <hubicka@ucw.cz>
* i386.c (znver1_cost): Set branch_cost to 3 (instead of 2)
@item vect_max_reduc
Target supports max reduction for vectors.
+
+@item vect_sizes_16B_8B
+Target supports 16- and 8-bytes vectors.
+
+@item vect_sizes_32B_16B
+Target supports 32- and 16-bytes vectors.
@end table
@subsubsection Thread Local Storage attributes
-2017-09-28 Tamar Christina <tamar.christina@arm.com>
+2017-10-05 Tamar Christina <tamar.christina@arm.com>
+
+ * gcc.dg/vect/slp-perm-9.c: Use vect_sizes_16B_8B.
+ * lib/target-supports.exp (vect_sizes_16B_8B): New.
+
+2017-10-05 Tamar Christina <tamar.christina@arm.com>
* gcc.dg/vect/vect-align-1.c: Fix vect_hw_misalign condition.
* gcc.dg/vect/vect-align-2.c: Likewise.
return 0;
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { {! vect_perm } || {! vect_sizes_32B_16B } } } } } */
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect" { target { { vect_perm } && { vect_sizes_32B_16B } } } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { {! vect_perm } || {! vect_sizes_16B_8B } } } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect" { target { { vect_perm } && { vect_sizes_16B_8B } } } } } */
/* { dg-final { scan-tree-dump-times "permutation requires at least three vectors" 1 "vect" { target vect_perm_short } } } */
/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 0 "vect" { target { {! vect_perm } || {! vect_sizes_32B_16B } } } } } */
/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 1 "vect" { target { { vect_perm } && { vect_sizes_32B_16B } } } } } */
}
}
+# Return true if 16- and 8-bytes vectors are available.
+
+proc check_effective_target_vect_sizes_16B_8B { } {
+ if { [check_avx_available]
+ || [is-effective-target arm_neon]
+ || [istarget aarch64*-*-*] } {
+ return 1;
+ } else {
+ return 0;
+ }
+}
+
+
# Return true if 128-bits vectors are preferred even if 256-bits vectors
# are available.