|
| template<uint32_t hint> |
| void SVE_INLINE | aarch64_do_prefetch (void *addr) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE void | sve::instructions::svst (const svbool_t &predicate, T *location, const sve_type_t &value) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svld (const svbool_t &predicate, const T *ptr) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svdup (T value) |
| template<typename T> |
| SVE_INLINE svbool_t | sve::instructions::svtrue () |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE T | sve::instructions::svextract (const svbool_t &predicate, const sve_type_t &vec) |
| template<typename T> |
| SVE_INLINE svbool_t | sve::instructions::pred_from_index (const std::size_t index) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svorr (const svbool_t &predicate, const sve_type_t &v1, const sve_type_t &v2) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svsqrt (const svbool_t &predicate, const sve_type_t &v1) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svand (const svbool_t &predicate, const sve_type_t &v1, const sve_type_t &v2) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::sveq (const svbool_t &mask, const sve_type_t &v1, const sve_type_t &v2) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svadd (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svadd_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE T | sve::instructions::reduce (const svbool_t &predicate, const sve_type_t &vec) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svmul (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svmul_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svsub (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svsub_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svneg (const svbool_t &predicate, const sve_type_t &operand) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svdiv (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svdiv_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svabs (const svbool_t &predicate, const sve_type_t &operand) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::eq (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::neq (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::eq_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::neq_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::lt (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::lt_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::leq (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::leq_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::gt (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::gt_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::geq (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE svbool_t | sve::instructions::geq_n (const svbool_t &predicate, const sve_type_t &lhs, const T rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svsel (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svmin (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename T, typename sve_type_t = typename sve::type<T>::vec> |
| SVE_INLINE sve_type_t | sve::instructions::svmax (const svbool_t &predicate, const sve_type_t &lhs, const sve_type_t &rhs) |
| template<typename sve_wrapper_vector_t, typename predicate_t, typename lhs_sve_vector_t, typename rhs_sve_vector_t, std::size_t len, typename return_sve_vector_t = typename sve_wrapper_vector_t::sve_vec_t> |
| sve_wrapper_vector_t | sve::functions::transform (const predicate_t &predicate, const lhs_sve_vector_t *lhs, const rhs_sve_vector_t *rhs, return_sve_vector_t(*binary_operation)(const svbool_t &, const lhs_sve_vector_t &, const rhs_sve_vector_t &)) |
| template<typename sve_wrapper_vector_t, typename lhs_sve_vector_t, typename rhs_sve_vector_t, std::size_t len, typename return_sve_vector_t = typename sve_wrapper_vector_t::sve_vec_t> |
| sve_wrapper_vector_t | sve::functions::transform (const lhs_sve_vector_t *lhs, const rhs_sve_vector_t *rhs, return_sve_vector_t(*binary_operation)(const svbool_t &, const lhs_sve_vector_t &, const rhs_sve_vector_t &)) |
| template<typename sve_wrapper_vector_t, typename lhs_sve_vector_t, std::size_t len, typename return_sve_vector_t = typename sve_wrapper_vector_t::sve_vec_t, typename scalar_t = typename sve_wrapper_vector_t::sve_scalar_t> |
| sve_wrapper_vector_t | sve::functions::transform (const lhs_sve_vector_t *lhs, const scalar_t rhs, return_sve_vector_t(*binary_operation_with_scalar)(const svbool_t &, const lhs_sve_vector_t &, const scalar_t)) |
| template<typename sve_wrapper_vector_t, typename operand_vector_t, std::size_t len, typename return_sve_vector_t = typename sve_wrapper_vector_t::sve_vec_t> |
| sve_wrapper_vector_t | sve::functions::transform (const operand_vector_t *operand, return_sve_vector_t(*unary_operation)(const svbool_t &, const operand_vector_t &)) |
| template<typename sve_wrapper_vector_t, typename predicate_t, typename lhs_sve_vector_t, std::size_t len, typename return_sve_vector_t = typename sve_wrapper_vector_t::sve_vec_t> |
| sve_wrapper_vector_t | sve::functions::transform (const lhs_sve_vector_t *operand, const predicate_t *predicate, return_sve_vector_t(*unary_operation)(const svbool_t &, const lhs_sve_vector_t &)) |
| template<typename sve_wrapper_vector_t, typename predicate_t, typename lhs_sve_vector_t, typename rhs_sve_vector_t, std::size_t len, typename return_sve_vector_t = typename sve_wrapper_vector_t::sve_vec_t, typename return_scalar_t = typename sve_wrapper_vector_t::sve_scalar_t> |
| sve_wrapper_vector_t | sve::functions::transform (const lhs_sve_vector_t *lhs, const rhs_sve_vector_t *rhs, const predicate_t *predicate, svbool_t(*binary_operation)(const svbool_t &, const lhs_sve_vector_t &, const rhs_sve_vector_t &)) |
| template<typename sve_wrapper_vector_t, typename lhs_sve_vector_t, typename rhs_sve_vector_t, std::size_t len, typename return_sve_vector_t = typename sve_wrapper_vector_t::sve_vec_t, typename return_scalar_t = typename sve_wrapper_vector_t::sve_scalar_t> |
| sve_wrapper_vector_t | sve::functions::transform (const lhs_sve_vector_t *lhs, const rhs_sve_vector_t *rhs, svbool_t(*binary_operation)(const svbool_t &, const lhs_sve_vector_t &, const rhs_sve_vector_t &)) |
| template<typename sve_wrapper_vector_t, typename lhs_sve_vector_t, std::size_t len, typename scalar_t = typename sve_wrapper_vector_t::sve_scalar_t, typename return_sve_vector_t = typename sve_wrapper_vector_t::sve_vec_t, typename return_scalar_t = typename sve_wrapper_vector_t::sve_scalar_t> |
| sve_wrapper_vector_t | sve::functions::transform (const lhs_sve_vector_t *lhs, const scalar_t rhs, svbool_t(*binary_operation_with_scalar)(const svbool_t &, const lhs_sve_vector_t &, const scalar_t)) |
| template<typename T, std::size_t len, std::size_t stride, typename vec_t = typename sve::type<T>::vec> |
| void | sve::functions::load_into (vec_t *dst, const T *src) |
| template<typename T, std::size_t len, std::size_t stride, typename vec_t = typename sve::type<T>::vec> |
| void | sve::functions::store_into (T *dst, const vec_t *src) |
| static void | no_subnormals () |
| template<typename T, std::size_t N> |
| SVE_INLINE VecSVE< T, N > | abs (const VecSVE< T, N > &v) |
| template<typename T, std::size_t N> |
| SVE_INLINE VecSVE< T, N > | sqrt (const VecSVE< T, N > &v) |
| template<typename T, std::size_t N> |
| SVE_INLINE VecSVE< T, N > | select (const VecSVEMask< T, N > &mask, const VecSVE< T, N > &v1, const VecSVE< T, N > &v2) |
| template<typename T, std::size_t N, typename U, typename = std::enable_if_t<std::is_arithmetic_v<U>>> |
| SVE_INLINE VecSVE< T, N > | select (const VecSVEMask< T, N > &mask, const VecSVE< T, N > &v1, const U value) |
| template<typename T, std::size_t N, typename U, typename = std::enable_if_t<std::is_arithmetic_v<U>>> |
| SVE_INLINE VecSVE< T, N > | select (const VecSVEMask< T, N > &mask, const U value, const VecSVE< T, N > &v1) |
| template<typename T, std::size_t N> |
| SVE_INLINE VecSVE< T, N > | min (const VecSVE< T, N > &lhs, const VecSVE< T, N > &rhs) |
| template<typename T, std::size_t N> |
| SVE_INLINE VecSVE< T, N > | max (const VecSVE< T, N > &lhs, const VecSVE< T, N > &rhs) |
| template<typename T, std::size_t N> |
| SVE_INLINE bool | horizontal_or (const VecSVEMask< T, N > &vec) |
| template<typename T, std::size_t N> |
| SVE_INLINE bool | horizontal_and (const VecSVEMask< T, N > &vec) |
| template<typename other_t, std::size_t N> |
| VecSVE< float, N > | to_float (const VecSVE< other_t, N > &vec) |
| template<typename other_t, std::size_t N> |
| VecSVE< double, N > | to_double (const VecSVE< other_t, N > &vec) |
| template<typename real_t, std::size_t N, typename integral_t = typename sve::type<real_t>::integral> |
| VecSVE< integral_t, N > | truncate_to_int (const VecSVE< real_t, N > &arg) |
| template<typename real_t, std::size_t N, typename integral_t = typename sve::type<real_t>::integral> |
| VecSVE< integral_t, N > | roundi (const VecSVE< real_t, N > &arg) |
| template<typename T, std::size_t N> |
| VecSVE< T, N > | floor (const VecSVE< T, N > &arg) |
| template<typename T, std::size_t N> |
| T | horizontal_add (const VecSVE< T, N > &vec) |
| template<typename T, std::size_t N, typename U, typename = std::enable_if_t<std::is_arithmetic_v<U>>> |
| VecSVE< T, N > | operator+ (const U lhs, const VecSVE< T, N > &rhs) |
| template<typename T, std::size_t N, typename U, typename = std::enable_if_t<std::is_arithmetic_v<U>>> |
| VecSVE< T, N > | operator* (const U lhs, const VecSVE< T, N > &rhs) |
| template<typename T, std::size_t N, typename U, typename = std::enable_if_t<std::is_arithmetic_v<U>>> |
| VecSVE< T, N > | operator- (U lhs, const VecSVE< T, N > &rhs) |
| template<typename T, std::size_t N, typename U, typename = std::enable_if_t<std::is_arithmetic_v<U>>> |
| VecSVE< T, N > | operator/ (U lhs, const VecSVE< T, N > &rhs) |