xref: /aosp_15_r20/frameworks/rs/script_api/rs_math.spec (revision e1eccf28f96817838ad6867f7f39d2351ec11f56)
1*e1eccf28SAndroid Build Coastguard Worker#
2*e1eccf28SAndroid Build Coastguard Worker# Copyright (C) 2014 The Android Open Source Project
3*e1eccf28SAndroid Build Coastguard Worker#
4*e1eccf28SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
5*e1eccf28SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
6*e1eccf28SAndroid Build Coastguard Worker# You may obtain a copy of the License at
7*e1eccf28SAndroid Build Coastguard Worker#
8*e1eccf28SAndroid Build Coastguard Worker#      http://www.apache.org/licenses/LICENSE-2.0
9*e1eccf28SAndroid Build Coastguard Worker#
10*e1eccf28SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
11*e1eccf28SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
12*e1eccf28SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*e1eccf28SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
14*e1eccf28SAndroid Build Coastguard Worker# limitations under the License.
15*e1eccf28SAndroid Build Coastguard Worker#
16*e1eccf28SAndroid Build Coastguard Worker
17*e1eccf28SAndroid Build Coastguard Workerheader:
18*e1eccf28SAndroid Build Coastguard Workersummary: Mathematical Constants and Functions
19*e1eccf28SAndroid Build Coastguard Workerdescription:
20*e1eccf28SAndroid Build Coastguard Worker The mathematical functions below can be applied to scalars and vectors.   When applied
21*e1eccf28SAndroid Build Coastguard Worker to vectors, the returned value is a vector of the function applied to each entry of the input.
22*e1eccf28SAndroid Build Coastguard Worker
23*e1eccf28SAndroid Build Coastguard Worker For example:<code><br/>
24*e1eccf28SAndroid Build Coastguard Worker float3 a, b;<br/>
25*e1eccf28SAndroid Build Coastguard Worker // The following call sets<br/>
26*e1eccf28SAndroid Build Coastguard Worker //   a.x to sin(b.x),<br/>
27*e1eccf28SAndroid Build Coastguard Worker //   a.y to sin(b.y), and<br/>
28*e1eccf28SAndroid Build Coastguard Worker //   a.z to sin(b.z).<br/>
29*e1eccf28SAndroid Build Coastguard Worker a = sin(b);<br/>
30*e1eccf28SAndroid Build Coastguard Worker </code>
31*e1eccf28SAndroid Build Coastguard Worker
32*e1eccf28SAndroid Build Coastguard Worker See <a href='rs_vector_math.html'>Vector Math Functions</a> for functions like @distance() and @length() that interpret
33*e1eccf28SAndroid Build Coastguard Worker instead the input as a single vector in n-dimensional space.
34*e1eccf28SAndroid Build Coastguard Worker
35*e1eccf28SAndroid Build Coastguard Worker The precision of the mathematical operations on 32 bit floats is affected by the pragmas
36*e1eccf28SAndroid Build Coastguard Worker rs_fp_relaxed and rs_fp_full.  Under rs_fp_relaxed, subnormal values may be flushed to zero and
37*e1eccf28SAndroid Build Coastguard Worker rounding may be done towards zero.  In comparison, rs_fp_full requires correct handling of
38*e1eccf28SAndroid Build Coastguard Worker subnormal values, i.e. smaller than 1.17549435e-38f.  rs_fp_rull also requires round to nearest
39*e1eccf28SAndroid Build Coastguard Worker with ties to even.
40*e1eccf28SAndroid Build Coastguard Worker
41*e1eccf28SAndroid Build Coastguard Worker Different precision/speed tradeoffs can be achieved by using variants of the common math
42*e1eccf28SAndroid Build Coastguard Worker functions.  Functions with a name starting with<ul>
43*e1eccf28SAndroid Build Coastguard Worker <li>native_: May have custom hardware implementations with weaker precision.  Additionally,
44*e1eccf28SAndroid Build Coastguard Worker   subnormal values may be flushed to zero, rounding towards zero may be used, and NaN and
45*e1eccf28SAndroid Build Coastguard Worker   infinity input may not be handled correctly.</li>
46*e1eccf28SAndroid Build Coastguard Worker <li>half_: May perform internal computations using 16 bit floats.  Additionally, subnormal
47*e1eccf28SAndroid Build Coastguard Worker   values may be flushed to zero, and rounding towards zero may be used.</li>
48*e1eccf28SAndroid Build Coastguard Worker </ul>
49*e1eccf28SAndroid Build Coastguard Workerend:
50*e1eccf28SAndroid Build Coastguard Worker
51*e1eccf28SAndroid Build Coastguard Worker# TODO Add f16 versions of these constants.
52*e1eccf28SAndroid Build Coastguard Workerconstant: M_1_PI
53*e1eccf28SAndroid Build Coastguard Workervalue: 0.318309886183790671537767526745028724f
54*e1eccf28SAndroid Build Coastguard Workertype: float
55*e1eccf28SAndroid Build Coastguard Workersummary: 1 / pi, as a 32 bit float
56*e1eccf28SAndroid Build Coastguard Workerdescription:
57*e1eccf28SAndroid Build Coastguard Worker The inverse of pi, as a 32 bit float.
58*e1eccf28SAndroid Build Coastguard Workerend:
59*e1eccf28SAndroid Build Coastguard Worker
60*e1eccf28SAndroid Build Coastguard Workerconstant: M_2_PI
61*e1eccf28SAndroid Build Coastguard Workervalue: 0.636619772367581343075535053490057448f
62*e1eccf28SAndroid Build Coastguard Workertype: float
63*e1eccf28SAndroid Build Coastguard Workersummary: 2 / pi, as a 32 bit float
64*e1eccf28SAndroid Build Coastguard Workerdescription:
65*e1eccf28SAndroid Build Coastguard Worker 2 divided by pi, as a 32 bit float.
66*e1eccf28SAndroid Build Coastguard Workerend:
67*e1eccf28SAndroid Build Coastguard Worker
68*e1eccf28SAndroid Build Coastguard Workerconstant: M_2_PIl
69*e1eccf28SAndroid Build Coastguard Workervalue: 0.636619772367581343075535053490057448f
70*e1eccf28SAndroid Build Coastguard Workertype: float
71*e1eccf28SAndroid Build Coastguard Workerhidden:
72*e1eccf28SAndroid Build Coastguard Workerdeprecated: 22, Use M_2_PI instead.
73*e1eccf28SAndroid Build Coastguard Workersummary: 2 / pi, as a 32 bit float
74*e1eccf28SAndroid Build Coastguard Workerdescription:
75*e1eccf28SAndroid Build Coastguard Worker 2 divided by pi, as a 32 bit float.
76*e1eccf28SAndroid Build Coastguard Workerend:
77*e1eccf28SAndroid Build Coastguard Worker
78*e1eccf28SAndroid Build Coastguard Workerconstant: M_2_SQRTPI
79*e1eccf28SAndroid Build Coastguard Workervalue: 1.128379167095512573896158903121545172f
80*e1eccf28SAndroid Build Coastguard Workertype: float
81*e1eccf28SAndroid Build Coastguard Workersummary:  2 / sqrt(pi), as a 32 bit float
82*e1eccf28SAndroid Build Coastguard Workerdescription:
83*e1eccf28SAndroid Build Coastguard Worker 2 divided by the square root of pi, as a 32 bit float.
84*e1eccf28SAndroid Build Coastguard Workerend:
85*e1eccf28SAndroid Build Coastguard Worker
86*e1eccf28SAndroid Build Coastguard Workerconstant: M_E
87*e1eccf28SAndroid Build Coastguard Workervalue: 2.718281828459045235360287471352662498f
88*e1eccf28SAndroid Build Coastguard Workertype: float
89*e1eccf28SAndroid Build Coastguard Workersummary: e, as a 32 bit float
90*e1eccf28SAndroid Build Coastguard Workerdescription:
91*e1eccf28SAndroid Build Coastguard Worker The number e, the base of the natural logarithm, as a 32 bit float.
92*e1eccf28SAndroid Build Coastguard Workerend:
93*e1eccf28SAndroid Build Coastguard Worker
94*e1eccf28SAndroid Build Coastguard Workerconstant: M_LN10
95*e1eccf28SAndroid Build Coastguard Workervalue: 2.302585092994045684017991454684364208f
96*e1eccf28SAndroid Build Coastguard Workertype: float
97*e1eccf28SAndroid Build Coastguard Workersummary: log_e(10), as a 32 bit float
98*e1eccf28SAndroid Build Coastguard Workerdescription:
99*e1eccf28SAndroid Build Coastguard Worker The natural logarithm of 10, as a 32 bit float.
100*e1eccf28SAndroid Build Coastguard Workerend:
101*e1eccf28SAndroid Build Coastguard Worker
102*e1eccf28SAndroid Build Coastguard Workerconstant: M_LN2
103*e1eccf28SAndroid Build Coastguard Workervalue: 0.693147180559945309417232121458176568f
104*e1eccf28SAndroid Build Coastguard Workertype: float
105*e1eccf28SAndroid Build Coastguard Workersummary: log_e(2), as a 32 bit float
106*e1eccf28SAndroid Build Coastguard Workerdescription:
107*e1eccf28SAndroid Build Coastguard Worker The natural logarithm of 2, as a 32 bit float.
108*e1eccf28SAndroid Build Coastguard Workerend:
109*e1eccf28SAndroid Build Coastguard Worker
110*e1eccf28SAndroid Build Coastguard Workerconstant: M_LOG10E
111*e1eccf28SAndroid Build Coastguard Workervalue: 0.434294481903251827651128918916605082f
112*e1eccf28SAndroid Build Coastguard Workertype: float
113*e1eccf28SAndroid Build Coastguard Workersummary: log_10(e), as a 32 bit float
114*e1eccf28SAndroid Build Coastguard Workerdescription:
115*e1eccf28SAndroid Build Coastguard Worker The logarithm base 10 of e, as a 32 bit float.
116*e1eccf28SAndroid Build Coastguard Workerend:
117*e1eccf28SAndroid Build Coastguard Worker
118*e1eccf28SAndroid Build Coastguard Workerconstant: M_LOG2E
119*e1eccf28SAndroid Build Coastguard Workervalue: 1.442695040888963407359924681001892137f
120*e1eccf28SAndroid Build Coastguard Workertype: float
121*e1eccf28SAndroid Build Coastguard Workersummary: log_2(e), as a 32 bit float
122*e1eccf28SAndroid Build Coastguard Workerdescription:
123*e1eccf28SAndroid Build Coastguard Worker The logarithm base 2 of e, as a 32 bit float.
124*e1eccf28SAndroid Build Coastguard Workerend:
125*e1eccf28SAndroid Build Coastguard Worker
126*e1eccf28SAndroid Build Coastguard Workerconstant: M_PI
127*e1eccf28SAndroid Build Coastguard Workervalue: 3.141592653589793238462643383279502884f
128*e1eccf28SAndroid Build Coastguard Workertype: float
129*e1eccf28SAndroid Build Coastguard Workersummary: pi, as a 32 bit float
130*e1eccf28SAndroid Build Coastguard Workerdescription:
131*e1eccf28SAndroid Build Coastguard Worker The constant pi, as a 32 bit float.
132*e1eccf28SAndroid Build Coastguard Workerend:
133*e1eccf28SAndroid Build Coastguard Worker
134*e1eccf28SAndroid Build Coastguard Workerconstant: M_PI_2
135*e1eccf28SAndroid Build Coastguard Workervalue: 1.570796326794896619231321691639751442f
136*e1eccf28SAndroid Build Coastguard Workertype: float
137*e1eccf28SAndroid Build Coastguard Workersummary: pi / 2, as a 32 bit float
138*e1eccf28SAndroid Build Coastguard Workerdescription:
139*e1eccf28SAndroid Build Coastguard Worker Pi divided by 2, as a 32 bit float.
140*e1eccf28SAndroid Build Coastguard Workerend:
141*e1eccf28SAndroid Build Coastguard Worker
142*e1eccf28SAndroid Build Coastguard Workerconstant: M_PI_4
143*e1eccf28SAndroid Build Coastguard Workervalue: 0.785398163397448309615660845819875721f
144*e1eccf28SAndroid Build Coastguard Workertype: float
145*e1eccf28SAndroid Build Coastguard Workersummary: pi / 4, as a 32 bit float
146*e1eccf28SAndroid Build Coastguard Workerdescription:
147*e1eccf28SAndroid Build Coastguard Worker Pi divided by 4, as a 32 bit float.
148*e1eccf28SAndroid Build Coastguard Workerend:
149*e1eccf28SAndroid Build Coastguard Worker
150*e1eccf28SAndroid Build Coastguard Workerconstant: M_SQRT1_2
151*e1eccf28SAndroid Build Coastguard Workervalue: 0.707106781186547524400844362104849039f
152*e1eccf28SAndroid Build Coastguard Workertype: float
153*e1eccf28SAndroid Build Coastguard Workersummary: 1 / sqrt(2), as a 32 bit float
154*e1eccf28SAndroid Build Coastguard Workerdescription:
155*e1eccf28SAndroid Build Coastguard Worker The inverse of the square root of 2, as a 32 bit float.
156*e1eccf28SAndroid Build Coastguard Workerend:
157*e1eccf28SAndroid Build Coastguard Worker
158*e1eccf28SAndroid Build Coastguard Workerconstant: M_SQRT2
159*e1eccf28SAndroid Build Coastguard Workervalue: 1.414213562373095048801688724209698079f
160*e1eccf28SAndroid Build Coastguard Workertype: float
161*e1eccf28SAndroid Build Coastguard Workersummary: sqrt(2), as a 32 bit float
162*e1eccf28SAndroid Build Coastguard Workerdescription:
163*e1eccf28SAndroid Build Coastguard Worker The square root of 2, as a 32 bit float.
164*e1eccf28SAndroid Build Coastguard Workerend:
165*e1eccf28SAndroid Build Coastguard Worker
166*e1eccf28SAndroid Build Coastguard Workerfunction: abs
167*e1eccf28SAndroid Build Coastguard Workerversion: 9
168*e1eccf28SAndroid Build Coastguard Workerattrib: const
169*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
170*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32
171*e1eccf28SAndroid Build Coastguard Workerret: u#2#1
172*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
173*e1eccf28SAndroid Build Coastguard Workersummary: Absolute value of an integer
174*e1eccf28SAndroid Build Coastguard Workerdescription:
175*e1eccf28SAndroid Build Coastguard Worker Returns the absolute value of an integer.
176*e1eccf28SAndroid Build Coastguard Worker
177*e1eccf28SAndroid Build Coastguard Worker For floats, use @fabs().
178*e1eccf28SAndroid Build Coastguard Workerend:
179*e1eccf28SAndroid Build Coastguard Worker
180*e1eccf28SAndroid Build Coastguard Workerfunction: acos
181*e1eccf28SAndroid Build Coastguard Workerversion: 9
182*e1eccf28SAndroid Build Coastguard Workerattrib: const
183*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
184*e1eccf28SAndroid Build Coastguard Workert: f32
185*e1eccf28SAndroid Build Coastguard Workerret: #2#1
186*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
187*e1eccf28SAndroid Build Coastguard Workersummary: Inverse cosine
188*e1eccf28SAndroid Build Coastguard Workerdescription:
189*e1eccf28SAndroid Build Coastguard Worker Returns the inverse cosine, in radians.
190*e1eccf28SAndroid Build Coastguard Worker
191*e1eccf28SAndroid Build Coastguard Worker See also @native_acos().
192*e1eccf28SAndroid Build Coastguard Workerend:
193*e1eccf28SAndroid Build Coastguard Worker
194*e1eccf28SAndroid Build Coastguard Workerfunction: acos
195*e1eccf28SAndroid Build Coastguard Workerversion: 24
196*e1eccf28SAndroid Build Coastguard Workerattrib: const
197*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
198*e1eccf28SAndroid Build Coastguard Workert: f16
199*e1eccf28SAndroid Build Coastguard Workerret: #2#1
200*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
201*e1eccf28SAndroid Build Coastguard Workerend:
202*e1eccf28SAndroid Build Coastguard Worker
203*e1eccf28SAndroid Build Coastguard Workerfunction: acosh
204*e1eccf28SAndroid Build Coastguard Workerversion: 9
205*e1eccf28SAndroid Build Coastguard Workerattrib: const
206*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
207*e1eccf28SAndroid Build Coastguard Workert: f32
208*e1eccf28SAndroid Build Coastguard Workerret: #2#1
209*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
210*e1eccf28SAndroid Build Coastguard Workersummary: Inverse hyperbolic cosine
211*e1eccf28SAndroid Build Coastguard Workerdescription:
212*e1eccf28SAndroid Build Coastguard Worker Returns the inverse hyperbolic cosine, in radians.
213*e1eccf28SAndroid Build Coastguard Worker
214*e1eccf28SAndroid Build Coastguard Worker See also @native_acosh().
215*e1eccf28SAndroid Build Coastguard Workerend:
216*e1eccf28SAndroid Build Coastguard Worker
217*e1eccf28SAndroid Build Coastguard Workerfunction: acosh
218*e1eccf28SAndroid Build Coastguard Workerversion: 24
219*e1eccf28SAndroid Build Coastguard Workerattrib: const
220*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
221*e1eccf28SAndroid Build Coastguard Workert: f16
222*e1eccf28SAndroid Build Coastguard Workerret: #2#1
223*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
224*e1eccf28SAndroid Build Coastguard Workerend:
225*e1eccf28SAndroid Build Coastguard Worker
226*e1eccf28SAndroid Build Coastguard Workerfunction: acospi
227*e1eccf28SAndroid Build Coastguard Workerversion: 9
228*e1eccf28SAndroid Build Coastguard Workerattrib: const
229*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
230*e1eccf28SAndroid Build Coastguard Workert: f32
231*e1eccf28SAndroid Build Coastguard Workerret: #2#1
232*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
233*e1eccf28SAndroid Build Coastguard Workersummary: Inverse cosine divided by pi
234*e1eccf28SAndroid Build Coastguard Workerdescription:
235*e1eccf28SAndroid Build Coastguard Worker Returns the inverse cosine in radians, divided by pi.
236*e1eccf28SAndroid Build Coastguard Worker
237*e1eccf28SAndroid Build Coastguard Worker To get an inverse cosine measured in degrees, use <code>acospi(a) * 180.f</code>.
238*e1eccf28SAndroid Build Coastguard Worker
239*e1eccf28SAndroid Build Coastguard Worker See also @native_acospi().
240*e1eccf28SAndroid Build Coastguard Workerend:
241*e1eccf28SAndroid Build Coastguard Worker
242*e1eccf28SAndroid Build Coastguard Workerfunction: acospi
243*e1eccf28SAndroid Build Coastguard Workerversion: 24
244*e1eccf28SAndroid Build Coastguard Workerattrib: const
245*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
246*e1eccf28SAndroid Build Coastguard Workert: f16
247*e1eccf28SAndroid Build Coastguard Workerret: #2#1
248*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
249*e1eccf28SAndroid Build Coastguard Workerend:
250*e1eccf28SAndroid Build Coastguard Worker
251*e1eccf28SAndroid Build Coastguard Workerfunction: asin
252*e1eccf28SAndroid Build Coastguard Workerversion: 9
253*e1eccf28SAndroid Build Coastguard Workerattrib: const
254*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
255*e1eccf28SAndroid Build Coastguard Workert: f32
256*e1eccf28SAndroid Build Coastguard Workerret: #2#1
257*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
258*e1eccf28SAndroid Build Coastguard Workersummary: Inverse sine
259*e1eccf28SAndroid Build Coastguard Workerdescription:
260*e1eccf28SAndroid Build Coastguard Worker Returns the inverse sine, in radians.
261*e1eccf28SAndroid Build Coastguard Worker
262*e1eccf28SAndroid Build Coastguard Worker See also @native_asin().
263*e1eccf28SAndroid Build Coastguard Workerend:
264*e1eccf28SAndroid Build Coastguard Worker
265*e1eccf28SAndroid Build Coastguard Workerfunction: asin
266*e1eccf28SAndroid Build Coastguard Workerversion: 24
267*e1eccf28SAndroid Build Coastguard Workerattrib: const
268*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
269*e1eccf28SAndroid Build Coastguard Workert: f16
270*e1eccf28SAndroid Build Coastguard Workerret: #2#1
271*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
272*e1eccf28SAndroid Build Coastguard Workerend:
273*e1eccf28SAndroid Build Coastguard Worker
274*e1eccf28SAndroid Build Coastguard Workerfunction: asinh
275*e1eccf28SAndroid Build Coastguard Workerversion: 9
276*e1eccf28SAndroid Build Coastguard Workerattrib: const
277*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
278*e1eccf28SAndroid Build Coastguard Workert: f32
279*e1eccf28SAndroid Build Coastguard Workerret: #2#1
280*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
281*e1eccf28SAndroid Build Coastguard Workersummary: Inverse hyperbolic sine
282*e1eccf28SAndroid Build Coastguard Workerdescription:
283*e1eccf28SAndroid Build Coastguard Worker Returns the inverse hyperbolic sine, in radians.
284*e1eccf28SAndroid Build Coastguard Worker
285*e1eccf28SAndroid Build Coastguard Worker See also @native_asinh().
286*e1eccf28SAndroid Build Coastguard Workerend:
287*e1eccf28SAndroid Build Coastguard Worker
288*e1eccf28SAndroid Build Coastguard Workerfunction: asinh
289*e1eccf28SAndroid Build Coastguard Workerversion: 24
290*e1eccf28SAndroid Build Coastguard Workerattrib: const
291*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
292*e1eccf28SAndroid Build Coastguard Workert: f16
293*e1eccf28SAndroid Build Coastguard Workerret: #2#1
294*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
295*e1eccf28SAndroid Build Coastguard Workerend:
296*e1eccf28SAndroid Build Coastguard Worker
297*e1eccf28SAndroid Build Coastguard Workerfunction: asinpi
298*e1eccf28SAndroid Build Coastguard Workerversion: 9
299*e1eccf28SAndroid Build Coastguard Workerattrib: const
300*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
301*e1eccf28SAndroid Build Coastguard Workert: f32
302*e1eccf28SAndroid Build Coastguard Workerret: #2#1
303*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
304*e1eccf28SAndroid Build Coastguard Workersummary: Inverse sine divided by pi
305*e1eccf28SAndroid Build Coastguard Workerdescription:
306*e1eccf28SAndroid Build Coastguard Worker Returns the inverse sine in radians, divided by pi.
307*e1eccf28SAndroid Build Coastguard Worker
308*e1eccf28SAndroid Build Coastguard Worker To get an inverse sine measured in degrees, use <code>asinpi(a) * 180.f</code>.
309*e1eccf28SAndroid Build Coastguard Worker
310*e1eccf28SAndroid Build Coastguard Worker See also @native_asinpi().
311*e1eccf28SAndroid Build Coastguard Workerend:
312*e1eccf28SAndroid Build Coastguard Worker
313*e1eccf28SAndroid Build Coastguard Workerfunction: asinpi
314*e1eccf28SAndroid Build Coastguard Workerversion: 24
315*e1eccf28SAndroid Build Coastguard Workerattrib: const
316*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
317*e1eccf28SAndroid Build Coastguard Workert: f16
318*e1eccf28SAndroid Build Coastguard Workerret: #2#1
319*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
320*e1eccf28SAndroid Build Coastguard Workerend:
321*e1eccf28SAndroid Build Coastguard Worker
322*e1eccf28SAndroid Build Coastguard Workerfunction: atan
323*e1eccf28SAndroid Build Coastguard Workerversion: 9
324*e1eccf28SAndroid Build Coastguard Workerattrib: const
325*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
326*e1eccf28SAndroid Build Coastguard Workert: f32
327*e1eccf28SAndroid Build Coastguard Workerret: #2#1
328*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
329*e1eccf28SAndroid Build Coastguard Workersummary: Inverse tangent
330*e1eccf28SAndroid Build Coastguard Workerdescription:
331*e1eccf28SAndroid Build Coastguard Worker Returns the inverse tangent, in radians.
332*e1eccf28SAndroid Build Coastguard Worker
333*e1eccf28SAndroid Build Coastguard Worker See also @native_atan().
334*e1eccf28SAndroid Build Coastguard Workerend:
335*e1eccf28SAndroid Build Coastguard Worker
336*e1eccf28SAndroid Build Coastguard Workerfunction: atan
337*e1eccf28SAndroid Build Coastguard Workerversion: 24
338*e1eccf28SAndroid Build Coastguard Workerattrib: const
339*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
340*e1eccf28SAndroid Build Coastguard Workert: f16
341*e1eccf28SAndroid Build Coastguard Workerret: #2#1
342*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
343*e1eccf28SAndroid Build Coastguard Workerend:
344*e1eccf28SAndroid Build Coastguard Worker
345*e1eccf28SAndroid Build Coastguard Workerfunction: atan2
346*e1eccf28SAndroid Build Coastguard Workerversion: 9
347*e1eccf28SAndroid Build Coastguard Workerattrib: const
348*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
349*e1eccf28SAndroid Build Coastguard Workert: f32
350*e1eccf28SAndroid Build Coastguard Workerret: #2#1
351*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator, "Numerator."
352*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator, "Denominator.  Can be 0."
353*e1eccf28SAndroid Build Coastguard Workersummary: Inverse tangent of a ratio
354*e1eccf28SAndroid Build Coastguard Workerdescription:
355*e1eccf28SAndroid Build Coastguard Worker Returns the inverse tangent of <code>(numerator / denominator)</code>, in radians.
356*e1eccf28SAndroid Build Coastguard Worker
357*e1eccf28SAndroid Build Coastguard Worker See also @native_atan2().
358*e1eccf28SAndroid Build Coastguard Workerend:
359*e1eccf28SAndroid Build Coastguard Worker
360*e1eccf28SAndroid Build Coastguard Workerfunction: atan2
361*e1eccf28SAndroid Build Coastguard Workerversion: 24
362*e1eccf28SAndroid Build Coastguard Workerattrib: const
363*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
364*e1eccf28SAndroid Build Coastguard Workert: f16
365*e1eccf28SAndroid Build Coastguard Workerret: #2#1
366*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator
367*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator
368*e1eccf28SAndroid Build Coastguard Workerend:
369*e1eccf28SAndroid Build Coastguard Worker
370*e1eccf28SAndroid Build Coastguard Workerfunction: atan2pi
371*e1eccf28SAndroid Build Coastguard Workerversion: 9
372*e1eccf28SAndroid Build Coastguard Workerattrib: const
373*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
374*e1eccf28SAndroid Build Coastguard Workert: f32
375*e1eccf28SAndroid Build Coastguard Workerret: #2#1
376*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator, "Numerator."
377*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator, "Denominator.  Can be 0."
378*e1eccf28SAndroid Build Coastguard Workersummary: Inverse tangent of a ratio, divided by pi
379*e1eccf28SAndroid Build Coastguard Workerdescription:
380*e1eccf28SAndroid Build Coastguard Worker Returns the inverse tangent of <code>(numerator / denominator)</code>, in radians, divided by pi.
381*e1eccf28SAndroid Build Coastguard Worker
382*e1eccf28SAndroid Build Coastguard Worker To get an inverse tangent measured in degrees, use <code>atan2pi(n, d) * 180.f</code>.
383*e1eccf28SAndroid Build Coastguard Worker
384*e1eccf28SAndroid Build Coastguard Worker See also @native_atan2pi().
385*e1eccf28SAndroid Build Coastguard Workerend:
386*e1eccf28SAndroid Build Coastguard Worker
387*e1eccf28SAndroid Build Coastguard Workerfunction: atan2pi
388*e1eccf28SAndroid Build Coastguard Workerversion: 24
389*e1eccf28SAndroid Build Coastguard Workerattrib: const
390*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
391*e1eccf28SAndroid Build Coastguard Workert: f16
392*e1eccf28SAndroid Build Coastguard Workerret: #2#1
393*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator
394*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator
395*e1eccf28SAndroid Build Coastguard Workerend:
396*e1eccf28SAndroid Build Coastguard Worker
397*e1eccf28SAndroid Build Coastguard Workerfunction: atanh
398*e1eccf28SAndroid Build Coastguard Workerversion: 9
399*e1eccf28SAndroid Build Coastguard Workerattrib: const
400*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
401*e1eccf28SAndroid Build Coastguard Workert: f32
402*e1eccf28SAndroid Build Coastguard Workerret: #2#1
403*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
404*e1eccf28SAndroid Build Coastguard Workersummary: Inverse hyperbolic tangent
405*e1eccf28SAndroid Build Coastguard Workerdescription:
406*e1eccf28SAndroid Build Coastguard Worker Returns the inverse hyperbolic tangent, in radians.
407*e1eccf28SAndroid Build Coastguard Worker
408*e1eccf28SAndroid Build Coastguard Worker See also @native_atanh().
409*e1eccf28SAndroid Build Coastguard Workerend:
410*e1eccf28SAndroid Build Coastguard Worker
411*e1eccf28SAndroid Build Coastguard Workerfunction: atanh
412*e1eccf28SAndroid Build Coastguard Workerversion: 24
413*e1eccf28SAndroid Build Coastguard Workerattrib: const
414*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
415*e1eccf28SAndroid Build Coastguard Workert: f16
416*e1eccf28SAndroid Build Coastguard Workerret: #2#1
417*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
418*e1eccf28SAndroid Build Coastguard Workerend:
419*e1eccf28SAndroid Build Coastguard Worker
420*e1eccf28SAndroid Build Coastguard Workerfunction: atanpi
421*e1eccf28SAndroid Build Coastguard Workerversion: 9
422*e1eccf28SAndroid Build Coastguard Workerattrib: const
423*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
424*e1eccf28SAndroid Build Coastguard Workert: f32
425*e1eccf28SAndroid Build Coastguard Workerret: #2#1
426*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
427*e1eccf28SAndroid Build Coastguard Workersummary: Inverse tangent divided by pi
428*e1eccf28SAndroid Build Coastguard Workerdescription:
429*e1eccf28SAndroid Build Coastguard Worker Returns the inverse tangent in radians, divided by pi.
430*e1eccf28SAndroid Build Coastguard Worker
431*e1eccf28SAndroid Build Coastguard Worker To get an inverse tangent measured in degrees, use <code>atanpi(a) * 180.f</code>.
432*e1eccf28SAndroid Build Coastguard Worker
433*e1eccf28SAndroid Build Coastguard Worker See also @native_atanpi().
434*e1eccf28SAndroid Build Coastguard Workerend:
435*e1eccf28SAndroid Build Coastguard Worker
436*e1eccf28SAndroid Build Coastguard Workerfunction: atanpi
437*e1eccf28SAndroid Build Coastguard Workerversion: 24
438*e1eccf28SAndroid Build Coastguard Workerattrib: const
439*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
440*e1eccf28SAndroid Build Coastguard Workert: f16
441*e1eccf28SAndroid Build Coastguard Workerret: #2#1
442*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
443*e1eccf28SAndroid Build Coastguard Workerend:
444*e1eccf28SAndroid Build Coastguard Worker
445*e1eccf28SAndroid Build Coastguard Workerfunction: cbrt
446*e1eccf28SAndroid Build Coastguard Workerversion: 9
447*e1eccf28SAndroid Build Coastguard Workerattrib: const
448*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
449*e1eccf28SAndroid Build Coastguard Workert: f32
450*e1eccf28SAndroid Build Coastguard Workerret: #2#1
451*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
452*e1eccf28SAndroid Build Coastguard Workersummary: Cube root
453*e1eccf28SAndroid Build Coastguard Workerdescription:
454*e1eccf28SAndroid Build Coastguard Worker Returns the cube root.
455*e1eccf28SAndroid Build Coastguard Worker
456*e1eccf28SAndroid Build Coastguard Worker See also @native_cbrt().
457*e1eccf28SAndroid Build Coastguard Workerend:
458*e1eccf28SAndroid Build Coastguard Worker
459*e1eccf28SAndroid Build Coastguard Workerfunction: cbrt
460*e1eccf28SAndroid Build Coastguard Workerversion: 24
461*e1eccf28SAndroid Build Coastguard Workerattrib: const
462*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
463*e1eccf28SAndroid Build Coastguard Workert: f16
464*e1eccf28SAndroid Build Coastguard Workerret: #2#1
465*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
466*e1eccf28SAndroid Build Coastguard Workerend:
467*e1eccf28SAndroid Build Coastguard Worker
468*e1eccf28SAndroid Build Coastguard Workerfunction: ceil
469*e1eccf28SAndroid Build Coastguard Workerversion: 9
470*e1eccf28SAndroid Build Coastguard Workerattrib: const
471*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
472*e1eccf28SAndroid Build Coastguard Workert: f32
473*e1eccf28SAndroid Build Coastguard Workerret: #2#1
474*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
475*e1eccf28SAndroid Build Coastguard Workersummary: Smallest integer not less than a value
476*e1eccf28SAndroid Build Coastguard Workerdescription:
477*e1eccf28SAndroid Build Coastguard Worker Returns the smallest integer not less than a value.
478*e1eccf28SAndroid Build Coastguard Worker
479*e1eccf28SAndroid Build Coastguard Worker For example, <code>ceil(1.2f)</code> returns 2.f, and <code>ceil(-1.2f)</code> returns -1.f.
480*e1eccf28SAndroid Build Coastguard Worker
481*e1eccf28SAndroid Build Coastguard Worker See also @floor().
482*e1eccf28SAndroid Build Coastguard Workerend:
483*e1eccf28SAndroid Build Coastguard Worker
484*e1eccf28SAndroid Build Coastguard Workerfunction: ceil
485*e1eccf28SAndroid Build Coastguard Workerversion: 24
486*e1eccf28SAndroid Build Coastguard Workerattrib: const
487*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
488*e1eccf28SAndroid Build Coastguard Workert: f16
489*e1eccf28SAndroid Build Coastguard Workerret: #2#1
490*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
491*e1eccf28SAndroid Build Coastguard Workerend:
492*e1eccf28SAndroid Build Coastguard Worker
493*e1eccf28SAndroid Build Coastguard Workerfunction: clamp
494*e1eccf28SAndroid Build Coastguard Workerversion: 9
495*e1eccf28SAndroid Build Coastguard Workerattrib: const
496*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
497*e1eccf28SAndroid Build Coastguard Workert: f32
498*e1eccf28SAndroid Build Coastguard Workerret: #2#1
499*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 value, "Value to be clamped."
500*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 min_value, "Lower bound, a scalar or matching vector."
501*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 max_value, above(min_value), "High bound, must match the type of low."
502*e1eccf28SAndroid Build Coastguard Workersummary: Restrain a value to a range
503*e1eccf28SAndroid Build Coastguard Workerdescription:
504*e1eccf28SAndroid Build Coastguard Worker Clamps a value to a specified high and low bound.  clamp() returns min_value
505*e1eccf28SAndroid Build Coastguard Worker if value &lt; min_value, max_value if value &gt; max_value, otherwise value.
506*e1eccf28SAndroid Build Coastguard Worker
507*e1eccf28SAndroid Build Coastguard Worker There are two variants of clamp: one where the min and max are scalars applied
508*e1eccf28SAndroid Build Coastguard Worker to all entries of the value, the other where the min and max are also vectors.
509*e1eccf28SAndroid Build Coastguard Worker
510*e1eccf28SAndroid Build Coastguard Worker If min_value is greater than max_value, the results are undefined.
511*e1eccf28SAndroid Build Coastguard Workerend:
512*e1eccf28SAndroid Build Coastguard Worker
513*e1eccf28SAndroid Build Coastguard Workerfunction: clamp
514*e1eccf28SAndroid Build Coastguard Workerversion: 9
515*e1eccf28SAndroid Build Coastguard Workerattrib: const
516*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
517*e1eccf28SAndroid Build Coastguard Workert: f32
518*e1eccf28SAndroid Build Coastguard Workerret: #2#1
519*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 value
520*e1eccf28SAndroid Build Coastguard Workerarg: #2 min_value
521*e1eccf28SAndroid Build Coastguard Workerarg: #2 max_value, above(min_value)
522*e1eccf28SAndroid Build Coastguard Workerend:
523*e1eccf28SAndroid Build Coastguard Worker
524*e1eccf28SAndroid Build Coastguard Workerfunction: clamp
525*e1eccf28SAndroid Build Coastguard Workerversion: 19
526*e1eccf28SAndroid Build Coastguard Workerattrib: const
527*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
528*e1eccf28SAndroid Build Coastguard Workert: u8, u16, u32, u64, i8, i16, i32, i64
529*e1eccf28SAndroid Build Coastguard Workerret: #2#1
530*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 value
531*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 min_value
532*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 max_value, above(min_value)
533*e1eccf28SAndroid Build Coastguard Workerend:
534*e1eccf28SAndroid Build Coastguard Worker
535*e1eccf28SAndroid Build Coastguard Workerfunction: clamp
536*e1eccf28SAndroid Build Coastguard Workerversion: 19
537*e1eccf28SAndroid Build Coastguard Workerattrib: const
538*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
539*e1eccf28SAndroid Build Coastguard Workert: u8, u16, u32, u64, i8, i16, i32, i64
540*e1eccf28SAndroid Build Coastguard Workerret: #2#1
541*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 value
542*e1eccf28SAndroid Build Coastguard Workerarg: #2 min_value
543*e1eccf28SAndroid Build Coastguard Workerarg: #2 max_value, above(min_value)
544*e1eccf28SAndroid Build Coastguard Workerend:
545*e1eccf28SAndroid Build Coastguard Worker
546*e1eccf28SAndroid Build Coastguard Workerfunction: clamp
547*e1eccf28SAndroid Build Coastguard Workerversion: 24
548*e1eccf28SAndroid Build Coastguard Workerattrib: const
549*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
550*e1eccf28SAndroid Build Coastguard Workert: f16
551*e1eccf28SAndroid Build Coastguard Workerret: #2#1
552*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 value
553*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 min_value
554*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 max_value, above(min_value)
555*e1eccf28SAndroid Build Coastguard Workerend:
556*e1eccf28SAndroid Build Coastguard Worker
557*e1eccf28SAndroid Build Coastguard Workerfunction: clamp
558*e1eccf28SAndroid Build Coastguard Workerversion: 24
559*e1eccf28SAndroid Build Coastguard Workerattrib: const
560*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
561*e1eccf28SAndroid Build Coastguard Workert: f16
562*e1eccf28SAndroid Build Coastguard Workerret: #2#1
563*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 value
564*e1eccf28SAndroid Build Coastguard Workerarg: #2 min_value
565*e1eccf28SAndroid Build Coastguard Workerarg: #2 max_value, above(min_value)
566*e1eccf28SAndroid Build Coastguard Workerend:
567*e1eccf28SAndroid Build Coastguard Worker
568*e1eccf28SAndroid Build Coastguard Workerfunction: clz
569*e1eccf28SAndroid Build Coastguard Workerversion: 9
570*e1eccf28SAndroid Build Coastguard Workerattrib: const
571*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
572*e1eccf28SAndroid Build Coastguard Workert: u8, u16, u32, i8, i16, i32
573*e1eccf28SAndroid Build Coastguard Workerret: #2#1
574*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 value
575*e1eccf28SAndroid Build Coastguard Workersummary: Number of leading 0 bits
576*e1eccf28SAndroid Build Coastguard Workerdescription:
577*e1eccf28SAndroid Build Coastguard Worker Returns the number of leading 0-bits in a value.
578*e1eccf28SAndroid Build Coastguard Worker
579*e1eccf28SAndroid Build Coastguard Worker For example, <code>clz((char)0x03)</code> returns 6.
580*e1eccf28SAndroid Build Coastguard Workerend:
581*e1eccf28SAndroid Build Coastguard Worker
582*e1eccf28SAndroid Build Coastguard Workerfunction: copysign
583*e1eccf28SAndroid Build Coastguard Workerversion: 9
584*e1eccf28SAndroid Build Coastguard Workerattrib: const
585*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
586*e1eccf28SAndroid Build Coastguard Workert: f32
587*e1eccf28SAndroid Build Coastguard Workerret: #2#1
588*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 magnitude_value
589*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 sign_value
590*e1eccf28SAndroid Build Coastguard Workersummary: Copies the sign of a number to another
591*e1eccf28SAndroid Build Coastguard Workerdescription:
592*e1eccf28SAndroid Build Coastguard Worker Copies the sign from sign_value to magnitude_value.
593*e1eccf28SAndroid Build Coastguard Worker
594*e1eccf28SAndroid Build Coastguard Worker The value returned is either magnitude_value or -magnitude_value.
595*e1eccf28SAndroid Build Coastguard Worker
596*e1eccf28SAndroid Build Coastguard Worker For example, <code>copysign(4.0f, -2.7f)</code> returns -4.0f and <code>copysign(-4.0f, 2.7f)</code> returns 4.0f.
597*e1eccf28SAndroid Build Coastguard Workerend:
598*e1eccf28SAndroid Build Coastguard Worker
599*e1eccf28SAndroid Build Coastguard Workerfunction: copysign
600*e1eccf28SAndroid Build Coastguard Workerversion: 24
601*e1eccf28SAndroid Build Coastguard Workerattrib: const
602*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
603*e1eccf28SAndroid Build Coastguard Workert: f16
604*e1eccf28SAndroid Build Coastguard Workerret: #2#1
605*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 magnitude_value
606*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 sign_value
607*e1eccf28SAndroid Build Coastguard Workerend:
608*e1eccf28SAndroid Build Coastguard Worker
609*e1eccf28SAndroid Build Coastguard Workerfunction: cos
610*e1eccf28SAndroid Build Coastguard Workerversion: 9
611*e1eccf28SAndroid Build Coastguard Workerattrib: const
612*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
613*e1eccf28SAndroid Build Coastguard Workert: f32
614*e1eccf28SAndroid Build Coastguard Workerret: #2#1
615*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
616*e1eccf28SAndroid Build Coastguard Workersummary: Cosine
617*e1eccf28SAndroid Build Coastguard Workerdescription:
618*e1eccf28SAndroid Build Coastguard Worker Returns the cosine of an angle measured in radians.
619*e1eccf28SAndroid Build Coastguard Worker
620*e1eccf28SAndroid Build Coastguard Worker See also @native_cos().
621*e1eccf28SAndroid Build Coastguard Workerend:
622*e1eccf28SAndroid Build Coastguard Worker
623*e1eccf28SAndroid Build Coastguard Workerfunction: cos
624*e1eccf28SAndroid Build Coastguard Workerversion: 24
625*e1eccf28SAndroid Build Coastguard Workerattrib: const
626*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
627*e1eccf28SAndroid Build Coastguard Workert: f16
628*e1eccf28SAndroid Build Coastguard Workerret: #2#1
629*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
630*e1eccf28SAndroid Build Coastguard Workerend:
631*e1eccf28SAndroid Build Coastguard Worker
632*e1eccf28SAndroid Build Coastguard Workerfunction: cosh
633*e1eccf28SAndroid Build Coastguard Workerversion: 9
634*e1eccf28SAndroid Build Coastguard Workerattrib: const
635*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
636*e1eccf28SAndroid Build Coastguard Workert: f32
637*e1eccf28SAndroid Build Coastguard Workerret: #2#1
638*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
639*e1eccf28SAndroid Build Coastguard Workersummary: Hypebolic cosine
640*e1eccf28SAndroid Build Coastguard Workerdescription:
641*e1eccf28SAndroid Build Coastguard Worker Returns the hypebolic cosine of v, where v is measured in radians.
642*e1eccf28SAndroid Build Coastguard Worker
643*e1eccf28SAndroid Build Coastguard Worker See also @native_cosh().
644*e1eccf28SAndroid Build Coastguard Workerend:
645*e1eccf28SAndroid Build Coastguard Worker
646*e1eccf28SAndroid Build Coastguard Workerfunction: cosh
647*e1eccf28SAndroid Build Coastguard Workerversion: 24
648*e1eccf28SAndroid Build Coastguard Workerattrib: const
649*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
650*e1eccf28SAndroid Build Coastguard Workert: f16
651*e1eccf28SAndroid Build Coastguard Workerret: #2#1
652*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
653*e1eccf28SAndroid Build Coastguard Workerend:
654*e1eccf28SAndroid Build Coastguard Worker
655*e1eccf28SAndroid Build Coastguard Workerfunction: cospi
656*e1eccf28SAndroid Build Coastguard Workerversion: 9
657*e1eccf28SAndroid Build Coastguard Workerattrib: const
658*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
659*e1eccf28SAndroid Build Coastguard Workert: f32
660*e1eccf28SAndroid Build Coastguard Workerret: #2#1
661*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
662*e1eccf28SAndroid Build Coastguard Workersummary: Cosine of a number multiplied by pi
663*e1eccf28SAndroid Build Coastguard Workerdescription:
664*e1eccf28SAndroid Build Coastguard Worker Returns the cosine of <code>(v * pi)</code>, where <code>(v * pi)</code> is measured in radians.
665*e1eccf28SAndroid Build Coastguard Worker
666*e1eccf28SAndroid Build Coastguard Worker To get the cosine of a value measured in degrees, call <code>cospi(v / 180.f)</code>.
667*e1eccf28SAndroid Build Coastguard Worker
668*e1eccf28SAndroid Build Coastguard Worker See also @native_cospi().
669*e1eccf28SAndroid Build Coastguard Workerend:
670*e1eccf28SAndroid Build Coastguard Worker
671*e1eccf28SAndroid Build Coastguard Workerfunction: cospi
672*e1eccf28SAndroid Build Coastguard Workerversion: 24
673*e1eccf28SAndroid Build Coastguard Workerattrib: const
674*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
675*e1eccf28SAndroid Build Coastguard Workert: f16
676*e1eccf28SAndroid Build Coastguard Workerret: #2#1
677*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
678*e1eccf28SAndroid Build Coastguard Workerend:
679*e1eccf28SAndroid Build Coastguard Worker
680*e1eccf28SAndroid Build Coastguard Workerfunction: degrees
681*e1eccf28SAndroid Build Coastguard Workerversion: 9
682*e1eccf28SAndroid Build Coastguard Workerattrib: const
683*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
684*e1eccf28SAndroid Build Coastguard Workert: f32
685*e1eccf28SAndroid Build Coastguard Workerret: #2#1
686*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
687*e1eccf28SAndroid Build Coastguard Workersummary: Converts radians into degrees
688*e1eccf28SAndroid Build Coastguard Workerdescription:
689*e1eccf28SAndroid Build Coastguard Worker Converts from radians to degrees.
690*e1eccf28SAndroid Build Coastguard Workerend:
691*e1eccf28SAndroid Build Coastguard Worker
692*e1eccf28SAndroid Build Coastguard Workerfunction: degrees
693*e1eccf28SAndroid Build Coastguard Workerversion: 24
694*e1eccf28SAndroid Build Coastguard Workerattrib: const
695*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
696*e1eccf28SAndroid Build Coastguard Workert: f16
697*e1eccf28SAndroid Build Coastguard Workerret: #2#1
698*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
699*e1eccf28SAndroid Build Coastguard Workerend:
700*e1eccf28SAndroid Build Coastguard Worker
701*e1eccf28SAndroid Build Coastguard Workerfunction: erf
702*e1eccf28SAndroid Build Coastguard Workerversion: 9
703*e1eccf28SAndroid Build Coastguard Workerattrib: const
704*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
705*e1eccf28SAndroid Build Coastguard Workert: f32
706*e1eccf28SAndroid Build Coastguard Workerret: #2#1
707*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
708*e1eccf28SAndroid Build Coastguard Workersummary: Mathematical error function
709*e1eccf28SAndroid Build Coastguard Workerdescription:
710*e1eccf28SAndroid Build Coastguard Worker Returns the error function.
711*e1eccf28SAndroid Build Coastguard Workerend:
712*e1eccf28SAndroid Build Coastguard Worker
713*e1eccf28SAndroid Build Coastguard Workerfunction: erf
714*e1eccf28SAndroid Build Coastguard Workerversion: 24
715*e1eccf28SAndroid Build Coastguard Workerattrib: const
716*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
717*e1eccf28SAndroid Build Coastguard Workert: f16
718*e1eccf28SAndroid Build Coastguard Workerret: #2#1
719*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
720*e1eccf28SAndroid Build Coastguard Workerend:
721*e1eccf28SAndroid Build Coastguard Worker
722*e1eccf28SAndroid Build Coastguard Workerfunction: erfc
723*e1eccf28SAndroid Build Coastguard Workerversion: 9
724*e1eccf28SAndroid Build Coastguard Workerattrib: const
725*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
726*e1eccf28SAndroid Build Coastguard Workert: f32
727*e1eccf28SAndroid Build Coastguard Workerret: #2#1
728*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
729*e1eccf28SAndroid Build Coastguard Workersummary: Mathematical complementary error function
730*e1eccf28SAndroid Build Coastguard Workerdescription:
731*e1eccf28SAndroid Build Coastguard Worker Returns the complementary error function.
732*e1eccf28SAndroid Build Coastguard Workerend:
733*e1eccf28SAndroid Build Coastguard Worker
734*e1eccf28SAndroid Build Coastguard Workerfunction: erfc
735*e1eccf28SAndroid Build Coastguard Workerversion: 24
736*e1eccf28SAndroid Build Coastguard Workerattrib: const
737*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
738*e1eccf28SAndroid Build Coastguard Workert: f16
739*e1eccf28SAndroid Build Coastguard Workerret: #2#1
740*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
741*e1eccf28SAndroid Build Coastguard Workerend:
742*e1eccf28SAndroid Build Coastguard Worker
743*e1eccf28SAndroid Build Coastguard Workerfunction: exp
744*e1eccf28SAndroid Build Coastguard Workerversion: 9
745*e1eccf28SAndroid Build Coastguard Workerattrib: const
746*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
747*e1eccf28SAndroid Build Coastguard Workert: f32
748*e1eccf28SAndroid Build Coastguard Workerret: #2#1
749*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
750*e1eccf28SAndroid Build Coastguard Workersummary: e raised to a number
751*e1eccf28SAndroid Build Coastguard Workerdescription:
752*e1eccf28SAndroid Build Coastguard Worker Returns e raised to v, i.e. e ^ v.
753*e1eccf28SAndroid Build Coastguard Worker
754*e1eccf28SAndroid Build Coastguard Worker See also @native_exp().
755*e1eccf28SAndroid Build Coastguard Workerend:
756*e1eccf28SAndroid Build Coastguard Worker
757*e1eccf28SAndroid Build Coastguard Workerfunction: exp
758*e1eccf28SAndroid Build Coastguard Workerversion: 24
759*e1eccf28SAndroid Build Coastguard Workerattrib: const
760*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
761*e1eccf28SAndroid Build Coastguard Workert: f16
762*e1eccf28SAndroid Build Coastguard Workerret: #2#1
763*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
764*e1eccf28SAndroid Build Coastguard Workerend:
765*e1eccf28SAndroid Build Coastguard Worker
766*e1eccf28SAndroid Build Coastguard Workerfunction: exp10
767*e1eccf28SAndroid Build Coastguard Workerversion: 9
768*e1eccf28SAndroid Build Coastguard Workerattrib: const
769*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
770*e1eccf28SAndroid Build Coastguard Workert: f32
771*e1eccf28SAndroid Build Coastguard Workerret: #2#1
772*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
773*e1eccf28SAndroid Build Coastguard Workersummary: 10 raised to a number
774*e1eccf28SAndroid Build Coastguard Workerdescription:
775*e1eccf28SAndroid Build Coastguard Worker Returns 10 raised to v, i.e. 10.f ^ v.
776*e1eccf28SAndroid Build Coastguard Worker
777*e1eccf28SAndroid Build Coastguard Worker See also @native_exp10().
778*e1eccf28SAndroid Build Coastguard Workerend:
779*e1eccf28SAndroid Build Coastguard Worker
780*e1eccf28SAndroid Build Coastguard Workerfunction: exp10
781*e1eccf28SAndroid Build Coastguard Workerversion: 24
782*e1eccf28SAndroid Build Coastguard Workerattrib: const
783*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
784*e1eccf28SAndroid Build Coastguard Workert: f16
785*e1eccf28SAndroid Build Coastguard Workerret: #2#1
786*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
787*e1eccf28SAndroid Build Coastguard Workerend:
788*e1eccf28SAndroid Build Coastguard Worker
789*e1eccf28SAndroid Build Coastguard Workerfunction: exp2
790*e1eccf28SAndroid Build Coastguard Workerversion: 9
791*e1eccf28SAndroid Build Coastguard Workerattrib: const
792*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
793*e1eccf28SAndroid Build Coastguard Workert: f32
794*e1eccf28SAndroid Build Coastguard Workerret: #2#1
795*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
796*e1eccf28SAndroid Build Coastguard Workersummary: 2 raised to a number
797*e1eccf28SAndroid Build Coastguard Workerdescription:
798*e1eccf28SAndroid Build Coastguard Worker Returns 2 raised to v, i.e. 2.f ^ v.
799*e1eccf28SAndroid Build Coastguard Worker
800*e1eccf28SAndroid Build Coastguard Worker See also @native_exp2().
801*e1eccf28SAndroid Build Coastguard Workerend:
802*e1eccf28SAndroid Build Coastguard Worker
803*e1eccf28SAndroid Build Coastguard Workerfunction: exp2
804*e1eccf28SAndroid Build Coastguard Workerversion: 24
805*e1eccf28SAndroid Build Coastguard Workerattrib: const
806*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
807*e1eccf28SAndroid Build Coastguard Workert: f16
808*e1eccf28SAndroid Build Coastguard Workerret: #2#1
809*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
810*e1eccf28SAndroid Build Coastguard Workerend:
811*e1eccf28SAndroid Build Coastguard Worker
812*e1eccf28SAndroid Build Coastguard Workerfunction: expm1
813*e1eccf28SAndroid Build Coastguard Workerversion: 9
814*e1eccf28SAndroid Build Coastguard Workerattrib: const
815*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
816*e1eccf28SAndroid Build Coastguard Workert: f32
817*e1eccf28SAndroid Build Coastguard Workerret: #2#1
818*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
819*e1eccf28SAndroid Build Coastguard Workersummary: e raised to a number minus one
820*e1eccf28SAndroid Build Coastguard Workerdescription:
821*e1eccf28SAndroid Build Coastguard Worker Returns e raised to v minus 1, i.e. (e ^ v) - 1.
822*e1eccf28SAndroid Build Coastguard Worker
823*e1eccf28SAndroid Build Coastguard Worker See also @native_expm1().
824*e1eccf28SAndroid Build Coastguard Workerend:
825*e1eccf28SAndroid Build Coastguard Worker
826*e1eccf28SAndroid Build Coastguard Workerfunction: expm1
827*e1eccf28SAndroid Build Coastguard Workerversion: 24
828*e1eccf28SAndroid Build Coastguard Workerattrib: const
829*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
830*e1eccf28SAndroid Build Coastguard Workert: f16
831*e1eccf28SAndroid Build Coastguard Workerret: #2#1
832*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
833*e1eccf28SAndroid Build Coastguard Workerend:
834*e1eccf28SAndroid Build Coastguard Worker
835*e1eccf28SAndroid Build Coastguard Workerfunction: fabs
836*e1eccf28SAndroid Build Coastguard Workerversion: 9
837*e1eccf28SAndroid Build Coastguard Workerattrib: const
838*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
839*e1eccf28SAndroid Build Coastguard Workert: f32
840*e1eccf28SAndroid Build Coastguard Workerret: #2#1
841*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
842*e1eccf28SAndroid Build Coastguard Workersummary: Absolute value of a float
843*e1eccf28SAndroid Build Coastguard Workerdescription:
844*e1eccf28SAndroid Build Coastguard Worker Returns the absolute value of the float v.
845*e1eccf28SAndroid Build Coastguard Worker
846*e1eccf28SAndroid Build Coastguard Worker For integers, use @abs().
847*e1eccf28SAndroid Build Coastguard Workerend:
848*e1eccf28SAndroid Build Coastguard Worker
849*e1eccf28SAndroid Build Coastguard Workerfunction: fabs
850*e1eccf28SAndroid Build Coastguard Workerversion: 24
851*e1eccf28SAndroid Build Coastguard Workerattrib: const
852*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
853*e1eccf28SAndroid Build Coastguard Workert: f16
854*e1eccf28SAndroid Build Coastguard Workerret: #2#1
855*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
856*e1eccf28SAndroid Build Coastguard Workerend:
857*e1eccf28SAndroid Build Coastguard Worker
858*e1eccf28SAndroid Build Coastguard Workerfunction: fdim
859*e1eccf28SAndroid Build Coastguard Workerversion: 9
860*e1eccf28SAndroid Build Coastguard Workerattrib: const
861*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
862*e1eccf28SAndroid Build Coastguard Workert: f32
863*e1eccf28SAndroid Build Coastguard Workerret: #2#1
864*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
865*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
866*e1eccf28SAndroid Build Coastguard Workersummary: Positive difference between two values
867*e1eccf28SAndroid Build Coastguard Workerdescription:
868*e1eccf28SAndroid Build Coastguard Worker Returns the positive difference between two values.
869*e1eccf28SAndroid Build Coastguard Worker
870*e1eccf28SAndroid Build Coastguard Worker If a &gt; b, returns (a - b) otherwise returns 0f.
871*e1eccf28SAndroid Build Coastguard Workerend:
872*e1eccf28SAndroid Build Coastguard Worker
873*e1eccf28SAndroid Build Coastguard Workerfunction: fdim
874*e1eccf28SAndroid Build Coastguard Workerversion: 24
875*e1eccf28SAndroid Build Coastguard Workerattrib: const
876*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
877*e1eccf28SAndroid Build Coastguard Workert: f16
878*e1eccf28SAndroid Build Coastguard Workerret: #2#1
879*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
880*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
881*e1eccf28SAndroid Build Coastguard Workerend:
882*e1eccf28SAndroid Build Coastguard Worker
883*e1eccf28SAndroid Build Coastguard Workerfunction: floor
884*e1eccf28SAndroid Build Coastguard Workerversion: 9
885*e1eccf28SAndroid Build Coastguard Workerattrib: const
886*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
887*e1eccf28SAndroid Build Coastguard Workert: f32
888*e1eccf28SAndroid Build Coastguard Workerret: #2#1
889*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
890*e1eccf28SAndroid Build Coastguard Workersummary: Smallest integer not greater than a value
891*e1eccf28SAndroid Build Coastguard Workerdescription:
892*e1eccf28SAndroid Build Coastguard Worker Returns the smallest integer not greater than a value.
893*e1eccf28SAndroid Build Coastguard Worker
894*e1eccf28SAndroid Build Coastguard Worker For example, <code>floor(1.2f)</code> returns 1.f, and <code>floor(-1.2f)</code> returns -2.f.
895*e1eccf28SAndroid Build Coastguard Worker
896*e1eccf28SAndroid Build Coastguard Worker See also @ceil().
897*e1eccf28SAndroid Build Coastguard Workerend:
898*e1eccf28SAndroid Build Coastguard Worker
899*e1eccf28SAndroid Build Coastguard Workerfunction: floor
900*e1eccf28SAndroid Build Coastguard Workerversion: 24
901*e1eccf28SAndroid Build Coastguard Workerattrib: const
902*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
903*e1eccf28SAndroid Build Coastguard Workert: f16
904*e1eccf28SAndroid Build Coastguard Workerret: #2#1
905*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
906*e1eccf28SAndroid Build Coastguard Workerend:
907*e1eccf28SAndroid Build Coastguard Worker
908*e1eccf28SAndroid Build Coastguard Workerfunction: fma
909*e1eccf28SAndroid Build Coastguard Workerversion: 9
910*e1eccf28SAndroid Build Coastguard Workerattrib: const
911*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
912*e1eccf28SAndroid Build Coastguard Workert: f32
913*e1eccf28SAndroid Build Coastguard Workerret: #2#1
914*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 multiplicand1
915*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 multiplicand2
916*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 offset
917*e1eccf28SAndroid Build Coastguard Workersummary: Multiply and add
918*e1eccf28SAndroid Build Coastguard Workerdescription:
919*e1eccf28SAndroid Build Coastguard Worker Multiply and add.  Returns <code>(multiplicand1 * multiplicand2) + offset</code>.
920*e1eccf28SAndroid Build Coastguard Worker
921*e1eccf28SAndroid Build Coastguard Worker This function is similar to @mad().  fma() retains full precision of the multiplied result
922*e1eccf28SAndroid Build Coastguard Worker and rounds only after the addition.  @mad() rounds after the multiplication and the addition.
923*e1eccf28SAndroid Build Coastguard Worker This extra precision is not guaranteed in rs_fp_relaxed mode.
924*e1eccf28SAndroid Build Coastguard Workerend:
925*e1eccf28SAndroid Build Coastguard Worker
926*e1eccf28SAndroid Build Coastguard Workerfunction: fma
927*e1eccf28SAndroid Build Coastguard Workerversion: 24
928*e1eccf28SAndroid Build Coastguard Workerattrib: const
929*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
930*e1eccf28SAndroid Build Coastguard Workert: f16
931*e1eccf28SAndroid Build Coastguard Workerret: #2#1
932*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 multiplicand1
933*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 multiplicand2
934*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 offset
935*e1eccf28SAndroid Build Coastguard Workerend:
936*e1eccf28SAndroid Build Coastguard Worker
937*e1eccf28SAndroid Build Coastguard Workerfunction: fmax
938*e1eccf28SAndroid Build Coastguard Workerversion: 9
939*e1eccf28SAndroid Build Coastguard Workerattrib: const
940*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
941*e1eccf28SAndroid Build Coastguard Workert: f32
942*e1eccf28SAndroid Build Coastguard Workerret: #2#1
943*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
944*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
945*e1eccf28SAndroid Build Coastguard Workersummary: Maximum of two floats
946*e1eccf28SAndroid Build Coastguard Workerdescription:
947*e1eccf28SAndroid Build Coastguard Worker Returns the maximum of a and b, i.e. <code>(a &lt; b ? b : a)</code>.
948*e1eccf28SAndroid Build Coastguard Worker
949*e1eccf28SAndroid Build Coastguard Worker The @max() function returns identical results but can be applied to more data types.
950*e1eccf28SAndroid Build Coastguard Workerend:
951*e1eccf28SAndroid Build Coastguard Worker
952*e1eccf28SAndroid Build Coastguard Workerfunction: fmax
953*e1eccf28SAndroid Build Coastguard Workerversion: 24
954*e1eccf28SAndroid Build Coastguard Workerattrib: const
955*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
956*e1eccf28SAndroid Build Coastguard Workert: f16
957*e1eccf28SAndroid Build Coastguard Workerret: #2#1
958*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
959*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
960*e1eccf28SAndroid Build Coastguard Workerend:
961*e1eccf28SAndroid Build Coastguard Worker
962*e1eccf28SAndroid Build Coastguard Workerfunction: fmax
963*e1eccf28SAndroid Build Coastguard Workerversion: 9
964*e1eccf28SAndroid Build Coastguard Workerattrib: const
965*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
966*e1eccf28SAndroid Build Coastguard Workert: f32
967*e1eccf28SAndroid Build Coastguard Workerret: #2#1
968*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
969*e1eccf28SAndroid Build Coastguard Workerarg: #2 b
970*e1eccf28SAndroid Build Coastguard Workerend:
971*e1eccf28SAndroid Build Coastguard Worker
972*e1eccf28SAndroid Build Coastguard Workerfunction: fmax
973*e1eccf28SAndroid Build Coastguard Workerversion: 24
974*e1eccf28SAndroid Build Coastguard Workerattrib: const
975*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
976*e1eccf28SAndroid Build Coastguard Workert: f16
977*e1eccf28SAndroid Build Coastguard Workerret: #2#1
978*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
979*e1eccf28SAndroid Build Coastguard Workerarg: #2 b
980*e1eccf28SAndroid Build Coastguard Workerend:
981*e1eccf28SAndroid Build Coastguard Worker
982*e1eccf28SAndroid Build Coastguard Workerfunction: fmin
983*e1eccf28SAndroid Build Coastguard Workerversion: 9
984*e1eccf28SAndroid Build Coastguard Workerattrib: const
985*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
986*e1eccf28SAndroid Build Coastguard Workert: f32
987*e1eccf28SAndroid Build Coastguard Workerret: #2#1
988*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
989*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
990*e1eccf28SAndroid Build Coastguard Workersummary: Minimum of two floats
991*e1eccf28SAndroid Build Coastguard Workerdescription:
992*e1eccf28SAndroid Build Coastguard Worker Returns the minimum of a and b, i.e. <code>(a &gt; b ? b : a)</code>.
993*e1eccf28SAndroid Build Coastguard Worker
994*e1eccf28SAndroid Build Coastguard Worker The @min() function returns identical results but can be applied to more data types.
995*e1eccf28SAndroid Build Coastguard Workerend:
996*e1eccf28SAndroid Build Coastguard Worker
997*e1eccf28SAndroid Build Coastguard Workerfunction: fmin
998*e1eccf28SAndroid Build Coastguard Workerversion: 24
999*e1eccf28SAndroid Build Coastguard Workerattrib: const
1000*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1001*e1eccf28SAndroid Build Coastguard Workert: f16
1002*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1003*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1004*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1005*e1eccf28SAndroid Build Coastguard Workerend:
1006*e1eccf28SAndroid Build Coastguard Worker
1007*e1eccf28SAndroid Build Coastguard Workerfunction: fmin
1008*e1eccf28SAndroid Build Coastguard Workerversion: 9
1009*e1eccf28SAndroid Build Coastguard Workerattrib: const
1010*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1011*e1eccf28SAndroid Build Coastguard Workert: f32
1012*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1013*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1014*e1eccf28SAndroid Build Coastguard Workerarg: #2 b
1015*e1eccf28SAndroid Build Coastguard Workerend:
1016*e1eccf28SAndroid Build Coastguard Worker
1017*e1eccf28SAndroid Build Coastguard Workerfunction: fmin
1018*e1eccf28SAndroid Build Coastguard Workerversion: 24
1019*e1eccf28SAndroid Build Coastguard Workerattrib: const
1020*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1021*e1eccf28SAndroid Build Coastguard Workert: f16
1022*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1023*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1024*e1eccf28SAndroid Build Coastguard Workerarg: #2 b
1025*e1eccf28SAndroid Build Coastguard Workerend:
1026*e1eccf28SAndroid Build Coastguard Worker
1027*e1eccf28SAndroid Build Coastguard Workerfunction: fmod
1028*e1eccf28SAndroid Build Coastguard Workerversion: 9
1029*e1eccf28SAndroid Build Coastguard Workerattrib: const
1030*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1031*e1eccf28SAndroid Build Coastguard Workert: f32
1032*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1033*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator
1034*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator
1035*e1eccf28SAndroid Build Coastguard Workersummary: Modulo
1036*e1eccf28SAndroid Build Coastguard Workerdescription:
1037*e1eccf28SAndroid Build Coastguard Worker Returns the remainder of (numerator / denominator), where the quotient is rounded towards zero.
1038*e1eccf28SAndroid Build Coastguard Worker
1039*e1eccf28SAndroid Build Coastguard Worker The function @remainder() is similar but rounds toward the closest interger.
1040*e1eccf28SAndroid Build Coastguard Worker For example, <code>fmod(-3.8f, 2.f)</code> returns -1.8f (-3.8f - -1.f * 2.f)
1041*e1eccf28SAndroid Build Coastguard Worker while <code>@remainder(-3.8f, 2.f)</code> returns 0.2f (-3.8f - -2.f * 2.f).
1042*e1eccf28SAndroid Build Coastguard Workerend:
1043*e1eccf28SAndroid Build Coastguard Worker
1044*e1eccf28SAndroid Build Coastguard Workerfunction: fmod
1045*e1eccf28SAndroid Build Coastguard Workerversion: 24
1046*e1eccf28SAndroid Build Coastguard Workerattrib: const
1047*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1048*e1eccf28SAndroid Build Coastguard Workert: f16
1049*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1050*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator
1051*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator
1052*e1eccf28SAndroid Build Coastguard Workerend:
1053*e1eccf28SAndroid Build Coastguard Worker
1054*e1eccf28SAndroid Build Coastguard Workerfunction: fract
1055*e1eccf28SAndroid Build Coastguard Workerversion: 9
1056*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1057*e1eccf28SAndroid Build Coastguard Workert: f32
1058*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1059*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, "Input value."
1060*e1eccf28SAndroid Build Coastguard Workerarg: #2#1* floor, "If floor is not null, *floor will be set to the floor of v."
1061*e1eccf28SAndroid Build Coastguard Workersummary: Positive fractional part
1062*e1eccf28SAndroid Build Coastguard Workerdescription:
1063*e1eccf28SAndroid Build Coastguard Worker Returns the positive fractional part of v, i.e. <code>v - floor(v)</code>.
1064*e1eccf28SAndroid Build Coastguard Worker
1065*e1eccf28SAndroid Build Coastguard Worker For example, <code>fract(1.3f, &amp;val)</code> returns 0.3f and sets val to 1.f.
1066*e1eccf28SAndroid Build Coastguard Worker <code>fract(-1.3f, &amp;val)</code> returns 0.7f and sets val to -2.f.
1067*e1eccf28SAndroid Build Coastguard Workerend:
1068*e1eccf28SAndroid Build Coastguard Worker
1069*e1eccf28SAndroid Build Coastguard Workerfunction: fract
1070*e1eccf28SAndroid Build Coastguard Workerversion: 9 23
1071*e1eccf28SAndroid Build Coastguard Workerattrib: const
1072*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1073*e1eccf28SAndroid Build Coastguard Workert: f32
1074*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1075*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1076*e1eccf28SAndroid Build Coastguard Workerinline:
1077*e1eccf28SAndroid Build Coastguard Worker #2#1 unused;
1078*e1eccf28SAndroid Build Coastguard Worker return fract(v, &unused);
1079*e1eccf28SAndroid Build Coastguard Workerend:
1080*e1eccf28SAndroid Build Coastguard Worker
1081*e1eccf28SAndroid Build Coastguard Workerfunction: fract
1082*e1eccf28SAndroid Build Coastguard Workerversion: 24
1083*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1084*e1eccf28SAndroid Build Coastguard Workert: f32
1085*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1086*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1087*e1eccf28SAndroid Build Coastguard Workerend:
1088*e1eccf28SAndroid Build Coastguard Worker
1089*e1eccf28SAndroid Build Coastguard Workerfunction: fract
1090*e1eccf28SAndroid Build Coastguard Workerversion: 24
1091*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1092*e1eccf28SAndroid Build Coastguard Workert: f16
1093*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1094*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1095*e1eccf28SAndroid Build Coastguard Workerarg: #2#1* floor
1096*e1eccf28SAndroid Build Coastguard Workerend:
1097*e1eccf28SAndroid Build Coastguard Worker
1098*e1eccf28SAndroid Build Coastguard Workerfunction: fract
1099*e1eccf28SAndroid Build Coastguard Workerversion: 24
1100*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1101*e1eccf28SAndroid Build Coastguard Workert: f16
1102*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1103*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1104*e1eccf28SAndroid Build Coastguard Workerend:
1105*e1eccf28SAndroid Build Coastguard Worker
1106*e1eccf28SAndroid Build Coastguard Workerfunction: frexp
1107*e1eccf28SAndroid Build Coastguard Workerversion: 9
1108*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1109*e1eccf28SAndroid Build Coastguard Workert: f32
1110*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1111*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, "Input value."
1112*e1eccf28SAndroid Build Coastguard Workerarg: int#1* exponent, "If exponent is not null, *exponent will be set to the exponent of v."
1113*e1eccf28SAndroid Build Coastguard Workersummary: Binary mantissa and exponent
1114*e1eccf28SAndroid Build Coastguard Workerdescription:
1115*e1eccf28SAndroid Build Coastguard Worker Returns the binary mantissa and exponent of v, i.e. <code>v == mantissa * 2 ^ exponent</code>.
1116*e1eccf28SAndroid Build Coastguard Worker
1117*e1eccf28SAndroid Build Coastguard Worker The mantissa is always between 0.5 (inclusive) and 1.0 (exclusive).
1118*e1eccf28SAndroid Build Coastguard Worker
1119*e1eccf28SAndroid Build Coastguard Worker See @ldexp() for the reverse operation.  See also @logb() and @ilogb().
1120*e1eccf28SAndroid Build Coastguard Workerend:
1121*e1eccf28SAndroid Build Coastguard Worker
1122*e1eccf28SAndroid Build Coastguard Workerfunction: frexp
1123*e1eccf28SAndroid Build Coastguard Workerversion: 24
1124*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1125*e1eccf28SAndroid Build Coastguard Workert: f16
1126*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1127*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1128*e1eccf28SAndroid Build Coastguard Workerarg: int#1* exponent
1129*e1eccf28SAndroid Build Coastguard Workertest: none
1130*e1eccf28SAndroid Build Coastguard Workerend:
1131*e1eccf28SAndroid Build Coastguard Worker
1132*e1eccf28SAndroid Build Coastguard Workerfunction: half_recip
1133*e1eccf28SAndroid Build Coastguard Workerversion: 17
1134*e1eccf28SAndroid Build Coastguard Workerattrib: const
1135*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1136*e1eccf28SAndroid Build Coastguard Workert: f32
1137*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1138*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1139*e1eccf28SAndroid Build Coastguard Workersummary: Reciprocal computed to 16 bit precision
1140*e1eccf28SAndroid Build Coastguard Workerdescription:
1141*e1eccf28SAndroid Build Coastguard Worker Returns the approximate reciprocal of a value.
1142*e1eccf28SAndroid Build Coastguard Worker
1143*e1eccf28SAndroid Build Coastguard Worker The precision is that of a 16 bit floating point value.
1144*e1eccf28SAndroid Build Coastguard Worker
1145*e1eccf28SAndroid Build Coastguard Worker See also @native_recip().
1146*e1eccf28SAndroid Build Coastguard Workerend:
1147*e1eccf28SAndroid Build Coastguard Worker
1148*e1eccf28SAndroid Build Coastguard Workerfunction: half_rsqrt
1149*e1eccf28SAndroid Build Coastguard Workerversion: 17
1150*e1eccf28SAndroid Build Coastguard Workerattrib: const
1151*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1152*e1eccf28SAndroid Build Coastguard Workert: f32
1153*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1154*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1155*e1eccf28SAndroid Build Coastguard Workersummary: Reciprocal of a square root computed to 16 bit precision
1156*e1eccf28SAndroid Build Coastguard Workerdescription:
1157*e1eccf28SAndroid Build Coastguard Worker Returns the approximate value of <code>(1.f / sqrt(value))</code>.
1158*e1eccf28SAndroid Build Coastguard Worker
1159*e1eccf28SAndroid Build Coastguard Worker The precision is that of a 16 bit floating point value.
1160*e1eccf28SAndroid Build Coastguard Worker
1161*e1eccf28SAndroid Build Coastguard Worker See also @rsqrt(), @native_rsqrt().
1162*e1eccf28SAndroid Build Coastguard Workerend:
1163*e1eccf28SAndroid Build Coastguard Worker
1164*e1eccf28SAndroid Build Coastguard Workerfunction: half_sqrt
1165*e1eccf28SAndroid Build Coastguard Workerversion: 17
1166*e1eccf28SAndroid Build Coastguard Workerattrib: const
1167*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1168*e1eccf28SAndroid Build Coastguard Workert: f32
1169*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1170*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1171*e1eccf28SAndroid Build Coastguard Workersummary: Square root computed to 16 bit precision
1172*e1eccf28SAndroid Build Coastguard Workerdescription:
1173*e1eccf28SAndroid Build Coastguard Worker Returns the approximate square root of a value.
1174*e1eccf28SAndroid Build Coastguard Worker
1175*e1eccf28SAndroid Build Coastguard Worker The precision is that of a 16 bit floating point value.
1176*e1eccf28SAndroid Build Coastguard Worker
1177*e1eccf28SAndroid Build Coastguard Worker See also @sqrt(), @native_sqrt().
1178*e1eccf28SAndroid Build Coastguard Workerend:
1179*e1eccf28SAndroid Build Coastguard Worker
1180*e1eccf28SAndroid Build Coastguard Workerfunction: hypot
1181*e1eccf28SAndroid Build Coastguard Workerversion: 9
1182*e1eccf28SAndroid Build Coastguard Workerattrib: const
1183*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1184*e1eccf28SAndroid Build Coastguard Workert: f32
1185*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1186*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1187*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1188*e1eccf28SAndroid Build Coastguard Workersummary: Hypotenuse
1189*e1eccf28SAndroid Build Coastguard Workerdescription:
1190*e1eccf28SAndroid Build Coastguard Worker Returns the hypotenuse, i.e. <code>sqrt(a * a + b * b)</code>.
1191*e1eccf28SAndroid Build Coastguard Worker
1192*e1eccf28SAndroid Build Coastguard Worker See also @native_hypot().
1193*e1eccf28SAndroid Build Coastguard Workerend:
1194*e1eccf28SAndroid Build Coastguard Worker
1195*e1eccf28SAndroid Build Coastguard Workerfunction: hypot
1196*e1eccf28SAndroid Build Coastguard Workerversion: 24
1197*e1eccf28SAndroid Build Coastguard Workerattrib: const
1198*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1199*e1eccf28SAndroid Build Coastguard Workert: f16
1200*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1201*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1202*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1203*e1eccf28SAndroid Build Coastguard Workerend:
1204*e1eccf28SAndroid Build Coastguard Worker
1205*e1eccf28SAndroid Build Coastguard Workerfunction: ilogb
1206*e1eccf28SAndroid Build Coastguard Workerversion: 9
1207*e1eccf28SAndroid Build Coastguard Workerattrib: const
1208*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1209*e1eccf28SAndroid Build Coastguard Workert: f32
1210*e1eccf28SAndroid Build Coastguard Workerret: int#1
1211*e1eccf28SAndroid Build Coastguard Workerarg: float#1 v
1212*e1eccf28SAndroid Build Coastguard Workersummary: Base two exponent
1213*e1eccf28SAndroid Build Coastguard Workerdescription:
1214*e1eccf28SAndroid Build Coastguard Worker Returns the base two exponent of a value, where the mantissa is between
1215*e1eccf28SAndroid Build Coastguard Worker 1.f (inclusive) and 2.f (exclusive).
1216*e1eccf28SAndroid Build Coastguard Worker
1217*e1eccf28SAndroid Build Coastguard Worker For example, <code>ilogb(8.5f)</code> returns 3.
1218*e1eccf28SAndroid Build Coastguard Worker
1219*e1eccf28SAndroid Build Coastguard Worker Because of the difference in mantissa, this number is one less than is returned by @frexp().
1220*e1eccf28SAndroid Build Coastguard Worker
1221*e1eccf28SAndroid Build Coastguard Worker @logb() is similar but returns a float.
1222*e1eccf28SAndroid Build Coastguard Workertest: custom
1223*e1eccf28SAndroid Build Coastguard Workerend:
1224*e1eccf28SAndroid Build Coastguard Worker
1225*e1eccf28SAndroid Build Coastguard Workerfunction: ilogb
1226*e1eccf28SAndroid Build Coastguard Workerversion: 24
1227*e1eccf28SAndroid Build Coastguard Workerattrib: const
1228*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1229*e1eccf28SAndroid Build Coastguard Workert: f16
1230*e1eccf28SAndroid Build Coastguard Workerret: int#1
1231*e1eccf28SAndroid Build Coastguard Workerarg: half#1 v
1232*e1eccf28SAndroid Build Coastguard Workertest: none
1233*e1eccf28SAndroid Build Coastguard Workerend:
1234*e1eccf28SAndroid Build Coastguard Worker
1235*e1eccf28SAndroid Build Coastguard Workerfunction: ldexp
1236*e1eccf28SAndroid Build Coastguard Workerversion: 9
1237*e1eccf28SAndroid Build Coastguard Workerattrib: const
1238*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1239*e1eccf28SAndroid Build Coastguard Workerret: float#1
1240*e1eccf28SAndroid Build Coastguard Workerarg: float#1 mantissa, "Mantissa."
1241*e1eccf28SAndroid Build Coastguard Workerarg: int#1 exponent, "Exponent, a single component or matching vector."
1242*e1eccf28SAndroid Build Coastguard Workersummary: Creates a floating point from mantissa and exponent
1243*e1eccf28SAndroid Build Coastguard Workerdescription:
1244*e1eccf28SAndroid Build Coastguard Worker Returns the floating point created from the mantissa and exponent,
1245*e1eccf28SAndroid Build Coastguard Worker i.e. (mantissa * 2 ^ exponent).
1246*e1eccf28SAndroid Build Coastguard Worker
1247*e1eccf28SAndroid Build Coastguard Worker See @frexp() for the reverse operation.
1248*e1eccf28SAndroid Build Coastguard Workerend:
1249*e1eccf28SAndroid Build Coastguard Worker
1250*e1eccf28SAndroid Build Coastguard Workerfunction: ldexp
1251*e1eccf28SAndroid Build Coastguard Workerversion: 24
1252*e1eccf28SAndroid Build Coastguard Workerattrib: const
1253*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1254*e1eccf28SAndroid Build Coastguard Workerret: half#1
1255*e1eccf28SAndroid Build Coastguard Workerarg: half#1 mantissa
1256*e1eccf28SAndroid Build Coastguard Workerarg: int#1 exponent
1257*e1eccf28SAndroid Build Coastguard Workertest: none
1258*e1eccf28SAndroid Build Coastguard Workerend:
1259*e1eccf28SAndroid Build Coastguard Worker
1260*e1eccf28SAndroid Build Coastguard Workerfunction: ldexp
1261*e1eccf28SAndroid Build Coastguard Workerversion: 9
1262*e1eccf28SAndroid Build Coastguard Workerattrib: const
1263*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1264*e1eccf28SAndroid Build Coastguard Workerret: float#1
1265*e1eccf28SAndroid Build Coastguard Workerarg: float#1 mantissa
1266*e1eccf28SAndroid Build Coastguard Workerarg: int exponent
1267*e1eccf28SAndroid Build Coastguard Workerend:
1268*e1eccf28SAndroid Build Coastguard Worker
1269*e1eccf28SAndroid Build Coastguard Workerfunction: ldexp
1270*e1eccf28SAndroid Build Coastguard Workerversion: 24
1271*e1eccf28SAndroid Build Coastguard Workerattrib: const
1272*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1273*e1eccf28SAndroid Build Coastguard Workerret: half#1
1274*e1eccf28SAndroid Build Coastguard Workerarg: half#1 mantissa
1275*e1eccf28SAndroid Build Coastguard Workerarg: int exponent
1276*e1eccf28SAndroid Build Coastguard Workertest: none
1277*e1eccf28SAndroid Build Coastguard Workerend:
1278*e1eccf28SAndroid Build Coastguard Worker
1279*e1eccf28SAndroid Build Coastguard Workerfunction: lgamma
1280*e1eccf28SAndroid Build Coastguard Workerversion: 9
1281*e1eccf28SAndroid Build Coastguard Workerattrib: const
1282*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1283*e1eccf28SAndroid Build Coastguard Workert: f32
1284*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1285*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1286*e1eccf28SAndroid Build Coastguard Workersummary: Natural logarithm of the gamma function
1287*e1eccf28SAndroid Build Coastguard Workerdescription:
1288*e1eccf28SAndroid Build Coastguard Worker Returns the natural logarithm of the absolute value of the gamma function,
1289*e1eccf28SAndroid Build Coastguard Worker i.e. <code>@log(@fabs(@tgamma(v)))</code>.
1290*e1eccf28SAndroid Build Coastguard Worker
1291*e1eccf28SAndroid Build Coastguard Worker See also @tgamma().
1292*e1eccf28SAndroid Build Coastguard Workerend:
1293*e1eccf28SAndroid Build Coastguard Worker
1294*e1eccf28SAndroid Build Coastguard Workerfunction: lgamma
1295*e1eccf28SAndroid Build Coastguard Workerversion: 24
1296*e1eccf28SAndroid Build Coastguard Workerattrib: const
1297*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1298*e1eccf28SAndroid Build Coastguard Workert: f16
1299*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1300*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1301*e1eccf28SAndroid Build Coastguard Workertest: none
1302*e1eccf28SAndroid Build Coastguard Workerend:
1303*e1eccf28SAndroid Build Coastguard Worker
1304*e1eccf28SAndroid Build Coastguard Workerfunction: lgamma
1305*e1eccf28SAndroid Build Coastguard Workerversion: 9
1306*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1307*e1eccf28SAndroid Build Coastguard Workert: f32
1308*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1309*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1310*e1eccf28SAndroid Build Coastguard Workerarg: int#1* sign_of_gamma, "If sign_of_gamma is not null, *sign_of_gamma will be set to -1.f if the gamma of v is negative, otherwise to 1.f."
1311*e1eccf28SAndroid Build Coastguard Workertest: custom
1312*e1eccf28SAndroid Build Coastguard Worker#TODO Temporary until bionic & associated drivers are fixed
1313*e1eccf28SAndroid Build Coastguard Workerend:
1314*e1eccf28SAndroid Build Coastguard Worker
1315*e1eccf28SAndroid Build Coastguard Workerfunction: lgamma
1316*e1eccf28SAndroid Build Coastguard Workerversion: 24
1317*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1318*e1eccf28SAndroid Build Coastguard Workert: f16
1319*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1320*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1321*e1eccf28SAndroid Build Coastguard Workerarg: int#1* sign_of_gamma
1322*e1eccf28SAndroid Build Coastguard Workertest: none
1323*e1eccf28SAndroid Build Coastguard Workerend:
1324*e1eccf28SAndroid Build Coastguard Worker
1325*e1eccf28SAndroid Build Coastguard Workerfunction: log
1326*e1eccf28SAndroid Build Coastguard Workerversion: 9
1327*e1eccf28SAndroid Build Coastguard Workerattrib: const
1328*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1329*e1eccf28SAndroid Build Coastguard Workert: f32
1330*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1331*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1332*e1eccf28SAndroid Build Coastguard Workersummary: Natural logarithm
1333*e1eccf28SAndroid Build Coastguard Workerdescription:
1334*e1eccf28SAndroid Build Coastguard Worker Returns the natural logarithm.
1335*e1eccf28SAndroid Build Coastguard Worker
1336*e1eccf28SAndroid Build Coastguard Worker See also @native_log().
1337*e1eccf28SAndroid Build Coastguard Workerend:
1338*e1eccf28SAndroid Build Coastguard Worker
1339*e1eccf28SAndroid Build Coastguard Workerfunction: log
1340*e1eccf28SAndroid Build Coastguard Workerversion: 24
1341*e1eccf28SAndroid Build Coastguard Workerattrib: const
1342*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1343*e1eccf28SAndroid Build Coastguard Workert: f16
1344*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1345*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1346*e1eccf28SAndroid Build Coastguard Workerend:
1347*e1eccf28SAndroid Build Coastguard Worker
1348*e1eccf28SAndroid Build Coastguard Workerfunction: log10
1349*e1eccf28SAndroid Build Coastguard Workerversion: 9
1350*e1eccf28SAndroid Build Coastguard Workerattrib: const
1351*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1352*e1eccf28SAndroid Build Coastguard Workert: f32
1353*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1354*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1355*e1eccf28SAndroid Build Coastguard Workersummary: Base 10 logarithm
1356*e1eccf28SAndroid Build Coastguard Workerdescription:
1357*e1eccf28SAndroid Build Coastguard Worker Returns the base 10 logarithm.
1358*e1eccf28SAndroid Build Coastguard Worker
1359*e1eccf28SAndroid Build Coastguard Worker See also @native_log10().
1360*e1eccf28SAndroid Build Coastguard Workerend:
1361*e1eccf28SAndroid Build Coastguard Worker
1362*e1eccf28SAndroid Build Coastguard Workerfunction: log10
1363*e1eccf28SAndroid Build Coastguard Workerversion: 24
1364*e1eccf28SAndroid Build Coastguard Workerattrib: const
1365*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1366*e1eccf28SAndroid Build Coastguard Workert: f16
1367*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1368*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1369*e1eccf28SAndroid Build Coastguard Workerend:
1370*e1eccf28SAndroid Build Coastguard Worker
1371*e1eccf28SAndroid Build Coastguard Workerfunction: log1p
1372*e1eccf28SAndroid Build Coastguard Workerversion: 9
1373*e1eccf28SAndroid Build Coastguard Workerattrib: const
1374*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1375*e1eccf28SAndroid Build Coastguard Workert: f32
1376*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1377*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1378*e1eccf28SAndroid Build Coastguard Workersummary: Natural logarithm of a value plus 1
1379*e1eccf28SAndroid Build Coastguard Workerdescription:
1380*e1eccf28SAndroid Build Coastguard Worker Returns the natural logarithm of <code>(v + 1.f)</code>.
1381*e1eccf28SAndroid Build Coastguard Worker
1382*e1eccf28SAndroid Build Coastguard Worker See also @native_log1p().
1383*e1eccf28SAndroid Build Coastguard Workerend:
1384*e1eccf28SAndroid Build Coastguard Worker
1385*e1eccf28SAndroid Build Coastguard Workerfunction: log1p
1386*e1eccf28SAndroid Build Coastguard Workerversion: 24
1387*e1eccf28SAndroid Build Coastguard Workerattrib: const
1388*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1389*e1eccf28SAndroid Build Coastguard Workert: f16
1390*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1391*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1392*e1eccf28SAndroid Build Coastguard Workerend:
1393*e1eccf28SAndroid Build Coastguard Worker
1394*e1eccf28SAndroid Build Coastguard Workerfunction: log2
1395*e1eccf28SAndroid Build Coastguard Workerversion: 9
1396*e1eccf28SAndroid Build Coastguard Workerattrib: const
1397*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1398*e1eccf28SAndroid Build Coastguard Workert: f32
1399*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1400*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1401*e1eccf28SAndroid Build Coastguard Workersummary: Base 2 logarithm
1402*e1eccf28SAndroid Build Coastguard Workerdescription:
1403*e1eccf28SAndroid Build Coastguard Worker Returns the base 2 logarithm.
1404*e1eccf28SAndroid Build Coastguard Worker
1405*e1eccf28SAndroid Build Coastguard Worker See also @native_log2().
1406*e1eccf28SAndroid Build Coastguard Workerend:
1407*e1eccf28SAndroid Build Coastguard Worker
1408*e1eccf28SAndroid Build Coastguard Workerfunction: log2
1409*e1eccf28SAndroid Build Coastguard Workerversion: 24
1410*e1eccf28SAndroid Build Coastguard Workerattrib: const
1411*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1412*e1eccf28SAndroid Build Coastguard Workert: f16
1413*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1414*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1415*e1eccf28SAndroid Build Coastguard Workerend:
1416*e1eccf28SAndroid Build Coastguard Worker
1417*e1eccf28SAndroid Build Coastguard Workerfunction: logb
1418*e1eccf28SAndroid Build Coastguard Workerversion: 9
1419*e1eccf28SAndroid Build Coastguard Workerattrib: const
1420*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1421*e1eccf28SAndroid Build Coastguard Workert: f32
1422*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1423*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1424*e1eccf28SAndroid Build Coastguard Workersummary: Base two exponent
1425*e1eccf28SAndroid Build Coastguard Workerdescription:
1426*e1eccf28SAndroid Build Coastguard Worker Returns the base two exponent of a value, where the mantissa is between
1427*e1eccf28SAndroid Build Coastguard Worker 1.f (inclusive) and 2.f (exclusive).
1428*e1eccf28SAndroid Build Coastguard Worker
1429*e1eccf28SAndroid Build Coastguard Worker For example, <code>logb(8.5f)</code> returns 3.f.
1430*e1eccf28SAndroid Build Coastguard Worker
1431*e1eccf28SAndroid Build Coastguard Worker Because of the difference in mantissa, this number is one less than is returned by frexp().
1432*e1eccf28SAndroid Build Coastguard Worker
1433*e1eccf28SAndroid Build Coastguard Worker @ilogb() is similar but returns an integer.
1434*e1eccf28SAndroid Build Coastguard Workerend:
1435*e1eccf28SAndroid Build Coastguard Worker
1436*e1eccf28SAndroid Build Coastguard Workerfunction: logb
1437*e1eccf28SAndroid Build Coastguard Workerversion: 24
1438*e1eccf28SAndroid Build Coastguard Workerattrib: const
1439*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1440*e1eccf28SAndroid Build Coastguard Workert: f16
1441*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1442*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1443*e1eccf28SAndroid Build Coastguard Workerend:
1444*e1eccf28SAndroid Build Coastguard Worker
1445*e1eccf28SAndroid Build Coastguard Workerfunction: mad
1446*e1eccf28SAndroid Build Coastguard Workerversion: 9
1447*e1eccf28SAndroid Build Coastguard Workerattrib: const
1448*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1449*e1eccf28SAndroid Build Coastguard Workert: f32
1450*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1451*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 multiplicand1
1452*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 multiplicand2
1453*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 offset
1454*e1eccf28SAndroid Build Coastguard Workersummary: Multiply and add
1455*e1eccf28SAndroid Build Coastguard Workerdescription:
1456*e1eccf28SAndroid Build Coastguard Worker Multiply and add.  Returns <code>(multiplicand1 * multiplicand2) + offset</code>.
1457*e1eccf28SAndroid Build Coastguard Worker
1458*e1eccf28SAndroid Build Coastguard Worker This function is similar to @fma().  @fma() retains full precision of the multiplied result
1459*e1eccf28SAndroid Build Coastguard Worker and rounds only after the addition.  mad() rounds after the multiplication and the addition.
1460*e1eccf28SAndroid Build Coastguard Worker In rs_fp_relaxed mode, mad() may not do the rounding after multiplicaiton.
1461*e1eccf28SAndroid Build Coastguard Workerend:
1462*e1eccf28SAndroid Build Coastguard Worker
1463*e1eccf28SAndroid Build Coastguard Workerfunction: mad
1464*e1eccf28SAndroid Build Coastguard Workerversion: 24
1465*e1eccf28SAndroid Build Coastguard Workerattrib: const
1466*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1467*e1eccf28SAndroid Build Coastguard Workert: f16
1468*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1469*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 multiplicand1
1470*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 multiplicand2
1471*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 offset
1472*e1eccf28SAndroid Build Coastguard Workerend:
1473*e1eccf28SAndroid Build Coastguard Worker
1474*e1eccf28SAndroid Build Coastguard Workerfunction: max
1475*e1eccf28SAndroid Build Coastguard Workerversion: 9
1476*e1eccf28SAndroid Build Coastguard Workerattrib: const
1477*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1478*e1eccf28SAndroid Build Coastguard Workert: f32
1479*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1480*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1481*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1482*e1eccf28SAndroid Build Coastguard Workersummary: Maximum
1483*e1eccf28SAndroid Build Coastguard Workerdescription:
1484*e1eccf28SAndroid Build Coastguard Worker Returns the maximum value of two arguments.
1485*e1eccf28SAndroid Build Coastguard Workerend:
1486*e1eccf28SAndroid Build Coastguard Worker
1487*e1eccf28SAndroid Build Coastguard Workerfunction: max
1488*e1eccf28SAndroid Build Coastguard Workerversion:24
1489*e1eccf28SAndroid Build Coastguard Workerattrib: const
1490*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1491*e1eccf28SAndroid Build Coastguard Workert: f16
1492*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1493*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1494*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1495*e1eccf28SAndroid Build Coastguard Workerend:
1496*e1eccf28SAndroid Build Coastguard Worker
1497*e1eccf28SAndroid Build Coastguard Workerfunction: max
1498*e1eccf28SAndroid Build Coastguard Workerversion: 9
1499*e1eccf28SAndroid Build Coastguard Workerattrib: const
1500*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1501*e1eccf28SAndroid Build Coastguard Workert: f32
1502*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1503*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1504*e1eccf28SAndroid Build Coastguard Workerarg: #2 b
1505*e1eccf28SAndroid Build Coastguard Workerend:
1506*e1eccf28SAndroid Build Coastguard Worker
1507*e1eccf28SAndroid Build Coastguard Workerfunction: max
1508*e1eccf28SAndroid Build Coastguard Workerversion: 24
1509*e1eccf28SAndroid Build Coastguard Workerattrib: const
1510*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1511*e1eccf28SAndroid Build Coastguard Workert: f16
1512*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1513*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1514*e1eccf28SAndroid Build Coastguard Workerarg: #2 b
1515*e1eccf28SAndroid Build Coastguard Workerend:
1516*e1eccf28SAndroid Build Coastguard Worker
1517*e1eccf28SAndroid Build Coastguard Workerfunction: max
1518*e1eccf28SAndroid Build Coastguard Workerversion: 9 20
1519*e1eccf28SAndroid Build Coastguard Workerattrib: const
1520*e1eccf28SAndroid Build Coastguard Workerw: 1
1521*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, u8, u16, u32
1522*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1523*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1524*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1525*e1eccf28SAndroid Build Coastguard Workerinline:
1526*e1eccf28SAndroid Build Coastguard Worker return (a > b ? a : b);
1527*e1eccf28SAndroid Build Coastguard Workerend:
1528*e1eccf28SAndroid Build Coastguard Worker
1529*e1eccf28SAndroid Build Coastguard Workerfunction: max
1530*e1eccf28SAndroid Build Coastguard Workerversion: 9 20
1531*e1eccf28SAndroid Build Coastguard Workerattrib: const
1532*e1eccf28SAndroid Build Coastguard Workerw: 2
1533*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, u8, u16, u32
1534*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1535*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1536*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1537*e1eccf28SAndroid Build Coastguard Workerinline:
1538*e1eccf28SAndroid Build Coastguard Worker #2#1 tmp;
1539*e1eccf28SAndroid Build Coastguard Worker tmp.x = (a.x > b.x ? a.x : b.x);
1540*e1eccf28SAndroid Build Coastguard Worker tmp.y = (a.y > b.y ? a.y : b.y);
1541*e1eccf28SAndroid Build Coastguard Worker return tmp;
1542*e1eccf28SAndroid Build Coastguard Workerend:
1543*e1eccf28SAndroid Build Coastguard Worker
1544*e1eccf28SAndroid Build Coastguard Workerfunction: max
1545*e1eccf28SAndroid Build Coastguard Workerversion: 9 20
1546*e1eccf28SAndroid Build Coastguard Workerattrib: const
1547*e1eccf28SAndroid Build Coastguard Workerw: 3
1548*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, u8, u16, u32
1549*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1550*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1551*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1552*e1eccf28SAndroid Build Coastguard Workerinline:
1553*e1eccf28SAndroid Build Coastguard Worker #2#1 tmp;
1554*e1eccf28SAndroid Build Coastguard Worker tmp.x = (a.x > b.x ? a.x : b.x);
1555*e1eccf28SAndroid Build Coastguard Worker tmp.y = (a.y > b.y ? a.y : b.y);
1556*e1eccf28SAndroid Build Coastguard Worker tmp.z = (a.z > b.z ? a.z : b.z);
1557*e1eccf28SAndroid Build Coastguard Worker return tmp;
1558*e1eccf28SAndroid Build Coastguard Workerend:
1559*e1eccf28SAndroid Build Coastguard Worker
1560*e1eccf28SAndroid Build Coastguard Workerfunction: max
1561*e1eccf28SAndroid Build Coastguard Workerversion: 9 20
1562*e1eccf28SAndroid Build Coastguard Workerattrib: const
1563*e1eccf28SAndroid Build Coastguard Workerw: 4
1564*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, u8, u16, u32
1565*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1566*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1567*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1568*e1eccf28SAndroid Build Coastguard Workerinline:
1569*e1eccf28SAndroid Build Coastguard Worker #2#1 tmp;
1570*e1eccf28SAndroid Build Coastguard Worker tmp.x = (a.x > b.x ? a.x : b.x);
1571*e1eccf28SAndroid Build Coastguard Worker tmp.y = (a.y > b.y ? a.y : b.y);
1572*e1eccf28SAndroid Build Coastguard Worker tmp.z = (a.z > b.z ? a.z : b.z);
1573*e1eccf28SAndroid Build Coastguard Worker tmp.w = (a.w > b.w ? a.w : b.w);
1574*e1eccf28SAndroid Build Coastguard Worker return tmp;
1575*e1eccf28SAndroid Build Coastguard Workerend:
1576*e1eccf28SAndroid Build Coastguard Worker
1577*e1eccf28SAndroid Build Coastguard Workerfunction: max
1578*e1eccf28SAndroid Build Coastguard Workerversion: 21
1579*e1eccf28SAndroid Build Coastguard Workerattrib: const
1580*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1581*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, i64, u8, u16, u32, u64
1582*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1583*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1584*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1585*e1eccf28SAndroid Build Coastguard Workerend:
1586*e1eccf28SAndroid Build Coastguard Worker
1587*e1eccf28SAndroid Build Coastguard Workerfunction: min
1588*e1eccf28SAndroid Build Coastguard Workerversion: 9
1589*e1eccf28SAndroid Build Coastguard Workerattrib: const
1590*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1591*e1eccf28SAndroid Build Coastguard Workert: f32
1592*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1593*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1594*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1595*e1eccf28SAndroid Build Coastguard Workersummary: Minimum
1596*e1eccf28SAndroid Build Coastguard Workerdescription:
1597*e1eccf28SAndroid Build Coastguard Worker Returns the minimum value of two arguments.
1598*e1eccf28SAndroid Build Coastguard Workerend:
1599*e1eccf28SAndroid Build Coastguard Worker
1600*e1eccf28SAndroid Build Coastguard Workerfunction: min
1601*e1eccf28SAndroid Build Coastguard Workerversion: 24
1602*e1eccf28SAndroid Build Coastguard Workerattrib: const
1603*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1604*e1eccf28SAndroid Build Coastguard Workert: f16
1605*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1606*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1607*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1608*e1eccf28SAndroid Build Coastguard Workerend:
1609*e1eccf28SAndroid Build Coastguard Worker
1610*e1eccf28SAndroid Build Coastguard Workerfunction: min
1611*e1eccf28SAndroid Build Coastguard Workerversion: 9
1612*e1eccf28SAndroid Build Coastguard Workerattrib: const
1613*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1614*e1eccf28SAndroid Build Coastguard Workert: f32
1615*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1616*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1617*e1eccf28SAndroid Build Coastguard Workerarg: #2 b
1618*e1eccf28SAndroid Build Coastguard Workerend:
1619*e1eccf28SAndroid Build Coastguard Worker
1620*e1eccf28SAndroid Build Coastguard Workerfunction: min
1621*e1eccf28SAndroid Build Coastguard Workerversion: 24
1622*e1eccf28SAndroid Build Coastguard Workerattrib: const
1623*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1624*e1eccf28SAndroid Build Coastguard Workert: f16
1625*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1626*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1627*e1eccf28SAndroid Build Coastguard Workerarg: #2 b
1628*e1eccf28SAndroid Build Coastguard Workerend:
1629*e1eccf28SAndroid Build Coastguard Worker
1630*e1eccf28SAndroid Build Coastguard Workerfunction: min
1631*e1eccf28SAndroid Build Coastguard Workerversion: 9 20
1632*e1eccf28SAndroid Build Coastguard Workerattrib: const
1633*e1eccf28SAndroid Build Coastguard Workerw: 1
1634*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, u8, u16, u32
1635*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1636*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1637*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1638*e1eccf28SAndroid Build Coastguard Workerinline:
1639*e1eccf28SAndroid Build Coastguard Worker return (a < b ? a : b);
1640*e1eccf28SAndroid Build Coastguard Workerend:
1641*e1eccf28SAndroid Build Coastguard Worker
1642*e1eccf28SAndroid Build Coastguard Workerfunction: min
1643*e1eccf28SAndroid Build Coastguard Workerversion: 9 20
1644*e1eccf28SAndroid Build Coastguard Workerattrib: const
1645*e1eccf28SAndroid Build Coastguard Workerw: 2
1646*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, u8, u16, u32
1647*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1648*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1649*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1650*e1eccf28SAndroid Build Coastguard Workerinline:
1651*e1eccf28SAndroid Build Coastguard Worker #2#1 tmp;
1652*e1eccf28SAndroid Build Coastguard Worker tmp.x = (a.x < b.x ? a.x : b.x);
1653*e1eccf28SAndroid Build Coastguard Worker tmp.y = (a.y < b.y ? a.y : b.y);
1654*e1eccf28SAndroid Build Coastguard Worker return tmp;
1655*e1eccf28SAndroid Build Coastguard Workerend:
1656*e1eccf28SAndroid Build Coastguard Worker
1657*e1eccf28SAndroid Build Coastguard Workerfunction: min
1658*e1eccf28SAndroid Build Coastguard Workerversion: 9 20
1659*e1eccf28SAndroid Build Coastguard Workerattrib: const
1660*e1eccf28SAndroid Build Coastguard Workerw: 3
1661*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, u8, u16, u32
1662*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1663*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1664*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1665*e1eccf28SAndroid Build Coastguard Workerinline:
1666*e1eccf28SAndroid Build Coastguard Worker #2#1 tmp;
1667*e1eccf28SAndroid Build Coastguard Worker tmp.x = (a.x < b.x ? a.x : b.x);
1668*e1eccf28SAndroid Build Coastguard Worker tmp.y = (a.y < b.y ? a.y : b.y);
1669*e1eccf28SAndroid Build Coastguard Worker tmp.z = (a.z < b.z ? a.z : b.z);
1670*e1eccf28SAndroid Build Coastguard Worker return tmp;
1671*e1eccf28SAndroid Build Coastguard Workerend:
1672*e1eccf28SAndroid Build Coastguard Worker
1673*e1eccf28SAndroid Build Coastguard Workerfunction: min
1674*e1eccf28SAndroid Build Coastguard Workerversion: 9 20
1675*e1eccf28SAndroid Build Coastguard Workerattrib: const
1676*e1eccf28SAndroid Build Coastguard Workerw: 4
1677*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, u8, u16, u32
1678*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1679*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1680*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1681*e1eccf28SAndroid Build Coastguard Workerinline:
1682*e1eccf28SAndroid Build Coastguard Worker #2#1 tmp;
1683*e1eccf28SAndroid Build Coastguard Worker tmp.x = (a.x < b.x ? a.x : b.x);
1684*e1eccf28SAndroid Build Coastguard Worker tmp.y = (a.y < b.y ? a.y : b.y);
1685*e1eccf28SAndroid Build Coastguard Worker tmp.z = (a.z < b.z ? a.z : b.z);
1686*e1eccf28SAndroid Build Coastguard Worker tmp.w = (a.w < b.w ? a.w : b.w);
1687*e1eccf28SAndroid Build Coastguard Worker return tmp;
1688*e1eccf28SAndroid Build Coastguard Workerend:
1689*e1eccf28SAndroid Build Coastguard Worker
1690*e1eccf28SAndroid Build Coastguard Workerfunction: min
1691*e1eccf28SAndroid Build Coastguard Workerversion: 21
1692*e1eccf28SAndroid Build Coastguard Workerattrib: const
1693*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1694*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, i64, u8, u16, u32, u64
1695*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1696*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
1697*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
1698*e1eccf28SAndroid Build Coastguard Workerend:
1699*e1eccf28SAndroid Build Coastguard Worker
1700*e1eccf28SAndroid Build Coastguard Workerfunction: mix
1701*e1eccf28SAndroid Build Coastguard Workerversion: 9
1702*e1eccf28SAndroid Build Coastguard Workerattrib: const
1703*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1704*e1eccf28SAndroid Build Coastguard Workert: f32
1705*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1706*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 start
1707*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 stop
1708*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 fraction
1709*e1eccf28SAndroid Build Coastguard Workersummary: Mixes two values
1710*e1eccf28SAndroid Build Coastguard Workerdescription:
1711*e1eccf28SAndroid Build Coastguard Worker Returns start + ((stop - start) * fraction).
1712*e1eccf28SAndroid Build Coastguard Worker
1713*e1eccf28SAndroid Build Coastguard Worker This can be useful for mixing two values.  For example, to create a new color that is
1714*e1eccf28SAndroid Build Coastguard Worker 40% color1 and 60% color2, use <code>mix(color1, color2, 0.6f)</code>.
1715*e1eccf28SAndroid Build Coastguard Workerend:
1716*e1eccf28SAndroid Build Coastguard Worker
1717*e1eccf28SAndroid Build Coastguard Workerfunction: mix
1718*e1eccf28SAndroid Build Coastguard Workerversion: 24
1719*e1eccf28SAndroid Build Coastguard Workerattrib: const
1720*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1721*e1eccf28SAndroid Build Coastguard Workert: f16
1722*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1723*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 start
1724*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 stop
1725*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 fraction
1726*e1eccf28SAndroid Build Coastguard Workerend:
1727*e1eccf28SAndroid Build Coastguard Worker
1728*e1eccf28SAndroid Build Coastguard Workerfunction: mix
1729*e1eccf28SAndroid Build Coastguard Workerversion: 9
1730*e1eccf28SAndroid Build Coastguard Workerattrib: const
1731*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1732*e1eccf28SAndroid Build Coastguard Workert: f32
1733*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1734*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 start
1735*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 stop
1736*e1eccf28SAndroid Build Coastguard Workerarg: #2 fraction
1737*e1eccf28SAndroid Build Coastguard Workerend:
1738*e1eccf28SAndroid Build Coastguard Worker
1739*e1eccf28SAndroid Build Coastguard Workerfunction: mix
1740*e1eccf28SAndroid Build Coastguard Workerversion: 24
1741*e1eccf28SAndroid Build Coastguard Workerattrib: const
1742*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
1743*e1eccf28SAndroid Build Coastguard Workert: f16
1744*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1745*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 start
1746*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 stop
1747*e1eccf28SAndroid Build Coastguard Workerarg: #2 fraction
1748*e1eccf28SAndroid Build Coastguard Workerend:
1749*e1eccf28SAndroid Build Coastguard Worker
1750*e1eccf28SAndroid Build Coastguard Workerfunction: modf
1751*e1eccf28SAndroid Build Coastguard Workerversion: 9
1752*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1753*e1eccf28SAndroid Build Coastguard Workert: f32
1754*e1eccf28SAndroid Build Coastguard Workerret: #2#1, "Floating point portion of the value."
1755*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, "Source value."
1756*e1eccf28SAndroid Build Coastguard Workerarg: #2#1* integral_part, "*integral_part will be set to the integral portion of the number."
1757*e1eccf28SAndroid Build Coastguard Workersummary: Integral and fractional components
1758*e1eccf28SAndroid Build Coastguard Workerdescription:
1759*e1eccf28SAndroid Build Coastguard Worker Returns the integral and fractional components of a number.
1760*e1eccf28SAndroid Build Coastguard Worker
1761*e1eccf28SAndroid Build Coastguard Worker Both components will have the same sign as x.  For example, for an input of -3.72f,
1762*e1eccf28SAndroid Build Coastguard Worker *integral_part will be set to -3.f and .72f will be returned.
1763*e1eccf28SAndroid Build Coastguard Workerend:
1764*e1eccf28SAndroid Build Coastguard Worker
1765*e1eccf28SAndroid Build Coastguard Workerfunction: modf
1766*e1eccf28SAndroid Build Coastguard Workerversion: 24
1767*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1768*e1eccf28SAndroid Build Coastguard Workert: f16
1769*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1770*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1771*e1eccf28SAndroid Build Coastguard Workerarg: #2#1* integral_part
1772*e1eccf28SAndroid Build Coastguard Workertest: none
1773*e1eccf28SAndroid Build Coastguard Workerend:
1774*e1eccf28SAndroid Build Coastguard Worker
1775*e1eccf28SAndroid Build Coastguard Workerfunction: nan
1776*e1eccf28SAndroid Build Coastguard Workerversion: 9
1777*e1eccf28SAndroid Build Coastguard Workerattrib: const
1778*e1eccf28SAndroid Build Coastguard Workerw: 1
1779*e1eccf28SAndroid Build Coastguard Workert: f32
1780*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1781*e1eccf28SAndroid Build Coastguard Workerarg: uint#1 v, "Not used."
1782*e1eccf28SAndroid Build Coastguard Worker#TODO We're not using the argument.  Once we do, add this documentation line:
1783*e1eccf28SAndroid Build Coastguard Worker# The argument is embedded into the return value and can be used to distinguish various NaNs.
1784*e1eccf28SAndroid Build Coastguard Workersummary: Not a Number
1785*e1eccf28SAndroid Build Coastguard Workerdescription:
1786*e1eccf28SAndroid Build Coastguard Worker Returns a NaN value (Not a Number).
1787*e1eccf28SAndroid Build Coastguard Workerend:
1788*e1eccf28SAndroid Build Coastguard Worker
1789*e1eccf28SAndroid Build Coastguard Workerfunction: nan_half
1790*e1eccf28SAndroid Build Coastguard Workerversion: 24
1791*e1eccf28SAndroid Build Coastguard Workerattrib: const
1792*e1eccf28SAndroid Build Coastguard Workert: f16
1793*e1eccf28SAndroid Build Coastguard Workerret: #1
1794*e1eccf28SAndroid Build Coastguard Workersummary: Not a Number
1795*e1eccf28SAndroid Build Coastguard Workerdescription:
1796*e1eccf28SAndroid Build Coastguard Worker  Returns a half-precision floating point NaN value (Not a Number).
1797*e1eccf28SAndroid Build Coastguard Workerend:
1798*e1eccf28SAndroid Build Coastguard Worker
1799*e1eccf28SAndroid Build Coastguard Workerfunction: native_acos
1800*e1eccf28SAndroid Build Coastguard Workerversion: 21
1801*e1eccf28SAndroid Build Coastguard Workerattrib: const
1802*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1803*e1eccf28SAndroid Build Coastguard Workert: f32
1804*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1805*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
1806*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse cosine
1807*e1eccf28SAndroid Build Coastguard Workerdescription:
1808*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse cosine, in radians.
1809*e1eccf28SAndroid Build Coastguard Worker
1810*e1eccf28SAndroid Build Coastguard Worker This function yields undefined results from input values less than -1 or greater than 1.
1811*e1eccf28SAndroid Build Coastguard Worker
1812*e1eccf28SAndroid Build Coastguard Worker See also @acos().
1813*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
1814*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
1815*e1eccf28SAndroid Build Coastguard Workerend:
1816*e1eccf28SAndroid Build Coastguard Worker
1817*e1eccf28SAndroid Build Coastguard Workerfunction: native_acos
1818*e1eccf28SAndroid Build Coastguard Workerversion: 24
1819*e1eccf28SAndroid Build Coastguard Workerattrib: const
1820*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1821*e1eccf28SAndroid Build Coastguard Workert: f16
1822*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1823*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
1824*e1eccf28SAndroid Build Coastguard Worker# Absolute error of 2^-11, i.e. 0.00048828125
1825*e1eccf28SAndroid Build Coastguard Workertest: limited(0.00048828125)
1826*e1eccf28SAndroid Build Coastguard Workerend:
1827*e1eccf28SAndroid Build Coastguard Worker
1828*e1eccf28SAndroid Build Coastguard Workerfunction: native_acosh
1829*e1eccf28SAndroid Build Coastguard Workerversion: 21
1830*e1eccf28SAndroid Build Coastguard Workerattrib: const
1831*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1832*e1eccf28SAndroid Build Coastguard Workert: f32
1833*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1834*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1835*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse hyperbolic cosine
1836*e1eccf28SAndroid Build Coastguard Workerdescription:
1837*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse hyperbolic cosine, in radians.
1838*e1eccf28SAndroid Build Coastguard Worker
1839*e1eccf28SAndroid Build Coastguard Worker See also @acosh().
1840*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
1841*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
1842*e1eccf28SAndroid Build Coastguard Workerend:
1843*e1eccf28SAndroid Build Coastguard Worker
1844*e1eccf28SAndroid Build Coastguard Workerfunction: native_acosh
1845*e1eccf28SAndroid Build Coastguard Workerversion: 24
1846*e1eccf28SAndroid Build Coastguard Workerattrib: const
1847*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1848*e1eccf28SAndroid Build Coastguard Workert: f16
1849*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1850*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1851*e1eccf28SAndroid Build Coastguard Workerend:
1852*e1eccf28SAndroid Build Coastguard Worker
1853*e1eccf28SAndroid Build Coastguard Workerfunction: native_acospi
1854*e1eccf28SAndroid Build Coastguard Workerversion: 21
1855*e1eccf28SAndroid Build Coastguard Workerattrib: const
1856*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1857*e1eccf28SAndroid Build Coastguard Workert: f32
1858*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1859*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
1860*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse cosine divided by pi
1861*e1eccf28SAndroid Build Coastguard Workerdescription:
1862*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse cosine in radians, divided by pi.
1863*e1eccf28SAndroid Build Coastguard Worker
1864*e1eccf28SAndroid Build Coastguard Worker To get an inverse cosine measured in degrees, use <code>acospi(a) * 180.f</code>.
1865*e1eccf28SAndroid Build Coastguard Worker
1866*e1eccf28SAndroid Build Coastguard Worker This function yields undefined results from input values less than -1 or greater than 1.
1867*e1eccf28SAndroid Build Coastguard Worker
1868*e1eccf28SAndroid Build Coastguard Worker See also @acospi().
1869*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
1870*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
1871*e1eccf28SAndroid Build Coastguard Workerend:
1872*e1eccf28SAndroid Build Coastguard Worker
1873*e1eccf28SAndroid Build Coastguard Workerfunction: native_acospi
1874*e1eccf28SAndroid Build Coastguard Workerversion: 24
1875*e1eccf28SAndroid Build Coastguard Workerattrib: const
1876*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1877*e1eccf28SAndroid Build Coastguard Workert: f16
1878*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1879*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
1880*e1eccf28SAndroid Build Coastguard Worker# Absolute error of 2^-11, i.e. 0.00048828125
1881*e1eccf28SAndroid Build Coastguard Workertest: limited(0.00048828125)
1882*e1eccf28SAndroid Build Coastguard Workerend:
1883*e1eccf28SAndroid Build Coastguard Worker
1884*e1eccf28SAndroid Build Coastguard Workerfunction: native_asin
1885*e1eccf28SAndroid Build Coastguard Workerversion: 21
1886*e1eccf28SAndroid Build Coastguard Workerattrib: const
1887*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1888*e1eccf28SAndroid Build Coastguard Workert: f32
1889*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1890*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
1891*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse sine
1892*e1eccf28SAndroid Build Coastguard Workerdescription:
1893*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse sine, in radians.
1894*e1eccf28SAndroid Build Coastguard Worker
1895*e1eccf28SAndroid Build Coastguard Worker This function yields undefined results from input values less than -1 or greater than 1.
1896*e1eccf28SAndroid Build Coastguard Worker
1897*e1eccf28SAndroid Build Coastguard Worker See also @asin().
1898*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
1899*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
1900*e1eccf28SAndroid Build Coastguard Workerend:
1901*e1eccf28SAndroid Build Coastguard Worker
1902*e1eccf28SAndroid Build Coastguard Workerfunction: native_asin
1903*e1eccf28SAndroid Build Coastguard Workerversion: 24
1904*e1eccf28SAndroid Build Coastguard Workerattrib: const
1905*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1906*e1eccf28SAndroid Build Coastguard Workert: f16
1907*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1908*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
1909*e1eccf28SAndroid Build Coastguard Worker# Absolute error of 2^-11, i.e. 0.00048828125
1910*e1eccf28SAndroid Build Coastguard Workertest: limited(0.00048828125)
1911*e1eccf28SAndroid Build Coastguard Workerend:
1912*e1eccf28SAndroid Build Coastguard Worker
1913*e1eccf28SAndroid Build Coastguard Workerfunction: native_asinh
1914*e1eccf28SAndroid Build Coastguard Workerversion: 21
1915*e1eccf28SAndroid Build Coastguard Workerattrib: const
1916*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1917*e1eccf28SAndroid Build Coastguard Workert: f32
1918*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1919*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1920*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse hyperbolic sine
1921*e1eccf28SAndroid Build Coastguard Workerdescription:
1922*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse hyperbolic sine, in radians.
1923*e1eccf28SAndroid Build Coastguard Worker
1924*e1eccf28SAndroid Build Coastguard Worker See also @asinh().
1925*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
1926*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
1927*e1eccf28SAndroid Build Coastguard Workerend:
1928*e1eccf28SAndroid Build Coastguard Worker
1929*e1eccf28SAndroid Build Coastguard Workerfunction: native_asinh
1930*e1eccf28SAndroid Build Coastguard Workerversion: 24
1931*e1eccf28SAndroid Build Coastguard Workerattrib: const
1932*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1933*e1eccf28SAndroid Build Coastguard Workert: f16
1934*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1935*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
1936*e1eccf28SAndroid Build Coastguard Workerend:
1937*e1eccf28SAndroid Build Coastguard Worker
1938*e1eccf28SAndroid Build Coastguard Workerfunction: native_asinpi
1939*e1eccf28SAndroid Build Coastguard Workerversion: 21
1940*e1eccf28SAndroid Build Coastguard Workerattrib: const
1941*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1942*e1eccf28SAndroid Build Coastguard Workert: f32
1943*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1944*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
1945*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse sine divided by pi
1946*e1eccf28SAndroid Build Coastguard Workerdescription:
1947*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse sine in radians, divided by pi.
1948*e1eccf28SAndroid Build Coastguard Worker
1949*e1eccf28SAndroid Build Coastguard Worker To get an inverse sine measured in degrees, use <code>asinpi(a) * 180.f</code>.
1950*e1eccf28SAndroid Build Coastguard Worker
1951*e1eccf28SAndroid Build Coastguard Worker This function yields undefined results from input values less than -1 or greater than 1.
1952*e1eccf28SAndroid Build Coastguard Worker
1953*e1eccf28SAndroid Build Coastguard Worker See also @asinpi().
1954*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
1955*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
1956*e1eccf28SAndroid Build Coastguard Workerend:
1957*e1eccf28SAndroid Build Coastguard Worker
1958*e1eccf28SAndroid Build Coastguard Workerfunction: native_asinpi
1959*e1eccf28SAndroid Build Coastguard Workerversion: 24
1960*e1eccf28SAndroid Build Coastguard Workerattrib: const
1961*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1962*e1eccf28SAndroid Build Coastguard Workert: f16
1963*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1964*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
1965*e1eccf28SAndroid Build Coastguard Worker# Absolute error of 2^-11, i.e. 0.00048828125
1966*e1eccf28SAndroid Build Coastguard Workertest: limited(0.00048828125)
1967*e1eccf28SAndroid Build Coastguard Workerend:
1968*e1eccf28SAndroid Build Coastguard Worker
1969*e1eccf28SAndroid Build Coastguard Workerfunction: native_atan
1970*e1eccf28SAndroid Build Coastguard Workerversion: 21
1971*e1eccf28SAndroid Build Coastguard Workerattrib: const
1972*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1973*e1eccf28SAndroid Build Coastguard Workert: f32
1974*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1975*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
1976*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse tangent
1977*e1eccf28SAndroid Build Coastguard Workerdescription:
1978*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse tangent, in radians.
1979*e1eccf28SAndroid Build Coastguard Worker
1980*e1eccf28SAndroid Build Coastguard Worker See also @atan().
1981*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
1982*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
1983*e1eccf28SAndroid Build Coastguard Workerend:
1984*e1eccf28SAndroid Build Coastguard Worker
1985*e1eccf28SAndroid Build Coastguard Workerfunction: native_atan
1986*e1eccf28SAndroid Build Coastguard Workerversion: 24
1987*e1eccf28SAndroid Build Coastguard Workerattrib: const
1988*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1989*e1eccf28SAndroid Build Coastguard Workert: f16
1990*e1eccf28SAndroid Build Coastguard Workerret: #2#1
1991*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1, 1)
1992*e1eccf28SAndroid Build Coastguard Workerend:
1993*e1eccf28SAndroid Build Coastguard Worker
1994*e1eccf28SAndroid Build Coastguard Workerfunction: native_atan2
1995*e1eccf28SAndroid Build Coastguard Workerversion: 21
1996*e1eccf28SAndroid Build Coastguard Workerattrib: const
1997*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
1998*e1eccf28SAndroid Build Coastguard Workert: f32
1999*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2000*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator, "Numerator."
2001*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator, "Denominator.  Can be 0."
2002*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse tangent of a ratio
2003*e1eccf28SAndroid Build Coastguard Workerdescription:
2004*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse tangent of <code>(numerator / denominator)</code>, in radians.
2005*e1eccf28SAndroid Build Coastguard Worker
2006*e1eccf28SAndroid Build Coastguard Worker See also @atan2().
2007*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
2008*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
2009*e1eccf28SAndroid Build Coastguard Workerend:
2010*e1eccf28SAndroid Build Coastguard Worker
2011*e1eccf28SAndroid Build Coastguard Workerfunction: native_atan2
2012*e1eccf28SAndroid Build Coastguard Workerversion: 24
2013*e1eccf28SAndroid Build Coastguard Workerattrib: const
2014*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2015*e1eccf28SAndroid Build Coastguard Workert: f16
2016*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2017*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator
2018*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator
2019*e1eccf28SAndroid Build Coastguard Workerend:
2020*e1eccf28SAndroid Build Coastguard Worker
2021*e1eccf28SAndroid Build Coastguard Workerfunction: native_atan2pi
2022*e1eccf28SAndroid Build Coastguard Workerversion: 21
2023*e1eccf28SAndroid Build Coastguard Workerattrib: const
2024*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2025*e1eccf28SAndroid Build Coastguard Workert: f32
2026*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2027*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator, "Numerator."
2028*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator, "Denominator.  Can be 0."
2029*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse tangent of a ratio, divided by pi
2030*e1eccf28SAndroid Build Coastguard Workerdescription:
2031*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse tangent of <code>(numerator / denominator)</code>,
2032*e1eccf28SAndroid Build Coastguard Worker in radians, divided by pi.
2033*e1eccf28SAndroid Build Coastguard Worker
2034*e1eccf28SAndroid Build Coastguard Worker To get an inverse tangent measured in degrees, use <code>atan2pi(n, d) * 180.f</code>.
2035*e1eccf28SAndroid Build Coastguard Worker
2036*e1eccf28SAndroid Build Coastguard Worker See also @atan2pi().
2037*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
2038*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
2039*e1eccf28SAndroid Build Coastguard Workerend:
2040*e1eccf28SAndroid Build Coastguard Worker
2041*e1eccf28SAndroid Build Coastguard Workerfunction: native_atan2pi
2042*e1eccf28SAndroid Build Coastguard Workerversion: 24
2043*e1eccf28SAndroid Build Coastguard Workerattrib: const
2044*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2045*e1eccf28SAndroid Build Coastguard Workert: f16
2046*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2047*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator
2048*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator
2049*e1eccf28SAndroid Build Coastguard Workerend:
2050*e1eccf28SAndroid Build Coastguard Worker
2051*e1eccf28SAndroid Build Coastguard Workerfunction: native_atanh
2052*e1eccf28SAndroid Build Coastguard Workerversion: 21
2053*e1eccf28SAndroid Build Coastguard Workerattrib: const
2054*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2055*e1eccf28SAndroid Build Coastguard Workert: f32
2056*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2057*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
2058*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse hyperbolic tangent
2059*e1eccf28SAndroid Build Coastguard Workerdescription:
2060*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse hyperbolic tangent, in radians.
2061*e1eccf28SAndroid Build Coastguard Worker
2062*e1eccf28SAndroid Build Coastguard Worker See also @atanh().
2063*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
2064*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
2065*e1eccf28SAndroid Build Coastguard Workerend:
2066*e1eccf28SAndroid Build Coastguard Worker
2067*e1eccf28SAndroid Build Coastguard Workerfunction: native_atanh
2068*e1eccf28SAndroid Build Coastguard Workerversion: 24
2069*e1eccf28SAndroid Build Coastguard Workerattrib: const
2070*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2071*e1eccf28SAndroid Build Coastguard Workert: f16
2072*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2073*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
2074*e1eccf28SAndroid Build Coastguard Workerend:
2075*e1eccf28SAndroid Build Coastguard Worker
2076*e1eccf28SAndroid Build Coastguard Workerfunction: native_atanpi
2077*e1eccf28SAndroid Build Coastguard Workerversion: 21
2078*e1eccf28SAndroid Build Coastguard Workerattrib: const
2079*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2080*e1eccf28SAndroid Build Coastguard Workert: f32
2081*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2082*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
2083*e1eccf28SAndroid Build Coastguard Workersummary: Approximate inverse tangent divided by pi
2084*e1eccf28SAndroid Build Coastguard Workerdescription:
2085*e1eccf28SAndroid Build Coastguard Worker Returns the approximate inverse tangent in radians, divided by pi.
2086*e1eccf28SAndroid Build Coastguard Worker
2087*e1eccf28SAndroid Build Coastguard Worker To get an inverse tangent measured in degrees, use <code>atanpi(a) * 180.f</code>.
2088*e1eccf28SAndroid Build Coastguard Worker
2089*e1eccf28SAndroid Build Coastguard Worker See also @atanpi().
2090*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
2091*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
2092*e1eccf28SAndroid Build Coastguard Workerend:
2093*e1eccf28SAndroid Build Coastguard Worker
2094*e1eccf28SAndroid Build Coastguard Workerfunction: native_atanpi
2095*e1eccf28SAndroid Build Coastguard Workerversion: 24
2096*e1eccf28SAndroid Build Coastguard Workerattrib: const
2097*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2098*e1eccf28SAndroid Build Coastguard Workert: f16
2099*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2100*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-1,1)
2101*e1eccf28SAndroid Build Coastguard Workerend:
2102*e1eccf28SAndroid Build Coastguard Worker
2103*e1eccf28SAndroid Build Coastguard Workerfunction: native_cbrt
2104*e1eccf28SAndroid Build Coastguard Workerversion: 21
2105*e1eccf28SAndroid Build Coastguard Workerattrib: const
2106*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2107*e1eccf28SAndroid Build Coastguard Workert: f32
2108*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2109*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2110*e1eccf28SAndroid Build Coastguard Workersummary: Approximate cube root
2111*e1eccf28SAndroid Build Coastguard Workerdescription:
2112*e1eccf28SAndroid Build Coastguard Worker Returns the approximate cubic root.
2113*e1eccf28SAndroid Build Coastguard Worker
2114*e1eccf28SAndroid Build Coastguard Worker See also @cbrt().
2115*e1eccf28SAndroid Build Coastguard Workerend:
2116*e1eccf28SAndroid Build Coastguard Worker
2117*e1eccf28SAndroid Build Coastguard Workerfunction: native_cbrt
2118*e1eccf28SAndroid Build Coastguard Workerversion: 24
2119*e1eccf28SAndroid Build Coastguard Workerattrib: const
2120*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2121*e1eccf28SAndroid Build Coastguard Workert: f16
2122*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2123*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2124*e1eccf28SAndroid Build Coastguard Workerend:
2125*e1eccf28SAndroid Build Coastguard Worker
2126*e1eccf28SAndroid Build Coastguard Workerfunction: native_cos
2127*e1eccf28SAndroid Build Coastguard Workerversion: 21
2128*e1eccf28SAndroid Build Coastguard Workerattrib: const
2129*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2130*e1eccf28SAndroid Build Coastguard Workert: f32
2131*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2132*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2133*e1eccf28SAndroid Build Coastguard Workersummary: Approximate cosine
2134*e1eccf28SAndroid Build Coastguard Workerdescription:
2135*e1eccf28SAndroid Build Coastguard Worker Returns the approximate cosine of an angle measured in radians.
2136*e1eccf28SAndroid Build Coastguard Worker
2137*e1eccf28SAndroid Build Coastguard Worker See also @cos().
2138*e1eccf28SAndroid Build Coastguard Workerend:
2139*e1eccf28SAndroid Build Coastguard Worker
2140*e1eccf28SAndroid Build Coastguard Workerfunction: native_cos
2141*e1eccf28SAndroid Build Coastguard Workerversion: 24
2142*e1eccf28SAndroid Build Coastguard Workerattrib: const
2143*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2144*e1eccf28SAndroid Build Coastguard Workert: f16
2145*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2146*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-314,314)
2147*e1eccf28SAndroid Build Coastguard Worker# Absolute error of 2^-11, i.e. 0.00048828125
2148*e1eccf28SAndroid Build Coastguard Workertest: limited(0.00048828125)
2149*e1eccf28SAndroid Build Coastguard Workerend:
2150*e1eccf28SAndroid Build Coastguard Worker
2151*e1eccf28SAndroid Build Coastguard Workerfunction: native_cosh
2152*e1eccf28SAndroid Build Coastguard Workerversion: 21
2153*e1eccf28SAndroid Build Coastguard Workerattrib: const
2154*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2155*e1eccf28SAndroid Build Coastguard Workert: f32
2156*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2157*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2158*e1eccf28SAndroid Build Coastguard Workersummary: Approximate hypebolic cosine
2159*e1eccf28SAndroid Build Coastguard Workerdescription:
2160*e1eccf28SAndroid Build Coastguard Worker Returns the approximate hypebolic cosine.
2161*e1eccf28SAndroid Build Coastguard Worker
2162*e1eccf28SAndroid Build Coastguard Worker See also @cosh().
2163*e1eccf28SAndroid Build Coastguard Workerend:
2164*e1eccf28SAndroid Build Coastguard Worker
2165*e1eccf28SAndroid Build Coastguard Workerfunction: native_cosh
2166*e1eccf28SAndroid Build Coastguard Workerversion: 24
2167*e1eccf28SAndroid Build Coastguard Workerattrib: const
2168*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2169*e1eccf28SAndroid Build Coastguard Workert: f16
2170*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2171*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2172*e1eccf28SAndroid Build Coastguard Workerend:
2173*e1eccf28SAndroid Build Coastguard Worker
2174*e1eccf28SAndroid Build Coastguard Workerfunction: native_cospi
2175*e1eccf28SAndroid Build Coastguard Workerversion: 21
2176*e1eccf28SAndroid Build Coastguard Workerattrib: const
2177*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2178*e1eccf28SAndroid Build Coastguard Workert: f32
2179*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2180*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2181*e1eccf28SAndroid Build Coastguard Workersummary: Approximate cosine of a number multiplied by pi
2182*e1eccf28SAndroid Build Coastguard Workerdescription:
2183*e1eccf28SAndroid Build Coastguard Worker Returns the approximate cosine of (v * pi), where (v * pi) is measured in radians.
2184*e1eccf28SAndroid Build Coastguard Worker
2185*e1eccf28SAndroid Build Coastguard Worker To get the cosine of a value measured in degrees, call <code>cospi(v / 180.f)</code>.
2186*e1eccf28SAndroid Build Coastguard Worker
2187*e1eccf28SAndroid Build Coastguard Worker See also @cospi().
2188*e1eccf28SAndroid Build Coastguard Workerend:
2189*e1eccf28SAndroid Build Coastguard Worker
2190*e1eccf28SAndroid Build Coastguard Workerfunction: native_cospi
2191*e1eccf28SAndroid Build Coastguard Workerversion: 24
2192*e1eccf28SAndroid Build Coastguard Workerattrib: const
2193*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2194*e1eccf28SAndroid Build Coastguard Workert: f16
2195*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2196*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-100,100)
2197*e1eccf28SAndroid Build Coastguard Worker# Absolute error of 2^-11, i.e. 0.00048828125
2198*e1eccf28SAndroid Build Coastguard Workertest: limited(0.00048828125)
2199*e1eccf28SAndroid Build Coastguard Workerend:
2200*e1eccf28SAndroid Build Coastguard Worker
2201*e1eccf28SAndroid Build Coastguard Workerfunction: native_divide
2202*e1eccf28SAndroid Build Coastguard Workerversion: 21
2203*e1eccf28SAndroid Build Coastguard Workerattrib: const
2204*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2205*e1eccf28SAndroid Build Coastguard Workert: f32
2206*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2207*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 left_vector
2208*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 right_vector
2209*e1eccf28SAndroid Build Coastguard Workersummary: Approximate division
2210*e1eccf28SAndroid Build Coastguard Workerdescription:
2211*e1eccf28SAndroid Build Coastguard Worker Computes the approximate division of two values.
2212*e1eccf28SAndroid Build Coastguard Workerend:
2213*e1eccf28SAndroid Build Coastguard Worker
2214*e1eccf28SAndroid Build Coastguard Workerfunction: native_divide
2215*e1eccf28SAndroid Build Coastguard Workerversion: 24
2216*e1eccf28SAndroid Build Coastguard Workerattrib: const
2217*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2218*e1eccf28SAndroid Build Coastguard Workert: f16
2219*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2220*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 left_vector
2221*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 right_vector
2222*e1eccf28SAndroid Build Coastguard Workerend:
2223*e1eccf28SAndroid Build Coastguard Worker
2224*e1eccf28SAndroid Build Coastguard Workerfunction: native_exp
2225*e1eccf28SAndroid Build Coastguard Workerversion: 18
2226*e1eccf28SAndroid Build Coastguard Workerattrib: const
2227*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2228*e1eccf28SAndroid Build Coastguard Workert: f32
2229*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2230*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-86,86)
2231*e1eccf28SAndroid Build Coastguard Workersummary: Approximate e raised to a number
2232*e1eccf28SAndroid Build Coastguard Workerdescription:
2233*e1eccf28SAndroid Build Coastguard Worker Fast approximate exp.
2234*e1eccf28SAndroid Build Coastguard Worker
2235*e1eccf28SAndroid Build Coastguard Worker It is valid for inputs from -86.f to 86.f.  The precision is no worse than what would be
2236*e1eccf28SAndroid Build Coastguard Worker expected from using 16 bit floating point values.
2237*e1eccf28SAndroid Build Coastguard Worker
2238*e1eccf28SAndroid Build Coastguard Worker See also @exp().
2239*e1eccf28SAndroid Build Coastguard Workertest: limited
2240*e1eccf28SAndroid Build Coastguard Workerend:
2241*e1eccf28SAndroid Build Coastguard Worker
2242*e1eccf28SAndroid Build Coastguard Workerfunction: native_exp
2243*e1eccf28SAndroid Build Coastguard Workerversion: 24
2244*e1eccf28SAndroid Build Coastguard Workerattrib: const
2245*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2246*e1eccf28SAndroid Build Coastguard Workert: f16
2247*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2248*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-86,86)
2249*e1eccf28SAndroid Build Coastguard Workerend:
2250*e1eccf28SAndroid Build Coastguard Worker
2251*e1eccf28SAndroid Build Coastguard Workerfunction: native_exp10
2252*e1eccf28SAndroid Build Coastguard Workerversion: 18
2253*e1eccf28SAndroid Build Coastguard Workerattrib: const
2254*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2255*e1eccf28SAndroid Build Coastguard Workert: f32
2256*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2257*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-37,37)
2258*e1eccf28SAndroid Build Coastguard Workersummary: Approximate 10 raised to a number
2259*e1eccf28SAndroid Build Coastguard Workerdescription:
2260*e1eccf28SAndroid Build Coastguard Worker Fast approximate exp10.
2261*e1eccf28SAndroid Build Coastguard Worker
2262*e1eccf28SAndroid Build Coastguard Worker It is valid for inputs from -37.f to 37.f.  The precision is no worse than what would be
2263*e1eccf28SAndroid Build Coastguard Worker expected from using 16 bit floating point values.
2264*e1eccf28SAndroid Build Coastguard Worker
2265*e1eccf28SAndroid Build Coastguard Worker See also @exp10().
2266*e1eccf28SAndroid Build Coastguard Workertest: limited
2267*e1eccf28SAndroid Build Coastguard Workerend:
2268*e1eccf28SAndroid Build Coastguard Worker
2269*e1eccf28SAndroid Build Coastguard Workerfunction: native_exp10
2270*e1eccf28SAndroid Build Coastguard Workerversion: 24
2271*e1eccf28SAndroid Build Coastguard Workerattrib: const
2272*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2273*e1eccf28SAndroid Build Coastguard Workert: f16
2274*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2275*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-37,37)
2276*e1eccf28SAndroid Build Coastguard Workerend:
2277*e1eccf28SAndroid Build Coastguard Worker
2278*e1eccf28SAndroid Build Coastguard Workerfunction: native_exp2
2279*e1eccf28SAndroid Build Coastguard Workerversion: 18
2280*e1eccf28SAndroid Build Coastguard Workerattrib: const
2281*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2282*e1eccf28SAndroid Build Coastguard Workert: f32
2283*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2284*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-125,125)
2285*e1eccf28SAndroid Build Coastguard Workersummary: Approximate 2 raised to a number
2286*e1eccf28SAndroid Build Coastguard Workerdescription:
2287*e1eccf28SAndroid Build Coastguard Worker Fast approximate exp2.
2288*e1eccf28SAndroid Build Coastguard Worker
2289*e1eccf28SAndroid Build Coastguard Worker It is valid for inputs from -125.f to 125.f.  The precision is no worse than what would be
2290*e1eccf28SAndroid Build Coastguard Worker expected from using 16 bit floating point values.
2291*e1eccf28SAndroid Build Coastguard Worker
2292*e1eccf28SAndroid Build Coastguard Worker See also @exp2().
2293*e1eccf28SAndroid Build Coastguard Workertest: limited
2294*e1eccf28SAndroid Build Coastguard Workerend:
2295*e1eccf28SAndroid Build Coastguard Worker
2296*e1eccf28SAndroid Build Coastguard Workerfunction: native_exp2
2297*e1eccf28SAndroid Build Coastguard Workerversion: 24
2298*e1eccf28SAndroid Build Coastguard Workerattrib: const
2299*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2300*e1eccf28SAndroid Build Coastguard Workert: f16
2301*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2302*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-125,125)
2303*e1eccf28SAndroid Build Coastguard Workerend:
2304*e1eccf28SAndroid Build Coastguard Worker
2305*e1eccf28SAndroid Build Coastguard Workerfunction: native_expm1
2306*e1eccf28SAndroid Build Coastguard Workerversion: 21
2307*e1eccf28SAndroid Build Coastguard Workerattrib: const
2308*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2309*e1eccf28SAndroid Build Coastguard Workert: f32
2310*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2311*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2312*e1eccf28SAndroid Build Coastguard Workersummary: Approximate e raised to a number minus one
2313*e1eccf28SAndroid Build Coastguard Workerdescription:
2314*e1eccf28SAndroid Build Coastguard Worker Returns the approximate (e ^ v) - 1.
2315*e1eccf28SAndroid Build Coastguard Worker
2316*e1eccf28SAndroid Build Coastguard Worker See also @expm1().
2317*e1eccf28SAndroid Build Coastguard Workerend:
2318*e1eccf28SAndroid Build Coastguard Worker
2319*e1eccf28SAndroid Build Coastguard Workerfunction: native_expm1
2320*e1eccf28SAndroid Build Coastguard Workerversion: 24
2321*e1eccf28SAndroid Build Coastguard Workerattrib: const
2322*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2323*e1eccf28SAndroid Build Coastguard Workert: f16
2324*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2325*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2326*e1eccf28SAndroid Build Coastguard Workertest: custom
2327*e1eccf28SAndroid Build Coastguard Workerend:
2328*e1eccf28SAndroid Build Coastguard Worker
2329*e1eccf28SAndroid Build Coastguard Workerfunction: native_hypot
2330*e1eccf28SAndroid Build Coastguard Workerversion: 21
2331*e1eccf28SAndroid Build Coastguard Workerattrib: const
2332*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2333*e1eccf28SAndroid Build Coastguard Workert: f32
2334*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2335*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
2336*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
2337*e1eccf28SAndroid Build Coastguard Workersummary: Approximate hypotenuse
2338*e1eccf28SAndroid Build Coastguard Workerdescription:
2339*e1eccf28SAndroid Build Coastguard Worker Returns the approximate native_sqrt(a * a + b * b)
2340*e1eccf28SAndroid Build Coastguard Worker
2341*e1eccf28SAndroid Build Coastguard Worker See also @hypot().
2342*e1eccf28SAndroid Build Coastguard Workerend:
2343*e1eccf28SAndroid Build Coastguard Worker
2344*e1eccf28SAndroid Build Coastguard Workerfunction: native_hypot
2345*e1eccf28SAndroid Build Coastguard Workerversion: 24
2346*e1eccf28SAndroid Build Coastguard Workerattrib: const
2347*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2348*e1eccf28SAndroid Build Coastguard Workert: f16
2349*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2350*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 a
2351*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 b
2352*e1eccf28SAndroid Build Coastguard Workerend:
2353*e1eccf28SAndroid Build Coastguard Worker
2354*e1eccf28SAndroid Build Coastguard Workerfunction: native_log
2355*e1eccf28SAndroid Build Coastguard Workerversion: 18
2356*e1eccf28SAndroid Build Coastguard Workerattrib: const
2357*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2358*e1eccf28SAndroid Build Coastguard Workert: f32
2359*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2360*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(10e-10,10e10)
2361*e1eccf28SAndroid Build Coastguard Workersummary: Approximate natural logarithm
2362*e1eccf28SAndroid Build Coastguard Workerdescription:
2363*e1eccf28SAndroid Build Coastguard Worker Fast approximate log.
2364*e1eccf28SAndroid Build Coastguard Worker
2365*e1eccf28SAndroid Build Coastguard Worker It is not accurate for values very close to zero.
2366*e1eccf28SAndroid Build Coastguard Worker
2367*e1eccf28SAndroid Build Coastguard Worker See also @log().
2368*e1eccf28SAndroid Build Coastguard Workertest: limited
2369*e1eccf28SAndroid Build Coastguard Workerend:
2370*e1eccf28SAndroid Build Coastguard Worker
2371*e1eccf28SAndroid Build Coastguard Workerfunction: native_log
2372*e1eccf28SAndroid Build Coastguard Workerversion: 24
2373*e1eccf28SAndroid Build Coastguard Workerattrib: const
2374*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2375*e1eccf28SAndroid Build Coastguard Workert: f16
2376*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2377*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(10e-5,65504)
2378*e1eccf28SAndroid Build Coastguard Workerend:
2379*e1eccf28SAndroid Build Coastguard Worker
2380*e1eccf28SAndroid Build Coastguard Workerfunction: native_log10
2381*e1eccf28SAndroid Build Coastguard Workerversion: 18
2382*e1eccf28SAndroid Build Coastguard Workerattrib: const
2383*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2384*e1eccf28SAndroid Build Coastguard Workert: f32
2385*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2386*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(10e-10,10e10)
2387*e1eccf28SAndroid Build Coastguard Workersummary: Approximate base 10 logarithm
2388*e1eccf28SAndroid Build Coastguard Workerdescription:
2389*e1eccf28SAndroid Build Coastguard Worker Fast approximate log10.
2390*e1eccf28SAndroid Build Coastguard Worker
2391*e1eccf28SAndroid Build Coastguard Worker It is not accurate for values very close to zero.
2392*e1eccf28SAndroid Build Coastguard Worker
2393*e1eccf28SAndroid Build Coastguard Worker See also @log10().
2394*e1eccf28SAndroid Build Coastguard Workertest: limited
2395*e1eccf28SAndroid Build Coastguard Workerend:
2396*e1eccf28SAndroid Build Coastguard Worker
2397*e1eccf28SAndroid Build Coastguard Workerfunction: native_log10
2398*e1eccf28SAndroid Build Coastguard Workerversion: 24
2399*e1eccf28SAndroid Build Coastguard Workerattrib: const
2400*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2401*e1eccf28SAndroid Build Coastguard Workert: f16
2402*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2403*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(10e-5,65504)
2404*e1eccf28SAndroid Build Coastguard Workerend:
2405*e1eccf28SAndroid Build Coastguard Worker
2406*e1eccf28SAndroid Build Coastguard Workerfunction: native_log1p
2407*e1eccf28SAndroid Build Coastguard Workerversion: 21
2408*e1eccf28SAndroid Build Coastguard Workerattrib: const
2409*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2410*e1eccf28SAndroid Build Coastguard Workert: f32
2411*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2412*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2413*e1eccf28SAndroid Build Coastguard Workersummary: Approximate natural logarithm of a value plus 1
2414*e1eccf28SAndroid Build Coastguard Workerdescription:
2415*e1eccf28SAndroid Build Coastguard Worker Returns the approximate natural logarithm of (v + 1.0f)
2416*e1eccf28SAndroid Build Coastguard Worker
2417*e1eccf28SAndroid Build Coastguard Worker See also @log1p().
2418*e1eccf28SAndroid Build Coastguard Workerend:
2419*e1eccf28SAndroid Build Coastguard Worker
2420*e1eccf28SAndroid Build Coastguard Workerfunction: native_log1p
2421*e1eccf28SAndroid Build Coastguard Workerversion: 24
2422*e1eccf28SAndroid Build Coastguard Workerattrib: const
2423*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2424*e1eccf28SAndroid Build Coastguard Workert: f16
2425*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2426*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2427*e1eccf28SAndroid Build Coastguard Workerend:
2428*e1eccf28SAndroid Build Coastguard Worker
2429*e1eccf28SAndroid Build Coastguard Workerfunction: native_log2
2430*e1eccf28SAndroid Build Coastguard Workerversion: 18
2431*e1eccf28SAndroid Build Coastguard Workerattrib: const
2432*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2433*e1eccf28SAndroid Build Coastguard Workert: f32
2434*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2435*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(10e-10,10e10)
2436*e1eccf28SAndroid Build Coastguard Workersummary: Approximate base 2 logarithm
2437*e1eccf28SAndroid Build Coastguard Workerdescription:
2438*e1eccf28SAndroid Build Coastguard Worker Fast approximate log2.
2439*e1eccf28SAndroid Build Coastguard Worker
2440*e1eccf28SAndroid Build Coastguard Worker It is not accurate for values very close to zero.
2441*e1eccf28SAndroid Build Coastguard Worker
2442*e1eccf28SAndroid Build Coastguard Worker See also @log2().
2443*e1eccf28SAndroid Build Coastguard Workertest: limited
2444*e1eccf28SAndroid Build Coastguard Workerend:
2445*e1eccf28SAndroid Build Coastguard Worker
2446*e1eccf28SAndroid Build Coastguard Workerfunction: native_log2
2447*e1eccf28SAndroid Build Coastguard Workerversion: 24
2448*e1eccf28SAndroid Build Coastguard Workerattrib: const
2449*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2450*e1eccf28SAndroid Build Coastguard Workert: f16
2451*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2452*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(10e-5,65504)
2453*e1eccf28SAndroid Build Coastguard Workerend:
2454*e1eccf28SAndroid Build Coastguard Worker
2455*e1eccf28SAndroid Build Coastguard Workerfunction: native_powr
2456*e1eccf28SAndroid Build Coastguard Workerversion: 18
2457*e1eccf28SAndroid Build Coastguard Workerattrib: const
2458*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2459*e1eccf28SAndroid Build Coastguard Workert: f32
2460*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2461*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 base, range(0,256), "Must be between 0.f and 256.f.  The function is not accurate for values very close to zero."
2462*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 exponent, range(-15,15), "Must be between -15.f and 15.f."
2463*e1eccf28SAndroid Build Coastguard Workersummary: Approximate positive base raised to an exponent
2464*e1eccf28SAndroid Build Coastguard Workerdescription:
2465*e1eccf28SAndroid Build Coastguard Worker Fast approximate (base ^ exponent).
2466*e1eccf28SAndroid Build Coastguard Worker
2467*e1eccf28SAndroid Build Coastguard Worker See also @powr().
2468*e1eccf28SAndroid Build Coastguard Workertest: limited
2469*e1eccf28SAndroid Build Coastguard Workerend:
2470*e1eccf28SAndroid Build Coastguard Worker
2471*e1eccf28SAndroid Build Coastguard Workerfunction: native_powr
2472*e1eccf28SAndroid Build Coastguard Workerversion: 24
2473*e1eccf28SAndroid Build Coastguard Workerattrib: const
2474*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2475*e1eccf28SAndroid Build Coastguard Workert: f16
2476*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2477*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 base, range(0,256)
2478*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 exponent, range(-15,15)
2479*e1eccf28SAndroid Build Coastguard Workerend:
2480*e1eccf28SAndroid Build Coastguard Worker
2481*e1eccf28SAndroid Build Coastguard Workerfunction: native_recip
2482*e1eccf28SAndroid Build Coastguard Workerversion: 21
2483*e1eccf28SAndroid Build Coastguard Workerattrib: const
2484*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2485*e1eccf28SAndroid Build Coastguard Workert: f32
2486*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2487*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2488*e1eccf28SAndroid Build Coastguard Workersummary: Approximate reciprocal
2489*e1eccf28SAndroid Build Coastguard Workerdescription:
2490*e1eccf28SAndroid Build Coastguard Worker Returns the approximate approximate reciprocal of a value.
2491*e1eccf28SAndroid Build Coastguard Worker
2492*e1eccf28SAndroid Build Coastguard Worker See also @half_recip().
2493*e1eccf28SAndroid Build Coastguard Workerend:
2494*e1eccf28SAndroid Build Coastguard Worker
2495*e1eccf28SAndroid Build Coastguard Workerfunction: native_recip
2496*e1eccf28SAndroid Build Coastguard Workerversion: 24
2497*e1eccf28SAndroid Build Coastguard Workerattrib: const
2498*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2499*e1eccf28SAndroid Build Coastguard Workert: f16
2500*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2501*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2502*e1eccf28SAndroid Build Coastguard Workerend:
2503*e1eccf28SAndroid Build Coastguard Worker
2504*e1eccf28SAndroid Build Coastguard Workerfunction: native_rootn
2505*e1eccf28SAndroid Build Coastguard Workerversion: 21
2506*e1eccf28SAndroid Build Coastguard Workerattrib: const
2507*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2508*e1eccf28SAndroid Build Coastguard Workert: f32
2509*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2510*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2511*e1eccf28SAndroid Build Coastguard Workerarg: int#1 n
2512*e1eccf28SAndroid Build Coastguard Workersummary: Approximate nth root
2513*e1eccf28SAndroid Build Coastguard Workerdescription:
2514*e1eccf28SAndroid Build Coastguard Worker Compute the approximate Nth root of a value.
2515*e1eccf28SAndroid Build Coastguard Worker
2516*e1eccf28SAndroid Build Coastguard Worker See also @rootn().
2517*e1eccf28SAndroid Build Coastguard Workerend:
2518*e1eccf28SAndroid Build Coastguard Worker
2519*e1eccf28SAndroid Build Coastguard Workerfunction: native_rootn
2520*e1eccf28SAndroid Build Coastguard Workerversion: 24
2521*e1eccf28SAndroid Build Coastguard Workerattrib: const
2522*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2523*e1eccf28SAndroid Build Coastguard Workert: f16
2524*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2525*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2526*e1eccf28SAndroid Build Coastguard Workerarg: int#1 n
2527*e1eccf28SAndroid Build Coastguard Workertest: none
2528*e1eccf28SAndroid Build Coastguard Workerend:
2529*e1eccf28SAndroid Build Coastguard Worker
2530*e1eccf28SAndroid Build Coastguard Workerfunction: native_rsqrt
2531*e1eccf28SAndroid Build Coastguard Workerversion: 21
2532*e1eccf28SAndroid Build Coastguard Workerattrib: const
2533*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2534*e1eccf28SAndroid Build Coastguard Workert: f32
2535*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2536*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2537*e1eccf28SAndroid Build Coastguard Workersummary: Approximate reciprocal of a square root
2538*e1eccf28SAndroid Build Coastguard Workerdescription:
2539*e1eccf28SAndroid Build Coastguard Worker Returns approximate (1 / sqrt(v)).
2540*e1eccf28SAndroid Build Coastguard Worker
2541*e1eccf28SAndroid Build Coastguard Worker See also @rsqrt(), @half_rsqrt().
2542*e1eccf28SAndroid Build Coastguard Workerend:
2543*e1eccf28SAndroid Build Coastguard Worker
2544*e1eccf28SAndroid Build Coastguard Workerfunction: native_rsqrt
2545*e1eccf28SAndroid Build Coastguard Workerversion: 24
2546*e1eccf28SAndroid Build Coastguard Workerattrib: const
2547*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2548*e1eccf28SAndroid Build Coastguard Workert: f16
2549*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2550*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2551*e1eccf28SAndroid Build Coastguard Workerend:
2552*e1eccf28SAndroid Build Coastguard Worker
2553*e1eccf28SAndroid Build Coastguard Workerfunction: native_sin
2554*e1eccf28SAndroid Build Coastguard Workerversion: 21
2555*e1eccf28SAndroid Build Coastguard Workerattrib: const
2556*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2557*e1eccf28SAndroid Build Coastguard Workert: f32
2558*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2559*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2560*e1eccf28SAndroid Build Coastguard Workersummary: Approximate sine
2561*e1eccf28SAndroid Build Coastguard Workerdescription:
2562*e1eccf28SAndroid Build Coastguard Worker Returns the approximate sine of an angle measured in radians.
2563*e1eccf28SAndroid Build Coastguard Worker
2564*e1eccf28SAndroid Build Coastguard Worker See also @sin().
2565*e1eccf28SAndroid Build Coastguard Workerend:
2566*e1eccf28SAndroid Build Coastguard Worker
2567*e1eccf28SAndroid Build Coastguard Workerfunction: native_sin
2568*e1eccf28SAndroid Build Coastguard Workerversion: 24
2569*e1eccf28SAndroid Build Coastguard Workerattrib: const
2570*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2571*e1eccf28SAndroid Build Coastguard Workert: f16
2572*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2573*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-314,314)
2574*e1eccf28SAndroid Build Coastguard Worker# Absolute error of 2^-11, i.e. 0.00048828125
2575*e1eccf28SAndroid Build Coastguard Workertest: limited(0.00048828125)
2576*e1eccf28SAndroid Build Coastguard Workerend:
2577*e1eccf28SAndroid Build Coastguard Worker
2578*e1eccf28SAndroid Build Coastguard Workerfunction: native_sincos
2579*e1eccf28SAndroid Build Coastguard Workerversion: 21
2580*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2581*e1eccf28SAndroid Build Coastguard Workert: f32
2582*e1eccf28SAndroid Build Coastguard Workerret: #2#1, "Sine."
2583*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, "Incoming value in radians."
2584*e1eccf28SAndroid Build Coastguard Workerarg: #2#1* cos, "*cos will be set to the cosine value."
2585*e1eccf28SAndroid Build Coastguard Workersummary: Approximate sine and cosine
2586*e1eccf28SAndroid Build Coastguard Workerdescription:
2587*e1eccf28SAndroid Build Coastguard Worker Returns the approximate sine and cosine of a value.
2588*e1eccf28SAndroid Build Coastguard Worker
2589*e1eccf28SAndroid Build Coastguard Worker See also @sincos().
2590*e1eccf28SAndroid Build Coastguard Worker# TODO Temporary
2591*e1eccf28SAndroid Build Coastguard Workertest: limited(0.0005)
2592*e1eccf28SAndroid Build Coastguard Workerend:
2593*e1eccf28SAndroid Build Coastguard Worker
2594*e1eccf28SAndroid Build Coastguard Workerfunction: native_sincos
2595*e1eccf28SAndroid Build Coastguard Workerversion: 24
2596*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2597*e1eccf28SAndroid Build Coastguard Workert: f16
2598*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2599*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2600*e1eccf28SAndroid Build Coastguard Workerarg: #2#1* cos, range(-314,314)
2601*e1eccf28SAndroid Build Coastguard Worker# Absolute error of 2^-11, i.e. 0.00048828125
2602*e1eccf28SAndroid Build Coastguard Workertest: limited(0.00048828125)
2603*e1eccf28SAndroid Build Coastguard Workerend:
2604*e1eccf28SAndroid Build Coastguard Worker
2605*e1eccf28SAndroid Build Coastguard Workerfunction: native_sinh
2606*e1eccf28SAndroid Build Coastguard Workerversion: 21
2607*e1eccf28SAndroid Build Coastguard Workerattrib: const
2608*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2609*e1eccf28SAndroid Build Coastguard Workert: f32
2610*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2611*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2612*e1eccf28SAndroid Build Coastguard Workersummary: Approximate hyperbolic sine
2613*e1eccf28SAndroid Build Coastguard Workerdescription:
2614*e1eccf28SAndroid Build Coastguard Worker Returns the approximate hyperbolic sine of a value specified in radians.
2615*e1eccf28SAndroid Build Coastguard Worker
2616*e1eccf28SAndroid Build Coastguard Worker See also @sinh().
2617*e1eccf28SAndroid Build Coastguard Workerend:
2618*e1eccf28SAndroid Build Coastguard Worker
2619*e1eccf28SAndroid Build Coastguard Workerfunction: native_sinh
2620*e1eccf28SAndroid Build Coastguard Workerversion: 24
2621*e1eccf28SAndroid Build Coastguard Workerattrib: const
2622*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2623*e1eccf28SAndroid Build Coastguard Workert: f16
2624*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2625*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2626*e1eccf28SAndroid Build Coastguard Workerend:
2627*e1eccf28SAndroid Build Coastguard Worker
2628*e1eccf28SAndroid Build Coastguard Workerfunction: native_sinpi
2629*e1eccf28SAndroid Build Coastguard Workerversion: 21
2630*e1eccf28SAndroid Build Coastguard Workerattrib: const
2631*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2632*e1eccf28SAndroid Build Coastguard Workert: f32
2633*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2634*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2635*e1eccf28SAndroid Build Coastguard Workersummary: Approximate sine of a number multiplied by pi
2636*e1eccf28SAndroid Build Coastguard Workerdescription:
2637*e1eccf28SAndroid Build Coastguard Worker Returns the approximate sine of (v * pi), where (v * pi) is measured in radians.
2638*e1eccf28SAndroid Build Coastguard Worker
2639*e1eccf28SAndroid Build Coastguard Worker To get the sine of a value measured in degrees, call <code>sinpi(v / 180.f)</code>.
2640*e1eccf28SAndroid Build Coastguard Worker
2641*e1eccf28SAndroid Build Coastguard Worker See also @sinpi().
2642*e1eccf28SAndroid Build Coastguard Workerend:
2643*e1eccf28SAndroid Build Coastguard Worker
2644*e1eccf28SAndroid Build Coastguard Workerfunction: native_sinpi
2645*e1eccf28SAndroid Build Coastguard Workerversion: 24
2646*e1eccf28SAndroid Build Coastguard Workerattrib: const
2647*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2648*e1eccf28SAndroid Build Coastguard Workert: f16
2649*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2650*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-100,100)
2651*e1eccf28SAndroid Build Coastguard Worker# Absolute error of 2^-11, i.e. 0.00048828125
2652*e1eccf28SAndroid Build Coastguard Workertest: limited(0.00048828125)
2653*e1eccf28SAndroid Build Coastguard Workerend:
2654*e1eccf28SAndroid Build Coastguard Worker
2655*e1eccf28SAndroid Build Coastguard Workerfunction: native_sqrt
2656*e1eccf28SAndroid Build Coastguard Workerversion: 21
2657*e1eccf28SAndroid Build Coastguard Workerattrib: const
2658*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2659*e1eccf28SAndroid Build Coastguard Workert: f32
2660*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2661*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2662*e1eccf28SAndroid Build Coastguard Workersummary: Approximate square root
2663*e1eccf28SAndroid Build Coastguard Workerdescription:
2664*e1eccf28SAndroid Build Coastguard Worker Returns the approximate sqrt(v).
2665*e1eccf28SAndroid Build Coastguard Worker
2666*e1eccf28SAndroid Build Coastguard Worker See also @sqrt(), @half_sqrt().
2667*e1eccf28SAndroid Build Coastguard Workerend:
2668*e1eccf28SAndroid Build Coastguard Worker
2669*e1eccf28SAndroid Build Coastguard Workerfunction: native_sqrt
2670*e1eccf28SAndroid Build Coastguard Workerversion: 24
2671*e1eccf28SAndroid Build Coastguard Workerattrib: const
2672*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2673*e1eccf28SAndroid Build Coastguard Workert: f16
2674*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2675*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2676*e1eccf28SAndroid Build Coastguard Workerend:
2677*e1eccf28SAndroid Build Coastguard Worker
2678*e1eccf28SAndroid Build Coastguard Workerfunction: native_tan
2679*e1eccf28SAndroid Build Coastguard Workerversion: 21
2680*e1eccf28SAndroid Build Coastguard Workerattrib: const
2681*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2682*e1eccf28SAndroid Build Coastguard Workert: f32
2683*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2684*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2685*e1eccf28SAndroid Build Coastguard Workersummary: Approximate tangent
2686*e1eccf28SAndroid Build Coastguard Workerdescription:
2687*e1eccf28SAndroid Build Coastguard Worker Returns the approximate tangent of an angle measured in radians.
2688*e1eccf28SAndroid Build Coastguard Workerend:
2689*e1eccf28SAndroid Build Coastguard Worker
2690*e1eccf28SAndroid Build Coastguard Workerfunction: native_tan
2691*e1eccf28SAndroid Build Coastguard Workerversion: 24
2692*e1eccf28SAndroid Build Coastguard Workerattrib: const
2693*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2694*e1eccf28SAndroid Build Coastguard Workert: f16
2695*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2696*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-314,314)
2697*e1eccf28SAndroid Build Coastguard Workertest: custom
2698*e1eccf28SAndroid Build Coastguard Workerend:
2699*e1eccf28SAndroid Build Coastguard Worker
2700*e1eccf28SAndroid Build Coastguard Workerfunction: native_tanh
2701*e1eccf28SAndroid Build Coastguard Workerversion: 21
2702*e1eccf28SAndroid Build Coastguard Workerattrib: const
2703*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2704*e1eccf28SAndroid Build Coastguard Workert: f32
2705*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2706*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2707*e1eccf28SAndroid Build Coastguard Workersummary: Approximate hyperbolic tangent
2708*e1eccf28SAndroid Build Coastguard Workerdescription:
2709*e1eccf28SAndroid Build Coastguard Worker Returns the approximate hyperbolic tangent of a value.
2710*e1eccf28SAndroid Build Coastguard Worker
2711*e1eccf28SAndroid Build Coastguard Worker See also @tanh().
2712*e1eccf28SAndroid Build Coastguard Workerend:
2713*e1eccf28SAndroid Build Coastguard Worker
2714*e1eccf28SAndroid Build Coastguard Workerfunction: native_tanh
2715*e1eccf28SAndroid Build Coastguard Workerversion: 24
2716*e1eccf28SAndroid Build Coastguard Workerattrib: const
2717*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2718*e1eccf28SAndroid Build Coastguard Workert: f16
2719*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2720*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2721*e1eccf28SAndroid Build Coastguard Workerend:
2722*e1eccf28SAndroid Build Coastguard Worker
2723*e1eccf28SAndroid Build Coastguard Workerfunction: native_tanpi
2724*e1eccf28SAndroid Build Coastguard Workerversion: 21
2725*e1eccf28SAndroid Build Coastguard Workerattrib: const
2726*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2727*e1eccf28SAndroid Build Coastguard Workert: f32
2728*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2729*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2730*e1eccf28SAndroid Build Coastguard Workersummary: Approximate tangent of a number multiplied by pi
2731*e1eccf28SAndroid Build Coastguard Workerdescription:
2732*e1eccf28SAndroid Build Coastguard Worker Returns the approximate tangent of (v * pi), where (v * pi) is measured in radians.
2733*e1eccf28SAndroid Build Coastguard Worker
2734*e1eccf28SAndroid Build Coastguard Worker To get the tangent of a value measured in degrees, call <code>tanpi(v / 180.f)</code>.
2735*e1eccf28SAndroid Build Coastguard Worker
2736*e1eccf28SAndroid Build Coastguard Worker See also @tanpi().
2737*e1eccf28SAndroid Build Coastguard Workerend:
2738*e1eccf28SAndroid Build Coastguard Worker
2739*e1eccf28SAndroid Build Coastguard Workerfunction: native_tanpi
2740*e1eccf28SAndroid Build Coastguard Workerversion: 24
2741*e1eccf28SAndroid Build Coastguard Workerattrib: const
2742*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2743*e1eccf28SAndroid Build Coastguard Workert: f16
2744*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2745*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, range(-100,100)
2746*e1eccf28SAndroid Build Coastguard Workertest: custom
2747*e1eccf28SAndroid Build Coastguard Workerend:
2748*e1eccf28SAndroid Build Coastguard Worker
2749*e1eccf28SAndroid Build Coastguard Workerfunction: nextafter
2750*e1eccf28SAndroid Build Coastguard Workerversion: 9
2751*e1eccf28SAndroid Build Coastguard Workerattrib: const
2752*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2753*e1eccf28SAndroid Build Coastguard Workert: f32
2754*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2755*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2756*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 target
2757*e1eccf28SAndroid Build Coastguard Workersummary: Next floating point number
2758*e1eccf28SAndroid Build Coastguard Workerdescription:
2759*e1eccf28SAndroid Build Coastguard Worker Returns the next representable floating point number from v towards target.
2760*e1eccf28SAndroid Build Coastguard Worker
2761*e1eccf28SAndroid Build Coastguard Worker In rs_fp_relaxed mode, a denormalized input value may not yield the next denormalized
2762*e1eccf28SAndroid Build Coastguard Worker value, as support of denormalized values is optional in relaxed mode.
2763*e1eccf28SAndroid Build Coastguard Workerend:
2764*e1eccf28SAndroid Build Coastguard Worker
2765*e1eccf28SAndroid Build Coastguard Workerfunction: nextafter
2766*e1eccf28SAndroid Build Coastguard Workerversion: 24
2767*e1eccf28SAndroid Build Coastguard Workerattrib: const
2768*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2769*e1eccf28SAndroid Build Coastguard Workert: f16
2770*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2771*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2772*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 target
2773*e1eccf28SAndroid Build Coastguard Workertest: none
2774*e1eccf28SAndroid Build Coastguard Workerend:
2775*e1eccf28SAndroid Build Coastguard Worker
2776*e1eccf28SAndroid Build Coastguard Workerfunction: pow
2777*e1eccf28SAndroid Build Coastguard Workerversion: 9
2778*e1eccf28SAndroid Build Coastguard Workerattrib: const
2779*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2780*e1eccf28SAndroid Build Coastguard Workert: f32
2781*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2782*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 base
2783*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 exponent
2784*e1eccf28SAndroid Build Coastguard Workersummary: Base raised to an exponent
2785*e1eccf28SAndroid Build Coastguard Workerdescription:
2786*e1eccf28SAndroid Build Coastguard Worker Returns base raised to the power exponent, i.e. base ^ exponent.
2787*e1eccf28SAndroid Build Coastguard Worker
2788*e1eccf28SAndroid Build Coastguard Worker @pown() and @powr() are similar.  @pown() takes an integer exponent. @powr() assumes the
2789*e1eccf28SAndroid Build Coastguard Worker base to be non-negative.
2790*e1eccf28SAndroid Build Coastguard Workerend:
2791*e1eccf28SAndroid Build Coastguard Worker
2792*e1eccf28SAndroid Build Coastguard Workerfunction: pow
2793*e1eccf28SAndroid Build Coastguard Workerversion: 24
2794*e1eccf28SAndroid Build Coastguard Workerattrib: const
2795*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2796*e1eccf28SAndroid Build Coastguard Workert: f16
2797*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2798*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 base
2799*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 exponent
2800*e1eccf28SAndroid Build Coastguard Workerend:
2801*e1eccf28SAndroid Build Coastguard Worker
2802*e1eccf28SAndroid Build Coastguard Workerfunction: pown
2803*e1eccf28SAndroid Build Coastguard Workerversion: 9
2804*e1eccf28SAndroid Build Coastguard Workerattrib: const
2805*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2806*e1eccf28SAndroid Build Coastguard Workert: f32
2807*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2808*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 base
2809*e1eccf28SAndroid Build Coastguard Workerarg: int#1 exponent
2810*e1eccf28SAndroid Build Coastguard Workersummary: Base raised to an integer exponent
2811*e1eccf28SAndroid Build Coastguard Workerdescription:
2812*e1eccf28SAndroid Build Coastguard Worker Returns base raised to the power exponent, i.e. base ^ exponent.
2813*e1eccf28SAndroid Build Coastguard Worker
2814*e1eccf28SAndroid Build Coastguard Worker @pow() and @powr() are similar.  The both take a float exponent. @powr() also assumes the
2815*e1eccf28SAndroid Build Coastguard Worker base to be non-negative.
2816*e1eccf28SAndroid Build Coastguard Workerend:
2817*e1eccf28SAndroid Build Coastguard Worker
2818*e1eccf28SAndroid Build Coastguard Workerfunction: pown
2819*e1eccf28SAndroid Build Coastguard Workerversion: 24
2820*e1eccf28SAndroid Build Coastguard Workerattrib: const
2821*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2822*e1eccf28SAndroid Build Coastguard Workert: f16
2823*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2824*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 base
2825*e1eccf28SAndroid Build Coastguard Workerarg: int#1 exponent
2826*e1eccf28SAndroid Build Coastguard Workerend:
2827*e1eccf28SAndroid Build Coastguard Worker
2828*e1eccf28SAndroid Build Coastguard Workerfunction: powr
2829*e1eccf28SAndroid Build Coastguard Workerversion: 9
2830*e1eccf28SAndroid Build Coastguard Workerattrib: const
2831*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2832*e1eccf28SAndroid Build Coastguard Workert: f32
2833*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2834*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 base, range(0,3000)
2835*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 exponent
2836*e1eccf28SAndroid Build Coastguard Workersummary: Positive base raised to an exponent
2837*e1eccf28SAndroid Build Coastguard Workerdescription:
2838*e1eccf28SAndroid Build Coastguard Worker Returns base raised to the power exponent, i.e. base ^ exponent.  base must be &gt;= 0.
2839*e1eccf28SAndroid Build Coastguard Worker
2840*e1eccf28SAndroid Build Coastguard Worker @pow() and @pown() are similar.  They both make no assumptions about the base.
2841*e1eccf28SAndroid Build Coastguard Worker @pow() takes a float exponent while @pown() take an integer.
2842*e1eccf28SAndroid Build Coastguard Worker
2843*e1eccf28SAndroid Build Coastguard Worker See also @native_powr().
2844*e1eccf28SAndroid Build Coastguard Workerend:
2845*e1eccf28SAndroid Build Coastguard Worker
2846*e1eccf28SAndroid Build Coastguard Workerfunction: powr
2847*e1eccf28SAndroid Build Coastguard Workerversion: 24
2848*e1eccf28SAndroid Build Coastguard Workerattrib: const
2849*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2850*e1eccf28SAndroid Build Coastguard Workert: f16
2851*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2852*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 base, range(0,300)
2853*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 exponent
2854*e1eccf28SAndroid Build Coastguard Workerend:
2855*e1eccf28SAndroid Build Coastguard Worker
2856*e1eccf28SAndroid Build Coastguard Workerfunction: radians
2857*e1eccf28SAndroid Build Coastguard Workerversion: 9
2858*e1eccf28SAndroid Build Coastguard Workerattrib: const
2859*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2860*e1eccf28SAndroid Build Coastguard Workert: f32
2861*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2862*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2863*e1eccf28SAndroid Build Coastguard Workersummary: Converts degrees into radians
2864*e1eccf28SAndroid Build Coastguard Workerdescription:
2865*e1eccf28SAndroid Build Coastguard Worker Converts from degrees to radians.
2866*e1eccf28SAndroid Build Coastguard Workerend:
2867*e1eccf28SAndroid Build Coastguard Worker
2868*e1eccf28SAndroid Build Coastguard Workerfunction: radians
2869*e1eccf28SAndroid Build Coastguard Workerversion: 24
2870*e1eccf28SAndroid Build Coastguard Workerattrib: const
2871*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2872*e1eccf28SAndroid Build Coastguard Workert: f16
2873*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2874*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2875*e1eccf28SAndroid Build Coastguard Workerend:
2876*e1eccf28SAndroid Build Coastguard Worker
2877*e1eccf28SAndroid Build Coastguard Workerfunction: remainder
2878*e1eccf28SAndroid Build Coastguard Workerversion: 9
2879*e1eccf28SAndroid Build Coastguard Workerattrib: const
2880*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2881*e1eccf28SAndroid Build Coastguard Workert: f32
2882*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2883*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator
2884*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator
2885*e1eccf28SAndroid Build Coastguard Workersummary: Remainder of a division
2886*e1eccf28SAndroid Build Coastguard Workerdescription:
2887*e1eccf28SAndroid Build Coastguard Worker Returns the remainder of (numerator / denominator), where the quotient is rounded towards
2888*e1eccf28SAndroid Build Coastguard Worker the nearest integer.
2889*e1eccf28SAndroid Build Coastguard Worker
2890*e1eccf28SAndroid Build Coastguard Worker The function @fmod() is similar but rounds toward the closest interger.
2891*e1eccf28SAndroid Build Coastguard Worker For example, <code>@fmod(-3.8f, 2.f)</code> returns -1.8f (-3.8f - -1.f * 2.f)
2892*e1eccf28SAndroid Build Coastguard Worker while <code>remainder(-3.8f, 2.f)</code> returns 0.2f (-3.8f - -2.f * 2.f).
2893*e1eccf28SAndroid Build Coastguard Workerend:
2894*e1eccf28SAndroid Build Coastguard Worker
2895*e1eccf28SAndroid Build Coastguard Workerfunction: remainder
2896*e1eccf28SAndroid Build Coastguard Workerversion: 24
2897*e1eccf28SAndroid Build Coastguard Workerattrib: const
2898*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2899*e1eccf28SAndroid Build Coastguard Workert: f16
2900*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2901*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator
2902*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator
2903*e1eccf28SAndroid Build Coastguard Workerend:
2904*e1eccf28SAndroid Build Coastguard Worker
2905*e1eccf28SAndroid Build Coastguard Workerfunction: remquo
2906*e1eccf28SAndroid Build Coastguard Workerversion: 9
2907*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2908*e1eccf28SAndroid Build Coastguard Workert: f32
2909*e1eccf28SAndroid Build Coastguard Workerret: #2#1, "Remainder, precise only for the low three bits."
2910*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator, "Numerator."
2911*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator, "Denominator."
2912*e1eccf28SAndroid Build Coastguard Workerarg: int#1* quotient, "*quotient will be set to the integer quotient."
2913*e1eccf28SAndroid Build Coastguard Workersummary: Remainder and quotient of a division
2914*e1eccf28SAndroid Build Coastguard Workerdescription:
2915*e1eccf28SAndroid Build Coastguard Worker Returns the quotient and the remainder of (numerator / denominator).
2916*e1eccf28SAndroid Build Coastguard Worker
2917*e1eccf28SAndroid Build Coastguard Worker Only the sign and lowest three bits of the quotient are guaranteed to be accurate.
2918*e1eccf28SAndroid Build Coastguard Worker
2919*e1eccf28SAndroid Build Coastguard Worker This function is useful for implementing periodic functions.  The low three bits of the
2920*e1eccf28SAndroid Build Coastguard Worker quotient gives the quadrant and the remainder the distance within the quadrant.
2921*e1eccf28SAndroid Build Coastguard Worker For example, an implementation of @sin(x) could call <code>remquo(x, PI / 2.f, &amp;quadrant)</code>
2922*e1eccf28SAndroid Build Coastguard Worker to reduce very large value of x to something within a limited range.
2923*e1eccf28SAndroid Build Coastguard Worker
2924*e1eccf28SAndroid Build Coastguard Worker Example: <code>remquo(-23.5f, 8.f, &amp;quot)</code> sets the lowest three bits of quot to 3
2925*e1eccf28SAndroid Build Coastguard Worker and the sign negative.  It returns 0.5f.
2926*e1eccf28SAndroid Build Coastguard Workertest: custom
2927*e1eccf28SAndroid Build Coastguard Workerend:
2928*e1eccf28SAndroid Build Coastguard Worker
2929*e1eccf28SAndroid Build Coastguard Workerfunction: remquo
2930*e1eccf28SAndroid Build Coastguard Workerversion: 24
2931*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2932*e1eccf28SAndroid Build Coastguard Workert: f16
2933*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2934*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 numerator
2935*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 denominator
2936*e1eccf28SAndroid Build Coastguard Workerarg: int#1* quotient
2937*e1eccf28SAndroid Build Coastguard Workertest: none
2938*e1eccf28SAndroid Build Coastguard Workerend:
2939*e1eccf28SAndroid Build Coastguard Worker
2940*e1eccf28SAndroid Build Coastguard Workerfunction: rint
2941*e1eccf28SAndroid Build Coastguard Workerversion: 9
2942*e1eccf28SAndroid Build Coastguard Workerattrib: const
2943*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2944*e1eccf28SAndroid Build Coastguard Workert: f32
2945*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2946*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2947*e1eccf28SAndroid Build Coastguard Workersummary: Round to even
2948*e1eccf28SAndroid Build Coastguard Workerdescription:
2949*e1eccf28SAndroid Build Coastguard Worker Rounds to the nearest integral value.
2950*e1eccf28SAndroid Build Coastguard Worker
2951*e1eccf28SAndroid Build Coastguard Worker rint() rounds half values to even.  For example, <code>rint(0.5f)</code> returns 0.f and
2952*e1eccf28SAndroid Build Coastguard Worker <code>rint(1.5f)</code> returns 2.f.  Similarly, <code>rint(-0.5f)</code> returns -0.f and
2953*e1eccf28SAndroid Build Coastguard Worker <code>rint(-1.5f)</code> returns -2.f.
2954*e1eccf28SAndroid Build Coastguard Worker
2955*e1eccf28SAndroid Build Coastguard Worker @round() is similar but rounds away from zero.  @trunc() truncates the decimal fraction.
2956*e1eccf28SAndroid Build Coastguard Workerend:
2957*e1eccf28SAndroid Build Coastguard Worker
2958*e1eccf28SAndroid Build Coastguard Workerfunction: rint
2959*e1eccf28SAndroid Build Coastguard Workerversion: 24
2960*e1eccf28SAndroid Build Coastguard Workerattrib: const
2961*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2962*e1eccf28SAndroid Build Coastguard Workert: f16
2963*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2964*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2965*e1eccf28SAndroid Build Coastguard Workerend:
2966*e1eccf28SAndroid Build Coastguard Worker
2967*e1eccf28SAndroid Build Coastguard Workerfunction: rootn
2968*e1eccf28SAndroid Build Coastguard Workerversion: 9
2969*e1eccf28SAndroid Build Coastguard Workerattrib: const
2970*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2971*e1eccf28SAndroid Build Coastguard Workert: f32
2972*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2973*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2974*e1eccf28SAndroid Build Coastguard Workerarg: int#1 n
2975*e1eccf28SAndroid Build Coastguard Workersummary: Nth root
2976*e1eccf28SAndroid Build Coastguard Workerdescription:
2977*e1eccf28SAndroid Build Coastguard Worker Compute the Nth root of a value.
2978*e1eccf28SAndroid Build Coastguard Worker
2979*e1eccf28SAndroid Build Coastguard Worker See also @native_rootn().
2980*e1eccf28SAndroid Build Coastguard Workerend:
2981*e1eccf28SAndroid Build Coastguard Worker
2982*e1eccf28SAndroid Build Coastguard Workerfunction: rootn
2983*e1eccf28SAndroid Build Coastguard Workerversion: 24
2984*e1eccf28SAndroid Build Coastguard Workerattrib: const
2985*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2986*e1eccf28SAndroid Build Coastguard Workert: f16
2987*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2988*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
2989*e1eccf28SAndroid Build Coastguard Workerarg: int#1 n
2990*e1eccf28SAndroid Build Coastguard Workertest: none
2991*e1eccf28SAndroid Build Coastguard Workerend:
2992*e1eccf28SAndroid Build Coastguard Worker
2993*e1eccf28SAndroid Build Coastguard Workerfunction: round
2994*e1eccf28SAndroid Build Coastguard Workerversion: 9
2995*e1eccf28SAndroid Build Coastguard Workerattrib: const
2996*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
2997*e1eccf28SAndroid Build Coastguard Workert: f32
2998*e1eccf28SAndroid Build Coastguard Workerret: #2#1
2999*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3000*e1eccf28SAndroid Build Coastguard Workersummary: Round away from zero
3001*e1eccf28SAndroid Build Coastguard Workerdescription:
3002*e1eccf28SAndroid Build Coastguard Worker Round to the nearest integral value.
3003*e1eccf28SAndroid Build Coastguard Worker
3004*e1eccf28SAndroid Build Coastguard Worker round() rounds half values away from zero.  For example, <code>round(0.5f)</code> returns 1.f
3005*e1eccf28SAndroid Build Coastguard Worker and <code>round(1.5f)</code> returns 2.f.  Similarly, <code>round(-0.5f)</code> returns -1.f
3006*e1eccf28SAndroid Build Coastguard Worker and <code>round(-1.5f)</code> returns -2.f.
3007*e1eccf28SAndroid Build Coastguard Worker
3008*e1eccf28SAndroid Build Coastguard Worker @rint() is similar but rounds half values toward even.  @trunc() truncates the decimal fraction.
3009*e1eccf28SAndroid Build Coastguard Workerend:
3010*e1eccf28SAndroid Build Coastguard Worker
3011*e1eccf28SAndroid Build Coastguard Workerfunction: round
3012*e1eccf28SAndroid Build Coastguard Workerversion: 24
3013*e1eccf28SAndroid Build Coastguard Workerattrib: const
3014*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3015*e1eccf28SAndroid Build Coastguard Workert: f16
3016*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3017*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3018*e1eccf28SAndroid Build Coastguard Workerend:
3019*e1eccf28SAndroid Build Coastguard Worker
3020*e1eccf28SAndroid Build Coastguard Workerfunction: rsqrt
3021*e1eccf28SAndroid Build Coastguard Workerversion: 9
3022*e1eccf28SAndroid Build Coastguard Workerattrib: const
3023*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3024*e1eccf28SAndroid Build Coastguard Workert: f32
3025*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3026*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3027*e1eccf28SAndroid Build Coastguard Workersummary: Reciprocal of a square root
3028*e1eccf28SAndroid Build Coastguard Workerdescription:
3029*e1eccf28SAndroid Build Coastguard Worker Returns (1 / sqrt(v)).
3030*e1eccf28SAndroid Build Coastguard Worker
3031*e1eccf28SAndroid Build Coastguard Worker See also @half_rsqrt(), @native_rsqrt().
3032*e1eccf28SAndroid Build Coastguard Workerend:
3033*e1eccf28SAndroid Build Coastguard Worker
3034*e1eccf28SAndroid Build Coastguard Workerfunction: rsqrt
3035*e1eccf28SAndroid Build Coastguard Workerversion: 24
3036*e1eccf28SAndroid Build Coastguard Workerattrib: const
3037*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3038*e1eccf28SAndroid Build Coastguard Workert: f16
3039*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3040*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3041*e1eccf28SAndroid Build Coastguard Workerend:
3042*e1eccf28SAndroid Build Coastguard Worker
3043*e1eccf28SAndroid Build Coastguard Workerfunction: sign
3044*e1eccf28SAndroid Build Coastguard Workerversion: 9
3045*e1eccf28SAndroid Build Coastguard Workerattrib: const
3046*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3047*e1eccf28SAndroid Build Coastguard Workert: f32
3048*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3049*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3050*e1eccf28SAndroid Build Coastguard Workersummary: Sign of a value
3051*e1eccf28SAndroid Build Coastguard Workerdescription:
3052*e1eccf28SAndroid Build Coastguard Worker Returns the sign of a value.
3053*e1eccf28SAndroid Build Coastguard Worker
3054*e1eccf28SAndroid Build Coastguard Worker if (v &lt; 0) return -1.f;
3055*e1eccf28SAndroid Build Coastguard Worker else if (v &gt; 0) return 1.f;
3056*e1eccf28SAndroid Build Coastguard Worker else return 0.f;
3057*e1eccf28SAndroid Build Coastguard Workerend:
3058*e1eccf28SAndroid Build Coastguard Worker
3059*e1eccf28SAndroid Build Coastguard Workerfunction: sign
3060*e1eccf28SAndroid Build Coastguard Workerversion:24
3061*e1eccf28SAndroid Build Coastguard Workerattrib: const
3062*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3063*e1eccf28SAndroid Build Coastguard Workert: f16
3064*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3065*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3066*e1eccf28SAndroid Build Coastguard Workerend:
3067*e1eccf28SAndroid Build Coastguard Worker
3068*e1eccf28SAndroid Build Coastguard Workerfunction: sin
3069*e1eccf28SAndroid Build Coastguard Workerversion: 9
3070*e1eccf28SAndroid Build Coastguard Workerattrib: const
3071*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3072*e1eccf28SAndroid Build Coastguard Workert: f32
3073*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3074*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3075*e1eccf28SAndroid Build Coastguard Workersummary: Sine
3076*e1eccf28SAndroid Build Coastguard Workerdescription:
3077*e1eccf28SAndroid Build Coastguard Worker Returns the sine of an angle measured in radians.
3078*e1eccf28SAndroid Build Coastguard Worker
3079*e1eccf28SAndroid Build Coastguard Worker See also @native_sin().
3080*e1eccf28SAndroid Build Coastguard Workerend:
3081*e1eccf28SAndroid Build Coastguard Worker
3082*e1eccf28SAndroid Build Coastguard Workerfunction: sin
3083*e1eccf28SAndroid Build Coastguard Workerversion: 24
3084*e1eccf28SAndroid Build Coastguard Workerattrib: const
3085*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3086*e1eccf28SAndroid Build Coastguard Workert: f16
3087*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3088*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3089*e1eccf28SAndroid Build Coastguard Workerend:
3090*e1eccf28SAndroid Build Coastguard Worker
3091*e1eccf28SAndroid Build Coastguard Workerfunction: sincos
3092*e1eccf28SAndroid Build Coastguard Workerversion: 9
3093*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3094*e1eccf28SAndroid Build Coastguard Workert: f32
3095*e1eccf28SAndroid Build Coastguard Workerret: #2#1, "Sine of v."
3096*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v, "Incoming value in radians."
3097*e1eccf28SAndroid Build Coastguard Workerarg: #2#1* cos, "*cos will be set to the cosine value."
3098*e1eccf28SAndroid Build Coastguard Workersummary: Sine and cosine
3099*e1eccf28SAndroid Build Coastguard Workerdescription:
3100*e1eccf28SAndroid Build Coastguard Worker Returns the sine and cosine of a value.
3101*e1eccf28SAndroid Build Coastguard Worker
3102*e1eccf28SAndroid Build Coastguard Worker See also @native_sincos().
3103*e1eccf28SAndroid Build Coastguard Workerend:
3104*e1eccf28SAndroid Build Coastguard Worker
3105*e1eccf28SAndroid Build Coastguard Workerfunction: sincos
3106*e1eccf28SAndroid Build Coastguard Workerversion: 24
3107*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3108*e1eccf28SAndroid Build Coastguard Workert: f16
3109*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3110*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3111*e1eccf28SAndroid Build Coastguard Workerarg: #2#1* cos
3112*e1eccf28SAndroid Build Coastguard Workerend:
3113*e1eccf28SAndroid Build Coastguard Worker
3114*e1eccf28SAndroid Build Coastguard Workerfunction: sinh
3115*e1eccf28SAndroid Build Coastguard Workerversion: 9
3116*e1eccf28SAndroid Build Coastguard Workerattrib: const
3117*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3118*e1eccf28SAndroid Build Coastguard Workert: f32
3119*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3120*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3121*e1eccf28SAndroid Build Coastguard Workersummary: Hyperbolic sine
3122*e1eccf28SAndroid Build Coastguard Workerdescription:
3123*e1eccf28SAndroid Build Coastguard Worker Returns the hyperbolic sine of v, where v is measured in radians.
3124*e1eccf28SAndroid Build Coastguard Worker
3125*e1eccf28SAndroid Build Coastguard Worker See also @native_sinh().
3126*e1eccf28SAndroid Build Coastguard Workerend:
3127*e1eccf28SAndroid Build Coastguard Worker
3128*e1eccf28SAndroid Build Coastguard Workerfunction: sinh
3129*e1eccf28SAndroid Build Coastguard Workerversion: 24
3130*e1eccf28SAndroid Build Coastguard Workerattrib: const
3131*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3132*e1eccf28SAndroid Build Coastguard Workert: f16
3133*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3134*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3135*e1eccf28SAndroid Build Coastguard Workerend:
3136*e1eccf28SAndroid Build Coastguard Worker
3137*e1eccf28SAndroid Build Coastguard Workerfunction: sinpi
3138*e1eccf28SAndroid Build Coastguard Workerversion: 9
3139*e1eccf28SAndroid Build Coastguard Workerattrib: const
3140*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3141*e1eccf28SAndroid Build Coastguard Workert: f32
3142*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3143*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3144*e1eccf28SAndroid Build Coastguard Workersummary: Sine of a number multiplied by pi
3145*e1eccf28SAndroid Build Coastguard Workerdescription:
3146*e1eccf28SAndroid Build Coastguard Worker Returns the sine of (v * pi), where (v * pi) is measured in radians.
3147*e1eccf28SAndroid Build Coastguard Worker
3148*e1eccf28SAndroid Build Coastguard Worker To get the sine of a value measured in degrees, call <code>sinpi(v / 180.f)</code>.
3149*e1eccf28SAndroid Build Coastguard Worker
3150*e1eccf28SAndroid Build Coastguard Worker See also @native_sinpi().
3151*e1eccf28SAndroid Build Coastguard Workerend:
3152*e1eccf28SAndroid Build Coastguard Worker
3153*e1eccf28SAndroid Build Coastguard Workerfunction: sinpi
3154*e1eccf28SAndroid Build Coastguard Workerversion: 24
3155*e1eccf28SAndroid Build Coastguard Workerattrib: const
3156*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3157*e1eccf28SAndroid Build Coastguard Workert: f16
3158*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3159*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3160*e1eccf28SAndroid Build Coastguard Workerend:
3161*e1eccf28SAndroid Build Coastguard Worker
3162*e1eccf28SAndroid Build Coastguard Workerfunction: sqrt
3163*e1eccf28SAndroid Build Coastguard Workerversion: 9
3164*e1eccf28SAndroid Build Coastguard Workerattrib: const
3165*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3166*e1eccf28SAndroid Build Coastguard Workert: f32
3167*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3168*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3169*e1eccf28SAndroid Build Coastguard Workersummary: Square root
3170*e1eccf28SAndroid Build Coastguard Workerdescription:
3171*e1eccf28SAndroid Build Coastguard Worker Returns the square root of a value.
3172*e1eccf28SAndroid Build Coastguard Worker
3173*e1eccf28SAndroid Build Coastguard Worker See also @half_sqrt(), @native_sqrt().
3174*e1eccf28SAndroid Build Coastguard Workerend:
3175*e1eccf28SAndroid Build Coastguard Worker
3176*e1eccf28SAndroid Build Coastguard Workerfunction: sqrt
3177*e1eccf28SAndroid Build Coastguard Workerversion: 24
3178*e1eccf28SAndroid Build Coastguard Workerattrib: const
3179*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3180*e1eccf28SAndroid Build Coastguard Workert: f16
3181*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3182*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3183*e1eccf28SAndroid Build Coastguard Workerend:
3184*e1eccf28SAndroid Build Coastguard Worker
3185*e1eccf28SAndroid Build Coastguard Workerfunction: step
3186*e1eccf28SAndroid Build Coastguard Workerversion: 9
3187*e1eccf28SAndroid Build Coastguard Workerattrib: const
3188*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3189*e1eccf28SAndroid Build Coastguard Workert: f32
3190*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3191*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 edge
3192*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3193*e1eccf28SAndroid Build Coastguard Workersummary: 0 if less than a value, 0 otherwise
3194*e1eccf28SAndroid Build Coastguard Workerdescription:
3195*e1eccf28SAndroid Build Coastguard Worker Returns 0.f if v &lt; edge, 1.f otherwise.
3196*e1eccf28SAndroid Build Coastguard Worker
3197*e1eccf28SAndroid Build Coastguard Worker This can be useful to create conditional computations without using loops and branching
3198*e1eccf28SAndroid Build Coastguard Worker instructions.  For example, instead of computing <code>(a[i] &lt; b[i]) ? 0.f : @atan2(a[i], b[i])</code>
3199*e1eccf28SAndroid Build Coastguard Worker for the corresponding elements of a vector, you could instead use <code>step(a, b) * @atan2(a, b)</code>.
3200*e1eccf28SAndroid Build Coastguard Workerend:
3201*e1eccf28SAndroid Build Coastguard Worker
3202*e1eccf28SAndroid Build Coastguard Workerfunction: step
3203*e1eccf28SAndroid Build Coastguard Workerversion: 24
3204*e1eccf28SAndroid Build Coastguard Workerattrib: const
3205*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3206*e1eccf28SAndroid Build Coastguard Workert: f16
3207*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3208*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 edge
3209*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3210*e1eccf28SAndroid Build Coastguard Workerend:
3211*e1eccf28SAndroid Build Coastguard Worker
3212*e1eccf28SAndroid Build Coastguard Workerfunction: step
3213*e1eccf28SAndroid Build Coastguard Workerversion: 9
3214*e1eccf28SAndroid Build Coastguard Workerattrib: const
3215*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
3216*e1eccf28SAndroid Build Coastguard Workert: f32
3217*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3218*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 edge
3219*e1eccf28SAndroid Build Coastguard Workerarg: #2 v
3220*e1eccf28SAndroid Build Coastguard Workerend:
3221*e1eccf28SAndroid Build Coastguard Worker
3222*e1eccf28SAndroid Build Coastguard Workerfunction: step
3223*e1eccf28SAndroid Build Coastguard Workerversion: 24
3224*e1eccf28SAndroid Build Coastguard Workerattrib: const
3225*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
3226*e1eccf28SAndroid Build Coastguard Workert: f16
3227*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3228*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 edge
3229*e1eccf28SAndroid Build Coastguard Workerarg: #2 v
3230*e1eccf28SAndroid Build Coastguard Workerend:
3231*e1eccf28SAndroid Build Coastguard Worker
3232*e1eccf28SAndroid Build Coastguard Workerfunction: step
3233*e1eccf28SAndroid Build Coastguard Workerversion: 21
3234*e1eccf28SAndroid Build Coastguard Workerattrib: const
3235*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
3236*e1eccf28SAndroid Build Coastguard Workert: f32
3237*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3238*e1eccf28SAndroid Build Coastguard Workerarg: #2 edge
3239*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3240*e1eccf28SAndroid Build Coastguard Workerend:
3241*e1eccf28SAndroid Build Coastguard Worker
3242*e1eccf28SAndroid Build Coastguard Workerfunction: step
3243*e1eccf28SAndroid Build Coastguard Workerversion: 24
3244*e1eccf28SAndroid Build Coastguard Workerattrib: const
3245*e1eccf28SAndroid Build Coastguard Workerw: 2, 3, 4
3246*e1eccf28SAndroid Build Coastguard Workert: f16
3247*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3248*e1eccf28SAndroid Build Coastguard Workerarg: #2 edge
3249*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3250*e1eccf28SAndroid Build Coastguard Workerend:
3251*e1eccf28SAndroid Build Coastguard Worker
3252*e1eccf28SAndroid Build Coastguard Workerfunction: tan
3253*e1eccf28SAndroid Build Coastguard Workerversion: 9
3254*e1eccf28SAndroid Build Coastguard Workerattrib: const
3255*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3256*e1eccf28SAndroid Build Coastguard Workert: f32
3257*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3258*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3259*e1eccf28SAndroid Build Coastguard Workersummary: Tangent
3260*e1eccf28SAndroid Build Coastguard Workerdescription:
3261*e1eccf28SAndroid Build Coastguard Worker Returns the tangent of an angle measured in radians.
3262*e1eccf28SAndroid Build Coastguard Worker
3263*e1eccf28SAndroid Build Coastguard Worker See also @native_tan().
3264*e1eccf28SAndroid Build Coastguard Workerend:
3265*e1eccf28SAndroid Build Coastguard Worker
3266*e1eccf28SAndroid Build Coastguard Workerfunction: tan
3267*e1eccf28SAndroid Build Coastguard Workerversion: 24
3268*e1eccf28SAndroid Build Coastguard Workerattrib: const
3269*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3270*e1eccf28SAndroid Build Coastguard Workert: f16
3271*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3272*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3273*e1eccf28SAndroid Build Coastguard Workerend:
3274*e1eccf28SAndroid Build Coastguard Worker
3275*e1eccf28SAndroid Build Coastguard Workerfunction: tanh
3276*e1eccf28SAndroid Build Coastguard Workerversion: 9
3277*e1eccf28SAndroid Build Coastguard Workerattrib: const
3278*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3279*e1eccf28SAndroid Build Coastguard Workert: f32
3280*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3281*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3282*e1eccf28SAndroid Build Coastguard Workersummary: Hyperbolic tangent
3283*e1eccf28SAndroid Build Coastguard Workerdescription:
3284*e1eccf28SAndroid Build Coastguard Worker Returns the hyperbolic tangent of a value.
3285*e1eccf28SAndroid Build Coastguard Worker
3286*e1eccf28SAndroid Build Coastguard Worker See also @native_tanh().
3287*e1eccf28SAndroid Build Coastguard Workerend:
3288*e1eccf28SAndroid Build Coastguard Worker
3289*e1eccf28SAndroid Build Coastguard Workerfunction: tanh
3290*e1eccf28SAndroid Build Coastguard Workerversion: 24
3291*e1eccf28SAndroid Build Coastguard Workerattrib: const
3292*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3293*e1eccf28SAndroid Build Coastguard Workert: f16
3294*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3295*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3296*e1eccf28SAndroid Build Coastguard Workerend:
3297*e1eccf28SAndroid Build Coastguard Worker
3298*e1eccf28SAndroid Build Coastguard Workerfunction: tanpi
3299*e1eccf28SAndroid Build Coastguard Workerversion: 9
3300*e1eccf28SAndroid Build Coastguard Workerattrib: const
3301*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3302*e1eccf28SAndroid Build Coastguard Workert: f32
3303*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3304*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3305*e1eccf28SAndroid Build Coastguard Workersummary: Tangent of a number multiplied by pi
3306*e1eccf28SAndroid Build Coastguard Workerdescription:
3307*e1eccf28SAndroid Build Coastguard Worker Returns the tangent of (v * pi), where (v * pi) is measured in radians.
3308*e1eccf28SAndroid Build Coastguard Worker
3309*e1eccf28SAndroid Build Coastguard Worker To get the tangent of a value measured in degrees, call <code>tanpi(v / 180.f)</code>.
3310*e1eccf28SAndroid Build Coastguard Worker
3311*e1eccf28SAndroid Build Coastguard Worker See also @native_tanpi().
3312*e1eccf28SAndroid Build Coastguard Workerend:
3313*e1eccf28SAndroid Build Coastguard Worker
3314*e1eccf28SAndroid Build Coastguard Workerfunction: tanpi
3315*e1eccf28SAndroid Build Coastguard Workerversion: 24
3316*e1eccf28SAndroid Build Coastguard Workerattrib: const
3317*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3318*e1eccf28SAndroid Build Coastguard Workert: f16
3319*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3320*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3321*e1eccf28SAndroid Build Coastguard Workerend:
3322*e1eccf28SAndroid Build Coastguard Worker
3323*e1eccf28SAndroid Build Coastguard Workerfunction: tgamma
3324*e1eccf28SAndroid Build Coastguard Workerversion: 9
3325*e1eccf28SAndroid Build Coastguard Workerattrib: const
3326*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3327*e1eccf28SAndroid Build Coastguard Workert: f32
3328*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3329*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3330*e1eccf28SAndroid Build Coastguard Workersummary: Gamma function
3331*e1eccf28SAndroid Build Coastguard Workerdescription:
3332*e1eccf28SAndroid Build Coastguard Worker Returns the gamma function of a value.
3333*e1eccf28SAndroid Build Coastguard Worker
3334*e1eccf28SAndroid Build Coastguard Worker See also @lgamma().
3335*e1eccf28SAndroid Build Coastguard Workerend:
3336*e1eccf28SAndroid Build Coastguard Worker
3337*e1eccf28SAndroid Build Coastguard Workerfunction: tgamma
3338*e1eccf28SAndroid Build Coastguard Workerversion: 24
3339*e1eccf28SAndroid Build Coastguard Workerattrib: const
3340*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3341*e1eccf28SAndroid Build Coastguard Workert: f16
3342*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3343*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3344*e1eccf28SAndroid Build Coastguard Workerend:
3345*e1eccf28SAndroid Build Coastguard Worker
3346*e1eccf28SAndroid Build Coastguard Workerfunction: trunc
3347*e1eccf28SAndroid Build Coastguard Workerversion: 9
3348*e1eccf28SAndroid Build Coastguard Workerattrib: const
3349*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3350*e1eccf28SAndroid Build Coastguard Workert: f32
3351*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3352*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3353*e1eccf28SAndroid Build Coastguard Workersummary: Truncates a floating point
3354*e1eccf28SAndroid Build Coastguard Workerdescription:
3355*e1eccf28SAndroid Build Coastguard Worker Rounds to integral using truncation.
3356*e1eccf28SAndroid Build Coastguard Worker
3357*e1eccf28SAndroid Build Coastguard Worker For example, <code>trunc(1.7f)</code> returns 1.f and <code>trunc(-1.7f)</code> returns -1.f.
3358*e1eccf28SAndroid Build Coastguard Worker
3359*e1eccf28SAndroid Build Coastguard Worker See @rint() and @round() for other rounding options.
3360*e1eccf28SAndroid Build Coastguard Workerend:
3361*e1eccf28SAndroid Build Coastguard Worker
3362*e1eccf28SAndroid Build Coastguard Workerfunction: trunc
3363*e1eccf28SAndroid Build Coastguard Workerversion: 24
3364*e1eccf28SAndroid Build Coastguard Workerattrib: const
3365*e1eccf28SAndroid Build Coastguard Workerw: 1, 2, 3, 4
3366*e1eccf28SAndroid Build Coastguard Workert: f16
3367*e1eccf28SAndroid Build Coastguard Workerret: #2#1
3368*e1eccf28SAndroid Build Coastguard Workerarg: #2#1 v
3369*e1eccf28SAndroid Build Coastguard Workerend:
3370*e1eccf28SAndroid Build Coastguard Worker
3371*e1eccf28SAndroid Build Coastguard Workerfunction: rsClamp
3372*e1eccf28SAndroid Build Coastguard Workerattrib: const
3373*e1eccf28SAndroid Build Coastguard Workert: i8, i16, i32, u8, u16, u32
3374*e1eccf28SAndroid Build Coastguard Workerret: #1
3375*e1eccf28SAndroid Build Coastguard Workerarg: #1 amount, "Value to clamp."
3376*e1eccf28SAndroid Build Coastguard Workerarg: #1 low, "Lower bound."
3377*e1eccf28SAndroid Build Coastguard Workerarg: #1 high, "Upper bound."
3378*e1eccf28SAndroid Build Coastguard Workerdeprecated: 22, Use @clamp() instead.
3379*e1eccf28SAndroid Build Coastguard Workersummary: Restrain a value to a range
3380*e1eccf28SAndroid Build Coastguard Workerdescription:
3381*e1eccf28SAndroid Build Coastguard Worker Clamp a value between low and high.
3382*e1eccf28SAndroid Build Coastguard Workertest: none
3383*e1eccf28SAndroid Build Coastguard Workerend:
3384*e1eccf28SAndroid Build Coastguard Worker
3385*e1eccf28SAndroid Build Coastguard Workerfunction: rsFrac
3386*e1eccf28SAndroid Build Coastguard Workerattrib: const
3387*e1eccf28SAndroid Build Coastguard Workerret: float
3388*e1eccf28SAndroid Build Coastguard Workerarg: float v
3389*e1eccf28SAndroid Build Coastguard Workerdeprecated: 22, Use @fract() instead.
3390*e1eccf28SAndroid Build Coastguard Workersummary: Returns the fractional part of a float
3391*e1eccf28SAndroid Build Coastguard Workerdescription:
3392*e1eccf28SAndroid Build Coastguard Worker Returns the fractional part of a float
3393*e1eccf28SAndroid Build Coastguard Workertest: none
3394*e1eccf28SAndroid Build Coastguard Workerend:
3395*e1eccf28SAndroid Build Coastguard Worker
3396*e1eccf28SAndroid Build Coastguard Workerfunction: rsRand
3397*e1eccf28SAndroid Build Coastguard Workerret: int
3398*e1eccf28SAndroid Build Coastguard Workerarg: int max_value
3399*e1eccf28SAndroid Build Coastguard Workersummary: Pseudo-random number
3400*e1eccf28SAndroid Build Coastguard Workerdescription:
3401*e1eccf28SAndroid Build Coastguard Worker Return a random value between 0 (or min_value) and max_malue.
3402*e1eccf28SAndroid Build Coastguard Workertest: none
3403*e1eccf28SAndroid Build Coastguard Workerend:
3404*e1eccf28SAndroid Build Coastguard Worker
3405*e1eccf28SAndroid Build Coastguard Workerfunction: rsRand
3406*e1eccf28SAndroid Build Coastguard Workerret: int
3407*e1eccf28SAndroid Build Coastguard Workerarg: int min_value
3408*e1eccf28SAndroid Build Coastguard Workerarg: int max_value
3409*e1eccf28SAndroid Build Coastguard Workertest: none
3410*e1eccf28SAndroid Build Coastguard Workerend:
3411*e1eccf28SAndroid Build Coastguard Worker
3412*e1eccf28SAndroid Build Coastguard Workerfunction: rsRand
3413*e1eccf28SAndroid Build Coastguard Workerret: float
3414*e1eccf28SAndroid Build Coastguard Workerarg: float max_value
3415*e1eccf28SAndroid Build Coastguard Workertest: none
3416*e1eccf28SAndroid Build Coastguard Workerend:
3417*e1eccf28SAndroid Build Coastguard Worker
3418*e1eccf28SAndroid Build Coastguard Workerfunction: rsRand
3419*e1eccf28SAndroid Build Coastguard Workerret: float
3420*e1eccf28SAndroid Build Coastguard Workerarg: float min_value
3421*e1eccf28SAndroid Build Coastguard Workerarg: float max_value
3422*e1eccf28SAndroid Build Coastguard Workertest: none
3423*e1eccf28SAndroid Build Coastguard Workerend:
3424