+2017-10-04 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ * lib/target-supports.exp (check_effective_target_vect_float):
+ Return 1 being on a S/390 with VXE.
+ * gcc.dg/vect/pr31699.c: Require vec_float.
+ * gcc.dg/vect/pr61194.c: Likewise.
+ * gcc.dg/vect/pr65947-10.c: Likewise.
+ * gcc.dg/vect/pr66142.c: Likewise.
+ * gcc.dg/vect/slp-10.c: Likewise.
+ * gcc.dg/vect/slp-11c.c: Likewise.
+ * gcc.dg/vect/slp-12b.c: Likewise.
+ * gcc.dg/vect/slp-18.c: Likewise.
+ * gcc.dg/vect/slp-33.c: Likewise.
+ * gcc.dg/vect/slp-cond-2-big-array.c: Likewise.
+ * gcc.dg/vect/slp-cond-2.c: Likewise.
+ * gcc.dg/vect/vect-cond-10.c: Likewise.
+ * gcc.dg/vect/vect-cond-8.c: Likewise.
+ * gcc.dg/vect/vect-cond-9.c: Likewise.
+ * gcc.dg/vect/vect-float-extend-1.c: Likewise.
+ * gcc.dg/vect/vect-float-truncate-1.c: Likewise.
+
2017-10-04 Thomas Schwinge <thomas@codesourcery.com>
PR tree-optimization/82374
-/* { dg-require-effective-target vect_double } */
+/* { dg-require-effective-target vect_float } */
#include <stdlib.h>
#include <stdarg.h>
/* { dg-require-effective-target vect_cond_mixed } */
+/* { dg-require-effective-target vect_float } */
#include "tree-vect.h"
/* { dg-require-effective-target vect_condition } */
+/* { dg-require-effective-target vect_float } */
#include "tree-vect.h"
*a = z;
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 1 "vect" { target vect_condition } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 1 "vect" { target { vect_condition && vect_float } } } } */
/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target vect_float } */
#include <stdarg.h>
#include "tree-vect.h"
/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target vect_float } */
#include <stdarg.h>
#include "tree-vect.h"
/* { dg-require-effective-target vect_uintfloat_cvt } */
+/* { dg-require-effective-target vect_float } */
#include <stdarg.h>
#include "tree-vect.h"
/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target vect_float } */
/* { dg-require-effective-target vect_intfloat_cvt } */
#include <stdarg.h>
/* { dg-require-effective-target vect_int } */
+/* { dg-require-effective-target vect_float } */
#include <stdarg.h>
#include "tree-vect.h"
/* { dg-require-effective-target vect_cond_mixed } */
+/* { dg-require-effective-target vect_float } */
+
#include "tree-vect.h"
#define N 128
/* { dg-require-effective-target vect_cond_mixed } */
+/* { dg-require-effective-target vect_float } */
+
#include "tree-vect.h"
#define N 32
/* { dg-require-effective-target vect_cond_mixed } */
+/* { dg-require-effective-target vect_float } */
/* { dg-additional-options "-fno-ipa-icf" } */
#include "tree-vect.h"
/* { dg-require-effective-target vect_cond_mixed } */
+/* { dg-require-effective-target vect_float } */
#include "tree-vect.h"
/* { dg-require-effective-target vect_cond_mixed } */
+/* { dg-require-effective-target vect_float } */
/* { dg-additional-options "-fno-ipa-icf" } */
#include "tree-vect.h"
/* { dg-require-effective-target vect_double } */
+/* { dg-require-effective-target vect_float } */
#include <stdarg.h>
#include "tree-vect.h"
/* { dg-require-effective-target vect_double } */
+/* { dg-require-effective-target vect_float } */
#include <stdarg.h>
#include "tree-vect.h"
|| [istarget aarch64*-*-*]
|| ([istarget mips*-*-*]
&& [et-is-effective-target mips_msa])
- || [is-effective-target arm_neon] } {
+ || [is-effective-target arm_neon]
+ || ([istarget s390*-*-*]
+ && [check_effective_target_s390_vxe]) } {
set et_vect_float_saved($et_index) 1
}
}