From d45a85265f43d2478476a0aba6bffc7872b060f5 Mon Sep 17 00:00:00 2001 From: Szabolcs Nagy Date: Fri, 10 Apr 2015 23:55:53 +0000 Subject: [PATCH] fix pow(+-0, inf) case http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1515.pdf --- src/math/special/pow.h | 4 ++-- src/math/special/powf.h | 4 ++-- src/math/special/powl.h | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/math/special/pow.h b/src/math/special/pow.h index 8af17c4..fed7899 100644 --- a/src/math/special/pow.h +++ b/src/math/special/pow.h @@ -11,7 +11,7 @@ T(RN, 0x0p+0, -0x1p+0, inf, T(RN, 0x0p+0, -0x1p+1, inf, 0x0p+0, DIVBYZERO) T(RN, 0x0p+0, -0x1.8p+1, inf, 0x0p+0, DIVBYZERO) T(RN, 0x0p+0, -0x1p+2, inf, 0x0p+0, DIVBYZERO) -T(RN, 0x0p+0, -inf, inf, 0x0p+0, DIVBYZERO) +T(RN, 0x0p+0, -inf, inf, 0x0p+0, 0) T(RN, -0x0p+0, nan, nan, 0x0p+0, 0) T(RN, -0x0p+0, inf, 0x0p+0, 0x0p+0, 0) T(RN, -0x0p+0, 0x1.8p+1, -0x0p+0, 0x0p+0, 0) @@ -25,7 +25,7 @@ T(RN, -0x0p+0, -0x1p+0, -inf, T(RN, -0x0p+0, -0x1p+1, inf, 0x0p+0, DIVBYZERO) T(RN, -0x0p+0, -0x1.8p+1, -inf, 0x0p+0, DIVBYZERO) T(RN, -0x0p+0, -0x1p+2, inf, 0x0p+0, DIVBYZERO) -T(RN, -0x0p+0, -inf, inf, 0x0p+0, DIVBYZERO) +T(RN, -0x0p+0, -inf, inf, 0x0p+0, 0) T(RN, nan, 0x0p+0, 0x1p+0, 0x0p+0, 0) T(RN, inf, 0x0p+0, 0x1p+0, 0x0p+0, 0) T(RN, -inf, 0x0p+0, 0x1p+0, 0x0p+0, 0) diff --git a/src/math/special/powf.h b/src/math/special/powf.h index bec842d..8c7d72d 100644 --- a/src/math/special/powf.h +++ b/src/math/special/powf.h @@ -11,7 +11,7 @@ T(RN, 0x0p+0, -0x1p+0, inf, 0x0p+0, DIVBYZ T(RN, 0x0p+0, -0x1p+1, inf, 0x0p+0, DIVBYZERO) T(RN, 0x0p+0, -0x1.8p+1, inf, 0x0p+0, DIVBYZERO) T(RN, 0x0p+0, -0x1p+2, inf, 0x0p+0, DIVBYZERO) -T(RN, 0x0p+0, -inf, inf, 0x0p+0, DIVBYZERO) +T(RN, 0x0p+0, -inf, inf, 0x0p+0, 0) T(RN, -0x0p+0, nan, nan, 0x0p+0, 0) T(RN, -0x0p+0, inf, 0x0p+0, 0x0p+0, 0) T(RN, -0x0p+0, 0x1.8p+1, -0x0p+0, 0x0p+0, 0) @@ -25,7 +25,7 @@ T(RN, -0x0p+0, -0x1p+0, -inf, 0x0p+0, DIVBYZ T(RN, -0x0p+0, -0x1p+1, inf, 0x0p+0, DIVBYZERO) T(RN, -0x0p+0, -0x1.8p+1, -inf, 0x0p+0, DIVBYZERO) T(RN, -0x0p+0, -0x1p+2, inf, 0x0p+0, DIVBYZERO) -T(RN, -0x0p+0, -inf, inf, 0x0p+0, DIVBYZERO) +T(RN, -0x0p+0, -inf, inf, 0x0p+0, 0) T(RN, nan, 0x0p+0, 0x1p+0, 0x0p+0, 0) T(RN, inf, 0x0p+0, 0x1p+0, 0x0p+0, 0) T(RN, -inf, 0x0p+0, 0x1p+0, 0x0p+0, 0) diff --git a/src/math/special/powl.h b/src/math/special/powl.h index 2e613c0..c0e914c 100644 --- a/src/math/special/powl.h +++ b/src/math/special/powl.h @@ -11,7 +11,7 @@ T(RN, 0x0p+0L, -0x1p+0L, T(RN, 0x0p+0L, -0x1p+1L, inf, 0x0p+0, DIVBYZERO) T(RN, 0x0p+0L, -0x1.8p+1L, inf, 0x0p+0, DIVBYZERO) T(RN, 0x0p+0L, -0x1p+2L, inf, 0x0p+0, DIVBYZERO) -T(RN, 0x0p+0L, -inf, inf, 0x0p+0, DIVBYZERO) +T(RN, 0x0p+0L, -inf, inf, 0x0p+0, 0) T(RN, -0x0p+0L, nan, nan, 0x0p+0, 0) T(RN, -0x0p+0L, inf, 0x0p+0L, 0x0p+0, 0) T(RN, -0x0p+0L, 0x1.8p+1L, -0x0p+0L, 0x0p+0, 0) @@ -25,7 +25,7 @@ T(RN, -0x0p+0L, -0x1p+0L, T(RN, -0x0p+0L, -0x1p+1L, inf, 0x0p+0, DIVBYZERO) T(RN, -0x0p+0L, -0x1.8p+1L, -inf, 0x0p+0, DIVBYZERO) T(RN, -0x0p+0L, -0x1p+2L, inf, 0x0p+0, DIVBYZERO) -T(RN, -0x0p+0L, -inf, inf, 0x0p+0, DIVBYZERO) +T(RN, -0x0p+0L, -inf, inf, 0x0p+0, 0) T(RN, nan, 0x0p+0L, 0x1p+0L, 0x0p+0, 0) T(RN, inf, 0x0p+0L, 0x1p+0L, 0x0p+0, 0) T(RN, -inf, 0x0p+0L, 0x1p+0L, 0x0p+0, 0) -- 2.20.1