This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch] Fix PR40021: miscompile of BLAS (hence tonto and gamess)
Hi,
On Wed, 6 May 2009, Richard Guenther wrote:
> On Wed, May 6, 2009 at 6:00 PM, Michael Matz <matz@suse.de> wrote:
> > Hi,
> >
> > as detailed in the bugreport we can end up in a situation where a basic
> > block with just one successor edge ends with multiple jump instructions to
> > the same target (only during expansion itself). ÂWe are confused if we
> > want to insert instructions on such edge and insert them before the last
> > jump, but after the others, which later leads to miscompilations as the
> > inserted instruction isn't ru then.
> >
> > This fixes the miscompile (with test input and of the testcase).
> > Regstrapped on x86_64-linux. ÂOkay?
>
> The patch is ok if you add a testcase.
r147186. The testcase is target dependend (insofar as it needs sse math
on -m32 to trigger), so I've put it in gfortran.dg/pr40021.f as there was
precedent already for such tests. I've also done the two minor changes
H.J. suggested, in the testcase and the new function.
Ciao,
Michael.