xref: /freebsd/contrib/arm-optimized-routines/pl/math/asinf_data.c (revision 5a02ffc32e777041dd2dad4e651ed2a0865a0a5d)
1*5a02ffc3SAndrew Turner /*
2*5a02ffc3SAndrew Turner  * Coefficients for single-precision asin(x) function.
3*5a02ffc3SAndrew Turner  *
4*5a02ffc3SAndrew Turner  * Copyright (c) 2023, Arm Limited.
5*5a02ffc3SAndrew Turner  * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception
6*5a02ffc3SAndrew Turner  */
7*5a02ffc3SAndrew Turner 
8*5a02ffc3SAndrew Turner #include "math_config.h"
9*5a02ffc3SAndrew Turner 
10*5a02ffc3SAndrew Turner /* Approximate asinf(x) directly in [0x1p-24, 0.25]. See for tools/asinf.sollya
11*5a02ffc3SAndrew Turner    for these coeffs were generated.  */
12*5a02ffc3SAndrew Turner const float __asinf_poly[] = {
13*5a02ffc3SAndrew Turner   /* Polynomial approximation of  (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x))  on
14*5a02ffc3SAndrew Turner      [ 0x1p-24 0x1p-2 ] order = 4 rel error: 0x1.00a23bbp-29 .  */
15*5a02ffc3SAndrew Turner   0x1.55555ep-3, 0x1.33261ap-4, 0x1.70d7dcp-5, 0x1.b059dp-6, 0x1.3af7d8p-5,
16*5a02ffc3SAndrew Turner };
17