From: "James Greenhalgh" <james.greenhalgh@arm.com>
To: "James Greenhalgh" <James.Greenhalgh@arm.com>,
<libffi-discuss@sourceware.org>
Cc: "'Anthony Green'" <green@moxielogic.com>
Subject: RE: [libffi testsuite] Set -ffp-contract=off for libffi.call/many.c
Date: Thu, 09 May 2013 12:59:00 -0000 [thread overview]
Message-ID: <000001ce4cb5$04d45960$0e7d0c20$@greenhalgh@arm.com> (raw)
In-Reply-To: <000001ce3ce4$e36a5610$aa3f0230$@greenhalgh@arm.com>
*ping^2*
(Can we still submit patches via this list, or does there need to
be a pull request?)
Thanks,
James
> -----Original Message-----
> From: James Greenhalgh
> Sent: 19 April 2013 11:02
> To: James Greenhalgh; libffi-discuss@sourceware.org
> Cc: 'Anthony Green'
> Subject: RE: [libffi testsuite] Set -ffp-contract=off for
> libffi.call/many.c
>
> *ping*
>
> > -----Original Message-----
> > From: James Greenhalgh
> > Sent: 08 April 2013 10:37
> > To: libffi-discuss@sourceware.org
> > Subject: [libffi testsuite] Set -ffp-contract=off for
> > libffi.call/many.c
> >
> >
> > Hi,
> >
> > A recent patch fixed libffi.call/many.c to check that the absolute
> > value of the difference of its two test results was smaller than
> > FLT_EPSILON,
> > rather than just checking their difference.
> >
> > Sadly, this exposes a problem with the testcase for targets with
> > a fused-multiply-add instruction. After inlining the non-ffi function
> > body, GCC will happily contract the final multiply with the subtract
> > for the comparison. Thus skipping the rounding step after the
> multiply
> > and causing an error large enough to cause the test to fail.
> >
> > Fixed by adding -ffp-contract=off to the list of dg-options thus
> > suppressing the introduction of fused-multiply-add.
> >
> > Tested on aarch64-none-linux-gnu to ensure the failure becomes
> > a pass.
> >
> > Thanks,
> > James Greenhalgh
> >
> > ---
> >
> > 2013-04-08 James Greenhalgh <james.greenhalgh@arm.com>
> >
> > * testsuite/libffi.call/many.c: Set -ffp-contract=off.
>
>
>
> diff --git a/testsuite/libffi.call/many.c b/testsuite/libffi.call/many.c
> index 67a367f..afade91 100644
> --- a/testsuite/libffi.call/many.c
> +++ b/testsuite/libffi.call/many.c
> @@ -5,6 +5,8 @@
> Originator: From the original ffitest.c */
>
> /* { dg-do run } */
> +/* { dg-options -ffp-contract=off } */
> +
> #include "ffitest.h"
>
> #include <stdlib.h>
next prev parent reply other threads:[~2013-05-09 12:59 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-08 9:37 James Greenhalgh
2013-04-19 10:01 ` James Greenhalgh
2013-05-09 12:59 ` James Greenhalgh [this message]
[not found] ` <CACxje5_Tp0an2rRwyUWKsqdE9vMOwDxfkSgGYTiankAH0bQLFQ@mail.gmail.com>
2013-05-29 8:39 ` James Greenhalgh
2013-06-25 12:55 ` James Greenhalgh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='000001ce4cb5$04d45960$0e7d0c20$@greenhalgh@arm.com' \
--to=james.greenhalgh@arm.com \
--cc=green@moxielogic.com \
--cc=libffi-discuss@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).