|
#define | HWY_RVV_FOREACH_B(X_MACRO, NAME, OP) |
|
#define | HWY_RVV_FOREACH_08(X_MACRO, BASE, CHAR, NAME, OP) |
|
#define | HWY_RVV_FOREACH_16(X_MACRO, BASE, CHAR, NAME, OP) |
|
#define | HWY_RVV_FOREACH_32(X_MACRO, BASE, CHAR, NAME, OP) |
|
#define | HWY_RVV_FOREACH_64(X_MACRO, BASE, CHAR, NAME, OP) |
|
#define | HWY_RVV_FOREACH_U08(X_MACRO, NAME, OP) HWY_RVV_FOREACH_08(X_MACRO, uint, u, NAME, OP) |
|
#define | HWY_RVV_FOREACH_U16(X_MACRO, NAME, OP) HWY_RVV_FOREACH_16(X_MACRO, uint, u, NAME, OP) |
|
#define | HWY_RVV_FOREACH_U32(X_MACRO, NAME, OP) HWY_RVV_FOREACH_32(X_MACRO, uint, u, NAME, OP) |
|
#define | HWY_RVV_FOREACH_U64(X_MACRO, NAME, OP) HWY_RVV_FOREACH_64(X_MACRO, uint, u, NAME, OP) |
|
#define | HWY_RVV_FOREACH_I08(X_MACRO, NAME, OP) HWY_RVV_FOREACH_08(X_MACRO, int, i, NAME, OP) |
|
#define | HWY_RVV_FOREACH_I16(X_MACRO, NAME, OP) HWY_RVV_FOREACH_16(X_MACRO, int, i, NAME, OP) |
|
#define | HWY_RVV_FOREACH_I32(X_MACRO, NAME, OP) HWY_RVV_FOREACH_32(X_MACRO, int, i, NAME, OP) |
|
#define | HWY_RVV_FOREACH_I64(X_MACRO, NAME, OP) HWY_RVV_FOREACH_64(X_MACRO, int, i, NAME, OP) |
|
#define | HWY_RVV_FOREACH_F16(X_MACRO, NAME, OP) HWY_RVV_FOREACH_16(X_MACRO, float, f, NAME, OP) |
|
#define | HWY_RVV_FOREACH_F32(X_MACRO, NAME, OP) HWY_RVV_FOREACH_32(X_MACRO, float, f, NAME, OP) |
|
#define | HWY_RVV_FOREACH_F64(X_MACRO, NAME, OP) HWY_RVV_FOREACH_64(X_MACRO, float, f, NAME, OP) |
|
#define | HWY_RVV_FOREACH_U(X_MACRO, NAME, OP) |
|
#define | HWY_RVV_FOREACH_I(X_MACRO, NAME, OP) |
|
#define | HWY_RVV_FOREACH_F(X_MACRO, NAME, OP) |
|
#define | HWY_RVV_FOREACH_UI16(X_MACRO, NAME, OP) |
|
#define | HWY_RVV_FOREACH_UI32(X_MACRO, NAME, OP) |
|
#define | HWY_RVV_FOREACH_UI64(X_MACRO, NAME, OP) |
|
#define | HWY_RVV_FOREACH_UI(X_MACRO, NAME, OP) |
|
#define | HWY_RVV_FOREACH(X_MACRO, NAME, OP) |
|
#define | HWY_RVV_T(BASE, SEW) BASE##SEW##_t |
|
#define | HWY_RVV_D(CHAR, SEW, LMUL) D##CHAR##SEW##LMUL |
|
#define | HWY_RVV_V(BASE, SEW, LMUL) v##BASE##SEW##LMUL##_t |
|
#define | HWY_RVV_M(MLEN) vbool##MLEN##_t |
|
#define | HWY_SPECIALIZE(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_LANES(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_AVL(SEW, SHIFT) Lanes(Full<HWY_RVV_T(uint, SEW), SHIFT>()) |
|
#define | HWY_RVV_RETV_ARGV(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_RETV_ARGVS(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_RETV_ARGVV(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_SET(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_UNDEFINED(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_CAST_U8(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_CAST_I8(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_CAST_U(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_CAST_IF(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_IOTA(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_SHIFT(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_SHIFT_VV(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_SHIFT_II(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_FMA(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_RETM_ARGVV(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_RETM_ARGVS(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_RETM_ARGM(SEW, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_RETM_ARGMM(SEW, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_IF_THEN_ELSE(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_VEC_FROM_MASK(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_FIND_FIRST_TRUE(SEW, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_ALL_TRUE(SEW, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_COUNT_TRUE(SEW, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_LOAD(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_MASKED_LOAD(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_RET_ARGVDP(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_SCATTER(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_GATHER(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_PROMOTE(OP, BASE, CHAR, BITS, BASE_IN, BITS_IN, LMUL, LMUL_IN) |
|
#define | HWY_RVV_PROMOTE_X2(OP, BASE, CHAR, BITS, BASE_IN, BITS_IN) |
|
#define | HWY_RVV_PROMOTE_X4(OP, BASE, CHAR, BITS, BASE_IN, BITS_IN) |
|
#define | HWY_RVV_CONVERT(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_SLIDE(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_TRUNC(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_GET_LANE(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_TABLE(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_COMPRESS(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_REDUCE(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_STORE_MASK_BITS(SEW, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_RETV_ARGV2(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
#define | HWY_RVV_SLIDE1(BASE, CHAR, SEW, LMUL, X2, HALF, SHIFT, MLEN, NAME, OP) |
|
|
| HWY_BEFORE_NAMESPACE () |
|
template<typename T , size_t N> |
constexpr HWY_INLINE size_t | hwy::HWY_NAMESPACE::MLenFromD (Simd< T, N >) |
|
template<size_t N> |
HWY_API size_t | hwy::HWY_NAMESPACE::Lanes (Simd< bfloat16_t, N >) |
|
template<size_t N> |
decltype(Set(Simd< uint16_t, N >(), 0)) | hwy::HWY_NAMESPACE::Set (Simd< bfloat16_t, N > d, bfloat16_t arg) |
|
template<typename T , size_t N, HWY_IF_LE128(T, N) > |
HWY_API VFromD< Simd< T, N > > | hwy::HWY_NAMESPACE::Set (Simd< T, N >, T arg) |
|
template<typename T , size_t N> |
HWY_API VFromD< Simd< T, N > > | hwy::HWY_NAMESPACE::Zero (Simd< T, N > d) |
|
template<class D > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::Undefined (D d) |
|
template<size_t N> |
HWY_INLINE VFromD< Simd< uint16_t, N > > | hwy::HWY_NAMESPACE::detail::BitCastFromByte (Simd< bfloat16_t, N >, VFromD< Simd< uint8_t, N *2 >> v) |
|
template<class D , class FromV > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::BitCast (D d, FromV v) |
|
template<typename T , size_t N, class FromV , HWY_IF_LE128(T, N) > |
HWY_API VFromD< Simd< T, N > > | hwy::HWY_NAMESPACE::BitCast (Simd< T, N >, FromV v) |
|
template<class V , class DU = RebindToUnsigned<DFromV<V>>> |
HWY_INLINE VFromD< DU > | hwy::HWY_NAMESPACE::detail::BitCastToUnsigned (V v) |
|
template<class D , class DU = RebindToUnsigned<D>> |
HWY_INLINE VFromD< DU > | hwy::HWY_NAMESPACE::detail::Iota0 (const D) |
|
template<typename T , size_t N, HWY_IF_LE128(T, N) > |
HWY_INLINE VFromD< Simd< T, N > > | hwy::HWY_NAMESPACE::detail::Iota0 (Simd< T, N >) |
|
template<class V , HWY_IF_FLOAT_V(V) > |
HWY_API V | hwy::HWY_NAMESPACE::Not (const V v) |
|
template<class V , HWY_IF_FLOAT_V(V) > |
HWY_API V | hwy::HWY_NAMESPACE::And (const V a, const V b) |
|
template<class V , HWY_IF_FLOAT_V(V) > |
HWY_API V | hwy::HWY_NAMESPACE::Or (const V a, const V b) |
|
template<class V , HWY_IF_FLOAT_V(V) > |
HWY_API V | hwy::HWY_NAMESPACE::Xor (const V a, const V b) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::AndNot (const V not_a, const V b) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::CopySignToAbs (const V abs, const V sign) |
|
template<class V > |
HWY_API auto | hwy::HWY_NAMESPACE::Ge (V a, V b) -> decltype(a==b) |
|
template<class V > |
HWY_API auto | hwy::HWY_NAMESPACE::Gt (V a, V b) -> decltype(a==b) |
|
template<class V > |
HWY_API auto | hwy::HWY_NAMESPACE::TestBit (const V a, const V bit) -> decltype(Eq(a, bit)) |
|
template<class M , class V > |
HWY_API V | hwy::HWY_NAMESPACE::IfThenElseZero (const M mask, const V yes) |
|
template<class M , class V > |
HWY_API V | hwy::HWY_NAMESPACE::IfThenZeroElse (const M mask, const V no) |
|
template<class V > |
HWY_API auto | hwy::HWY_NAMESPACE::MaskFromVec (const V v) -> decltype(Eq(v, v)) |
|
template<class D , typename MFrom > |
HWY_API MFromD< D > | hwy::HWY_NAMESPACE::RebindMask (const D, const MFrom mask) |
|
template<class D , HWY_IF_NOT_FLOAT_D(D) > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::VecFromMask (const D d, MFromD< D > mask) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::ZeroIfNegative (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::BroadcastSignBit (const V v) |
|
template<class D > |
HWY_API bool | hwy::HWY_NAMESPACE::AllFalse (D d, MFromD< D > m) |
|
template<typename T , size_t N, HWY_IF_LE128(T, N) > |
HWY_API VFromD< Simd< T, N > > | hwy::HWY_NAMESPACE::Load (Simd< T, N > d, const T *HWY_RESTRICT p) |
|
template<size_t N> |
HWY_API VFromD< Simd< uint16_t, N > > | hwy::HWY_NAMESPACE::Load (Simd< bfloat16_t, N > d, const bfloat16_t *HWY_RESTRICT p) |
|
template<size_t N> |
HWY_API void | hwy::HWY_NAMESPACE::Store (VFromD< Simd< uint16_t, N >> v, Simd< bfloat16_t, N > d, bfloat16_t *HWY_RESTRICT p) |
|
template<class D > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::LoadU (D d, const TFromD< D > *HWY_RESTRICT p) |
|
template<typename T , size_t N, HWY_IF_LE128(T, N) > |
HWY_API void | hwy::HWY_NAMESPACE::Store (VFromD< Simd< T, N >> v, Simd< T, N >, T *HWY_RESTRICT p) |
|
template<class V , class D > |
HWY_API void | hwy::HWY_NAMESPACE::StoreU (const V v, D d, TFromD< D > *HWY_RESTRICT p) |
|
template<class V , class D , typename T > |
HWY_API void | hwy::HWY_NAMESPACE::Stream (const V v, D d, T *HWY_RESTRICT aligned) |
|
template<typename T , size_t N, HWY_IF_LE128(T, N) > |
HWY_API void | hwy::HWY_NAMESPACE::ScatterOffset (VFromD< Simd< T, N >> v, Simd< T, N >, T *HWY_RESTRICT base, VFromD< Simd< MakeSigned< T >, N >> offset) |
|
template<class D , HWY_IF_LANE_SIZE_D(D, 4) > |
HWY_API void | hwy::HWY_NAMESPACE::ScatterIndex (VFromD< D > v, D d, TFromD< D > *HWY_RESTRICT base, const VFromD< RebindToSigned< D >> index) |
|
template<typename T , size_t N, HWY_IF_LE128(T, N) > |
HWY_API VFromD< Simd< T, N > > | hwy::HWY_NAMESPACE::GatherOffset (Simd< T, N >, const T *HWY_RESTRICT base, VFromD< Simd< MakeSigned< T >, N >> offset) |
|
template<class D , HWY_IF_LANE_SIZE_D(D, 4) > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::GatherIndex (D d, const TFromD< D > *HWY_RESTRICT base, const VFromD< RebindToSigned< D >> index) |
|
template<size_t N> |
HWY_API auto | hwy::HWY_NAMESPACE::PromoteTo (Simd< int16_t, N > d, VFromD< Simd< uint8_t, N >> v) -> VFromD< decltype(d)> |
|
template<size_t N> |
HWY_API auto | hwy::HWY_NAMESPACE::PromoteTo (Simd< int32_t, N > d, VFromD< Simd< uint8_t, N >> v) -> VFromD< decltype(d)> |
|
template<size_t N> |
HWY_API auto | hwy::HWY_NAMESPACE::PromoteTo (Simd< int32_t, N > d, VFromD< Simd< uint16_t, N >> v) -> VFromD< decltype(d)> |
|
template<size_t N> |
HWY_API auto | hwy::HWY_NAMESPACE::PromoteTo (Simd< float32_t, N > d, VFromD< Simd< bfloat16_t, N >> v) -> VFromD< decltype(d)> |
|
HWY_INLINE Vu16m1 | hwy::HWY_NAMESPACE::detail::DemoteTo (Du16m1 d, const Vu32m2 v) |
|
HWY_INLINE Vu16m2 | hwy::HWY_NAMESPACE::detail::DemoteTo (Du16m2 d, const Vu32m4 v) |
|
HWY_INLINE Vu16m4 | hwy::HWY_NAMESPACE::detail::DemoteTo (Du16m4 d, const Vu32m8 v) |
|
HWY_INLINE Vu8m1 | hwy::HWY_NAMESPACE::detail::DemoteTo (Du8m1 d, const Vu16m2 v) |
|
HWY_INLINE Vu8m2 | hwy::HWY_NAMESPACE::detail::DemoteTo (Du8m2 d, const Vu16m4 v) |
|
HWY_INLINE Vu8m4 | hwy::HWY_NAMESPACE::detail::DemoteTo (Du8m4 d, const Vu16m8 v) |
|
HWY_API Vu16m1 | hwy::HWY_NAMESPACE::DemoteTo (Du16m1 d, const Vi32m2 v) |
|
HWY_API Vu16m2 | hwy::HWY_NAMESPACE::DemoteTo (Du16m2 d, const Vi32m4 v) |
|
HWY_API Vu16m4 | hwy::HWY_NAMESPACE::DemoteTo (Du16m4 d, const Vi32m8 v) |
|
HWY_API Vu8m1 | hwy::HWY_NAMESPACE::DemoteTo (Du8m1 d, const Vi32m4 v) |
|
HWY_API Vu8m2 | hwy::HWY_NAMESPACE::DemoteTo (Du8m2 d, const Vi32m8 v) |
|
HWY_API Vu8m1 | hwy::HWY_NAMESPACE::DemoteTo (Du8m1 d, const Vi16m2 v) |
|
HWY_API Vu8m2 | hwy::HWY_NAMESPACE::DemoteTo (Du8m2 d, const Vi16m4 v) |
|
HWY_API Vu8m4 | hwy::HWY_NAMESPACE::DemoteTo (Du8m4 d, const Vi16m8 v) |
|
HWY_API Vu8m1 | hwy::HWY_NAMESPACE::U8FromU32 (const Vu32m4 v) |
|
HWY_API Vu8m2 | hwy::HWY_NAMESPACE::U8FromU32 (const Vu32m8 v) |
|
HWY_API Vi8m1 | hwy::HWY_NAMESPACE::DemoteTo (Di8m1 d, const Vi16m2 v) |
|
HWY_API Vi8m2 | hwy::HWY_NAMESPACE::DemoteTo (Di8m2 d, const Vi16m4 v) |
|
HWY_API Vi8m4 | hwy::HWY_NAMESPACE::DemoteTo (Di8m4 d, const Vi16m8 v) |
|
HWY_API Vi16m1 | hwy::HWY_NAMESPACE::DemoteTo (Di16m1 d, const Vi32m2 v) |
|
HWY_API Vi16m2 | hwy::HWY_NAMESPACE::DemoteTo (Di16m2 d, const Vi32m4 v) |
|
HWY_API Vi16m4 | hwy::HWY_NAMESPACE::DemoteTo (Di16m4 d, const Vi32m8 v) |
|
HWY_API Vi8m1 | hwy::HWY_NAMESPACE::DemoteTo (Di8m1 d, const Vi32m4 v) |
|
HWY_API Vi8m2 | hwy::HWY_NAMESPACE::DemoteTo (Di8m2 d, const Vi32m8 v) |
|
HWY_API Vf32m1 | hwy::HWY_NAMESPACE::DemoteTo (Df32m1 d, const Vf64m2 v) |
|
HWY_API Vf32m2 | hwy::HWY_NAMESPACE::DemoteTo (Df32m2 d, const Vf64m4 v) |
|
HWY_API Vf32m4 | hwy::HWY_NAMESPACE::DemoteTo (Df32m4 d, const Vf64m8 v) |
|
HWY_API Vi32m1 | hwy::HWY_NAMESPACE::DemoteTo (Di32m1 d, const Vf64m2 v) |
|
HWY_API Vi32m2 | hwy::HWY_NAMESPACE::DemoteTo (Di32m2 d, const Vf64m4 v) |
|
HWY_API Vi32m4 | hwy::HWY_NAMESPACE::DemoteTo (Di32m4 d, const Vf64m8 v) |
|
template<size_t N> |
HWY_API VFromD< Simd< uint16_t, N > > | hwy::HWY_NAMESPACE::DemoteTo (Simd< bfloat16_t, N > d, VFromD< Simd< float, N >> v) |
|
template<typename T , size_t N, class FromV , HWY_IF_LE128(T, N) > |
HWY_API VFromD< Simd< T, N > > | hwy::HWY_NAMESPACE::ConvertTo (Simd< T, N >, FromV v) |
|
template<typename T , size_t N> |
constexpr size_t | hwy::HWY_NAMESPACE::detail::LanesPerBlock (Simd< T, N >) |
|
template<class D , class V > |
HWY_INLINE V | hwy::HWY_NAMESPACE::detail::OffsetsOf128BitBlocks (const D d, const V iota0) |
|
template<size_t kLanes, class D > |
HWY_INLINE MFromD< D > | hwy::HWY_NAMESPACE::detail::FirstNPerBlock (D) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::ConcatUpperLower (const V hi, const V lo) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::ConcatLowerLower (const V hi, const V lo) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::ConcatUpperUpper (const V hi, const V lo) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::ConcatLowerUpper (const V hi, const V lo) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::ZeroExtendVector (const V lo) |
|
template<class D , HWY_IF_NOT_LANE_SIZE_D(D, 8) > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::LowerHalf (const D, const VFromD< D > v) |
|
template<class D , HWY_IF_NOT_LANE_SIZE_D(D, 8) > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::UpperHalf (const D d, const VFromD< D > v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::OddEven (const V odd, const V even) |
|
template<class D , class DU = RebindToUnsigned<D>> |
HWY_API VFromD< DU > | hwy::HWY_NAMESPACE::SetTableIndices (D d, const TFromD< DU > *idx) |
|
template<class D > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::Reverse (D, VFromD< D > v) |
|
template<class V , class M , class D > |
HWY_API size_t | hwy::HWY_NAMESPACE::CompressStore (const V v, const M mask, const D d, TFromD< D > *HWY_RESTRICT unaligned) |
|
template<size_t kBytes, class D , class V = VFromD<D>> |
HWY_API V | hwy::HWY_NAMESPACE::CombineShiftRightBytes (const D d, const V hi, const V lo) |
|
template<size_t kLanes, class D , class V = VFromD<D>> |
HWY_API V | hwy::HWY_NAMESPACE::CombineShiftRightLanes (const D d, const V hi, V lo) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Shuffle2301 (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Shuffle2103 (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Shuffle0321 (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Shuffle1032 (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Shuffle01 (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Shuffle0123 (const V v) |
|
template<class V , class VI > |
HWY_API VI | hwy::HWY_NAMESPACE::TableLookupBytes (const V v, const VI idx) |
|
template<class V , class VI > |
HWY_API V | hwy::HWY_NAMESPACE::TableLookupBytesOr0 (const VI v, const V idx) |
|
template<int kLane, class V > |
HWY_API V | hwy::HWY_NAMESPACE::Broadcast (const V v) |
|
template<size_t kLanes, class D , class V = VFromD<D>> |
HWY_API V | hwy::HWY_NAMESPACE::ShiftLeftLanes (D d, const V v) |
|
template<size_t kLanes, class V > |
HWY_API V | hwy::HWY_NAMESPACE::ShiftLeftLanes (const V v) |
|
template<int kBytes, class V > |
HWY_API V | hwy::HWY_NAMESPACE::ShiftLeftBytes (DFromV< V > d, const V v) |
|
template<int kBytes, class V > |
HWY_API V | hwy::HWY_NAMESPACE::ShiftLeftBytes (const V v) |
|
template<size_t kLanes, typename T , size_t N, class V = VFromD<Simd<T, N>>> |
HWY_API V | hwy::HWY_NAMESPACE::ShiftRightLanes (Simd< T, N > d, V v) |
|
template<int kBytes, class D , class V = VFromD<D>> |
HWY_API V | hwy::HWY_NAMESPACE::ShiftRightBytes (const D d, const V v) |
|
template<class D , class V > |
HWY_API V | hwy::HWY_NAMESPACE::InterleaveLower (D d, const V a, const V b) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::InterleaveLower (const V a, const V b) |
|
template<class D , class V > |
HWY_API V | hwy::HWY_NAMESPACE::InterleaveUpper (const D d, const V a, const V b) |
|
template<class V , class DW = RepartitionToWide<DFromV<V>>> |
HWY_API VFromD< DW > | hwy::HWY_NAMESPACE::ZipLower (DW dw, V a, V b) |
|
template<class V , class DW = RepartitionToWide<DFromV<V>>> |
HWY_API VFromD< DW > | hwy::HWY_NAMESPACE::ZipLower (V a, V b) |
|
template<class V , class DW = RepartitionToWide<DFromV<V>>> |
HWY_API VFromD< DW > | hwy::HWY_NAMESPACE::ZipUpper (DW dw, V a, V b) |
|
template<class D > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::SumOfLanes (D, const VFromD< D > v) |
|
template<class D > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::MinOfLanes (D, const VFromD< D > v) |
|
template<class D > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::MaxOfLanes (D, const VFromD< D > v) |
|
template<class D > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::LoadDup128 (D d, const TFromD< D > *const HWY_RESTRICT p) |
|
template<class D , HWY_IF_NOT_LANE_SIZE_D(D, 1) > |
HWY_API MFromD< D > | hwy::HWY_NAMESPACE::FirstN (const D d, const size_t n) |
|
template<class V , HWY_IF_SIGNED_V(V) > |
HWY_API V | hwy::HWY_NAMESPACE::Neg (const V v) |
|
template<class V , HWY_IF_SIGNED_V(V) > |
HWY_API V | hwy::HWY_NAMESPACE::Abs (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::AbsDiff (const V a, const V b) |
|
template<class V > |
HWY_INLINE auto | hwy::HWY_NAMESPACE::detail::UseInt (const V v) -> decltype(MaskFromVec(v)) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Round (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Trunc (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Ceil (const V v) |
|
template<class V > |
HWY_API V | hwy::HWY_NAMESPACE::Floor (const V v) |
|
template<class D , HWY_IF_FLOAT_D(D) > |
HWY_API VFromD< D > | hwy::HWY_NAMESPACE::Iota (const D d, TFromD< D > first) |
|
template<class V , HWY_IF_LANE_SIZE_V(V, 4) > |
HWY_API VFromD< RepartitionToWide< DFromV< V > > > | hwy::HWY_NAMESPACE::MulEven (const V a, const V b) |
|
template<class V , HWY_IF_LANE_SIZE_V(V, 8) > |
HWY_INLINE V | hwy::HWY_NAMESPACE::MulEven (const V a, const V b) |
|
template<class V , HWY_IF_LANE_SIZE_V(V, 8) > |
HWY_INLINE V | hwy::HWY_NAMESPACE::MulOdd (const V a, const V b) |
|
template<size_t N, class DF = Simd<float, N / 2>> |
HWY_API VFromD< Simd< uint16_t, N > > | hwy::HWY_NAMESPACE::ReorderDemote2To (Simd< bfloat16_t, N > dbf16, VFromD< DF > a, VFromD< DF > b) |
|
template<size_t N, class DU16 = Simd<uint16_t, N * 2>> |
HWY_API auto | hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate (Simd< float, N > df32, VFromD< DU16 > a, VFromD< DU16 > b, const VFromD< decltype(df32)> sum0, VFromD< decltype(df32)> &sum1) -> VFromD< decltype(df32)> |
|
| HWY_AFTER_NAMESPACE () |
|