This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Re: [PATCH] Fix Fortran DO loop fallback
- From: Martin Liška <mliska at suse dot cz>
- To: Richard Biener <richard dot guenther at gmail dot com>
- Cc: Jeff Law <law at redhat dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>, "fortran at gcc dot gnu dot org" <fortran at gcc dot gnu dot org>
- Date: Tue, 12 Jul 2016 16:54:32 +0200
- Subject: Re: [PATCH] Fix Fortran DO loop fallback
- Authentication-results: sourceware.org; auth=none
- References: <cover.1467883947.git.mliska@suse.cz> <86a3b430-0282-305b-8796-5a696d53b46a@suse.cz> <9b6e6e1f-b62c-7ea4-1f72-417472fa96e4@redhat.com> <CAFiYyc1sotqJVzpNaKiZ4azVsWxeouvZSRvMGXP98XStQrLDoA@mail.gmail.com> <e9345442-52c2-b0c3-7c25-4073b92fc027@suse.cz> <CAFiYyc3Vydg63j5m0DN+r1SRKT9+qPyqCdTnXKy3AyTXcyo42w@mail.gmail.com>
On 07/12/2016 03:15 PM, Richard Biener wrote:
> The scan for 1 *n_ after FRE looks still useful. Btw, the testcase
> doesn't fail for me,
> we _do_ hoist the division in PRE, just not with -m32 anymore. Can
> you confirm this?
Yeah, it works for both -m32 and -m64.
This is final version of the patch, may I install it?
Thanks,
Martin
>From e23c13dcc2f5e1967b0941c7a627241e3b6759e8 Mon Sep 17 00:00:00 2001
From: marxin <mliska@suse.cz>
Date: Fri, 8 Jul 2016 15:51:54 +0200
Subject: [PATCH] Fix Fortran DO loop fallback
gcc/testsuite/ChangeLog:
2016-07-08 Martin Liska <mliska@suse.cz>
* gfortran.dg/ldist-1.f90: Revert change introduces in r238114.
* gfortran.dg/pr42108.f90: Add -fno-ipa-icf to additional
options.
* gfortran.dg/vect/pr62283.f: Update expected dump scan.
---
gcc/testsuite/gfortran.dg/ldist-1.f90 | 2 +-
gcc/testsuite/gfortran.dg/pr42108.f90 | 2 --
gcc/testsuite/gfortran.dg/vect/pr62283.f | 2 +-
3 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/gcc/testsuite/gfortran.dg/ldist-1.f90 b/gcc/testsuite/gfortran.dg/ldist-1.f90
index 2030328..ea3990d 100644
--- a/gcc/testsuite/gfortran.dg/ldist-1.f90
+++ b/gcc/testsuite/gfortran.dg/ldist-1.f90
@@ -32,4 +32,4 @@ end Subroutine PADEC
! There are 5 legal partitions in this code. Based on the data
! locality heuristic, this loop should not be split.
-! { dg-final { scan-tree-dump "distributed: split to" "ldist" } }
+! { dg-final { scan-tree-dump-not "distributed: split to" "ldist" } }
diff --git a/gcc/testsuite/gfortran.dg/pr42108.f90 b/gcc/testsuite/gfortran.dg/pr42108.f90
index eb93604..a913aa4 100644
--- a/gcc/testsuite/gfortran.dg/pr42108.f90
+++ b/gcc/testsuite/gfortran.dg/pr42108.f90
@@ -21,7 +21,5 @@ subroutine eval(foo1,foo2,foo3,foo4,x,n,nnd)
end do
end subroutine eval
-! We should have hoisted the division
-! { dg-final { scan-tree-dump "in all uses of countm1\[^\n\]* / " "pre" } }
! There should be only one load from n left
! { dg-final { scan-tree-dump-times "\\*n_" 1 "fre1" } }
diff --git a/gcc/testsuite/gfortran.dg/vect/pr62283.f b/gcc/testsuite/gfortran.dg/vect/pr62283.f
index 7df3d99..4d8cba1 100644
--- a/gcc/testsuite/gfortran.dg/vect/pr62283.f
+++ b/gcc/testsuite/gfortran.dg/vect/pr62283.f
@@ -1,5 +1,5 @@
C { dg-do compile }
-C { dg-additional-options "-fvect-cost-model=dynamic" }
+C { dg-additional-options "-fvect-cost-model=dynamic -fno-ipa-icf" }
subroutine test2(x,y)
real x(4),y(4)
beta=3.141593
--
2.8.4