From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6720 invoked by alias); 9 May 2013 12:59:29 -0000 Mailing-List: contact libffi-discuss-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libffi-discuss-owner@sourceware.org Received: (qmail 6707 invoked by uid 89); 9 May 2013 12:59:28 -0000 X-Spam-SWARE-Status: No, score=-2.8 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,MSGID_MULTIPLE_AT,RCVD_IN_DNSWL_LOW,SPF_PASS,TW_BF autolearn=ham version=3.3.1 Received: from service87.mimecast.com (HELO service87.mimecast.com) (91.220.42.44) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Thu, 09 May 2013 12:59:27 +0000 Received: from cam-owa1.Emea.Arm.com (fw-tnat.cambridge.arm.com [217.140.96.21]) by service87.mimecast.com; Thu, 09 May 2013 13:59:24 +0100 Received: from e106375vm ([10.1.255.212]) by cam-owa1.Emea.Arm.com with Microsoft SMTPSVC(6.0.3790.0); Thu, 9 May 2013 13:59:23 +0100 From: "James Greenhalgh" To: "James Greenhalgh" , Cc: "'Anthony Green'" References: <1365413805-5517-1-git-send-email-james.greenhalgh@arm.com> <000001ce3ce4$e36a5610$aa3f0230$@greenhalgh@arm.com> In-Reply-To: <000001ce3ce4$e36a5610$aa3f0230$@greenhalgh@arm.com> Subject: RE: [libffi testsuite] Set -ffp-contract=off for libffi.call/many.c Date: Thu, 09 May 2013 12:59:00 -0000 Message-ID: <000001ce4cb5$04d45960$0e7d0c20$@greenhalgh@arm.com> MIME-Version: 1.0 X-MC-Unique: 113050913592412101 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-SW-Source: 2013/txt/msg00131.txt.bz2 *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=3Doff for > libffi.call/many.c >=20 > *ping* >=20 > > -----Original Message----- > > From: James Greenhalgh > > Sent: 08 April 2013 10:37 > > To: libffi-discuss@sourceware.org > > Subject: [libffi testsuite] Set -ffp-contract=3Doff 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=3Doff 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 > > > > * testsuite/libffi.call/many.c: Set -ffp-contract=3Doff. >=20 >=20 > > 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 */ >=20=20 > /* { dg-do run } */ > +/* { dg-options -ffp-contract=3Doff } */ > + > #include "ffitest.h" >=20 > #include