On Thu, 7 Dec 2023, Hans-Peter Nilsson wrote: > > Date: Mon, 4 Dec 2023 12:58:03 +0100 (CET) > > From: Richard Biener <rguent...@suse.de> > > > On Sat, 2 Dec 2023, Hans-Peter Nilsson wrote: > > > > Date: Fri, 1 Dec 2023 08:07:14 +0100 (CET) > > > > From: Richard Biener <rguent...@suse.de> > > > > I read from your messages that the testcases pass on arm*-*-*? > > > Yes: they pass (currently XPASS) on arm-eabi and > > > arm-unknown-linux-gnueabi, default configurations. But, > > > scev-3 and -5 fail with for example -mcpu=cortex-r5 > > > > I see. As said, the testcases test for "cost" things, so that we > > "regressed" might mean we really "regressed" here. Even the x86 -m32 > > result is questionable. > > > > Of course whether using a single IV makes sense for all archs is > > unknown. > > > > Btw, if we turn the testcases into ones that are (sub-)target > > specific then we want to again use C code as input. > > > > I think at this point we've lost track and I'm juggling between > > removing the testcases or moving them to a place they succeed > > (with some specific -mcpu=?) > > > > Richard. > > So to not drop the ball(s) on this, here's a patch with your > first alternative: remove them. > > Ok?
OK. Thanks, Richard. > -- >8 -- > Subject: [PATCH] testsuite: Remove gcc.dg/tree-ssa/scev-3.c -4.c and 5.c > > These tests were recently xfailed on ilp32 targets though > passing on almost all ilp32 targets (known exceptions: ia32 > and some arm subtargets). They've been changed around too > much to remain useful. > > PR testsuite/112786 > * gcc.dg/tree-ssa/scev-3.c, gcc.dg/tree-ssa/scev-4.c, > gcc.dg/tree-ssa/scev-5.c: Remove. > --- > gcc/testsuite/gcc.dg/tree-ssa/scev-3.c | 44 ----------------------- > gcc/testsuite/gcc.dg/tree-ssa/scev-4.c | 49 -------------------------- > gcc/testsuite/gcc.dg/tree-ssa/scev-5.c | 44 ----------------------- > 3 files changed, 137 deletions(-) > delete mode 100644 gcc/testsuite/gcc.dg/tree-ssa/scev-3.c > delete mode 100644 gcc/testsuite/gcc.dg/tree-ssa/scev-4.c > delete mode 100644 gcc/testsuite/gcc.dg/tree-ssa/scev-5.c > > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/scev-3.c > b/gcc/testsuite/gcc.dg/tree-ssa/scev-3.c > deleted file mode 100644 > index beea9aed9fe9..000000000000 > --- a/gcc/testsuite/gcc.dg/tree-ssa/scev-3.c > +++ /dev/null > @@ -1,44 +0,0 @@ > -/* { dg-do compile } */ > -/* { dg-options "-O2 -fgimple -fdump-tree-ivopts" } */ > - > -int *a_p; > -int a[1000]; > - > -void __GIMPLE (ssa,startwith ("loop")) > -f (int k) > -{ > - int i; > - int * _1; > - > -__BB(2): > - i_5 = k_4(D); > - if (i_5 <= 999) > - goto __BB4; > - else > - goto __BB3; > - > -__BB(3): > - return; > - > -__BB(4): > - goto __BB5; > - > -__BB(5): > - i_12 = __PHI (__BB6: i_9, __BB4: 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 __BB6; > - else > - goto __BB3; > - > -__BB(6): > - ; > - goto __BB5; > - > -} > - > -/* Not all 32-bit systems fail this, but several do. */ > -/* { dg-final { scan-tree-dump-times "&a" 1 "ivopts" { xfail ilp32 } } } */ > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/scev-4.c > b/gcc/testsuite/gcc.dg/tree-ssa/scev-4.c > deleted file mode 100644 > index a97f75f81f65..000000000000 > --- a/gcc/testsuite/gcc.dg/tree-ssa/scev-4.c > +++ /dev/null > @@ -1,49 +0,0 @@ > -/* { dg-do compile } */ > -/* { dg-options "-O2 -fgimple -fdump-tree-ivopts" } */ > - > -typedef struct { > - int x; > - int y; > -} S; > - > -int *a_p; > -S a[1000]; > - > -void __GIMPLE (ssa, startwith ("loop")) > -f (int k) > -{ > - int i; > - int * _1; > - > -__BB(2): > - i_5 = k_4(D); > - if (i_5 <= 999) > - goto __BB4; > - else > - goto __BB3; > - > -__BB(3): > - return; > - > -__BB(4): > - goto __BB5; > - > -__BB(5): > - i_12 = __PHI (__BB6: i_9, __BB4: 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 __BB6; > - else > - goto __BB3; > - > -__BB(6): > - ; > - goto __BB5; > - > -} > - > -/* Not all 32-bit systems fail this, but several do. */ > -/* { dg-final { scan-tree-dump-times "&a" 1 "ivopts" { xfail ilp32 } } } */ > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/scev-5.c > b/gcc/testsuite/gcc.dg/tree-ssa/scev-5.c > deleted file mode 100644 > index 08f4260403c4..000000000000 > --- a/gcc/testsuite/gcc.dg/tree-ssa/scev-5.c > +++ /dev/null > @@ -1,44 +0,0 @@ > -/* { dg-do compile } */ > -/* { dg-options "-O2 -fgimple -fdump-tree-ivopts" } */ > - > -int *a_p; > -int a[1000]; > - > -void __GIMPLE (ssa,startwith ("loop")) > -f (int k) > -{ > - long long int i; > - int * _1; > - > -__BB(2): > - i_5 = (long long int) k_4(D); > - if (i_5 <= 999ll) > - goto __BB4; > - else > - goto __BB3; > - > -__BB(3): > - return; > - > -__BB(4): > - goto __BB5; > - > -__BB(5): > - i_12 = __PHI (__BB6: i_9, __BB4: 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 __BB6; > - else > - goto __BB3; > - > -__BB(6): > - ; > - goto __BB5; > - > -} > - > -/* Not all 32-bit systems fail this, but several do. */ > -/* { dg-final { scan-tree-dump-times "&a" 1 "ivopts" { xfail ilp32 } } } */ > -- Richard Biener <rguent...@suse.de> SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg, Germany; GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)