24.02.1
|
Go to the documentation of this file.
24 #ifndef ARM_COMPUTE_NEMATH_H
25 #define ARM_COMPUTE_NEMATH_H
87 float32x4_t
vtaylor_polyq_f32(float32x4_t x,
const std::array<float32x4_t, 8> &coeffs);
134 float32x4_t
vpowq_f32(float32x4_t val, float32x4_t n);
191 template <
typename T>
222 template <
typename float_vec_type,
typename int_vec_type>
231 template <
typename float_vec_type,
typename int_vec_type>
248 float32x2_t
vsin_f32(float32x2_t val);
256 float vreduce(
const float32x4_t &v);
258 #ifdef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC
269 float16x8_t vtanhq_f16(float16x8_t val);
277 float16x8_t vroundq_rte_f16(float16x8_t val);
285 float16x4_t vinv_f16(float16x4_t x);
293 float16x8_t vinvq_f16(float16x8_t x);
301 float16x4_t vinvsqrt_f16(float16x4_t x);
309 float16x8_t vinvsqrtq_f16(float16x8_t x);
317 float16x8_t vexpq_f16(float16x8_t x);
325 float16x8_t verfq_f16(float16x8_t x);
336 float16x8_t vpowq_f16(float16x8_t val, float16x8_t n);
344 float16x8_t vsinq_f16(float16x8_t val);
352 float16_t
vreduce(
const float16x8_t &v);
void convert_float32x4x3_to_uint8x8x3(const float32x4x3_t &in1, const float32x4x3_t &in2, uint8x8x3_t &out)
Converts from two float32x4x3_t to just one uint8x8x3_t.
float32x4x4_t convert_int8x16_to_float32x4x4(const int8x16_t &in)
Converts from int8x16 to float32x4x4_t.
float32x4_t vtanhq_f32(float32x4_t val)
Calculate hyperbolic tangent.
float32x2_t vinv_f32(float32x2_t x)
Calculate reciprocal.
float32x2_t vsin_f32(float32x2_t val)
Calculate sine.
float32x4_t vtaylor_polyq_f32(float32x4_t x, const std::array< float32x4_t, 8 > &coeffs)
Perform a 7th degree polynomial approximation using Estrin's method.
float32x4_t vinvsqrtq_f32(float32x4_t x)
Calculate inverse square root.
float32x4_t vfloorq_f32(float32x4_t val)
Calculate floor of a vector.
int_vec_type convert_float_to_int(const float_vec_type &in)
Converts from float vector to integer vector.
float32x4x4_t convert_to_float32x4x4(const T &in)
Converts to float32x4x4_t from the specified templated 16 elements vectors.
void convert_float32x4x4_to_int8x16(const float32x4x4_t &in, int8x16_t &out)
Converts from float32x4x4_t to just one int8x16_t.
float32x4x4_t convert_uint8x16_to_float32x4x4(const uint8x16_t &in)
Converts from uint8x16 to float32x4x4_t.
float32x4_t vpowq_f32(float32x4_t val, float32x4_t n)
Calculate n power of a number.
float32x4_t verfq_f32(float32x4_t x)
Calculate error function.
float vreduce(const float32x4_t &v)
Reduce a vector to be a scalar by accumulating all lanes in the vector.
float32x2_t vinvsqrt_f32(float32x2_t x)
Calculate inverse square root.
float32x4_t vlogq_f32(float32x4_t x)
Calculate logarithm.
void convert_float32x4x4_to_uint8x16(const float32x4x4_t &in, uint8x16_t &out)
Converts from two float32x4x4_t to just one uint8x16_t.
Copyright (c) 2017-2024 Arm Limited.
int32x4_t rounding_divide_by_pow2(int32x4_t x, int32x4_t exponent)
Round to the nearest division by a power-of-two using exponent.
float32x4_t vsinq_f32(float32x4_t val)
Calculate sine.
float_vec_type convert_int_to_float(const int_vec_type &in)
Converts from integer vector to float vector.
float32x4_t vroundq_rte_f32(float32x4_t val)
Calculate round value of a vector to nearest with ties to even.
float32x4_t vinvq_f32(float32x4_t x)
Calculate reciprocal.
float32x4_t vexpq_f32(float32x4_t x)
Calculate exponential.