This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Someone has caused regressions in gfortran
On Wed, Sep 05, 2007 at 12:41:10AM +0200, Jan Hubicka wrote:
> > Someone has committed a patch that is causing both
> > gfortran.dg/do_3.F90 and gfortran.dg/c_char_tests.f03
> > to fail at -O3 on amd64-*-freebsd. A quick inspection
> > of fortran/ChangeLog doesn't yield a pointer to any
> > particular commit. This may be caused by some middle-end
> > change, but I won't have time to narrow down the
> > revision until later tonight.
>
> Actually I just looked into the testcases - they are caused by the
> inliner change (and the problem didn't appear at the original testing
> run). The problem is that fortran never set DECL_INLINE on anything, so
> we ended up not doing any automatic inlining with exception of inlining
> functions called once and at -Os. Inliner now makes it's own decision
> on auto inlining and thus we uncover the latent bug.
Just to be clear, is it a latent bug in the fortran front-end?
Or, is it a latent bug in the inliner that is now exposed?
Is this only triggered at -O3?
> Because of the famous duplicated declaration problem, I am not sure if
> inlining is not completely unsafe for fortan and we would not be forced
> to disable it completely (not just partly as before the patch). This
> would be rather sad.
I can't parse the above. Too many double negatives. But, the last
sentence seems to certainly mean that inlining would need to be
completely disabled for gfortran. I wonder if the impact of such
a decision will be evident in the Polyhedron test suite.
> My fortran-fu is however not at level to figure out what precisely is
> going wrong in those two testcases.
I'll try to reduce the do_3.F90 code to a minimum testcase. Unfortunately,
my middle/back-end knowledge is probably much worse than your Fortran-fu.
--
Steve