|
#define | HIGHWAY_HWY_OPS_SHARED_TOGGLE |
|
#define | HWY_MAX_LANES_D(D) D::kPrivateLanes |
|
#define | HWY_POW2_D(D) D::kPrivatePow2 |
|
#define | HWY_IF_UNSIGNED_D(D) HWY_IF_UNSIGNED(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_NOT_UNSIGNED_D(D) HWY_IF_NOT_UNSIGNED(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_SIGNED_D(D) HWY_IF_SIGNED(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_FLOAT_D(D) HWY_IF_FLOAT(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_NOT_FLOAT_D(D) HWY_IF_NOT_FLOAT(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_FLOAT3264_D(D) HWY_IF_FLOAT3264(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_NOT_FLOAT3264_D(D) HWY_IF_NOT_FLOAT3264(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_SPECIAL_FLOAT_D(D) HWY_IF_SPECIAL_FLOAT(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_NOT_SPECIAL_FLOAT_D(D) HWY_IF_NOT_SPECIAL_FLOAT(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_FLOAT_OR_SPECIAL_D(D) HWY_IF_FLOAT_OR_SPECIAL(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_NOT_FLOAT_NOR_SPECIAL_D(D) HWY_IF_NOT_FLOAT_NOR_SPECIAL(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_T_SIZE_D(D, bytes) HWY_IF_T_SIZE(hwy::HWY_NAMESPACE::TFromD<D>, bytes) |
|
#define | HWY_IF_NOT_T_SIZE_D(D, bytes) HWY_IF_NOT_T_SIZE(hwy::HWY_NAMESPACE::TFromD<D>, bytes) |
|
#define | HWY_IF_T_SIZE_ONE_OF_D(D, bit_array) HWY_IF_T_SIZE_ONE_OF(hwy::HWY_NAMESPACE::TFromD<D>, bit_array) |
|
#define | HWY_IF_T_SIZE_LE_D(D, bytes) HWY_IF_T_SIZE_LE(hwy::HWY_NAMESPACE::TFromD<D>, bytes) |
|
#define | HWY_IF_T_SIZE_GT_D(D, bytes) HWY_IF_T_SIZE_GT(hwy::HWY_NAMESPACE::TFromD<D>, bytes) |
|
#define | HWY_IF_LANES_D(D, lanes) HWY_IF_LANES(HWY_MAX_LANES_D(D), lanes) |
|
#define | HWY_IF_LANES_LE_D(D, lanes) HWY_IF_LANES_LE(HWY_MAX_LANES_D(D), lanes) |
|
#define | HWY_IF_LANES_GT_D(D, lanes) HWY_IF_LANES_GT(HWY_MAX_LANES_D(D), lanes) |
|
#define | HWY_IF_LANES_PER_BLOCK_D(D, lanes) |
|
#define | HWY_IF_POW2_LE_D(D, pow2) hwy::EnableIf<D().Pow2() <= pow2>* = nullptr |
|
#define | HWY_IF_POW2_GT_D(D, pow2) hwy::EnableIf<(D().Pow2() > pow2)>* = nullptr |
|
#define | HWY_IF_U8_D(D) HWY_IF_U8(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_U16_D(D) HWY_IF_U16(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_U32_D(D) HWY_IF_U32(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_U64_D(D) HWY_IF_U64(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_I8_D(D) HWY_IF_I8(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_I16_D(D) HWY_IF_I16(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_I32_D(D) HWY_IF_I32(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_I64_D(D) HWY_IF_I64(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_UI8_D(D) HWY_IF_UI8(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_UI16_D(D) HWY_IF_UI16(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_UI32_D(D) HWY_IF_UI32(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_UI64_D(D) HWY_IF_UI64(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_BF16_D(D) HWY_IF_BF16(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_NOT_BF16_D(D) HWY_IF_NOT_BF16(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_F16_D(D) HWY_IF_F16(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_NOT_F16_D(D) HWY_IF_NOT_F16(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_F32_D(D) HWY_IF_F32(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_IF_F64_D(D) HWY_IF_F64(hwy::HWY_NAMESPACE::TFromD<D>) |
|
#define | HWY_V_SIZE_D(D) (HWY_MAX_LANES_D(D) * sizeof(hwy::HWY_NAMESPACE::TFromD<D>)) |
|
#define | HWY_IF_V_SIZE_D(D, bytes) HWY_IF_V_SIZE(hwy::HWY_NAMESPACE::TFromD<D>, HWY_MAX_LANES_D(D), bytes) |
|
#define | HWY_IF_V_SIZE_LE_D(D, bytes) HWY_IF_V_SIZE_LE(hwy::HWY_NAMESPACE::TFromD<D>, HWY_MAX_LANES_D(D), bytes) |
|
#define | HWY_IF_V_SIZE_GT_D(D, bytes) HWY_IF_V_SIZE_GT(hwy::HWY_NAMESPACE::TFromD<D>, HWY_MAX_LANES_D(D), bytes) |
|
#define | HWY_IF_UNSIGNED_V(V) HWY_IF_UNSIGNED(hwy::HWY_NAMESPACE::TFromV<V>) |
|
#define | HWY_IF_NOT_UNSIGNED_V(V) HWY_IF_NOT_UNSIGNED(hwy::HWY_NAMESPACE::TFromV<V>) |
|
#define | HWY_IF_SIGNED_V(V) HWY_IF_SIGNED(hwy::HWY_NAMESPACE::TFromV<V>) |
|
#define | HWY_IF_FLOAT_V(V) HWY_IF_FLOAT(hwy::HWY_NAMESPACE::TFromV<V>) |
|
#define | HWY_IF_NOT_FLOAT_V(V) HWY_IF_NOT_FLOAT(hwy::HWY_NAMESPACE::TFromV<V>) |
|
#define | HWY_IF_SPECIAL_FLOAT_V(V) HWY_IF_SPECIAL_FLOAT(hwy::HWY_NAMESPACE::TFromV<V>) |
|
#define | HWY_IF_NOT_FLOAT_NOR_SPECIAL_V(V) HWY_IF_NOT_FLOAT_NOR_SPECIAL(hwy::HWY_NAMESPACE::TFromV<V>) |
|
#define | HWY_IF_T_SIZE_V(V, bytes) HWY_IF_T_SIZE(hwy::HWY_NAMESPACE::TFromV<V>, bytes) |
|
#define | HWY_IF_NOT_T_SIZE_V(V, bytes) HWY_IF_NOT_T_SIZE(hwy::HWY_NAMESPACE::TFromV<V>, bytes) |
|
#define | HWY_IF_T_SIZE_ONE_OF_V(V, bit_array) HWY_IF_T_SIZE_ONE_OF(hwy::HWY_NAMESPACE::TFromV<V>, bit_array) |
|
#define | HWY_MAX_LANES_V(V) HWY_MAX_LANES_D(DFromV<V>) |
|
#define | HWY_IF_V_SIZE_V(V, bytes) HWY_IF_V_SIZE(hwy::HWY_NAMESPACE::TFromV<V>, HWY_MAX_LANES_V(V), bytes) |
|
#define | HWY_IF_V_SIZE_LE_V(V, bytes) HWY_IF_V_SIZE_LE(hwy::HWY_NAMESPACE::TFromV<V>, HWY_MAX_LANES_V(V), bytes) |
|
#define | HWY_IF_V_SIZE_GT_V(V, bytes) HWY_IF_V_SIZE_GT(hwy::HWY_NAMESPACE::TFromV<V>, HWY_MAX_LANES_V(V), bytes) |
|
#define | HWY_IF_REDUCE_D(D) |
|
#define | HWY_IF_SUM_OF_LANES_D(D) HWY_IF_LANES_GT_D(D, 1) |
|
#define | HWY_IF_MINMAX_OF_LANES_D(D) HWY_IF_LANES_GT_D(D, 1) |
|
#define | HWY_IF_ADDSUB_V(V) HWY_IF_LANES_GT_D(DFromV<V>, 1) |
|
#define | HWY_IF_MULADDSUB_V(V) HWY_IF_LANES_GT_D(DFromV<V>, 1) |
|
#define | HWY_IF_U2I_DEMOTE_FROM_LANE_SIZE_V(V) void* = nullptr |
|
#define | HWY_IF_LANE_SIZE_D(D, bytes) HWY_IF_T_SIZE_D(D, bytes) |
|
#define | HWY_IF_NOT_LANE_SIZE_D(D, bytes) HWY_IF_NOT_T_SIZE_D(D, bytes) |
|
|
template<class V > |
using | hwy::HWY_NAMESPACE::VecArg = V |
|
template<typename T > |
using | hwy::HWY_NAMESPACE::detail::NativeLaneType = typename NativeLaneTypeT<T>::type |
|
template<typename T , int kPow2 = 0> |
using | hwy::HWY_NAMESPACE::ScalableTag = typename detail::ScalableTagChecker<T, kPow2>::type |
|
template<typename T , size_t kLimit, int kPow2 = 0> |
using | hwy::HWY_NAMESPACE::CappedTag = typename detail::CappedTagChecker<T, kLimit, kPow2>::type |
|
template<typename T , size_t kLimit, int kPow2 = 0> |
using | hwy::HWY_NAMESPACE::CappedTagIfFixed = CappedTag<T, kLimit, kPow2> |
|
template<typename T , size_t kNumLanes> |
using | hwy::HWY_NAMESPACE::FixedTag = typename detail::FixedTagChecker<T, kNumLanes>::type |
|
template<typename T > |
using | hwy::HWY_NAMESPACE::Full16 = Simd<T, 2 / sizeof(T), 0> |
|
template<typename T > |
using | hwy::HWY_NAMESPACE::Full32 = Simd<T, 4 / sizeof(T), 0> |
|
template<typename T > |
using | hwy::HWY_NAMESPACE::Full64 = Simd<T, 8 / sizeof(T), 0> |
|
template<class D > |
using | hwy::HWY_NAMESPACE::TFromD = typename D::T |
|
template<class T , class D > |
using | hwy::HWY_NAMESPACE::Rebind = typename D::template Rebind<T> |
|
template<class D > |
using | hwy::HWY_NAMESPACE::RebindToSigned = Rebind<MakeSigned<TFromD<D>>, D> |
|
template<class D > |
using | hwy::HWY_NAMESPACE::RebindToUnsigned = Rebind<MakeUnsigned<TFromD<D>>, D> |
|
template<class D > |
using | hwy::HWY_NAMESPACE::RebindToFloat = Rebind<MakeFloat<TFromD<D>>, D> |
|
template<class T , class D > |
using | hwy::HWY_NAMESPACE::Repartition = typename D::template Repartition<T> |
|
template<class D > |
using | hwy::HWY_NAMESPACE::RepartitionToWide = Repartition<MakeWide<TFromD<D>>, D> |
|
template<class D > |
using | hwy::HWY_NAMESPACE::RepartitionToNarrow = Repartition<MakeNarrow<TFromD<D>>, D> |
|
template<class D > |
using | hwy::HWY_NAMESPACE::RepartitionToWideX2 = RepartitionToWide<RepartitionToWide<D>> |
|
template<class D > |
using | hwy::HWY_NAMESPACE::RepartitionToWideX3 = RepartitionToWide<RepartitionToWideX2<D>> |
|
template<class D > |
using | hwy::HWY_NAMESPACE::Half = typename D::Half |
|
template<class D > |
using | hwy::HWY_NAMESPACE::Twice = typename D::Twice |
|
template<class D > |
using | hwy::HWY_NAMESPACE::BlockDFromD |
|
|
| HWY_BEFORE_NAMESPACE () |
|
template<typename T , HWY_IF_NOT_SPECIAL_FLOAT(T) > |
HWY_INLINE T * | hwy::HWY_NAMESPACE::detail::NativeLanePointer (T *p) |
|
template<typename T , typename NT = NativeLaneType<RemoveConst<T>>, HWY_IF_F16(T) > |
HWY_INLINE constexpr If< IsConst< T >(), const NT *, NT * > | hwy::HWY_NAMESPACE::detail::NativeLanePointer (T *p) |
|
template<typename T , HWY_IF_SPECIAL_FLOAT(T) > |
HWY_INLINE If< IsConst< T >(), const uint16_t *, uint16_t * > | hwy::HWY_NAMESPACE::detail::U16LanePointer (T *p) |
|
constexpr size_t | hwy::HWY_NAMESPACE::detail::ScaleByPower (size_t N, int pow2) |
|
template<typename T > |
HWY_INLINE void | hwy::HWY_NAMESPACE::detail::MaybeUnpoison (T *HWY_RESTRICT unaligned, size_t count) |
|
template<typename T , size_t N, int kPow2> |
constexpr bool | hwy::HWY_NAMESPACE::detail::IsFull (Simd< T, N, kPow2 >) |
|
template<class D > |
HWY_INLINE HWY_MAYBE_UNUSED constexpr size_t | hwy::HWY_NAMESPACE::MaxLanes (D) |
|
template<class D > |
HWY_INLINE HWY_MAYBE_UNUSED constexpr size_t | hwy::HWY_NAMESPACE::Lanes (D) |
|
template<class D , typename T > |
HWY_API bool | hwy::HWY_NAMESPACE::IsAligned (D d, T *ptr) |
|
| HWY_AFTER_NAMESPACE () |
|