mirror of git://gcc.gnu.org/git/gcc.git
re PR testsuite/52563 (FAIL: gcc.dg/tree-ssa/scev-[3,4].c scan-tree-dump-times optimized "&a" 1)
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
This commit is contained in:
parent
b2bcb1b3c9
commit
a23e48df45
|
|
@ -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>
|
2017-01-17 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
* gcc.target/powerpc/pr79066.c: New.
|
* gcc.target/powerpc/pr79066.c: New.
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,43 @@
|
||||||
/* { dg-do compile } */
|
/* { dg-do compile } */
|
||||||
/* { dg-options "-O2 -fdump-tree-optimized" } */
|
/* { dg-options "-O2 -fgimple -fdump-tree-ivopts" } */
|
||||||
|
|
||||||
int *a_p;
|
int *a_p;
|
||||||
int a[1000];
|
int a[1000];
|
||||||
|
|
||||||
void
|
void __GIMPLE (startwith ("loop"))
|
||||||
f (int k)
|
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" } } */
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* { dg-do compile } */
|
/* { dg-do compile } */
|
||||||
/* { dg-options "-O2 -fdump-tree-optimized" } */
|
/* { dg-options "-O2 -fgimple -fdump-tree-ivopts" } */
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
int x;
|
int x;
|
||||||
|
|
@ -9,15 +9,40 @@ typedef struct {
|
||||||
int *a_p;
|
int *a_p;
|
||||||
S a[1000];
|
S a[1000];
|
||||||
|
|
||||||
void
|
void __GIMPLE (startwith ("loop"))
|
||||||
f (int k)
|
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" } } */
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,43 @@
|
||||||
/* { dg-do compile } */
|
/* { dg-do compile } */
|
||||||
/* { dg-options "-O2 -fdump-tree-optimized" } */
|
/* { dg-options "-O2 -fgimple -fdump-tree-ivopts" } */
|
||||||
|
|
||||||
int *a_p;
|
int *a_p;
|
||||||
int a[1000];
|
int a[1000];
|
||||||
|
|
||||||
void
|
void __GIMPLE (startwith ("loop"))
|
||||||
f (int k)
|
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" } } */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue