1*f3087befSAndrew Turner /* 2*f3087befSAndrew Turner * Coefficients for single-precision asin(x) function. 3*f3087befSAndrew Turner * 4*f3087befSAndrew Turner * Copyright (c) 2023-2024, Arm Limited. 5*f3087befSAndrew Turner * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception 6*f3087befSAndrew Turner */ 7*f3087befSAndrew Turner 8*f3087befSAndrew Turner #include "math_config.h" 9*f3087befSAndrew Turner 10*f3087befSAndrew Turner /* Approximate asin(x) directly in [0x1p-106, 0.25]. See tools/asin.sollya 11*f3087befSAndrew Turner for these coeffcients were generated. */ 12*f3087befSAndrew Turner const double __asin_poly[] = { 13*f3087befSAndrew Turner /* Polynomial approximation of (asin(sqrt(x)) - sqrt(x)) / (x * sqrt(x)) 14*f3087befSAndrew Turner on [ 0x1p-106, 0x1p-2 ], relative error: 0x1.c3d8e169p-57. */ 15*f3087befSAndrew Turner 0x1.555555555554ep-3, 0x1.3333333337233p-4, 0x1.6db6db67f6d9fp-5, 16*f3087befSAndrew Turner 0x1.f1c71fbd29fbbp-6, 0x1.6e8b264d467d6p-6, 0x1.1c5997c357e9dp-6, 17*f3087befSAndrew Turner 0x1.c86a22cd9389dp-7, 0x1.856073c22ebbep-7, 0x1.fd1151acb6bedp-8, 18*f3087befSAndrew Turner 0x1.087182f799c1dp-6, -0x1.6602748120927p-7, 0x1.cfa0dd1f9478p-6, 19*f3087befSAndrew Turner }; 20