diff options
Diffstat (limited to 'pl/math/v_asinh_2u5.c')
-rw-r--r-- | pl/math/v_asinh_2u5.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/pl/math/v_asinh_2u5.c b/pl/math/v_asinh_2u5.c index 23171a1..4eeec4a 100644 --- a/pl/math/v_asinh_2u5.c +++ b/pl/math/v_asinh_2u5.c @@ -157,4 +157,18 @@ 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) +/* 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) \ + PL_TEST_INTERVAL_C (V_NAME (asinh), lo, hi, n, 0.5) \ + PL_TEST_INTERVAL_C (V_NAME (asinh), lo, hi, n, 2) \ + PL_TEST_INTERVAL_C (V_NAME (asinh), lo, hi, n, 0x1p600) +V_ASINH_INTERVAL (0, 0x1p-26, 50000) +V_ASINH_INTERVAL (0x1p-26, 1, 50000) +V_ASINH_INTERVAL (1, 0x1p511, 50000) +V_ASINH_INTERVAL (0x1p511, inf, 40000) +V_ASINH_INTERVAL (-0, -0x1p-26, 50000) +V_ASINH_INTERVAL (-0x1p-26, -1, 50000) +V_ASINH_INTERVAL (-1, -0x1p511, 50000) +V_ASINH_INTERVAL (-0x1p511, -inf, 40000) #endif |