+2017-02-01 Richard Biener <rguenther@suse.de>
+
+ PR testsuite/76957
+ * gcc.dg/graphite/scop-dsyr2k-2.c: New testcase.
+ * gcc.dg/graphite/scop-dsyrk-2.c: Likewise.
+ * gcc.dg/graphite/scop-dsyr2k.c: XFAIL.
+ * gcc.dg/graphite/scop-dsyrk.c: Likewise.
+
2017-02-01 Richard Biener <rguenther@suse.de>
PR middle-end/79315
--- /dev/null
+/* { dg-require-effective-target size32plus } */
+#define NMAX 3000
+
+static double a[NMAX][NMAX], b[NMAX][NMAX], c[NMAX][NMAX];
+
+typedef __INT32_TYPE__ int32_t;
+typedef __INT64_TYPE__ int64_t;
+
+void dsyr2k(int64_t N) {
+ int32_t i,j,k;
+
+#pragma scop
+ for (i=0; i<N; i++) {
+ for (j=0; j<N; j++) {
+ for (k=j; k<N; k++) {
+ c[j][k] += a[i][j] * b[i][k] + b[i][j] * a[i][k];
+ }
+ }
+ }
+#pragma endscop
+}
+
+/* { dg-final { scan-tree-dump-times "number of SCoPs: 1" 1 "graphite"} } */
+
static double a[NMAX][NMAX], b[NMAX][NMAX], c[NMAX][NMAX];
-void dsyr2k(long N) {
+void dsyr2k(int N) {
int i,j,k;
#pragma scop
#pragma endscop
}
-/* { dg-final { scan-tree-dump-times "number of SCoPs: 1" 1 "graphite"} } */
-
+/* { dg-final { scan-tree-dump-times "number of SCoPs: 1" 1 "graphite" { xfail *-*-* } } } */
--- /dev/null
+/* { dg-require-effective-target size32plus } */
+#define NMAX 3000
+#define MEASURE_TIME 1
+
+static double a[NMAX][NMAX], c[NMAX][NMAX];
+
+typedef __INT32_TYPE__ int32_t;
+typedef __INT64_TYPE__ int64_t;
+
+void dsyrk(int64_t N)
+{
+ int32_t i,j,k;
+
+#pragma scop
+ for (i=0; i<N; i++) {
+ for (j=0; j<N; j++) {
+ for (k=j; k<N; k++) {
+ c[j][k] += a[i][j] * a[i][k];
+ }
+ }
+ }
+#pragma endscop
+}
+
+/* { dg-final { scan-tree-dump-times "number of SCoPs: 1" 1 "graphite" } } */
static double a[NMAX][NMAX], c[NMAX][NMAX];
-void dsyrk(long N)
+void dsyrk(int N)
{
int i,j,k;
#pragma endscop
}
-/* { dg-final { scan-tree-dump-times "number of SCoPs: 1" 1 "graphite" } } */
+/* { dg-final { scan-tree-dump-times "number of SCoPs: 1" 1 "graphite" { xfail *-*-* } } } */