diff options
Diffstat (limited to 'pl/math/test')
41 files changed, 0 insertions, 1695 deletions
diff --git a/pl/math/test/mathbench_funcs.h b/pl/math/test/mathbench_funcs.h deleted file mode 100644 index f2710a979d40..000000000000 --- a/pl/math/test/mathbench_funcs.h +++ /dev/null @@ -1,87 +0,0 @@ -// clang-format off -/* - * Function entries for mathbench. - * - * Copyright (c) 2022-2023, Arm Limited. - * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - */ - -#define _ZSF1(fun, a, b) F(fun##f, a, b) -#define _ZSD1(f, a, b) D(f, a, b) - -#if defined(__vpcs) && __aarch64__ - -#define _ZVF1(fun, a, b) VNF(_ZGVnN4v_##fun##f, a, b) -#define _ZVD1(f, a, b) VND(_ZGVnN2v_##f, a, b) - -#else - -#define _ZVF1(f, a, b) -#define _ZVD1(f, a, b) - -#endif - -#if WANT_SVE_MATH - -#define _ZSVF1(fun, a, b) SVF(_ZGVsMxv_##fun##f, a, b) -#define _ZSVD1(f, a, b) SVD(_ZGVsMxv_##f, a, b) - -#else - -#define _ZSVF1(f, a, b) -#define _ZSVD1(f, a, b) - -#endif - -/* No auto-generated wrappers for binary functions - they have be - manually defined in mathbench_wrappers.h. We have to define silent - macros for them anyway as they will be emitted by PL_SIG. */ -#define _ZSF2(...) -#define _ZSD2(...) -#define _ZVF2(...) -#define _ZVD2(...) -#define _ZSVF2(...) -#define _ZSVD2(...) - -#include "mathbench_funcs_gen.h" - -/* PL_SIG only emits entries for unary functions, since if a function - needs to be wrapped in mathbench there is no way for it to know the - same of the wrapper. Add entries for binary functions, or any other - exotic signatures that need wrapping, below. */ - -{"atan2f", 'f', 0, -10.0, 10.0, {.f = atan2f_wrap}}, -{"atan2", 'd', 0, -10.0, 10.0, {.d = atan2_wrap}}, -{"powi", 'd', 0, 0.01, 11.1, {.d = powi_wrap}}, - -{"_ZGVnN4vv_atan2f", 'f', 'n', -10.0, 10.0, {.vnf = _Z_atan2f_wrap}}, -{"_ZGVnN2vv_atan2", 'd', 'n', -10.0, 10.0, {.vnd = _Z_atan2_wrap}}, -{"_ZGVnN4vv_hypotf", 'f', 'n', -10.0, 10.0, {.vnf = _Z_hypotf_wrap}}, -{"_ZGVnN2vv_hypot", 'd', 'n', -10.0, 10.0, {.vnd = _Z_hypot_wrap}}, -{"_ZGVnN2vv_pow", 'd', 'n', -10.0, 10.0, {.vnd = xy_Z_pow}}, -{"x_ZGVnN2vv_pow", 'd', 'n', -10.0, 10.0, {.vnd = x_Z_pow}}, -{"y_ZGVnN2vv_pow", 'd', 'n', -10.0, 10.0, {.vnd = y_Z_pow}}, -{"_ZGVnN4vl4l4_sincosf", 'f', 'n', -3.1, 3.1, {.vnf = _Z_sincosf_wrap}}, -{"_ZGVnN2vl8l8_sincos", 'd', 'n', -3.1, 3.1, {.vnd = _Z_sincos_wrap}}, -{"_ZGVnN4v_cexpif", 'f', 'n', -3.1, 3.1, {.vnf = _Z_cexpif_wrap}}, -{"_ZGVnN2v_cexpi", 'd', 'n', -3.1, 3.1, {.vnd = _Z_cexpi_wrap}}, - -#if WANT_SVE_MATH -{"_ZGVsMxvv_atan2f", 'f', 's', -10.0, 10.0, {.svf = _Z_sv_atan2f_wrap}}, -{"_ZGVsMxvv_atan2", 'd', 's', -10.0, 10.0, {.svd = _Z_sv_atan2_wrap}}, -{"_ZGVsMxvv_hypotf", 'f', 's', -10.0, 10.0, {.svf = _Z_sv_hypotf_wrap}}, -{"_ZGVsMxvv_hypot", 'd', 's', -10.0, 10.0, {.svd = _Z_sv_hypot_wrap}}, -{"_ZGVsMxvv_powi", 'f', 's', -10.0, 10.0, {.svf = _Z_sv_powi_wrap}}, -{"_ZGVsMxvv_powk", 'd', 's', -10.0, 10.0, {.svd = _Z_sv_powk_wrap}}, -{"_ZGVsMxvv_powf", 'f', 's', -10.0, 10.0, {.svf = xy_Z_sv_powf}}, -{"x_ZGVsMxvv_powf", 'f', 's', -10.0, 10.0, {.svf = x_Z_sv_powf}}, -{"y_ZGVsMxvv_powf", 'f', 's', -10.0, 10.0, {.svf = y_Z_sv_powf}}, -{"_ZGVsMxvv_pow", 'd', 's', -10.0, 10.0, {.svd = xy_Z_sv_pow}}, -{"x_ZGVsMxvv_pow", 'd', 's', -10.0, 10.0, {.svd = x_Z_sv_pow}}, -{"y_ZGVsMxvv_pow", 'd', 's', -10.0, 10.0, {.svd = y_Z_sv_pow}}, -{"_ZGVsMxvl4l4_sincosf", 'f', 's', -3.1, 3.1, {.svf = _Z_sv_sincosf_wrap}}, -{"_ZGVsMxvl8l8_sincos", 'd', 's', -3.1, 3.1, {.svd = _Z_sv_sincos_wrap}}, -{"_ZGVsMxv_cexpif", 'f', 's', -3.1, 3.1, {.svf = _Z_sv_cexpif_wrap}}, -{"_ZGVsMxv_cexpi", 'd', 's', -3.1, 3.1, {.svd = _Z_sv_cexpi_wrap}}, -#endif - // clang-format on diff --git a/pl/math/test/mathbench_wrappers.h b/pl/math/test/mathbench_wrappers.h deleted file mode 100644 index fe7f8963cdee..000000000000 --- a/pl/math/test/mathbench_wrappers.h +++ /dev/null @@ -1,206 +0,0 @@ -/* - * Function wrappers for mathbench. - * - * Copyright (c) 2022-2023, Arm Limited. - * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - */ - -static double -atan2_wrap (double x) -{ - return atan2 (5.0, x); -} - -static float -atan2f_wrap (float x) -{ - return atan2f (5.0f, x); -} - -static double -powi_wrap (double x) -{ - return __builtin_powi (x, (int) round (x)); -} - -#if __aarch64__ && defined(__vpcs) - -__vpcs static v_double -_Z_atan2_wrap (v_double x) -{ - return _ZGVnN2vv_atan2 (v_double_dup (5.0), x); -} - -__vpcs static v_float -_Z_atan2f_wrap (v_float x) -{ - return _ZGVnN4vv_atan2f (v_float_dup (5.0f), x); -} - -__vpcs static v_float -_Z_hypotf_wrap (v_float x) -{ - return _ZGVnN4vv_hypotf (v_float_dup (5.0f), x); -} - -__vpcs static v_double -_Z_hypot_wrap (v_double x) -{ - return _ZGVnN2vv_hypot (v_double_dup (5.0), x); -} - -__vpcs static v_double -xy_Z_pow (v_double x) -{ - return _ZGVnN2vv_pow (x, x); -} - -__vpcs static v_double -x_Z_pow (v_double x) -{ - return _ZGVnN2vv_pow (x, v_double_dup (23.4)); -} - -__vpcs static v_double -y_Z_pow (v_double x) -{ - return _ZGVnN2vv_pow (v_double_dup (2.34), x); -} - -__vpcs static v_float -_Z_sincosf_wrap (v_float x) -{ - v_float s, c; - _ZGVnN4vl4l4_sincosf (x, &s, &c); - return s + c; -} - -__vpcs static v_float -_Z_cexpif_wrap (v_float x) -{ - __f32x4x2_t sc = _ZGVnN4v_cexpif (x); - return sc.val[0] + sc.val[1]; -} - -__vpcs static v_double -_Z_sincos_wrap (v_double x) -{ - v_double s, c; - _ZGVnN2vl8l8_sincos (x, &s, &c); - return s + c; -} - -__vpcs static v_double -_Z_cexpi_wrap (v_double x) -{ - __f64x2x2_t sc = _ZGVnN2v_cexpi (x); - return sc.val[0] + sc.val[1]; -} - -#endif // __arch64__ && __vpcs - -#if WANT_SVE_MATH - -static sv_float -_Z_sv_atan2f_wrap (sv_float x, sv_bool pg) -{ - return _ZGVsMxvv_atan2f (x, svdup_f32 (5.0f), pg); -} - -static sv_double -_Z_sv_atan2_wrap (sv_double x, sv_bool pg) -{ - return _ZGVsMxvv_atan2 (x, svdup_f64 (5.0), pg); -} - -static sv_float -_Z_sv_hypotf_wrap (sv_float x, sv_bool pg) -{ - return _ZGVsMxvv_hypotf (x, svdup_f32 (5.0), pg); -} - -static sv_double -_Z_sv_hypot_wrap (sv_double x, sv_bool pg) -{ - return _ZGVsMxvv_hypot (x, svdup_f64 (5.0), pg); -} - -static sv_float -_Z_sv_powi_wrap (sv_float x, sv_bool pg) -{ - return _ZGVsMxvv_powi (x, svcvt_s32_f32_x (pg, x), pg); -} - -static sv_double -_Z_sv_powk_wrap (sv_double x, sv_bool pg) -{ - return _ZGVsMxvv_powk (x, svcvt_s64_f64_x (pg, x), pg); -} - -static sv_float -xy_Z_sv_powf (sv_float x, sv_bool pg) -{ - return _ZGVsMxvv_powf (x, x, pg); -} - -static sv_float -x_Z_sv_powf (sv_float x, sv_bool pg) -{ - return _ZGVsMxvv_powf (x, svdup_f32 (23.4f), pg); -} - -static sv_float -y_Z_sv_powf (sv_float x, sv_bool pg) -{ - return _ZGVsMxvv_powf (svdup_f32 (2.34f), x, pg); -} - -static sv_double -xy_Z_sv_pow (sv_double x, sv_bool pg) -{ - return _ZGVsMxvv_pow (x, x, pg); -} - -static sv_double -x_Z_sv_pow (sv_double x, sv_bool pg) -{ - return _ZGVsMxvv_pow (x, svdup_f64 (23.4), pg); -} - -static sv_double -y_Z_sv_pow (sv_double x, sv_bool pg) -{ - return _ZGVsMxvv_pow (svdup_f64 (2.34), x, pg); -} - -static sv_float -_Z_sv_sincosf_wrap (sv_float x, sv_bool pg) -{ - float s[svcntw ()], c[svcntw ()]; - _ZGVsMxvl4l4_sincosf (x, s, c, pg); - return svadd_x (pg, svld1 (pg, s), svld1 (pg, s)); -} - -static sv_float -_Z_sv_cexpif_wrap (sv_float x, sv_bool pg) -{ - svfloat32x2_t sc = _ZGVsMxv_cexpif (x, pg); - return svadd_x (pg, svget2 (sc, 0), svget2 (sc, 1)); -} - -static sv_double -_Z_sv_sincos_wrap (sv_double x, sv_bool pg) -{ - double s[svcntd ()], c[svcntd ()]; - _ZGVsMxvl8l8_sincos (x, s, c, pg); - return svadd_x (pg, svld1 (pg, s), svld1 (pg, s)); -} - -static sv_double -_Z_sv_cexpi_wrap (sv_double x, sv_bool pg) -{ - svfloat64x2_t sc = _ZGVsMxv_cexpi (x, pg); - return svadd_x (pg, svget2 (sc, 0), svget2 (sc, 1)); -} - -#endif // WANT_SVE_MATH diff --git a/pl/math/test/pl_test.h b/pl/math/test/pl_test.h deleted file mode 100644 index e7ed4eed634e..000000000000 --- a/pl/math/test/pl_test.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * PL macros for emitting various details about routines for consumption by - * runulp.sh. - * - * Copyright (c) 2022-2023, Arm Limited. - * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception. - */ - -/* Emit the max ULP threshold, l, for routine f. Piggy-back PL_TEST_EXPECT_FENV - on PL_TEST_ULP to add EXPECT_FENV to all scalar routines. */ -#if WANT_VMATH || defined(IGNORE_SCALAR_FENV) -# define PL_TEST_ULP(f, l) PL_TEST_ULP f l -#else -# define PL_TEST_ULP(f, l) \ - PL_TEST_EXPECT_FENV_ALWAYS (f) \ - PL_TEST_ULP f l -#endif - -/* Emit routine name if e == 1 and f is expected to correctly trigger fenv - exceptions. e allows declaration to be emitted conditionally upon certain - build flags - defer expansion by one pass to allow those flags to be expanded - properly. */ -#define PL_TEST_EXPECT_FENV(f, e) PL_TEST_EXPECT_FENV_ (f, e) -#define PL_TEST_EXPECT_FENV_(f, e) PL_TEST_EXPECT_FENV_##e (f) -#define PL_TEST_EXPECT_FENV_1(f) PL_TEST_EXPECT_FENV_ENABLED f -#define PL_TEST_EXPECT_FENV_ALWAYS(f) PL_TEST_EXPECT_FENV (f, 1) - -#define PL_TEST_INTERVAL(f, lo, hi, n) PL_TEST_INTERVAL f lo hi n -#define PL_TEST_SYM_INTERVAL(f, lo, hi, n) \ - PL_TEST_INTERVAL (f, lo, hi, n) \ - PL_TEST_INTERVAL (f, -lo, -hi, n) -#define PL_TEST_INTERVAL_C(f, lo, hi, n, c) PL_TEST_INTERVAL f lo hi n c -#define PL_TEST_SYM_INTERVAL_C(f, lo, hi, n, c) \ - PL_TEST_INTERVAL_C (f, lo, hi, n, c) \ - PL_TEST_INTERVAL_C (f, -lo, -hi, n, c) -// clang-format off -#define PL_TEST_INTERVAL2(f, xlo, xhi, ylo, yhi, n) \ - PL_TEST_INTERVAL f xlo,ylo xhi,yhi n -// clang-format on diff --git a/pl/math/test/runulp.sh b/pl/math/test/runulp.sh deleted file mode 100755 index 0f5a41f76b25..000000000000 --- a/pl/math/test/runulp.sh +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/bash - -# ULP error check script. -# -# Copyright (c) 2019-2023, Arm Limited. -# SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -#set -x -set -eu - -# cd to bin directory. -cd "${0%/*}" - -flags="${ULPFLAGS:--q}" -emu="$@" - -# Enable SVE testing -WANT_SVE_MATH=${WANT_SVE_MATH:-0} - -FAIL=0 -PASS=0 - -t() { - routine=$1 - L=$(cat $LIMITS | grep "^$routine " | awk '{print $2}') - [[ $L =~ ^[0-9]+\.[0-9]+$ ]] - extra_flags= - [[ -z "${5:-}" ]] || extra_flags="$extra_flags -c $5" - grep -q "^$routine$" $FENV || extra_flags="$extra_flags -f" - IFS=',' read -ra LO <<< "$2" - IFS=',' read -ra HI <<< "$3" - ITV="${LO[0]} ${HI[0]}" - for i in "${!LO[@]}"; do - [[ "$i" -eq "0" ]] || ITV="$ITV x ${LO[$i]} ${HI[$i]}" - done - # Add -z flag to ignore zero sign for vector routines - { echo $routine | grep -q "ZGV"; } && extra_flags="$extra_flags -z" - $emu ./ulp -e $L $flags ${extra_flags} $routine $ITV $4 && PASS=$((PASS+1)) || FAIL=$((FAIL+1)) -} - -check() { - $emu ./ulp -f -q "$@" #>/dev/null -} - -if [ "$FUNC" == "atan2" ] || [ -z "$FUNC" ]; then - # Regression-test for correct NaN handling in atan2 - check atan2 0x1p-1022 0x1p-1000 x 0 0x1p-1022 40000 - check atan2 0x1.7887a0a717aefp+1017 0x1.7887a0a717aefp+1017 x -nan -nan - check atan2 nan nan x -nan -nan -fi - -# vector functions -flags="${ULPFLAGS:--q}" -runsv= -if [ $WANT_SVE_MATH -eq 1 ]; then -# No guarantees about powi accuracy, so regression-test for exactness -# w.r.t. the custom reference impl in ulp_wrappers.h -check -q -f -e 0 _ZGVsMxvv_powi 0 inf x 0 1000 100000 && runsv=1 -check -q -f -e 0 _ZGVsMxvv_powi -0 -inf x 0 1000 100000 && runsv=1 -check -q -f -e 0 _ZGVsMxvv_powi 0 inf x -0 -1000 100000 && runsv=1 -check -q -f -e 0 _ZGVsMxvv_powi -0 -inf x -0 -1000 100000 && runsv=1 -check -q -f -e 0 _ZGVsMxvv_powk 0 inf x 0 1000 100000 && runsv=1 -check -q -f -e 0 _ZGVsMxvv_powk -0 -inf x 0 1000 100000 && runsv=1 -check -q -f -e 0 _ZGVsMxvv_powk 0 inf x -0 -1000 100000 && runsv=1 -check -q -f -e 0 _ZGVsMxvv_powk -0 -inf x -0 -1000 100000 && runsv=1 -fi - -while read F LO HI N C -do - t $F $LO $HI $N $C -done << EOF -$(cat $INTERVALS | grep "\b$FUNC\b") -EOF - -[ 0 -eq $FAIL ] || { - echo "FAILED $FAIL PASSED $PASS" - exit 1 -} diff --git a/pl/math/test/testcases/directed/acos.tst b/pl/math/test/testcases/directed/acos.tst deleted file mode 100644 index a73dcd25965b..000000000000 --- a/pl/math/test/testcases/directed/acos.tst +++ /dev/null @@ -1,17 +0,0 @@ -; acos.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=acos op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=acos op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=acos op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=acos op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=acos op1=7ff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=acos op1=fff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=acos op1=00000000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=acos op1=80000000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=acos op1=3ff00000.00000000 result=00000000.00000000 errno=0 -func=acos op1=bff00000.00000000 result=400921fb.54442d18.469 errno=0 -func=acos op1=3ff00000.00000001 result=7ff80000.00000001 errno=EDOM status=i -func=acos op1=bff00000.00000001 result=7ff80000.00000001 errno=EDOM status=i diff --git a/pl/math/test/testcases/directed/acosf.tst b/pl/math/test/testcases/directed/acosf.tst deleted file mode 100644 index 9e453e3bff5e..000000000000 --- a/pl/math/test/testcases/directed/acosf.tst +++ /dev/null @@ -1,21 +0,0 @@ -; acosf.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=acosf op1=7fc00001 result=7fc00001 errno=0 -func=acosf op1=ffc00001 result=7fc00001 errno=0 -func=acosf op1=7f800001 result=7fc00001 errno=0 status=i -func=acosf op1=ff800001 result=7fc00001 errno=0 status=i -func=acosf op1=7f800000 result=7fc00001 errno=EDOM status=i -func=acosf op1=ff800000 result=7fc00001 errno=EDOM status=i -func=acosf op1=00000000 result=3fc90fda.a22 errno=0 -func=acosf op1=80000000 result=3fc90fda.a22 errno=0 -func=acosf op1=3f800000 result=00000000 errno=0 -func=acosf op1=bf800000 result=40490fda.a22 errno=0 -func=acosf op1=3f800001 result=7fc00001 errno=EDOM status=i -func=acosf op1=bf800001 result=7fc00001 errno=EDOM status=i -func=acosf op1=33000000 result=3fc90fda.622 error=0 -func=acosf op1=30000000 result=3fc90fda.a12 error=0 -func=acosf op1=2d000000 result=3fc90fda.a21 error=0 -func=acosf op1=2a000000 result=3fc90fda.a22 error=0 diff --git a/pl/math/test/testcases/directed/acosh.tst b/pl/math/test/testcases/directed/acosh.tst deleted file mode 100644 index dd962bd391da..000000000000 --- a/pl/math/test/testcases/directed/acosh.tst +++ /dev/null @@ -1,19 +0,0 @@ -; acosh.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=acosh op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=acosh op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=acosh op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=acosh op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=acosh op1=7ff00000.00000000 result=7ff00000.00000000 errno=0 -func=acosh op1=3ff00000.00000000 result=00000000.00000000 errno=0 -func=acosh op1=3fefffff.ffffffff result=7ff80000.00000001 errno=EDOM status=i -func=acosh op1=00000000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=acosh op1=80000000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=acosh op1=bfefffff.ffffffff result=7ff80000.00000001 errno=EDOM status=i -func=acosh op1=bff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=acosh op1=bff00000.00000001 result=7ff80000.00000001 errno=EDOM status=i -func=acosh op1=fff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=acosh op1=7fe01ac0.7f03a83e result=40862e50.541778f1.8cc error=0 diff --git a/pl/math/test/testcases/directed/acoshf.tst b/pl/math/test/testcases/directed/acoshf.tst deleted file mode 100644 index 606c615f9b74..000000000000 --- a/pl/math/test/testcases/directed/acoshf.tst +++ /dev/null @@ -1,19 +0,0 @@ -; acoshf.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=acoshf op1=7fc00001 result=7fc00001 errno=0 -func=acoshf op1=ffc00001 result=7fc00001 errno=0 -func=acoshf op1=7f800001 result=7fc00001 errno=0 status=i -func=acoshf op1=ff800001 result=7fc00001 errno=0 status=i -func=acoshf op1=7f800000 result=7f800000 errno=0 -func=acoshf op1=3f800000 result=00000000 errno=0 -func=acoshf op1=3f7fffff result=7fc00001 errno=EDOM status=i -func=acoshf op1=00000000 result=7fc00001 errno=EDOM status=i -func=acoshf op1=80000000 result=7fc00001 errno=EDOM status=i -func=acoshf op1=bf7fffff result=7fc00001 errno=EDOM status=i -func=acoshf op1=bf800000 result=7fc00001 errno=EDOM status=i -func=acoshf op1=bf800001 result=7fc00001 errno=EDOM status=i -func=acoshf op1=ff800000 result=7fc00001 errno=EDOM status=i -func=acoshf op1=7f767efe result=42b2c19d.83e error=0 diff --git a/pl/math/test/testcases/directed/asin.tst b/pl/math/test/testcases/directed/asin.tst deleted file mode 100644 index 6180d7849d90..000000000000 --- a/pl/math/test/testcases/directed/asin.tst +++ /dev/null @@ -1,24 +0,0 @@ -; asin.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=asin op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=asin op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=asin op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=asin op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=asin op1=7ff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=asin op1=fff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=asin op1=00000000.00000000 result=00000000.00000000 errno=0 -func=asin op1=80000000.00000000 result=80000000.00000000 errno=0 -; Inconsistent behavior was detected for the following 2 cases. -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=asin op1=00000000.00000001 result=00000000.00000001 errno=0 maybestatus=ux -func=asin op1=80000000.00000001 result=80000000.00000001 errno=0 maybestatus=ux - -func=asin op1=3ff00000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=asin op1=bff00000.00000000 result=bff921fb.54442d18.469 errno=0 -func=asin op1=3ff00000.00000001 result=7ff80000.00000001 errno=EDOM status=i -func=asin op1=bff00000.00000001 result=7ff80000.00000001 errno=EDOM status=i diff --git a/pl/math/test/testcases/directed/asinf.tst b/pl/math/test/testcases/directed/asinf.tst deleted file mode 100644 index a85b2593768d..000000000000 --- a/pl/math/test/testcases/directed/asinf.tst +++ /dev/null @@ -1,24 +0,0 @@ -; asinf.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=asinf op1=7fc00001 result=7fc00001 errno=0 -func=asinf op1=ffc00001 result=7fc00001 errno=0 -func=asinf op1=7f800001 result=7fc00001 errno=0 status=i -func=asinf op1=ff800001 result=7fc00001 errno=0 status=i -func=asinf op1=7f800000 result=7fc00001 errno=EDOM status=i -func=asinf op1=ff800000 result=7fc00001 errno=EDOM status=i -func=asinf op1=00000000 result=00000000 errno=0 -func=asinf op1=80000000 result=80000000 errno=0 -; Inconsistent behavior was detected for the following 2 cases. -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=asinf op1=00000001 result=00000001 errno=0 maybestatus=ux -func=asinf op1=80000001 result=80000001 errno=0 maybestatus=ux - -func=asinf op1=3f800000 result=3fc90fda.a22 errno=0 -func=asinf op1=bf800000 result=bfc90fda.a22 errno=0 -func=asinf op1=3f800001 result=7fc00001 errno=EDOM status=i -func=asinf op1=bf800001 result=7fc00001 errno=EDOM status=i diff --git a/pl/math/test/testcases/directed/asinh.tst b/pl/math/test/testcases/directed/asinh.tst deleted file mode 100644 index 1485dfeffecf..000000000000 --- a/pl/math/test/testcases/directed/asinh.tst +++ /dev/null @@ -1,18 +0,0 @@ -; asinh.tst -; -; Copyright (c) 2022-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=asinh op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=asinh op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=asinh op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=asinh op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=asinh op1=7ff00000.00000000 result=7ff00000.00000000 errno=0 -func=asinh op1=fff00000.00000000 result=fff00000.00000000 errno=0 -func=asinh op1=00000000.00000000 result=00000000.00000000 errno=0 -func=asinh op1=80000000.00000000 result=80000000.00000000 errno=0 -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=asinh op1=00000000.00000001 result=00000000.00000001 errno=0 maybestatus=ux -func=asinh op1=80000000.00000001 result=80000000.00000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/directed/asinhf.tst b/pl/math/test/testcases/directed/asinhf.tst deleted file mode 100644 index eb76a5892a70..000000000000 --- a/pl/math/test/testcases/directed/asinhf.tst +++ /dev/null @@ -1,18 +0,0 @@ -; asinhf.tst -; -; Copyright (c) 2007-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=asinhf op1=7fc00001 result=7fc00001 errno=0 -func=asinhf op1=ffc00001 result=7fc00001 errno=0 -func=asinhf op1=7f800001 result=7fc00001 errno=0 status=i -func=asinhf op1=ff800001 result=7fc00001 errno=0 status=i -func=asinhf op1=7f800000 result=7f800000 errno=0 -func=asinhf op1=ff800000 result=ff800000 errno=0 -func=asinhf op1=00000000 result=00000000 errno=0 -func=asinhf op1=80000000 result=80000000 errno=0 -; No exception is raised on certain machines (different version of glibc) -; Same issue encountered with other function similar to x close to 0 -; Could be due to function so boring no flop is involved in some implementations -func=asinhf op1=00000001 result=00000001 errno=0 maybestatus=ux -func=asinhf op1=80000001 result=80000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/directed/atan.tst b/pl/math/test/testcases/directed/atan.tst deleted file mode 100644 index 4c670553d58f..000000000000 --- a/pl/math/test/testcases/directed/atan.tst +++ /dev/null @@ -1,22 +0,0 @@ -; atan.tst -; -; Copyright (c) 1999-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=atan op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan op1=7ff00000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=atan op1=fff00000.00000000 result=bff921fb.54442d18.469 errno=0 -func=atan op1=00000000.00000000 result=00000000.00000000 errno=0 -func=atan op1=80000000.00000000 result=80000000.00000000 errno=0 -; Inconsistent behavior was detected for the following 2 cases. -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=atan op1=00000000.00000001 result=00000000.00000001 errno=0 maybestatus=ux -func=atan op1=80000000.00000001 result=80000000.00000001 errno=0 maybestatus=ux - -func=atan op1=3ff00000.00000000 result=3fe921fb.54442d18.469 errno=0 -func=atan op1=bff00000.00000000 result=bfe921fb.54442d18.469 errno=0 diff --git a/pl/math/test/testcases/directed/atan2.tst b/pl/math/test/testcases/directed/atan2.tst deleted file mode 100644 index 647b3764072c..000000000000 --- a/pl/math/test/testcases/directed/atan2.tst +++ /dev/null @@ -1,110 +0,0 @@ -; atan2.tst -; -; Copyright (c) 1999-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=atan2 op1=7ff00000.00000001 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff00000.00000001 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff00000.00000001 op2=7ff00000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff00000.00000001 op2=fff00000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff00000.00000001 op2=00000000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff00000.00000001 op2=80000000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff00000.00000001 op2=3ff00000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff00000.00000001 op2=bff00000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000001 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000001 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000001 op2=7ff00000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000001 op2=fff00000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000001 op2=00000000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000001 op2=80000000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000001 op2=3ff00000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000001 op2=bff00000.00000000 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff80000.00000001 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff80000.00000001 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff80000.00000001 op2=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff80000.00000001 op2=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff80000.00000001 op2=7ff00000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff80000.00000001 op2=fff00000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff80000.00000001 op2=00000000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff80000.00000001 op2=80000000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff80000.00000001 op2=3ff00000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff80000.00000001 op2=bff00000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff80000.00000001 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff80000.00000001 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff80000.00000001 op2=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff80000.00000001 op2=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff80000.00000001 op2=7ff00000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff80000.00000001 op2=fff00000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff80000.00000001 op2=00000000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff80000.00000001 op2=80000000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff80000.00000001 op2=3ff00000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff80000.00000001 op2=bff00000.00000000 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff00000.00000000 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff00000.00000000 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=7ff00000.00000000 op2=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff00000.00000000 op2=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=7ff00000.00000000 op2=7ff00000.00000000 result=3fe921fb.54442d18.469 errno=0 -func=atan2 op1=7ff00000.00000000 op2=fff00000.00000000 result=4002d97c.7f3321d2.34f errno=0 -func=atan2 op1=7ff00000.00000000 op2=00000000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=atan2 op1=7ff00000.00000000 op2=80000000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=atan2 op1=7ff00000.00000000 op2=3ff00000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=atan2 op1=7ff00000.00000000 op2=bff00000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=atan2 op1=fff00000.00000000 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000000 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=fff00000.00000000 op2=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff00000.00000000 op2=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=fff00000.00000000 op2=7ff00000.00000000 result=bfe921fb.54442d18.469 errno=0 -func=atan2 op1=fff00000.00000000 op2=fff00000.00000000 result=c002d97c.7f3321d2.34f errno=0 -func=atan2 op1=fff00000.00000000 op2=00000000.00000000 result=bff921fb.54442d18.469 errno=0 -func=atan2 op1=fff00000.00000000 op2=80000000.00000000 result=bff921fb.54442d18.469 errno=0 -func=atan2 op1=fff00000.00000000 op2=3ff00000.00000000 result=bff921fb.54442d18.469 errno=0 -func=atan2 op1=fff00000.00000000 op2=bff00000.00000000 result=bff921fb.54442d18.469 errno=0 -func=atan2 op1=00000000.00000000 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=00000000.00000000 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=00000000.00000000 op2=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=00000000.00000000 op2=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=00000000.00000000 op2=7ff00000.00000000 result=00000000.00000000 errno=0 -func=atan2 op1=00000000.00000000 op2=fff00000.00000000 result=400921fb.54442d18.469 errno=0 -func=atan2 op1=00000000.00000000 op2=00000000.00000000 result=00000000.00000000 errno=0 -func=atan2 op1=00000000.00000000 op2=80000000.00000000 result=400921fb.54442d18.469 errno=0 -func=atan2 op1=00000000.00000000 op2=3ff00000.00000000 result=00000000.00000000 errno=0 -func=atan2 op1=00000000.00000000 op2=bff00000.00000000 result=400921fb.54442d18.469 errno=0 -; No exception is raised on certain machines (different version of glibc) -; Same issue encountered with other function similar to x close to 0 -; Could be due to function so boring no flop is involved in some implementations -func=atan2 op1=00000000.00000001 op2=3ff00000.00000000 result=00000000.00000001 errno=0 maybestatus=ux -func=atan2 op1=80000000.00000000 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=80000000.00000000 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=80000000.00000000 op2=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=80000000.00000000 op2=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=80000000.00000000 op2=7ff00000.00000000 result=80000000.00000000 errno=0 -func=atan2 op1=80000000.00000000 op2=fff00000.00000000 result=c00921fb.54442d18.469 errno=0 -func=atan2 op1=80000000.00000000 op2=00000000.00000000 result=80000000.00000000 errno=0 -func=atan2 op1=80000000.00000000 op2=80000000.00000000 result=c00921fb.54442d18.469 errno=0 -func=atan2 op1=80000000.00000000 op2=3ff00000.00000000 result=80000000.00000000 errno=0 -func=atan2 op1=80000000.00000000 op2=bff00000.00000000 result=c00921fb.54442d18.469 errno=0 -; No exception is raised on certain machines (different version of glibc) -; Same issue encountered with other function similar to x close to 0 -; Could be due to function so boring no flop is involved in some implementations -func=atan2 op1=80000000.00000001 op2=3ff00000.00000000 result=80000000.00000001 errno=0 maybestatus=ux -func=atan2 op1=3ff00000.00000000 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=3ff00000.00000000 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=3ff00000.00000000 op2=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=3ff00000.00000000 op2=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=3ff00000.00000000 op2=7ff00000.00000000 result=00000000.00000000 errno=0 -func=atan2 op1=3ff00000.00000000 op2=fff00000.00000000 result=400921fb.54442d18.469 errno=0 -func=atan2 op1=3ff00000.00000000 op2=00000000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=atan2 op1=3ff00000.00000000 op2=80000000.00000000 result=3ff921fb.54442d18.469 errno=0 -func=atan2 op1=3ff00000.00000000 op2=3ff00000.00000000 result=3fe921fb.54442d18.469 errno=0 -func=atan2 op1=3ff00000.00000000 op2=bff00000.00000000 result=4002d97c.7f3321d2.34f errno=0 -func=atan2 op1=bff00000.00000000 op2=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=bff00000.00000000 op2=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atan2 op1=bff00000.00000000 op2=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=bff00000.00000000 op2=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atan2 op1=bff00000.00000000 op2=7ff00000.00000000 result=80000000.00000000 errno=0 -func=atan2 op1=bff00000.00000000 op2=fff00000.00000000 result=c00921fb.54442d18.469 errno=0 -func=atan2 op1=bff00000.00000000 op2=00000000.00000000 result=bff921fb.54442d18.469 errno=0 -func=atan2 op1=bff00000.00000000 op2=80000000.00000000 result=bff921fb.54442d18.469 errno=0 -func=atan2 op1=bff00000.00000000 op2=3ff00000.00000000 result=bfe921fb.54442d18.469 errno=0 -func=atan2 op1=bff00000.00000000 op2=bff00000.00000000 result=c002d97c.7f3321d2.34f errno=0 -func=atan2 op1=3ff00000.00000000 op2=3ff00000.00000000 result=3fe921fb.54442d18 errno=0 diff --git a/pl/math/test/testcases/directed/atan2f.tst b/pl/math/test/testcases/directed/atan2f.tst deleted file mode 100644 index 85c5c5d47e10..000000000000 --- a/pl/math/test/testcases/directed/atan2f.tst +++ /dev/null @@ -1,121 +0,0 @@ -; atan2f.tst -; -; Copyright (c) 1999-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=atan2f op1=7f800001 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800001 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800001 op2=7fc00001 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800001 op2=ffc00001 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800001 op2=7f800000 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800001 op2=ff800000 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800001 op2=00000000 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800001 op2=80000000 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800001 op2=3f800000 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800001 op2=bf800000 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=7fc00001 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=ffc00001 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=7f800000 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=ff800000 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=00000000 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=80000000 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=3f800000 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800001 op2=bf800000 result=7fc00001 errno=0 status=i -func=atan2f op1=7fc00001 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=7fc00001 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=7fc00001 op2=7fc00001 result=7fc00001 errno=0 -func=atan2f op1=7fc00001 op2=ffc00001 result=7fc00001 errno=0 -func=atan2f op1=7fc00001 op2=7f800000 result=7fc00001 errno=0 -func=atan2f op1=7fc00001 op2=ff800000 result=7fc00001 errno=0 -func=atan2f op1=7fc00001 op2=00000000 result=7fc00001 errno=0 -func=atan2f op1=7fc00001 op2=80000000 result=7fc00001 errno=0 -func=atan2f op1=7fc00001 op2=3f800000 result=7fc00001 errno=0 -func=atan2f op1=7fc00001 op2=bf800000 result=7fc00001 errno=0 -func=atan2f op1=ffc00001 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=ffc00001 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=ffc00001 op2=7fc00001 result=ffc00001 errno=0 -func=atan2f op1=ffc00001 op2=ffc00001 result=ffc00001 errno=0 -func=atan2f op1=ffc00001 op2=7f800000 result=ffc00001 errno=0 -func=atan2f op1=ffc00001 op2=ff800000 result=ffc00001 errno=0 -func=atan2f op1=ffc00001 op2=00000000 result=ffc00001 errno=0 -func=atan2f op1=ffc00001 op2=80000000 result=ffc00001 errno=0 -func=atan2f op1=ffc00001 op2=3f800000 result=ffc00001 errno=0 -func=atan2f op1=ffc00001 op2=bf800000 result=ffc00001 errno=0 -func=atan2f op1=7f800000 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800000 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=7f800000 op2=7fc00001 result=7fc00001 errno=0 -func=atan2f op1=7f800000 op2=ffc00001 result=7fc00001 errno=0 -func=atan2f op1=7f800000 op2=7f800000 result=3f490fda.a22 errno=0 -func=atan2f op1=7f800000 op2=ff800000 result=4016cbe3.f99 errno=0 -func=atan2f op1=7f800000 op2=00000000 result=3fc90fda.a22 errno=0 -func=atan2f op1=7f800000 op2=80000000 result=3fc90fda.a22 errno=0 -func=atan2f op1=7f800000 op2=3f800000 result=3fc90fda.a22 errno=0 -func=atan2f op1=7f800000 op2=bf800000 result=3fc90fda.a22 errno=0 -func=atan2f op1=ff800000 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800000 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=ff800000 op2=7fc00001 result=7fc00001 errno=0 -func=atan2f op1=ff800000 op2=ffc00001 result=ffc00001 errno=0 -func=atan2f op1=ff800000 op2=7f800000 result=bf490fda.a22 errno=0 -func=atan2f op1=ff800000 op2=ff800000 result=c016cbe3.f99 errno=0 -func=atan2f op1=ff800000 op2=00000000 result=bfc90fda.a22 errno=0 -func=atan2f op1=ff800000 op2=80000000 result=bfc90fda.a22 errno=0 -func=atan2f op1=ff800000 op2=3f800000 result=bfc90fda.a22 errno=0 -func=atan2f op1=ff800000 op2=bf800000 result=bfc90fda.a22 errno=0 -func=atan2f op1=00000000 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=00000000 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=00000000 op2=7fc00001 result=7fc00001 errno=0 -func=atan2f op1=00000000 op2=ffc00001 result=ffc00001 errno=0 -func=atan2f op1=00000000 op2=7f800000 result=00000000 errno=0 -func=atan2f op1=00000000 op2=ff800000 result=40490fda.a22 errno=0 -func=atan2f op1=00000000 op2=00000000 result=00000000 errno=0 -func=atan2f op1=00000000 op2=80000000 result=40490fda.a22 errno=0 -func=atan2f op1=00000000 op2=3f800000 result=00000000 errno=0 -func=atan2f op1=00000000 op2=bf800000 result=40490fda.a22 errno=0 -; No exception is raised on certain machines (different version of glibc) -; Same issue encountered with other function similar to x close to 0 -; Could be due to function so boring no flop is involved in some implementations -func=atan2f op1=00000001 op2=3f800000 result=00000001 errno=0 maybestatus=ux - -func=atan2f op1=80000000 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=80000000 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=80000000 op2=7fc00001 result=7fc00001 errno=0 -func=atan2f op1=80000000 op2=ffc00001 result=ffc00001 errno=0 -func=atan2f op1=80000000 op2=7f800000 result=80000000 errno=0 -func=atan2f op1=80000000 op2=ff800000 result=c0490fda.a22 errno=0 -func=atan2f op1=80000000 op2=00000000 result=80000000 errno=0 -func=atan2f op1=80000000 op2=80000000 result=c0490fda.a22 errno=0 -func=atan2f op1=80000000 op2=3f800000 result=80000000 errno=0 -func=atan2f op1=80000000 op2=bf800000 result=c0490fda.a22 errno=0 -; No exception is raised on certain machines (different version of glibc) -; Same issue encountered with other function similar to x close to 0 -; Could be due to function so boring no flop is involved in some implementations -func=atan2f op1=80000001 op2=3f800000 result=80000001 errno=0 maybestatus=ux - -func=atan2f op1=3f800000 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=3f800000 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=3f800000 op2=7fc00001 result=7fc00001 errno=0 -func=atan2f op1=3f800000 op2=ffc00001 result=ffc00001 errno=0 -func=atan2f op1=3f800000 op2=7f800000 result=00000000 errno=0 -func=atan2f op1=3f800000 op2=ff800000 result=40490fda.a22 errno=0 -func=atan2f op1=3f800000 op2=00000000 result=3fc90fda.a22 errno=0 -func=atan2f op1=3f800000 op2=80000000 result=3fc90fda.a22 errno=0 -func=atan2f op1=3f800000 op2=3f800000 result=3f490fda.a22 errno=0 -func=atan2f op1=3f800000 op2=bf800000 result=4016cbe3.f99 errno=0 -func=atan2f op1=bf800000 op2=7f800001 result=7fc00001 errno=0 status=i -func=atan2f op1=bf800000 op2=ff800001 result=7fc00001 errno=0 status=i -func=atan2f op1=bf800000 op2=7fc00001 result=7fc00001 errno=0 -func=atan2f op1=bf800000 op2=ffc00001 result=ffc00001 errno=0 -func=atan2f op1=bf800000 op2=7f800000 result=80000000 errno=0 -func=atan2f op1=bf800000 op2=ff800000 result=c0490fda.a22 errno=0 -func=atan2f op1=bf800000 op2=00000000 result=bfc90fda.a22 errno=0 -func=atan2f op1=bf800000 op2=80000000 result=bfc90fda.a22 errno=0 -func=atan2f op1=bf800000 op2=3f800000 result=bf490fda.a22 errno=0 -func=atan2f op1=bf800000 op2=bf800000 result=c016cbe3.f99 errno=0 -func=atan2f op1=8005f16d op2=002bb601 result=be0a60a5.d88 error=0 -func=atan2f op1=80818ec8 op2=80ba5db9 result=c0222eda.f42 error=0 - -func=atan2f op1=ff7fffff op2=ff7fffff result=c016cbe3.f99 errno=0 -func=atan2f op1=bfc00001 op2=7f7fffff result=80300000.700 errno=0 status=u -func=atan2f op1=80800001 op2=40000000 result=80400000.800 errno=0 status=u diff --git a/pl/math/test/testcases/directed/atanf.tst b/pl/math/test/testcases/directed/atanf.tst deleted file mode 100644 index 0a0bfc24c605..000000000000 --- a/pl/math/test/testcases/directed/atanf.tst +++ /dev/null @@ -1,22 +0,0 @@ -; atanf.tst -; -; Copyright (c) 2007-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=atanf op1=7fc00001 result=7fc00001 errno=0 -func=atanf op1=ffc00001 result=7fc00001 errno=0 -func=atanf op1=7f800001 result=7fc00001 errno=0 status=i -func=atanf op1=ff800001 result=7fc00001 errno=0 status=i -func=atanf op1=7f800000 result=3fc90fda.a22 errno=0 -func=atanf op1=ff800000 result=bfc90fda.a22 errno=0 -func=atanf op1=00000000 result=00000000 errno=0 -func=atanf op1=80000000 result=80000000 errno=0 -; Inconsistent behavior was detected for the following 2 cases. -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=atanf op1=00000001 result=00000001 errno=0 maybestatus=ux -func=atanf op1=80000001 result=80000001 errno=0 maybestatus=ux - -func=atanf op1=3f800000 result=3f490fda.a22 errno=0 -func=atanf op1=bf800000 result=bf490fda.a22 errno=0 diff --git a/pl/math/test/testcases/directed/atanh.tst b/pl/math/test/testcases/directed/atanh.tst deleted file mode 100644 index d96ff327fcd9..000000000000 --- a/pl/math/test/testcases/directed/atanh.tst +++ /dev/null @@ -1,22 +0,0 @@ -; atanh.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=atanh op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=atanh op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=atanh op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atanh op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=atanh op1=7ff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=atanh op1=fff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=atanh op1=3ff00000.00000001 result=7ff80000.00000001 errno=EDOM status=i -func=atanh op1=bff00000.00000001 result=7ff80000.00000001 errno=EDOM status=i -func=atanh op1=3ff00000.00000000 result=7ff00000.00000000 errno=ERANGE status=z -func=atanh op1=bff00000.00000000 result=fff00000.00000000 errno=ERANGE status=z -func=atanh op1=00000000.00000000 result=00000000.00000000 errno=0 -func=atanh op1=80000000.00000000 result=80000000.00000000 errno=0 -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=atanh op1=00000000.00000001 result=00000000.00000001 errno=0 maybestatus=ux -func=atanh op1=80000000.00000001 result=80000000.00000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/directed/atanhf.tst b/pl/math/test/testcases/directed/atanhf.tst deleted file mode 100644 index 21a68a661a11..000000000000 --- a/pl/math/test/testcases/directed/atanhf.tst +++ /dev/null @@ -1,23 +0,0 @@ -; atanhf.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=atanhf op1=7fc00001 result=7fc00001 errno=0 -func=atanhf op1=ffc00001 result=7fc00001 errno=0 -func=atanhf op1=7f800001 result=7fc00001 errno=0 status=i -func=atanhf op1=ff800001 result=7fc00001 errno=0 status=i -func=atanhf op1=7f800000 result=7fc00001 errno=EDOM status=i -func=atanhf op1=ff800000 result=7fc00001 errno=EDOM status=i -func=atanhf op1=3f800001 result=7fc00001 errno=EDOM status=i -func=atanhf op1=bf800001 result=7fc00001 errno=EDOM status=i -func=atanhf op1=3f800000 result=7f800000 errno=ERANGE status=z -func=atanhf op1=bf800000 result=ff800000 errno=ERANGE status=z -func=atanhf op1=00000000 result=00000000 errno=0 -func=atanhf op1=80000000 result=80000000 errno=0 - -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=atanhf op1=00000001 result=00000001 errno=0 maybestatus=ux -func=atanhf op1=80000001 result=80000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/directed/cbrtf.tst b/pl/math/test/testcases/directed/cbrtf.tst deleted file mode 100644 index 0dd8d09f1d4f..000000000000 --- a/pl/math/test/testcases/directed/cbrtf.tst +++ /dev/null @@ -1,29 +0,0 @@ -; cbrtf.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=cbrtf op1=7f800000 result=7f800000 errno=0 -func=cbrtf op1=ff800000 result=ff800000 errno=0 -func=cbrtf op1=7f800001 result=7fc00001 errno=0 status=i -func=cbrtf op1=7fc00001 result=7fc00001 errno=0 -func=cbrtf op1=00000000 result=00000000 errno=0 -func=cbrtf op1=00000001 result=26a14517.cc7 errno=0 -func=cbrtf op1=00000002 result=26cb2ff5.29f errno=0 -func=cbrtf op1=00000003 result=26e89768.579 errno=0 -func=cbrtf op1=00000004 result=27000000.000 errno=0 -func=cbrtf op1=00400000 result=2a4b2ff5.29f errno=0 -func=cbrtf op1=00800000 result=2a800000.000 errno=0 -func=cbrtf op1=3f800000 result=3f800000.000 errno=0 -func=cbrtf op1=40000000 result=3fa14517.cc7 errno=0 -func=cbrtf op1=7f7fffff result=54cb2ff4.e63 errno=0 -func=cbrtf op1=80000000 result=80000000 errno=0 -func=cbrtf op1=80000001 result=a6a14517.cc7 errno=0 -func=cbrtf op1=80000002 result=a6cb2ff5.29f errno=0 -func=cbrtf op1=80000003 result=a6e89768.579 errno=0 -func=cbrtf op1=80000004 result=a7000000.000 errno=0 -func=cbrtf op1=80400000 result=aa4b2ff5.29f errno=0 -func=cbrtf op1=80800000 result=aa800000.000 errno=0 -func=cbrtf op1=bf800000 result=bf800000.000 errno=0 -func=cbrtf op1=c0000000 result=bfa14517.cc7 errno=0 -func=cbrtf op1=ff7fffff result=d4cb2ff4.e63 errno=0 diff --git a/pl/math/test/testcases/directed/cosh.tst b/pl/math/test/testcases/directed/cosh.tst deleted file mode 100644 index c4efacb7272d..000000000000 --- a/pl/math/test/testcases/directed/cosh.tst +++ /dev/null @@ -1,15 +0,0 @@ -; cosh.tst -; -; Copyright (c) 1999-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=cosh op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=cosh op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=cosh op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=cosh op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=cosh op1=7ff00000.00000000 result=7ff00000.00000000 errno=0 -func=cosh op1=7fefffff.ffffffff result=7ff00000.00000000 errno=ERANGE status=ox -func=cosh op1=fff00000.00000000 result=7ff00000.00000000 errno=0 -func=cosh op1=ffefffff.ffffffff result=7ff00000.00000000 errno=ERANGE status=ox -func=cosh op1=00000000.00000000 result=3ff00000.00000000 errno=0 -func=cosh op1=80000000.00000000 result=3ff00000.00000000 errno=0 diff --git a/pl/math/test/testcases/directed/coshf.tst b/pl/math/test/testcases/directed/coshf.tst deleted file mode 100644 index 2b967e78f4b4..000000000000 --- a/pl/math/test/testcases/directed/coshf.tst +++ /dev/null @@ -1,15 +0,0 @@ -; coshf.tst -; -; Copyright (c) 2007-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=coshf op1=7fc00001 result=7fc00001 errno=0 -func=coshf op1=ffc00001 result=7fc00001 errno=0 -func=coshf op1=7f800001 result=7fc00001 errno=0 status=i -func=coshf op1=ff800001 result=7fc00001 errno=0 status=i -func=coshf op1=7f800000 result=7f800000 errno=0 -func=coshf op1=7f7fffff result=7f800000 errno=ERANGE status=ox -func=coshf op1=ff800000 result=7f800000 errno=0 -func=coshf op1=ff7fffff result=7f800000 errno=ERANGE status=ox -func=coshf op1=00000000 result=3f800000 errno=0 -func=coshf op1=80000000 result=3f800000 errno=0 diff --git a/pl/math/test/testcases/directed/erfc.tst b/pl/math/test/testcases/directed/erfc.tst deleted file mode 100644 index c03fc591da47..000000000000 --- a/pl/math/test/testcases/directed/erfc.tst +++ /dev/null @@ -1,23 +0,0 @@ -; erfc.tst - Directed test cases for erfc -; -; Copyright (c) 2022-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=erfc op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=erfc op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=erfc op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=erfc op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=erfc op1=7ff00000.00000000 result=00000000.00000000 errno=0 -func=erfc op1=7fefffff.ffffffff result=00000000.00000000 errno=ERANGE status=ux -; We deliberately turned off errno setting in erf, as standard simply -; state that errno `may` be set to ERANGE in case of underflow. -; As a result the following condition on errno cannot be satisfied. -; -; func=erfc op1=403b44af.48b01531 result=00000000.00000000 errno=ERANGE status=ux -; -func=erfc op1=c03b44af.48b01531 result=40000000.00000000 errno=0 -func=erfc op1=403bffff.ffffffff result=00000000.00000000 errno=ERANGE status=ux -func=erfc op1=c03bffff.ffffffff result=40000000.00000000 errno=0 -func=erfc op1=fff00000.00000000 result=40000000.00000000 errno=0 -func=erfc op1=00000000.00000000 result=3ff00000.00000000 errno=0 -func=erfc op1=80000000.00000000 result=3ff00000.00000000 errno=0 diff --git a/pl/math/test/testcases/directed/erfcf.tst b/pl/math/test/testcases/directed/erfcf.tst deleted file mode 100644 index 719baccb2e45..000000000000 --- a/pl/math/test/testcases/directed/erfcf.tst +++ /dev/null @@ -1,14 +0,0 @@ -; erfcf.tst - Directed test cases for erfcf -; -; Copyright (c) 2007-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=erfcf op1=7fc00001 result=7fc00001 errno=0 -func=erfcf op1=ffc00001 result=7fc00001 errno=0 -func=erfcf op1=7f800001 result=7fc00001 errno=0 status=i -func=erfcf op1=ff800001 result=7fc00001 errno=0 status=i -func=erfcf op1=7f800000 result=00000000 errno=0 -func=erfcf op1=7f7fffff result=00000000 errno=ERANGE status=ux -func=erfcf op1=ff800000 result=40000000 errno=0 -func=erfcf op1=00000000 result=3f800000 errno=0 -func=erfcf op1=80000000 result=3f800000 errno=0 diff --git a/pl/math/test/testcases/directed/erff.tst b/pl/math/test/testcases/directed/erff.tst deleted file mode 100644 index 9b1d3d5114ae..000000000000 --- a/pl/math/test/testcases/directed/erff.tst +++ /dev/null @@ -1,17 +0,0 @@ -; erff.tst -; -; Copyright (c) 2007-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=erff op1=7fc00001 result=7fc00001 errno=0 -func=erff op1=ffc00001 result=7fc00001 errno=0 -func=erff op1=7f800001 result=7fc00001 errno=0 status=i -func=erff op1=ff800001 result=7fc00001 errno=0 status=i -func=erff op1=7f800000 result=3f800000 errno=0 -func=erff op1=ff800000 result=bf800000 errno=0 -func=erff op1=00000000 result=00000000 errno=ERANGE -func=erff op1=80000000 result=80000000 errno=ERANGE -func=erff op1=00000001 result=00000001 errno=0 status=ux -func=erff op1=80000001 result=80000001 errno=0 status=ux -func=erff op1=3f800000 result=3f57bb3d.3a0 errno=0 -func=erff op1=bf800000 result=bf57bb3d.3a0 errno=0 diff --git a/pl/math/test/testcases/directed/expm1.tst b/pl/math/test/testcases/directed/expm1.tst deleted file mode 100644 index 609d6f479721..000000000000 --- a/pl/math/test/testcases/directed/expm1.tst +++ /dev/null @@ -1,21 +0,0 @@ -; expm1.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=expm1 op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=expm1 op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=expm1 op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=expm1 op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=expm1 op1=7ff00000.00000000 result=7ff00000.00000000 errno=0 -func=expm1 op1=7fefffff.ffffffff result=7ff00000.00000000 errno=ERANGE status=ox -func=expm1 op1=fff00000.00000000 result=bff00000.00000000 errno=0 -func=expm1 op1=ffefffff.ffffffff result=bff00000.00000000 errno=0 -func=expm1 op1=00000000.00000000 result=00000000.00000000 errno=0 -func=expm1 op1=80000000.00000000 result=80000000.00000000 errno=0 -; Inconsistent behavior was detected for the following 2 cases. -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=expm1 op1=00000000.00000001 result=00000000.00000001 errno=0 maybestatus=ux -func=expm1 op1=80000000.00000001 result=80000000.00000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/directed/expm1f.tst b/pl/math/test/testcases/directed/expm1f.tst deleted file mode 100644 index 44c38420a617..000000000000 --- a/pl/math/test/testcases/directed/expm1f.tst +++ /dev/null @@ -1,57 +0,0 @@ -; expm1f.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=expm1f op1=7fc00001 result=7fc00001 errno=0 -func=expm1f op1=ffc00001 result=7fc00001 errno=0 -func=expm1f op1=7f800001 result=7fc00001 errno=0 status=i -func=expm1f op1=ff800001 result=7fc00001 errno=0 status=i -func=expm1f op1=7f800000 result=7f800000 errno=0 -func=expm1f op1=7f7fffff result=7f800000 errno=ERANGE status=ox -func=expm1f op1=ff800000 result=bf800000 errno=0 -func=expm1f op1=ff7fffff result=bf800000 errno=0 -func=expm1f op1=00000000 result=00000000 errno=0 -func=expm1f op1=80000000 result=80000000 errno=0 - -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. - -func=expm1f op1=00000001 result=00000001 errno=0 maybestatus=ux -func=expm1f op1=80000001 result=80000001 errno=0 maybestatus=ux - -func=expm1f op1=42b145c0 result=7f6ac2dd.9b8 errno=0 - -; Check both sides of the over/underflow thresholds in the code. -func=expm1f op1=c2000000 result=bf7fffff.fff error=0 -func=expm1f op1=c2000001 result=bf7fffff.fff error=0 -func=expm1f op1=43000000 result=7f800000 error=overflow -func=expm1f op1=43000001 result=7f800000 error=overflow -func=expm1f op1=c2a80000 result=bf800000.000 error=0 -func=expm1f op1=c2a80001 result=bf800000.000 error=0 - -; Check values for which exp goes denormal. expm1f should not report -; spurious overflow. -func=expm1f op1=c2b00f34 result=bf800000.000 error=0 -func=expm1f op1=c2ce8ed0 result=bf800000.000 error=0 -func=expm1f op1=c2dc6bba result=bf800000.000 error=0 - -; Regression tests for significance loss when the two components of -; the result have opposite sign but similar magnitude -func=expm1f op1=be8516c1 result=be6a652b.0dc error=0 -func=expm1f op1=be851714 result=be6a65ab.0e5 error=0 -func=expm1f op1=be851cc7 result=be6a6e75.111 error=0 -func=expm1f op1=be851d1a result=be6a6ef5.102 error=0 -func=expm1f op1=be851d6d result=be6a6f75.0f2 error=0 -func=expm1f op1=be852065 result=be6a7409.0e4 error=0 -func=expm1f op1=be8520b8 result=be6a7489.0c7 error=0 -func=expm1f op1=be85210b result=be6a7509.0a8 error=0 -func=expm1f op1=be855401 result=be6ac39b.0d5 error=0 -func=expm1f op1=be933307 result=be7fdbf0.d8d error=0 -func=expm1f op1=be92ed6b result=be7f737a.d81 error=0 -func=expm1f op1=be933b90 result=be7fe8be.d76 error=0 -func=expm1f op1=3eb11364 result=3ed38deb.0c0 error=0 -func=expm1f op1=3f28e830 result=3f6f344b.0da error=0 -func=expm1f op1=3eb1578f result=3ed3ee47.13b error=0 -func=expm1f op1=3f50176a result=3fa08e36.fea error=0 diff --git a/pl/math/test/testcases/directed/log10.tst b/pl/math/test/testcases/directed/log10.tst deleted file mode 100644 index 34831436234a..000000000000 --- a/pl/math/test/testcases/directed/log10.tst +++ /dev/null @@ -1,16 +0,0 @@ -; log10.tst -; -; Copyright (c) 2007-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=log10 op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=log10 op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=log10 op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=log10 op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=log10 op1=fff02000.00000000 result=7ff80000.00000001 errno=0 status=i -func=log10 op1=7ff00000.00000000 result=7ff00000.00000000 errno=0 -func=log10 op1=3ff00000.00000000 result=00000000.00000000 errno=0 -func=log10 op1=fff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=log10 op1=00000000.00000000 result=fff00000.00000000 errno=ERANGE status=z -func=log10 op1=80000000.00000000 result=fff00000.00000000 errno=ERANGE status=z -func=log10 op1=80000000.00000001 result=7ff80000.00000001 errno=EDOM status=i diff --git a/pl/math/test/testcases/directed/log10f.tst b/pl/math/test/testcases/directed/log10f.tst deleted file mode 100644 index d5744a66f092..000000000000 --- a/pl/math/test/testcases/directed/log10f.tst +++ /dev/null @@ -1,69 +0,0 @@ -; log10f.tst -; -; Copyright (c) 2007-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=log10f op1=7fc00001 result=7fc00001 errno=0 -func=log10f op1=ffc00001 result=7fc00001 errno=0 -func=log10f op1=7f800001 result=7fc00001 errno=0 status=i -func=log10f op1=ff800001 result=7fc00001 errno=0 status=i -func=log10f op1=ff810000 result=7fc00001 errno=0 status=i -func=log10f op1=7f800000 result=7f800000 errno=0 -func=log10f op1=3f800000 result=00000000 errno=0 -func=log10f op1=ff800000 result=7fc00001 errno=EDOM status=i -func=log10f op1=00000000 result=ff800000 errno=ERANGE status=z -func=log10f op1=80000000 result=ff800000 errno=ERANGE status=z -func=log10f op1=80000001 result=7fc00001 errno=EDOM status=i - -; Directed tests for the special-case handling of log10 of things -; very near 1 -func=log10f op1=3f81a618 result=3bb62472.b92 error=0 -func=log10f op1=3f876783 result=3cc811f4.26c error=0 -func=log10f op1=3f816af8 result=3b9cc4c7.057 error=0 -func=log10f op1=3f7bed7d result=bbe432cb.e23 error=0 -func=log10f op1=3f803ece result=3a59ff3a.a84 error=0 -func=log10f op1=3f80089f result=38ef9728.aa6 error=0 -func=log10f op1=3f86ab72 result=3cb4b711.457 error=0 -func=log10f op1=3f780854 result=bc60f953.904 error=0 -func=log10f op1=3f7c6d76 result=bbc7fd01.01c error=0 -func=log10f op1=3f85dff6 result=3c9fa76f.81f error=0 -func=log10f op1=3f7b87f4 result=bbfa9edc.be4 error=0 -func=log10f op1=3f81c710 result=3bc4457b.745 error=0 -func=log10f op1=3f80946d result=3b00a140.c06 error=0 -func=log10f op1=3f7e87ea result=bb23cd70.828 error=0 -func=log10f op1=3f811437 result=3b6ee960.b40 error=0 -func=log10f op1=3f858dcf result=3c971d9b.2ea error=0 -func=log10f op1=3f7f61a3 result=ba89b814.4e0 error=0 -func=log10f op1=3f82d642 result=3c1bfb8d.517 error=0 -func=log10f op1=3f80f3bc result=3b52ebe8.c75 error=0 -func=log10f op1=3f85eff9 result=3ca150d9.7e8 error=0 -func=log10f op1=3f843eb8 result=3c68263f.771 error=0 -func=log10f op1=3f78e691 result=bc481cf4.50a error=0 -func=log10f op1=3f87c56f result=3cd1b268.5e6 error=0 -func=log10f op1=3f83b711 result=3c4b94c5.918 error=0 -func=log10f op1=3f823b2b result=3bf5eb02.e2a error=0 -func=log10f op1=3f7f2c4e result=bab82c80.519 error=0 -func=log10f op1=3f83fc92 result=3c5a3ba1.543 error=0 -func=log10f op1=3f793956 result=bc3ee04e.03c error=0 -func=log10f op1=3f839ba5 result=3c45caca.92a error=0 -func=log10f op1=3f862f30 result=3ca7de76.16f error=0 -func=log10f op1=3f832a20 result=3c2dc6e9.afd error=0 -func=log10f op1=3f810296 result=3b5fb92a.429 error=0 -func=log10f op1=3f7e58c9 result=bb38655a.0a4 error=0 -func=log10f op1=3f8362e7 result=3c39cc65.d15 error=0 -func=log10f op1=3f7fdb85 result=b97d9016.40b error=0 -func=log10f op1=3f84484e result=3c6a29f2.f74 error=0 -func=log10f op1=3f861862 result=3ca5819e.f2d error=0 -func=log10f op1=3f7c027b result=bbdf912d.440 error=0 -func=log10f op1=3f867803 result=3caf6744.34d error=0 -func=log10f op1=3f789a89 result=bc509bce.458 error=0 -func=log10f op1=3f8361d9 result=3c399347.379 error=0 -func=log10f op1=3f7d3ac3 result=bb9ad93a.93d error=0 -func=log10f op1=3f7ee241 result=baf8bd12.a62 error=0 -func=log10f op1=3f83a1fd result=3c4721bd.0a4 error=0 -func=log10f op1=3f840da3 result=3c5dd375.675 error=0 -func=log10f op1=3f79c2fe result=bc2f8a60.8c5 error=0 -func=log10f op1=3f854a93 result=3c901cc9.add error=0 -func=log10f op1=3f87a50a result=3cce6125.cd6 error=0 -func=log10f op1=3f818bf5 result=3baaee68.a55 error=0 -func=log10f op1=3f830a44 result=3c2705c4.d87 error=0 diff --git a/pl/math/test/testcases/directed/log1p.tst b/pl/math/test/testcases/directed/log1p.tst deleted file mode 100644 index 9ee8c62fc9c0..000000000000 --- a/pl/math/test/testcases/directed/log1p.tst +++ /dev/null @@ -1,22 +0,0 @@ -; log1p.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=log1p op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=log1p op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=log1p op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=log1p op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=log1p op1=fff02000.00000000 result=7ff80000.00000001 errno=0 status=i -func=log1p op1=7ff00000.00000000 result=7ff00000.00000000 errno=0 -; Cases 6, 9 , 10, 11, 12 fail with certain versions of GLIBC and not others. -; The main reason seems to be the handling of errno and exceptions. - -func=log1p op1=00000000.00000000 result=00000000.00000000 errno=0 -func=log1p op1=80000000.00000000 result=80000000.00000000 errno=0 - -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=log1p op1=00000000.00000001 result=00000000.00000001 errno=0 maybestatus=ux -func=log1p op1=80000000.00000001 result=80000000.00000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/directed/log1pf.tst b/pl/math/test/testcases/directed/log1pf.tst deleted file mode 100644 index aaa01d67c2b3..000000000000 --- a/pl/math/test/testcases/directed/log1pf.tst +++ /dev/null @@ -1,130 +0,0 @@ -; log1pf.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=log1pf op1=7fc00001 result=7fc00001 errno=0 -func=log1pf op1=ffc00001 result=7fc00001 errno=0 -func=log1pf op1=7f800001 result=7fc00001 errno=0 status=i -func=log1pf op1=ff800001 result=7fc00001 errno=0 status=i -func=log1pf op1=ff810000 result=7fc00001 errno=0 status=i -func=log1pf op1=7f800000 result=7f800000 errno=0 - -; Cases 6, 9 , 10, 11, 12 fail with certain versions of GLIBC and not others. -; The main reason seems to be the handling of errno and exceptions. - -func=log1pf op1=00000000 result=00000000 errno=0 -func=log1pf op1=80000000 result=80000000 errno=0 - -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=log1pf op1=00000001 result=00000001 errno=0 maybestatus=ux -func=log1pf op1=80000001 result=80000001 errno=0 maybestatus=ux - -func=log1pf op1=3f1e91ee result=3ef6d127.fdb errno=0 -func=log1pf op1=3f201046 result=3ef8a881.fba errno=0 -func=log1pf op1=3f21b916 result=3efab23b.f9f errno=0 -func=log1pf op1=3f21bde6 result=3efab821.fee errno=0 -func=log1pf op1=3f22a5ee result=3efbd435.ff2 errno=0 -func=log1pf op1=3f231b56 result=3efc63b7.e26 errno=0 -func=log1pf op1=3f23ce96 result=3efd3e83.fc8 errno=0 -func=log1pf op1=3eee18c6 result=3ec38576.02e errno=0 -func=log1pf op1=3eee2f41 result=3ec394ce.057 errno=0 -func=log1pf op1=3eee770d result=3ec3c5cc.00c errno=0 -func=log1pf op1=3eee7fed result=3ec3cbda.065 errno=0 -func=log1pf op1=3eee8fb2 result=3ec3d69c.008 errno=0 -func=log1pf op1=3eeeb8eb result=3ec3f2ba.061 errno=0 -func=log1pf op1=3eeeccfd result=3ec4006a.01d errno=0 -func=log1pf op1=3eeef5f0 result=3ec41c56.020 errno=0 -func=log1pf op1=3eeeff12 result=3ec42290.00c errno=0 -func=log1pf op1=3eef05cf result=3ec42728.052 errno=0 -func=log1pf op1=3eef13d3 result=3ec430b6.00e errno=0 -func=log1pf op1=3eef2e70 result=3ec442da.04a errno=0 -func=log1pf op1=3eef3fbf result=3ec44ea6.055 errno=0 -func=log1pf op1=3eef3feb result=3ec44ec4.021 errno=0 -func=log1pf op1=3eef4399 result=3ec45146.011 errno=0 -func=log1pf op1=3eef452e result=3ec4525a.049 errno=0 -func=log1pf op1=3eef4ea9 result=3ec458d0.020 errno=0 -func=log1pf op1=3eef7365 result=3ec471d8.05e errno=0 -func=log1pf op1=3eefa38f result=3ec492a8.003 errno=0 -func=log1pf op1=3eefb1f1 result=3ec49c74.015 errno=0 -func=log1pf op1=3eefb334 result=3ec49d50.023 errno=0 -func=log1pf op1=3eefb3c1 result=3ec49db0.0bf errno=0 -func=log1pf op1=3eefb591 result=3ec49eec.15d errno=0 -func=log1pf op1=3eefd736 result=3ec4b5d6.02d errno=0 -func=log1pf op1=3eefd797 result=3ec4b618.114 errno=0 -func=log1pf op1=3eefee5d result=3ec4c59a.071 errno=0 -func=log1pf op1=3eeffff4 result=3ec4d194.0a7 errno=0 -func=log1pf op1=3ef00cd1 result=3ec4da56.025 errno=0 -func=log1pf op1=3ef0163a result=3ec4e0be.07a errno=0 -func=log1pf op1=3ef01e89 result=3ec4e666.007 errno=0 -func=log1pf op1=3ef02004 result=3ec4e768.00a errno=0 -func=log1pf op1=3ef02c40 result=3ec4efbc.017 errno=0 -func=log1pf op1=3ef05b50 result=3ec50fc4.031 errno=0 -func=log1pf op1=3ef05bb1 result=3ec51006.05f errno=0 -func=log1pf op1=3ef0651b result=3ec5166e.0d9 errno=0 -func=log1pf op1=3ef06609 result=3ec51710.02a errno=0 -func=log1pf op1=3ef0666a result=3ec51752.049 errno=0 -func=log1pf op1=3ef0791e result=3ec5240c.0a8 errno=0 -func=log1pf op1=3ef07d46 result=3ec526e0.00e errno=0 -func=log1pf op1=3ef091fd result=3ec534f8.03c errno=0 -func=log1pf op1=3ef09602 result=3ec537b4.128 errno=0 -func=log1pf op1=3ef09848 result=3ec53940.044 errno=0 -func=log1pf op1=3ef0a04f result=3ec53eb6.07d errno=0 -func=log1pf op1=3ef0ab6a result=3ec54644.062 errno=0 -func=log1pf op1=3ef0ae49 result=3ec54838.002 errno=0 -func=log1pf op1=3ef0c1b8 result=3ec55570.000 errno=0 -func=log1pf op1=3ef0ca06 result=3ec55b16.00d errno=0 -func=log1pf op1=3ef0cc29 result=3ec55c8a.095 errno=0 -func=log1pf op1=3ef0d228 result=3ec5609e.04f errno=0 -func=log1pf op1=3ef0d8c0 result=3ec5651a.05e errno=0 -func=log1pf op1=3ef0dc0c result=3ec56758.029 errno=0 -func=log1pf op1=3ef0e0e8 result=3ec56aa6.02e errno=0 -func=log1pf op1=3ef0e502 result=3ec56d70.102 errno=0 -func=log1pf op1=3ef0e754 result=3ec56f04.017 errno=0 -func=log1pf op1=3ef0efe9 result=3ec574da.01c errno=0 -func=log1pf op1=3ef0f309 result=3ec576fa.016 errno=0 -func=log1pf op1=3ef0f499 result=3ec5780a.005 errno=0 -func=log1pf op1=3ef0f6c2 result=3ec57982.083 errno=0 -func=log1pf op1=3ef0f852 result=3ec57a92.05d errno=0 -func=log1pf op1=3ef0f9e2 result=3ec57ba2.02e errno=0 -func=log1pf op1=3ef119ee result=3ec5916c.024 errno=0 -func=log1pf op1=3ef11edf result=3ec594c8.03d errno=0 -func=log1pf op1=3ef128c4 result=3ec59b82.001 errno=0 -func=log1pf op1=3ef12ac1 result=3ec59cdc.04b errno=0 -func=log1pf op1=3ef12fea result=3ec5a05e.045 errno=0 -func=log1pf op1=3ef131e7 result=3ec5a1b8.05a errno=0 -func=log1pf op1=3ef134e1 result=3ec5a3be.00e errno=0 -func=log1pf op1=3ef1397a result=3ec5a6de.127 errno=0 -func=log1pf op1=3ef13ade result=3ec5a7d0.0f6 errno=0 -func=log1pf op1=3ef13c0d result=3ec5a89e.054 errno=0 -func=log1pf op1=3ef13d71 result=3ec5a990.016 errno=0 -func=log1pf op1=3ef14074 result=3ec5ab9c.12c errno=0 -func=log1pf op1=3ef146a0 result=3ec5afce.035 errno=0 -func=log1pf op1=3ef14a39 result=3ec5b240.024 errno=0 -func=log1pf op1=3ef14d39 result=3ec5b44a.00c errno=0 -func=log1pf op1=3ef152a3 result=3ec5b7f8.04d errno=0 -func=log1pf op1=3ef170a1 result=3ec5cc5a.021 errno=0 -func=log1pf op1=3ef17855 result=3ec5d196.0dc errno=0 -func=log1pf op1=3ef17ece result=3ec5d5fc.010 errno=0 -func=log1pf op1=3ef1810c result=3ec5d782.08e errno=0 -func=log1pf op1=3ef18da9 result=3ec5e014.0ae errno=0 -func=log1pf op1=3ef19054 result=3ec5e1e4.1a2 errno=0 -func=log1pf op1=3ef190ea result=3ec5e24a.048 errno=0 -func=log1pf op1=3ef1a739 result=3ec5f172.0d8 errno=0 -func=log1pf op1=3ef1a83c result=3ec5f222.018 errno=0 -func=log1pf op1=3ef1bbcc result=3ec5ff6c.09d errno=0 -func=log1pf op1=3ef1bd3c result=3ec60066.03a errno=0 -func=log1pf op1=3ef1d6ee result=3ec611da.056 errno=0 -func=log1pf op1=3ef1de36 result=3ec616cc.01b errno=0 -func=log1pf op1=3ef1e623 result=3ec61c2e.008 errno=0 -func=log1pf op1=3ef1e9b1 result=3ec61e98.029 errno=0 -func=log1pf op1=3ef1ee19 result=3ec62196.0d8 errno=0 -func=log1pf op1=3ef1f13a result=3ec623b6.039 errno=0 -func=log1pf op1=3ef1f1a7 result=3ec62400.091 errno=0 -func=log1pf op1=3ef1f214 result=3ec6244a.0e8 errno=0 -func=log1pf op1=3ef206e1 result=3ec6326a.09b errno=0 -func=log1pf op1=3ef21245 result=3ec63a26.012 errno=0 -func=log1pf op1=3ef217fd result=3ec63e08.048 errno=0 -func=log1pf op1=3ef2186a result=3ec63e52.063 errno=0 diff --git a/pl/math/test/testcases/directed/log2.tst b/pl/math/test/testcases/directed/log2.tst deleted file mode 100644 index 5d1eb9b877e8..000000000000 --- a/pl/math/test/testcases/directed/log2.tst +++ /dev/null @@ -1,21 +0,0 @@ -; Directed test cases for log2 -; -; Copyright (c) 2018-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=log2 op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=log2 op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=log2 op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=log2 op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=log2 op1=7ff00000.00000000 result=7ff00000.00000000 errno=0 -func=log2 op1=fff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=log2 op1=7fefffff.ffffffff result=408fffff.ffffffff.ffa errno=0 -func=log2 op1=ffefffff.ffffffff result=7ff80000.00000001 errno=EDOM status=i -func=log2 op1=3ff00000.00000000 result=00000000.00000000 errno=0 -func=log2 op1=bff00000.00000000 result=7ff80000.00000001 errno=EDOM status=i -func=log2 op1=00000000.00000000 result=fff00000.00000000 errno=ERANGE status=z -func=log2 op1=80000000.00000000 result=fff00000.00000000 errno=ERANGE status=z -func=log2 op1=00000000.00000001 result=c090c800.00000000 errno=0 -func=log2 op1=80000000.00000001 result=7ff80000.00000001 errno=EDOM status=i -func=log2 op1=40000000.00000000 result=3ff00000.00000000 errno=0 -func=log2 op1=3fe00000.00000000 result=bff00000.00000000 errno=0 diff --git a/pl/math/test/testcases/directed/log2f.tst b/pl/math/test/testcases/directed/log2f.tst deleted file mode 100644 index 4e08110878d6..000000000000 --- a/pl/math/test/testcases/directed/log2f.tst +++ /dev/null @@ -1,27 +0,0 @@ -; log2f.tst - Directed test cases for log2f -; -; Copyright (c) 2017-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=log2f op1=7fc00001 result=7fc00001 errno=0 -func=log2f op1=ffc00001 result=7fc00001 errno=0 -func=log2f op1=7f800001 result=7fc00001 errno=0 status=i -func=log2f op1=ff800001 result=7fc00001 errno=0 status=i -func=log2f op1=ff810000 result=7fc00001 errno=0 status=i -func=log2f op1=7f800000 result=7f800000 errno=0 -func=log2f op1=ff800000 result=7fc00001 errno=EDOM status=i -func=log2f op1=3f800000 result=00000000 errno=0 -func=log2f op1=00000000 result=ff800000 errno=ERANGE status=z -func=log2f op1=80000000 result=ff800000 errno=ERANGE status=z -func=log2f op1=80000001 result=7fc00001 errno=EDOM status=i - -func=log2f op1=3f7d70a4 result=bc6d8f8b.7d4 error=0 -func=log2f op1=3f604189 result=be4394c8.395 error=0 -func=log2f op1=3f278034 result=bf1caa73.88e error=0 -func=log2f op1=3edd3c36 result=bf9af3b9.619 error=0 -func=log2f op1=3e61259a result=c00bdb95.650 error=0 -func=log2f op1=3f8147ae result=3c6b3267.d6a error=0 -func=log2f op1=3f8fbe77 result=3e2b5fe2.a1c error=0 -func=log2f op1=3fac3eea result=3edb4d5e.1fc error=0 -func=log2f op1=3fd6e632 result=3f3f5d3a.827 error=0 -func=log2f op1=40070838 result=3f89e055.a0a error=0 diff --git a/pl/math/test/testcases/directed/sinh.tst b/pl/math/test/testcases/directed/sinh.tst deleted file mode 100644 index d6a3da896693..000000000000 --- a/pl/math/test/testcases/directed/sinh.tst +++ /dev/null @@ -1,21 +0,0 @@ -; sinh.tst -; -; Copyright (c) 1999-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=sinh op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=sinh op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=sinh op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=sinh op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=sinh op1=7ff00000.00000000 result=7ff00000.00000000 errno=0 -func=sinh op1=7fefffff.ffffffff result=7ff00000.00000000 errno=ERANGE status=ox -func=sinh op1=fff00000.00000000 result=fff00000.00000000 errno=0 -func=sinh op1=ffefffff.ffffffff result=fff00000.00000000 errno=ERANGE status=ox -func=sinh op1=00000000.00000000 result=00000000.00000000 errno=0 -func=sinh op1=80000000.00000000 result=80000000.00000000 errno=0 - -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=sinh op1=00000000.00000001 result=00000000.00000001 errno=0 maybestatus=ux -func=sinh op1=80000000.00000001 result=80000000.00000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/directed/sinhf.tst b/pl/math/test/testcases/directed/sinhf.tst deleted file mode 100644 index 5f7bd1b04137..000000000000 --- a/pl/math/test/testcases/directed/sinhf.tst +++ /dev/null @@ -1,21 +0,0 @@ -; sinhf.tst -; -; Copyright (c) 2009-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=sinhf op1=7fc00001 result=7fc00001 errno=0 -func=sinhf op1=ffc00001 result=7fc00001 errno=0 -func=sinhf op1=7f800001 result=7fc00001 errno=0 status=i -func=sinhf op1=ff800001 result=7fc00001 errno=0 status=i -func=sinhf op1=7f800000 result=7f800000 errno=0 -func=sinhf op1=7f7fffff result=7f800000 errno=ERANGE status=ox -func=sinhf op1=ff800000 result=ff800000 errno=0 -func=sinhf op1=ff7fffff result=ff800000 errno=ERANGE status=ox -func=sinhf op1=00000000 result=00000000 errno=0 -func=sinhf op1=80000000 result=80000000 errno=0 - -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=sinhf op1=00000001 result=00000001 errno=0 maybestatus=ux -func=sinhf op1=80000001 result=80000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/directed/tanf.tst b/pl/math/test/testcases/directed/tanf.tst deleted file mode 100644 index 3161f70f4361..000000000000 --- a/pl/math/test/testcases/directed/tanf.tst +++ /dev/null @@ -1,25 +0,0 @@ -; tanf.tst -; -; Copyright (c) 2022-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=tanf op1=7fc00001 result=7fc00001 errno=0 -func=tanf op1=ffc00001 result=7fc00001 errno=0 -func=tanf op1=7f800001 result=7fc00001 errno=0 status=i -func=tanf op1=ff800001 result=7fc00001 errno=0 status=i -func=tanf op1=7f800000 result=7fc00001 errno=EDOM status=i -func=tanf op1=ff800000 result=7fc00001 errno=EDOM status=i -func=tanf op1=00000000 result=00000000 errno=0 -func=tanf op1=80000000 result=80000000 errno=0 -; SDCOMP-26094: check tanf in the cases for which the range reducer -; returns values furthest beyond its nominal upper bound of pi/4. -func=tanf op1=46427f1b result=3f80396d.599 error=0 -func=tanf op1=4647e568 result=3f8039a6.c9f error=0 -func=tanf op1=46428bac result=3f803a03.148 error=0 -func=tanf op1=4647f1f9 result=3f803a3c.852 error=0 -func=tanf op1=4647fe8a result=3f803ad2.410 error=0 -func=tanf op1=45d8d7f1 result=bf800669.901 error=0 -func=tanf op1=45d371a4 result=bf800686.3cd error=0 -func=tanf op1=45ce0b57 result=bf8006a2.e9a error=0 -func=tanf op1=45d35882 result=bf80071b.bc4 error=0 -func=tanf op1=45cdf235 result=bf800738.693 error=0 diff --git a/pl/math/test/testcases/directed/tanh.tst b/pl/math/test/testcases/directed/tanh.tst deleted file mode 100644 index 78776e6f3924..000000000000 --- a/pl/math/test/testcases/directed/tanh.tst +++ /dev/null @@ -1,18 +0,0 @@ -; tanh.tst -; -; Copyright (c) 1999-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=tanh op1=7ff80000.00000001 result=7ff80000.00000001 errno=0 -func=tanh op1=fff80000.00000001 result=7ff80000.00000001 errno=0 -func=tanh op1=7ff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=tanh op1=fff00000.00000001 result=7ff80000.00000001 errno=0 status=i -func=tanh op1=7ff00000.00000000 result=3ff00000.00000000 errno=0 -func=tanh op1=fff00000.00000000 result=bff00000.00000000 errno=0 -func=tanh op1=00000000.00000000 result=00000000.00000000 errno=0 -func=tanh op1=80000000.00000000 result=80000000.00000000 errno=0 -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -func=tanh op1=00000000.00000001 result=00000000.00000001 errno=0 maybestatus=ux -func=tanh op1=80000000.00000001 result=80000000.00000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/directed/tanhf.tst b/pl/math/test/testcases/directed/tanhf.tst deleted file mode 100644 index 603e3107e44f..000000000000 --- a/pl/math/test/testcases/directed/tanhf.tst +++ /dev/null @@ -1,20 +0,0 @@ -; tanhf.tst -; -; Copyright (c) 2007-2023, Arm Limited. -; SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -func=tanhf op1=7fc00001 result=7fc00001 errno=0 -func=tanhf op1=ffc00001 result=7fc00001 errno=0 -func=tanhf op1=7f800001 result=7fc00001 errno=0 status=i -func=tanhf op1=ff800001 result=7fc00001 errno=0 status=i -func=tanhf op1=7f800000 result=3f800000 errno=0 -func=tanhf op1=ff800000 result=bf800000 errno=0 -func=tanhf op1=00000000 result=00000000 errno=0 -func=tanhf op1=80000000 result=80000000 errno=0 -; No exception is raised with certain versions of glibc. Functions -; approximated by x near zero may not generate/implement flops and -; thus may not raise exceptions. -; func=tanhf op1=00000001 result=00000001 errno=0 maybestatus=ux -; func=tanhf op1=80000001 result=80000001 errno=0 maybestatus=ux -func=tanhf op1=00000001 result=00000001 errno=0 maybestatus=ux -func=tanhf op1=80000001 result=80000001 errno=0 maybestatus=ux diff --git a/pl/math/test/testcases/random/double.tst b/pl/math/test/testcases/random/double.tst deleted file mode 100644 index d83283ef7864..000000000000 --- a/pl/math/test/testcases/random/double.tst +++ /dev/null @@ -1,6 +0,0 @@ -!! double.tst - Random test case specification for DP functions -!! -!! Copyright (c) 1999-2023, Arm Limited. -!! SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -test log10 10000 diff --git a/pl/math/test/testcases/random/float.tst b/pl/math/test/testcases/random/float.tst deleted file mode 100644 index fa77efecfabb..000000000000 --- a/pl/math/test/testcases/random/float.tst +++ /dev/null @@ -1,8 +0,0 @@ -!! float.tst - Random test case specification for SP functions -!! -!! Copyright (c) 2022-2023, Arm Limited. -!! SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - -test erff 10000 -test log10f 10000 -test tanf 10000 diff --git a/pl/math/test/ulp_funcs.h b/pl/math/test/ulp_funcs.h deleted file mode 100644 index 4929b481ffe1..000000000000 --- a/pl/math/test/ulp_funcs.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Function entries for ulp. - * - * Copyright (c) 2022-2023, Arm Limited. - * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - */ - -#if defined(__vpcs) && __aarch64__ - -#define _ZVF1(f) ZVF1 (f) -#define _ZVD1(f) ZVD1 (f) -#define _ZVF2(f) ZVF2 (f) -#define _ZVD2(f) ZVD2 (f) - -#else - -#define _ZVF1(f) -#define _ZVD1(f) -#define _ZVF2(f) -#define _ZVD2(f) - -#endif - -#if WANT_SVE_MATH - -#define _ZSVF1(f) ZSVF1 (f) -#define _ZSVF2(f) ZSVF2 (f) -#define _ZSVD1(f) ZSVD1 (f) -#define _ZSVD2(f) ZSVD2 (f) - -#else - -#define _ZSVF1(f) -#define _ZSVF2(f) -#define _ZSVD1(f) -#define _ZSVD2(f) - -#endif - -#define _ZSF1(f) F1 (f) -#define _ZSF2(f) F2 (f) -#define _ZSD1(f) D1 (f) -#define _ZSD2(f) D2 (f) - -#include "ulp_funcs_gen.h" - -F (_ZGVnN4v_sincosf_sin, v_sincosf_sin, sin, mpfr_sin, 1, 1, f1, 0) -F (_ZGVnN4v_sincosf_cos, v_sincosf_cos, cos, mpfr_cos, 1, 1, f1, 0) -F (_ZGVnN4v_cexpif_sin, v_cexpif_sin, sin, mpfr_sin, 1, 1, f1, 0) -F (_ZGVnN4v_cexpif_cos, v_cexpif_cos, cos, mpfr_cos, 1, 1, f1, 0) - -F (_ZGVnN2v_sincos_sin, v_sincos_sin, sinl, mpfr_sin, 1, 0, d1, 0) -F (_ZGVnN2v_sincos_cos, v_sincos_cos, cosl, mpfr_cos, 1, 0, d1, 0) -F (_ZGVnN2v_cexpi_sin, v_cexpi_sin, sinl, mpfr_sin, 1, 0, d1, 0) -F (_ZGVnN2v_cexpi_cos, v_cexpi_cos, cosl, mpfr_cos, 1, 0, d1, 0) - -#if WANT_SVE_MATH -F (_ZGVsMxvv_powk, Z_sv_powk, ref_powi, mpfr_powi, 2, 0, d2, 0) -F (_ZGVsMxvv_powi, Z_sv_powi, ref_powif, mpfr_powi, 2, 1, f2, 0) - -F (_ZGVsMxv_sincosf_sin, sv_sincosf_sin, sin, mpfr_sin, 1, 1, f1, 0) -F (_ZGVsMxv_sincosf_cos, sv_sincosf_cos, cos, mpfr_cos, 1, 1, f1, 0) -F (_ZGVsMxv_cexpif_sin, sv_cexpif_sin, sin, mpfr_sin, 1, 1, f1, 0) -F (_ZGVsMxv_cexpif_cos, sv_cexpif_cos, cos, mpfr_cos, 1, 1, f1, 0) - -F (_ZGVsMxv_sincos_sin, sv_sincos_sin, sinl, mpfr_sin, 1, 0, d1, 0) -F (_ZGVsMxv_sincos_cos, sv_sincos_cos, cosl, mpfr_cos, 1, 0, d1, 0) -F (_ZGVsMxv_cexpi_sin, sv_cexpi_sin, sinl, mpfr_sin, 1, 0, d1, 0) -F (_ZGVsMxv_cexpi_cos, sv_cexpi_cos, cosl, mpfr_cos, 1, 0, d1, 0) -#endif diff --git a/pl/math/test/ulp_wrappers.h b/pl/math/test/ulp_wrappers.h deleted file mode 100644 index 0f7b68949c7b..000000000000 --- a/pl/math/test/ulp_wrappers.h +++ /dev/null @@ -1,140 +0,0 @@ -// clang-format off -/* - * Function wrappers for ulp. - * - * Copyright (c) 2022-2023, Arm Limited. - * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception - */ - -#define _GNU_SOURCE -#include <stdbool.h> -#include <arm_neon.h> - -#if USE_MPFR -static int sincos_mpfr_sin(mpfr_t y, const mpfr_t x, mpfr_rnd_t r) { - mpfr_cos(y, x, r); - return mpfr_sin(y, x, r); -} -static int sincos_mpfr_cos(mpfr_t y, const mpfr_t x, mpfr_rnd_t r) { - mpfr_sin(y, x, r); - return mpfr_cos(y, x, r); -} -static int wrap_mpfr_powi(mpfr_t ret, const mpfr_t x, const mpfr_t y, mpfr_rnd_t rnd) { - mpfr_t y2; - mpfr_init(y2); - mpfr_trunc(y2, y); - return mpfr_pow(ret, x, y2, rnd); -} -#endif - -/* Our implementations of powi/powk are too imprecise to verify - against any established pow implementation. Instead we have the - following simple implementation, against which it is enough to - maintain bitwise reproducibility. Note the test framework expects - the reference impl to be of higher precision than the function - under test. For instance this means that the reference for - double-precision powi will be passed a long double, so to check - bitwise reproducibility we have to cast it back down to - double. This is fine since a round-trip to higher precision and - back down is correctly rounded. */ -#define DECL_POW_INT_REF(NAME, DBL_T, FLT_T, INT_T) \ - static DBL_T __attribute__((unused)) NAME (DBL_T in_val, DBL_T y) \ - { \ - INT_T n = (INT_T) round (y); \ - FLT_T acc = 1.0; \ - bool want_recip = n < 0; \ - n = n < 0 ? -n : n; \ - \ - for (FLT_T c = in_val; n; c *= c, n >>= 1) \ - { \ - if (n & 0x1) \ - { \ - acc *= c; \ - } \ - } \ - if (want_recip) \ - { \ - acc = 1.0 / acc; \ - } \ - return acc; \ - } - -DECL_POW_INT_REF(ref_powif, double, float, int) -DECL_POW_INT_REF(ref_powi, long double, double, int) - -#define ZVF1_WRAP(func) static float Z_##func##f(float x) { return _ZGVnN4v_##func##f(argf(x))[0]; } -#define ZVF2_WRAP(func) static float Z_##func##f(float x, float y) { return _ZGVnN4vv_##func##f(argf(x), argf(y))[0]; } -#define ZVD1_WRAP(func) static double Z_##func(double x) { return _ZGVnN2v_##func(argd(x))[0]; } -#define ZVD2_WRAP(func) static double Z_##func(double x, double y) { return _ZGVnN2vv_##func(argd(x), argd(y))[0]; } - -#if defined(__vpcs) && __aarch64__ - -#define ZVNF1_WRAP(func) ZVF1_WRAP(func) -#define ZVNF2_WRAP(func) ZVF2_WRAP(func) -#define ZVND1_WRAP(func) ZVD1_WRAP(func) -#define ZVND2_WRAP(func) ZVD2_WRAP(func) - -#else - -#define ZVNF1_WRAP(func) -#define ZVNF2_WRAP(func) -#define ZVND1_WRAP(func) -#define ZVND2_WRAP(func) - -#endif - -#define ZSVF1_WRAP(func) static float Z_sv_##func##f(float x) { return svretf(_ZGVsMxv_##func##f(svargf(x), svptrue_b32())); } -#define ZSVF2_WRAP(func) static float Z_sv_##func##f(float x, float y) { return svretf(_ZGVsMxvv_##func##f(svargf(x), svargf(y), svptrue_b32())); } -#define ZSVD1_WRAP(func) static double Z_sv_##func(double x) { return svretd(_ZGVsMxv_##func(svargd(x), svptrue_b64())); } -#define ZSVD2_WRAP(func) static double Z_sv_##func(double x, double y) { return svretd(_ZGVsMxvv_##func(svargd(x), svargd(y), svptrue_b64())); } - -#if WANT_SVE_MATH - -#define ZSVNF1_WRAP(func) ZSVF1_WRAP(func) -#define ZSVNF2_WRAP(func) ZSVF2_WRAP(func) -#define ZSVND1_WRAP(func) ZSVD1_WRAP(func) -#define ZSVND2_WRAP(func) ZSVD2_WRAP(func) - -#else - -#define ZSVNF1_WRAP(func) -#define ZSVNF2_WRAP(func) -#define ZSVND1_WRAP(func) -#define ZSVND2_WRAP(func) - -#endif - -/* No wrappers for scalar routines, but PL_SIG will emit them. */ -#define ZSNF1_WRAP(func) -#define ZSNF2_WRAP(func) -#define ZSND1_WRAP(func) -#define ZSND2_WRAP(func) - -#include "ulp_wrappers_gen.h" - -float v_sincosf_sin(float x) { float32x4_t s, c; _ZGVnN4vl4l4_sincosf(vdupq_n_f32(x), &s, &c); return s[0]; } -float v_sincosf_cos(float x) { float32x4_t s, c; _ZGVnN4vl4l4_sincosf(vdupq_n_f32(x), &s, &c); return c[0]; } -float v_cexpif_sin(float x) { return _ZGVnN4v_cexpif(vdupq_n_f32(x)).val[0][0]; } -float v_cexpif_cos(float x) { return _ZGVnN4v_cexpif(vdupq_n_f32(x)).val[1][0]; } - -double v_sincos_sin(double x) { float64x2_t s, c; _ZGVnN2vl8l8_sincos(vdupq_n_f64(x), &s, &c); return s[0]; } -double v_sincos_cos(double x) { float64x2_t s, c; _ZGVnN2vl8l8_sincos(vdupq_n_f64(x), &s, &c); return c[0]; } -double v_cexpi_sin(double x) { return _ZGVnN2v_cexpi(vdupq_n_f64(x)).val[0][0]; } -double v_cexpi_cos(double x) { return _ZGVnN2v_cexpi(vdupq_n_f64(x)).val[1][0]; } - -#if WANT_SVE_MATH -static float Z_sv_powi(float x, float y) { return svretf(_ZGVsMxvv_powi(svargf(x), svdup_s32((int)round(y)), svptrue_b32())); } -static double Z_sv_powk(double x, double y) { return svretd(_ZGVsMxvv_powk(svargd(x), svdup_s64((long)round(y)), svptrue_b64())); } - -float sv_sincosf_sin(float x) { float s[svcntw()], c[svcntw()]; _ZGVsMxvl4l4_sincosf(svdup_f32(x), s, c, svptrue_b32()); return s[0]; } -float sv_sincosf_cos(float x) { float s[svcntw()], c[svcntw()]; _ZGVsMxvl4l4_sincosf(svdup_f32(x), s, c, svptrue_b32()); return c[0]; } -float sv_cexpif_sin(float x) { return svretf(svget2(_ZGVsMxv_cexpif(svdup_f32(x), svptrue_b32()), 0)); } -float sv_cexpif_cos(float x) { return svretf(svget2(_ZGVsMxv_cexpif(svdup_f32(x), svptrue_b32()), 1)); } - -double sv_sincos_sin(double x) { double s[svcntd()], c[svcntd()]; _ZGVsMxvl8l8_sincos(svdup_f64(x), s, c, svptrue_b64()); return s[0]; } -double sv_sincos_cos(double x) { double s[svcntd()], c[svcntd()]; _ZGVsMxvl8l8_sincos(svdup_f64(x), s, c, svptrue_b64()); return c[0]; } -double sv_cexpi_sin(double x) { return svretd(svget2(_ZGVsMxv_cexpi(svdup_f64(x), svptrue_b64()), 0)); } -double sv_cexpi_cos(double x) { return svretd(svget2(_ZGVsMxv_cexpi(svdup_f64(x), svptrue_b64()), 1)); } - -#endif -// clang-format on |