mirror of
https://github.com/intel/llvm.git
synced 2026-01-25 10:55:58 +08:00
[libc][math][c23] Implement C23 math function asinpif16 (#146226)
The function is implemented using the following Taylor series that's generated using [python-sympy](https://www.sympy.org/en/index.html), and it is very accurate for |x| $$\in [0, 0.5]$$ and has been verified using Geogebra. The range reduction is used for the rest range (0.5, 1]. $$ \frac{\arcsin(x)}{\pi} \approx \begin{aligned}[t] & 0.318309886183791x \\ & + 0.0530516476972984x^3 \\ & + 0.0238732414637843x^5 \\ & + 0.0142102627760621x^7 \\ & + 0.00967087327815336x^9 \\ & + 0.00712127941391293x^{11} \\ & + 0.00552355646848375x^{13} \\ & + 0.00444514782463692x^{15} \\ & + 0.00367705242846804x^{17} \\ & + 0.00310721681820837x^{19} + O(x^{21}) \end{aligned} $$ ## Geogebra graph  Closes #132210
This commit is contained in:
@@ -79,6 +79,13 @@ functions:
|
||||
arguments:
|
||||
- type: _Float16
|
||||
guard: LIBC_TYPES_HAS_FLOAT16
|
||||
- name: asinpif16
|
||||
standards:
|
||||
- stdc
|
||||
return_type: _Float16
|
||||
arguments:
|
||||
- type: _Float16
|
||||
guard: LIBC_TYPES_HAS_FLOAT16
|
||||
- name: atan
|
||||
standards:
|
||||
- stdc
|
||||
|
||||
Reference in New Issue
Block a user