xref: /freebsd/contrib/arm-optimized-routines/math/test/mathbench_funcs.h (revision 59c8e88e72633afbc47a4ace0d2170d00d51f7dc)
1 /*
2  * Function entries for mathbench.
3  *
4  * Copyright (c) 2022-2023, Arm Limited.
5  * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception
6  */
7 /* clang-format off */
8 D (exp, -9.9, 9.9)
9 D (exp, 0.5, 1.0)
10 D (exp10, -9.9, 9.9)
11 D (exp2, -9.9, 9.9)
12 D (log, 0.01, 11.1)
13 D (log, 0.999, 1.001)
14 D (log2, 0.01, 11.1)
15 D (log2, 0.999, 1.001)
16 {"pow", 'd', 0, 0.01, 11.1, {.d = xypow}},
17 D (xpow, 0.01, 11.1)
18 D (ypow, -9.9, 9.9)
19 D (erf, -6.0, 6.0)
20 
21 F (expf, -9.9, 9.9)
22 F (exp2f, -9.9, 9.9)
23 F (logf, 0.01, 11.1)
24 F (log2f, 0.01, 11.1)
25 {"powf", 'f', 0, 0.01, 11.1, {.f = xypowf}},
26 F (xpowf, 0.01, 11.1)
27 F (ypowf, -9.9, 9.9)
28 {"sincosf", 'f', 0, 0.1, 0.7, {.f = sincosf_wrap}},
29 {"sincosf", 'f', 0, 0.8, 3.1, {.f = sincosf_wrap}},
30 {"sincosf", 'f', 0, -3.1, 3.1, {.f = sincosf_wrap}},
31 {"sincosf", 'f', 0, 3.3, 33.3, {.f = sincosf_wrap}},
32 {"sincosf", 'f', 0, 100, 1000, {.f = sincosf_wrap}},
33 {"sincosf", 'f', 0, 1e6, 1e32, {.f = sincosf_wrap}},
34 F (sinf, 0.1, 0.7)
35 F (sinf, 0.8, 3.1)
36 F (sinf, -3.1, 3.1)
37 F (sinf, 3.3, 33.3)
38 F (sinf, 100, 1000)
39 F (sinf, 1e6, 1e32)
40 F (cosf, 0.1, 0.7)
41 F (cosf, 0.8, 3.1)
42 F (cosf, -3.1, 3.1)
43 F (cosf, 3.3, 33.3)
44 F (cosf, 100, 1000)
45 F (cosf, 1e6, 1e32)
46 F (erff, -4.0, 4.0)
47 #ifdef __vpcs
48 VND (_ZGVnN2v_exp, -9.9, 9.9)
49 VND (_ZGVnN2v_log, 0.01, 11.1)
50 {"_ZGVnN2vv_pow", 'd', 'n', 0.01, 11.1, {.vnd = xy_Z_pow}},
51 VND (_ZGVnN2v_sin, -3.1, 3.1)
52 VND (_ZGVnN2v_cos, -3.1, 3.1)
53 VNF (_ZGVnN4v_expf, -9.9, 9.9)
54 VNF (_ZGVnN4v_expf_1u, -9.9, 9.9)
55 VNF (_ZGVnN4v_exp2f, -9.9, 9.9)
56 VNF (_ZGVnN4v_exp2f_1u, -9.9, 9.9)
57 VNF (_ZGVnN4v_logf, 0.01, 11.1)
58 {"_ZGVnN4vv_powf", 'f', 'n', 0.01, 11.1, {.vnf = xy_Z_powf}},
59 VNF (_ZGVnN4v_sinf, -3.1, 3.1)
60 VNF (_ZGVnN4v_cosf, -3.1, 3.1)
61 #endif
62   /* clang-format on */
63