This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libgo patch committed: Compile math library with -ffp-contract=off


Ian Lance Taylor <iant@google.com> writes:

> On Thu, Mar 13, 2014 at 6:27 PM, Michael Hudson-Doyle
> <michael.hudson@linaro.org> wrote:
>> Ian Lance Taylor <iant@google.com> writes:
>>
>>> The bug report http://golang.org/issue/7074 shows that math.Log2(1)
>>> produces the wrong result on Aarch64, because the Go math package is
>>> compiled to use a fused multiply-add instruction.  This patch to the
>>> libgo configure script will use -ffp-contract=off when compiling the
>>> math package on processors other than x86.  Bootstrapped and ran Go
>>> testsuite on x86_64-unknown-linux-gnu, not that that tests much.
>>> Committed to mainline.
>>
>> Thanks for this!  If you are willing to go into battle enough to argue
>> that libgcc should also be compiled with -ffp-contract=off (I did not
>> have the stomach for that fight) then we'll be down to 1 check-go
>> failure on aarch64 (which is peano -- due to the absence of
>> split/copyable stacks and should probably xfail).
>
> Hmmm, what is it that fails with libgcc?  Is there a bug report for
> it?

    https://code.google.com/p/go/issues/detail?id=7066

and then

    http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59714

I wanted to propose a version using "Kahan's algorithm for the
determinant" as described in

http://hal-ens-lyon.archives-ouvertes.fr/docs/00/78/57/86/PDF/Jeannerod_Louvet_Muller_final.pdf

but I haven't gotten around to it...

Cheers,
mwh

> I agree that peano is likely to fail without split stacks.
>
> Ian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]