1 // Copyright 2019 Google LLC
2 //
3 // This source code is licensed under the BSD-style license found in the
4 // LICENSE file in the root directory of this source tree.
5 
6 #pragma once
7 
8 #include <stdint.h>
9 #include <stddef.h>
10 
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14 
15 typedef void (*xnn_f32_unary_math_function)(
16   size_t n,
17   const float* input,
18   float* output);
19 
20 typedef void (*xnn_f32_ext_unary_math_function)(
21   size_t n,
22   const float* input,
23   float* output_mantissa,
24   float* output_exponent);
25 
26 #define DECLARE_F32_UNARY_MATH_FUNCTION(fn_name) \
27   void fn_name(                                  \
28     size_t n,                                    \
29     const float* input,                          \
30     float* output);
31 
32 #define DECLARE_F32_EXT_UNARY_MATH_FUNCTION(fn_name) \
33   void fn_name(                                      \
34     size_t n,                                        \
35     const float* input,                              \
36     float* output_mantissa,                          \
37     float* output_exponent);
38 
39 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundne__neon_addsub)
40 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundne__neonv8)
41 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundne__sse_addsub)
42 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundne__sse2_cvt)
43 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundne__sse41)
44 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundne__wasmsimd_addsub)
45 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundne__scalar_addsub)
46 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundne__scalar_nearbyint)
47 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundne__scalar_rint)
48 
49 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__neon_addsub)
50 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__neon_cvt)
51 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__neonv8)
52 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__sse_addsub)
53 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__sse2_cvt)
54 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__sse41)
55 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__wasmsimd_addsub)
56 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__wasmsimd_cvt)
57 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__scalar_addsub)
58 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__scalar_cvt)
59 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundd__scalar_floor)
60 
61 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__neon_addsub)
62 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__neon_cvt)
63 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__neonv8)
64 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__sse_addsub)
65 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__sse2_cvt)
66 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__sse41)
67 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__wasmsimd_addsub)
68 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__wasmsimd_cvt)
69 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__scalar_addsub)
70 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__scalar_ceil)
71 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundu__scalar_cvt)
72 
73 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__neon_addsub)
74 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__neon_cvt)
75 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__neonv8)
76 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__sse_addsub)
77 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__sse2_cvt)
78 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__sse41)
79 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__wasmsimd_addsub)
80 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__wasmsimd_cvt)
81 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__scalar_addsub)
82 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__scalar_cvt)
83 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_roundz__scalar_trunc)
84 
85 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__neonfma_rr2_lut64_p2)
86 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__neonfma_rr2_p5)
87 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__sse2_rr2_p5)
88 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__sse2_rr2_lut64_p2)
89 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx_rr2_p5)
90 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx2_rr2_p5)
91 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx2_rr2_lut8_p3_perm)
92 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx2_rr2_lut8_p4_perm)
93 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx512f_rr2_p5)
94 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx512f_rr2_p5_scalef)
95 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx512f_rr2_lut16_p3_perm)
96 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx512f_rr2_lut16_p3_perm_scalef)
97 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx512f_rr2_lut32_p2_perm2)
98 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_exp__avx512f_rr2_lut32_p2_perm2_scalef)
99 
100 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expminus__neonfma_rr2_p5)
101 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expminus__neonfma_rr2_lut64_p2)
102 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expminus__neonfma_rr2_lut2048_p1)
103 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expminus__sse2_rr2_p5)
104 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expminus__avx2_rr2_p5)
105 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expminus__scalar_rr2_p5)
106 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expminus__scalar_rr2_lut64_p2)
107 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expminus__scalar_rr2_lut2048_p1)
108 
109 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__neon_rr2_lut16_p3)
110 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__neon_rr2_p6)
111 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__neonfma_rr1_lut16_p3)
112 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__neonfma_rr1_p6)
113 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__sse2_rr2_lut16_p3)
114 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__sse2_rr2_p6)
115 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__avx_rr2_lut4_p4_perm)
116 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__avx_rr2_lut16_p3)
117 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__avx_rr2_p6)
118 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__avx2_rr1_lut4_p4_perm)
119 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__avx2_rr1_lut8_p4_perm)
120 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__avx2_rr1_lut16_p3_gather)
121 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__avx2_rr1_p6)
122 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__avx512f_rr1_lut16_p3_perm)
123 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__avx512f_rr1_p6)
124 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__wasmsimd_rr2_lut16_p3_andnot)
125 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__wasmsimd_rr2_lut16_p3_max)
126 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__wasmsimd_rr2_p6_andnot)
127 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__wasmsimd_rr2_p6_max)
128 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__scalar_rr2_lut4_p4)
129 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__scalar_rr2_lut8_p3)
130 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__scalar_rr2_lut8_p4)
131 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__scalar_rr2_lut16_p3)
132 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__scalar_rr2_lut16_p4)
133 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__scalar_rr2_p5)
134 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_expm1minus__scalar_rr2_p6)
135 
136 DECLARE_F32_EXT_UNARY_MATH_FUNCTION(xnn_math_f32_extexp__avx2_p5)
137 DECLARE_F32_EXT_UNARY_MATH_FUNCTION(xnn_math_f32_extexp__avx512f_p5)
138 
139 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neon_frac_p9_p10_nr1recps)
140 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neon_rr1_lut2048_p1_nr2recps)
141 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_lut2048_p1_nr2recps)
142 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_lut2048_p1_nr1recps1fma)
143 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_lut2048_p1_nr2fma)
144 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_lut2048_p1_div)
145 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neon_rr2_lut2048_p1_nr2recps)
146 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_lut2048_p1_nr2recps)
147 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_lut2048_p1_nr1recps1fma)
148 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_lut2048_p1_nr2fma)
149 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_lut2048_p1_div)
150 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neon_rr1_lut64_p2_nr2recps)
151 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_lut64_p2_nr2recps)
152 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_lut64_p2_nr1recps1fma)
153 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_lut64_p2_nr2fma)
154 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_lut64_p2_div)
155 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neon_rr2_lut64_p2_nr2recps)
156 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_lut64_p2_nr2recps)
157 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_lut64_p2_nr1recps1fma)
158 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_lut64_p2_nr2fma)
159 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_lut64_p2_div)
160 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neon_rr1_p5_nr2recps)
161 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_p5_nr2recps)
162 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_p5_nr1recps1fma)
163 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_p5_nr2fma)
164 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr1_p5_div)
165 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neon_rr2_p5_nr2recps)
166 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_p5_nr2recps)
167 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_p5_nr1recps1fma)
168 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_p5_nr2fma)
169 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__neonfma_rr2_p5_div)
170 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__sse2_rr2_p5_div)
171 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__sse2_rr2_p5_nr1)
172 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__sse2_rr2_p5_nr2)
173 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__sse2_rr2_lut64_p2_div)
174 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__sse2_rr2_lut64_p2_nr1)
175 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__sse2_rr2_lut64_p2_nr2)
176 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx_rr2_p5_div)
177 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx_rr2_p5_nr2)
178 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx_rr2_p5_nr1)
179 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx_rr2_lut64_p2_div)
180 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr2_p5_div)
181 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr2_p5_nr2fma)
182 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr2_p5_nr1fma)
183 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr1_p5_div)
184 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr1_p5_nr2fma)
185 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr1_p5_nr1fma)
186 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr2_lut64_p2_gather_div)
187 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr2_lut64_p2_gather_nr2fma1adj)
188 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr2_lut64_p2_gather_nr2fma)
189 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr2_lut64_p2_gather_nr1fma)
190 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr1_lut64_p2_gather_div)
191 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr1_lut64_p2_gather_nr2fma1adj)
192 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr1_lut64_p2_gather_nr2fma)
193 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx2_rr1_lut64_p2_gather_nr1fma)
194 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_p5_scalef_div)
195 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_p5_scalef_nr1fma1adj)
196 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_p5_scalef_nr1fma)
197 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_p5_scalef_div)
198 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_p5_scalef_nr1fma1adj)
199 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_p5_scalef_nr1fma)
200 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_lut16_p3_perm_scalef_div)
201 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_lut16_p3_perm_scalef_nr1fma1adj)
202 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_lut16_p3_perm_scalef_nr1fma)
203 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_lut16_p3_perm_scalef_div)
204 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_lut16_p3_perm_scalef_nr1fma1adj)
205 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_lut16_p3_perm_scalef_nr1fma)
206 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_lut32_p2_perm2_scalef_div)
207 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma1adj)
208 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma)
209 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_lut32_p2_perm2_scalef_div)
210 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_lut32_p2_perm2_scalef_nr1fma1adj)
211 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_lut32_p2_perm2_scalef_nr1fma)
212 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_lut64_p2_gather_scalef_div)
213 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_lut64_p2_gather_scalef_nr1fma1adj)
214 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr2_lut64_p2_gather_scalef_nr1fma)
215 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_lut64_p2_gather_scalef_div)
216 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_lut64_p2_gather_scalef_nr1fma1adj)
217 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__avx512f_rr1_lut64_p2_gather_scalef_nr1fma)
218 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__wasmsimd_rr2_lut64_p2_div)
219 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__wasmsimd_rr2_p5_div)
220 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__scalar_rr2_p5_div)
221 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__scalar_rr2_lut64_p2_div)
222 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sigmoid__scalar_rr2_lut2048_p1_div)
223 
224 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__sse_nr1mac)
225 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__sse_nr2mac)
226 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__sse_hh1mac)
227 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__fma3_nr1fma)
228 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__fma3_nr2fma)
229 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__fma3_nr1fma1adj)
230 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__avx512f_nr1fma)
231 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__avx512f_nr2fma)
232 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__avx512f_nr1fma1adj)
233 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__neon_nr1rsqrts)
234 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__neon_nr2rsqrts)
235 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__neon_nr3rsqrts)
236 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__neonfma_nr1fma)
237 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__neonfma_nr2fma)
238 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__neonfma_nr3fma)
239 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__neonfma_nr1rsqrts1fma1adj)
240 DECLARE_F32_UNARY_MATH_FUNCTION(xnn_math_f32_sqrt__neonfma_nr2fma1adj)
241 
242 #ifdef __cplusplus
243 } /* extern "C" */
244 #endif
245