aboutsummaryrefslogtreecommitdiff
path: root/pl/math/v_asinh_2u5.c
diff options
context:
space:
mode:
Diffstat (limited to 'pl/math/v_asinh_2u5.c')
-rw-r--r--pl/math/v_asinh_2u5.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/pl/math/v_asinh_2u5.c b/pl/math/v_asinh_2u5.c
index 4eeec4a..04d369d 100644
--- a/pl/math/v_asinh_2u5.c
+++ b/pl/math/v_asinh_2u5.c
@@ -98,19 +98,19 @@ VPCS_ATTR v_f64_t V_NAME (asinh) (v_f64_t x)
v_u64_t gt1 = v_cond_u64 (top12 >= OneTop);
v_u64_t special = v_cond_u64 (top12 >= HugeBound);
-#if WANT_ERRNO
+#if WANT_SIMD_EXCEPT
v_u64_t tiny = v_cond_u64 (top12 < TinyBound);
special |= tiny;
#endif
/* Option 1: |x| >= 1.
Compute asinh(x) according by asinh(x) = log(x + sqrt(x^2 + 1)).
- If WANT_ERRNO is enabled, sidestep special values, which will overflow, by
- setting special lanes to 1. These will be fixed later. */
+ If WANT_SIMD_EXCEPT is enabled, sidestep special values, which will
+ overflow, by setting special lanes to 1. These will be fixed later. */
v_f64_t option_1 = v_f64 (0);
if (likely (v_any_u64 (gt1)))
{
-#if WANT_ERRNO
+#if WANT_SIMD_EXCEPT
v_f64_t xm = v_sel_f64 (special, v_f64 (1), ax);
#else
v_f64_t xm = ax;
@@ -120,16 +120,16 @@ VPCS_ATTR v_f64_t V_NAME (asinh) (v_f64_t x)
/* Option 2: |x| < 1.
Compute asinh(x) using a polynomial.
- If WANT_ERRNO is enabled, sidestep special lanes, which will overflow, and
- tiny lanes, which will underflow, by setting them to 0. They will be fixed
- later, either by selecting x or falling back to the scalar special-case.
- The largest observed error in this region is 1.47 ULPs:
+ If WANT_SIMD_EXCEPT is enabled, sidestep special lanes, which will
+ overflow, and tiny lanes, which will underflow, by setting them to 0. They
+ will be fixed later, either by selecting x or falling back to the scalar
+ special-case. The largest observed error in this region is 1.47 ULPs:
__v_asinh(0x1.fdfcd00cc1e6ap-1) got 0x1.c1d6bf874019bp-1
want 0x1.c1d6bf874019cp-1. */
v_f64_t option_2 = v_f64 (0);
if (likely (v_any_u64 (~gt1)))
{
-#if WANT_ERRNO
+#if WANT_SIMD_EXCEPT
ax = v_sel_f64 (tiny | gt1, v_f64 (0), ax);
#endif
v_f64_t x2 = ax * ax;
@@ -138,7 +138,7 @@ VPCS_ATTR v_f64_t V_NAME (asinh) (v_f64_t x)
v_f64_t z8 = z4 * z4;
v_f64_t p = ESTRIN_17 (x2, z2, z4, z8, z8 * z8, C);
option_2 = v_fma_f64 (p, x2 * ax, ax);
-#if WANT_ERRNO
+#if WANT_SIMD_EXCEPT
option_2 = v_sel_f64 (tiny, x, option_2);
#endif
}
@@ -156,7 +156,7 @@ VPCS_ALIAS
PL_SIG (V, D, 1, asinh, -10.0, 10.0)
PL_TEST_ULP (V_NAME (asinh), 1.54)
-PL_TEST_EXPECT_FENV (V_NAME (asinh), WANT_ERRNO)
+PL_TEST_EXPECT_FENV (V_NAME (asinh), WANT_SIMD_EXCEPT)
/* Test vector asinh 3 times, with control lane < 1, > 1 and special.
Ensures the v_sel is choosing the right option in all cases. */
#define V_ASINH_INTERVAL(lo, hi, n) \