From patchwork Wed Jul 6 13:24:36 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aurelien Jarno X-Patchwork-Id: 13670 X-Patchwork-Delegate: azanella@linux.vnet.ibm.com Received: (qmail 48395 invoked by alias); 6 Jul 2016 13:24:57 -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 47512 invoked by uid 89); 6 Jul 2016 13:24:56 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.2 required=5.0 tests=BAYES_00, KAM_LAZY_DOMAIN_SECURITY, RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy= X-HELO: hall.aurel32.net From: Aurelien Jarno To: libc-alpha@sourceware.org Cc: Aurelien Jarno Subject: [PATCH] ppc: Fix modf (sNaN) for pre-POWER5+ CPU (bug 20240). Date: Wed, 6 Jul 2016 15:24:36 +0200 Message-Id: <1467811476-5893-1-git-send-email-aurelien@aurel32.net> Commit a6a4395d fixed modf implementation by compiling s_modf.c and s_modff.c with -fsignaling-nans. However these files are also included from the pre-POWER5+ implementation, and thus these files should also be compiled with -fsignaling-nans. Changelog: [BZ #20240] * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile (CFLAGS-s_modf-ppc32.c): New variable. (CFLAGS-s_modff-ppc32.c): Likewise. * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile (CFLAGS-s_modf-ppc64.c): Likewise. (CFLAGS-s_modff-ppc64.c): Likewise. --- ChangeLog | 10 ++++++++++ sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile | 5 +++++ sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile | 5 +++++ 3 files changed, 20 insertions(+) diff --git a/ChangeLog b/ChangeLog index 72c5549..28aa60a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2016-07-06 Aurelien Jarno + + [BZ #20240] + * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile + (CFLAGS-s_modf-ppc32.c): New variable. + (CFLAGS-s_modff-ppc32.c): Likewise. + * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile + (CFLAGS-s_modf-ppc64.c): Likewise. + (CFLAGS-s_modff-ppc64.c): Likewise. + 2016-07-06 John David Anglin * sysdeps/hppa/fpu/libm-test-ulps: Regenerate. diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile index 590a8eb..804e7dc 100644 --- a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile +++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile @@ -34,4 +34,9 @@ CFLAGS-s_logb-power7.c = -mcpu=power7 CFLAGS-s_logbf-power7.c = -mcpu=power7 CFLAGS-e_hypot-power7.c = -mcpu=power7 CFLAGS-e_hypotf-power7.c = -mcpu=power7 + +# These files quiet sNaNs in a way that is optimized away without +# -fsignaling-nans. +CFLAGS-s_modf-ppc32.c += -fsignaling-nans +CFLAGS-s_modff-ppc32.c += -fsignaling-nans endif diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile b/sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile index add1fb8..ff42288 100644 --- a/sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile +++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile @@ -35,4 +35,9 @@ CFLAGS-s_modf-power5+.c = -mcpu=power5+ CFLAGS-s_modff-power5+.c = -mcpu=power5+ CFLAGS-e_hypot-power7.c = -mcpu=power7 CFLAGS-e_hypotf-power7.c = -mcpu=power7 + +# These files quiet sNaNs in a way that is optimized away without +# -fsignaling-nans. +CFLAGS-s_modf-ppc64.c += -fsignaling-nans +CFLAGS-s_modff-ppc64.c += -fsignaling-nans endif