===================================================================
@@ -0,0 +1,24 @@
+/* { 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"} } */
+
===================================================================
@@ -3,7 +3,7 @@
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
@@ -17,5 +17,4 @@ void dsyr2k(long N) {
#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 *-*-* } } } */
===================================================================
@@ -0,0 +1,25 @@
+/* { 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" } } */
===================================================================
@@ -4,7 +4,7 @@
static double a[NMAX][NMAX], c[NMAX][NMAX];
-void dsyrk(long N)
+void dsyrk(int N)
{
int i,j,k;
@@ -19,4 +19,4 @@ void dsyrk(long N)
#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 *-*-* } } } */