re PR testsuite/52563 (FAIL: gcc.dg/tree-ssa/scev-[3,4].c scan-tree-dump-times optimi...
authorRichard Biener <rguenther@suse.de>
Tue, 17 Jan 2017 08:24:26 +0000 (08:24 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 17 Jan 2017 08:24:26 +0000 (08:24 +0000)
2017-01-17  Richard Biener  <rguenther@suse.de>

PR testsuite/52563
PR testsuite/71237
PR testsuite/77737
* gcc.dg/tree-ssa/scev-3.c: Re-write to a GIMPLE testcase for IVOPTs.
* gcc.dg/tree-ssa/scev-4.c: Likewise.
* gcc.dg/tree-ssa/scev-5.c: Likewise.

From-SVN: r244519

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/scev-3.c
gcc/testsuite/gcc.dg/tree-ssa/scev-4.c
gcc/testsuite/gcc.dg/tree-ssa/scev-5.c

index c00a050732b0ddb435091eefb2d0b4a1bda1b03d..add78e2f90fbd590634b91975ef4f2cc5a1a92bf 100644 (file)
@@ -1,3 +1,12 @@
+2017-01-17  Richard Biener  <rguenther@suse.de>
+
+       PR testsuite/52563
+       PR testsuite/71237
+       PR testsuite/77737
+       * gcc.dg/tree-ssa/scev-3.c: Re-write to a GIMPLE testcase for IVOPTs.
+       * gcc.dg/tree-ssa/scev-4.c: Likewise.
+       * gcc.dg/tree-ssa/scev-5.c: Likewise.
+
 2017-01-17  Alan Modra  <amodra@gmail.com>
 
        * gcc.target/powerpc/pr79066.c: New.
index 1346f26d6c156a091ba6d2ef78a2dd6bda1d2778..fed1011968d629706adb32e563d1056ed630d0cf 100644 (file)
@@ -1,18 +1,43 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-optimized" } */
+/* { dg-options "-O2 -fgimple -fdump-tree-ivopts" } */
 
 int *a_p;
 int a[1000];
 
-void
-f(int k)
+void __GIMPLE (startwith ("loop"))
+f (int k)
 {
-       int i;
+  int i;
+  int * _1;
+
+bb_2:
+  i_5 = k_4(D);
+  if (i_5 <= 999)
+    goto bb_4;
+  else
+    goto bb_3;
+
+bb_3:
+  return;
+
+bb_4:
+  ;
+
+bb_5:
+  i_12 = __PHI (bb_6: i_9, bb_4: i_5);
+  _1 = &a[i_12];
+  a_p = _1;
+  __MEM <int[1000]> ((int *)&a)[i_12] = 100;
+  i_9 = i_5 + i_12;
+  if (i_9 <= 999)
+    goto bb_6;
+  else
+    goto bb_3;
+
+bb_6:
+  ;
+  goto bb_5;
 
-       for (i=k; i<1000; i+=k) {
-               a_p = &a[i];
-               *a_p = 100;
-        }
 }
 
-/* { dg-final { scan-tree-dump-times "&a" 1 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "&a" 1 "ivopts" } } */
index 99d033709af909d2dc57addd752f2cdb8759253a..94ebfae7b93e25cd61d4519cce40a470c021c9a1 100644 (file)
@@ -1,23 +1,48 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-optimized" } */
+/* { dg-options "-O2 -fgimple -fdump-tree-ivopts" } */
 
 typedef struct {
-       int x;
-       int y;
+    int x;
+    int y;
 } S;
 
 int *a_p;
 S a[1000];
 
-void
-f(int k)
+void __GIMPLE (startwith ("loop"))
+f (int k)
 {
-       int i;
+  int i;
+  int * _1;
+
+bb_2:
+  i_5 = k_4(D);
+  if (i_5 <= 999)
+    goto bb_4;
+  else
+    goto bb_3;
+
+bb_3:
+  return;
+
+bb_4:
+  ;
+
+bb_5:
+  i_12 = __PHI (bb_6: i_9, bb_4: i_5);
+  _1 = &a[i_12].y;
+  a_p = _1;
+  __MEM <S[1000]> ((int *)&a)[i_12].y = 100;
+  i_9 = i_5 + i_12;
+  if (i_9 <= 999)
+    goto bb_6;
+  else
+    goto bb_3;
+
+bb_6:
+  ;
+  goto bb_5;
 
-       for (i=k; i<1000; i+=k) {
-               a_p = &a[i].y;
-               *a_p = 100;
-        }
 }
 
-/* { dg-final { scan-tree-dump-times "&a" 1 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "&a" 1 "ivopts" } } */
index 3f4a9cde2c2a39fdca2162630f1bf261251feed3..8cced512e8d0eca706120febd47fffc439bd4de1 100644 (file)
@@ -1,18 +1,43 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-optimized" } */
+/* { dg-options "-O2 -fgimple -fdump-tree-ivopts" } */
 
 int *a_p;
 int a[1000];
 
-void
-f(int k)
+void __GIMPLE (startwith ("loop"))
+f (int k)
 {
-        long long i;
+  long long int i;
+  int * _1;
+
+bb_2:
+  i_5 = (long long int) k_4(D);
+  if (i_5 <= 999ll)
+    goto bb_4;
+  else
+    goto bb_3;
+
+bb_3:
+  return;
+
+bb_4:
+  ;
+
+bb_5:
+  i_12 = __PHI (bb_6: i_9, bb_4: i_5);
+  _1 = &a[i_12];
+  a_p = _1;
+  __MEM <int[1000]> ((int *)&a)[i_12] = 100;
+  i_9 = i_5 + i_12;
+  if (i_9 <= 999ll)
+    goto bb_6;
+  else
+    goto bb_3;
+
+bb_6:
+  ;
+  goto bb_5;
 
-        for (i=k; i<1000; i+=k) {
-                a_p = &a[i];
-                *a_p = 100;
-        }
 }
 
-/* { dg-final { scan-tree-dump-times "&a" 1 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "&a" 1 "ivopts" } } */