From: Richard Biener Date: Tue, 17 Feb 2026 14:08:54 +0000 (+0100) Subject: Transition gfortran.dg/vect to dg-additional-sources X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e61ed41e14d03712386f9dd3df4242639563d56b;p=thirdparty%2Fgcc.git Transition gfortran.dg/vect to dg-additional-sources The following changes gfortran.dg/vect/vect.exp to glob all files (catching unhandled mask-store-1.f90) and handling additional flags via dg-additional-sources. * gfortran.dg/vect/vect.exp: Remove special options handling. Glob all *.\[fF\]{,90,95,03,08} files. * gfortran.dg/vect/O3-bb-slp-1.f: Add dg-additional-options. * gfortran.dg/vect/O3-bb-slp-2.f: Likewise. * gfortran.dg/vect/O3-pr36119.f90: Likewise. * gfortran.dg/vect/O3-pr39595.f: Likewise. * gfortran.dg/vect/O3-pr49957.f: Likewise. * gfortran.dg/vect/Ofast-pr50414.f90: Likewise. * gfortran.dg/vect/cost-model-pr34445.f: Likewise. * gfortran.dg/vect/cost-model-pr34445a.f: Likewise. * gfortran.dg/vect/fast-math-mgrid-resid.f: Likewise. * gfortran.dg/vect/fast-math-pr33299.f90: Likewise. * gfortran.dg/vect/fast-math-pr37021.f90: Likewise. * gfortran.dg/vect/fast-math-pr38968.f90: Likewise. * gfortran.dg/vect/fast-math-real8-pr40801.f90: Likewise. * gfortran.dg/vect/fast-math-rnflow-trs2a2.f90: Likewise. * gfortran.dg/vect/fast-math-vect-8.f90: Likewise. * gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90: Likewise. * gfortran.dg/vect/no-vfa-pr32377.f90: Likewise. * gfortran.dg/vect/no-vfa-pr32457.f90: Likewise. * gfortran.dg/vect/mask-store-1.f90: Add missing dg-do. --- diff --git a/gcc/testsuite/gfortran.dg/vect/O3-bb-slp-1.f b/gcc/testsuite/gfortran.dg/vect/O3-bb-slp-1.f index 74b3b17b5a9..4b85659dea7 100644 --- a/gcc/testsuite/gfortran.dg/vect/O3-bb-slp-1.f +++ b/gcc/testsuite/gfortran.dg/vect/O3-bb-slp-1.f @@ -1,4 +1,5 @@ ! { dg-do compile } +! { dg-additional-options "-O3" } subroutine tranx3 (jbeg,jend,kbeg,kend,dlo,den,mflx,zro) parameter(in = 128+5 & , jn = 128+5 diff --git a/gcc/testsuite/gfortran.dg/vect/O3-bb-slp-2.f b/gcc/testsuite/gfortran.dg/vect/O3-bb-slp-2.f index 34c44def093..d2ab4f26f53 100644 --- a/gcc/testsuite/gfortran.dg/vect/O3-bb-slp-2.f +++ b/gcc/testsuite/gfortran.dg/vect/O3-bb-slp-2.f @@ -1,4 +1,5 @@ ! { dg-do compile } +! { dg-additional-options "-O3" } ! { dg-additional-options "-mavx2" { target x86_64-*-* i?86-*-* } } subroutine tranx3 (ibeg,jbeg,jend,kbeg,kend & ,dlo,den diff --git a/gcc/testsuite/gfortran.dg/vect/O3-pr36119.f90 b/gcc/testsuite/gfortran.dg/vect/O3-pr36119.f90 index 148adf5e6df..093d077a74a 100644 --- a/gcc/testsuite/gfortran.dg/vect/O3-pr36119.f90 +++ b/gcc/testsuite/gfortran.dg/vect/O3-pr36119.f90 @@ -1,4 +1,5 @@ ! { dg-do compile } +! { dg-additional-options "-O3" } SUBROUTINE check_dnucint_ana (dcore) IMPLICIT NONE diff --git a/gcc/testsuite/gfortran.dg/vect/O3-pr39595.f b/gcc/testsuite/gfortran.dg/vect/O3-pr39595.f index 50725fe4d4f..89cb77edbd4 100644 --- a/gcc/testsuite/gfortran.dg/vect/O3-pr39595.f +++ b/gcc/testsuite/gfortran.dg/vect/O3-pr39595.f @@ -1,4 +1,5 @@ ! { dg-do compile } +! { dg-additional-options "-O3" } subroutine foo(a,c,i,m) real a(4,*),b(3,64),c(3,200),d(64) integer*8 i,j,k,l,m diff --git a/gcc/testsuite/gfortran.dg/vect/O3-pr49957.f b/gcc/testsuite/gfortran.dg/vect/O3-pr49957.f index 778b4a010b6..500635b3877 100644 --- a/gcc/testsuite/gfortran.dg/vect/O3-pr49957.f +++ b/gcc/testsuite/gfortran.dg/vect/O3-pr49957.f @@ -1,5 +1,6 @@ ! { dg-do compile } ! { dg-require-effective-target vect_double } +! { dg-additional-options "-O3" } subroutine shell(nx,ny,nz,q,dq) implicit none integer i,j,k,l,nx,ny,nz diff --git a/gcc/testsuite/gfortran.dg/vect/Ofast-pr50414.f90 b/gcc/testsuite/gfortran.dg/vect/Ofast-pr50414.f90 index 2f407d1ef35..4bb6ee21937 100644 --- a/gcc/testsuite/gfortran.dg/vect/Ofast-pr50414.f90 +++ b/gcc/testsuite/gfortran.dg/vect/Ofast-pr50414.f90 @@ -1,5 +1,5 @@ ! { dg-do compile } -! { dg-additional-options "-std=legacy" } +! { dg-additional-options "-std=legacy -Ofast" } SUBROUTINE SUB (A,L,YMAX) DIMENSION A(L) diff --git a/gcc/testsuite/gfortran.dg/vect/cost-model-pr34445.f b/gcc/testsuite/gfortran.dg/vect/cost-model-pr34445.f index 335328c5909..2929ae0c316 100644 --- a/gcc/testsuite/gfortran.dg/vect/cost-model-pr34445.f +++ b/gcc/testsuite/gfortran.dg/vect/cost-model-pr34445.f @@ -1,4 +1,5 @@ c { dg-do compile } +c { dg-additional-options "-fvect-cost-model=dynamic" } Subroutine FndSph(Alpha,Rad) Dimension Rad(100),RadInp(100) Do I = 1, NSphInp diff --git a/gcc/testsuite/gfortran.dg/vect/cost-model-pr34445a.f b/gcc/testsuite/gfortran.dg/vect/cost-model-pr34445a.f index 1f310795dbc..29ea9be9a52 100644 --- a/gcc/testsuite/gfortran.dg/vect/cost-model-pr34445a.f +++ b/gcc/testsuite/gfortran.dg/vect/cost-model-pr34445a.f @@ -1,5 +1,5 @@ c { dg-do compile } -c { dg-additional-options "-std=legacy" } +c { dg-additional-options "-std=legacy -fvect-cost-model=dynamic" } subroutine derv (xx,b,bv,det,r,s,t,ndopt,cosxy,thick,edis, 1 vni,vnt) implicit real*8 (a-h,o-z) diff --git a/gcc/testsuite/gfortran.dg/vect/fast-math-mgrid-resid.f b/gcc/testsuite/gfortran.dg/vect/fast-math-mgrid-resid.f index 2e548748296..128dcdf84c2 100644 --- a/gcc/testsuite/gfortran.dg/vect/fast-math-mgrid-resid.f +++ b/gcc/testsuite/gfortran.dg/vect/fast-math-mgrid-resid.f @@ -1,6 +1,6 @@ ! { dg-do compile } ! { dg-require-effective-target vect_double } -! { dg-additional-options "-O3 --param vect-max-peeling-for-alignment=0 -fpredictive-commoning -fdump-tree-pcom-details -std=legacy" } +! { dg-additional-options "-O3 -ffast-math --param vect-max-peeling-for-alignment=0 -fpredictive-commoning -fdump-tree-pcom-details -std=legacy" } ! { dg-additional-options "-mprefer-avx128" { target { i?86-*-* x86_64-*-* } } } ! { dg-additional-options "-mlsx" { target { loongarch*-*-* } } } ! { dg-additional-options "-mzarch" { target { s390*-*-* } } } diff --git a/gcc/testsuite/gfortran.dg/vect/fast-math-pr33299.f90 b/gcc/testsuite/gfortran.dg/vect/fast-math-pr33299.f90 index 68f7969623a..6b5f608f833 100644 --- a/gcc/testsuite/gfortran.dg/vect/fast-math-pr33299.f90 +++ b/gcc/testsuite/gfortran.dg/vect/fast-math-pr33299.f90 @@ -1,4 +1,5 @@ ! { dg-require-effective-target vect_double } +! { dg-additional-options "-ffast-math" } PROGRAM test REAL(8) :: f,dist(2) diff --git a/gcc/testsuite/gfortran.dg/vect/fast-math-pr37021.f90 b/gcc/testsuite/gfortran.dg/vect/fast-math-pr37021.f90 index e680f80aac3..ae3a4abc748 100644 --- a/gcc/testsuite/gfortran.dg/vect/fast-math-pr37021.f90 +++ b/gcc/testsuite/gfortran.dg/vect/fast-math-pr37021.f90 @@ -1,5 +1,6 @@ ! { dg-do compile } ! { dg-require-effective-target vect_double } +! { dg-additional-options "-ffast-math" } subroutine to_product_of(self,a,b,a1,a2) complex(kind=8) :: self (:) diff --git a/gcc/testsuite/gfortran.dg/vect/fast-math-pr38968.f90 b/gcc/testsuite/gfortran.dg/vect/fast-math-pr38968.f90 index f5bc41a573b..a866dc366df 100644 --- a/gcc/testsuite/gfortran.dg/vect/fast-math-pr38968.f90 +++ b/gcc/testsuite/gfortran.dg/vect/fast-math-pr38968.f90 @@ -4,6 +4,7 @@ ! { dg-skip-if "" { ia64-*-* sparc*-*-* } } ! It can be slow on some x86 CPUs. ! { dg-timeout-factor 2 } +! { dg-additional-options "-ffast-math" } program mymatmul implicit none integer, parameter :: kp = 4 diff --git a/gcc/testsuite/gfortran.dg/vect/fast-math-real8-pr40801.f90 b/gcc/testsuite/gfortran.dg/vect/fast-math-real8-pr40801.f90 index 372a99a2055..8198862b9ae 100644 --- a/gcc/testsuite/gfortran.dg/vect/fast-math-real8-pr40801.f90 +++ b/gcc/testsuite/gfortran.dg/vect/fast-math-real8-pr40801.f90 @@ -1,4 +1,5 @@ ! { dg-do compile } +! { dg-additional-options "-ffast-math -fdefault-real-8" } MODULE YOMPHY0 REAL :: ECMNP diff --git a/gcc/testsuite/gfortran.dg/vect/fast-math-rnflow-trs2a2.f90 b/gcc/testsuite/gfortran.dg/vect/fast-math-rnflow-trs2a2.f90 index b0c9ac04f4c..02d3e545673 100644 --- a/gcc/testsuite/gfortran.dg/vect/fast-math-rnflow-trs2a2.f90 +++ b/gcc/testsuite/gfortran.dg/vect/fast-math-rnflow-trs2a2.f90 @@ -1,5 +1,6 @@ ! { dg-do compile } ! { dg-require-effective-target vect_double } +! { dg-additional-options "-ffast-math" } function trs2a2 (j, k, u, d, m) ! matrice de transition intermediaire, partant de k sans descendre diff --git a/gcc/testsuite/gfortran.dg/vect/fast-math-vect-8.f90 b/gcc/testsuite/gfortran.dg/vect/fast-math-vect-8.f90 index fe2c9e3a4fe..a6cc37af7d7 100644 --- a/gcc/testsuite/gfortran.dg/vect/fast-math-vect-8.f90 +++ b/gcc/testsuite/gfortran.dg/vect/fast-math-vect-8.f90 @@ -1,6 +1,7 @@ ! { dg-do compile } ! { dg-require-effective-target vect_float } ! { dg-require-visibility "" } +! { dg-additional-options "-ffast-math" } module solv_cap diff --git a/gcc/testsuite/gfortran.dg/vect/mask-store-1.f90 b/gcc/testsuite/gfortran.dg/vect/mask-store-1.f90 index 83cd8ddfea8..e6c60e6136e 100644 --- a/gcc/testsuite/gfortran.dg/vect/mask-store-1.f90 +++ b/gcc/testsuite/gfortran.dg/vect/mask-store-1.f90 @@ -1,3 +1,5 @@ +! { dg-do compile } + subroutine foo(a, b, x, n) real(kind=8) :: a(n), b(n), tmp logical(kind=1) :: x diff --git a/gcc/testsuite/gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90 b/gcc/testsuite/gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90 index bf2ca0e953d..33df94611f9 100644 --- a/gcc/testsuite/gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90 +++ b/gcc/testsuite/gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90 @@ -1,4 +1,5 @@ ! { dg-do compile } +! { dg-additional-options "-O3 -fno-tree-copy-prop -fno-tree-fre" } integer, parameter :: q = 2 integer, parameter :: nx=3, ny=2*q, nz=5 diff --git a/gcc/testsuite/gfortran.dg/vect/no-vfa-pr32377.f90 b/gcc/testsuite/gfortran.dg/vect/no-vfa-pr32377.f90 index bf76adcfbee..ff71c9d684d 100644 --- a/gcc/testsuite/gfortran.dg/vect/no-vfa-pr32377.f90 +++ b/gcc/testsuite/gfortran.dg/vect/no-vfa-pr32377.f90 @@ -1,5 +1,6 @@ ! { dg-do compile } ! { dg-require-effective-target vect_float } +! { dg-additional-options "--param vect-max-version-for-alias-checks=0" } subroutine s243(ntimes,ld,n,ctime,dtime,a,b,c,d,e,aa,bb,cc) diff --git a/gcc/testsuite/gfortran.dg/vect/no-vfa-pr32457.f90 b/gcc/testsuite/gfortran.dg/vect/no-vfa-pr32457.f90 index 1f3a286de7d..4ee6cea271a 100644 --- a/gcc/testsuite/gfortran.dg/vect/no-vfa-pr32457.f90 +++ b/gcc/testsuite/gfortran.dg/vect/no-vfa-pr32457.f90 @@ -1,5 +1,6 @@ ! { dg-do compile } ! { dg-require-effective-target vect_float } +! { dg-additional-options "--param vect-max-version-for-alias-checks=0" } SUBROUTINE KEEL(RBOUND) REAL, DIMENSION(0:100) :: RBOUND diff --git a/gcc/testsuite/gfortran.dg/vect/vect.exp b/gcc/testsuite/gfortran.dg/vect/vect.exp index a4e02a70463..55061c27cd6 100644 --- a/gcc/testsuite/gfortran.dg/vect/vect.exp +++ b/gcc/testsuite/gfortran.dg/vect/vect.exp @@ -53,62 +53,7 @@ dg-init # Main loop. et-dg-runtest gfortran-dg-runtest [lsort [glob -nocomplain \ - $srcdir/$subdir/vect-*.\[fF\]{,90,95,03,08} ]] "" $DEFAULT_VECTCFLAGS -et-dg-runtest gfortran-dg-runtest [lsort [glob -nocomplain \ - $srcdir/$subdir/pr*.\[fF\]{,90,95,03,08} ]] "" $DEFAULT_VECTCFLAGS - -#### Tests with special options -global SAVED_DEFAULT_VECTCFLAGS -set SAVED_DEFAULT_VECTCFLAGS $DEFAULT_VECTCFLAGS - -# -ffast-math tests -set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS -lappend DEFAULT_VECTCFLAGS "-ffast-math" -et-dg-runtest gfortran-dg-runtest [lsort [glob -nocomplain \ - $srcdir/$subdir/fast-math-*.\[fF\]{,90,95,03,08} ]] \ - "" $DEFAULT_VECTCFLAGS - -# -ffast-math tests -set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS -lappend DEFAULT_VECTCFLAGS "-ffast-math" "-fdefault-real-8" -et-dg-runtest gfortran-dg-runtest [lsort [glob -nocomplain \ - $srcdir/$subdir/fast-math-real8*.\[fF\]{,90,95,03,08} ]] \ - "" $DEFAULT_VECTCFLAGS - -# -fvect-cost-model tests -set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS -lappend DEFAULT_VECTCFLAGS "-fvect-cost-model=dynamic" -et-dg-runtest gfortran-dg-runtest [lsort [glob -nocomplain \ - $srcdir/$subdir/cost-model-*.\[fF\]{,90,95,03,08} ]] \ - "" $DEFAULT_VECTCFLAGS - -# --param vect-max-version-for-alias-checks=0 tests -set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS -lappend DEFAULT_VECTCFLAGS "--param" "vect-max-version-for-alias-checks=0" -et-dg-runtest gfortran-dg-runtest [lsort [glob -nocomplain \ - $srcdir/$subdir/no-vfa-*.\[fF\]{,90,95,03,08} ]] \ - "" $DEFAULT_VECTCFLAGS - -# With -O3 -set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS -lappend DEFAULT_VECTCFLAGS "-O3" -et-dg-runtest gfortran-dg-runtest [lsort [glob -nocomplain \ - $srcdir/$subdir/O3-*.\[fF\]{,90,95,03,08} ]] \ - "" $DEFAULT_VECTCFLAGS - -# With -Ofast -set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS -lappend DEFAULT_VECTCFLAGS "-Ofast" -et-dg-runtest gfortran-dg-runtest [lsort [glob -nocomplain \ - $srcdir/$subdir/Ofast-*.\[fF\]{,90,95,03,08} ]] \ - "" $DEFAULT_VECTCFLAGS - -# With -fno-tree-copy-prop -fno-tree-fre -O3 -set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS -lappend DEFAULT_VECTCFLAGS "-fno-tree-copy-prop" "-fno-tree-fre" "-O3" -et-dg-runtest gfortran-dg-runtest [lsort [glob -nocomplain \ - $srcdir/$subdir/no-fre-no-copy-prop-O3-*.\[fF\]{,90,95,03,08} ]] \ - "" $DEFAULT_VECTCFLAGS + $srcdir/$subdir/*.\[fF\]{,90,95,03,08} ]] "" $DEFAULT_VECTCFLAGS # Clean up. set dg-do-what-default ${save-dg-do-what-default}