On Tue, Oct 8, 2024 at 4:56 PM Richard Biener
<richard.guent...@gmail.com> wrote:
>
> On Tue, Oct 8, 2024 at 10:36 AM liuhongt <hongtao....@intel.com> wrote:
> >
> > gcc/testsuite/ChangeLog:
> >
> >         * gcc.dg/fstack-protector-strong.c: Adjust
> >         scan-assembler-times.
> >         * gcc.dg/graphite/scop-6.c: Add
> >         -Wno-aggressive-loop-optimizations.
> >         * gcc.dg/graphite/scop-9.c: Ditto.
> >         * gcc.dg/tree-ssa/ivopts-lt-2.c: Add -fno-tree-vectorize.
> >         * gcc.dg/tree-ssa/ivopts-lt.c: Ditto.
> >         * gcc.dg/tree-ssa/loop-16.c: Ditto.
> >         * gcc.dg/tree-ssa/loop-28.c: Ditto.
> >         * gcc.dg/tree-ssa/loop-bound-2.c: Ditto.
> >         * gcc.dg/tree-ssa/loop-bound-4.c: Ditto.
> >         * gcc.dg/tree-ssa/loop-bound-6.c: Ditto.
> >         * gcc.dg/tree-ssa/predcom-4.c: Ditto.
> >         * gcc.dg/tree-ssa/predcom-5.c: Ditto.
> >         * gcc.dg/tree-ssa/scev-11.c: Ditto.
> >         * gcc.dg/tree-ssa/scev-9.c: Ditto.
> >         * gcc.dg/tree-ssa/split-path-11.c: Ditto.
> >         * gcc.dg/unroll-8.c: Ditto.
> >         * gcc.dg/var-expand1.c: Ditto.
> >         * gcc.dg/vect/vect-cost-model-6.c: Ditto.
> >         * gcc.target/i386/pr86270.c: Ditto.
> >         * gcc.target/i386/pr86722.c: Ditto.
> >         * gcc.target/x86_64/abi/callabi/leaf-2.c: Ditto.
> > ---
> >  gcc/testsuite/gcc.dg/fstack-protector-strong.c       | 2 +-
> >  gcc/testsuite/gcc.dg/graphite/scop-6.c               | 1 +
> >  gcc/testsuite/gcc.dg/graphite/scop-9.c               | 1 +
> >  gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c          | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c            | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/loop-16.c              | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/loop-28.c              | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c         | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c         | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c         | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c            | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c            | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/scev-11.c              | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/scev-9.c               | 2 +-
> >  gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c        | 2 +-
> >  gcc/testsuite/gcc.dg/unroll-8.c                      | 3 +--
> >  gcc/testsuite/gcc.dg/var-expand1.c                   | 2 +-
> >  gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c        | 2 +-
> >  gcc/testsuite/gcc.target/i386/pr86270.c              | 2 +-
> >  gcc/testsuite/gcc.target/i386/pr86722.c              | 2 +-
> >  gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c | 2 +-
> >  21 files changed, 21 insertions(+), 20 deletions(-)
> >
> > diff --git a/gcc/testsuite/gcc.dg/fstack-protector-strong.c 
> > b/gcc/testsuite/gcc.dg/fstack-protector-strong.c
> > index 94dc3508f1a..b9f63966b7c 100644
> > --- a/gcc/testsuite/gcc.dg/fstack-protector-strong.c
> > +++ b/gcc/testsuite/gcc.dg/fstack-protector-strong.c
> > @@ -154,4 +154,4 @@ void foo12 ()
> >    global3 ();
> >  }
> >
> > -/* { dg-final { scan-assembler-times "stack_chk_fail" 12 } } */
> > +/* { dg-final { scan-assembler-times "stack_chk_fail" 11 } } */
> > diff --git a/gcc/testsuite/gcc.dg/graphite/scop-6.c 
> > b/gcc/testsuite/gcc.dg/graphite/scop-6.c
> > index 9bc1d9f4ccd..6ea887d9041 100644
> > --- a/gcc/testsuite/gcc.dg/graphite/scop-6.c
> > +++ b/gcc/testsuite/gcc.dg/graphite/scop-6.c
> > @@ -26,4 +26,5 @@ int toto()
> >    return a[3][5] + b[2];
> >  }
>
> The testcase looks bogus:
>
>        b[i+k] = b[i+k-5] + 2;
>
> accesses b[-3], can you instead adjust the inner loop to start with k == 4?
>
> > +/* { dg-additional-options "-Wno-aggressive-loop-optimizations" } */
> >  /* { dg-final { scan-tree-dump-times "number of SCoPs: 1" 1 "graphite"} } 
> > */
> > diff --git a/gcc/testsuite/gcc.dg/graphite/scop-9.c 
> > b/gcc/testsuite/gcc.dg/graphite/scop-9.c
> > index b19291be2f8..2a36bf92fd4 100644
> > --- a/gcc/testsuite/gcc.dg/graphite/scop-9.c
> > +++ b/gcc/testsuite/gcc.dg/graphite/scop-9.c
> > @@ -21,4 +21,5 @@ int toto()
> >    return a[3][5] + b[2];
> >  }
>
> Likewise.
>
> > +/* { dg-additional-options "-Wno-aggressive-loop-optimizations" } */
> >  /* { dg-final { scan-tree-dump-times "number of SCoPs: 1" 1 "graphite"} } 
> > */
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c
> > index bdbdbff19ff..be325775fbb 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fno-tree-loop-distribute-patterns 
> > -fdump-tree-ivopts" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize 
> > -fno-tree-loop-distribute-patterns -fdump-tree-ivopts" } */
> >  /* { dg-skip-if "PR68644" { hppa*-*-* powerpc*-*-* } } */
> >
> >  void
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c
> > index 71d7f672c44..8d2b9d39355 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fno-tree-loop-distribute-patterns 
> > -fdump-tree-ivopts" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize 
> > -fno-tree-loop-distribute-patterns -fdump-tree-ivopts" } */
> >  /* { dg-require-effective-target stdint_types } */
> >
> >  #include "stdint.h"
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-16.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/loop-16.c
> > index 6bcb56cf3a9..92587f17df0 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-16.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-16.c
> > @@ -2,7 +2,7 @@
> >     at most 100 times, thus the (32-bit) induction variables do not 
> > overflow,
> >     and we may use 64-bit variable to represent them.  */
> >
> > -/* { dg-options "-O2 -fdump-tree-optimized" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-optimized" } */
> >  /* { dg-do compile { target i?86-*-* x86_64-*-* } } */
> >
> >  unsigned a[100];
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-28.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/loop-28.c
> > index 3ca0ab8ea5f..85769c914c3 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-28.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-28.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile { target { i?86-*-* x86_64-*-* } } } */
> > -/* { dg-options "-O2 -fprefetch-loop-arrays -march=amdfam10 
> > -fdump-tree-optimized -fdump-tree-aprefetch --param 
> > max-unrolled-insns=1000" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -fprefetch-loop-arrays 
> > -march=amdfam10 -fdump-tree-optimized -fdump-tree-aprefetch --param 
> > max-unrolled-insns=1000" } */
> >
> >  char x[100000];
> >
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c
> > index 802dd290e50..d93e5654e7a 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
> >
> >  int *a;
> >
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c
> > index b9d7d4196aa..543d9a5120b 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
> >
> >  int *a;
> >
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c
> > index 8319434985d..74f88f17f78 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
> >
> >  int *a;
> >
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c
> > index af9ae0e0f3d..7c99ccd109a 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do run } */
> > -/* { dg-options "-O2 -funroll-loops --param max-unroll-times=8 
> > -fpredictive-commoning -fdump-tree-pcom-details-blocks" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -funroll-loops --param 
> > max-unroll-times=8 -fpredictive-commoning -fdump-tree-pcom-details-blocks" 
> > } */
>
> What's the issue with predcom here?  Is it Invalid Sum triggering?
for x86
when with -march=cascadelake, the failure is
FAIL: gcc: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-not pcom "Invalid sum"
FAIL: gcc: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-not pcom "Invalid sum"

