git: f3087bef1154 - main - Update the Arm Optimized Routine library to v25.01
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 10 Jan 2025 11:19:42 UTC
The branch main has been updated by andrew:
URL: https://cgit.FreeBSD.org/src/commit/?id=f3087bef11543b42e0d69b708f367097a4118d24
commit f3087bef11543b42e0d69b708f367097a4118d24
Merge: 16f0d01f9ca1 9d1de2593073
Author: Andrew Turner <andrew@FreeBSD.org>
AuthorDate: 2025-01-10 11:14:39 +0000
Commit: Andrew Turner <andrew@FreeBSD.org>
CommitDate: 2025-01-10 11:14:39 +0000
Update the Arm Optimized Routine library to v25.01
Sponsored by: Arm Ltd
contrib/arm-optimized-routines/MAINTAINERS | 9 +-
contrib/arm-optimized-routines/Makefile | 16 +-
contrib/arm-optimized-routines/README | 33 +-
contrib/arm-optimized-routines/config.mk.dist | 99 +-
contrib/arm-optimized-routines/math/Dir.mk | 253 +++-
.../math/README.contributors | 5 +-
.../v_acos_2u.c => math/aarch64/advsimd/acos.c} | 30 +-
.../v_acosf_1u4.c => math/aarch64/advsimd/acosf.c} | 32 +-
.../v_acosh_3u5.c => math/aarch64/advsimd/acosh.c} | 27 +-
.../aarch64/advsimd/acoshf.c} | 62 +-
.../v_asin_3u.c => math/aarch64/advsimd/asin.c} | 75 +-
.../v_asinf_2u5.c => math/aarch64/advsimd/asinf.c} | 30 +-
.../math/aarch64/advsimd/asinh.c | 242 +++
.../math/aarch64/advsimd/asinhf.c | 89 ++
.../v_atan_2u5.c => math/aarch64/advsimd/atan.c} | 85 +-
.../math/aarch64/advsimd/atan2.c | 171 +++
.../aarch64/advsimd/atan2f.c} | 84 +-
.../v_atanf_3u.c => math/aarch64/advsimd/atanf.c} | 26 +-
.../v_atanh_3u5.c => math/aarch64/advsimd/atanh.c} | 45 +-
.../aarch64/advsimd/atanhf.c} | 49 +-
.../v_cbrt_2u.c => math/aarch64/advsimd/cbrt.c} | 43 +-
.../v_cbrtf_1u7.c => math/aarch64/advsimd/cbrtf.c} | 19 +-
.../v_cexpi_3u5.c => math/aarch64/advsimd/cexpi.c} | 14 +-
.../aarch64/advsimd/cexpif.c} | 14 +-
.../math/aarch64/{v_cos.c => advsimd/cos.c} | 21 +-
.../math/aarch64/{v_cosf.c => advsimd/cosf.c} | 23 +-
.../v_cosh_2u.c => math/aarch64/advsimd/cosh.c} | 25 +-
.../v_coshf_2u4.c => math/aarch64/advsimd/coshf.c} | 52 +-
.../v_cospi_3u1.c => math/aarch64/advsimd/cospi.c} | 25 +-
.../aarch64/advsimd/cospif.c} | 29 +-
.../v_erf_2u5.c => math/aarch64/advsimd/erf.c} | 48 +-
.../v_erfc_1u8.c => math/aarch64/advsimd/erfc.c} | 65 +-
.../v_erfcf_1u7.c => math/aarch64/advsimd/erfcf.c} | 54 +-
.../v_erff_2u.c => math/aarch64/advsimd/erff.c} | 34 +-
.../math/aarch64/{v_exp.c => advsimd/exp.c} | 11 +-
.../v_exp10_2u.c => math/aarch64/advsimd/exp10.c} | 23 +-
.../aarch64/advsimd/exp10f.c} | 87 +-
.../v_exp2_2u.c => math/aarch64/advsimd/exp2.c} | 28 +-
.../math/aarch64/{v_exp2f.c => advsimd/exp2f.c} | 69 +-
.../math/aarch64/advsimd/exp2f_1u.c | 73 +
.../math/aarch64/{v_expf.c => advsimd/expf.c} | 72 +-
.../math/aarch64/advsimd/expf_1u.c | 79 +
.../math/aarch64/advsimd/expm1.c | 77 +
.../math/aarch64/advsimd/expm1f.c | 82 ++
.../{pl/math => math/aarch64/advsimd}/finite_pow.h | 22 +-
.../v_hypot_1u5.c => math/aarch64/advsimd/hypot.c} | 30 +-
.../aarch64/advsimd/hypotf.c} | 36 +-
.../math/aarch64/advsimd/log.c | 118 ++
.../math/aarch64/advsimd/log10.c | 132 ++
.../math/aarch64/advsimd/log10f.c | 106 ++
.../math/aarch64/advsimd/log1p.c | 61 +
.../math/aarch64/advsimd/log1pf.c | 92 ++
.../math/aarch64/advsimd/log2.c | 123 ++
.../math/aarch64/advsimd/log2f.c | 102 ++
.../math/aarch64/advsimd/logf.c | 88 ++
.../math/aarch64/advsimd/modf.c | 33 +
.../math/aarch64/advsimd/modff.c | 34 +
.../v_pow_1u5.c => math/aarch64/advsimd/pow.c} | 195 +--
.../math/aarch64/advsimd/powf.c | 209 +++
.../math/aarch64/{v_sin.c => advsimd/sin.c} | 26 +-
.../aarch64/advsimd/sincos.c} | 30 +-
.../aarch64/advsimd/sincosf.c} | 30 +-
.../math/aarch64/advsimd/sincospi.c | 44 +
.../math/aarch64/advsimd/sincospif.c | 43 +
.../math/aarch64/{v_sinf.c => advsimd/sinf.c} | 36 +-
.../math/aarch64/advsimd/sinh.c | 80 +
.../v_sinhf_2u3.c => math/aarch64/advsimd/sinhf.c} | 46 +-
.../v_sinpi_3u1.c => math/aarch64/advsimd/sinpi.c} | 25 +-
.../aarch64/advsimd/sinpif.c} | 29 +-
.../v_tan_3u5.c => math/aarch64/advsimd/tan.c} | 28 +-
.../v_tanf_3u5.c => math/aarch64/advsimd/tanf.c} | 35 +-
.../math/aarch64/advsimd/tanh.c | 67 +
.../v_tanhf_2u6.c => math/aarch64/advsimd/tanhf.c} | 44 +-
.../math/aarch64/advsimd/tanpi.c | 88 ++
.../math/aarch64/advsimd/tanpif.c | 70 +
.../math/aarch64/advsimd/v_expf_inline.h | 58 +
.../math/aarch64/advsimd/v_expm1_inline.h | 86 ++
.../math/aarch64/advsimd/v_expm1f_inline.h | 62 +
.../math/aarch64/advsimd/v_log1p_inline.h | 119 ++
.../math/aarch64/advsimd/v_log1pf_inline.h | 94 ++
.../math => math/aarch64/advsimd}/v_log_inline.h | 6 +-
.../{pl/math => math/aarch64/advsimd}/v_math.h | 91 +-
.../aarch64/advsimd/v_poly_f32.h} | 6 +-
.../aarch64/advsimd/v_poly_f64.h} | 6 +-
.../aarch64/advsimd}/v_sincos_common.h | 4 +-
.../aarch64/advsimd}/v_sincosf_common.h | 2 +-
.../math/aarch64/advsimd/v_sincospi_common.h | 64 +
.../math/aarch64/advsimd/v_sincospif_common.h | 57 +
.../math/cospi_3u1.c => math/aarch64/cospi_3u5.c} | 31 +-
.../{pl/math => math/aarch64}/cospif_2u6.c | 31 +-
.../aarch64/experimental}/README.contributors | 7 -
.../math => math/aarch64/experimental}/acos_2u.c | 44 +-
.../math => math/aarch64/experimental}/acosf_1u4.c | 40 +-
.../math => math/aarch64/experimental}/acosh_3u.c | 35 +-
.../aarch64/experimental}/acoshf_2u8.c | 32 +-
.../aarch64/experimental/advsimd/erfinv_25u.c} | 35 +-
.../aarch64/experimental/advsimd/erfinvf_5u.c} | 49 +-
.../aarch64/experimental/advsimd}/v_logf_inline.h | 2 +-
.../math => math/aarch64/experimental}/asin_3u.c | 40 +-
.../math => math/aarch64/experimental}/asin_data.c | 2 +-
.../math => math/aarch64/experimental}/asinf_2u5.c | 36 +-
.../aarch64/experimental}/asinf_data.c | 2 +-
.../math => math/aarch64/experimental}/asinh_2u5.c | 33 +-
.../aarch64/experimental}/asinh_data.c | 17 +-
.../aarch64/experimental}/asinhf_3u5.c | 25 +-
.../math/aarch64/experimental/asinhf_data.c | 15 +
.../math => math/aarch64/experimental}/atan2_2u5.c | 24 +-
.../math => math/aarch64/experimental}/atan2f_3u.c | 24 +-
.../math => math/aarch64/experimental}/atan_2u5.c | 22 +-
.../aarch64/experimental}/atan_common.h | 2 +-
.../math/aarch64/experimental/atan_data.c | 23 +
.../math => math/aarch64/experimental}/atanf_2u9.c | 18 +-
.../aarch64/experimental}/atanf_common.h | 2 +-
.../math/aarch64/experimental/atanf_data.c | 17 +
.../math => math/aarch64/experimental}/atanh_3u.c | 18 +-
.../aarch64/experimental}/atanhf_3u1.c | 16 +-
.../math => math/aarch64/experimental}/cbrt_2u.c | 16 +-
.../math => math/aarch64/experimental}/cbrt_data.c | 2 +-
.../math => math/aarch64/experimental}/cbrtf_1u5.c | 16 +-
.../aarch64/experimental}/cbrtf_data.c | 2 +-
.../math => math/aarch64/experimental}/cosh_2u.c | 34 +-
.../math => math/aarch64/experimental}/coshf_1u9.c | 29 +-
.../math => math/aarch64/experimental}/erf_2u5.c | 21 +-
.../math => math/aarch64/experimental}/erfc_1u8.c | 26 +-
.../math => math/aarch64/experimental}/erfcf_1u7.c | 24 +-
.../math => math/aarch64/experimental}/erff_2u.c | 21 +-
.../aarch64/experimental}/erfinv_24u5.c | 20 +-
.../aarch64/experimental}/erfinvf_4u7.c | 16 +-
.../math => math/aarch64/experimental}/erfinvl.c | 2 +-
.../aarch64/experimental/exp_inline.h} | 22 +-
.../math => math/aarch64/experimental}/expf_data.c | 4 +-
.../math => math/aarch64/experimental}/expm1_2u5.c | 20 +-
.../math/aarch64/experimental/expm1_data.c | 21 +
.../aarch64/experimental}/expm1f_1u6.c | 24 +-
.../aarch64/experimental}/expm1f_data.c | 6 +-
.../math => math/aarch64/experimental}/log10_2u.c | 33 +-
.../aarch64/experimental}/log10_data.c | 4 +-
.../math => math/aarch64/experimental}/log1p_2u.c | 20 +-
.../math/aarch64/experimental/log1p_data.c | 20 +
.../aarch64/experimental}/log1pf_2u1.c | 18 +-
.../aarch64/experimental}/log1pf_data.c | 8 +-
.../math => math/aarch64/experimental}/sinh_3u.c | 27 +-
.../math => math/aarch64/experimental}/sinhf_2u3.c | 32 +-
.../math/aarch64/experimental/sve/erfinv_25u.c | 156 ++
.../math/aarch64/experimental/sve/erfinvf_5u.c | 156 ++
.../aarch64/experimental/sve/powi.c} | 3 +-
.../aarch64/experimental/sve/powif.c} | 3 +-
.../math/aarch64/experimental/sve/sv_logf_inline.h | 51 +
.../math => math/aarch64/experimental}/tanf_3u3.c | 42 +-
.../math => math/aarch64/experimental}/tanf_data.c | 2 +-
.../math => math/aarch64/experimental}/tanh_3u.c | 22 +-
.../math => math/aarch64/experimental}/tanhf_2u6.c | 25 +-
.../math/aarch64/sincospi_4u.c | 158 ++
.../math/aarch64/sincospif_3u2.c | 145 ++
.../math/sinpi_3u.c => math/aarch64/sinpi_3u5.c} | 39 +-
.../{pl/math => math/aarch64}/sinpif_2u5.c | 35 +-
.../math/sv_acos_2u.c => math/aarch64/sve/acos.c} | 24 +-
.../sv_acosf_1u4.c => math/aarch64/sve/acosf.c} | 24 +-
.../math/aarch64/sve/acosh.c | 51 +
.../math/aarch64/sve/acoshf.c | 51 +
.../math/sv_asin_3u.c => math/aarch64/sve/asin.c} | 28 +-
.../sv_asinf_2u5.c => math/aarch64/sve/asinf.c} | 24 +-
.../math/aarch64/sve/asinh.c | 197 +++
.../sv_asinhf_2u5.c => math/aarch64/sve/asinhf.c} | 38 +-
.../math/sv_atan_2u5.c => math/aarch64/sve/atan.c} | 22 +-
.../sv_atan2_2u5.c => math/aarch64/sve/atan2.c} | 54 +-
.../sv_atan2f_3u.c => math/aarch64/sve/atan2f.c} | 55 +-
.../sv_atanf_2u9.c => math/aarch64/sve/atanf.c} | 22 +-
.../sv_atanh_3u3.c => math/aarch64/sve/atanh.c} | 24 +-
.../sv_atanhf_2u8.c => math/aarch64/sve/atanhf.c} | 33 +-
.../math/sv_cbrt_2u.c => math/aarch64/sve/cbrt.c} | 35 +-
.../sv_cbrtf_1u7.c => math/aarch64/sve/cbrtf.c} | 16 +-
.../sv_cexpi_3u5.c => math/aarch64/sve/cexpi.c} | 17 +-
.../sv_cexpif_1u8.c => math/aarch64/sve/cexpif.c} | 17 +-
.../math/sv_cos_2u5.c => math/aarch64/sve/cos.c} | 16 +-
.../math/sv_cosf_2u1.c => math/aarch64/sve/cosf.c} | 16 +-
.../math/sv_cosh_2u.c => math/aarch64/sve/cosh.c} | 34 +-
.../math/aarch64/sve/coshf.c | 62 +
.../sv_cospi_3u2.c => math/aarch64/sve/cospi.c} | 25 +-
.../sv_cospif_2u6.c => math/aarch64/sve/cospif.c} | 25 +-
.../math/sv_erf_2u5.c => math/aarch64/sve/erf.c} | 28 +-
.../math/sv_erfc_1u8.c => math/aarch64/sve/erfc.c} | 24 +-
.../sv_erfcf_1u7.c => math/aarch64/sve/erfcf.c} | 36 +-
.../math/sv_erff_2u.c => math/aarch64/sve/erff.c} | 33 +-
.../math/sv_exp_1u5.c => math/aarch64/sve/exp.c} | 56 +-
.../sv_exp10_1u5.c => math/aarch64/sve/exp10.c} | 43 +-
.../math/aarch64/sve/exp10f.c | 101 ++
.../math/sv_exp2_2u.c => math/aarch64/sve/exp2.c} | 44 +-
.../math/aarch64/sve/exp2f.c | 83 ++
.../arm-optimized-routines/math/aarch64/sve/expf.c | 50 +
.../sv_expm1_2u5.c => math/aarch64/sve/expm1.c} | 20 +-
.../sv_expm1f_1u6.c => math/aarch64/sve/expm1f.c} | 46 +-
.../sv_hypot_1u5.c => math/aarch64/sve/hypot.c} | 20 +-
.../sv_hypotf_1u5.c => math/aarch64/sve/hypotf.c} | 20 +-
.../arm-optimized-routines/math/aarch64/sve/log.c | 97 ++
.../math/aarch64/sve/log10.c | 101 ++
.../sv_log10f_3u5.c => math/aarch64/sve/log10f.c} | 65 +-
.../sv_log1p_2u5.c => math/aarch64/sve/log1p.c} | 24 +-
.../math/aarch64/sve/log1pf.c | 43 +
.../arm-optimized-routines/math/aarch64/sve/log2.c | 96 ++
.../sv_log2f_2u5.c => math/aarch64/sve/log2f.c} | 62 +-
.../math/sv_logf_3u4.c => math/aarch64/sve/logf.c} | 64 +-
.../arm-optimized-routines/math/aarch64/sve/modf.c | 36 +
.../math/aarch64/sve/modff.c | 36 +
.../math/sv_pow_1u5.c => math/aarch64/sve/pow.c} | 295 ++--
.../math/sv_powf_2u6.c => math/aarch64/sve/powf.c} | 157 +-
.../math/sv_sin_3u5.c => math/aarch64/sve/sin.c} | 16 +-
.../sv_sincos_3u5.c => math/aarch64/sve/sincos.c} | 36 +-
.../aarch64/sve/sincosf.c} | 36 +-
.../math/aarch64/sve/sincospi.c | 47 +
.../math/aarch64/sve/sincospif.c | 46 +
.../math/sv_sinf_1u9.c => math/aarch64/sve/sinf.c} | 16 +-
.../math/sv_sinh_3u.c => math/aarch64/sve/sinh.c} | 20 +-
.../sv_sinhf_2u3.c => math/aarch64/sve/sinhf.c} | 21 +-
.../sv_sinpi_3u1.c => math/aarch64/sve/sinpi.c} | 33 +-
.../sv_sinpif_2u5.c => math/aarch64/sve/sinpif.c} | 33 +-
.../math/aarch64/sve/sv_expf_inline.h | 66 +
.../math => math/aarch64/sve}/sv_expm1f_inline.h | 36 +-
.../math => math/aarch64/sve}/sv_log1p_inline.h | 14 +-
.../math/aarch64/sve/sv_log1pf_inline.h | 83 ++
.../math/aarch64/sve/sv_log_inline.h | 83 ++
.../{pl/math => math/aarch64/sve}/sv_math.h | 32 +-
.../aarch64/sve/sv_poly_f32.h} | 8 +-
.../aarch64/sve/sv_poly_f64.h} | 8 +-
.../aarch64/sve/sv_poly_generic.h} | 32 +-
.../math => math/aarch64/sve}/sv_sincos_common.h | 4 +-
.../math => math/aarch64/sve}/sv_sincosf_common.h | 2 +-
.../math/aarch64/sve/sv_sincospi_common.h | 76 +
.../math/aarch64/sve/sv_sincospif_common.h | 82 ++
.../arm-optimized-routines/math/aarch64/sve/tan.c | 131 ++
.../math/sv_tanf_3u5.c => math/aarch64/sve/tanf.c} | 46 +-
.../math/sv_tanh_3u.c => math/aarch64/sve/tanh.c} | 20 +-
.../math/aarch64/sve/tanhf.c | 68 +
.../math/aarch64/sve/tanpi.c | 89 ++
.../math/aarch64/sve/tanpif.c | 68 +
.../math/aarch64/tanpi_2u5.c | 158 ++
.../math/aarch64/tanpif_3u1.c | 145 ++
.../math/erf_data.c => math/aarch64/v_erf_data.c} | 10 +-
.../erfc_data.c => math/aarch64/v_erfc_data.c} | 10 +-
.../erfcf_data.c => math/aarch64/v_erfcf_data.c} | 10 +-
.../erff_data.c => math/aarch64/v_erff_data.c} | 10 +-
.../math/aarch64/v_exp2f_1u.c | 72 -
.../math/aarch64/v_exp_data.c | 99 +-
.../{pl/math => math/aarch64}/v_exp_tail_data.c | 4 +-
.../math/aarch64/v_expf_1u.c | 77 -
.../arm-optimized-routines/math/aarch64/v_log.c | 100 --
.../{pl/math => math/aarch64}/v_log10_data.c | 2 +-
.../{pl/math => math/aarch64}/v_log2_data.c | 2 +-
.../math/aarch64/v_log_data.c | 25 +-
.../arm-optimized-routines/math/aarch64/v_logf.c | 74 -
.../arm-optimized-routines/math/aarch64/v_math.h | 135 --
.../arm-optimized-routines/math/aarch64/v_pow.c | 22 -
.../{pl/math => math/aarch64}/v_pow_exp_data.c | 2 +-
.../{pl/math => math/aarch64}/v_pow_log_data.c | 2 +-
.../arm-optimized-routines/math/aarch64/v_powf.c | 148 --
.../{pl/math => math/aarch64}/v_powf_data.c | 2 +-
contrib/arm-optimized-routines/math/cosf.c | 10 +-
contrib/arm-optimized-routines/math/erf.c | 12 +-
contrib/arm-optimized-routines/math/erff.c | 12 +-
contrib/arm-optimized-routines/math/exp.c | 25 +-
contrib/arm-optimized-routines/math/exp10.c | 22 +-
contrib/arm-optimized-routines/math/exp2.c | 11 +-
contrib/arm-optimized-routines/math/exp2f.c | 10 +-
contrib/arm-optimized-routines/math/expf.c | 10 +-
.../arm-optimized-routines/math/include/mathlib.h | 294 +++-
.../math/include/test_defs.h | 21 +
.../arm-optimized-routines/math/include/test_sig.h | 47 +
contrib/arm-optimized-routines/math/log.c | 11 +-
.../arm-optimized-routines/{pl => }/math/log10f.c | 24 +-
contrib/arm-optimized-routines/math/log2.c | 11 +-
contrib/arm-optimized-routines/math/log2f.c | 11 +-
contrib/arm-optimized-routines/math/logf.c | 11 +-
contrib/arm-optimized-routines/math/logf_data.c | 3 +-
contrib/arm-optimized-routines/math/math_config.h | 261 +++-
.../{pl => }/math/poly_generic.h | 2 +-
.../{pl => }/math/poly_scalar_f32.h | 6 +-
.../{pl => }/math/poly_scalar_f64.h | 6 +-
contrib/arm-optimized-routines/math/pow.c | 22 +-
contrib/arm-optimized-routines/math/powf.c | 12 +-
contrib/arm-optimized-routines/math/sincosf.c | 12 +-
contrib/arm-optimized-routines/math/sincosf.h | 5 +-
contrib/arm-optimized-routines/math/sinf.c | 10 +-
.../arm-optimized-routines/math/test/mathbench.c | 229 ++-
.../math/test/mathbench_funcs.h | 141 +-
.../math/test/mathbench_wrappers.h | 302 +++-
.../arm-optimized-routines/math/test/mathtest.c | 12 +-
.../math/test/rtest/dotest.c | 45 +-
contrib/arm-optimized-routines/math/test/runulp.sh | 311 +---
.../arm-optimized-routines/math/test/test_defs.h | 31 +
.../{pl => }/math/test/testcases/directed/acos.tst | 2 +-
.../math/test/testcases/directed/acosf.tst | 2 +-
.../math/test/testcases/directed/acosh.tst | 2 +-
.../math/test/testcases/directed/acoshf.tst | 2 +-
.../{pl => }/math/test/testcases/directed/asin.tst | 2 +-
.../math/test/testcases/directed/asinf.tst | 2 +-
.../math/test/testcases/directed/asinh.tst | 2 +-
.../math/test/testcases/directed/asinhf.tst | 2 +-
.../{pl => }/math/test/testcases/directed/atan.tst | 2 +-
.../math/test/testcases/directed/atan2.tst | 2 +-
.../math/test/testcases/directed/atan2f.tst | 2 +-
.../math/test/testcases/directed/atanf.tst | 2 +-
.../math/test/testcases/directed/atanh.tst | 2 +-
.../math/test/testcases/directed/atanhf.tst | 2 +-
.../math/test/testcases/directed/cbrtf.tst | 2 +-
.../{pl => }/math/test/testcases/directed/cosh.tst | 2 +-
.../math/test/testcases/directed/coshf.tst | 2 +-
.../{pl => }/math/test/testcases/directed/erfc.tst | 2 +-
.../math/test/testcases/directed/erfcf.tst | 2 +-
.../math/test/testcases/directed/expm1.tst | 2 +-
.../math/test/testcases/directed/expm1f.tst | 2 +-
.../math/test/testcases/directed/log10.tst | 2 +-
.../math/test/testcases/directed/log10f.tst | 2 +-
.../math/test/testcases/directed/log1p.tst | 2 +-
.../math/test/testcases/directed/log1pf.tst | 2 +-
.../{pl => }/math/test/testcases/directed/sinh.tst | 2 +-
.../math/test/testcases/directed/sinhf.tst | 2 +-
.../{pl => }/math/test/testcases/directed/tanf.tst | 2 +-
.../{pl => }/math/test/testcases/directed/tanh.tst | 2 +-
.../math/test/testcases/directed/tanhf.tst | 2 +-
.../math/test/trigpi_references.h | 106 ++
contrib/arm-optimized-routines/math/test/ulp.c | 328 +++--
contrib/arm-optimized-routines/math/test/ulp.h | 41 +-
.../arm-optimized-routines/math/test/ulp_funcs.h | 119 +-
.../math/test/ulp_wrappers.h | 418 +++++-
contrib/arm-optimized-routines/math/tgamma128.c | 2 +
.../{pl => }/math/tools/asin.sollya | 2 +-
.../{pl => }/math/tools/asinf.sollya | 2 +-
.../{pl => }/math/tools/asinh.sollya | 2 +-
.../{pl => }/math/tools/asinhf.sollya | 2 +-
.../{pl => }/math/tools/atan.sollya | 2 +-
.../{pl => }/math/tools/atanf.sollya | 2 +-
.../{pl => }/math/tools/cbrt.sollya | 2 +-
.../{pl => }/math/tools/cbrtf.sollya | 2 +-
.../{pl => }/math/tools/erf.sollya | 2 +-
.../{pl => }/math/tools/erfc.sollya | 2 +-
.../{pl => }/math/tools/erfcf.sollya | 2 +-
.../{pl => }/math/tools/erff.sollya | 2 +-
.../{pl => }/math/tools/exp10.sollya | 2 +-
.../{pl => }/math/tools/expm1.sollya | 2 +-
.../{pl => }/math/tools/expm1f.sollya | 2 +-
.../{pl => }/math/tools/log10.sollya | 2 +-
.../{pl => }/math/tools/log10f.sollya | 2 +-
.../{pl => }/math/tools/log1p.sollya | 2 +-
.../{pl => }/math/tools/log1pf.sollya | 2 +-
.../{pl => }/math/tools/sincos.sollya | 4 +-
.../{pl => }/math/tools/sincosf.sollya | 2 +-
.../{pl => }/math/tools/sinpi.sollya | 2 +-
.../{pl => }/math/tools/tan.sollya | 2 +-
.../{pl => }/math/tools/tanf.sollya | 2 +-
.../arm-optimized-routines/math/tools/tanpi.sollya | 48 +
.../{pl => }/math/tools/v_erf.sollya | 2 +-
.../{pl => }/math/tools/v_erfc.sollya | 2 +-
.../{pl => }/math/tools/v_log10.sollya | 2 +-
.../{pl => }/math/tools/v_log10f.sollya | 2 +-
.../{pl => }/math/tools/v_log2f.sollya | 2 +-
contrib/arm-optimized-routines/networking/Dir.mk | 6 +-
contrib/arm-optimized-routines/pl/Dir.mk | 21 -
contrib/arm-optimized-routines/pl/math/Dir.mk | 216 ---
.../arm-optimized-routines/pl/math/asinhf_data.c | 15 -
contrib/arm-optimized-routines/pl/math/atan_data.c | 20 -
.../arm-optimized-routines/pl/math/atanf_data.c | 15 -
contrib/arm-optimized-routines/pl/math/exp_data.c | 1120 --------------
contrib/arm-optimized-routines/pl/math/expf.c | 76 -
.../arm-optimized-routines/pl/math/expm1_data.c | 21 -
.../pl/math/include/mathlib.h | 206 ---
.../pl/math/include/pl_test.h | 24 -
contrib/arm-optimized-routines/pl/math/log.c | 161 --
.../arm-optimized-routines/pl/math/log1p_data.c | 19 -
contrib/arm-optimized-routines/pl/math/log_data.c | 511 -------
contrib/arm-optimized-routines/pl/math/logf.c | 75 -
contrib/arm-optimized-routines/pl/math/logf_data.c | 36 -
.../arm-optimized-routines/pl/math/math_config.h | 624 --------
contrib/arm-optimized-routines/pl/math/math_err.c | 78 -
contrib/arm-optimized-routines/pl/math/math_errf.c | 78 -
contrib/arm-optimized-routines/pl/math/pl_sig.h | 59 -
.../arm-optimized-routines/pl/math/sv_acosh_3u5.c | 50 -
.../arm-optimized-routines/pl/math/sv_acoshf_2u8.c | 47 -
.../arm-optimized-routines/pl/math/sv_asinh_3u0.c | 129 --
.../arm-optimized-routines/pl/math/sv_coshf_2u.c | 56 -
.../arm-optimized-routines/pl/math/sv_erf_data.c | 1558 --------------------
.../arm-optimized-routines/pl/math/sv_erff_data.c | 1046 -------------
.../arm-optimized-routines/pl/math/sv_exp10f_1u5.c | 87 --
.../arm-optimized-routines/pl/math/sv_exp2f_1u6.c | 80 -
.../arm-optimized-routines/pl/math/sv_expf_2u.c | 86 --
.../pl/math/sv_expf_inline.h | 66 -
.../arm-optimized-routines/pl/math/sv_log10_2u5.c | 75 -
.../arm-optimized-routines/pl/math/sv_log1pf_1u3.c | 97 --
.../pl/math/sv_log1pf_inline.h | 65 -
.../arm-optimized-routines/pl/math/sv_log2_3u.c | 73 -
.../arm-optimized-routines/pl/math/sv_log_2u5.c | 76 -
.../arm-optimized-routines/pl/math/sv_tan_3u5.c | 99 --
.../arm-optimized-routines/pl/math/sv_tanhf_2u6.c | 59 -
.../pl/math/test/mathbench_funcs.h | 87 --
.../pl/math/test/mathbench_wrappers.h | 206 ---
.../arm-optimized-routines/pl/math/test/pl_test.h | 39 -
.../arm-optimized-routines/pl/math/test/runulp.sh | 78 -
.../pl/math/test/testcases/directed/erff.tst | 17 -
.../pl/math/test/testcases/directed/log2.tst | 21 -
.../pl/math/test/testcases/directed/log2f.tst | 27 -
.../pl/math/test/testcases/random/double.tst | 6 -
.../pl/math/test/testcases/random/float.tst | 8 -
.../pl/math/test/ulp_funcs.h | 70 -
.../pl/math/test/ulp_wrappers.h | 140 --
.../pl/math/trigpi_references.c | 57 -
.../arm-optimized-routines/pl/math/v_asinh_3u5.c | 175 ---
.../arm-optimized-routines/pl/math/v_asinhf_2u7.c | 80 -
.../arm-optimized-routines/pl/math/v_atan2_3u.c | 121 --
.../arm-optimized-routines/pl/math/v_exp_data.c | 55 -
.../arm-optimized-routines/pl/math/v_exp_tail.h | 21 -
.../pl/math/v_exp_tail_inline.h | 102 --
.../arm-optimized-routines/pl/math/v_expf_inline.h | 60 -
.../arm-optimized-routines/pl/math/v_expm1_2u5.c | 118 --
.../arm-optimized-routines/pl/math/v_expm1f_1u6.c | 117 --
.../pl/math/v_expm1f_inline.h | 63 -
.../arm-optimized-routines/pl/math/v_log10_2u5.c | 120 --
.../arm-optimized-routines/pl/math/v_log10f_3u5.c | 82 --
.../arm-optimized-routines/pl/math/v_log1p_2u5.c | 128 --
.../pl/math/v_log1p_inline.h | 91 --
.../arm-optimized-routines/pl/math/v_log1pf_2u1.c | 126 --
.../pl/math/v_log1pf_inline.h | 67 -
contrib/arm-optimized-routines/pl/math/v_log2_3u.c | 109 --
.../arm-optimized-routines/pl/math/v_log2f_2u5.c | 77 -
.../arm-optimized-routines/pl/math/v_log_data.c | 161 --
contrib/arm-optimized-routines/pl/math/v_sinh_3u.c | 118 --
contrib/arm-optimized-routines/pl/math/v_tanh_3u.c | 106 --
contrib/arm-optimized-routines/string/Dir.mk | 9 +-
.../string/aarch64/__mtag_tag_region.S | 3 -
.../string/aarch64/__mtag_tag_zero_region.S | 3 -
.../string/aarch64/asmdefs.h | 37 -
.../string/aarch64/{ => experimental}/memchr-sve.S | 8 +-
.../string/aarch64/{ => experimental}/memcmp-sve.S | 9 +-
.../string/aarch64/{ => experimental}/stpcpy-sve.S | 0
.../string/aarch64/{ => experimental}/strchr-sve.S | 7 +-
.../aarch64/{ => experimental}/strchrnul-sve.S | 0
.../string/aarch64/{ => experimental}/strcmp-sve.S | 8 +-
.../string/aarch64/{ => experimental}/strcpy-sve.S | 8 +-
.../string/aarch64/{ => experimental}/strlen-sve.S | 7 +-
.../aarch64/{ => experimental}/strncmp-sve.S | 9 +-
.../aarch64/{ => experimental}/strnlen-sve.S | 8 +-
.../aarch64/{ => experimental}/strrchr-sve.S | 7 +-
.../string/aarch64/memchr-mte.S | 2 -
.../arm-optimized-routines/string/aarch64/memchr.S | 2 -
.../arm-optimized-routines/string/aarch64/memcmp.S | 4 -
.../string/aarch64/memcpy-advsimd.S | 3 -
.../string/aarch64/memcpy-mops.S | 4 -
.../string/aarch64/memcpy-sve.S | 8 -
.../arm-optimized-routines/string/aarch64/memcpy.S | 3 -
.../string/aarch64/memmove-mops.S | 4 -
.../string/aarch64/memrchr.S | 1 -
.../string/aarch64/memset-mops.S | 3 -
.../string/aarch64/memset-sve.S | 114 ++
.../arm-optimized-routines/string/aarch64/memset.S | 104 +-
.../string/aarch64/strchr-mte.S | 1 -
.../arm-optimized-routines/string/aarch64/strchr.S | 1 -
.../string/aarch64/strchrnul-mte.S | 1 -
.../string/aarch64/strchrnul.S | 1 -
.../arm-optimized-routines/string/aarch64/strcmp.S | 2 -
.../arm-optimized-routines/string/aarch64/strcpy.S | 2 -
.../string/aarch64/strlen-mte.S | 38 +-
.../arm-optimized-routines/string/aarch64/strlen.S | 1 -
.../string/aarch64/strncmp.S | 3 -
.../string/aarch64/strnlen.S | 2 -
.../string/aarch64/strrchr-mte.S | 1 -
.../string/aarch64/strrchr.S | 1 -
.../arm-optimized-routines/string/bench/memcpy.c | 239 ++-
.../arm-optimized-routines/string/bench/memset.c | 141 +-
.../arm-optimized-routines/string/bench/strlen.c | 206 +--
.../string/include/benchlib.h | 31 +
.../string/include/stringlib.h | 3 +-
.../arm-optimized-routines/string/test/memcpy.c | 2 -
.../arm-optimized-routines/string/test/memmove.c | 2 -
.../arm-optimized-routines/string/test/memset.c | 3 +
472 files changed, 11852 insertions(+), 14525 deletions(-)
diff --cc contrib/arm-optimized-routines/MAINTAINERS
index 6c5823a8dbce,000000000000..06cceb8f2501
mode 100644,000000..100644
--- a/contrib/arm-optimized-routines/MAINTAINERS
+++ b/contrib/arm-optimized-routines/MAINTAINERS
@@@ -1,12 -1,0 +1,9 @@@
+/
- Szabolcs Nagy <szabolcs.nagy@arm.com>
++ Tamar Christina <tamar.christina@arm.com>
+math/
- Szabolcs Nagy <szabolcs.nagy@arm.com>
- networking/
- Szabolcs Nagy <szabolcs.nagy@arm.com>
- pl/
+ Pierre Blanchard <pierre.blanchard@arm.com>
+ Joe Ramsay <joe.ramsay@arm.com>
++networking/
++ Ola Liljedahl <ola.liljedahl@arm.com>
+string/
- Szabolcs Nagy <szabolcs.nagy@arm.com>
+ Wilco Dijkstra <wilco.dijkstra@arm.com>
diff --cc contrib/arm-optimized-routines/Makefile
index c487896728c2,000000000000..e7503dbd2f60
mode 100644,000000..100644
--- a/contrib/arm-optimized-routines/Makefile
+++ b/contrib/arm-optimized-routines/Makefile
@@@ -1,92 -1,0 +1,100 @@@
+# Makefile - requires GNU make
+#
- # Copyright (c) 2018-2022, Arm Limited.
++# Copyright (c) 2018-2024, Arm Limited.
+# SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception
+
+srcdir = .
+prefix = /usr
+bindir = $(prefix)/bin
+libdir = $(prefix)/lib
+includedir = $(prefix)/include
+
+# Configure these in config.mk, do not make changes in this file.
+SUBS = math string networking
- PLSUBS = math
+HOST_CC = cc
+HOST_CFLAGS = -std=c99 -O2
+HOST_LDFLAGS =
+HOST_LDLIBS =
+EMULATOR =
+CPPFLAGS =
+CFLAGS = -std=c99 -O2
+CFLAGS_SHARED = -fPIC
+CFLAGS_ALL = -Ibuild/include $(CPPFLAGS) $(CFLAGS)
- CFLAGS_PL = -Ibuild/pl/include $(CPPFLAGS) $(CFLAGS) -DPL
+LDFLAGS =
+LDLIBS =
+AR = $(CROSS_COMPILE)ar
+RANLIB = $(CROSS_COMPILE)ranlib
+INSTALL = install
++# Detect OS.
++# Assume Unix environment: Linux, Darwin, or Msys.
++OS := $(shell uname -s)
++OS := $(patsubst MSYS%,Msys,$(OS))
++# Following math dependencies can be adjusted in config file
++# if necessary, e.g. for Msys.
++libm-libs = -lm
++libc-libs = -lc
++mpfr-libs = -lmpfr
++gmp-libs = -lgmp
++mpc-libs = -lmpc
+
+all:
+
+-include config.mk
+
+$(foreach sub,$(SUBS),$(eval include $(srcdir)/$(sub)/Dir.mk))
+
+# Required targets of subproject foo:
+# all-foo
+# check-foo
+# clean-foo
+# install-foo
+# Required make variables of subproject foo:
+# foo-files: Built files (all in build/).
+# Make variables used by subproject foo:
+# foo-...: Variables defined in foo/Dir.mk or by config.mk.
+
+all: $(SUBS:%=all-%)
+
+ALL_FILES = $(foreach sub,$(SUBS),$($(sub)-files))
+DIRS = $(sort $(patsubst %/,%,$(dir $(ALL_FILES))))
+$(ALL_FILES): | $(DIRS)
+$(DIRS):
+ mkdir -p $@
+
+$(filter %.os,$(ALL_FILES)): CFLAGS_ALL += $(CFLAGS_SHARED)
- $(filter %.os,$(ALL_FILES)): CFLAGS_PL += $(CFLAGS_SHARED)
+
+build/%.o: $(srcdir)/%.S
+ $(CC) $(CFLAGS_ALL) -c -o $@ $<
+
+build/%.o: $(srcdir)/%.c
+ $(CC) $(CFLAGS_ALL) -c -o $@ $<
+
+build/%.os: $(srcdir)/%.S
+ $(CC) $(CFLAGS_ALL) -c -o $@ $<
+
+build/%.os: $(srcdir)/%.c
+ $(CC) $(CFLAGS_ALL) -c -o $@ $<
+
+clean: $(SUBS:%=clean-%)
+ rm -rf build
+
+distclean: clean
+ rm -f config.mk
+
+$(DESTDIR)$(bindir)/%: build/bin/%
+ $(INSTALL) -D $< $@
+
+$(DESTDIR)$(libdir)/%.so: build/lib/%.so
+ $(INSTALL) -D $< $@
+
+$(DESTDIR)$(libdir)/%: build/lib/%
+ $(INSTALL) -m 644 -D $< $@
+
+$(DESTDIR)$(includedir)/%: build/include/%
+ $(INSTALL) -m 644 -D $< $@
+
+install: $(SUBS:%=install-%)
+
+check: $(SUBS:%=check-%)
+
+.PHONY: all clean distclean install check
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/asinh.c
index 000000000000,550302826bd9..550302826bd9
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/asinh.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/asinh.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/asinhf.c
index 000000000000,6a96f6ee9f4b..6a96f6ee9f4b
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/asinhf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/asinhf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/atan2.c
index 000000000000,18c4b70b92f6..18c4b70b92f6
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/atan2.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/atan2.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/exp2f_1u.c
index 000000000000,1f8e89ab658f..1f8e89ab658f
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/exp2f_1u.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/exp2f_1u.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/expf_1u.c
index 000000000000,4e114d810e08..4e114d810e08
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/expf_1u.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/expf_1u.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/expm1.c
index 000000000000,7535a1830427..7535a1830427
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/expm1.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/expm1.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/expm1f.c
index 000000000000,6d4431dcd8a5..6d4431dcd8a5
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/expm1f.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/expm1f.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/log.c
index 000000000000,94e3f4482079..94e3f4482079
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/log.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/log.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/log10.c
index 000000000000,c2b8f1c54f0e..c2b8f1c54f0e
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/log10.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/log10.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/log10f.c
index 000000000000,907c1051e086..907c1051e086
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/log10f.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/log10f.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/log1p.c
index 000000000000,42a0c5793920..42a0c5793920
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/log1p.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/log1p.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/log1pf.c
index 000000000000,94b90249128f..94b90249128f
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/log1pf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/log1pf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/log2.c
index 000000000000,7d2e44dad2c9..7d2e44dad2c9
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/log2.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/log2.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/log2f.c
index 000000000000,3053c64bc552..3053c64bc552
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/log2f.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/log2f.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/logf.c
index 000000000000,84705fad05ee..84705fad05ee
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/logf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/logf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/modf.c
index 000000000000,da2fcbff8514..da2fcbff8514
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/modf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/modf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/modff.c
index 000000000000,0a646b24cb1a..0a646b24cb1a
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/modff.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/modff.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/powf.c
index 000000000000,47f74cf38ab0..47f74cf38ab0
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/powf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/powf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/sincospi.c
index 000000000000,fd425202ce67..fd425202ce67
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/sincospi.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/sincospi.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/sincospif.c
index 000000000000,760ea3d4f5e1..760ea3d4f5e1
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/sincospif.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/sincospif.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/sinh.c
index 000000000000,f65ccd0c6270..f65ccd0c6270
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/sinh.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/sinh.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/tanh.c
index 000000000000,3dc6e5527ffc..3dc6e5527ffc
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/tanh.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/tanh.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/tanpi.c
index 000000000000,16de00ad5556..16de00ad5556
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/tanpi.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/tanpi.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/tanpif.c
index 000000000000,7bd6d206819f..7bd6d206819f
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/tanpif.c
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/tanpif.c
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/v_expf_inline.h
index 000000000000,797d217820c3..797d217820c3
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/v_expf_inline.h
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/v_expf_inline.h
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/v_expm1_inline.h
index 000000000000,82d2e9415d93..82d2e9415d93
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/v_expm1_inline.h
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/v_expm1_inline.h
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/v_expm1f_inline.h
index 000000000000,463b07aa7705..463b07aa7705
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/v_expm1f_inline.h
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/v_expm1f_inline.h
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/v_log1p_inline.h
index 000000000000,ef906ae4b603..ef906ae4b603
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/v_log1p_inline.h
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/v_log1p_inline.h
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/v_log1pf_inline.h
index 000000000000,e81fa24486ae..e81fa24486ae
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/v_log1pf_inline.h
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/v_log1pf_inline.h
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/v_sincospi_common.h
index 000000000000,438b141b9174..438b141b9174
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/v_sincospi_common.h
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/v_sincospi_common.h
diff --cc contrib/arm-optimized-routines/math/aarch64/advsimd/v_sincospif_common.h
index 000000000000,8d4177dd871e..8d4177dd871e
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/advsimd/v_sincospif_common.h
+++ b/contrib/arm-optimized-routines/math/aarch64/advsimd/v_sincospif_common.h
diff --cc contrib/arm-optimized-routines/math/aarch64/experimental/asinhf_data.c
index 000000000000,5ed261ba835b..5ed261ba835b
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/experimental/asinhf_data.c
+++ b/contrib/arm-optimized-routines/math/aarch64/experimental/asinhf_data.c
diff --cc contrib/arm-optimized-routines/math/aarch64/experimental/atan_data.c
index 000000000000,5d24fa912d02..5d24fa912d02
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/experimental/atan_data.c
+++ b/contrib/arm-optimized-routines/math/aarch64/experimental/atan_data.c
diff --cc contrib/arm-optimized-routines/math/aarch64/experimental/atanf_data.c
index 000000000000,f4d607c2a12d..f4d607c2a12d
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/experimental/atanf_data.c
+++ b/contrib/arm-optimized-routines/math/aarch64/experimental/atanf_data.c
diff --cc contrib/arm-optimized-routines/math/aarch64/experimental/expm1_data.c
index 000000000000,955895056924..955895056924
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/experimental/expm1_data.c
+++ b/contrib/arm-optimized-routines/math/aarch64/experimental/expm1_data.c
diff --cc contrib/arm-optimized-routines/math/aarch64/experimental/log1p_data.c
index 000000000000,91a7196d795f..91a7196d795f
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/experimental/log1p_data.c
+++ b/contrib/arm-optimized-routines/math/aarch64/experimental/log1p_data.c
diff --cc contrib/arm-optimized-routines/math/aarch64/experimental/sve/erfinv_25u.c
index 000000000000,4de6d08ab80f..4de6d08ab80f
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/experimental/sve/erfinv_25u.c
+++ b/contrib/arm-optimized-routines/math/aarch64/experimental/sve/erfinv_25u.c
diff --cc contrib/arm-optimized-routines/math/aarch64/experimental/sve/erfinvf_5u.c
index 000000000000,2c81c4e0b9a2..2c81c4e0b9a2
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/experimental/sve/erfinvf_5u.c
+++ b/contrib/arm-optimized-routines/math/aarch64/experimental/sve/erfinvf_5u.c
diff --cc contrib/arm-optimized-routines/math/aarch64/experimental/sve/sv_logf_inline.h
index 000000000000,c317a23f6fc3..c317a23f6fc3
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/experimental/sve/sv_logf_inline.h
+++ b/contrib/arm-optimized-routines/math/aarch64/experimental/sve/sv_logf_inline.h
diff --cc contrib/arm-optimized-routines/math/aarch64/sincospi_4u.c
index 000000000000,2a944bed23e1..2a944bed23e1
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sincospi_4u.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sincospi_4u.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sincospif_3u2.c
index 000000000000,b79694d2ac65..b79694d2ac65
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sincospif_3u2.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sincospif_3u2.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/acosh.c
index 000000000000,d54c21922e1b..d54c21922e1b
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/acosh.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/acosh.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/acoshf.c
index 000000000000,f48ef724e8eb..f48ef724e8eb
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/acoshf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/acoshf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/asinh.c
index 000000000000,5574116de1e1..5574116de1e1
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/asinh.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/asinh.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/coshf.c
index 000000000000,b79fed2374b5..b79fed2374b5
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/coshf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/coshf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/exp10f.c
index 000000000000,8679df87702f..8679df87702f
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/exp10f.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/exp10f.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/exp2f.c
index 000000000000,f4c1d0ae607e..f4c1d0ae607e
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/exp2f.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/exp2f.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/expf.c
index 000000000000,11528abdbbaf..11528abdbbaf
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/expf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/expf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/log.c
index 000000000000,c612df48c1fd..c612df48c1fd
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/log.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/log.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/log10.c
index 000000000000,5af142d79f55..5af142d79f55
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/log10.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/log10.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/log1pf.c
index 000000000000,77ae6218f931..77ae6218f931
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/log1pf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/log1pf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/log2.c
index 000000000000,11c65c1b2963..11c65c1b2963
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/log2.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/log2.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/modf.c
index 000000000000,5944c7d37c4c..5944c7d37c4c
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/modf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/modf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/modff.c
index 000000000000,ad7ce4e2c88f..ad7ce4e2c88f
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/modff.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/modff.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/sincospi.c
index 000000000000,d06ca8cc4165..d06ca8cc4165
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/sincospi.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/sincospi.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/sincospif.c
index 000000000000,20476f9346e9..20476f9346e9
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/sincospif.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/sincospif.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/sv_expf_inline.h
index 000000000000,6054e65bb202..6054e65bb202
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/sv_expf_inline.h
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/sv_expf_inline.h
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/sv_log1pf_inline.h
index 000000000000,238079c61a5b..238079c61a5b
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/sv_log1pf_inline.h
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/sv_log1pf_inline.h
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/sv_log_inline.h
index 000000000000,a1b169a0b727..a1b169a0b727
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/sv_log_inline.h
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/sv_log_inline.h
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/sv_sincospi_common.h
index 000000000000,672ebbc8e855..672ebbc8e855
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/sv_sincospi_common.h
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/sv_sincospi_common.h
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/sv_sincospif_common.h
index 000000000000,4b9101de74ed..4b9101de74ed
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/sv_sincospif_common.h
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/sv_sincospif_common.h
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/tan.c
index 000000000000,1dfc5c422d5e..1dfc5c422d5e
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/tan.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/tan.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/tanhf.c
index 000000000000,9007e7badb0d..9007e7badb0d
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/tanhf.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/tanhf.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/tanpi.c
index 000000000000,d9e7d2487d53..d9e7d2487d53
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/tanpi.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/tanpi.c
diff --cc contrib/arm-optimized-routines/math/aarch64/sve/tanpif.c
index 000000000000,2ba968a799fe..2ba968a799fe
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/sve/tanpif.c
+++ b/contrib/arm-optimized-routines/math/aarch64/sve/tanpif.c
diff --cc contrib/arm-optimized-routines/math/aarch64/tanpi_2u5.c
index 000000000000,154b9faf454d..154b9faf454d
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/tanpi_2u5.c
+++ b/contrib/arm-optimized-routines/math/aarch64/tanpi_2u5.c
diff --cc contrib/arm-optimized-routines/math/aarch64/tanpif_3u1.c
index 000000000000,8cd66594c290..8cd66594c290
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/aarch64/tanpif_3u1.c
+++ b/contrib/arm-optimized-routines/math/aarch64/tanpif_3u1.c
diff --cc contrib/arm-optimized-routines/math/include/test_defs.h
index 000000000000,2fe66fa6f14c..2fe66fa6f14c
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/include/test_defs.h
+++ b/contrib/arm-optimized-routines/math/include/test_defs.h
diff --cc contrib/arm-optimized-routines/math/include/test_sig.h
index 000000000000,a967829098d6..a967829098d6
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/include/test_sig.h
+++ b/contrib/arm-optimized-routines/math/include/test_sig.h
diff --cc contrib/arm-optimized-routines/math/test/test_defs.h
index 000000000000,d0656c9e1d84..d0656c9e1d84
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/test/test_defs.h
+++ b/contrib/arm-optimized-routines/math/test/test_defs.h
diff --cc contrib/arm-optimized-routines/math/test/trigpi_references.h
index 000000000000,3dc5a3173436..3dc5a3173436
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/test/trigpi_references.h
+++ b/contrib/arm-optimized-routines/math/test/trigpi_references.h
diff --cc contrib/arm-optimized-routines/math/tools/tanpi.sollya
index 000000000000,8edbc359ab8e..8edbc359ab8e
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/math/tools/tanpi.sollya
+++ b/contrib/arm-optimized-routines/math/tools/tanpi.sollya
diff --cc contrib/arm-optimized-routines/string/aarch64/memset-sve.S
index 000000000000,efaeaece284e..efaeaece284e
mode 000000,100644..100644
--- a/contrib/arm-optimized-routines/string/aarch64/memset-sve.S
+++ b/contrib/arm-optimized-routines/string/aarch64/memset-sve.S