On Wed, Mar 25, 2015 at 8:09 PM, Michael Meissner
<meiss...@linux.vnet.ibm.com> wrote:
> Pat Haugen runs a spec regression tester on various PowerPC boxes, and he
> noticed that my fix for PR 65240 (the bug involving floating point constants
> and -ffast-math under VSX) caused a regression in building the dealII 
> benchmark
> on power6x.  I looked into it, and discovered I had missed extenddftf2_fprs
> relying on (const_double 0.0) being used in RTL code.  This works on VSX
> systems, where you can use the XXLXOR instruction, but it does not work on
> previous systems.
>
> This patch fixes the problem.  I have bootstrapped and ran make check on a
> power7 big endian system and a power8 little endian system.  On power7, the
> following test had been failing, and is now fixed (it doesn't fail on power8):
>
>         g++.dg/torture/pr58369.C
>
> I have also built the power8-vsx, power7-vsx, power6x-altivec suite with no
> failures.  I'm building power6x-scalar, and power5-scalar shortly.  Assuming
> that the last two spec runs build without errors, can I apply the patch?
>
> 2015-03-25  Michael Meissner  <meiss...@linux.vnet.ibm.com>
>
>         PR target/65569
>         * config/rs6000/rs6000.md (extenddftf2_fprs): On VSX systems use
>         XXLXOR to create 0.0.  On pre-VSX systems make sure the constant
>         0.0 is correctly setup.
>         (extenddftf2_internal): Likewise.

Okay.

Thanks, David

Reply via email to