w/o -march=cascadelake the failure is
FAIL: gcc: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom
"Unrolling 3 times." 1
FAIL: gcc: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom
"Unrolling 3 times." 1

for arm

FAIL: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom "Unrolling
3 times." 1
FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-not pcom "Invalid sum"
FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom "Unrolling
3 times." 1

>
> >  /* Test for predictive commoning of expressions, without reassociation.  */
> >
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c
> > index 52adb59d669..6b8a13fe830 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do run } */
> > -/* { dg-options "-O2 -funroll-loops --param max-unroll-times=8 
> > -fpredictive-commoning -fdump-tree-pcom-details-blocks" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -funroll-loops --param 
> > max-unroll-times=8 -fpredictive-commoning -fdump-tree-pcom-details-blocks" 
> > } */
> >
> >  /* Test for predictive commoning of expressions, with reassociation.  */
> >
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/scev-11.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/scev-11.c
> > index f15688538ea..2506eb89b74 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/scev-11.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/scev-11.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
> >
> >  int a[128];
> >  extern int b[];
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/scev-9.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/scev-9.c
> > index cbd7c85edfa..7381e961e93 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/scev-9.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/scev-9.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
> >
> >  int *a;
> >
> > diff --git a/gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c 
> > b/gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c
> > index 6c15c16151b..1f042414467 100644
> > --- a/gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c
> > +++ b/gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fsplit-paths -fdump-tree-split-paths-details -w" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -fsplit-paths 
> > -fdump-tree-split-paths-details -w" } */
> >
> >  void foo(unsigned long long *M)
> >  {
> > diff --git a/gcc/testsuite/gcc.dg/unroll-8.c 
> > b/gcc/testsuite/gcc.dg/unroll-8.c
> > index 4388f47d4c7..6cd8dacc365 100644
> > --- a/gcc/testsuite/gcc.dg/unroll-8.c
> > +++ b/gcc/testsuite/gcc.dg/unroll-8.c
> > @@ -1,6 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fdump-rtl-loop2_unroll-details-blocks 
> > -funroll-loops" } */
> > -/* { dg-additional-options "-fno-tree-vectorize" { target amdgcn-*-* } } */
> > +/* { dg-options "-O2 -fno-tree-vectorize 
> > -fdump-rtl-loop2_unroll-details-blocks -funroll-loops" } */
> >
> >  struct a {int a[7];};
> >  int t(struct a *a, int n)
> > diff --git a/gcc/testsuite/gcc.dg/var-expand1.c 
> > b/gcc/testsuite/gcc.dg/var-expand1.c
> > index 3d536cef2b3..1f3f3b3338c 100644
> > --- a/gcc/testsuite/gcc.dg/var-expand1.c
> > +++ b/gcc/testsuite/gcc.dg/var-expand1.c
> > @@ -2,7 +2,7 @@
> >  /* We don't (and don't want to) perform this optimisation on soft-float
> >     targets, where each addition is a library call.  */
> >  /* { dg-require-effective-target hard_float } */
> > -/* { dg-options "-O2 -funroll-loops --fast-math 
> > -fvariable-expansion-in-unroller -fdump-rtl-loop2_unroll" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -funroll-loops --fast-math 
> > -fvariable-expansion-in-unroller -fdump-rtl-loop2_unroll" } */
> >  /* { dg-additional-options "--param max-completely-peel-times=16  --param 
> > max-unroll-times=8" { target s390*-*-* } } */
> >
> >  extern void abort (void);
> > diff --git a/gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c 
> > b/gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c
> > index 552febb5fee..6547814544e 100644
> > --- a/gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c
> > +++ b/gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c
> > @@ -2,7 +2,7 @@
> >  /* { dg-additional-options "-O2 -ftree-vectorize 
> > -fvect-cost-model=very-cheap" } */
> >
> >  void
> > -f (int *restrict x, int *restrict y)
> > +f (int * x, int * y)
>
> Please remove this testcase - even with fully masking we'd need alias
> versioning.
>
> The testcase was speicifcially testing no epilogue peeling is done
> with very-cheap.
>
> The rest of the adjustments are OK
>
> >  {
> >    for (unsigned int i = 0; i < 1023; ++i)
> >      x[i] += y[i];
> > diff --git a/gcc/testsuite/gcc.target/i386/pr86270.c 
> > b/gcc/testsuite/gcc.target/i386/pr86270.c
> > index 98b012caf23..68562446fa4 100644
> > --- a/gcc/testsuite/gcc.target/i386/pr86270.c
> > +++ b/gcc/testsuite/gcc.target/i386/pr86270.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -fno-unroll-loops" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -fno-unroll-loops" } */
> >
> >  int *a;
> >  long len;
> > diff --git a/gcc/testsuite/gcc.target/i386/pr86722.c 
> > b/gcc/testsuite/gcc.target/i386/pr86722.c
> > index 95ddbd8ddb9..dd01ceaa0df 100644
> > --- a/gcc/testsuite/gcc.target/i386/pr86722.c
> > +++ b/gcc/testsuite/gcc.target/i386/pr86722.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile { target { ! ia32 } } } */
> > -/* { dg-options "-O2 -mno-avx -msse" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -mno-avx -msse" } */
> >
> >  void f(double*d,double*e){
> >    for(;d<e;++d)
> > diff --git a/gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c 
> > b/gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c
> > index 2a54bc89cfc..5f3d3e166af 100644
> > --- a/gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c
> > +++ b/gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c
> > @@ -1,5 +1,5 @@
> >  /* { dg-do compile } */
> > -/* { dg-options "-O2 -mabi=sysv" } */
> > +/* { dg-options "-O2 -fno-tree-vectorize -mabi=sysv" } */
> >
> >  extern int glb1, gbl2, gbl3;
> >
> > --
> > 2.31.1
> >



-- 
BR,
Hongtao

Reply via email to