From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2155) id E0BA43985405; Thu, 29 Oct 2020 08:39:50 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E0BA43985405 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Corinna Vinschen To: newlib-cvs@sourceware.org Subject: [newlib-cygwin] RISC-V: NaN should return 0 for finite[f] X-Act-Checkin: newlib-cygwin X-Git-Author: Kito Cheng X-Git-Refname: refs/heads/master X-Git-Oldrev: 7fa743ca9468d7725953ebdfb0d0b53ad126c14c X-Git-Newrev: 0020d2dd7c0eedcc19d20edeb7d66006927e202a Message-Id: <20201029083950.E0BA43985405@sourceware.org> Date: Thu, 29 Oct 2020 08:39:50 +0000 (GMT) X-BeenThere: newlib-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Newlib GIT logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Oct 2020 08:39:51 -0000 https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=0020d2dd7c0eedcc19d20edeb7d66006927e202a commit 0020d2dd7c0eedcc19d20edeb7d66006927e202a Author: Kito Cheng Date: Wed Oct 28 23:41:26 2020 +0800 RISC-V: NaN should return 0 for finite[f] Diff: --- newlib/libm/machine/riscv/s_finite.c | 2 +- newlib/libm/machine/riscv/sf_finite.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/newlib/libm/machine/riscv/s_finite.c b/newlib/libm/machine/riscv/s_finite.c index f5336e5dc..1f1f2244d 100644 --- a/newlib/libm/machine/riscv/s_finite.c +++ b/newlib/libm/machine/riscv/s_finite.c @@ -44,7 +44,7 @@ int finite(double x) { long fclass = _fclass_d (x); - return (fclass & FCLASS_INF) == 0; + return (fclass & (FCLASS_INF | FCLASS_NAN)) == 0; } #else #include "../../common/s_finite.c" diff --git a/newlib/libm/machine/riscv/sf_finite.c b/newlib/libm/machine/riscv/sf_finite.c index f1cf5c6ce..a17b0fa36 100644 --- a/newlib/libm/machine/riscv/sf_finite.c +++ b/newlib/libm/machine/riscv/sf_finite.c @@ -41,7 +41,7 @@ int finitef(float x) { long fclass = _fclass_f (x); - return (fclass & FCLASS_INF) == 0; + return (fclass & (FCLASS_INF | FCLASS_NAN)) == 0; } #else #include "../../common/sf_finite.c"