From patchwork Wed Nov 16 21:39:36 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Metcalf X-Patchwork-Id: 17532 Received: (qmail 68387 invoked by alias); 16 Nov 2016 21:39:58 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 68325 invoked by uid 89); 16 Nov 2016 21:39:57 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-4.8 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, SPF_HELO_PASS, SPF_PASS, UNPARSEABLE_RELAY autolearn=ham version=3.3.2 spammy= X-HELO: mellanox.co.il From: Chris Metcalf To: Joseph Myers , libc-alpha@sourceware.org Cc: Chris Metcalf Subject: [PATCH] tile: create new math-tests.h header Date: Wed, 16 Nov 2016 16:39:36 -0500 Message-Id: <1479332376-10731-1-git-send-email-cmetcalf@mellanox.com> The header makes tile use the new mechanisms for suppressing exception and rounding support (the ROUNDING_TESTS_xxx() and EXCEPTION_TESTS_xxx macros). More importantly, it also now sets SNAN_TESTS_PRESERVE_PAYLOAD to 0, since the tile soft float does not preserve NaN payloads. --- This change fixes the math/test-{,i}{double,float} failures. 2016-11-16 Chris Metcalf * sysdeps/tile/math-tests.h: New file. sysdeps/tile/math-tests.h | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 sysdeps/tile/math-tests.h diff --git a/sysdeps/tile/math-tests.h b/sysdeps/tile/math-tests.h new file mode 100644 index 000000000000..eeade64d54da --- /dev/null +++ b/sysdeps/tile/math-tests.h @@ -0,0 +1,31 @@ +/* Configuration for math tests. Tile version. + Copyright (C) 2013-2016 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +/* Tile soft float does not support exceptions and rounding modes. */ +#define ROUNDING_TESTS_float(MODE) ((MODE) == FE_TONEAREST) +#define ROUNDING_TESTS_double(MODE) ((MODE) == FE_TONEAREST) +#define ROUNDING_TESTS_long_double(MODE) ((MODE) == FE_TONEAREST) +#define EXCEPTION_TESTS_float 0 +#define EXCEPTION_TESTS_double 0 +#define EXCEPTION_TESTS_long_double 0 + +/* Tile soft float does not preserve NaN payloads when converting a + signaling NaN to quiet. */ +#define SNAN_TESTS_PRESERVE_PAYLOAD 0 + +#include_next