diff options
author | Andre Vieira <andre.simoesdiasvieira@arm.com> | 2021-02-08 16:04:18 +0000 |
---|---|---|
committer | Andre Vieira <andre.simoesdiasvieira@arm.com> | 2021-02-08 16:04:18 +0000 |
commit | 40c92180df970143249f3cd5056f8fb48a4d9333 (patch) | |
tree | a2f3d7dcd417e97c6324621231f1f2cd2f1a4998 /gcc | |
parent | d4536e431316b4568e236afd7a6017e5efd1b0a1 (diff) | |
download | gcc-40c92180df970143249f3cd5056f8fb48a4d9333.zip gcc-40c92180df970143249f3cd5056f8fb48a4d9333.tar.gz gcc-40c92180df970143249f3cd5056f8fb48a4d9333.tar.bz2 |
middle-end/98974 - fixup after STMT_VINFO_VEC_STMTS rework
This fixes up the nvectors parameter passed to vect_get_loop_mask in
vectorizable_condition after the STMT_VINFO_VEC_STMTS rework.
gcc/ChangeLog:
2021-02-08 Andre Vieira <andre.simoesdiasvieira@arm.com>
PR middle-end/98974
* tree-vect-stmts.c (vectorizable_condition): Remove shadow vec_num
parameter in vectorizable_condition.
gcc/testsuite/ChangeLog:
2021-02-08 Andre Vieira <andre.simoesdiasvieira@arm.com>
PR middle-end/98974
* gfortran.dg/pr98974.F90: New test.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/gfortran.dg/pr98974.F90 | 21 | ||||
-rw-r--r-- | gcc/tree-vect-stmts.c | 1 |
2 files changed, 21 insertions, 1 deletions
diff --git a/gcc/testsuite/gfortran.dg/pr98974.F90 b/gcc/testsuite/gfortran.dg/pr98974.F90 new file mode 100644 index 0000000..296adad --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr98974.F90 @@ -0,0 +1,21 @@ +! PR middle-end/98974 +! { dg-do compile } +! { dg-options "-Ofast" } +! { dg-additional-options "-mcpu=neoverse-v1" { target aarch64*-*-* } } + +module module_foobar + integer,parameter :: fp_kind = selected_real_kind(15) +contains + subroutine foobar( foo, ix ,jx ,kx,iy,ky) + real, dimension( ix, kx, jx ) :: foo + real(fp_kind), dimension( iy, ky, 3 ) :: bar, baz + do k=1,ky + do i=1,iy + if ( baz(i,k,1) > 0. ) then + bar(i,k,1) = 0 + endif + foo(i,nk,j) = baz0 * bar(i,k,1) + enddo + enddo + end +end diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c index 0bc1cb1c..064e5d1 100644 --- a/gcc/tree-vect-stmts.c +++ b/gcc/tree-vect-stmts.c @@ -10235,7 +10235,6 @@ vectorizable_condition (vec_info *vinfo, if (masks) { - unsigned vec_num = vec_oprnds0.length (); tree loop_mask = vect_get_loop_mask (gsi, masks, vec_num * ncopies, vectype, i); |