From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 125454 invoked by alias); 22 Aug 2016 11:48:43 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 124698 invoked by uid 89); 22 Aug 2016 11:48:42 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.2 required=5.0 tests=AWL,BAYES_00,KAM_ASCII_DIVIDERS,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=no version=3.3.2 spammy=float32x, flt32x_max_exp, UTItype, utitype X-Spam-User: qpsmtpd, 2 recipients X-HELO: relay1.mentorg.com Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 22 Aug 2016 11:48:32 +0000 Received: from nat-ies.mentorg.com ([192.94.31.2] helo=SVR-IES-FEM-01.mgc.mentorg.com) by relay1.mentorg.com with esmtp id 1bbniQ-0004Y0-7M from joseph_myers@mentor.com ; Mon, 22 Aug 2016 04:48:30 -0700 Received: from digraph.polyomino.org.uk (137.202.0.76) by SVR-IES-FEM-01.mgc.mentorg.com (137.202.0.104) with Microsoft SMTP Server id 14.3.224.2; Mon, 22 Aug 2016 12:48:28 +0100 Received: from jsm28 (helo=localhost) by digraph.polyomino.org.uk with local-esmtp (Exim 4.86_2) (envelope-from ) id 1bbniM-0003AO-VR; Mon, 22 Aug 2016 11:48:27 +0000 Date: Mon, 22 Aug 2016 11:48:00 -0000 From: Joseph Myers To: Matthew Wahab CC: , Subject: Re: Implement C _FloatN, _FloatNx types [version 6] In-Reply-To: <57BAD856.1020206@foss.arm.com> Message-ID: References: <20160817154244.GA39270@arm.com> <57BAD856.1020206@foss.arm.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" X-SW-Source: 2016-08/txt/msg01524.txt.bz2 On Mon, 22 Aug 2016, Matthew Wahab wrote: > > + TEST_I_F(TItype, UTItype, _Float32, FLT32X_MANT_DIG, FLT32X_MAX_EXP); > > + exit (0); > > + > > This test fails with an abort at runtime. The other float32x tests pass. That should be fixed by the commit I made to fix the issue pointed out by Andreas. > This change makes gcc.dg/torture/arm-fp16-int-convert-{alt,ieee].c fail > because they still pass four arguments to the macro, not five. I've applied this patch that should fix this. Update TEST_I_F calls in ARM fp-int-convert tests. gcc/testsuite: 2016-08-22 Joseph Myers * gcc.dg/torture/arm-fp16-int-convert-alt.c (FP16_MAX_EXP): New macro. (main): Update calls to TEST_I_F. * gcc.dg/torture/arm-fp16-int-convert-ieee.c (FP16_MAX_EXP): New macro. (main): Update calls to TEST_I_F. Index: gcc/testsuite/gcc.dg/torture/arm-fp16-int-convert-alt.c =================================================================== --- gcc/testsuite/gcc.dg/torture/arm-fp16-int-convert-alt.c (revision 239655) +++ gcc/testsuite/gcc.dg/torture/arm-fp16-int-convert-alt.c (working copy) @@ -4,14 +4,15 @@ #include "fp-int-convert.h" #define FP16_MANT_DIG 11 +#define FP16_MAX_EXP 17 int main (void) { - TEST_I_F(signed char, unsigned char, float, FP16_MANT_DIG); - TEST_I_F(signed short, unsigned short, float, FP16_MANT_DIG); - TEST_I_F(signed int, unsigned int, float, FP16_MANT_DIG); - TEST_I_F(signed long, unsigned long, float, FP16_MANT_DIG); - TEST_I_F(signed long long, unsigned long long, float, FP16_MANT_DIG); + TEST_I_F(signed char, unsigned char, float, FP16_MANT_DIG, FP16_MAX_EXP); + TEST_I_F(signed short, unsigned short, float, FP16_MANT_DIG, FP16_MAX_EXP); + TEST_I_F(signed int, unsigned int, float, FP16_MANT_DIG, FP16_MAX_EXP); + TEST_I_F(signed long, unsigned long, float, FP16_MANT_DIG, FP16_MAX_EXP); + TEST_I_F(signed long long, unsigned long long, float, FP16_MANT_DIG, FP16_MAX_EXP); exit (0); } Index: gcc/testsuite/gcc.dg/torture/arm-fp16-int-convert-ieee.c =================================================================== --- gcc/testsuite/gcc.dg/torture/arm-fp16-int-convert-ieee.c (revision 239655) +++ gcc/testsuite/gcc.dg/torture/arm-fp16-int-convert-ieee.c (working copy) @@ -4,14 +4,15 @@ #include "fp-int-convert.h" #define FP16_MANT_DIG 11 +#define FP16_MAX_EXP 16 int main (void) { - TEST_I_F(signed char, unsigned char, float, FP16_MANT_DIG); - TEST_I_F(signed short, unsigned short, float, FP16_MANT_DIG); - TEST_I_F(signed int, unsigned int, float, FP16_MANT_DIG); - TEST_I_F(signed long, unsigned long, float, FP16_MANT_DIG); - TEST_I_F(signed long long, unsigned long long, float, FP16_MANT_DIG); + TEST_I_F(signed char, unsigned char, float, FP16_MANT_DIG, FP16_MAX_EXP); + TEST_I_F(signed short, unsigned short, float, FP16_MANT_DIG, FP16_MAX_EXP); + TEST_I_F(signed int, unsigned int, float, FP16_MANT_DIG, FP16_MAX_EXP); + TEST_I_F(signed long, unsigned long, float, FP16_MANT_DIG, FP16_MAX_EXP); + TEST_I_F(signed long long, unsigned long long, float, FP16_MANT_DIG, FP16_MAX_EXP); exit (0); } -- Joseph S. Myers joseph@codesourcery.com