hwy::HWY_NAMESPACE Namespace Reference

## Namespaces

namespace | detail
namespace | impl

## Classes

struct | CompressIsPartition
struct | DFromV_t
struct | Dot
class | ForDemoteVectors
class | ForExtendableVectors
class | ForGEVectors
class | ForHalfVectors
class | ForPartialVectors
class | ForPromoteVectors
class | ForShrinkableVectors
struct | Indices1
struct | Indices128
struct | Indices256
struct | Indices512
class | Mask1
struct | Mask128
struct | Mask256
struct | Mask512
struct | Pack16
struct | Pack16< 1 >
struct | Pack16< 10 >
struct | Pack16< 11 >
struct | Pack16< 12 >
struct | Pack16< 13 >
struct | Pack16< 14 >
struct | Pack16< 15 >
struct | Pack16< 16 >
struct | Pack16< 2 >
struct | Pack16< 3 >
struct | Pack16< 4 >
struct | Pack16< 5 >
struct | Pack16< 6 >
struct | Pack16< 7 >
struct | Pack16< 8 >
struct | Pack16< 9 >
struct | Pack8
struct | Pack8< 1 >
struct | Pack8< 2 >
struct | Pack8< 3 >
struct | Pack8< 4 >
struct | Pack8< 5 >
struct | Pack8< 6 >
struct | Pack8< 7 >
struct | Pack8< 8 >
struct | Result
struct | SharedState
struct | Simd
struct | ThreadLocal
struct | Vec1
class | Vec128
class | Vec256
class | Vec512
class | Xorshift128Plus

## Typedefs

template<typename T >
using | SortTag = ScalableTag< T, -1 >
template<typename T >
using | Vec64 = Vec128< T, 8/sizeof(T)>
template<typename T >
using | Vec32 = Vec128< T, 4/sizeof(T)>
template<typename T >
using | Mask64 = Mask128< T, 8/sizeof(T)>
template<class V >
using | DFromV = Simd< typename V::PrivateT, V::kPrivateN, 0 >
template<class V >
using | TFromV = typename V::PrivateT
template<class D >
using | VFromD = decltype(Zero(D()))
template<class D >
using | MFromD = decltype(FirstN(D(), 0))
template<typename T >
using | Full128 = Simd< T, 16/sizeof(T), 0 >
template<class V >
using | LaneType = decltype(GetLane(V()))
template<class D >
using | Vec = decltype(Zero(D()))
template<class D >
using | Mask = decltype(MaskFromVec(Zero(D())))
template<typename T >
using | Sisd = Simd< T, 1, 0 >
template<typename T , int kPow2 = 0>
using | ScalableTag = typename detail::ScalableTagChecker< T, kPow2 >::type
template<typename T , size_t kLimit>
using | CappedTag = typename detail::CappedTagChecker< T, kLimit >::type
template<typename T , size_t kNumLanes>
using | FixedTag = typename detail::FixedTagChecker< T, kNumLanes >::type
template<class D >
using | TFromD = typename D::T
template<class T , class D >
using | Rebind = typename D::template Rebind< T >
template<class D >
using | RebindToSigned = Rebind< MakeSigned< TFromD< D > >, D >
template<class D >
using | RebindToUnsigned = Rebind< MakeUnsigned< TFromD< D > >, D >
template<class D >
using | RebindToFloat = Rebind< MakeFloat< TFromD< D > >, D >
template<class T , class D >
using | Repartition = typename D::template Repartition< T >
template<class D >
using | RepartitionToWide = Repartition< MakeWide< TFromD< D > >, D >
template<class D >
using | RepartitionToNarrow = Repartition< MakeNarrow< TFromD< D > >, D >
template<class D >
using | Half = typename D::Half
template<class D >
using | Twice = typename D::Twice
template<typename T >
using | Full16 = Simd< T, 2/sizeof(T), 0 >
template<typename T >
using | Full32 = Simd< T, 4/sizeof(T), 0 >
template<typename T >
using | Full64 = Simd< T, 8/sizeof(T), 0 >
template<class V >
using | VecArg = V
template<typename T >
using | Full256 = Simd< T, 32/sizeof(T), 0 >
template<typename T >
using | Vec16 = Vec128< T, 2/sizeof(T)>
using | GatherIndex64 = long long int
template<typename T >
using | Full512 = Simd< T, 64/sizeof(T), 0 >
template<class Test >
using | ForGE128Vectors = ForGEVectors< 128, Test >

## Functions

template<class D , typename T = TFromD<D>>
void | Fill (D d, T value, size_t count, T *HWY_RESTRICT to)
template<class D , typename T = TFromD<D>>
void | Copy (D d, const T *HWY_RESTRICT from, size_t count, T *HWY_RESTRICT to)
template<class D , class Func , typename T = TFromD<D>>
T * | CopyIf (D d, const T *HWY_RESTRICT from, size_t count, T *HWY_RESTRICT to, const Func &func)
template<class D , typename T = TFromD<D>>
size_t | Find (D d, T value, const T *HWY_RESTRICT in, size_t count)
template<class D , class Func , typename T = TFromD<D>>
size_t | FindIf (D d, const T *HWY_RESTRICT in, size_t count, const Func &func)
template<class D , class Func , typename T = TFromD<D>>
void | Generate (D d, T *HWY_RESTRICT out, size_t count, const Func &func)
template<class D , class Func , typename T = TFromD<D>>
void | Transform (D d, T *HWY_RESTRICT inout, size_t count, const Func &func)
template<class D , class Func , typename T = TFromD<D>>
void | Transform1 (D d, T *HWY_RESTRICT inout, size_t count, const T *HWY_RESTRICT in1, const Func &func)
template<class D , class Func , typename T = TFromD<D>>
void | Transform2 (D d, T *HWY_RESTRICT inout, size_t count, const T *HWY_RESTRICT in1, const T *HWY_RESTRICT in2, const Func &func)
template<class D , typename T = TFromD<D>>
void | Replace (D d, T *HWY_RESTRICT inout, size_t count, T new_t, T old_t)
template<class D , class Func , typename T = TFromD<D>>
void | ReplaceIf (D d, T *HWY_RESTRICT inout, size_t count, T new_t, const Func &func)
template<class D , class V >
HWY_INLINE V | Acos (const D d, V x)
| Highway SIMD version of std::acos(x).
template<class D , class V >
HWY_NOINLINE V | CallAcos (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Acosh (const D d, V x)
| Highway SIMD version of std::acosh(x).
template<class D , class V >
HWY_NOINLINE V | CallAcosh (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Asin (const D d, V x)
| Highway SIMD version of std::asin(x).
template<class D , class V >
HWY_NOINLINE V | CallAsin (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Asinh (const D d, V x)
| Highway SIMD version of std::asinh(x).
template<class D , class V >
HWY_NOINLINE V | CallAsinh (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Atan (const D d, V x)
| Highway SIMD version of std::atan(x).
template<class D , class V >
HWY_NOINLINE V | CallAtan (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Atanh (const D d, V x)
| Highway SIMD version of std::atanh(x).
template<class D , class V >
HWY_NOINLINE V | CallAtanh (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Cos (const D d, V x)
| Highway SIMD version of std::cos(x).
template<class D , class V >
HWY_NOINLINE V | CallCos (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Exp (const D d, V x)
| Highway SIMD version of std::exp(x).
template<class D , class V >
HWY_NOINLINE V | CallExp (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Expm1 (const D d, V x)
| Highway SIMD version of std::expm1(x).
template<class D , class V >
HWY_NOINLINE V | CallExpm1 (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Log (const D d, V x)
| Highway SIMD version of std::log(x).
template<class D , class V >
HWY_NOINLINE V | CallLog (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Log10 (const D d, V x)
| Highway SIMD version of std::log10(x).
template<class D , class V >
HWY_NOINLINE V | CallLog10 (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Log1p (const D d, V x)
| Highway SIMD version of std::log1p(x).
template<class D , class V >
HWY_NOINLINE V | CallLog1p (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Log2 (const D d, V x)
| Highway SIMD version of std::log2(x).
template<class D , class V >
HWY_NOINLINE V | CallLog2 (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Sin (const D d, V x)
| Highway SIMD version of std::sin(x).
template<class D , class V >
HWY_NOINLINE V | CallSin (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Sinh (const D d, V x)
| Highway SIMD version of std::sinh(x).
template<class D , class V >
HWY_NOINLINE V | CallSinh (const D d, VecArg< V > x)
template<class D , class V >
HWY_INLINE V | Tanh (const D d, V x)
| Highway SIMD version of std::tanh(x).
template<class D , class V >
HWY_NOINLINE V | CallTanh (const D d, VecArg< V > x)
template<class D , class VU64 , HWY_IF_NOT_FLOAT_D(D) >
Vec< D > | RandomValues (D d, VU64 &s0, VU64 &s1, const VU64 mask)
template<class DF , class VU64 , HWY_IF_FLOAT_D(DF) >
Vec< DF > | RandomValues (DF df, VU64 &s0, VU64 &s1, const VU64 mask)
template<class DU64 >
Vec< DU64 > | MaskForDist (DU64 du64, const Dist dist, size_t sizeof_t)
template<typename T >
InputStats< T > | GenerateInput (const Dist dist, T *v, size_t num)
template<class Order , typename KeyType , HWY_IF_NOT_LANE_SIZE(KeyType, 16) >
void | CallHeapSort (KeyType *HWY_RESTRICT keys, const size_t num_keys)
template<class Order , typename KeyType >
void | Run (Algo algo, KeyType *HWY_RESTRICT inout, size_t num, SharedState &shared, size_t thread)
template<class Traits , typename LaneType >
bool | VerifySort (Traits st, const InputStats< LaneType > &input_stats, const LaneType *out, size_t num_lanes, const char *caller)
template<class D , class Traits , typename T >
void | Sort (D d, Traits st, T *HWY_RESTRICT keys, size_t num, T *HWY_RESTRICT buf)
template<typename T , size_t N, typename FromT >
HWY_API Vec128< T, N > | BitCast (Simd< T, N, 0 > d, Vec128< FromT, N *sizeof(T)/sizeof(FromT)> v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Zero (Simd< T, N, 0 > d)
template<size_t N>
HWY_API Vec128< bfloat16_t, N > | Zero (Simd< bfloat16_t, N, 0 >)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Undefined (Simd< T, N, 0 >)
template<typename T , size_t N, typename T2 >
Vec128< T, N > | Iota (const Simd< T, N, 0 > d, const T2 first)
template<class V >
HWY_API TFromV< V > | GetLane (const V v)
template<typename T >
HWY_API T | ExtractLane (const Vec128< T, 1 > v, size_t i)
template<typename T >
HWY_API T | ExtractLane (const Vec128< T, 2 > v, size_t i)
template<typename T >
HWY_API T | ExtractLane (const Vec128< T, 4 > v, size_t i)
template<typename T >
HWY_API T | ExtractLane (const Vec128< T, 8 > v, size_t i)
template<typename T >
HWY_API T | ExtractLane (const Vec128< T, 16 > v, size_t i)
template<typename T >
HWY_API Vec128< T, 1 > | InsertLane (const Vec128< T, 1 > v, size_t i, T t)
template<typename T >
HWY_API Vec128< T, 2 > | InsertLane (const Vec128< T, 2 > v, size_t i, T t)
template<typename T >
HWY_API Vec128< T, 4 > | InsertLane (const Vec128< T, 4 > v, size_t i, T t)
template<typename T >
HWY_API Vec128< T, 8 > | InsertLane (const Vec128< T, 8 > v, size_t i, T t)
template<typename T >
HWY_API Vec128< T, 16 > | InsertLane (const Vec128< T, 16 > v, size_t i, T t)
HWY_API Vec128< uint64_t > | SumsOf8 (const Vec128< uint8_t > v)
HWY_API Vec64< uint64_t > | SumsOf8 (const Vec64< uint8_t > v)
HWY_API Vec64< int64_t > | Neg (const Vec64< int64_t > v)
HWY_API Vec128< int64_t > | Neg (const Vec128< int64_t > v)
template<int kBits, size_t N>
HWY_API Vec128< uint32_t, N > | RotateRight (const Vec128< uint32_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< uint64_t, N > | RotateRight (const Vec128< uint64_t, N > v)
HWY_API Vec128< uint8_t > | operator<< (const Vec128< uint8_t > v, const Vec128< uint8_t > bits)
template<size_t N, HWY_IF_LE64(uint8_t, N) >
HWY_API Vec128< uint8_t, N > | operator<< (const Vec128< uint8_t, N > v, const Vec128< uint8_t, N > bits)
HWY_API Vec128< uint16_t > | operator<< (const Vec128< uint16_t > v, const Vec128< uint16_t > bits)
template<size_t N, HWY_IF_LE64(uint16_t, N) >
HWY_API Vec128< uint16_t, N > | operator<< (const Vec128< uint16_t, N > v, const Vec128< uint16_t, N > bits)
HWY_API Vec128< uint32_t > | operator<< (const Vec128< uint32_t > v, const Vec128< uint32_t > bits)
template<size_t N, HWY_IF_LE64(uint32_t, N) >
HWY_API Vec128< uint32_t, N > | operator<< (const Vec128< uint32_t, N > v, const Vec128< uint32_t, N > bits)
HWY_API Vec128< uint64_t > | operator<< (const Vec128< uint64_t > v, const Vec128< uint64_t > bits)
HWY_API Vec64< uint64_t > | operator<< (const Vec64< uint64_t > v, const Vec64< uint64_t > bits)
HWY_API Vec128< int8_t > | operator<< (const Vec128< int8_t > v, const Vec128< int8_t > bits)
template<size_t N, HWY_IF_LE64(int8_t, N) >
HWY_API Vec128< int8_t, N > | operator<< (const Vec128< int8_t, N > v, const Vec128< int8_t, N > bits)
HWY_API Vec128< int16_t > | operator<< (const Vec128< int16_t > v, const Vec128< int16_t > bits)
template<size_t N, HWY_IF_LE64(int16_t, N) >
HWY_API Vec128< int16_t, N > | operator<< (const Vec128< int16_t, N > v, const Vec128< int16_t, N > bits)
HWY_API Vec128< int32_t > | operator<< (const Vec128< int32_t > v, const Vec128< int32_t > bits)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int32_t, N > | operator<< (const Vec128< int32_t, N > v, const Vec128< int32_t, N > bits)
HWY_API Vec128< int64_t > | operator<< (const Vec128< int64_t > v, const Vec128< int64_t > bits)
HWY_API Vec64< int64_t > | operator<< (const Vec64< int64_t > v, const Vec64< int64_t > bits)
HWY_API Vec128< uint8_t > | operator>> (const Vec128< uint8_t > v, const Vec128< uint8_t > bits)
template<size_t N, HWY_IF_LE64(uint8_t, N) >
HWY_API Vec128< uint8_t, N > | operator>> (const Vec128< uint8_t, N > v, const Vec128< uint8_t, N > bits)
HWY_API Vec128< uint16_t > | operator>> (const Vec128< uint16_t > v, const Vec128< uint16_t > bits)
template<size_t N, HWY_IF_LE64(uint16_t, N) >
HWY_API Vec128< uint16_t, N > | operator>> (const Vec128< uint16_t, N > v, const Vec128< uint16_t, N > bits)
HWY_API Vec128< uint32_t > | operator>> (const Vec128< uint32_t > v, const Vec128< uint32_t > bits)
template<size_t N, HWY_IF_LE64(uint32_t, N) >
HWY_API Vec128< uint32_t, N > | operator>> (const Vec128< uint32_t, N > v, const Vec128< uint32_t, N > bits)
HWY_API Vec128< uint64_t > | operator>> (const Vec128< uint64_t > v, const Vec128< uint64_t > bits)
HWY_API Vec64< uint64_t > | operator>> (const Vec64< uint64_t > v, const Vec64< uint64_t > bits)
HWY_API Vec128< int8_t > | operator>> (const Vec128< int8_t > v, const Vec128< int8_t > bits)
template<size_t N, HWY_IF_LE64(int8_t, N) >
HWY_API Vec128< int8_t, N > | operator>> (const Vec128< int8_t, N > v, const Vec128< int8_t, N > bits)
HWY_API Vec128< int16_t > | operator>> (const Vec128< int16_t > v, const Vec128< int16_t > bits)
template<size_t N, HWY_IF_LE64(int16_t, N) >
HWY_API Vec128< int16_t, N > | operator>> (const Vec128< int16_t, N > v, const Vec128< int16_t, N > bits)
HWY_API Vec128< int32_t > | operator>> (const Vec128< int32_t > v, const Vec128< int32_t > bits)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int32_t, N > | operator>> (const Vec128< int32_t, N > v, const Vec128< int32_t, N > bits)
HWY_API Vec128< int64_t > | operator>> (const Vec128< int64_t > v, const Vec128< int64_t > bits)
HWY_API Vec64< int64_t > | operator>> (const Vec64< int64_t > v, const Vec64< int64_t > bits)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ShiftLeftSame (const Vec128< T, N > v, int bits)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ShiftRightSame (const Vec128< T, N > v, int bits)
HWY_API Vec128< uint16_t > | operator* (const Vec128< uint16_t > a, const Vec128< uint16_t > b)
HWY_API Vec128< uint32_t > | operator* (const Vec128< uint32_t > a, const Vec128< uint32_t > b)
template<size_t N, HWY_IF_LE64(uint16_t, N) >
HWY_API Vec128< uint16_t, N > | operator* (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N, HWY_IF_LE64(uint32_t, N) >
HWY_API Vec128< uint32_t, N > | operator* (const Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
HWY_API Vec128< int16_t > | operator* (const Vec128< int16_t > a, const Vec128< int16_t > b)
HWY_API Vec128< int32_t > | operator* (const Vec128< int32_t > a, const Vec128< int32_t > b)
template<size_t N, HWY_IF_LE64(uint16_t, N) >
HWY_API Vec128< int16_t, N > | operator* (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int32_t, N > | operator* (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
HWY_API Vec128< int16_t > | MulHigh (const Vec128< int16_t > a, const Vec128< int16_t > b)
HWY_API Vec128< uint16_t > | MulHigh (const Vec128< uint16_t > a, const Vec128< uint16_t > b)
template<size_t N, HWY_IF_LE64(int16_t, N) >
HWY_API Vec128< int16_t, N > | MulHigh (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N, HWY_IF_LE64(uint16_t, N) >
HWY_API Vec128< uint16_t, N > | MulHigh (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
HWY_API Vec128< int16_t > | MulFixedPoint15 (Vec128< int16_t > a, Vec128< int16_t > b)
template<size_t N, HWY_IF_LE64(int16_t, N) >
HWY_API Vec128< int16_t, N > | MulFixedPoint15 (Vec128< int16_t, N > a, Vec128< int16_t, N > b)
HWY_API Vec128< float > | ApproximateReciprocal (const Vec128< float > v)
template<size_t N>
HWY_API Vec128< float, N > | ApproximateReciprocal (const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< float, N > | operator/ (const Vec128< float, N > a, const Vec128< float, N > b)
HWY_API Vec128< float > | AbsDiff (const Vec128< float > a, const Vec128< float > b)
template<size_t N, HWY_IF_LE64(float, N) >
HWY_API Vec128< float, N > | AbsDiff (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Vec128< float, N > | MulAdd (const Vec128< float, N > mul, const Vec128< float, N > x, const Vec128< float, N > add)
template<size_t N>
HWY_API Vec128< float, N > | NegMulAdd (const Vec128< float, N > mul, const Vec128< float, N > x, const Vec128< float, N > add)
template<size_t N>
HWY_API Vec128< float, N > | MulSub (const Vec128< float, N > mul, const Vec128< float, N > x, const Vec128< float, N > sub)
template<size_t N>
HWY_API Vec128< float, N > | NegMulSub (const Vec128< float, N > mul, const Vec128< float, N > x, const Vec128< float, N > sub)
HWY_API Vec128< float > | ApproximateReciprocalSqrt (const Vec128< float > v)
template<size_t N>
HWY_API Vec128< float, N > | ApproximateReciprocalSqrt (const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< float, N > | Sqrt (const Vec128< float, N > v)
template<typename T >
HWY_API Vec128< T > | Not (const Vec128< T > v)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API Vec128< T, N > | Not (const Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_FLOAT(T) >
HWY_API Vec128< T, N > | And (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N, HWY_IF_NOT_FLOAT(T) >
HWY_API Vec128< T, N > | AndNot (const Vec128< T, N > not_mask, const Vec128< T, N > mask)
template<typename T , size_t N, HWY_IF_FLOAT(T) >
HWY_API Vec128< T, N > | Or (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N, HWY_IF_FLOAT(T) >
HWY_API Vec128< T, N > | Xor (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Xor3 (Vec128< T, N > x1, Vec128< T, N > x2, Vec128< T, N > x3)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Or3 (Vec128< T, N > o1, Vec128< T, N > o2, Vec128< T, N > o3)
template<typename T , size_t N>
HWY_API Vec128< T, N > | OrAnd (Vec128< T, N > o, Vec128< T, N > a1, Vec128< T, N > a2)
template<typename T , size_t N>
HWY_API Vec128< T, N > | IfVecThenElse (Vec128< T, N > mask, Vec128< T, N > yes, Vec128< T, N > no)
template<typename T , size_t N>
HWY_API Vec128< T, N > | operator& (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | operator| (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | operator^ (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N, HWY_IF_NOT_FLOAT(T) >
HWY_API Vec128< T, N > | PopulationCount (Vec128< T, N > v)
HWY_API Vec128< int8_t > | Abs (const Vec128< int8_t > v)
HWY_API Vec128< int16_t > | Abs (const Vec128< int16_t > v)
HWY_API Vec128< int32_t > | Abs (const Vec128< int32_t > v)
HWY_API Vec128< float > | Abs (const Vec128< float > v)
template<size_t N, HWY_IF_LE64(int8_t, N) >
HWY_API Vec128< int8_t, N > | Abs (const Vec128< int8_t, N > v)
template<size_t N, HWY_IF_LE64(int16_t, N) >
HWY_API Vec128< int16_t, N > | Abs (const Vec128< int16_t, N > v)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int32_t, N > | Abs (const Vec128< int32_t, N > v)
template<size_t N, HWY_IF_LE64(float, N) >
HWY_API Vec128< float, N > | Abs (const Vec128< float, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | CopySign (const Vec128< T, N > magn, const Vec128< T, N > sign)
template<typename T , size_t N>
HWY_API Vec128< T, N > | CopySignToAbs (const Vec128< T, N > abs, const Vec128< T, N > sign)
template<typename T , size_t N, HWY_IF_SIGNED(T) >
HWY_API Vec128< T, N > | BroadcastSignBit (const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Mask128< T, N > | MaskFromVec (const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | VecFromMask (Simd< T, N, 0 > d, const Mask128< T, N > v)
template<typename TFrom , typename TTo , size_t N>
HWY_API Mask128< TTo, N > | RebindMask (Simd< TTo, N, 0 > dto, Mask128< TFrom, N > m)
template<typename T , size_t N>
HWY_API Vec128< T, N > | IfThenElseZero (const Mask128< T, N > mask, const Vec128< T, N > yes)
template<typename T , size_t N>
HWY_API Vec128< T, N > | IfThenZeroElse (const Mask128< T, N > mask, const Vec128< T, N > no)
template<typename T , size_t N>
HWY_API Vec128< T, N > | IfNegativeThenElse (Vec128< T, N > v, Vec128< T, N > yes, Vec128< T, N > no)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ZeroIfNegative (Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Mask128< T, N > | Not (const Mask128< T, N > m)
template<typename T , size_t N>
HWY_API Mask128< T, N > | And (const Mask128< T, N > a, Mask128< T, N > b)
template<typename T , size_t N>
HWY_API Mask128< T, N > | AndNot (const Mask128< T, N > a, Mask128< T, N > b)
template<typename T , size_t N>
HWY_API Mask128< T, N > | Or (const Mask128< T, N > a, Mask128< T, N > b)
template<typename T , size_t N>
HWY_API Mask128< T, N > | Xor (const Mask128< T, N > a, Mask128< T, N > b)
template<typename T , size_t N>
HWY_API Mask128< T, N > | ExclusiveNeither (const Mask128< T, N > a, Mask128< T, N > b)
HWY_API Vec64< uint32_t > | Shuffle2301 (const Vec64< uint32_t > v)
HWY_API Vec64< int32_t > | Shuffle2301 (const Vec64< int32_t > v)
HWY_API Vec64< float > | Shuffle2301 (const Vec64< float > v)
HWY_API Vec128< uint32_t > | Shuffle2301 (const Vec128< uint32_t > v)
HWY_API Vec128< int32_t > | Shuffle2301 (const Vec128< int32_t > v)
HWY_API Vec128< float > | Shuffle2301 (const Vec128< float > v)
template<typename T , size_t N>
HWY_API Mask128< T, N > | operator> (Vec128< T, N > a, Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Mask128< T, N > | operator>= (Vec128< T, N > a, Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Mask128< T, N > | FirstN (const Simd< T, N, 0 > d, size_t num)
template<size_t N>
HWY_API Mask128< uint64_t, N > | TestBit (Vec128< uint64_t, N > v, Vec128< uint64_t, N > bit)
template<size_t N>
HWY_API Mask128< int64_t, N > | TestBit (Vec128< int64_t, N > v, Vec128< int64_t, N > bit)
HWY_API Vec128< int64_t > | Abs (const Vec128< int64_t > v)
HWY_API Vec64< int64_t > | Abs (const Vec64< int64_t > v)
template<size_t N>
HWY_API Vec128< uint64_t, N > | Min (const Vec128< uint64_t, N > a, const Vec128< uint64_t, N > b)
template<size_t N>
HWY_API Vec128< int64_t, N > | Min (const Vec128< int64_t, N > a, const Vec128< int64_t, N > b)
template<size_t N>
HWY_API Vec128< uint64_t, N > | Max (const Vec128< uint64_t, N > a, const Vec128< uint64_t, N > b)
template<size_t N>
HWY_API Vec128< int64_t, N > | Max (const Vec128< int64_t, N > a, const Vec128< int64_t, N > b)
HWY_API Vec128< uint8_t > | LoadU (Full128< uint8_t >, const uint8_t *HWY_RESTRICT unaligned)
HWY_API Vec128< uint16_t > | LoadU (Full128< uint16_t >, const uint16_t *HWY_RESTRICT unaligned)
HWY_API Vec128< uint32_t > | LoadU (Full128< uint32_t >, const uint32_t *HWY_RESTRICT unaligned)
HWY_API Vec128< uint64_t > | LoadU (Full128< uint64_t >, const uint64_t *HWY_RESTRICT unaligned)
HWY_API Vec128< int8_t > | LoadU (Full128< int8_t >, const int8_t *HWY_RESTRICT unaligned)
HWY_API Vec128< int16_t > | LoadU (Full128< int16_t >, const int16_t *HWY_RESTRICT unaligned)
HWY_API Vec128< int32_t > | LoadU (Full128< int32_t >, const int32_t *HWY_RESTRICT unaligned)
HWY_API Vec128< int64_t > | LoadU (Full128< int64_t >, const int64_t *HWY_RESTRICT unaligned)
HWY_API Vec128< float > | LoadU (Full128< float >, const float *HWY_RESTRICT unaligned)
HWY_API Vec64< uint8_t > | LoadU (Full64< uint8_t >, const uint8_t *HWY_RESTRICT p)
HWY_API Vec64< uint16_t > | LoadU (Full64< uint16_t >, const uint16_t *HWY_RESTRICT p)
HWY_API Vec64< uint32_t > | LoadU (Full64< uint32_t >, const uint32_t *HWY_RESTRICT p)
HWY_API Vec64< uint64_t > | LoadU (Full64< uint64_t >, const uint64_t *HWY_RESTRICT p)
HWY_API Vec64< int8_t > | LoadU (Full64< int8_t >, const int8_t *HWY_RESTRICT p)
HWY_API Vec64< int16_t > | LoadU (Full64< int16_t >, const int16_t *HWY_RESTRICT p)
HWY_API Vec64< int32_t > | LoadU (Full64< int32_t >, const int32_t *HWY_RESTRICT p)
HWY_API Vec64< int64_t > | LoadU (Full64< int64_t >, const int64_t *HWY_RESTRICT p)
HWY_API Vec64< float > | LoadU (Full64< float >, const float *HWY_RESTRICT p)
HWY_API Vec32< uint32_t > | LoadU (Full32< uint32_t >, const uint32_t *HWY_RESTRICT p)
HWY_API Vec32< int32_t > | LoadU (Full32< int32_t >, const int32_t *HWY_RESTRICT p)
HWY_API Vec32< float > | LoadU (Full32< float >, const float *HWY_RESTRICT p)
template<typename T , HWY_IF_LANE_SIZE_ONE_OF(T, 0x6) >
HWY_API Vec32< T > | LoadU (Full32< T > d, const T *HWY_RESTRICT p)
HWY_API Vec128< uint16_t, 1 > | LoadU (Simd< uint16_t, 1, 0 >, const uint16_t *HWY_RESTRICT p)
HWY_API Vec128< int16_t, 1 > | LoadU (Simd< int16_t, 1, 0 >, const int16_t *HWY_RESTRICT p)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T, 2 > | LoadU (Simd< T, 2, 0 > d, const T *HWY_RESTRICT p)
HWY_API Vec128< uint8_t, 1 > | LoadU (Simd< uint8_t, 1, 0 >, const uint8_t *HWY_RESTRICT p)
HWY_API Vec128< int8_t, 1 > | LoadU (Simd< int8_t, 1, 0 >, const int8_t *HWY_RESTRICT p)
template<size_t N>
HWY_API Vec128< float16_t, N > | LoadU (Simd< float16_t, N, 0 > d, const float16_t *HWY_RESTRICT p)
template<size_t N>
HWY_API Vec128< bfloat16_t, N > | LoadU (Simd< bfloat16_t, N, 0 > d, const bfloat16_t *HWY_RESTRICT p)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Load (Simd< T, N, 0 > d, const T *HWY_RESTRICT p)
template<typename T , size_t N>
HWY_API Vec128< T, N > | MaskedLoad (Mask128< T, N > m, Simd< T, N, 0 > d, const T *HWY_RESTRICT aligned)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_API Vec128< T, N > | LoadDup128 (Simd< T, N, 0 > d, const T *const HWY_RESTRICT p)
HWY_API void | StoreU (const Vec128< uint8_t > v, Full128< uint8_t >, uint8_t *HWY_RESTRICT unaligned)
HWY_API void | StoreU (const Vec128< uint16_t > v, Full128< uint16_t >, uint16_t *HWY_RESTRICT unaligned)
HWY_API void | StoreU (const Vec128< uint32_t > v, Full128< uint32_t >, uint32_t *HWY_RESTRICT unaligned)
HWY_API void | StoreU (const Vec128< uint64_t > v, Full128< uint64_t >, uint64_t *HWY_RESTRICT unaligned)
HWY_API void | StoreU (const Vec128< int8_t > v, Full128< int8_t >, int8_t *HWY_RESTRICT unaligned)
HWY_API void | StoreU (const Vec128< int16_t > v, Full128< int16_t >, int16_t *HWY_RESTRICT unaligned)
HWY_API void | StoreU (const Vec128< int32_t > v, Full128< int32_t >, int32_t *HWY_RESTRICT unaligned)
HWY_API void | StoreU (const Vec128< int64_t > v, Full128< int64_t >, int64_t *HWY_RESTRICT unaligned)
HWY_API void | StoreU (const Vec128< float > v, Full128< float >, float *HWY_RESTRICT unaligned)
HWY_API void | StoreU (const Vec64< uint8_t > v, Full64< uint8_t >, uint8_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec64< uint16_t > v, Full64< uint16_t >, uint16_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec64< uint32_t > v, Full64< uint32_t >, uint32_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec64< uint64_t > v, Full64< uint64_t >, uint64_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec64< int8_t > v, Full64< int8_t >, int8_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec64< int16_t > v, Full64< int16_t >, int16_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec64< int32_t > v, Full64< int32_t >, int32_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec64< int64_t > v, Full64< int64_t >, int64_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec64< float > v, Full64< float >, float *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec32< uint32_t > v, Full32< uint32_t >, uint32_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec32< int32_t > v, Full32< int32_t >, int32_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec32< float > v, Full32< float >, float *HWY_RESTRICT p)
template<typename T , HWY_IF_LANE_SIZE_ONE_OF(T, 0x6) >
HWY_API void | StoreU (const Vec32< T > v, Full32< T > d, T *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec128< uint16_t, 1 > v, Simd< uint16_t, 1, 0 >, uint16_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec128< int16_t, 1 > v, Simd< int16_t, 1, 0 >, int16_t *HWY_RESTRICT p)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API void | StoreU (const Vec128< T, 2 > v, Simd< T, 2, 0 > d, T *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec128< uint8_t, 1 > v, Simd< uint8_t, 1, 0 >, uint8_t *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec128< int8_t, 1 > v, Simd< int8_t, 1, 0 >, int8_t *HWY_RESTRICT p)
template<size_t N>
HWY_API void | StoreU (Vec128< float16_t, N > v, Simd< float16_t, N, 0 > d, float16_t *HWY_RESTRICT p)
template<size_t N>
HWY_API void | StoreU (Vec128< bfloat16_t, N > v, Simd< bfloat16_t, N, 0 > d, bfloat16_t *HWY_RESTRICT p)
template<typename T , size_t N>
HWY_API void | Store (Vec128< T, N > v, Simd< T, N, 0 > d, T *HWY_RESTRICT aligned)
template<typename T , size_t N>
HWY_API void | BlendedStore (Vec128< T, N > v, Mask128< T, N > m, Simd< T, N, 0 > d, T *HWY_RESTRICT p)
template<typename T , size_t N>
HWY_API void | Stream (const Vec128< T, N > v, Simd< T, N, 0 > d, T *HWY_RESTRICT aligned)
HWY_API Vec128< uint16_t > | PromoteTo (Full128< uint16_t >, const Vec64< uint8_t > v)
HWY_API Vec128< uint32_t > | PromoteTo (Full128< uint32_t >, const Vec32< uint8_t > v)
HWY_API Vec128< uint32_t > | PromoteTo (Full128< uint32_t >, const Vec64< uint16_t > v)
HWY_API Vec128< uint64_t > | PromoteTo (Full128< uint64_t >, const Vec64< uint32_t > v)
HWY_API Vec128< int16_t > | PromoteTo (Full128< int16_t > d, const Vec64< uint8_t > v)
HWY_API Vec128< int32_t > | PromoteTo (Full128< int32_t > d, const Vec32< uint8_t > v)
HWY_API Vec128< int32_t > | PromoteTo (Full128< int32_t > d, const Vec64< uint16_t > v)
template<size_t N, HWY_IF_LE64(uint16_t, N) >
HWY_API Vec128< uint16_t, N > | PromoteTo (Simd< uint16_t, N, 0 >, const Vec128< uint8_t, N > v)
template<size_t N, HWY_IF_LE64(uint32_t, N) >
HWY_API Vec128< uint32_t, N > | PromoteTo (Simd< uint32_t, N, 0 >, const Vec128< uint8_t, N > v)
template<size_t N>
HWY_API Vec128< uint32_t, N > | PromoteTo (Simd< uint32_t, N, 0 >, const Vec128< uint16_t, N > v)
template<size_t N, HWY_IF_LE64(uint64_t, N) >
HWY_API Vec128< uint64_t, N > | PromoteTo (Simd< uint64_t, N, 0 >, const Vec128< uint32_t, N > v)
template<size_t N, HWY_IF_LE64(int16_t, N) >
HWY_API Vec128< int16_t, N > | PromoteTo (Simd< int16_t, N, 0 > d, const Vec128< uint8_t, N > v)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int32_t, N > | PromoteTo (Simd< int32_t, N, 0 >, const Vec128< uint8_t, N > v)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int32_t, N > | PromoteTo (Simd< int32_t, N, 0 >, const Vec128< uint16_t, N > v)
HWY_API Vec128< int16_t > | PromoteTo (Full128< int16_t >, const Vec64< int8_t > v)
HWY_API Vec128< int32_t > | PromoteTo (Full128< int32_t >, const Vec32< int8_t > v)
HWY_API Vec128< int32_t > | PromoteTo (Full128< int32_t >, const Vec64< int16_t > v)
HWY_API Vec128< int64_t > | PromoteTo (Full128< int64_t >, const Vec64< int32_t > v)
template<size_t N>
HWY_API Vec128< int16_t, N > | PromoteTo (Simd< int16_t, N, 0 >, const Vec128< int8_t, N > v)
template<size_t N>
HWY_API Vec128< int32_t, N > | PromoteTo (Simd< int32_t, N, 0 >, const Vec128< int8_t, N > v)
template<size_t N>
HWY_API Vec128< int32_t, N > | PromoteTo (Simd< int32_t, N, 0 >, const Vec128< int16_t, N > v)
template<size_t N>
HWY_API Vec128< int64_t, N > | PromoteTo (Simd< int64_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N>
HWY_API Vec128< float, N > | PromoteTo (Simd< float, N, 0 > df32, const Vec128< float16_t, N > v)
HWY_API Vec64< uint16_t > | DemoteTo (Full64< uint16_t >, const Vec128< int32_t > v)
HWY_API Vec64< int16_t > | DemoteTo (Full64< int16_t >, const Vec128< int32_t > v)
HWY_API Vec32< uint8_t > | DemoteTo (Full32< uint8_t >, const Vec128< int32_t > v)
HWY_API Vec64< uint8_t > | DemoteTo (Full64< uint8_t >, const Vec128< int16_t > v)
HWY_API Vec32< int8_t > | DemoteTo (Full32< int8_t >, const Vec128< int32_t > v)
HWY_API Vec64< int8_t > | DemoteTo (Full64< int8_t >, const Vec128< int16_t > v)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< uint16_t, N > | DemoteTo (Simd< uint16_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int16_t, N > | DemoteTo (Simd< int16_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< uint8_t, N > | DemoteTo (Simd< uint8_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N, HWY_IF_LE64(int16_t, N) >
HWY_API Vec128< uint8_t, N > | DemoteTo (Simd< uint8_t, N, 0 >, const Vec128< int16_t, N > v)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int8_t, N > | DemoteTo (Simd< int8_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N, HWY_IF_LE64(int16_t, N) >
HWY_API Vec128< int8_t, N > | DemoteTo (Simd< int8_t, N, 0 >, const Vec128< int16_t, N > v)
template<size_t N>
HWY_API Vec128< float16_t, N > | DemoteTo (Simd< float16_t, N, 0 > df16, const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< bfloat16_t, N > | DemoteTo (Simd< bfloat16_t, N, 0 > dbf16, const Vec128< float, N > v)
HWY_API Vec32< uint8_t > | U8FromU32 (const Vec128< uint32_t > v)
template<size_t N, HWY_IF_LE64(uint32_t, N) >
HWY_API Vec128< uint8_t, N > | U8FromU32 (const Vec128< uint32_t, N > v)
template<size_t N>
HWY_API Vec128< uint8_t, N > | DemoteTo (Simd< uint8_t, N, 0 >, const Vec128< int32_t > v)
template<size_t N>
HWY_API Vec128< int8_t, N > | DemoteTo (Simd< int8_t, N, 0 >, const Vec128< int32_t > v)
HWY_API Vec128< float > | ConvertTo (Full128< float >, const Vec128< int32_t > v)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< float, N > | ConvertTo (Simd< float, N, 0 >, const Vec128< int32_t, N > v)
HWY_API Vec128< float > | ConvertTo (Full128< float >, const Vec128< uint32_t > v)
template<size_t N, HWY_IF_LE64(uint32_t, N) >
HWY_API Vec128< float, N > | ConvertTo (Simd< float, N, 0 >, const Vec128< uint32_t, N > v)
HWY_API Vec128< int32_t > | ConvertTo (Full128< int32_t >, const Vec128< float > v)
template<size_t N, HWY_IF_LE64(float, N) >
HWY_API Vec128< int32_t, N > | ConvertTo (Simd< int32_t, N, 0 >, const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< float, N > | Trunc (const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< float, N > | Round (const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< float, N > | Ceil (const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< float, N > | Floor (const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< int32_t, N > | NearestInt (const Vec128< float, N > v)
template<typename T , size_t N>
HWY_API Mask128< T, N > | IsNaN (const Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_FLOAT(T) >
HWY_API Mask128< T, N > | IsInf (const Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_FLOAT(T) >
HWY_API Mask128< T, N > | IsFinite (const Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_LE64(uint8_t, N) >
HWY_API Vec128< T, N/2 > | LowerHalf (const Vec128< T, N > v)
HWY_API Vec64< uint8_t > | LowerHalf (const Vec128< uint8_t > v)
HWY_API Vec64< uint16_t > | LowerHalf (const Vec128< uint16_t > v)
HWY_API Vec64< uint32_t > | LowerHalf (const Vec128< uint32_t > v)
HWY_API Vec64< uint64_t > | LowerHalf (const Vec128< uint64_t > v)
HWY_API Vec64< int8_t > | LowerHalf (const Vec128< int8_t > v)
HWY_API Vec64< int16_t > | LowerHalf (const Vec128< int16_t > v)
HWY_API Vec64< int32_t > | LowerHalf (const Vec128< int32_t > v)
HWY_API Vec64< int64_t > | LowerHalf (const Vec128< int64_t > v)
HWY_API Vec64< float > | LowerHalf (const Vec128< float > v)
HWY_API Vec64< bfloat16_t > | LowerHalf (const Vec128< bfloat16_t > v)
template<typename T , size_t N>
HWY_API Vec128< T, N/2 > | LowerHalf (Simd< T, N/2, 0 >, Vec128< T, N > v)
template<int kBytes, typename T , class V128 = Vec128<T>>
HWY_API V128 | CombineShiftRightBytes (Full128< T > d, V128 hi, V128 lo)
template<int kBytes, typename T >
HWY_API Vec64< T > | CombineShiftRightBytes (Full64< T > d, Vec64< T > hi, Vec64< T > lo)
template<int kBytes, typename T , size_t N>
HWY_API Vec128< T, N > | ShiftLeftBytes (Simd< T, N, 0 >, Vec128< T, N > v)
template<int kBytes, typename T , size_t N>
HWY_API Vec128< T, N > | ShiftLeftBytes (const Vec128< T, N > v)
template<int kLanes, typename T , size_t N>
HWY_API Vec128< T, N > | ShiftLeftLanes (Simd< T, N, 0 > d, const Vec128< T, N > v)
template<int kLanes, typename T , size_t N>
HWY_API Vec128< T, N > | ShiftLeftLanes (const Vec128< T, N > v)
template<int kBytes, typename T , size_t N>
HWY_API Vec128< T, N > | ShiftRightBytes (Simd< T, N, 0 >, Vec128< T, N > v)
template<int kLanes, typename T , size_t N>
HWY_API Vec128< T, N > | ShiftRightLanes (Simd< T, N, 0 > d, const Vec128< T, N > v)
template<int kBytes, typename T , size_t N, HWY_IF_LE32(T, N) >
HWY_API Vec128< T, N > | CombineShiftRightBytes (Simd< T, N, 0 > d, Vec128< T, N > hi, Vec128< T, N > lo)
HWY_API Vec64< uint8_t > | UpperHalf (Full64< uint8_t >, const Vec128< uint8_t > v)
HWY_API Vec64< uint16_t > | UpperHalf (Full64< uint16_t >, const Vec128< uint16_t > v)
HWY_API Vec64< uint32_t > | UpperHalf (Full64< uint32_t >, const Vec128< uint32_t > v)
HWY_API Vec64< uint64_t > | UpperHalf (Full64< uint64_t >, const Vec128< uint64_t > v)
HWY_API Vec64< int8_t > | UpperHalf (Full64< int8_t >, const Vec128< int8_t > v)
HWY_API Vec64< int16_t > | UpperHalf (Full64< int16_t >, const Vec128< int16_t > v)
HWY_API Vec64< int32_t > | UpperHalf (Full64< int32_t >, const Vec128< int32_t > v)
HWY_API Vec64< int64_t > | UpperHalf (Full64< int64_t >, const Vec128< int64_t > v)
HWY_API Vec64< float > | UpperHalf (Full64< float >, const Vec128< float > v)
HWY_API Vec64< bfloat16_t > | UpperHalf (Full64< bfloat16_t > dbh, const Vec128< bfloat16_t > v)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API Vec128< T,(N+1)/2 > | UpperHalf (Half< Simd< T, N, 0 > >, Vec128< T, N > v)
template<int kLane>
HWY_API Vec128< uint16_t > | Broadcast (const Vec128< uint16_t > v)
template<int kLane, size_t N, HWY_IF_LE64(uint16_t, N) >
HWY_API Vec128< uint16_t, N > | Broadcast (const Vec128< uint16_t, N > v)
template<int kLane>
HWY_API Vec128< uint32_t > | Broadcast (const Vec128< uint32_t > v)
template<int kLane, size_t N, HWY_IF_LE64(uint32_t, N) >
HWY_API Vec128< uint32_t, N > | Broadcast (const Vec128< uint32_t, N > v)
template<int kLane>
HWY_API Vec128< uint64_t > | Broadcast (const Vec128< uint64_t > v)
template<int kLane>
HWY_API Vec128< int16_t > | Broadcast (const Vec128< int16_t > v)
template<int kLane, size_t N, HWY_IF_LE64(int16_t, N) >
HWY_API Vec128< int16_t, N > | Broadcast (const Vec128< int16_t, N > v)
template<int kLane>
HWY_API Vec128< int32_t > | Broadcast (const Vec128< int32_t > v)
template<int kLane, size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int32_t, N > | Broadcast (const Vec128< int32_t, N > v)
template<int kLane>
HWY_API Vec128< int64_t > | Broadcast (const Vec128< int64_t > v)
template<int kLane>
HWY_API Vec128< float > | Broadcast (const Vec128< float > v)
template<int kLane, size_t N, HWY_IF_LE64(float, N) >
HWY_API Vec128< float, N > | Broadcast (const Vec128< float, N > v)
template<int kLane>
HWY_API Vec64< uint64_t > | Broadcast (const Vec64< uint64_t > v)
template<int kLane>
HWY_API Vec64< int64_t > | Broadcast (const Vec64< int64_t > v)
template<typename T , size_t N, typename TI , HWY_IF_LE128(T, N) >
HWY_API Indices128< T, N > | IndicesFromVec (Simd< T, N, 0 > d, Vec128< TI, N > vec)
template<typename T , size_t N, typename TI , HWY_IF_LE128(T, N) >
HWY_API Indices128< T, N > | SetTableIndices (Simd< T, N, 0 > d, const TI *idx)
template<typename T , size_t N>
HWY_API Vec128< T, N > | TableLookupLanes (Vec128< T, N > v, Indices128< T, N > idx)
template<typename T >
HWY_API Vec128< T, 1 > | Reverse (Simd< T, 1, 0 >, const Vec128< T, 1 > v)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec128< T, 2 > | Reverse (Simd< T, 2, 0 >, const Vec128< T, 2 > v)
template<typename T , HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec128< T > | Reverse (Full128< T >, const Vec128< T > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec128< T, N > | Reverse (Simd< T, N, 0 > d, const Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) , HWY_IF_LE64(T, N) >
HWY_API Vec128< T, N > | Reverse2 (Simd< T, N, 0 > d, const Vec128< T, N > v)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec128< T > | Reverse2 (Full128< T > d, const Vec128< T > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec128< T, N > | Reverse2 (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) , HWY_IF_LE64(T, N) >
HWY_API Vec128< T, N > | Reverse4 (Simd< T, N, 0 > d, const Vec128< T, N > v)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec128< T > | Reverse4 (Full128< T > d, const Vec128< T > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec128< T, N > | Reverse4 (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec128< T, N > | Reverse8 (Simd< T, N, 0 > d, const Vec128< T, N > v)
template<typename T >
HWY_API Vec128< T > | Shuffle1032 (const Vec128< T > v)
template<typename T >
HWY_API Vec128< T > | Shuffle01 (const Vec128< T > v)
template<typename T >
HWY_API Vec128< T > | Shuffle0321 (const Vec128< T > v)
template<typename T >
HWY_API Vec128< T > | Shuffle2103 (const Vec128< T > v)
template<typename T >
HWY_API Vec128< T > | Shuffle0123 (const Vec128< T > v)
HWY_API Vec128< uint64_t > | InterleaveLower (const Vec128< uint64_t > a, const Vec128< uint64_t > b)
HWY_API Vec128< int64_t > | InterleaveLower (const Vec128< int64_t > a, const Vec128< int64_t > b)
HWY_API Vec128< float > | InterleaveLower (const Vec128< float > a, const Vec128< float > b)
template<size_t N, HWY_IF_LE64(float, N) >
HWY_API Vec128< float, N > | InterleaveLower (const Vec128< float, N > a, const Vec128< float, N > b)
template<typename T , size_t N, HWY_IF_LE32(T, N) >
HWY_API Vec128< T, N > | InterleaveLower (Vec128< T, N > a, Vec128< T, N > b)
template<typename T , size_t N, class V = Vec128<T, N>>
HWY_API V | InterleaveLower (Simd< T, N, 0 >, V a, V b)
template<typename T , size_t N, HWY_IF_GE64(T, N) , class V = Vec128<T, N>>
HWY_API V | InterleaveUpper (Simd< T, N, 0 >, V a, V b)
template<class V , class DW = RepartitionToWide<DFromV<V>>>
HWY_API VFromD< DW > | ZipLower (V a, V b)
template<class V , class D = DFromV<V>, class DW = RepartitionToWide<D>>
HWY_API VFromD< DW > | ZipLower (DW dw, V a, V b)
template<class V , class D = DFromV<V>, class DW = RepartitionToWide<D>>
HWY_API VFromD< DW > | ZipUpper (DW dw, V a, V b)
template<size_t N>
HWY_API Vec128< float, N > | ReorderWidenMulAccumulate (Simd< float, N, 0 > df32, Vec128< bfloat16_t, 2 *N > a, Vec128< bfloat16_t, 2 *N > b, const Vec128< float, N > sum0, Vec128< float, N > &sum1)
HWY_API Vec128< int32_t > | ReorderWidenMulAccumulate (Full128< int32_t >, Vec128< int16_t > a, Vec128< int16_t > b, const Vec128< int32_t > sum0, Vec128< int32_t > &sum1)
HWY_API Vec64< int32_t > | ReorderWidenMulAccumulate (Full64< int32_t > d32, Vec64< int16_t > a, Vec64< int16_t > b, const Vec64< int32_t > sum0, Vec64< int32_t > &sum1)
HWY_API Vec32< int32_t > | ReorderWidenMulAccumulate (Full32< int32_t > d32, Vec32< int16_t > a, Vec32< int16_t > b, const Vec32< int32_t > sum0, Vec32< int32_t > &sum1)
HWY_API Vec128< uint8_t > | Combine (Full128< uint8_t >, Vec64< uint8_t > hi, Vec64< uint8_t > lo)
HWY_API Vec128< uint16_t > | Combine (Full128< uint16_t >, Vec64< uint16_t > hi, Vec64< uint16_t > lo)
HWY_API Vec128< uint32_t > | Combine (Full128< uint32_t >, Vec64< uint32_t > hi, Vec64< uint32_t > lo)
HWY_API Vec128< uint64_t > | Combine (Full128< uint64_t >, Vec64< uint64_t > hi, Vec64< uint64_t > lo)
HWY_API Vec128< int8_t > | Combine (Full128< int8_t >, Vec64< int8_t > hi, Vec64< int8_t > lo)
HWY_API Vec128< int16_t > | Combine (Full128< int16_t >, Vec64< int16_t > hi, Vec64< int16_t > lo)
HWY_API Vec128< int32_t > | Combine (Full128< int32_t >, Vec64< int32_t > hi, Vec64< int32_t > lo)
HWY_API Vec128< int64_t > | Combine (Full128< int64_t >, Vec64< int64_t > hi, Vec64< int64_t > lo)
HWY_API Vec128< float > | Combine (Full128< float >, Vec64< float > hi, Vec64< float > lo)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API Vec128< T, N > | Combine (Simd< T, N, 0 > d, Vec128< T, N/2 > hi, Vec128< T, N/2 > lo)
template<size_t N>
HWY_API Vec128< float, N > | RearrangeToOddPlusEven (const Vec128< float, N > sum0, const Vec128< float, N > sum1)
HWY_API Vec128< int32_t > | RearrangeToOddPlusEven (const Vec128< int32_t > sum0, const Vec128< int32_t > sum1)
HWY_API Vec64< int32_t > | RearrangeToOddPlusEven (const Vec64< int32_t > sum0, const Vec64< int32_t > sum1)
HWY_API Vec32< int32_t > | RearrangeToOddPlusEven (const Vec32< int32_t > sum0, const Vec32< int32_t > sum1)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ZeroExtendVector (Simd< T, N, 0 > d, Vec128< T, N/2 > lo)
template<typename T , size_t N, HWY_IF_GE64(T, N) >
HWY_API Vec128< T, N > | ConcatLowerLower (const Simd< T, N, 0 > d, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , size_t N, HWY_IF_GE64(T, N) >
HWY_API Vec128< T, N > | ConcatUpperUpper (const Simd< T, N, 0 > d, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , size_t N, HWY_IF_GE64(T, N) >
HWY_API Vec128< T, N > | ConcatLowerUpper (const Simd< T, N, 0 > d, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ConcatUpperLower (Simd< T, N, 0 > d, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , size_t N, hwy::EnableIf< N !=2 &&sizeof(T) *N > = 8>
N | ConcatOdd (Simd< T, N, 0 >, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T, 4 > | ConcatOdd (Simd< T, 4, 0 > d, Vec128< T, 4 > hi, Vec128< T, 4 > lo)
template<typename T >
HWY_API Vec128< T, 2 > | ConcatOdd (Simd< T, 2, 0 > d, Vec128< T, 2 > hi, Vec128< T, 2 > lo)
template<typename T , size_t N, hwy::EnableIf< N !=2 &&sizeof(T) *N > = 8>
N | ConcatEven (Simd< T, N, 0 >, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T, 4 > | ConcatEven (Simd< T, 4, 0 > d, Vec128< T, 4 > hi, Vec128< T, 4 > lo)
template<typename T >
HWY_API Vec128< T, 2 > | ConcatEven (Simd< T, 2, 0 > d, Vec128< T, 2 > hi, Vec128< T, 2 > lo)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec128< T, N > | DupEven (Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec128< T, N > | DupOdd (Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | OddEven (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | OddEvenBlocks (Vec128< T, N >, Vec128< T, N > even)
template<typename T , size_t N>
HWY_API Vec128< T, N > | SwapAdjacentBlocks (Vec128< T, N > v)
template<typename T >
HWY_API Vec128< T > | ReverseBlocks (Full128< T >, const Vec128< T > v)
template<size_t N>
HWY_API Vec128< bfloat16_t, 2 *N > | ReorderDemote2To (Simd< bfloat16_t, 2 *N, 0 > dbf16, Vec128< float, N > a, Vec128< float, N > b)
HWY_API Vec128< int16_t > | ReorderDemote2To (Full128< int16_t > d16, Vec128< int32_t > a, Vec128< int32_t > b)
HWY_API Vec64< int16_t > | ReorderDemote2To (Full64< int16_t >, Vec64< int32_t > a, Vec64< int32_t > b)
HWY_API Vec32< int16_t > | ReorderDemote2To (Full32< int16_t >, Vec32< int32_t > a, Vec32< int32_t > b)
template<size_t N>
HWY_API Vec128< float, N > | PromoteTo (Simd< float, N, 0 > df32, const Vec128< bfloat16_t, N > v)
template<typename From , typename To , HWY_IF_UNSIGNED(From) , HWY_IF_UNSIGNED(To) , hwy::EnableIf<(sizeof(To)< sizeof(From))> * = nullptr>
HWY_API Vec128< To, 1 > | TruncateTo (Simd< To, 1, 0 >, const Vec128< From, 1 > v)
HWY_API Vec128< uint8_t, 2 > | TruncateTo (Simd< uint8_t, 2, 0 >, const Vec128< uint64_t, 2 > v)
HWY_API Vec32< uint16_t > | TruncateTo (Simd< uint16_t, 2, 0 >, const Vec128< uint64_t, 2 > v)
HWY_API Vec64< uint32_t > | TruncateTo (Simd< uint32_t, 2, 0 >, const Vec128< uint64_t, 2 > v)
template<size_t N, hwy::EnableIf< N > = 2>
N | TruncateTo (Simd< uint8_t, N, 0 >, const Vec128< uint32_t, N > v)
template<size_t N, hwy::EnableIf< N > = 2>
N | TruncateTo (Simd< uint16_t, N, 0 >, const Vec128< uint32_t, N > v)
template<size_t N, hwy::EnableIf< N > = 2>
N | TruncateTo (Simd< uint8_t, N, 0 >, const Vec128< uint16_t, N > v)
HWY_API Vec128< int64_t > | MulEven (Vec128< int32_t > a, Vec128< int32_t > b)
HWY_API Vec128< uint64_t > | MulEven (Vec128< uint32_t > a, Vec128< uint32_t > b)
template<size_t N>
HWY_API Vec128< int64_t,(N+1)/2 > | MulEven (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<size_t N>
HWY_API Vec128< uint64_t,(N+1)/2 > | MulEven (const Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
HWY_INLINE Vec128< uint64_t > | MulEven (Vec128< uint64_t > a, Vec128< uint64_t > b)
HWY_INLINE Vec128< uint64_t > | MulOdd (Vec128< uint64_t > a, Vec128< uint64_t > b)
template<typename T , typename TI >
HWY_API Vec128< TI > | TableLookupBytes (const Vec128< T > bytes, const Vec128< TI > from)
template<typename T , typename TI , size_t NI, HWY_IF_LE64(TI, NI) >
HWY_API Vec128< TI, NI > | TableLookupBytes (const Vec128< T > bytes, const Vec128< TI, NI > from)
template<typename T , size_t N, typename TI , HWY_IF_LE64(T, N) >
HWY_API Vec128< TI > | TableLookupBytes (const Vec128< T, N > bytes, const Vec128< TI > from)
template<typename T , size_t N, typename TI , size_t NI, HWY_IF_LE64(T, N) , HWY_IF_LE64(TI, NI) >
HWY_API VFromD< Repartition< T, Simd< TI, NI, 0 > > > | TableLookupBytes (Vec128< T, N > bytes, Vec128< TI, NI > from)
template<class V , class VI >
HWY_API VI | TableLookupBytesOr0 (const V bytes, const VI from)
template<typename T , size_t N, typename Offset , HWY_IF_LE128(T, N) >
HWY_API void | ScatterOffset (Vec128< T, N > v, Simd< T, N, 0 > d, T *HWY_RESTRICT base, const Vec128< Offset, N > offset)
template<typename T , size_t N, typename Index , HWY_IF_LE128(T, N) >
HWY_API void | ScatterIndex (Vec128< T, N > v, Simd< T, N, 0 > d, T *HWY_RESTRICT base, const Vec128< Index, N > index)
template<typename T , size_t N, typename Offset >
HWY_API Vec128< T, N > | GatherOffset (const Simd< T, N, 0 > d, const T *HWY_RESTRICT base, const Vec128< Offset, N > offset)
template<typename T , size_t N, typename Index >
HWY_API Vec128< T, N > | GatherIndex (const Simd< T, N, 0 > d, const T *HWY_RESTRICT base, const Vec128< Index, N > index)
template<typename T , size_t N>
HWY_API Vec128< T, N > | SumOfLanes (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | MinOfLanes (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | MaxOfLanes (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_API Mask128< T, N > | LoadMaskBits (Simd< T, N, 0 > d, const uint8_t *HWY_RESTRICT bits)
template<typename T >
HWY_API size_t | CountTrue (Full128< T >, const Mask128< T > mask)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API size_t | CountTrue (Simd< T, N, 0 > d, const Mask128< T, N > mask)
template<typename T , size_t N>
HWY_API size_t | FindKnownFirstTrue (const Simd< T, N, 0 > d, const Mask128< T, N > mask)
template<typename T , size_t N>
HWY_API intptr_t | FindFirstTrue (const Simd< T, N, 0 > d, const Mask128< T, N > mask)
template<typename T , size_t N>
HWY_API size_t | StoreMaskBits (Simd< T, N, 0 >, const Mask128< T, N > mask, uint8_t *bits)
template<typename T , size_t N>
HWY_API bool | AllFalse (const Simd< T, N, 0 > d, const Mask128< T, N > m)
template<typename T >
HWY_API bool | AllTrue (const Full128< T > d, const Mask128< T > m)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API bool | AllTrue (const Simd< T, N, 0 > d, const Mask128< T, N > m)
template<typename T >
HWY_API Vec128< T, 1 > | Compress (Vec128< T, 1 > v, Mask128< T, 1 >)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec128< T, N > | Compress (Vec128< T, N > v, const Mask128< T, N > mask)
template<typename T >
HWY_API Vec128< T, 1 > | CompressNot (Vec128< T, 1 > v, Mask128< T, 1 >)
template<typename T , HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec128< T > | CompressNot (Vec128< T > v, Mask128< T > mask)
template<typename T , size_t N, HWY_IF_LANE_SIZE_ONE_OF(T, 0x14) >
HWY_API Vec128< T, N > | CompressNot (Vec128< T, N > v, Mask128< T, N > mask)
HWY_API Vec128< uint64_t > | CompressBlocksNot (Vec128< uint64_t > v, Mask128< uint64_t >)
template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >
HWY_INLINE Vec128< T, N > | CompressBits (Vec128< T, N > v, const uint8_t *HWY_RESTRICT bits)
template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >
HWY_API size_t | CompressStore (Vec128< T, N > v, const Mask128< T, N > mask, Simd< T, N, 0 > d, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >
HWY_API size_t | CompressBlendedStore (Vec128< T, N > v, Mask128< T, N > m, Simd< T, N, 0 > d, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >
HWY_API size_t | CompressBitsStore (Vec128< T, N > v, const uint8_t *HWY_RESTRICT bits, Simd< T, N, 0 > d, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, HWY_IF_LOAD_INT(T, N) >
HWY_API void | LoadInterleaved2 (Simd< T, N, 0 >, const T *HWY_RESTRICT unaligned, Vec128< T, N > &v0, Vec128< T, N > &v1)
template<typename T , size_t N, HWY_IF_LOAD_INT(T, N) >
HWY_API void | LoadInterleaved3 (Simd< T, N, 0 >, const T *HWY_RESTRICT unaligned, Vec128< T, N > &v0, Vec128< T, N > &v1, Vec128< T, N > &v2)
template<typename T , size_t N, HWY_IF_LOAD_INT(T, N) >
HWY_API void | LoadInterleaved4 (Simd< T, N, 0 >, const T *HWY_RESTRICT unaligned, Vec128< T, N > &v0, Vec128< T, N > &v1, Vec128< T, N > &v2, Vec128< T, N > &v3)
template<typename T , size_t N, HWY_IF_STORE_INT(T, N) >
HWY_API void | StoreInterleaved2 (const Vec128< T, N > v0, const Vec128< T, N > v1, Simd< T, N, 0 >, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, HWY_IF_STORE_INT(T, N) >
HWY_API void | StoreInterleaved3 (const Vec128< T, N > v0, const Vec128< T, N > v1, const Vec128< T, N > v2, Simd< T, N, 0 >, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, HWY_IF_STORE_INT(T, N) >
HWY_API void | StoreInterleaved4 (const Vec128< T, N > v0, const Vec128< T, N > v1, const Vec128< T, N > v2, const Vec128< T, N > v3, Simd< T, N, 0 >, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_INLINE Mask128< T, N > | Lt128 (Simd< T, N, 0 > d, Vec128< T, N > a, Vec128< T, N > b)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_INLINE Mask128< T, N > | Lt128Upper (Simd< T, N, 0 > d, Vec128< T, N > a, Vec128< T, N > b)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_INLINE Mask128< T, N > | Eq128 (Simd< T, N, 0 > d, Vec128< T, N > a, Vec128< T, N > b)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_INLINE Mask128< T, N > | Eq128Upper (Simd< T, N, 0 > d, Vec128< T, N > a, Vec128< T, N > b)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_INLINE Mask128< T, N > | Ne128 (Simd< T, N, 0 > d, Vec128< T, N > a, Vec128< T, N > b)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_INLINE Mask128< T, N > | Ne128Upper (Simd< T, N, 0 > d, Vec128< T, N > a, Vec128< T, N > b)
template<class D >
HWY_INLINE VFromD< D > | Min128 (D d, const VFromD< D > a, const VFromD< D > b)
template<class D >
HWY_INLINE VFromD< D > | Max128 (D d, const VFromD< D > a, const VFromD< D > b)
template<class D >
HWY_INLINE VFromD< D > | Min128Upper (D d, const VFromD< D > a, const VFromD< D > b)
template<class D >
HWY_INLINE VFromD< D > | Max128Upper (D d, const VFromD< D > a, const VFromD< D > b)
template<typename T , size_t N, int kPow2>
HWY_API constexpr size_t | Lanes (Simd< T, N, kPow2 >)
template<size_t N, int kPow2>
svuint16_t | Set (Simd< bfloat16_t, N, kPow2 > d, bfloat16_t arg)
template<class D >
VFromD< D > | Zero (D d)
template<class D , class FromV >
HWY_API VFromD< D > | BitCast (D d, FromV v)
template<class V , HWY_IF_FLOAT_V(V) >
HWY_API V | And (const V a, const V b)
template<class V , HWY_IF_FLOAT_V(V) >
HWY_API V | Or (const V a, const V b)
template<class V , HWY_IF_FLOAT_V(V) >
HWY_API V | Xor (const V a, const V b)
template<class V , HWY_IF_FLOAT_V(V) >
HWY_API V | AndNot (const V a, const V b)
template<class V , HWY_IF_FLOAT_V(V) >
HWY_API V | Xor3 (const V x1, const V x2, const V x3)
template<class V >
HWY_API V | Or3 (V o1, V o2, V o3)
template<class V >
HWY_API V | OrAnd (const V o, const V a1, const V a2)
template<class V >
HWY_API V | CopySign (const V magn, const V sign)
template<class V >
HWY_API V | CopySignToAbs (const V abs, const V sign)
HWY_API svuint64_t | SumsOf8 (const svuint8_t v)
template<int kBits, class V >
HWY_API V | RotateRight (const V v)
HWY_API svint16_t | MulFixedPoint15 (svint16_t a, svint16_t b)
template<class D , typename MFrom >
HWY_API svbool_t | RebindMask (const D, const MFrom mask)
HWY_API svbool_t | Not (svbool_t m)
HWY_API svbool_t | And (svbool_t a, svbool_t b)
HWY_API svbool_t | AndNot (svbool_t a, svbool_t b)
HWY_API svbool_t | Or (svbool_t a, svbool_t b)
HWY_API svbool_t | Xor (svbool_t a, svbool_t b)
HWY_API svbool_t | ExclusiveNeither (svbool_t a, svbool_t b)
template<class D >
HWY_API bool | AllFalse (D d, svbool_t m)
template<class D >
HWY_API bool | AllTrue (D d, svbool_t m)
template<class D >
HWY_API intptr_t | FindFirstTrue (D d, svbool_t m)
template<class D >
HWY_API size_t | FindKnownFirstTrue (D d, svbool_t m)
template<class V >
HWY_API V | IfThenElseZero (const svbool_t mask, const V yes)
template<class V >
HWY_API V | IfThenZeroElse (const svbool_t mask, const V no)
template<class V >
HWY_API svbool_t | Gt (const V a, const V b)
template<class V >
HWY_API svbool_t | Ge (const V a, const V b)
template<class V >
HWY_API svbool_t | TestBit (const V a, const V bit)
template<class V >
HWY_API svbool_t | MaskFromVec (const V v)
template<class D >
HWY_API VFromD< D > | VecFromMask (const D d, svbool_t mask)
template<class V , HWY_IF_FLOAT_V(V) >
HWY_API V | IfVecThenElse (const V mask, const V yes, const V no)
template<class V >
HWY_API svbool_t | IsNaN (const V v)
template<class V >
HWY_API svbool_t | IsInf (const V v)
template<class V >
HWY_API svbool_t | IsFinite (const V v)
template<size_t N, int kPow2>
HWY_API svuint16_t | Load (Simd< bfloat16_t, N, kPow2 > d, const bfloat16_t *HWY_RESTRICT p)
template<size_t N, int kPow2>
HWY_API void | Store (svuint16_t v, Simd< bfloat16_t, N, kPow2 > d, bfloat16_t *HWY_RESTRICT p)
template<class D >
HWY_API VFromD< D > | LoadU (D d, const TFromD< D > *HWY_RESTRICT p)
template<class V , class D >
HWY_API void | StoreU (const V v, D d, TFromD< D > *HWY_RESTRICT p)
template<size_t N, int kPow2>
HWY_API svuint32_t | PromoteTo (Simd< uint32_t, N, kPow2 > dto, svuint8_t vfrom)
template<size_t N, int kPow2>
HWY_API svint32_t | PromoteTo (Simd< int32_t, N, kPow2 > dto, svint8_t vfrom)
template<size_t N, int kPow2>
HWY_API svint16_t | PromoteTo (Simd< int16_t, N, kPow2 > dto, svuint8_t vfrom)
template<size_t N, int kPow2>
HWY_API svint32_t | PromoteTo (Simd< int32_t, N, kPow2 > dto, svuint16_t vfrom)
template<size_t N, int kPow2>
HWY_API svint32_t | PromoteTo (Simd< int32_t, N, kPow2 > dto, svuint8_t vfrom)
template<size_t N, int kPow2>
HWY_API svfloat32_t | PromoteTo (Simd< float32_t, N, kPow2 >, const svfloat16_t v)
template<size_t N, int kPow2>
HWY_API svfloat64_t | PromoteTo (Simd< float64_t, N, kPow2 >, const svfloat32_t v)
template<size_t N, int kPow2>
HWY_API svfloat64_t | PromoteTo (Simd< float64_t, N, kPow2 >, const svint32_t v)
template<size_t N, int kPow2>
HWY_API svuint8_t | DemoteTo (Simd< uint8_t, N, kPow2 > dn, const svint16_t v)
template<size_t N, int kPow2>
HWY_API svuint16_t | DemoteTo (Simd< uint16_t, N, kPow2 > dn, const svint32_t v)
template<size_t N, int kPow2>
HWY_API svuint8_t | DemoteTo (Simd< uint8_t, N, kPow2 > dn, const svint32_t v)
HWY_API svuint8_t | U8FromU32 (const svuint32_t v)
template<size_t N, int kPow2>
HWY_API svuint8_t | TruncateTo (Simd< uint8_t, N, kPow2 >, const svuint64_t v)
template<size_t N, int kPow2>
HWY_API svuint16_t | TruncateTo (Simd< uint16_t, N, kPow2 >, const svuint64_t v)
template<size_t N, int kPow2>
HWY_API svuint32_t | TruncateTo (Simd< uint32_t, N, kPow2 >, const svuint64_t v)
template<size_t N, int kPow2>
HWY_API svuint8_t | TruncateTo (Simd< uint8_t, N, kPow2 >, const svuint32_t v)
template<size_t N, int kPow2>
HWY_API svuint16_t | TruncateTo (Simd< uint16_t, N, kPow2 >, const svuint32_t v)
template<size_t N, int kPow2>
HWY_API svuint8_t | TruncateTo (Simd< uint8_t, N, kPow2 >, const svuint16_t v)
template<size_t N, int kPow2>
HWY_API svint8_t | DemoteTo (Simd< int8_t, N, kPow2 > dn, const svint16_t v)
template<size_t N, int kPow2>
HWY_API svint16_t | DemoteTo (Simd< int16_t, N, kPow2 > dn, const svint32_t v)
template<size_t N, int kPow2>
HWY_API svint8_t | DemoteTo (Simd< int8_t, N, kPow2 > dn, const svint32_t v)
template<class D >
HWY_API VFromD< D > | ConcatOdd (D d, VFromD< D > hi, VFromD< D > lo)
template<class D >
HWY_API VFromD< D > | ConcatEven (D d, VFromD< D > hi, VFromD< D > lo)
template<size_t N, int kPow2>
HWY_API svfloat16_t | DemoteTo (Simd< float16_t, N, kPow2 > d, const svfloat32_t v)
template<size_t N, int kPow2>
HWY_API svuint16_t | DemoteTo (Simd< bfloat16_t, N, kPow2 >, svfloat32_t v)
template<size_t N, int kPow2>
HWY_API svfloat32_t | DemoteTo (Simd< float32_t, N, kPow2 > d, const svfloat64_t v)
template<size_t N, int kPow2>
HWY_API svint32_t | DemoteTo (Simd< int32_t, N, kPow2 > d, const svfloat64_t v)
template<class VF , class DI = RebindToSigned<DFromV<VF>>>
HWY_API VFromD< DI > | NearestInt (VF v)
template<class D , HWY_IF_FLOAT_D(D) >
HWY_API VFromD< D > | Iota (const D d, TFromD< D > first)
template<class D , class V >
HWY_API V | InterleaveLower (D d, const V a, const V b)
template<class V >
HWY_API V | InterleaveLower (const V a, const V b)
template<class D , class V = VFromD<D>, hwy::EnableIf< detail::IsFull(D())> * = nullptr>
HWY_API V | InterleaveUpper (D d, const V a, const V b)
template<class D , class V >
HWY_API V | ConcatUpperLower (const D d, const V hi, const V lo)
template<class D , class V >
HWY_API V | ConcatLowerLower (const D d, const V hi, const V lo)
template<class D , class V >
HWY_API V | ConcatLowerUpper (const D d, const V hi, const V lo)
template<class D , class V >
HWY_API V | ConcatUpperUpper (const D d, const V hi, const V lo)
template<class D , class V2 >
HWY_API VFromD< D > | Combine (const D d, const V2 hi, const V2 lo)
template<class D , class V >
HWY_API V | ZeroExtendVector (const D d, const V lo)
template<class D2 , class V >
HWY_API V | LowerHalf (D2, const V v)
template<class V >
HWY_API V | LowerHalf (const V v)
template<class DH , class V >
HWY_API V | UpperHalf (const DH dh, const V v)
template<class D , class V >
V | SumOfLanes (D d, V v)
template<class D , class V >
V | MinOfLanes (D d, V v)
template<class D , class V >
V | MaxOfLanes (D d, V v)
template<class V >
HWY_API TFromV< V > | ExtractLane (V v, size_t i)
template<class V >
HWY_API V | InsertLane (const V v, size_t i, TFromV< V > t)
template<class V >
HWY_API V | DupEven (const V v)
template<class V >
HWY_API V | DupOdd (const V v)
template<class V , HWY_IF_FLOAT_V(V) >
HWY_API V | OddEven (const V odd, const V even)
template<class V >
HWY_API V | OddEvenBlocks (const V odd, const V even)
template<class D , class VI >
HWY_API VFromD< RebindToUnsigned< D > > | IndicesFromVec (D d, VI vec)
template<class D , typename TI >
HWY_API VFromD< RebindToUnsigned< D > > | SetTableIndices (D d, const TI *idx)
template<class V >
HWY_API V | SwapAdjacentBlocks (const V v)
template<class D , class V >
HWY_API V | Reverse (D d, V v)
template<class D , HWY_IF_LANE_SIZE_D(D, 2) >
HWY_API VFromD< D > | Reverse2 (D d, const VFromD< D > v)
template<class D >
HWY_API VFromD< D > | Reverse4 (D d, const VFromD< D > v)
template<class D >
HWY_API VFromD< D > | Reverse8 (D d, const VFromD< D > v)
template<class V , HWY_IF_LANE_SIZE_V(V, 8) >
HWY_API V | Compress (V v, svbool_t mask)
HWY_API svfloat16_t | Compress (svfloat16_t v, svbool_t mask16)
template<class V , typename T = TFromV<V>, HWY_IF_LANE_SIZE_ONE_OF(T, 0x14) >
HWY_API V | CompressNot (V v, const svbool_t mask)
template<class V , HWY_IF_LANE_SIZE_V(V, 8) >
HWY_API V | CompressNot (V v, svbool_t mask)
HWY_API svuint64_t | CompressBlocksNot (svuint64_t v, svbool_t mask)
template<class V , class D , HWY_IF_NOT_LANE_SIZE_D(D, 1) >
HWY_API size_t | CompressStore (const V v, const svbool_t mask, const D d, TFromD< D > *HWY_RESTRICT unaligned)
template<class V , class D , HWY_IF_NOT_LANE_SIZE_D(D, 1) >
HWY_API size_t | CompressBlendedStore (const V v, const svbool_t mask, const D d, TFromD< D > *HWY_RESTRICT unaligned)
template<size_t kBytes, class D , class V = VFromD<D>>
HWY_API V | CombineShiftRightBytes (const D d, const V hi, const V lo)
template<class V >
HWY_API V | Shuffle2301 (const V v)
template<class V >
HWY_API V | Shuffle2103 (const V v)
template<class V >
HWY_API V | Shuffle0321 (const V v)
template<class V >
HWY_API V | Shuffle1032 (const V v)
template<class V >
HWY_API V | Shuffle01 (const V v)
template<class V >
HWY_API V | Shuffle0123 (const V v)
template<class D , class V = VFromD<D>>
HWY_API V | ReverseBlocks (D d, V v)
template<class V , class VI >
HWY_API VI | TableLookupBytes (const V v, const VI idx)
template<int kLane, class V >
HWY_API V | Broadcast (const V v)
template<size_t kLanes, class D , class V = VFromD<D>>
HWY_API V | ShiftLeftLanes (D d, const V v)
template<size_t kLanes, class V >
HWY_API V | ShiftLeftLanes (const V v)
template<size_t kLanes, class D , class V = VFromD<D>>
HWY_API V | ShiftRightLanes (D d, V v)
template<int kBytes, class D , class V = VFromD<D>>
HWY_API V | ShiftLeftBytes (const D d, const V v)
template<int kBytes, class V >
HWY_API V | ShiftLeftBytes (const V v)
template<int kBytes, class D , class V = VFromD<D>>
HWY_API V | ShiftRightBytes (const D d, const V v)
template<class V , class DW = RepartitionToWide<DFromV<V>>>
HWY_API VFromD< DW > | ZipLower (DW dw, V a, V b)
template<class V , class D = DFromV<V>, class DW = RepartitionToWide<D>>
HWY_API VFromD< DW > | ZipLower (const V a, const V b)
template<class V , class DW = RepartitionToWide<DFromV<V>>>
HWY_API VFromD< DW > | ZipUpper (DW dw, V a, V b)
template<size_t N, int kPow2>
HWY_API svfloat32_t | PromoteTo (Simd< float32_t, N, kPow2 > df32, const svuint16_t v)
template<size_t N, int kPow2>
HWY_API svuint16_t | ReorderDemote2To (Simd< bfloat16_t, N, kPow2 > dbf16, svfloat32_t a, svfloat32_t b)
template<size_t N, int kPow2>
HWY_API svint16_t | ReorderDemote2To (Simd< int16_t, N, kPow2 > d16, svint32_t a, svint32_t b)
template<class V >
HWY_API V | ZeroIfNegative (const V v)
template<class V >
HWY_API V | BroadcastSignBit (const V v)
template<class V >
HWY_API V | IfNegativeThenElse (V v, V yes, V no)
template<class D , HWY_IF_LANE_SIZE_D(D, 1) >
HWY_INLINE svbool_t | LoadMaskBits (D d, const uint8_t *HWY_RESTRICT bits)
template<class D >
HWY_API size_t | StoreMaskBits (D d, svbool_t m, uint8_t *bits)
template<class V , class D = DFromV<V>, HWY_IF_NOT_LANE_SIZE_D(D, 1) >
HWY_INLINE V | CompressBits (V v, const uint8_t *HWY_RESTRICT bits)
template<class D , HWY_IF_NOT_LANE_SIZE_D(D, 1) >
HWY_API size_t | CompressBitsStore (VFromD< D > v, const uint8_t *HWY_RESTRICT bits, D d, TFromD< D > *HWY_RESTRICT unaligned)
template<class V , class DW = RepartitionToWide<DFromV<V>>>
HWY_API VFromD< DW > | MulEven (const V a, const V b)
HWY_API svuint64_t | MulEven (const svuint64_t a, const svuint64_t b)
HWY_API svuint64_t | MulOdd (const svuint64_t a, const svuint64_t b)
template<size_t N, int kPow2>
HWY_API svfloat32_t | ReorderWidenMulAccumulate (Simd< float, N, kPow2 > df32, svuint16_t a, svuint16_t b, const svfloat32_t sum0, svfloat32_t &sum1)
template<size_t N, int kPow2>
HWY_API svint32_t | ReorderWidenMulAccumulate (Simd< int32_t, N, kPow2 > d32, svint16_t a, svint16_t b, const svint32_t sum0, svint32_t &sum1)
template<class VW >
HWY_API VW | RearrangeToOddPlusEven (const VW sum0, const VW sum1)
template<class D >
HWY_INLINE svbool_t | Lt128 (D d, const svuint64_t a, const svuint64_t b)
template<class D >
HWY_INLINE svbool_t | Lt128Upper (D d, svuint64_t a, svuint64_t b)
template<class D >
HWY_INLINE svbool_t | Eq128 (D d, const svuint64_t a, const svuint64_t b)
template<class D >
HWY_INLINE svbool_t | Ne128 (D d, const svuint64_t a, const svuint64_t b)
template<class D >
HWY_INLINE svbool_t | Eq128Upper (D d, svuint64_t a, svuint64_t b)
template<class D >
HWY_INLINE svbool_t | Ne128Upper (D d, svuint64_t a, svuint64_t b)
template<class D >
HWY_INLINE svuint64_t | Min128 (D d, const svuint64_t a, const svuint64_t b)
template<class D >
HWY_INLINE svuint64_t | Max128 (D d, const svuint64_t a, const svuint64_t b)
template<class D >
HWY_INLINE svuint64_t | Min128Upper (D d, const svuint64_t a, const svuint64_t b)
template<class D >
HWY_INLINE svuint64_t | Max128Upper (D d, const svuint64_t a, const svuint64_t b)
template<typename T , size_t N, typename FromT , size_t FromN>
HWY_API Vec128< T, N > | BitCast (Simd< T, N, 0 >, Vec128< FromT, FromN > v)
template<typename T , size_t N, typename T2 >
HWY_API Vec128< T, N > | Set (Simd< T, N, 0 >, const T2 t)
template<typename T , size_t N, typename T2 >
HWY_API Vec128< T, N > | Iota (const Simd< T, N, 0 >, T2 first)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Not (const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | And (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | AndNot (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Or (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Xor (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | BroadcastSignBit (Vec128< T, N > v)
template<typename T , size_t N>
Vec128< T, N > | VecFromMask (const Mask128< T, N > mask)
template<typename T , size_t N>
Vec128< T, N > | VecFromMask (Simd< T, N, 0 >, const Mask128< T, N > mask)
template<typename T , size_t N>
HWY_API Vec128< T, N > | IfThenElse (const Mask128< T, N > mask, const Vec128< T, N > yes, const Vec128< T, N > no)
template<int kBits, typename T , size_t N>
HWY_API Vec128< T, N > | ShiftLeft (Vec128< T, N > v)
template<int kBits, typename T , size_t N>
HWY_API Vec128< T, N > | ShiftRight (Vec128< T, N > v)
template<int kBits, typename T , size_t N>
HWY_API Vec128< T, N > | RotateRight (const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | operator<< (Vec128< T, N > v, const Vec128< T, N > bits)
template<typename T , size_t N>
HWY_API Vec128< T, N > | operator>> (Vec128< T, N > v, const Vec128< T, N > bits)
template<typename T , size_t N>
HWY_API Vec128< T, N > | operator- (Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | operator+ (Vec128< T, N > a, const Vec128< T, N > b)
template<size_t N>
HWY_API Vec128< uint64_t,(N+7)/8 > | SumsOf8 (const Vec128< uint8_t, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | SaturatedAdd (Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | SaturatedSub (Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | AverageRound (Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Abs (Vec128< T, N > a)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Min (Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Max (Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Neg (Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | operator* (Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | operator/ (Vec128< T, N > a, const Vec128< T, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | MulHigh (Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | MulHigh (Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | MulFixedPoint15 (Vec128< int16_t, N > a, Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< int64_t,(N+1)/2 > | MulOdd (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<size_t N>
HWY_API Vec128< uint64_t,(N+1)/2 > | MulOdd (Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Vec128< float, N > | AbsDiff (Vec128< float, N > a, const Vec128< float, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | MulAdd (Vec128< T, N > mul, const Vec128< T, N > x, const Vec128< T, N > add)
template<typename T , size_t N>
HWY_API Vec128< T, N > | NegMulAdd (Vec128< T, N > mul, const Vec128< T, N > x, const Vec128< T, N > add)
template<typename T , size_t N>
HWY_API Vec128< T, N > | MulSub (Vec128< T, N > mul, const Vec128< T, N > x, const Vec128< T, N > sub)
template<typename T , size_t N>
HWY_API Vec128< T, N > | NegMulSub (Vec128< T, N > mul, const Vec128< T, N > x, const Vec128< T, N > sub)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Sqrt (Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Round (Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Trunc (Vec128< T, N > v)
template<typename Float , size_t N>
Vec128< Float, N > | Ceil (Vec128< Float, N > v)
template<typename Float , size_t N>
Vec128< Float, N > | Floor (Vec128< Float, N > v)
template<typename T , size_t N>
HWY_API Mask128< T, N > | IsInf (const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Mask128< T, N > | IsFinite (const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Mask128< T, N > | operator== (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Mask128< T, N > | operator!= (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Mask128< T, N > | TestBit (const Vec128< T, N > v, const Vec128< T, N > bit)
template<typename T , size_t N>
HWY_API Mask128< T, N > | operator< (const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API Mask128< T, N > | operator<= (const Vec128< T, N > a, const Vec128< T, N > b)
HWY_API Mask128< uint64_t > | Lt128 (Simd< uint64_t, 2, 0 >, Vec128< uint64_t > a, const Vec128< uint64_t > b)
HWY_API Mask128< uint64_t > | Lt128Upper (Simd< uint64_t, 2, 0 >, Vec128< uint64_t > a, const Vec128< uint64_t > b)
HWY_API Mask128< uint64_t > | Eq128 (Simd< uint64_t, 2, 0 >, Vec128< uint64_t > a, const Vec128< uint64_t > b)
HWY_API Mask128< uint64_t > | Ne128 (Simd< uint64_t, 2, 0 >, Vec128< uint64_t > a, const Vec128< uint64_t > b)
HWY_API Mask128< uint64_t > | Eq128Upper (Simd< uint64_t, 2, 0 >, Vec128< uint64_t > a, const Vec128< uint64_t > b)
HWY_API Mask128< uint64_t > | Ne128Upper (Simd< uint64_t, 2, 0 >, Vec128< uint64_t > a, const Vec128< uint64_t > b)
template<class D , class V = VFromD<D>>
HWY_API V | Min128 (D d, const V a, const V b)
template<class D , class V = VFromD<D>>
HWY_API V | Max128 (D d, const V a, const V b)
template<class D , class V = VFromD<D>>
HWY_API V | Min128Upper (D d, const V a, const V b)
template<class D , class V = VFromD<D>>
HWY_API V | Max128Upper (D d, const V a, const V b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | LoadU (Simd< T, N, 0 > d, const T *HWY_RESTRICT p)
template<typename T , size_t N>
HWY_API Vec128< T, N > | LoadDup128 (Simd< T, N, 0 > d, const T *HWY_RESTRICT aligned)
template<typename T , size_t N>
HWY_API void | StoreU (const Vec128< T, N > v, Simd< T, N, 0 > d, T *HWY_RESTRICT p)
template<typename T , size_t N>
HWY_API void | LoadInterleaved2 (Simd< T, N, 0 > d, const T *HWY_RESTRICT unaligned, Vec128< T, N > &v0, Vec128< T, N > &v1)
template<typename T , size_t N>
HWY_API void | LoadInterleaved3 (Simd< T, N, 0 > d, const T *HWY_RESTRICT unaligned, Vec128< T, N > &v0, Vec128< T, N > &v1, Vec128< T, N > &v2)
template<typename T , size_t N>
HWY_API void | LoadInterleaved4 (Simd< T, N, 0 > d, const T *HWY_RESTRICT unaligned, Vec128< T, N > &v0, Vec128< T, N > &v1, Vec128< T, N > &v2, Vec128< T, N > &v3)
template<typename T , size_t N>
HWY_API void | StoreInterleaved2 (const Vec128< T, N > v0, const Vec128< T, N > v1, Simd< T, N, 0 >, T *HWY_RESTRICT unaligned)
template<typename T , size_t N>
HWY_API void | StoreInterleaved3 (const Vec128< T, N > v0, const Vec128< T, N > v1, const Vec128< T, N > v2, Simd< T, N, 0 >, T *HWY_RESTRICT unaligned)
template<typename T , size_t N>
HWY_API void | StoreInterleaved4 (const Vec128< T, N > v0, const Vec128< T, N > v1, const Vec128< T, N > v2, const Vec128< T, N > v3, Simd< T, N, 0 >, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, typename Offset >
HWY_API void | ScatterOffset (Vec128< T, N > v, Simd< T, N, 0 >, T *base, const Vec128< Offset, N > offset)
template<typename T , size_t N, typename Index >
HWY_API void | ScatterIndex (Vec128< T, N > v, Simd< T, N, 0 >, T *HWY_RESTRICT base, const Vec128< Index, N > index)
template<typename T , size_t N, typename Offset >
HWY_API Vec128< T, N > | GatherOffset (Simd< T, N, 0 >, const T *base, const Vec128< Offset, N > offset)
template<typename FromT , typename ToT , size_t N>
HWY_API Vec128< ToT, N > | PromoteTo (Simd< ToT, N, 0 >, Vec128< FromT, N > from)
template<size_t N>
HWY_API Vec128< float, N > | DemoteTo (Simd< float, N, 0 >, Vec128< double, N > from)
template<size_t N>
HWY_API Vec128< int32_t, N > | DemoteTo (Simd< int32_t, N, 0 >, Vec128< double, N > from)
template<typename FromT , typename ToT , size_t N>
HWY_API Vec128< ToT, N > | DemoteTo (Simd< ToT, N, 0 >, Vec128< FromT, N > from)
template<size_t N>
HWY_API Vec128< int16_t, 2 *N > | ReorderDemote2To (Simd< int16_t, 2 *N, 0 >, Vec128< int32_t, N > a, Vec128< int32_t, N > b)
template<typename FromT , typename ToT , size_t N>
HWY_API Vec128< ToT, N > | ConvertTo (Simd< ToT, N, 0 > d, Vec128< FromT, N > from)
template<size_t N>
HWY_API Vec128< uint8_t, N > | U8FromU32 (const Vec128< uint32_t, N > v)
template<size_t N>
HWY_API Vec128< uint8_t, N > | TruncateTo (Simd< uint8_t, N, 0 >, const Vec128< uint64_t, N > v)
template<size_t N>
HWY_API Vec128< uint16_t, N > | TruncateTo (Simd< uint16_t, N, 0 >, const Vec128< uint64_t, N > v)
template<size_t N>
HWY_API Vec128< uint32_t, N > | TruncateTo (Simd< uint32_t, N, 0 >, const Vec128< uint64_t, N > v)
template<size_t N>
HWY_API Vec128< uint8_t, N > | TruncateTo (Simd< uint8_t, N, 0 >, const Vec128< uint32_t, N > v)
template<size_t N>
HWY_API Vec128< uint16_t, N > | TruncateTo (Simd< uint16_t, N, 0 >, const Vec128< uint32_t, N > v)
template<size_t N>
HWY_API Vec128< uint8_t, N > | TruncateTo (Simd< uint8_t, N, 0 >, const Vec128< uint16_t, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N/2 > | LowerHalf (Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N/2 > | UpperHalf (Simd< T, N/2, 0 >, Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Combine (Simd< T, N, 0 >, Vec128< T, N/2 > hi_half, Vec128< T, N/2 > lo_half)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ConcatLowerLower (Simd< T, N, 0 >, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ConcatUpperUpper (Simd< T, N, 0 >, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ConcatLowerUpper (Simd< T, N, 0 >, const Vec128< T, N > hi, const Vec128< T, N > lo)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ConcatEven (Simd< T, N, 0 >, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ConcatOdd (Simd< T, N, 0 >, Vec128< T, N > hi, Vec128< T, N > lo)
template<int kBytes, typename T , size_t N, class V = Vec128<T, N>>
HWY_API V | CombineShiftRightBytes (Simd< T, N, 0 >, V hi, V lo)
template<typename T , size_t N>
HWY_API T | GetLane (const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | InsertLane (Vec128< T, N > v, size_t i, T t)
template<typename T , size_t N>
HWY_API T | ExtractLane (const Vec128< T, N > v, size_t i)
template<typename T , size_t N>
HWY_API Vec128< T, N > | DupEven (Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | DupOdd (Vec128< T, N > v)
template<typename T , size_t N, typename TI >
HWY_API Indices128< T, N > | IndicesFromVec (Simd< T, N, 0 >, Vec128< TI, N > vec)
template<typename T , size_t N, typename TI >
HWY_API Indices128< T, N > | SetTableIndices (Simd< T, N, 0 > d, const TI *idx)
template<typename T , size_t N>
HWY_API Vec128< T, N > | ReverseBlocks (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Reverse (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Reverse2 (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Reverse4 (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Reverse8 (Simd< T, N, 0 >, const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Shuffle2301 (const Vec128< T, N > v)
template<int kLane, typename T , size_t N>
HWY_API Vec128< T, N > | Broadcast (Vec128< T, N > v)
template<typename T , size_t N, typename TI , size_t NI>
HWY_API Vec128< TI, NI > | TableLookupBytes (const Vec128< T, N > v, const Vec128< TI, NI > indices)
template<typename T , size_t N, typename TI , size_t NI>
HWY_API Vec128< TI, NI > | TableLookupBytesOr0 (const Vec128< T, N > v, const Vec128< TI, NI > indices)
template<typename T , size_t N>
HWY_API Vec128< T, N > | InterleaveLower (const Vec128< T, N > a, const Vec128< T, N > b)
template<class V >
HWY_API V | InterleaveLower (DFromV< V >, V a, V b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | InterleaveUpper (Simd< T, N, 0 >, const Vec128< T, N > a, const Vec128< T, N > b)
template<typename T , size_t N>
HWY_API bool | AllTrue (Simd< T, N, 0 >, const Mask128< T, N > mask)
template<typename T , size_t N>
HWY_API Mask128< T, N > | LoadMaskBits (Simd< T, N, 0 >, const uint8_t *HWY_RESTRICT bits)
template<typename T , size_t N>
HWY_API size_t | CountTrue (Simd< T, N, 0 >, const Mask128< T, N > mask)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Compress (Vec128< T, N > v, const Mask128< T, N > mask)
template<typename T , size_t N>
HWY_API Vec128< T, N > | CompressNot (Vec128< T, N > v, const Mask128< T, N > mask)
template<typename T , size_t N>
HWY_API Vec128< T, N > | CompressBits (Vec128< T, N > v, const uint8_t *HWY_RESTRICT bits)
template<typename T , size_t N>
HWY_API size_t | CompressStore (Vec128< T, N > v, const Mask128< T, N > mask, Simd< T, N, 0 >, T *HWY_RESTRICT unaligned)
template<typename T , size_t N>
HWY_API size_t | CompressBlendedStore (Vec128< T, N > v, const Mask128< T, N > mask, Simd< T, N, 0 > d, T *HWY_RESTRICT unaligned)
template<typename T , size_t N>
HWY_API size_t | CompressBitsStore (Vec128< T, N > v, const uint8_t *HWY_RESTRICT bits, Simd< T, N, 0 > d, T *HWY_RESTRICT unaligned)
template<size_t N>
HWY_API Vec128< int32_t, N > | ReorderWidenMulAccumulate (Simd< int32_t, N, 0 > d32, Vec128< int16_t, 2 *N > a, Vec128< int16_t, 2 *N > b, const Vec128< int32_t, N > sum0, Vec128< int32_t, N > &sum1)
template<class V >
HWY_API V | Clamp (const V v, const V lo, const V hi)
template<class D >
HWY_API Vec< D > | SignBit (D d)
template<class D >
HWY_API Vec< D > | NaN (D d)
template<class D >
HWY_API Vec< D > | Inf (D d)
template<class D , typename T = TFromD<D>>
HWY_API void | SafeFillN (const size_t num, const T value, D d, T *HWY_RESTRICT to)
template<class D , typename T = TFromD<D>>
HWY_API void | SafeCopyN (const size_t num, D d, const T *HWY_RESTRICT from, T *HWY_RESTRICT to)
template<typename T , size_t N, class V >
HWY_API void | LoadInterleaved2 (Simd< T, N, 0 > d, const T *HWY_RESTRICT unaligned, V &v0, V &v1)
template<typename T , class V >
HWY_API void | LoadInterleaved2 (Simd< T, 1, 0 > d, const T *HWY_RESTRICT unaligned, V &v0, V &v1)
template<typename T , size_t N, class V , HWY_IF_LANES_PER_BLOCK(T, N, 16) >
HWY_API void | LoadInterleaved3 (Simd< T, N, 0 > d, const T *HWY_RESTRICT unaligned, V &v0, V &v1, V &v2)
template<typename T , size_t N, class V , HWY_IF_LANE_SIZE(T, 1) , HWY_IF_LANES_PER_BLOCK(T, N, 8) >
HWY_API void | LoadInterleaved3 (Simd< T, N, 0 > d, const T *HWY_RESTRICT unaligned, V &v0, V &v1, V &v2)
template<typename T , class V >
HWY_API void | LoadInterleaved3 (Simd< T, 1, 0 > d, const T *HWY_RESTRICT unaligned, V &v0, V &v1, V &v2)
template<typename T , size_t N, class V , HWY_IF_LANES_PER_BLOCK(T, N, 16) >
HWY_API void | LoadInterleaved4 (Simd< T, N, 0 > d, const T *HWY_RESTRICT unaligned, V &v0, V &v1, V &v2, V &v3)
template<typename T , class V >
HWY_API void | LoadInterleaved4 (Simd< T, 1, 0 > d, const T *HWY_RESTRICT unaligned, V &v0, V &v1, V &v2, V &v3)
template<typename T , size_t N, class V , HWY_IF_GE128(T, N) >
HWY_API void | StoreInterleaved2 (const V v0, const V v1, Simd< T, N, 0 > d, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, class V , HWY_IF_LANE_SIZE(T, 1) , HWY_IF_GE128(T, N) >
HWY_API void | StoreInterleaved3 (const V v0, const V v1, const V v2, Simd< T, N, 0 > d, T *HWY_RESTRICT unaligned)
template<class V , typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API void | StoreInterleaved3 (const V part0, const V part1, const V part2, Full64< T > d, T *HWY_RESTRICT unaligned)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API void | StoreInterleaved3 (const Vec64< T > part0, const Vec64< T > part1, const Vec64< T > part2, Full64< T > dh, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) , HWY_IF_LE32(T, N) >
HWY_API void | StoreInterleaved3 (const Vec128< T, N > part0, const Vec128< T, N > part1, const Vec128< T, N > part2, Simd< T, N, 0 >, T *HWY_RESTRICT unaligned)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API void | StoreInterleaved3 (const Vec128< T, 2 > part0, const Vec128< T, 2 > part1, const Vec128< T, 2 > part2, Simd< T, 2, 0 >, T *HWY_RESTRICT unaligned)
template<typename T >
HWY_API void | StoreInterleaved3 (const Vec128< T, 1 > v0, const Vec128< T, 1 > v1, const Vec128< T, 1 > v2, Simd< T, 1, 0 > d, T *HWY_RESTRICT unaligned)
template<typename T , size_t N, class V , HWY_IF_NOT_LANE_SIZE(T, 8) , HWY_IF_GE128(T, N) >
HWY_API void | StoreInterleaved4 (const V v0, const V v1, const V v2, const V v3, Simd< T, N, 0 > d, T *HWY_RESTRICT unaligned)
template<typename T , HWY_IF_NOT_LANE_SIZE(T, 8) >
HWY_API void | StoreInterleaved4 (const Vec64< T > part0, const Vec64< T > part1, const Vec64< T > part2, const Vec64< T > part3, Full64< T >, T *HWY_RESTRICT unaligned)
template<typename V , class D = DFromV<V>, HWY_IF_LANE_SIZE_D(D, 1) , HWY_IF_GE128_D(D) , HWY_IF_POW2_GE(D, HWY_MIN_POW2_FOR_128) >
HWY_API V | PopulationCount (V v)
template<typename V , class D = DFromV<V>, HWY_IF_LANE_SIZE_D(D, 2) >
HWY_API V | PopulationCount (V v)
template<class V , class D = DFromV<V>, HWY_IF_LANE_SIZE_D(D, 8) , HWY_IF_LT128_D(D) , HWY_IF_FLOAT_D(D) >
HWY_API V | operator* (V x, V y)
template<class V , class D64 = DFromV<V>, typename T = LaneType<V>, HWY_IF_LANE_SIZE(T, 8) , HWY_IF_UNSIGNED(T) , HWY_IF_GE128_D(D64) >
HWY_API V | operator* (V x, V y)
template<class V , class D , typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API size_t | CompressBitsStore (V v, const uint8_t *HWY_RESTRICT bits, D d, T *unaligned)
template<class V , class M , class D , typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API size_t | CompressStore (V v, M mask, D d, T *HWY_RESTRICT unaligned)
template<class V , class M , class D , typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API size_t | CompressBlendedStore (V v, M mask, D d, T *HWY_RESTRICT unaligned)
template<class V , class M , typename T = TFromV<V>, HWY_IF_LANE_SIZE(T, 1) >
HWY_API V | Compress (V v, const M mask)
template<class V , typename T = TFromV<V>, HWY_IF_LANE_SIZE(T, 1) >
HWY_API V | CompressBits (V v, const uint8_t *HWY_RESTRICT bits)
template<class V , class M , typename T = TFromV<V>, HWY_IF_LANE_SIZE(T, 1) >
HWY_API V | CompressNot (V v, M mask)
template<typename T , size_t N, int kPow2>
constexpr size_t | MLenFromD (Simd< T, N, kPow2 >)
template<size_t N, int kPow2>
HWY_API size_t | Lanes (Simd< bfloat16_t, N, kPow2 >)
template<size_t N, int kPow2>
decltype(Set(Simd< uint16_t, N, kPow2 >(), 0)) | Set (Simd< bfloat16_t, N, kPow2 > d, bfloat16_t arg)
template<class D >
HWY_API VFromD< D > | Zero (D d)
template<class D >
HWY_API VFromD< D > | Undefined (D d)
template<class V , HWY_IF_FLOAT_V(V) >
HWY_API V | Not (const V v)
template<class V >
HWY_API V | AndNot (const V not_a, const V b)
template<class V >
HWY_API V | Xor3 (V x1, V x2, V x3)
template<class VU8 >
HWY_API VFromD< Repartition< uint64_t, DFromV< VU8 > > > | SumsOf8 (const VU8 v)
template<class V >
HWY_API auto | Ge (const V a, const V b) -> decltype(Le(a, b))
template<class V >
HWY_API auto | Gt (const V a, const V b) -> decltype(Lt(a, b))
template<class V >
HWY_API auto | TestBit (const V a, const V bit) -> decltype(Eq(a, bit))
template<class M , class V >
HWY_API V | IfThenElseZero (const M mask, const V yes)
template<class V >
HWY_API auto | MaskFromVec (const V v) -> decltype(Eq(v, v))
template<class D , typename MFrom >
HWY_API MFromD< D > | RebindMask (const D, const MFrom mask)
template<class D , HWY_IF_NOT_FLOAT_D(D) >
HWY_API VFromD< D > | VecFromMask (const D d, MFromD< D > mask)
template<class V >
HWY_API V | IfVecThenElse (const V mask, const V yes, const V no)
template<class D >
HWY_API bool | AllFalse (D d, MFromD< D > m)
template<size_t N, int kPow2>
HWY_API VFromD< Simd< uint16_t, N, kPow2 > > | Load (Simd< bfloat16_t, N, kPow2 > d, const bfloat16_t *HWY_RESTRICT p)
template<size_t N, int kPow2>
HWY_API void | Store (VFromD< Simd< uint16_t, N, kPow2 > > v, Simd< bfloat16_t, N, kPow2 > d, bfloat16_t *HWY_RESTRICT p)
template<class V , class D , typename T >
HWY_API void | Stream (const V v, D d, T *HWY_RESTRICT aligned)
template<class D , HWY_IF_LANE_SIZE_D(D, 4) >
HWY_API void | ScatterIndex (VFromD< D > v, D d, TFromD< D > *HWY_RESTRICT base, const VFromD< RebindToSigned< D > > index)
template<class D , HWY_IF_LANE_SIZE_D(D, 4) >
HWY_API VFromD< D > | GatherIndex (D d, const TFromD< D > *HWY_RESTRICT base, const VFromD< RebindToSigned< D > > index)
template<size_t N, int kPow2>
HWY_API auto | PromoteTo (Simd< int16_t, N, kPow2 > d, VFromD< Rebind< uint8_t, decltype(d)> > v) -> VFromD< decltype(d)>
template<size_t N, int kPow2>
HWY_API auto | PromoteTo (Simd< int32_t, N, kPow2 > d, VFromD< Rebind< uint8_t, decltype(d)> > v) -> VFromD< decltype(d)>
template<size_t N, int kPow2>
HWY_API auto | PromoteTo (Simd< int32_t, N, kPow2 > d, VFromD< Rebind< uint16_t, decltype(d)> > v) -> VFromD< decltype(d)>
template<size_t N, int kPow2>
HWY_API auto | PromoteTo (Simd< float32_t, N, kPow2 > d, VFromD< Rebind< bfloat16_t, decltype(d)> > v) -> VFromD< decltype(d)>
template<size_t N>
HWY_API vuint8mf8_t | DemoteTo (Simd< uint8_t, N, -3 > d, const vint32mf2_t v)
template<size_t N>
HWY_API vuint8mf4_t | DemoteTo (Simd< uint8_t, N, -2 > d, const vint32m1_t v)
template<size_t N>
HWY_API vuint8mf2_t | DemoteTo (Simd< uint8_t, N, -1 > d, const vint32m2_t v)
template<size_t N>
HWY_API vuint8m1_t | DemoteTo (Simd< uint8_t, N, 0 > d, const vint32m4_t v)
template<size_t N>
HWY_API vuint8m2_t | DemoteTo (Simd< uint8_t, N, 1 > d, const vint32m8_t v)
HWY_API vuint8mf8_t | U8FromU32 (const vuint32mf2_t v)
HWY_API vuint8mf4_t | U8FromU32 (const vuint32m1_t v)
HWY_API vuint8mf2_t | U8FromU32 (const vuint32m2_t v)
HWY_API vuint8m1_t | U8FromU32 (const vuint32m4_t v)
HWY_API vuint8m2_t | U8FromU32 (const vuint32m8_t v)
template<size_t N>
HWY_API vuint8mf8_t | TruncateTo (Simd< uint8_t, N, -3 > d, const VFromD< Simd< uint64_t, N, 0 > > v)
template<size_t N>
HWY_API vuint8mf4_t | TruncateTo (Simd< uint8_t, N, -2 > d, const VFromD< Simd< uint64_t, N, 1 > > v)
template<size_t N>
HWY_API vuint8mf2_t | TruncateTo (Simd< uint8_t, N, -1 > d, const VFromD< Simd< uint64_t, N, 2 > > v)
template<size_t N>
HWY_API vuint8m1_t | TruncateTo (Simd< uint8_t, N, 0 > d, const VFromD< Simd< uint64_t, N, 3 > > v)
template<size_t N>
HWY_API vuint16mf4_t | TruncateTo (Simd< uint16_t, N, -2 > d, const VFromD< Simd< uint64_t, N, 0 > > v)
template<size_t N>
HWY_API vuint16mf2_t | TruncateTo (Simd< uint16_t, N, -1 > d, const VFromD< Simd< uint64_t, N, 1 > > v)
template<size_t N>
HWY_API vuint16m1_t | TruncateTo (Simd< uint16_t, N, 0 > d, const VFromD< Simd< uint64_t, N, 2 > > v)
template<size_t N>
HWY_API vuint16m2_t | TruncateTo (Simd< uint16_t, N, 1 > d, const VFromD< Simd< uint64_t, N, 3 > > v)
template<size_t N>
HWY_API vuint32mf2_t | TruncateTo (Simd< uint32_t, N, -1 > d, const VFromD< Simd< uint64_t, N, 0 > > v)
template<size_t N>
HWY_API vuint32m1_t | TruncateTo (Simd< uint32_t, N, 0 > d, const VFromD< Simd< uint64_t, N, 1 > > v)
template<size_t N>
HWY_API vuint32m2_t | TruncateTo (Simd< uint32_t, N, 1 > d, const VFromD< Simd< uint64_t, N, 2 > > v)
template<size_t N>
HWY_API vuint32m4_t | TruncateTo (Simd< uint32_t, N, 2 > d, const VFromD< Simd< uint64_t, N, 3 > > v)
template<size_t N>
HWY_API vuint8mf8_t | TruncateTo (Simd< uint8_t, N, -3 > d, const VFromD< Simd< uint32_t, N, -1 > > v)
template<size_t N>
HWY_API vuint8mf4_t | TruncateTo (Simd< uint8_t, N, -2 > d, const VFromD< Simd< uint32_t, N, 0 > > v)
template<size_t N>
HWY_API vuint8mf2_t | TruncateTo (Simd< uint8_t, N, -1 > d, const VFromD< Simd< uint32_t, N, 1 > > v)
template<size_t N>
HWY_API vuint8m1_t | TruncateTo (Simd< uint8_t, N, 0 > d, const VFromD< Simd< uint32_t, N, 2 > > v)
template<size_t N>
HWY_API vuint8m2_t | TruncateTo (Simd< uint8_t, N, 1 > d, const VFromD< Simd< uint32_t, N, 3 > > v)
template<size_t N>
HWY_API vuint16mf4_t | TruncateTo (Simd< uint16_t, N, -2 > d, const VFromD< Simd< uint32_t, N, -1 > > v)
template<size_t N>
HWY_API vuint16mf2_t | TruncateTo (Simd< uint16_t, N, -1 > d, const VFromD< Simd< uint32_t, N, 0 > > v)
template<size_t N>
HWY_API vuint16m1_t | TruncateTo (Simd< uint16_t, N, 0 > d, const VFromD< Simd< uint32_t, N, 1 > > v)
template<size_t N>
HWY_API vuint16m2_t | TruncateTo (Simd< uint16_t, N, 1 > d, const VFromD< Simd< uint32_t, N, 2 > > v)
template<size_t N>
HWY_API vuint16m4_t | TruncateTo (Simd< uint16_t, N, 2 > d, const VFromD< Simd< uint32_t, N, 3 > > v)
template<size_t N>
HWY_API vuint8mf8_t | TruncateTo (Simd< uint8_t, N, -3 > d, const VFromD< Simd< uint16_t, N, -2 > > v)
template<size_t N>
HWY_API vuint8mf4_t | TruncateTo (Simd< uint8_t, N, -2 > d, const VFromD< Simd< uint16_t, N, -1 > > v)
template<size_t N>
HWY_API vuint8mf2_t | TruncateTo (Simd< uint8_t, N, -1 > d, const VFromD< Simd< uint16_t, N, 0 > > v)
template<size_t N>
HWY_API vuint8m1_t | TruncateTo (Simd< uint8_t, N, 0 > d, const VFromD< Simd< uint16_t, N, 1 > > v)
template<size_t N>
HWY_API vuint8m2_t | TruncateTo (Simd< uint8_t, N, 1 > d, const VFromD< Simd< uint16_t, N, 2 > > v)
template<size_t N>
HWY_API vuint8m4_t | TruncateTo (Simd< uint8_t, N, 2 > d, const VFromD< Simd< uint16_t, N, 3 > > v)
template<size_t N>
HWY_API vint8mf8_t | DemoteTo (Simd< int8_t, N, -3 > d, const vint32mf2_t v)
template<size_t N>
HWY_API vint8mf4_t | DemoteTo (Simd< int8_t, N, -2 > d, const vint32m1_t v)
template<size_t N>
HWY_API vint8mf2_t | DemoteTo (Simd< int8_t, N, -1 > d, const vint32m2_t v)
template<size_t N>
HWY_API vint8m1_t | DemoteTo (Simd< int8_t, N, 0 > d, const vint32m4_t v)
template<size_t N>
HWY_API vint8m2_t | DemoteTo (Simd< int8_t, N, 1 > d, const vint32m8_t v)
| HWY_RVV_FOREACH_F64 (HWY_RVV_DEMOTE_F, DemoteTo, vfncvt_rod_f_f_w_f, _DEMOTE_VIRT) template< size_t N > HWY_API vint32mf2_t DemoteTo(Simd< int32_t
template<size_t N>
HWY_API vint32mf2_t | DemoteTo (Simd< int32_t, N, -1 > d, const vfloat64m1_t v)
template<size_t N>
HWY_API vint32m1_t | DemoteTo (Simd< int32_t, N, 0 > d, const vfloat64m2_t v)
template<size_t N>
HWY_API vint32m2_t | DemoteTo (Simd< int32_t, N, 1 > d, const vfloat64m4_t v)
template<size_t N>
HWY_API vint32m4_t | DemoteTo (Simd< int32_t, N, 2 > d, const vfloat64m8_t v)
template<size_t N, int kPow2>
HWY_API VFromD< Simd< uint16_t, N, kPow2 > > | DemoteTo (Simd< bfloat16_t, N, kPow2 > d, VFromD< Simd< float, N, kPow2+1 > > v)
template<class D2 , class V >
HWY_API VFromD< D2 > | Combine (D2 d2, const V hi, const V lo)
template<class D2 , class V >
HWY_API VFromD< D2 > | ZeroExtendVector (D2 d2, const V lo)
template<class DH , hwy::EnableIf< detail::IsSupportedLMUL(DH())> * = nullptr>
HWY_API VFromD< DH > | LowerHalf (const DH, const VFromD< Twice< DH > > v)
template<class DH , class V , hwy::EnableIf<!detail::IsSupportedLMUL(DH())> * = nullptr>
HWY_API V | LowerHalf (const DH, const V v)
template<class V >
HWY_API VFromD< Half< DFromV< V > > > | LowerHalf (const V v)
template<class DH >
HWY_API VFromD< DH > | UpperHalf (const DH d2, const VFromD< Twice< DH > > v)
template<class V , HWY_IF_NOT_LANE_SIZE_V(V, 1) >
HWY_API V | InsertLane (const V v, size_t i, TFromV< V > t)
template<class V >
HWY_API V | OddEven (const V a, const V b)
template<class D , class V >
HWY_API V | ConcatOdd (D d, const V hi, const V lo)
template<class D , class V >
HWY_API V | ConcatEven (D d, const V hi, const V lo)
template<class D >
HWY_API VFromD< D > | Reverse (D, VFromD< D > v)
template<class D , HWY_IF_LANE_SIZE_D(D, 2) , HWY_RVV_IF_POW2_IN(D, -1, 3) >
HWY_API VFromD< D > | Reverse2 (D d, const VFromD< D > v)
template<class D , class V = VFromD<D>, HWY_IF_LANE_SIZE_D(D, 8) >
HWY_API V | Reverse2 (D, const V v)
template<class V , class M >
HWY_API V | CompressNot (V v, const M mask)
template<class V , class M >
HWY_API V | CompressBlocksNot (V v, const M mask)
template<class V , class M , class D >
HWY_API size_t | CompressStore (const V v, const M mask, const D d, TFromD< D > *HWY_RESTRICT unaligned)
template<class V , class M , class D >
HWY_API size_t | CompressBlendedStore (const V v, const M mask, const D d, TFromD< D > *HWY_RESTRICT unaligned)
template<size_t kLanes, class D , class V = VFromD<D>>
HWY_API V | CombineShiftRightLanes (const D d, const V hi, V lo)
template<class VT , class VI >
HWY_API VI | TableLookupBytes (const VT vt, const VI vi)
template<class VT , class VI >
HWY_API VI | TableLookupBytesOr0 (const VT vt, const VI idx)
template<int kBytes, class D >
HWY_API VFromD< D > | ShiftLeftBytes (D d, const VFromD< D > v)
template<size_t kLanes, typename T , size_t N, int kPow2, class V = VFromD<Simd<T, N, kPow2>>>
HWY_API V | ShiftRightLanes (const Simd< T, N, kPow2 > d, V v)
template<class D , class V >
HWY_API V | InterleaveUpper (const D d, const V a, const V b)
template<class D >
HWY_API VFromD< D > | SumOfLanes (D d, const VFromD< D > v)
template<class D >
HWY_API VFromD< D > | MinOfLanes (D d, const VFromD< D > v)
template<class D >
HWY_API VFromD< D > | MaxOfLanes (D d, const VFromD< D > v)
template<class V >
decltype(MaskFromVec(v)) HWY_API V | Round (const V v)
template<class V >
HWY_API V | Trunc (const V v)
template<class V >
HWY_API V | Ceil (const V v)
template<class V >
HWY_API V | Floor (const V v)
template<class V >
HWY_API MFromD< DFromV< V > > | IsNaN (const V v)
template<class V , class D = DFromV<V>>
HWY_API MFromD< D > | IsInf (const V v)
template<class V , class D = DFromV<V>>
HWY_API MFromD< D > | IsFinite (const V v)
template<class V , HWY_IF_LANE_SIZE_V(V, 4) , class D = DFromV<V>, class DW = RepartitionToWide<D>>
HWY_API VFromD< DW > | MulEven (const V a, const V b)
template<class V , HWY_IF_LANE_SIZE_V(V, 8) >
HWY_INLINE V | MulEven (const V a, const V b)
template<class V , HWY_IF_LANE_SIZE_V(V, 8) >
HWY_INLINE V | MulOdd (const V a, const V b)
template<size_t N, int kPow2>
HWY_API VFromD< Simd< uint16_t, N, kPow2 > > | ReorderDemote2To (Simd< bfloat16_t, N, kPow2 > dbf16, VFromD< RepartitionToWide< decltype(dbf16)> > a, VFromD< RepartitionToWide< decltype(dbf16)> > b)
template<size_t N, int kPow2, hwy::EnableIf<(kPow2< 3)> * = nullptr, class D32 = RepartitionToWide<Simd<int16_t, N, kPow2>>>
HWY_API VFromD< Simd< int16_t, N, kPow2 > > | ReorderDemote2To (Simd< int16_t, N, kPow2 > d16, VFromD< D32 > a, VFromD< D32 > b)
template<size_t N, class V32 = VFromD<RepartitionToWide<Simd<int16_t, N, 3>>>>
HWY_API VFromD< Simd< int16_t, N, 3 > > | ReorderDemote2To (Simd< int16_t, N, 3 > d16, V32 a, V32 b)
template<size_t N, int kPow2, class VN , class VW >
HWY_API VW | ReorderWidenMulAccumulate (Simd< float, N, kPow2 > d32, VN a, VN b, const VW sum0, VW &sum1)
template<size_t N, int kPow2, class VN , class VW >
HWY_API VW | ReorderWidenMulAccumulate (Simd< int32_t, N, kPow2 > d32, VN a, VN b, const VW sum0, VW &sum1)
template<class VW , HWY_IF_SIGNED_V(VW) >
HWY_API VW | RearrangeToOddPlusEven (const VW sum0, const VW sum1)
HWY_API vint32m8_t | RearrangeToOddPlusEven (vint32m8_t sum0, vint32m8_t sum1)
template<class D >
HWY_INLINE MFromD< D > | Lt128 (D d, const VFromD< D > a, const VFromD< D > b)
template<class D >
HWY_INLINE MFromD< D > | Lt128Upper (D d, const VFromD< D > a, const VFromD< D > b)
template<class D >
HWY_INLINE MFromD< D > | Eq128 (D d, const VFromD< D > a, const VFromD< D > b)
template<class D >
HWY_INLINE MFromD< D > | Eq128Upper (D d, const VFromD< D > a, const VFromD< D > b)
template<class D >
HWY_INLINE MFromD< D > | Ne128 (D d, const VFromD< D > a, const VFromD< D > b)
template<class D >
HWY_INLINE MFromD< D > | Ne128Upper (D d, const VFromD< D > a, const VFromD< D > b)
template<typename T , typename FromT >
HWY_API Vec1< T > | BitCast (Sisd< T >, Vec1< FromT > v)
template<typename T >
HWY_API Vec1< T > | Zero (Sisd< T >)
template<typename T , typename T2 >
HWY_API Vec1< T > | Set (Sisd< T >, const T2 t)
template<typename T >
HWY_API Vec1< T > | Undefined (Sisd< T > d)
template<typename T , typename T2 >
HWY_API Vec1< T > | Iota (const Sisd< T >, const T2 first)
template<typename T >
HWY_API Vec1< T > | Not (const Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | And (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Vec1< T > | operator& (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Vec1< T > | AndNot (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Vec1< T > | Or (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Vec1< T > | operator| (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Vec1< T > | Xor (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Vec1< T > | operator^ (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Vec1< T > | Xor3 (Vec1< T > x1, Vec1< T > x2, Vec1< T > x3)
template<typename T >
HWY_API Vec1< T > | Or3 (Vec1< T > o1, Vec1< T > o2, Vec1< T > o3)
template<typename T >
HWY_API Vec1< T > | OrAnd (const Vec1< T > o, const Vec1< T > a1, const Vec1< T > a2)
template<typename T >
HWY_API Vec1< T > | IfVecThenElse (Vec1< T > mask, Vec1< T > yes, Vec1< T > no)
template<typename T >
HWY_API Vec1< T > | CopySign (const Vec1< T > magn, const Vec1< T > sign)
template<typename T >
HWY_API Vec1< T > | CopySignToAbs (const Vec1< T > abs, const Vec1< T > sign)
template<typename T >
HWY_API Vec1< T > | BroadcastSignBit (const Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | PopulationCount (Vec1< T > v)
template<typename TFrom , typename TTo >
HWY_API Mask1< TTo > | RebindMask (Sisd< TTo >, Mask1< TFrom > m)
template<typename T >
HWY_API Mask1< T > | MaskFromVec (const Vec1< T > v)
template<typename T >
Vec1< T > | VecFromMask (const Mask1< T > mask)
template<typename T >
Vec1< T > | VecFromMask (Sisd< T >, const Mask1< T > mask)
template<typename T >
HWY_API Mask1< T > | FirstN (Sisd< T >, size_t n)
template<typename T >
HWY_API Vec1< T > | IfThenElse (const Mask1< T > mask, const Vec1< T > yes, const Vec1< T > no)
template<typename T >
HWY_API Vec1< T > | IfThenElseZero (const Mask1< T > mask, const Vec1< T > yes)
template<typename T >
HWY_API Vec1< T > | IfThenZeroElse (const Mask1< T > mask, const Vec1< T > no)
template<typename T >
HWY_API Vec1< T > | IfNegativeThenElse (Vec1< T > v, Vec1< T > yes, Vec1< T > no)
template<typename T >
HWY_API Vec1< T > | ZeroIfNegative (const Vec1< T > v)
template<typename T >
HWY_API Mask1< T > | Not (const Mask1< T > m)
template<typename T >
HWY_API Mask1< T > | And (const Mask1< T > a, Mask1< T > b)
template<typename T >
HWY_API Mask1< T > | AndNot (const Mask1< T > a, Mask1< T > b)
template<typename T >
HWY_API Mask1< T > | Or (const Mask1< T > a, Mask1< T > b)
template<typename T >
HWY_API Mask1< T > | Xor (const Mask1< T > a, Mask1< T > b)
template<typename T >
HWY_API Mask1< T > | ExclusiveNeither (const Mask1< T > a, Mask1< T > b)
template<int kBits, typename T >
HWY_API Vec1< T > | ShiftLeft (const Vec1< T > v)
template<int kBits, typename T >
HWY_API Vec1< T > | ShiftRight (const Vec1< T > v)
template<int kBits, typename T >
HWY_API Vec1< T > | RotateRight (const Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | ShiftLeftSame (const Vec1< T > v, int bits)
template<typename T >
HWY_API Vec1< T > | ShiftRightSame (const Vec1< T > v, int bits)
template<typename T >
HWY_API Vec1< T > | operator<< (const Vec1< T > v, const Vec1< T > bits)
template<typename T >
HWY_API Vec1< T > | operator>> (const Vec1< T > v, const Vec1< T > bits)
template<typename T >
HWY_API Vec1< T > | operator+ (Vec1< T > a, Vec1< T > b)
HWY_API Vec1< float > | operator+ (const Vec1< float > a, const Vec1< float > b)
HWY_API Vec1< double > | operator+ (const Vec1< double > a, const Vec1< double > b)
template<typename T >
HWY_API Vec1< T > | operator- (Vec1< T > a, Vec1< T > b)
HWY_API Vec1< float > | operator- (const Vec1< float > a, const Vec1< float > b)
HWY_API Vec1< double > | operator- (const Vec1< double > a, const Vec1< double > b)
HWY_API Vec1< uint64_t > | SumsOf8 (const Vec1< uint8_t > v)
HWY_API Vec1< uint8_t > | SaturatedAdd (const Vec1< uint8_t > a, const Vec1< uint8_t > b)
HWY_API Vec1< uint16_t > | SaturatedAdd (const Vec1< uint16_t > a, const Vec1< uint16_t > b)
HWY_API Vec1< int8_t > | SaturatedAdd (const Vec1< int8_t > a, const Vec1< int8_t > b)
HWY_API Vec1< int16_t > | SaturatedAdd (const Vec1< int16_t > a, const Vec1< int16_t > b)
HWY_API Vec1< uint8_t > | SaturatedSub (const Vec1< uint8_t > a, const Vec1< uint8_t > b)
HWY_API Vec1< uint16_t > | SaturatedSub (const Vec1< uint16_t > a, const Vec1< uint16_t > b)
HWY_API Vec1< int8_t > | SaturatedSub (const Vec1< int8_t > a, const Vec1< int8_t > b)
HWY_API Vec1< int16_t > | SaturatedSub (const Vec1< int16_t > a, const Vec1< int16_t > b)
HWY_API Vec1< uint8_t > | AverageRound (const Vec1< uint8_t > a, const Vec1< uint8_t > b)
HWY_API Vec1< uint16_t > | AverageRound (const Vec1< uint16_t > a, const Vec1< uint16_t > b)
template<typename T >
HWY_API Vec1< T > | Abs (const Vec1< T > a)
HWY_API Vec1< float > | Abs (Vec1< float > a)
HWY_API Vec1< double > | Abs (Vec1< double > a)
template<typename T , HWY_IF_NOT_FLOAT(T) >
HWY_API Vec1< T > | Min (const Vec1< T > a, const Vec1< T > b)
template<typename T , HWY_IF_NOT_FLOAT(T) >
HWY_API Vec1< T > | Max (const Vec1< T > a, const Vec1< T > b)
template<typename T , HWY_IF_FLOAT(T) >
HWY_API Vec1< T > | Neg (const Vec1< T > v)
template<typename T , HWY_IF_FLOAT(T) >
HWY_API Vec1< T > | operator* (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Vec1< T > | operator/ (const Vec1< T > a, const Vec1< T > b)
HWY_API Vec1< int16_t > | MulHigh (const Vec1< int16_t > a, const Vec1< int16_t > b)
HWY_API Vec1< uint16_t > | MulHigh (const Vec1< uint16_t > a, const Vec1< uint16_t > b)
HWY_API Vec1< int16_t > | MulFixedPoint15 (Vec1< int16_t > a, Vec1< int16_t > b)
HWY_API Vec1< int64_t > | MulEven (const Vec1< int32_t > a, const Vec1< int32_t > b)
HWY_API Vec1< uint64_t > | MulEven (const Vec1< uint32_t > a, const Vec1< uint32_t > b)
HWY_API Vec1< float > | ApproximateReciprocal (const Vec1< float > v)
HWY_API Vec1< float > | AbsDiff (const Vec1< float > a, const Vec1< float > b)
template<typename T >
HWY_API Vec1< T > | MulAdd (const Vec1< T > mul, const Vec1< T > x, const Vec1< T > add)
template<typename T >
HWY_API Vec1< T > | NegMulAdd (const Vec1< T > mul, const Vec1< T > x, const Vec1< T > add)
template<typename T >
HWY_API Vec1< T > | MulSub (const Vec1< T > mul, const Vec1< T > x, const Vec1< T > sub)
template<typename T >
HWY_API Vec1< T > | NegMulSub (const Vec1< T > mul, const Vec1< T > x, const Vec1< T > sub)
HWY_API Vec1< float > | ApproximateReciprocalSqrt (const Vec1< float > v)
HWY_API Vec1< float > | Sqrt (const Vec1< float > v)
HWY_API Vec1< double > | Sqrt (const Vec1< double > v)
template<typename T >
HWY_API Vec1< T > | Round (const Vec1< T > v)
HWY_API Vec1< int32_t > | NearestInt (const Vec1< float > v)
template<typename T >
HWY_API Vec1< T > | Trunc (const Vec1< T > v)
template<typename Float , typename Bits , int kMantissaBits, int kExponentBits, class V >
V | Ceiling (const V v)
template<typename Float , typename Bits , int kMantissaBits, int kExponentBits, class V >
V | Floor (const V v)
HWY_API Vec1< float > | Ceil (const Vec1< float > v)
HWY_API Vec1< double > | Ceil (const Vec1< double > v)
HWY_API Vec1< float > | Floor (const Vec1< float > v)
HWY_API Vec1< double > | Floor (const Vec1< double > v)
template<typename T >
HWY_API Mask1< T > | operator== (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Mask1< T > | operator!= (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Mask1< T > | TestBit (const Vec1< T > v, const Vec1< T > bit)
template<typename T >
HWY_API Mask1< T > | operator< (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Mask1< T > | operator> (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Mask1< T > | operator<= (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Mask1< T > | operator>= (const Vec1< T > a, const Vec1< T > b)
template<typename T >
HWY_API Mask1< T > | IsNaN (const Vec1< T > v)
HWY_API Mask1< float > | IsInf (const Vec1< float > v)
HWY_API Mask1< double > | IsInf (const Vec1< double > v)
HWY_API Mask1< float > | IsFinite (const Vec1< float > v)
HWY_API Mask1< double > | IsFinite (const Vec1< double > v)
template<typename T >
HWY_API Vec1< T > | Load (Sisd< T >, const T *HWY_RESTRICT aligned)
template<typename T >
HWY_API Vec1< T > | MaskedLoad (Mask1< T > m, Sisd< T > d, const T *HWY_RESTRICT aligned)
template<typename T >
HWY_API Vec1< T > | LoadU (Sisd< T > d, const T *HWY_RESTRICT p)
template<typename T >
HWY_API Vec1< T > | LoadDup128 (Sisd< T > d, const T *HWY_RESTRICT aligned)
template<typename T >
HWY_API void | Store (const Vec1< T > v, Sisd< T >, T *HWY_RESTRICT aligned)
template<typename T >
HWY_API void | StoreU (const Vec1< T > v, Sisd< T > d, T *HWY_RESTRICT p)
template<typename T >
HWY_API void | BlendedStore (const Vec1< T > v, Mask1< T > m, Sisd< T > d, T *HWY_RESTRICT p)
template<typename T >
HWY_API void | LoadInterleaved2 (Sisd< T > d, const T *HWY_RESTRICT unaligned, Vec1< T > &v0, Vec1< T > &v1)
template<typename T >
HWY_API void | LoadInterleaved3 (Sisd< T > d, const T *HWY_RESTRICT unaligned, Vec1< T > &v0, Vec1< T > &v1, Vec1< T > &v2)
template<typename T >
HWY_API void | LoadInterleaved4 (Sisd< T > d, const T *HWY_RESTRICT unaligned, Vec1< T > &v0, Vec1< T > &v1, Vec1< T > &v2, Vec1< T > &v3)
template<typename T >
HWY_API void | StoreInterleaved2 (const Vec1< T > v0, const Vec1< T > v1, Sisd< T > d, T *HWY_RESTRICT unaligned)
template<typename T >
HWY_API void | StoreInterleaved3 (const Vec1< T > v0, const Vec1< T > v1, const Vec1< T > v2, Sisd< T > d, T *HWY_RESTRICT unaligned)
template<typename T >
HWY_API void | StoreInterleaved4 (const Vec1< T > v0, const Vec1< T > v1, const Vec1< T > v2, const Vec1< T > v3, Sisd< T > d, T *HWY_RESTRICT unaligned)
template<typename T >
HWY_API void | Stream (const Vec1< T > v, Sisd< T > d, T *HWY_RESTRICT aligned)
template<typename T , typename Offset >
HWY_API void | ScatterOffset (Vec1< T > v, Sisd< T > d, T *base, const Vec1< Offset > offset)
template<typename T , typename Index >
HWY_API void | ScatterIndex (Vec1< T > v, Sisd< T > d, T *HWY_RESTRICT base, const Vec1< Index > index)
template<typename T , typename Offset >
HWY_API Vec1< T > | GatherOffset (Sisd< T > d, const T *base, const Vec1< Offset > offset)
template<typename T , typename Index >
HWY_API Vec1< T > | GatherIndex (Sisd< T > d, const T *HWY_RESTRICT base, const Vec1< Index > index)
template<typename FromT , typename ToT >
HWY_API Vec1< ToT > | PromoteTo (Sisd< ToT >, Vec1< FromT > from)
HWY_API Vec1< float > | DemoteTo (Sisd< float >, Vec1< double > from)
HWY_API Vec1< int32_t > | DemoteTo (Sisd< int32_t >, Vec1< double > from)
template<typename FromT , typename ToT >
HWY_API Vec1< ToT > | DemoteTo (Sisd< ToT >, Vec1< FromT > from)
HWY_API Vec1< float > | PromoteTo (Sisd< float >, const Vec1< float16_t > v)
HWY_API Vec1< float > | PromoteTo (Sisd< float > d, const Vec1< bfloat16_t > v)
HWY_API Vec1< float16_t > | DemoteTo (Sisd< float16_t >, const Vec1< float > v)
HWY_API Vec1< bfloat16_t > | DemoteTo (Sisd< bfloat16_t > d, const Vec1< float > v)
template<typename FromT , typename ToT , HWY_IF_FLOAT(FromT) >
HWY_API Vec1< ToT > | ConvertTo (Sisd< ToT >, Vec1< FromT > from)
HWY_API Vec1< uint8_t > | U8FromU32 (const Vec1< uint32_t > v)
HWY_API Vec1< uint8_t > | TruncateTo (Sisd< uint8_t >, const Vec1< uint64_t > v)
HWY_API Vec1< uint16_t > | TruncateTo (Sisd< uint16_t >, const Vec1< uint64_t > v)
HWY_API Vec1< uint32_t > | TruncateTo (Sisd< uint32_t >, const Vec1< uint64_t > v)
HWY_API Vec1< uint8_t > | TruncateTo (Sisd< uint8_t >, const Vec1< uint32_t > v)
HWY_API Vec1< uint16_t > | TruncateTo (Sisd< uint16_t >, const Vec1< uint32_t > v)
HWY_API Vec1< uint8_t > | TruncateTo (Sisd< uint8_t >, const Vec1< uint16_t > v)
template<typename T >
HWY_API Vec1< T > | LowerHalf (Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | LowerHalf (Sisd< T >, Vec1< T > v)
template<typename T >
HWY_API T | GetLane (const Vec1< T > v)
template<typename T >
HWY_API T | ExtractLane (const Vec1< T > v, size_t i)
template<typename T >
HWY_API Vec1< T > | InsertLane (Vec1< T > v, size_t i, T t)
template<typename T >
HWY_API Vec1< T > | DupEven (Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | OddEven (Vec1< T >, Vec1< T > even)
template<typename T >
HWY_API Vec1< T > | OddEvenBlocks (Vec1< T >, Vec1< T > even)
template<typename T >
HWY_API Vec1< T > | SwapAdjacentBlocks (Vec1< T > v)
template<typename T , typename TI >
HWY_API Indices1< T > | IndicesFromVec (Sisd< T >, Vec1< TI > vec)
template<typename T , typename TI >
HWY_API Indices1< T > | SetTableIndices (Sisd< T > d, const TI *idx)
template<typename T >
HWY_API Vec1< T > | TableLookupLanes (const Vec1< T > v, const Indices1< T >)
template<typename T >
HWY_API Vec1< T > | ReverseBlocks (Sisd< T >, const Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | Reverse (Sisd< T >, const Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | Reverse2 (Sisd< T >, const Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | Reverse4 (Sisd< T >, const Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | Reverse8 (Sisd< T >, const Vec1< T > v)
template<int kLane, typename T >
HWY_API Vec1< T > | Broadcast (const Vec1< T > v)
template<typename T , typename TI >
HWY_API Vec1< TI > | TableLookupBytes (const Vec1< T > in, const Vec1< TI > indices)
template<typename T , typename TI >
HWY_API Vec1< TI > | TableLookupBytesOr0 (const Vec1< T > in, const Vec1< TI > indices)
HWY_API Vec1< uint16_t > | ZipLower (const Vec1< uint8_t > a, const Vec1< uint8_t > b)
HWY_API Vec1< uint32_t > | ZipLower (const Vec1< uint16_t > a, const Vec1< uint16_t > b)
HWY_API Vec1< uint64_t > | ZipLower (const Vec1< uint32_t > a, const Vec1< uint32_t > b)
HWY_API Vec1< int16_t > | ZipLower (const Vec1< int8_t > a, const Vec1< int8_t > b)
HWY_API Vec1< int32_t > | ZipLower (const Vec1< int16_t > a, const Vec1< int16_t > b)
HWY_API Vec1< int64_t > | ZipLower (const Vec1< int32_t > a, const Vec1< int32_t > b)
template<typename T , typename TW = MakeWide<T>, class VW = Vec1<TW>>
HWY_API VW | ZipLower (Sisd< TW >, Vec1< T > a, Vec1< T > b)
template<typename T >
HWY_API bool | AllFalse (Sisd< T >, const Mask1< T > mask)
template<typename T >
HWY_API bool | AllTrue (Sisd< T >, const Mask1< T > mask)
template<typename T >
HWY_API Mask1< T > | LoadMaskBits (Sisd< T >, const uint8_t *HWY_RESTRICT bits)
template<typename T >
HWY_API size_t | StoreMaskBits (Sisd< T > d, const Mask1< T > mask, uint8_t *bits)
template<typename T >
HWY_API size_t | CountTrue (Sisd< T >, const Mask1< T > mask)
template<typename T >
HWY_API intptr_t | FindFirstTrue (Sisd< T >, const Mask1< T > mask)
template<typename T >
HWY_API size_t | FindKnownFirstTrue (Sisd< T >, const Mask1< T >)
template<typename T >
HWY_API Vec1< T > | Compress (Vec1< T > v, const Mask1< T >)
template<typename T >
HWY_API Vec1< T > | CompressNot (Vec1< T > v, const Mask1< T >)
template<typename T >
HWY_API size_t | CompressStore (Vec1< T > v, const Mask1< T > mask, Sisd< T > d, T *HWY_RESTRICT unaligned)
template<typename T >
HWY_API size_t | CompressBlendedStore (Vec1< T > v, const Mask1< T > mask, Sisd< T > d, T *HWY_RESTRICT unaligned)
template<typename T >
HWY_API Vec1< T > | CompressBits (Vec1< T > v, const uint8_t *HWY_RESTRICT)
template<typename T >
HWY_API size_t | CompressBitsStore (Vec1< T > v, const uint8_t *HWY_RESTRICT bits, Sisd< T > d, T *HWY_RESTRICT unaligned)
HWY_API Vec1< float > | ReorderWidenMulAccumulate (Sisd< float >, Vec1< bfloat16_t > a, Vec1< bfloat16_t > b, const Vec1< float > sum0, Vec1< float > &)
HWY_API Vec1< int32_t > | ReorderWidenMulAccumulate (Sisd< int32_t >, Vec1< int16_t > a, Vec1< int16_t > b, const Vec1< int32_t > sum0, Vec1< int32_t > &)
template<typename TW >
HWY_API Vec1< TW > | RearrangeToOddPlusEven (const Vec1< TW > sum0, Vec1< TW >)
template<typename T >
HWY_API Vec1< T > | SumOfLanes (Sisd< T >, const Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | MinOfLanes (Sisd< T >, const Vec1< T > v)
template<typename T >
HWY_API Vec1< T > | MaxOfLanes (Sisd< T >, const Vec1< T > v)
template<class D >
HWY_INLINE HWY_MAYBE_UNUSED constexpr int | Pow2 (D)
template<class D >
HWY_INLINE HWY_MAYBE_UNUSED constexpr size_t | MaxLanes (D)
template<typename T , size_t N, int kPow2>
HWY_INLINE HWY_MAYBE_UNUSED size_t | Lanes (Simd< T, N, kPow2 >)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_API Vec128< T, N > | Zero (Simd< T, N, 0 >)
template<size_t N, HWY_IF_LE128(float, N) >
HWY_API Vec128< float, N > | Zero (Simd< float, N, 0 >)
template<size_t N, HWY_IF_LE128(uint8_t, N) >
HWY_API Vec128< uint8_t, N > | Set (Simd< uint8_t, N, 0 >, const uint8_t t)
template<size_t N, HWY_IF_LE128(uint16_t, N) >
HWY_API Vec128< uint16_t, N > | Set (Simd< uint16_t, N, 0 >, const uint16_t t)
template<size_t N, HWY_IF_LE128(uint32_t, N) >
HWY_API Vec128< uint32_t, N > | Set (Simd< uint32_t, N, 0 >, const uint32_t t)
template<size_t N, HWY_IF_LE128(uint64_t, N) >
HWY_API Vec128< uint64_t, N > | Set (Simd< uint64_t, N, 0 >, const uint64_t t)
template<size_t N, HWY_IF_LE128(int8_t, N) >
HWY_API Vec128< int8_t, N > | Set (Simd< int8_t, N, 0 >, const int8_t t)
template<size_t N, HWY_IF_LE128(int16_t, N) >
HWY_API Vec128< int16_t, N > | Set (Simd< int16_t, N, 0 >, const int16_t t)
template<size_t N, HWY_IF_LE128(int32_t, N) >
HWY_API Vec128< int32_t, N > | Set (Simd< int32_t, N, 0 >, const int32_t t)
template<size_t N, HWY_IF_LE128(int64_t, N) >
HWY_API Vec128< int64_t, N > | Set (Simd< int64_t, N, 0 >, const int64_t t)
template<size_t N, HWY_IF_LE128(float, N) >
HWY_API Vec128< float, N > | Set (Simd< float, N, 0 >, const float t)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_API Vec128< T, N > | Undefined (Simd< T, N, 0 > d)
template<typename T , size_t N, typename T2 , HWY_IF_LE128(T, N) >
Vec128< T, N > | Iota (const Simd< T, N, 0 > d, const T2 first)
template<size_t N>
HWY_API Vec128< uint8_t, N > | operator+ (const Vec128< uint8_t, N > a, const Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | operator+ (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< uint32_t, N > | operator+ (const Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Vec128< uint64_t, N > | operator+ (const Vec128< uint64_t, N > a, const Vec128< uint64_t, N > b)
template<size_t N>
HWY_API Vec128< int8_t, N > | operator+ (const Vec128< int8_t, N > a, const Vec128< int8_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | operator+ (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< int32_t, N > | operator+ (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<size_t N>
HWY_API Vec128< int64_t, N > | operator+ (const Vec128< int64_t, N > a, const Vec128< int64_t, N > b)
template<size_t N>
HWY_API Vec128< float, N > | operator+ (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Vec128< uint8_t, N > | operator- (const Vec128< uint8_t, N > a, const Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | operator- (Vec128< uint16_t, N > a, Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< uint32_t, N > | operator- (const Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Vec128< uint64_t, N > | operator- (const Vec128< uint64_t, N > a, const Vec128< uint64_t, N > b)
template<size_t N>
HWY_API Vec128< int8_t, N > | operator- (const Vec128< int8_t, N > a, const Vec128< int8_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | operator- (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< int32_t, N > | operator- (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<size_t N>
HWY_API Vec128< int64_t, N > | operator- (const Vec128< int64_t, N > a, const Vec128< int64_t, N > b)
template<size_t N>
HWY_API Vec128< float, N > | operator- (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Vec128< uint8_t, N > | SaturatedAdd (const Vec128< uint8_t, N > a, const Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | SaturatedAdd (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< int8_t, N > | SaturatedAdd (const Vec128< int8_t, N > a, const Vec128< int8_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | SaturatedAdd (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< uint8_t, N > | SaturatedSub (const Vec128< uint8_t, N > a, const Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | SaturatedSub (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< int8_t, N > | SaturatedSub (const Vec128< int8_t, N > a, const Vec128< int8_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | SaturatedSub (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< uint8_t, N > | AverageRound (const Vec128< uint8_t, N > a, const Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | AverageRound (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< int8_t, N > | Abs (const Vec128< int8_t, N > v)
template<size_t N>
HWY_API Vec128< int16_t, N > | Abs (const Vec128< int16_t, N > v)
template<size_t N>
HWY_API Vec128< int32_t, N > | Abs (const Vec128< int32_t, N > v)
template<size_t N>
HWY_API Vec128< int64_t, N > | Abs (const Vec128< int64_t, N > v)
template<size_t N>
HWY_API Vec128< float, N > | Abs (const Vec128< float, N > v)
template<int kBits, size_t N>
HWY_API Vec128< uint16_t, N > | ShiftLeft (const Vec128< uint16_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< uint16_t, N > | ShiftRight (const Vec128< uint16_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< uint32_t, N > | ShiftLeft (const Vec128< uint32_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< uint64_t, N > | ShiftLeft (const Vec128< uint64_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< uint32_t, N > | ShiftRight (const Vec128< uint32_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< uint64_t, N > | ShiftRight (const Vec128< uint64_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< int16_t, N > | ShiftLeft (const Vec128< int16_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< int16_t, N > | ShiftRight (const Vec128< int16_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< int32_t, N > | ShiftLeft (const Vec128< int32_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< int64_t, N > | ShiftLeft (const Vec128< int64_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< int32_t, N > | ShiftRight (const Vec128< int32_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< int64_t, N > | ShiftRight (const Vec128< int64_t, N > v)
template<int kBits, typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T, N > | ShiftLeft (const Vec128< T, N > v)
template<int kBits, size_t N>
HWY_API Vec128< uint8_t, N > | ShiftRight (const Vec128< uint8_t, N > v)
template<int kBits, size_t N>
HWY_API Vec128< int8_t, N > | ShiftRight (const Vec128< int8_t, N > v)
template<size_t N>
HWY_API Vec128< uint16_t, N > | ShiftLeftSame (const Vec128< uint16_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< uint16_t, N > | ShiftRightSame (const Vec128< uint16_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< uint32_t, N > | ShiftLeftSame (const Vec128< uint32_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< uint32_t, N > | ShiftRightSame (const Vec128< uint32_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< uint64_t, N > | ShiftLeftSame (const Vec128< uint64_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< uint64_t, N > | ShiftRightSame (const Vec128< uint64_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< int16_t, N > | ShiftLeftSame (const Vec128< int16_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< int16_t, N > | ShiftRightSame (const Vec128< int16_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< int32_t, N > | ShiftLeftSame (const Vec128< int32_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< int32_t, N > | ShiftRightSame (const Vec128< int32_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< int64_t, N > | ShiftLeftSame (const Vec128< int64_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< int64_t, N > | ShiftRightSame (const Vec128< int64_t, N > v, const int bits)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T, N > | ShiftLeftSame (const Vec128< T, N > v, const int bits)
template<size_t N>
HWY_API Vec128< uint8_t, N > | ShiftRightSame (Vec128< uint8_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< int8_t, N > | ShiftRightSame (Vec128< int8_t, N > v, const int bits)
template<size_t N>
HWY_API Vec128< uint8_t, N > | Min (Vec128< uint8_t, N > a, Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | Min (Vec128< uint16_t, N > a, Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< uint32_t, N > | Min (Vec128< uint32_t, N > a, Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Vec128< int8_t, N > | Min (Vec128< int8_t, N > a, Vec128< int8_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | Min (Vec128< int16_t, N > a, Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< int32_t, N > | Min (Vec128< int32_t, N > a, Vec128< int32_t, N > b)
template<size_t N>
HWY_API Vec128< float, N > | Min (Vec128< float, N > a, Vec128< float, N > b)
template<size_t N>
HWY_API Vec128< uint8_t, N > | Max (Vec128< uint8_t, N > a, Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | Max (Vec128< uint16_t, N > a, Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< uint32_t, N > | Max (Vec128< uint32_t, N > a, Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Vec128< int8_t, N > | Max (Vec128< int8_t, N > a, Vec128< int8_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | Max (Vec128< int16_t, N > a, Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< int32_t, N > | Max (Vec128< int32_t, N > a, Vec128< int32_t, N > b)
template<size_t N>
HWY_API Vec128< float, N > | Max (Vec128< float, N > a, Vec128< float, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | operator* (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< uint32_t, N > | operator* (const Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | operator* (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< int32_t, N > | operator* (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<typename T , size_t N, HWY_IF_FLOAT(T) >
HWY_API Vec128< T, N > | Neg (const Vec128< T, N > v)
template<size_t N>
HWY_API Vec128< int8_t, N > | Neg (const Vec128< int8_t, N > v)
template<size_t N>
HWY_API Vec128< int16_t, N > | Neg (const Vec128< int16_t, N > v)
template<size_t N>
HWY_API Vec128< int32_t, N > | Neg (const Vec128< int32_t, N > v)
template<size_t N>
HWY_API Vec128< int64_t, N > | Neg (const Vec128< int64_t, N > v)
template<size_t N>
HWY_API Vec128< float, N > | operator* (Vec128< float, N > a, Vec128< float, N > b)
template<size_t N>
HWY_API Mask128< uint8_t, N > | operator== (const Vec128< uint8_t, N > a, const Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Mask128< uint16_t, N > | operator== (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Mask128< uint32_t, N > | operator== (const Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Mask128< uint64_t, N > | operator== (const Vec128< uint64_t, N > a, const Vec128< uint64_t, N > b)
template<size_t N>
HWY_API Mask128< int8_t, N > | operator== (const Vec128< int8_t, N > a, const Vec128< int8_t, N > b)
template<size_t N>
HWY_API Mask128< int16_t, N > | operator== (Vec128< int16_t, N > a, Vec128< int16_t, N > b)
template<size_t N>
HWY_API Mask128< int32_t, N > | operator== (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<size_t N>
HWY_API Mask128< int64_t, N > | operator== (const Vec128< int64_t, N > a, const Vec128< int64_t, N > b)
template<size_t N>
HWY_API Mask128< float, N > | operator== (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Mask128< uint8_t, N > | operator!= (const Vec128< uint8_t, N > a, const Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Mask128< uint16_t, N > | operator!= (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Mask128< uint32_t, N > | operator!= (const Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Mask128< uint64_t, N > | operator!= (const Vec128< uint64_t, N > a, const Vec128< uint64_t, N > b)
template<size_t N>
HWY_API Mask128< int8_t, N > | operator!= (const Vec128< int8_t, N > a, const Vec128< int8_t, N > b)
template<size_t N>
HWY_API Mask128< int16_t, N > | operator!= (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N>
HWY_API Mask128< int32_t, N > | operator!= (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<size_t N>
HWY_API Mask128< int64_t, N > | operator!= (const Vec128< int64_t, N > a, const Vec128< int64_t, N > b)
template<size_t N>
HWY_API Mask128< float, N > | operator!= (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Mask128< int8_t, N > | operator> (const Vec128< int8_t, N > a, const Vec128< int8_t, N > b)
template<size_t N>
HWY_API Mask128< int16_t, N > | operator> (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N>
HWY_API Mask128< int32_t, N > | operator> (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<size_t N>
HWY_API Mask128< int64_t, N > | operator> (const Vec128< int64_t, N > a, const Vec128< int64_t, N > b)
template<size_t N>
HWY_API Mask128< uint8_t, N > | operator> (const Vec128< uint8_t, N > a, const Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Mask128< uint16_t, N > | operator> (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Mask128< uint32_t, N > | operator> (const Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Mask128< uint64_t, N > | operator> (const Vec128< uint64_t, N > a, const Vec128< uint64_t, N > b)
template<size_t N>
HWY_API Mask128< float, N > | operator> (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Mask128< float, N > | operator<= (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Mask128< float, N > | operator>= (const Vec128< float, N > a, const Vec128< float, N > b)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_API Mask128< T, N > | FirstN (const Simd< T, N, 0 > d, size_t num)
template<size_t N>
HWY_API Vec128< int8_t, N > | BroadcastSignBit (const Vec128< int8_t, N > v)
template<typename T , size_t N, HWY_IF_FLOAT(T) >
HWY_API Vec128< T, N > | ZeroIfNegative (Vec128< T, N > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec128< T, N > | operator<< (Vec128< T, N > v, const Vec128< T, N > bits)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec128< T, N > | operator>> (Vec128< T, N > v, const Vec128< T, N > bits)
template<typename T >
HWY_API Vec128< T > | Load (Full128< T >, const T *HWY_RESTRICT aligned)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API Vec128< T, N > | Load (Simd< T, N, 0 >, const T *HWY_RESTRICT p)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_API Vec128< T, N > | LoadU (Simd< T, N, 0 > d, const T *HWY_RESTRICT p)
template<typename T >
HWY_API void | Store (Vec128< T > v, Full128< T >, T *HWY_RESTRICT aligned)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API void | Store (Vec128< T, N > v, Simd< T, N, 0 >, T *HWY_RESTRICT p)
HWY_API void | Store (const Vec128< float, 1 > v, Simd< float, 1, 0 >, float *HWY_RESTRICT p)
template<typename T >
HWY_API Vec64< T > | UpperHalf (Full64< T >, const Vec128< T > v)
template<int kBytes, typename T , class V = Vec128<T>>
HWY_API V | CombineShiftRightBytes (Full128< T >, V hi, V lo)
template<int kBytes, typename T , size_t N, HWY_IF_LE64(T, N) , class V = Vec128<T, N>>
HWY_API V | CombineShiftRightBytes (Simd< T, N, 0 > d, V hi, V lo)
template<int kLane, typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec128< T, N > | Broadcast (const Vec128< T, N > v)
template<size_t N>
HWY_API Vec128< uint8_t, N > | InterleaveLower (Vec128< uint8_t, N > a, Vec128< uint8_t, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | InterleaveLower (Vec128< uint16_t, N > a, Vec128< uint16_t, N > b)
template<size_t N>
HWY_API Vec128< uint32_t, N > | InterleaveLower (Vec128< uint32_t, N > a, Vec128< uint32_t, N > b)
template<size_t N>
HWY_API Vec128< uint64_t, N > | InterleaveLower (Vec128< uint64_t, N > a, Vec128< uint64_t, N > b)
template<size_t N>
HWY_API Vec128< int8_t, N > | InterleaveLower (Vec128< int8_t, N > a, Vec128< int8_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | InterleaveLower (Vec128< int16_t, N > a, Vec128< int16_t, N > b)
template<size_t N>
HWY_API Vec128< int32_t, N > | InterleaveLower (Vec128< int32_t, N > a, Vec128< int32_t, N > b)
template<size_t N>
HWY_API Vec128< int64_t, N > | InterleaveLower (Vec128< int64_t, N > a, Vec128< int64_t, N > b)
template<size_t N>
HWY_API Vec128< float, N > | InterleaveLower (Vec128< float, N > a, Vec128< float, N > b)
template<size_t N>
HWY_API Vec128< double, N > | InterleaveLower (Vec128< double, N > a, Vec128< double, N > b)
template<typename T , class V = Vec128<T>>
HWY_API V | InterleaveUpper (Full128< T >, V a, V b)
template<typename T , size_t N, HWY_IF_LE128(T, N) >
HWY_API Vec128< T, N > | ZeroExtendVector (Simd< T, N, 0 > d, Vec128< T, N/2 > lo)
template<typename T >
HWY_API Vec128< T > | ConcatLowerLower (Full128< T >, const Vec128< T > hi, const Vec128< T > lo)
template<typename T >
HWY_API Vec128< T > | ConcatUpperUpper (Full128< T >, const Vec128< T > hi, const Vec128< T > lo)
template<typename T >
HWY_API Vec128< T > | ConcatLowerUpper (Full128< T > d, const Vec128< T > hi, const Vec128< T > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T > | ConcatOdd (Full128< T >, Vec128< T > hi, Vec128< T > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T, 8 > | ConcatOdd (Simd< T, 8, 0 >, Vec128< T, 8 > hi, Vec128< T, 8 > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T > | ConcatEven (Full128< T >, Vec128< T > hi, Vec128< T > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T, 8 > | ConcatEven (Simd< T, 8, 0 >, Vec128< T, 8 > hi, Vec128< T, 8 > lo)
template<size_t N>
HWY_API Vec128< float, N > | OddEven (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N, HWY_IF_LE128(uint32_t, N) >
HWY_API Vec128< uint32_t, N > | PromoteTo (Simd< uint32_t, N, 0 >, const Vec128< uint16_t, N > v)
template<size_t N, HWY_IF_LE128(int16_t, N) >
HWY_API Vec128< int16_t, N > | PromoteTo (Simd< int16_t, N, 0 >, const Vec128< int8_t, N > v)
template<size_t N, HWY_IF_LE128(int32_t, N) >
HWY_API Vec128< int32_t, N > | PromoteTo (Simd< int32_t, N, 0 >, const Vec128< int8_t, N > v)
template<size_t N, HWY_IF_LE128(int32_t, N) >
HWY_API Vec128< int32_t, N > | PromoteTo (Simd< int32_t, N, 0 >, const Vec128< int16_t, N > v)
template<size_t N, HWY_IF_LE128(int64_t, N) >
HWY_API Vec128< int64_t, N > | PromoteTo (Simd< int64_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N, HWY_IF_LE128(double, N) >
HWY_API Vec128< double, N > | PromoteTo (Simd< double, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N, HWY_IF_LE128(float, N) >
HWY_API Vec128< float, N > | PromoteTo (Simd< float, N, 0 > df32, const Vec128< float16_t, N > v)
template<size_t N, HWY_IF_LE128(float, N) >
HWY_API Vec128< float, N > | PromoteTo (Simd< float, N, 0 > df32, const Vec128< bfloat16_t, N > v)
template<size_t N>
HWY_API Vec128< uint16_t, N > | DemoteTo (Simd< uint16_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N>
HWY_API Vec128< int16_t, N > | DemoteTo (Simd< int16_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N>
HWY_API Vec128< uint8_t, N > | DemoteTo (Simd< uint8_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N>
HWY_API Vec128< uint8_t, N > | DemoteTo (Simd< uint8_t, N, 0 >, const Vec128< int16_t, N > v)
template<size_t N>
HWY_API Vec128< int8_t, N > | DemoteTo (Simd< int8_t, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N>
HWY_API Vec128< int8_t, N > | DemoteTo (Simd< int8_t, N, 0 >, const Vec128< int16_t, N > v)
HWY_API Vec128< int16_t, 2 > | ReorderDemote2To (Simd< int16_t, 2, 0 > dn, Vec128< int32_t, 1 > a, Vec128< int32_t, 1 > b)
HWY_API Vec128< int16_t, 4 > | ReorderDemote2To (Simd< int16_t, 4, 0 > dn, Vec128< int32_t, 2 > a, Vec128< int32_t, 2 > b)
HWY_API Vec16< uint8_t > | TruncateTo (Full16< uint8_t >, const Vec128< uint64_t > v)
HWY_API Vec32< uint16_t > | TruncateTo (Full32< uint16_t >, const Vec128< uint64_t > v)
HWY_API Vec64< uint32_t > | TruncateTo (Full64< uint32_t >, const Vec128< uint64_t > v)
template<size_t N>
HWY_API Vec128< float, N > | ConvertTo (Simd< float, N, 0 >, const Vec128< int32_t, N > v)
template<size_t N>
HWY_API Vec128< float, N > | ConvertTo (Simd< float, N, 0 >, const Vec128< uint32_t, N > v)
template<size_t N>
HWY_API Vec128< int32_t, N > | ConvertTo (Simd< int32_t, N, 0 >, const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< uint64_t, N/8 > | SumsOf8 (const Vec128< uint8_t, N > v)
template<typename T , size_t N>
HWY_API size_t | CountTrue (const Simd< T, N, 0 >, const Mask128< T > m)
template<typename T >
HWY_API bool | AllFalse (const Full128< T > d, const Mask128< T > m)
template<typename T , size_t N>
HWY_API bool | AllTrue (const Simd< T, N, 0 >, const Mask128< T > m)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API bool | AllFalse (Simd< T, N, 0 >, const Mask128< T, N > m)
template<typename T , HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec128< T > | Compress (Vec128< T > v, Mask128< T > mask)
template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >
HWY_API Vec128< T, N > | CompressBits (Vec128< T, N > v, const uint8_t *HWY_RESTRICT bits)
template<size_t N>
HWY_API Vec128< int32_t, N > | RearrangeToOddPlusEven (const Vec128< int32_t, N > sum0, const Vec128< int32_t, N >)
template<typename T , typename FromT >
HWY_API Vec256< T > | BitCast (Full256< T > d, Vec256< FromT > v)
template<typename T >
HWY_API Vec256< T > | Zero (Full256< T > d)
template<typename T , typename T2 >
HWY_API Vec256< T > | Set (Full256< T > d, const T2 t)
template<typename T >
HWY_API Vec256< T > | Undefined (Full256< T > d)
template<typename T , typename T2 >
Vec256< T > | Iota (const Full256< T > d, const T2 first)
template<typename T >
HWY_API Vec256< T > | operator+ (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | operator- (Vec256< T > a, const Vec256< T > b)
HWY_API Vec256< uint64_t > | SumsOf8 (const Vec256< uint8_t > v)
template<typename T >
HWY_API Vec256< T > | SaturatedAdd (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | SaturatedSub (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | AverageRound (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | Abs (Vec256< T > v)
template<int kBits, typename T >
HWY_API Vec256< T > | ShiftLeft (Vec256< T > v)
template<int kBits, typename T >
HWY_API Vec256< T > | ShiftRight (Vec256< T > v)
template<int kBits, typename T >
HWY_API Vec256< T > | RotateRight (const Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | ShiftLeftSame (Vec256< T > v, const int bits)
template<typename T >
HWY_API Vec256< T > | ShiftRightSame (Vec256< T > v, const int bits)
template<typename T >
HWY_API Vec256< T > | Min (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | Max (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | operator* (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | MulHigh (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | MulFixedPoint15 (Vec256< T > a, const Vec256< T > b)
HWY_API Vec256< uint64_t > | MulEven (Vec256< uint32_t > a, const Vec256< uint32_t > b)
HWY_API Vec256< int64_t > | MulEven (Vec256< int32_t > a, const Vec256< int32_t > b)
HWY_API Vec256< uint64_t > | MulEven (Vec256< uint64_t > a, const Vec256< uint64_t > b)
HWY_API Vec256< uint64_t > | MulOdd (Vec256< uint64_t > a, const Vec256< uint64_t > b)
template<typename T >
HWY_API Vec256< T > | Neg (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | operator/ (Vec256< T > a, const Vec256< T > b)
HWY_API Vec256< float > | ApproximateReciprocal (const Vec256< float > v)
HWY_API Vec256< float > | AbsDiff (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< float > | MulAdd (const Vec256< float > mul, const Vec256< float > x, const Vec256< float > add)
HWY_API Vec256< float > | NegMulAdd (const Vec256< float > mul, const Vec256< float > x, const Vec256< float > add)
HWY_API Vec256< float > | MulSub (const Vec256< float > mul, const Vec256< float > x, const Vec256< float > sub)
HWY_API Vec256< float > | NegMulSub (const Vec256< float > mul, const Vec256< float > x, const Vec256< float > sub)
template<typename T >
HWY_API Vec256< T > | Sqrt (Vec256< T > v)
HWY_API Vec256< float > | ApproximateReciprocalSqrt (const Vec256< float > v)
HWY_API Vec256< float > | Round (Vec256< float > v)
HWY_API Vec256< float > | Trunc (Vec256< float > v)
HWY_API Vec256< float > | Ceil (Vec256< float > v)
HWY_API Vec256< float > | Floor (Vec256< float > v)
template<typename T >
HWY_API Mask256< T > | IsNaN (const Vec256< T > v)
template<typename T , HWY_IF_FLOAT(T) >
HWY_API Mask256< T > | IsInf (const Vec256< T > v)
template<typename T , HWY_IF_FLOAT(T) >
HWY_API Mask256< T > | IsFinite (const Vec256< T > v)
template<typename TFrom , typename TTo >
HWY_API Mask256< TTo > | RebindMask (Full256< TTo >, Mask256< TFrom > m)
template<typename T >
HWY_API Mask256< T > | TestBit (Vec256< T > v, Vec256< T > bit)
template<typename T >
HWY_API Mask256< T > | operator== (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Mask256< T > | operator!= (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Mask256< T > | operator< (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Mask256< T > | operator> (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Mask256< T > | operator<= (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Mask256< T > | operator>= (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Mask256< T > | FirstN (const Full256< T > d, size_t num)
template<typename T >
HWY_API Vec256< T > | Not (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | And (Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | AndNot (Vec256< T > not_mask, Vec256< T > mask)
template<typename T >
HWY_API Vec256< T > | Or (Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | Xor (Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | Xor3 (Vec256< T > x1, Vec256< T > x2, Vec256< T > x3)
template<typename T >
HWY_API Vec256< T > | Or3 (Vec256< T > o1, Vec256< T > o2, Vec256< T > o3)
template<typename T >
HWY_API Vec256< T > | OrAnd (Vec256< T > o, Vec256< T > a1, Vec256< T > a2)
template<typename T >
HWY_API Vec256< T > | IfVecThenElse (Vec256< T > mask, Vec256< T > yes, Vec256< T > no)
template<typename T >
HWY_API Vec256< T > | operator& (const Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | operator| (const Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | operator^ (const Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | CopySign (const Vec256< T > magn, const Vec256< T > sign)
template<typename T >
HWY_API Vec256< T > | CopySignToAbs (const Vec256< T > abs, const Vec256< T > sign)
template<typename T >
HWY_API Mask256< T > | MaskFromVec (const Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | VecFromMask (Full256< T > d, Mask256< T > m)
template<typename T >
HWY_API Vec256< T > | IfThenElse (Mask256< T > mask, Vec256< T > yes, Vec256< T > no)
template<typename T >
HWY_API Vec256< T > | IfThenElseZero (Mask256< T > mask, Vec256< T > yes)
template<typename T >
HWY_API Vec256< T > | IfThenZeroElse (Mask256< T > mask, Vec256< T > no)
template<typename T >
HWY_API Vec256< T > | IfNegativeThenElse (Vec256< T > v, Vec256< T > yes, Vec256< T > no)
template<typename T , HWY_IF_FLOAT(T) >
HWY_API Vec256< T > | ZeroIfNegative (Vec256< T > v)
template<typename T >
HWY_API Mask256< T > | Not (const Mask256< T > m)
template<typename T >
HWY_API Mask256< T > | And (const Mask256< T > a, Mask256< T > b)
template<typename T >
HWY_API Mask256< T > | AndNot (const Mask256< T > a, Mask256< T > b)
template<typename T >
HWY_API Mask256< T > | Or (const Mask256< T > a, Mask256< T > b)
template<typename T >
HWY_API Mask256< T > | Xor (const Mask256< T > a, Mask256< T > b)
template<typename T >
HWY_API Mask256< T > | ExclusiveNeither (const Mask256< T > a, Mask256< T > b)
template<typename T >
HWY_API Vec256< T > | operator<< (Vec256< T > v, const Vec256< T > bits)
template<typename T >
HWY_API Vec256< T > | operator>> (Vec256< T > v, const Vec256< T > bits)
template<typename T , HWY_IF_NOT_LANE_SIZE(T, 1) >
HWY_API Vec256< T > | BroadcastSignBit (const Vec256< T > v)
HWY_API Vec256< int8_t > | BroadcastSignBit (const Vec256< int8_t > v)
template<typename T >
HWY_API Vec256< T > | Load (Full256< T > d, const T *HWY_RESTRICT aligned)
template<typename T >
HWY_API Vec256< T > | MaskedLoad (Mask256< T > m, Full256< T > d, const T *HWY_RESTRICT aligned)
template<typename T >
HWY_API Vec256< T > | LoadU (Full256< T > d, const T *HWY_RESTRICT p)
template<typename T >
HWY_API Vec256< T > | LoadDup128 (Full256< T > d, const T *HWY_RESTRICT p)
template<typename T >
HWY_API void | Store (Vec256< T > v, Full256< T > d, T *HWY_RESTRICT aligned)
template<typename T >
HWY_API void | StoreU (Vec256< T > v, Full256< T > d, T *HWY_RESTRICT p)
template<typename T >
HWY_API void | BlendedStore (Vec256< T > v, Mask256< T > m, Full256< T > d, T *HWY_RESTRICT p)
template<typename T >
HWY_API void | Stream (Vec256< T > v, Full256< T > d, T *HWY_RESTRICT aligned)
template<typename T , typename Offset >
HWY_API void | ScatterOffset (Vec256< T > v, Full256< T > d, T *HWY_RESTRICT base, const Vec256< Offset > offset)
template<typename T , typename Index >
HWY_API void | ScatterIndex (Vec256< T > v, Full256< T > d, T *HWY_RESTRICT base, const Vec256< Index > index)
template<typename T , typename Offset >
HWY_API Vec256< T > | GatherOffset (const Full256< T > d, const T *HWY_RESTRICT base, const Vec256< Offset > offset)
template<typename T , typename Index >
HWY_API Vec256< T > | GatherIndex (const Full256< T > d, const T *HWY_RESTRICT base, const Vec256< Index > index)
template<typename T >
HWY_API T | ExtractLane (const Vec256< T > v, size_t i)
template<typename T >
HWY_API Vec256< T > | InsertLane (const Vec256< T > v, size_t i, T t)
template<typename T >
HWY_API Vec128< T > | LowerHalf (Full128< T >, Vec256< T > v)
template<typename T >
HWY_API Vec128< T > | LowerHalf (Vec256< T > v)
template<typename T >
HWY_API T | GetLane (const Vec256< T > v)
template<int kBytes, typename T >
HWY_API Vec256< T > | ShiftLeftBytes (Full256< T > d, Vec256< T > v)
template<int kBytes, typename T >
HWY_API Vec256< T > | ShiftLeftBytes (Vec256< T > v)
template<int kLanes, typename T >
HWY_API Vec256< T > | ShiftLeftLanes (Full256< T > d, const Vec256< T > v)
template<int kLanes, typename T >
HWY_API Vec256< T > | ShiftLeftLanes (const Vec256< T > v)
template<int kBytes, typename T >
HWY_API Vec256< T > | ShiftRightBytes (Full256< T > d, Vec256< T > v)
template<int kLanes, typename T >
HWY_API Vec256< T > | ShiftRightLanes (Full256< T > d, const Vec256< T > v)
template<typename T >
HWY_API Vec128< T > | UpperHalf (Full128< T >, const Vec256< T > v)
template<int kBytes, typename T , class V = Vec256<T>>
HWY_API V | CombineShiftRightBytes (Full256< T > d, V hi, V lo)
template<int kLane, typename T >
HWY_API Vec256< T > | Broadcast (const Vec256< T > v)
template<typename T , typename TI >
HWY_API Vec256< TI > | TableLookupBytes (const Vec256< T > bytes, Vec256< TI > from)
template<typename T , typename TI , size_t NI>
HWY_API Vec128< TI, NI > | TableLookupBytes (const Vec256< T > bytes, const Vec128< TI, NI > from)
template<typename T , size_t N, typename TI >
HWY_API Vec256< TI > | TableLookupBytes (const Vec128< T, N > bytes, const Vec256< TI > from)
template<typename T >
HWY_API Vec256< T > | Shuffle01 (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | Shuffle2301 (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | Shuffle1032 (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | Shuffle0321 (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | Shuffle2103 (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | Shuffle0123 (Vec256< T > v)
template<typename T , typename TI >
HWY_API Indices256< T > | IndicesFromVec (Full256< T >, Vec256< TI > vec)
template<typename T , typename TI >
HWY_API Indices256< T > | SetTableIndices (Full256< T > d, const TI *idx)
template<typename T >
HWY_API Vec256< T > | TableLookupLanes (const Vec256< T > v, Indices256< T > idx)
template<typename T >
HWY_API Vec256< T > | TableLookupLanesOr0 (Vec256< T > v, Indices256< T > idx)
template<typename T >
HWY_API Vec256< T > | Reverse (Full256< T > d, const Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | Reverse2 (Full256< T > d, Vec256< T > v)
template<typename T , HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec256< T > | Reverse4 (Full256< T > d, const Vec256< T > v)
template<typename T , HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec256< T > | Reverse8 (Full256< T >, Vec256< T >)
template<typename T >
HWY_API Vec256< T > | InterleaveLower (Vec256< T > a, Vec256< T > b)
template<typename T , class V = Vec256<T>>
HWY_API V | InterleaveUpper (Full256< T > d, V a, V b)
template<typename T , class DW = RepartitionToWide<Full256<T>>>
HWY_API VFromD< DW > | ZipLower (Vec256< T > a, Vec256< T > b)
template<typename T , class D = Full256<T>, class DW = RepartitionToWide<D>>
HWY_API VFromD< DW > | ZipLower (DW dw, Vec256< T > a, Vec256< T > b)
template<typename T , class D = Full256<T>, class DW = RepartitionToWide<D>>
HWY_API VFromD< DW > | ZipUpper (DW dw, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | Combine (Full256< T >, Vec128< T > hi, Vec128< T > lo)
template<typename T >
HWY_API Vec256< T > | ZeroExtendVector (Full256< T > d, Vec128< T > lo)
template<typename T >
HWY_API Vec256< T > | ConcatLowerLower (Full256< T >, const Vec256< T > hi, const Vec256< T > lo)
template<typename T >
HWY_API Vec256< T > | ConcatUpperUpper (Full256< T >, const Vec256< T > hi, const Vec256< T > lo)
template<typename T >
HWY_API Vec256< T > | ConcatLowerUpper (Full256< T >, const Vec256< T > hi, const Vec256< T > lo)
template<typename T >
HWY_API Vec256< T > | ConcatUpperLower (Full256< T >, const Vec256< T > hi, const Vec256< T > lo)
template<typename T >
HWY_API Vec256< T > | ConcatOdd (Full256< T > d, const Vec256< T > hi, const Vec256< T > lo)
template<typename T >
HWY_API Vec256< T > | ConcatEven (Full256< T > d, const Vec256< T > hi, const Vec256< T > lo)
template<typename T >
HWY_API Vec256< T > | DupEven (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | DupOdd (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | OddEven (Vec256< T > a, const Vec256< T > b)
template<typename T >
HWY_API Vec256< T > | OddEvenBlocks (Vec256< T > odd, Vec256< T > even)
template<typename T >
HWY_API Vec256< T > | SwapAdjacentBlocks (Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | ReverseBlocks (Full256< T >, const Vec256< T > v)
template<typename T , typename TN >
HWY_API Vec256< T > | PromoteTo (Full256< T > d, const Vec128< TN > v)
template<typename TW , typename TN >
HWY_API Vec256< TW > | PromoteTo (Full256< TW > d, const Vec64< TN > v)
HWY_API Vec128< uint16_t > | DemoteTo (Full128< uint16_t >, const Vec256< int32_t > v)
HWY_API Vec128< int16_t > | DemoteTo (Full128< int16_t >, const Vec256< int32_t > v)
HWY_API Vec64< uint8_t > | DemoteTo (Full64< uint8_t >, const Vec256< int32_t > v)
HWY_API Vec128< uint8_t > | DemoteTo (Full128< uint8_t >, const Vec256< int16_t > v)
HWY_API Vec64< int8_t > | DemoteTo (Full64< int8_t >, const Vec256< int32_t > v)
HWY_API Vec128< int8_t > | DemoteTo (Full128< int8_t >, const Vec256< int16_t > v)
HWY_API Vec128< int32_t > | DemoteTo (Full128< int32_t > di, const Vec256< double > v)
HWY_API Vec128< float16_t > | DemoteTo (Full128< float16_t > d16, const Vec256< float > v)
HWY_API Vec128< bfloat16_t > | DemoteTo (Full128< bfloat16_t > dbf16, const Vec256< float > v)
HWY_API Vec64< uint8_t > | U8FromU32 (const Vec256< uint32_t > v)
HWY_API Vec32< uint8_t > | TruncateTo (Full32< uint8_t >, const Vec256< uint64_t > v)
HWY_API Vec64< uint16_t > | TruncateTo (Full64< uint16_t >, const Vec256< uint64_t > v)
HWY_API Vec128< uint32_t > | TruncateTo (Full128< uint32_t >, const Vec256< uint64_t > v)
HWY_API Vec64< uint8_t > | TruncateTo (Full64< uint8_t >, const Vec256< uint32_t > v)
HWY_API Vec128< uint16_t > | TruncateTo (Full128< uint16_t >, const Vec256< uint32_t > v)
HWY_API Vec128< uint8_t > | TruncateTo (Full128< uint8_t >, const Vec256< uint16_t > v)
HWY_API Vec256< bfloat16_t > | ReorderDemote2To (Full256< bfloat16_t > dbf16, Vec256< float > a, Vec256< float > b)
HWY_API Vec256< int16_t > | ReorderDemote2To (Full256< int16_t > d16, Vec256< int32_t > a, Vec256< int32_t > b)
template<typename TTo , typename TFrom >
HWY_API Vec256< TTo > | ConvertTo (Full256< TTo > d, const Vec256< TFrom > v)
HWY_API Vec256< int32_t > | NearestInt (const Vec256< float > v)
template<typename T , HWY_IF_LANE_SIZE_ONE_OF(T, 0x110) >
HWY_API Mask256< T > | LoadMaskBits (Full256< T > d, const uint8_t *HWY_RESTRICT bits)
template<typename T , HWY_IF_LANE_SIZE_ONE_OF(T, 0x110) >
HWY_API size_t | StoreMaskBits (const Full256< T > d, const Mask256< T > mask, uint8_t *bits)
template<typename T >
HWY_API size_t | CountTrue (const Full256< T > d, const Mask256< T > m)
template<typename T >
HWY_API bool | AllFalse (const Full256< T > d, const Mask256< T > m)
template<typename T >
HWY_API bool | AllTrue (const Full256< T > d, const Mask256< T > m)
template<typename T >
HWY_API size_t | FindKnownFirstTrue (const Full256< T > d, const Mask256< T > mask)
template<typename T >
HWY_API intptr_t | FindFirstTrue (const Full256< T > d, const Mask256< T > mask)
template<typename T >
HWY_API size_t | CompressStore (const Vec256< T > v, const Mask256< T > mask, Full256< T > d, T *HWY_RESTRICT unaligned)
template<typename T >
HWY_API size_t | CompressBlendedStore (const Vec256< T > v, const Mask256< T > m, Full256< T > d, T *HWY_RESTRICT unaligned)
template<typename T >
HWY_API size_t | CompressBitsStore (const Vec256< T > v, const uint8_t *HWY_RESTRICT bits, Full256< T > d, T *HWY_RESTRICT unaligned)
template<typename T >
HWY_API Vec256< T > | Compress (const Vec256< T > v, const Mask256< T > mask)
template<typename T >
HWY_API Vec256< T > | CompressNot (Vec256< T > v, const Mask256< T > mask)
HWY_API Vec256< uint64_t > | CompressBlocksNot (Vec256< uint64_t > v, Mask256< uint64_t > mask)
template<typename T >
HWY_API Vec256< T > | CompressBits (Vec256< T > v, const uint8_t *HWY_RESTRICT bits)
template<typename TN , typename TW >
HWY_API Vec256< TW > | ReorderWidenMulAccumulate (Full256< TW > d, Vec256< TN > a, Vec256< TN > b, Vec256< TW > sum0, Vec256< TW > &sum1)
template<typename TW >
HWY_API Vec256< TW > | RearrangeToOddPlusEven (Vec256< TW > sum0, Vec256< TW > sum1)
template<typename T >
HWY_API Vec256< T > | SumOfLanes (Full256< T > d, const Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | MinOfLanes (Full256< T > d, const Vec256< T > v)
template<typename T >
HWY_API Vec256< T > | MaxOfLanes (Full256< T > d, const Vec256< T > v)
template<typename T >
HWY_INLINE Mask256< T > | Lt128 (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_INLINE Mask256< T > | Lt128Upper (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_INLINE Mask256< T > | Eq128 (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_INLINE Mask256< T > | Eq128Upper (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_INLINE Mask256< T > | Ne128 (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_INLINE Mask256< T > | Ne128Upper (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_INLINE Vec256< T > | Min128 (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_INLINE Vec256< T > | Max128 (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_INLINE Vec256< T > | Min128Upper (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<typename T >
HWY_INLINE Vec256< T > | Max128Upper (Full256< T > d, Vec256< T > a, Vec256< T > b)
template<size_t N, HWY_IF_LE128(double, N) >
HWY_API Vec128< double, N > | Zero (Simd< double, N, 0 >)
template<size_t N, HWY_IF_LE128(double, N) >
HWY_API Vec128< double, N > | Set (Simd< double, N, 0 >, const double t)
template<size_t N, HWY_IF_LE128(float, N) >
HWY_API Vec128< float, N > | Undefined (Simd< float, N, 0 >)
template<size_t N, HWY_IF_LE128(double, N) >
HWY_API Vec128< double, N > | Undefined (Simd< double, N, 0 >)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >
HWY_API T | GetLane (const Vec128< T, N > v)
template<size_t N>
HWY_API float | GetLane (const Vec128< float, N > v)
template<size_t N>
HWY_API uint64_t | GetLane (const Vec128< uint64_t, N > v)
template<size_t N>
HWY_API int64_t | GetLane (const Vec128< int64_t, N > v)
template<size_t N>
HWY_API double | GetLane (const Vec128< double, N > v)
template<size_t N>
HWY_API Vec128< float, N > | And (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Vec128< double, N > | And (const Vec128< double, N > a, const Vec128< double, N > b)
template<size_t N>
HWY_API Vec128< float, N > | AndNot (const Vec128< float, N > not_mask, const Vec128< float, N > mask)
template<size_t N>
HWY_API Vec128< double, N > | AndNot (const Vec128< double, N > not_mask, const Vec128< double, N > mask)
template<size_t N>
HWY_API Vec128< float, N > | Or (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Vec128< double, N > | Or (const Vec128< double, N > a, const Vec128< double, N > b)
template<size_t N>
HWY_API Vec128< float, N > | Xor (const Vec128< float, N > a, const Vec128< float, N > b)
template<size_t N>
HWY_API Vec128< double, N > | Xor (const Vec128< double, N > a, const Vec128< double, N > b)
template<typename T , size_t N>
HWY_API Vec128< T, N > | PopulationCount (Vec128< T, N > v)
template<typename T , size_t N>
HWY_INLINE Vec128< T, N > | Neg (const Vec128< T, N > v)
template<size_t N>
HWY_API Vec128< double, N > | Abs (const Vec128< double, N > v)
template<size_t N>
HWY_API Vec128< float, N > | IfThenElse (Mask128< float, N > mask, Vec128< float, N > yes, Vec128< float, N > no)
template<size_t N>
HWY_API Vec128< double, N > | IfThenElse (Mask128< double, N > mask, Vec128< double, N > yes, Vec128< double, N > no)
template<size_t N>
HWY_API Vec128< float, N > | IfThenElseZero (Mask128< float, N > mask, Vec128< float, N > yes)
template<size_t N>
HWY_API Vec128< double, N > | IfThenElseZero (Mask128< double, N > mask, Vec128< double, N > yes)
template<size_t N>
HWY_API Vec128< float, N > | IfThenZeroElse (Mask128< float, N > mask, Vec128< float, N > no)
template<size_t N>
HWY_API Vec128< double, N > | IfThenZeroElse (Mask128< double, N > mask, Vec128< double, N > no)
template<size_t N>
HWY_API Vec128< float, N > | Shuffle2301 (const Vec128< float, N > v)
HWY_API Vec128< uint32_t > | Shuffle1032 (const Vec128< uint32_t > v)
HWY_API Vec128< int32_t > | Shuffle1032 (const Vec128< int32_t > v)
HWY_API Vec128< float > | Shuffle1032 (const Vec128< float > v)
HWY_API Vec128< uint64_t > | Shuffle01 (const Vec128< uint64_t > v)
HWY_API Vec128< int64_t > | Shuffle01 (const Vec128< int64_t > v)
HWY_API Vec128< double > | Shuffle01 (const Vec128< double > v)
HWY_API Vec128< uint32_t > | Shuffle0321 (const Vec128< uint32_t > v)
HWY_API Vec128< int32_t > | Shuffle0321 (const Vec128< int32_t > v)
HWY_API Vec128< float > | Shuffle0321 (const Vec128< float > v)
HWY_API Vec128< uint32_t > | Shuffle2103 (const Vec128< uint32_t > v)
HWY_API Vec128< int32_t > | Shuffle2103 (const Vec128< int32_t > v)
HWY_API Vec128< float > | Shuffle2103 (const Vec128< float > v)
HWY_API Vec128< uint32_t > | Shuffle0123 (const Vec128< uint32_t > v)
HWY_API Vec128< int32_t > | Shuffle0123 (const Vec128< int32_t > v)
HWY_API Vec128< float > | Shuffle0123 (const Vec128< float > v)
template<typename TFrom , size_t NFrom, typename TTo , size_t NTo>
HWY_API Mask128< TTo, NTo > | RebindMask (Simd< TTo, NTo, 0 >, Mask128< TFrom, NFrom > m)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >
HWY_API Mask128< T, N > | operator== (const Vec128< T, N > a, const Vec128< T, N > b)
template<size_t N>
HWY_API Mask128< double, N > | operator== (Vec128< double, N > a, Vec128< double, N > b)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >
HWY_API Mask128< T, N > | operator!= (const Vec128< T, N > a, const Vec128< T, N > b)
template<size_t N>
HWY_API Mask128< double, N > | operator!= (Vec128< double, N > a, Vec128< double, N > b)
template<size_t N>
HWY_API Mask128< double, N > | operator> (Vec128< double, N > a, Vec128< double, N > b)
template<size_t N>
HWY_API Mask128< double, N > | operator>= (Vec128< double, N > a, Vec128< double, N > b)
template<size_t N>
HWY_API Mask128< float, N > | MaskFromVec (const Vec128< float, N > v)
template<size_t N>
HWY_API Mask128< double, N > | MaskFromVec (const Vec128< double, N > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T, N > | VecFromMask (const Mask128< T, N > v)
template<size_t N>
HWY_API Vec128< float, N > | VecFromMask (const Mask128< float, N > v)
template<size_t N>
HWY_API Vec128< double, N > | VecFromMask (const Mask128< double, N > v)
HWY_API Vec128< float > | Load (Full128< float >, const float *HWY_RESTRICT aligned)
HWY_API Vec128< double > | Load (Full128< double >, const double *HWY_RESTRICT aligned)
template<typename T >
HWY_API Vec128< T > | LoadU (Full128< T >, const T *HWY_RESTRICT p)
HWY_API Vec128< double > | LoadU (Full128< double >, const double *HWY_RESTRICT p)
template<typename T >
HWY_API Vec64< T > | Load (Full64< T >, const T *HWY_RESTRICT p)
HWY_API Vec128< float, 2 > | Load (Full64< float >, const float *HWY_RESTRICT p)
HWY_API Vec64< double > | Load (Full64< double >, const double *HWY_RESTRICT p)
HWY_API Vec128< float, 1 > | Load (Full32< float >, const float *HWY_RESTRICT p)
template<typename T , size_t N, typename T2 , HWY_IF_LE128(T, N) >
HWY_API Vec128< T, N > | Iota (const Simd< T, N, 0 > d, const T2 first)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec128< T, N > | MaskedLoad (Mask128< T, N > m, Simd< T, N, 0 >, const T *HWY_RESTRICT p)
template<size_t N>
HWY_API Vec128< float, N > | MaskedLoad (Mask128< float, N > m, Simd< float, N, 0 >, const float *HWY_RESTRICT p)
template<size_t N>
HWY_API Vec128< double, N > | MaskedLoad (Mask128< double, N > m, Simd< double, N, 0 >, const double *HWY_RESTRICT p)
HWY_API void | Store (const Vec128< float > v, Full128< float >, float *HWY_RESTRICT aligned)
HWY_API void | Store (const Vec128< double > v, Full128< double >, double *HWY_RESTRICT aligned)
template<typename T >
HWY_API void | StoreU (Vec128< T > v, Full128< T >, T *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec128< double > v, Full128< double >, double *HWY_RESTRICT p)
template<typename T >
HWY_API void | Store (Vec64< T > v, Full64< T >, T *HWY_RESTRICT p)
HWY_API void | Store (const Vec128< float, 2 > v, Full64< float >, float *HWY_RESTRICT p)
HWY_API void | Store (const Vec64< double > v, Full64< double >, double *HWY_RESTRICT p)
HWY_API void | Store (const Vec128< float, 1 > v, Full32< float >, float *HWY_RESTRICT p)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API void | StoreU (const Vec128< T, N > v, Simd< T, N, 0 > d, T *HWY_RESTRICT p)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >
HWY_API void | BlendedStore (Vec128< T, N > v, Mask128< T, N > m, Simd< T, N, 0 >, T *HWY_RESTRICT p)
template<size_t N>
HWY_API void | BlendedStore (Vec128< float, N > v, Mask128< float, N > m, Simd< float, N, 0 >, float *HWY_RESTRICT p)
template<size_t N>
HWY_API void | BlendedStore (Vec128< double, N > v, Mask128< double, N > m, Simd< double, N, 0 >, double *HWY_RESTRICT p)
template<size_t N>
HWY_API Vec128< double, N > | operator+ (const Vec128< double, N > a, const Vec128< double, N > b)
template<size_t N>
HWY_API Vec128< double, N > | operator- (const Vec128< double, N > a, const Vec128< double, N > b)
template<size_t N, HWY_IF_LE64(int32_t, N) >
HWY_API Vec128< int64_t,(N+1)/2 > | MulEven (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<size_t N>
HWY_API Vec128< int16_t, N > | BroadcastSignBit (const Vec128< int16_t, N > v)
template<size_t N>
HWY_API Vec128< int32_t, N > | BroadcastSignBit (const Vec128< int32_t, N > v)
template<size_t N>
HWY_API Vec128< int64_t, N > | BroadcastSignBit (const Vec128< int64_t, N > v)
template<size_t N>
HWY_API Vec128< int8_t, N > | IfNegativeThenElse (const Vec128< int8_t, N > v, const Vec128< int8_t, N > yes, const Vec128< int8_t, N > no)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec128< T, N > | IfNegativeThenElse (Vec128< T, N > v, Vec128< T, N > yes, Vec128< T, N > no)
HWY_API Vec128< float, 1 > | operator* (const Vec128< float, 1 > a, const Vec128< float, 1 > b)
template<size_t N>
HWY_API Vec128< double, N > | operator* (const Vec128< double, N > a, const Vec128< double, N > b)
HWY_API Vec64< double > | operator* (const Vec64< double > a, const Vec64< double > b)
HWY_API Vec128< float, 1 > | operator/ (const Vec128< float, 1 > a, const Vec128< float, 1 > b)
template<size_t N>
HWY_API Vec128< double, N > | operator/ (const Vec128< double, N > a, const Vec128< double, N > b)
HWY_API Vec64< double > | operator/ (const Vec64< double > a, const Vec64< double > b)
HWY_API Vec128< float, 1 > | ApproximateReciprocal (const Vec128< float, 1 > v)
template<size_t N>
HWY_API Vec128< double, N > | MulAdd (const Vec128< double, N > mul, const Vec128< double, N > x, const Vec128< double, N > add)
template<size_t N>
HWY_API Vec128< double, N > | NegMulAdd (const Vec128< double, N > mul, const Vec128< double, N > x, const Vec128< double, N > add)
template<size_t N>
HWY_API Vec128< double, N > | MulSub (const Vec128< double, N > mul, const Vec128< double, N > x, const Vec128< double, N > sub)
template<size_t N>
HWY_API Vec128< double, N > | NegMulSub (const Vec128< double, N > mul, const Vec128< double, N > x, const Vec128< double, N > sub)
HWY_API Vec128< float, 1 > | Sqrt (const Vec128< float, 1 > v)
template<size_t N>
HWY_API Vec128< double, N > | Sqrt (const Vec128< double, N > v)
HWY_API Vec64< double > | Sqrt (const Vec64< double > v)
HWY_API Vec128< float, 1 > | ApproximateReciprocalSqrt (const Vec128< float, 1 > v)
template<size_t N>
HWY_API Vec128< double, N > | Min (const Vec128< double, N > a, const Vec128< double, N > b)
template<size_t N>
HWY_API Vec128< double, N > | Max (const Vec128< double, N > a, const Vec128< double, N > b)
template<size_t N>
HWY_API void | Stream (const Vec128< float, N > v, Simd< float, N, 0 >, float *HWY_RESTRICT aligned)
template<size_t N>
HWY_API void | Stream (const Vec128< double, N > v, Simd< double, N, 0 >, double *HWY_RESTRICT aligned)
template<typename T , size_t N, typename Offset >
HWY_API void | ScatterOffset (Vec128< T, N > v, Simd< T, N, 0 > d, T *HWY_RESTRICT base, const Vec128< Offset, N > offset)
template<size_t N>
HWY_API void | ScatterOffset (Vec128< float, N > v, Simd< float, N, 0 >, float *HWY_RESTRICT base, const Vec128< int32_t, N > offset)
template<size_t N>
HWY_API void | ScatterIndex (Vec128< float, N > v, Simd< float, N, 0 >, float *HWY_RESTRICT base, const Vec128< int32_t, N > index)
template<size_t N>
HWY_API void | ScatterOffset (Vec128< double, N > v, Simd< double, N, 0 >, double *HWY_RESTRICT base, const Vec128< int64_t, N > offset)
template<size_t N>
HWY_API void | ScatterIndex (Vec128< double, N > v, Simd< double, N, 0 >, double *HWY_RESTRICT base, const Vec128< int64_t, N > index)
template<typename T >
HWY_API Vec64< T > | UpperHalf (Half< Full128< T > >, Vec128< T > v)
HWY_API Vec64< double > | UpperHalf (Full64< double >, Vec128< double > v)
template<int kLane, size_t N>
HWY_API Vec128< uint16_t, N > | Broadcast (const Vec128< uint16_t, N > v)
template<int kLane, size_t N>
HWY_API Vec128< uint32_t, N > | Broadcast (const Vec128< uint32_t, N > v)
template<int kLane, size_t N>
HWY_API Vec128< uint64_t, N > | Broadcast (const Vec128< uint64_t, N > v)
template<int kLane, size_t N>
HWY_API Vec128< int16_t, N > | Broadcast (const Vec128< int16_t, N > v)
template<int kLane, size_t N>
HWY_API Vec128< int32_t, N > | Broadcast (const Vec128< int32_t, N > v)
template<int kLane, size_t N>
HWY_API Vec128< int64_t, N > | Broadcast (const Vec128< int64_t, N > v)
template<int kLane, size_t N>
HWY_API Vec128< float, N > | Broadcast (const Vec128< float, N > v)
template<int kLane, size_t N>
HWY_API Vec128< double, N > | Broadcast (const Vec128< double, N > v)
template<typename T , size_t N, typename TI , HWY_IF_LE128(T, N) , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Indices128< T, N > | IndicesFromVec (Simd< T, N, 0 > d, Vec128< TI, N > vec)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec128< T, N > | TableLookupLanes (Vec128< T, N > v, Indices128< T, N > idx)
template<size_t N, HWY_IF_GE64(float, N) >
HWY_API Vec128< float, N > | TableLookupLanes (Vec128< float, N > v, Indices128< float, N > idx)
template<typename T >
HWY_API Vec128< T, 1 > | TableLookupLanes (Vec128< T, 1 > v, Indices128< T, 1 >)
template<typename T , HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec128< T > | TableLookupLanes (Vec128< T > v, Indices128< T > idx)
HWY_API Vec128< double > | TableLookupLanes (Vec128< double > v, Indices128< double > idx)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec128< T, 2 > | Reverse (Full64< T >, const Vec128< T, 2 > v)
template<typename T >
HWY_API Vec128< T, 1 > | Reverse2 (Simd< T, 1, 0 >, const Vec128< T, 1 > v)
template<size_t N, HWY_IF_LE128(uint8_t, N) >
HWY_API Vec128< uint8_t, N > | InterleaveLower (const Vec128< uint8_t, N > a, const Vec128< uint8_t, N > b)
template<size_t N, HWY_IF_LE128(uint16_t, N) >
HWY_API Vec128< uint16_t, N > | InterleaveLower (const Vec128< uint16_t, N > a, const Vec128< uint16_t, N > b)
template<size_t N, HWY_IF_LE128(uint32_t, N) >
HWY_API Vec128< uint32_t, N > | InterleaveLower (const Vec128< uint32_t, N > a, const Vec128< uint32_t, N > b)
template<size_t N, HWY_IF_LE128(uint64_t, N) >
HWY_API Vec128< uint64_t, N > | InterleaveLower (const Vec128< uint64_t, N > a, const Vec128< uint64_t, N > b)
template<size_t N, HWY_IF_LE128(int8_t, N) >
HWY_API Vec128< int8_t, N > | InterleaveLower (const Vec128< int8_t, N > a, const Vec128< int8_t, N > b)
template<size_t N, HWY_IF_LE128(int16_t, N) >
HWY_API Vec128< int16_t, N > | InterleaveLower (const Vec128< int16_t, N > a, const Vec128< int16_t, N > b)
template<size_t N, HWY_IF_LE128(int32_t, N) >
HWY_API Vec128< int32_t, N > | InterleaveLower (const Vec128< int32_t, N > a, const Vec128< int32_t, N > b)
template<size_t N, HWY_IF_LE128(int64_t, N) >
HWY_API Vec128< int64_t, N > | InterleaveLower (const Vec128< int64_t, N > a, const Vec128< int64_t, N > b)
template<size_t N, HWY_IF_LE128(double, N) >
HWY_API Vec128< double, N > | InterleaveLower (const Vec128< double, N > a, const Vec128< double, N > b)
template<typename T >
HWY_API Vec128< T > | ZeroExtendVector (Full128< T > d, Vec64< T > lo)
template<typename T >
HWY_API Vec128< T > | ConcatUpperLower (Full128< T > d, Vec128< T > hi, Vec128< T > lo)
HWY_API Vec128< float > | ConcatUpperLower (Full128< float > d, Vec128< float > hi, Vec128< float > lo)
HWY_API Vec128< double > | ConcatUpperLower (Full128< double >, Vec128< double > hi, Vec128< double > lo)
template<typename T , size_t N, HWY_IF_LE64(T, N) >
HWY_API Vec128< T, N > | ConcatUpperLower (Simd< T, N, 0 > d, Vec128< T, N > hi, Vec128< T, N > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec64< T > | ConcatOdd (Simd< T, 8, 0 > d, Vec64< T > hi, Vec64< T > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec32< T > | ConcatOdd (Simd< T, 4, 0 > d, Vec32< T > hi, Vec32< T > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec64< T > | ConcatOdd (Simd< T, 4, 0 > d, Vec64< T > hi, Vec64< T > lo)
template<size_t N>
HWY_API Vec128< float > | ConcatOdd (Full128< float >, Vec128< float > hi, Vec128< float > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec64< T > | ConcatEven (Simd< T, 8, 0 > d, Vec64< T > hi, Vec64< T > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec32< T > | ConcatEven (Simd< T, 4, 0 > d, Vec32< T > hi, Vec32< T > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec64< T > | ConcatEven (Simd< T, 4, 0 > d, Vec64< T > hi, Vec64< T > lo)
HWY_API Vec128< float > | ConcatEven (Full128< float >, Vec128< float > hi, Vec128< float > lo)
template<size_t N>
HWY_API Vec128< float, N > | DupEven (Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< float, N > | DupOdd (Vec128< float, N > v)
template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >
HWY_INLINE Vec128< T, N > | OddEven (const Vec128< T, N > a, const Vec128< T, N > b)
template<size_t N>
HWY_API Vec128< uint16_t, N > | operator>> (const Vec128< uint16_t, N > in, const Vec128< uint16_t, N > bits)
HWY_API Vec128< uint16_t, 1 > | operator>> (const Vec128< uint16_t, 1 > in, const Vec128< uint16_t, 1 > bits)
template<size_t N>
HWY_API Vec128< uint32_t, N > | operator>> (const Vec128< uint32_t, N > in, const Vec128< uint32_t, N > bits)
HWY_API Vec128< uint32_t, 1 > | operator>> (const Vec128< uint32_t, 1 > in, const Vec128< uint32_t, 1 > bits)
template<size_t N>
HWY_API Vec128< int16_t, N > | operator>> (const Vec128< int16_t, N > v, const Vec128< int16_t, N > bits)
HWY_API Vec128< int16_t, 1 > | operator>> (const Vec128< int16_t, 1 > v, const Vec128< int16_t, 1 > bits)
template<size_t N>
HWY_API Vec128< int32_t, N > | operator>> (const Vec128< int32_t, N > v, const Vec128< int32_t, N > bits)
HWY_API Vec128< int32_t, 1 > | operator>> (const Vec128< int32_t, 1 > v, const Vec128< int32_t, 1 > bits)
template<size_t N>
HWY_API Vec128< int64_t, N > | operator>> (const Vec128< int64_t, N > v, const Vec128< int64_t, N > bits)
template<class V , size_t N, class D16 = Simd<bfloat16_t, 2 * N, 0>>
HWY_API V | ReorderWidenMulAccumulate (Simd< float, N, 0 > df32, VFromD< D16 > a, VFromD< D16 > b, const V sum0, V &sum1)
template<size_t N>
HWY_API Vec128< uint16_t, N > | PromoteTo (Simd< uint16_t, N, 0 >, const Vec128< uint8_t, N > v)
template<size_t N>
HWY_API Vec128< uint64_t, N > | PromoteTo (Simd< uint64_t, N, 0 >, const Vec128< uint32_t, N > v)
template<size_t N>
HWY_API Vec128< uint32_t, N > | PromoteTo (Simd< uint32_t, N, 0 >, const Vec128< uint8_t, N > v)
template<size_t N>
HWY_API Vec128< int16_t, N > | PromoteTo (Simd< int16_t, N, 0 > di, const Vec128< uint8_t, N > v)
template<size_t N>
HWY_API Vec128< int32_t, N > | PromoteTo (Simd< int32_t, N, 0 > di, const Vec128< uint16_t, N > v)
template<size_t N>
HWY_API Vec128< int32_t, N > | PromoteTo (Simd< int32_t, N, 0 > di, const Vec128< uint8_t, N > v)
template<size_t N>
HWY_INLINE_F16 Vec128< float, N > | PromoteTo (Simd< float, N, 0 > df32, const Vec128< float16_t, N > v)
template<size_t N>
HWY_API Vec128< double, N > | PromoteTo (Simd< double, N, 0 >, const Vec128< float, N > v)
template<size_t N>
HWY_API Vec128< double, N > | PromoteTo (Simd< double, N, 0 >, const Vec128< int32_t, N > v)
template<typename From , typename To , hwy::EnableIf<(sizeof(To)< sizeof(From))> * = nullptr>
HWY_API Vec128< To, 1 > | TruncateTo (Simd< To, 1, 0 >, const Vec128< From, 1 > v)
template<size_t N>
HWY_API Vec128< float, N > | ConvertTo (HWY_MAYBE_UNUSED Simd< float, N, 0 > df, const Vec128< uint32_t, N > v)
template<size_t N>
HWY_API Vec128< double, N > | ConvertTo (Simd< double, N, 0 > dd, const Vec128< int64_t, N > v)
template<size_t N>
HWY_API Vec128< double, N > | ConvertTo (HWY_MAYBE_UNUSED Simd< double, N, 0 > dd, const Vec128< uint64_t, N > v)
HWY_API Vec128< int64_t > | ConvertTo (Full128< int64_t > di, const Vec128< double > v)
HWY_API Vec64< int64_t > | ConvertTo (Full64< int64_t > di, const Vec64< double > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Ceil (const Vec128< T, N > v)
template<typename T , size_t N>
HWY_API Vec128< T, N > | Floor (const Vec128< T, N > v)
template<size_t N>
HWY_API Mask128< float, N > | IsNaN (const Vec128< float, N > v)
template<size_t N>
HWY_API Mask128< double, N > | IsNaN (const Vec128< double, N > v)
template<size_t N>
HWY_API Mask128< float, N > | IsInf (const Vec128< float, N > v)
template<size_t N>
HWY_API Mask128< double, N > | IsInf (const Vec128< double, N > v)
template<size_t N>
HWY_API Mask128< float, N > | IsFinite (const Vec128< float, N > v)
template<size_t N>
HWY_API Mask128< double, N > | IsFinite (const Vec128< double, N > v)
template<size_t N, HWY_IF_GE64(float, N) >
HWY_API Vec128< float, N > | Compress (Vec128< float, N > v, Mask128< float, N > mask)
template<size_t N, HWY_IF_LE128(float, N) >
HWY_API size_t | CompressStore (Vec128< float, N > v, Mask128< float, N > mask, Simd< float, N, 0 >, float *HWY_RESTRICT unaligned)
template<size_t N, HWY_IF_LE128(double, N) >
HWY_API size_t | CompressStore (Vec128< double, N > v, Mask128< double, N > mask, Simd< double, N, 0 >, double *HWY_RESTRICT unaligned)
template<class D , class V = VFromD<D>>
HWY_API MFromD< D > | Lt128 (D d, const V a, const V b)
template<class D , class V = VFromD<D>>
HWY_API MFromD< D > | Eq128 (D d, const V a, const V b)
template<class D , class V = VFromD<D>>
HWY_API MFromD< D > | Ne128 (D d, const V a, const V b)
template<class D , class V = VFromD<D>>
HWY_API MFromD< D > | Lt128Upper (D d, const V a, const V b)
template<class D , class V = VFromD<D>>
HWY_API MFromD< D > | Eq128Upper (D d, const V a, const V b)
template<class D , class V = VFromD<D>>
HWY_API MFromD< D > | Ne128Upper (D d, const V a, const V b)
HWY_API Vec256< float > | Zero (Full256< float >)
HWY_API Vec256< double > | Zero (Full256< double >)
HWY_API Vec256< uint8_t > | Set (Full256< uint8_t >, const uint8_t t)
HWY_API Vec256< uint16_t > | Set (Full256< uint16_t >, const uint16_t t)
HWY_API Vec256< uint32_t > | Set (Full256< uint32_t >, const uint32_t t)
HWY_API Vec256< uint64_t > | Set (Full256< uint64_t >, const uint64_t t)
HWY_API Vec256< int8_t > | Set (Full256< int8_t >, const int8_t t)
HWY_API Vec256< int16_t > | Set (Full256< int16_t >, const int16_t t)
HWY_API Vec256< int32_t > | Set (Full256< int32_t >, const int32_t t)
HWY_API Vec256< int64_t > | Set (Full256< int64_t >, const int64_t t)
HWY_API Vec256< float > | Set (Full256< float >, const float t)
HWY_API Vec256< double > | Set (Full256< double >, const double t)
HWY_API Vec256< float > | Undefined (Full256< float >)
HWY_API Vec256< double > | Undefined (Full256< double >)
HWY_API Vec256< float > | And (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | And (const Vec256< double > a, const Vec256< double > b)
HWY_API Vec256< float > | AndNot (const Vec256< float > not_mask, const Vec256< float > mask)
HWY_API Vec256< double > | AndNot (const Vec256< double > not_mask, const Vec256< double > mask)
HWY_API Vec256< float > | Or (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | Or (const Vec256< double > a, const Vec256< double > b)
HWY_API Vec256< float > | Xor (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | Xor (const Vec256< double > a, const Vec256< double > b)
template<typename T >
HWY_API Vec256< T > | PopulationCount (Vec256< T > v)
HWY_API Vec256< float > | IfThenElse (Mask256< float > mask, Vec256< float > yes, Vec256< float > no)
HWY_API Vec256< double > | IfThenElse (Mask256< double > mask, Vec256< double > yes, Vec256< double > no)
HWY_API Vec256< float > | IfThenElseZero (Mask256< float > mask, Vec256< float > yes)
HWY_API Vec256< double > | IfThenElseZero (Mask256< double > mask, Vec256< double > yes)
HWY_API Vec256< float > | IfThenZeroElse (Mask256< float > mask, Vec256< float > no)
HWY_API Vec256< double > | IfThenZeroElse (Mask256< double > mask, Vec256< double > no)
template<typename T >
HWY_API Vec256< T > | ZeroIfNegative (const Vec256< T > v)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Mask256< T > | operator== (const Vec256< T > a, const Vec256< T > b)
HWY_API Mask256< float > | operator== (Vec256< float > a, Vec256< float > b)
HWY_API Mask256< double > | operator== (Vec256< double > a, Vec256< double > b)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Mask256< T > | operator!= (const Vec256< T > a, const Vec256< T > b)
HWY_API Mask256< float > | operator!= (Vec256< float > a, Vec256< float > b)
HWY_API Mask256< double > | operator!= (Vec256< double > a, Vec256< double > b)
HWY_API Mask256< int8_t > | operator> (Vec256< int8_t > a, Vec256< int8_t > b)
HWY_API Mask256< int16_t > | operator> (Vec256< int16_t > a, Vec256< int16_t > b)
HWY_API Mask256< int32_t > | operator> (Vec256< int32_t > a, Vec256< int32_t > b)
HWY_API Mask256< int64_t > | operator> (Vec256< int64_t > a, Vec256< int64_t > b)
HWY_API Mask256< uint8_t > | operator> (Vec256< uint8_t > a, Vec256< uint8_t > b)
HWY_API Mask256< uint16_t > | operator> (const Vec256< uint16_t > a, const Vec256< uint16_t > b)
HWY_API Mask256< uint32_t > | operator> (const Vec256< uint32_t > a, const Vec256< uint32_t > b)
HWY_API Mask256< uint64_t > | operator> (const Vec256< uint64_t > a, const Vec256< uint64_t > b)
HWY_API Mask256< float > | operator> (Vec256< float > a, Vec256< float > b)
HWY_API Mask256< double > | operator> (Vec256< double > a, Vec256< double > b)
HWY_API Mask256< float > | operator>= (Vec256< float > a, Vec256< float > b)
HWY_API Mask256< double > | operator>= (Vec256< double > a, Vec256< double > b)
HWY_API Mask256< float > | MaskFromVec (const Vec256< float > v)
HWY_API Mask256< double > | MaskFromVec (const Vec256< double > v)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec256< T > | VecFromMask (const Mask256< T > v)
HWY_API Vec256< float > | VecFromMask (const Mask256< float > v)
HWY_API Vec256< double > | VecFromMask (const Mask256< double > v)
HWY_API Vec256< uint8_t > | Min (const Vec256< uint8_t > a, const Vec256< uint8_t > b)
HWY_API Vec256< uint16_t > | Min (const Vec256< uint16_t > a, const Vec256< uint16_t > b)
HWY_API Vec256< uint32_t > | Min (const Vec256< uint32_t > a, const Vec256< uint32_t > b)
HWY_API Vec256< uint64_t > | Min (const Vec256< uint64_t > a, const Vec256< uint64_t > b)
HWY_API Vec256< int8_t > | Min (const Vec256< int8_t > a, const Vec256< int8_t > b)
HWY_API Vec256< int16_t > | Min (const Vec256< int16_t > a, const Vec256< int16_t > b)
HWY_API Vec256< int32_t > | Min (const Vec256< int32_t > a, const Vec256< int32_t > b)
HWY_API Vec256< int64_t > | Min (const Vec256< int64_t > a, const Vec256< int64_t > b)
HWY_API Vec256< float > | Min (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | Min (const Vec256< double > a, const Vec256< double > b)
HWY_API Vec256< uint8_t > | Max (const Vec256< uint8_t > a, const Vec256< uint8_t > b)
HWY_API Vec256< uint16_t > | Max (const Vec256< uint16_t > a, const Vec256< uint16_t > b)
HWY_API Vec256< uint32_t > | Max (const Vec256< uint32_t > a, const Vec256< uint32_t > b)
HWY_API Vec256< uint64_t > | Max (const Vec256< uint64_t > a, const Vec256< uint64_t > b)
HWY_API Vec256< int8_t > | Max (const Vec256< int8_t > a, const Vec256< int8_t > b)
HWY_API Vec256< int16_t > | Max (const Vec256< int16_t > a, const Vec256< int16_t > b)
HWY_API Vec256< int32_t > | Max (const Vec256< int32_t > a, const Vec256< int32_t > b)
HWY_API Vec256< int64_t > | Max (const Vec256< int64_t > a, const Vec256< int64_t > b)
HWY_API Vec256< float > | Max (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | Max (const Vec256< double > a, const Vec256< double > b)
HWY_API Vec256< uint8_t > | operator+ (const Vec256< uint8_t > a, const Vec256< uint8_t > b)
HWY_API Vec256< uint16_t > | operator+ (const Vec256< uint16_t > a, const Vec256< uint16_t > b)
HWY_API Vec256< uint32_t > | operator+ (const Vec256< uint32_t > a, const Vec256< uint32_t > b)
HWY_API Vec256< uint64_t > | operator+ (const Vec256< uint64_t > a, const Vec256< uint64_t > b)
HWY_API Vec256< int8_t > | operator+ (const Vec256< int8_t > a, const Vec256< int8_t > b)
HWY_API Vec256< int16_t > | operator+ (const Vec256< int16_t > a, const Vec256< int16_t > b)
HWY_API Vec256< int32_t > | operator+ (const Vec256< int32_t > a, const Vec256< int32_t > b)
HWY_API Vec256< int64_t > | operator+ (const Vec256< int64_t > a, const Vec256< int64_t > b)
HWY_API Vec256< float > | operator+ (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | operator+ (const Vec256< double > a, const Vec256< double > b)
HWY_API Vec256< uint8_t > | operator- (const Vec256< uint8_t > a, const Vec256< uint8_t > b)
HWY_API Vec256< uint16_t > | operator- (const Vec256< uint16_t > a, const Vec256< uint16_t > b)
HWY_API Vec256< uint32_t > | operator- (const Vec256< uint32_t > a, const Vec256< uint32_t > b)
HWY_API Vec256< uint64_t > | operator- (const Vec256< uint64_t > a, const Vec256< uint64_t > b)
HWY_API Vec256< int8_t > | operator- (const Vec256< int8_t > a, const Vec256< int8_t > b)
HWY_API Vec256< int16_t > | operator- (const Vec256< int16_t > a, const Vec256< int16_t > b)
HWY_API Vec256< int32_t > | operator- (const Vec256< int32_t > a, const Vec256< int32_t > b)
HWY_API Vec256< int64_t > | operator- (const Vec256< int64_t > a, const Vec256< int64_t > b)
HWY_API Vec256< float > | operator- (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | operator- (const Vec256< double > a, const Vec256< double > b)
HWY_API Vec256< uint8_t > | SaturatedAdd (const Vec256< uint8_t > a, const Vec256< uint8_t > b)
HWY_API Vec256< uint16_t > | SaturatedAdd (const Vec256< uint16_t > a, const Vec256< uint16_t > b)
HWY_API Vec256< int8_t > | SaturatedAdd (const Vec256< int8_t > a, const Vec256< int8_t > b)
HWY_API Vec256< int16_t > | SaturatedAdd (const Vec256< int16_t > a, const Vec256< int16_t > b)
HWY_API Vec256< uint8_t > | SaturatedSub (const Vec256< uint8_t > a, const Vec256< uint8_t > b)
HWY_API Vec256< uint16_t > | SaturatedSub (const Vec256< uint16_t > a, const Vec256< uint16_t > b)
HWY_API Vec256< int8_t > | SaturatedSub (const Vec256< int8_t > a, const Vec256< int8_t > b)
HWY_API Vec256< int16_t > | SaturatedSub (const Vec256< int16_t > a, const Vec256< int16_t > b)
HWY_API Vec256< uint8_t > | AverageRound (const Vec256< uint8_t > a, const Vec256< uint8_t > b)
HWY_API Vec256< uint16_t > | AverageRound (const Vec256< uint16_t > a, const Vec256< uint16_t > b)
HWY_API Vec256< int8_t > | Abs (const Vec256< int8_t > v)
HWY_API Vec256< int16_t > | Abs (const Vec256< int16_t > v)
HWY_API Vec256< int32_t > | Abs (const Vec256< int32_t > v)
HWY_API Vec256< float > | Abs (const Vec256< float > v)
HWY_API Vec256< double > | Abs (const Vec256< double > v)
HWY_API Vec256< uint16_t > | operator* (Vec256< uint16_t > a, Vec256< uint16_t > b)
HWY_API Vec256< uint32_t > | operator* (Vec256< uint32_t > a, Vec256< uint32_t > b)
HWY_API Vec256< int16_t > | operator* (Vec256< int16_t > a, Vec256< int16_t > b)
HWY_API Vec256< int32_t > | operator* (Vec256< int32_t > a, Vec256< int32_t > b)
HWY_API Vec256< uint16_t > | MulHigh (Vec256< uint16_t > a, Vec256< uint16_t > b)
HWY_API Vec256< int16_t > | MulHigh (Vec256< int16_t > a, Vec256< int16_t > b)
HWY_API Vec256< int16_t > | MulFixedPoint15 (Vec256< int16_t > a, Vec256< int16_t > b)
template<int kBits>
HWY_API Vec256< uint16_t > | ShiftLeft (const Vec256< uint16_t > v)
template<int kBits>
HWY_API Vec256< uint32_t > | ShiftLeft (const Vec256< uint32_t > v)
template<int kBits>
HWY_API Vec256< uint64_t > | ShiftLeft (const Vec256< uint64_t > v)
template<int kBits>
HWY_API Vec256< int16_t > | ShiftLeft (const Vec256< int16_t > v)
template<int kBits>
HWY_API Vec256< int32_t > | ShiftLeft (const Vec256< int32_t > v)
template<int kBits>
HWY_API Vec256< int64_t > | ShiftLeft (const Vec256< int64_t > v)
template<int kBits, typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec256< T > | ShiftLeft (const Vec256< T > v)
template<int kBits>
HWY_API Vec256< uint16_t > | ShiftRight (const Vec256< uint16_t > v)
template<int kBits>
HWY_API Vec256< uint32_t > | ShiftRight (const Vec256< uint32_t > v)
template<int kBits>
HWY_API Vec256< uint64_t > | ShiftRight (const Vec256< uint64_t > v)
template<int kBits>
HWY_API Vec256< uint8_t > | ShiftRight (const Vec256< uint8_t > v)
template<int kBits>
HWY_API Vec256< int16_t > | ShiftRight (const Vec256< int16_t > v)
template<int kBits>
HWY_API Vec256< int32_t > | ShiftRight (const Vec256< int32_t > v)
template<int kBits>
HWY_API Vec256< int8_t > | ShiftRight (const Vec256< int8_t > v)
template<int kBits>
HWY_API Vec256< uint32_t > | RotateRight (const Vec256< uint32_t > v)
template<int kBits>
HWY_API Vec256< uint64_t > | RotateRight (const Vec256< uint64_t > v)
HWY_API Vec256< int16_t > | BroadcastSignBit (const Vec256< int16_t > v)
HWY_API Vec256< int32_t > | BroadcastSignBit (const Vec256< int32_t > v)
HWY_API Vec256< int64_t > | BroadcastSignBit (const Vec256< int64_t > v)
template<int kBits>
HWY_API Vec256< int64_t > | ShiftRight (const Vec256< int64_t > v)
HWY_API Vec256< int64_t > | Abs (const Vec256< int64_t > v)
HWY_API Vec256< int8_t > | IfNegativeThenElse (Vec256< int8_t > v, Vec256< int8_t > yes, Vec256< int8_t > no)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec256< T > | IfNegativeThenElse (Vec256< T > v, Vec256< T > yes, Vec256< T > no)
HWY_API Vec256< uint16_t > | ShiftLeftSame (const Vec256< uint16_t > v, const int bits)
HWY_API Vec256< uint32_t > | ShiftLeftSame (const Vec256< uint32_t > v, const int bits)
HWY_API Vec256< uint64_t > | ShiftLeftSame (const Vec256< uint64_t > v, const int bits)
HWY_API Vec256< int16_t > | ShiftLeftSame (const Vec256< int16_t > v, const int bits)
HWY_API Vec256< int32_t > | ShiftLeftSame (const Vec256< int32_t > v, const int bits)
HWY_API Vec256< int64_t > | ShiftLeftSame (const Vec256< int64_t > v, const int bits)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec256< T > | ShiftLeftSame (const Vec256< T > v, const int bits)
HWY_API Vec256< uint16_t > | ShiftRightSame (const Vec256< uint16_t > v, const int bits)
HWY_API Vec256< uint32_t > | ShiftRightSame (const Vec256< uint32_t > v, const int bits)
HWY_API Vec256< uint64_t > | ShiftRightSame (const Vec256< uint64_t > v, const int bits)
HWY_API Vec256< uint8_t > | ShiftRightSame (Vec256< uint8_t > v, const int bits)
HWY_API Vec256< int16_t > | ShiftRightSame (const Vec256< int16_t > v, const int bits)
HWY_API Vec256< int32_t > | ShiftRightSame (const Vec256< int32_t > v, const int bits)
HWY_API Vec256< int64_t > | ShiftRightSame (const Vec256< int64_t > v, const int bits)
HWY_API Vec256< int8_t > | ShiftRightSame (Vec256< int8_t > v, const int bits)
HWY_API Vec256< float > | operator* (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | operator* (const Vec256< double > a, const Vec256< double > b)
HWY_API Vec256< float > | operator/ (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | operator/ (const Vec256< double > a, const Vec256< double > b)
HWY_API Vec256< double > | MulAdd (const Vec256< double > mul, const Vec256< double > x, const Vec256< double > add)
HWY_API Vec256< double > | NegMulAdd (const Vec256< double > mul, const Vec256< double > x, const Vec256< double > add)
HWY_API Vec256< double > | MulSub (const Vec256< double > mul, const Vec256< double > x, const Vec256< double > sub)
HWY_API Vec256< double > | NegMulSub (const Vec256< double > mul, const Vec256< double > x, const Vec256< double > sub)
HWY_API Vec256< float > | Sqrt (const Vec256< float > v)
HWY_API Vec256< double > | Sqrt (const Vec256< double > v)
HWY_API Vec256< double > | Round (const Vec256< double > v)
HWY_API Vec256< double > | Trunc (const Vec256< double > v)
HWY_API Vec256< double > | Ceil (const Vec256< double > v)
HWY_API Vec256< double > | Floor (const Vec256< double > v)
HWY_API Mask256< float > | IsNaN (const Vec256< float > v)
HWY_API Mask256< double > | IsNaN (const Vec256< double > v)
HWY_API Mask256< float > | IsInf (const Vec256< float > v)
HWY_API Mask256< double > | IsInf (const Vec256< double > v)
HWY_API Mask256< float > | IsFinite (const Vec256< float > v)
HWY_API Mask256< double > | IsFinite (const Vec256< double > v)
HWY_API Vec256< float > | Load (Full256< float >, const float *HWY_RESTRICT aligned)
HWY_API Vec256< double > | Load (Full256< double >, const double *HWY_RESTRICT aligned)
HWY_API Vec256< float > | LoadU (Full256< float >, const float *HWY_RESTRICT p)
HWY_API Vec256< double > | LoadU (Full256< double >, const double *HWY_RESTRICT p)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec256< T > | MaskedLoad (Mask256< T > m, Full256< T >, const T *HWY_RESTRICT p)
HWY_API Vec256< float > | MaskedLoad (Mask256< float > m, Full256< float >, const float *HWY_RESTRICT p)
HWY_API Vec256< double > | MaskedLoad (Mask256< double > m, Full256< double >, const double *HWY_RESTRICT p)
HWY_API Vec256< float > | LoadDup128 (Full256< float >, const float *const HWY_RESTRICT p)
HWY_API Vec256< double > | LoadDup128 (Full256< double >, const double *const HWY_RESTRICT p)
HWY_API void | Store (const Vec256< float > v, Full256< float >, float *HWY_RESTRICT aligned)
HWY_API void | Store (const Vec256< double > v, Full256< double >, double *HWY_RESTRICT aligned)
HWY_API void | StoreU (const Vec256< float > v, Full256< float >, float *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec256< double > v, Full256< double >, double *HWY_RESTRICT p)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API void | BlendedStore (Vec256< T > v, Mask256< T > m, Full256< T >, T *HWY_RESTRICT p)
HWY_API void | BlendedStore (Vec256< float > v, Mask256< float > m, Full256< float >, float *HWY_RESTRICT p)
HWY_API void | BlendedStore (Vec256< double > v, Mask256< double > m, Full256< double >, double *HWY_RESTRICT p)
HWY_API void | Stream (const Vec256< float > v, Full256< float >, float *HWY_RESTRICT aligned)
HWY_API void | Stream (const Vec256< double > v, Full256< double >, double *HWY_RESTRICT aligned)
HWY_API void | ScatterOffset (Vec256< float > v, Full256< float >, float *HWY_RESTRICT base, const Vec256< int32_t > offset)
HWY_API void | ScatterIndex (Vec256< float > v, Full256< float >, float *HWY_RESTRICT base, const Vec256< int32_t > index)
HWY_API void | ScatterOffset (Vec256< double > v, Full256< double >, double *HWY_RESTRICT base, const Vec256< int64_t > offset)
HWY_API void | ScatterIndex (Vec256< double > v, Full256< double >, double *HWY_RESTRICT base, const Vec256< int64_t > index)
HWY_API Vec256< float > | GatherOffset (Full256< float >, const float *HWY_RESTRICT base, const Vec256< int32_t > offset)
HWY_API Vec256< float > | GatherIndex (Full256< float >, const float *HWY_RESTRICT base, const Vec256< int32_t > index)
HWY_API Vec256< double > | GatherOffset (Full256< double >, const double *HWY_RESTRICT base, const Vec256< int64_t > offset)
HWY_API Vec256< double > | GatherIndex (Full256< double >, const double *HWY_RESTRICT base, const Vec256< int64_t > index)
HWY_API Vec128< float > | LowerHalf (Full128< float >, Vec256< float > v)
HWY_API Vec128< double > | LowerHalf (Full128< double >, Vec256< double > v)
HWY_API Vec128< float > | UpperHalf (Full128< float >, Vec256< float > v)
HWY_API Vec128< double > | UpperHalf (Full128< double >, Vec256< double > v)
HWY_API Vec256< float > | ZeroExtendVector (Full256< float >, Vec128< float > lo)
HWY_API Vec256< double > | ZeroExtendVector (Full256< double >, Vec128< double > lo)
HWY_API Vec256< float > | Combine (Full256< float > d, Vec128< float > hi, Vec128< float > lo)
HWY_API Vec256< double > | Combine (Full256< double > d, Vec128< double > hi, Vec128< double > lo)
template<int kLane>
HWY_API Vec256< uint16_t > | Broadcast (const Vec256< uint16_t > v)
template<int kLane>
HWY_API Vec256< uint32_t > | Broadcast (const Vec256< uint32_t > v)
template<int kLane>
HWY_API Vec256< uint64_t > | Broadcast (const Vec256< uint64_t > v)
template<int kLane>
HWY_API Vec256< int16_t > | Broadcast (const Vec256< int16_t > v)
template<int kLane>
HWY_API Vec256< int32_t > | Broadcast (const Vec256< int32_t > v)
template<int kLane>
HWY_API Vec256< int64_t > | Broadcast (const Vec256< int64_t > v)
template<int kLane>
HWY_API Vec256< float > | Broadcast (Vec256< float > v)
template<int kLane>
HWY_API Vec256< double > | Broadcast (const Vec256< double > v)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec256< T > | Shuffle2301 (const Vec256< T > v)
HWY_API Vec256< float > | Shuffle2301 (const Vec256< float > v)
HWY_API Vec256< uint32_t > | Shuffle1032 (const Vec256< uint32_t > v)
HWY_API Vec256< int32_t > | Shuffle1032 (const Vec256< int32_t > v)
HWY_API Vec256< float > | Shuffle1032 (const Vec256< float > v)
HWY_API Vec256< uint64_t > | Shuffle01 (const Vec256< uint64_t > v)
HWY_API Vec256< int64_t > | Shuffle01 (const Vec256< int64_t > v)
HWY_API Vec256< double > | Shuffle01 (const Vec256< double > v)
HWY_API Vec256< uint32_t > | Shuffle0321 (const Vec256< uint32_t > v)
HWY_API Vec256< int32_t > | Shuffle0321 (const Vec256< int32_t > v)
HWY_API Vec256< float > | Shuffle0321 (const Vec256< float > v)
HWY_API Vec256< uint32_t > | Shuffle2103 (const Vec256< uint32_t > v)
HWY_API Vec256< int32_t > | Shuffle2103 (const Vec256< int32_t > v)
HWY_API Vec256< float > | Shuffle2103 (const Vec256< float > v)
HWY_API Vec256< uint32_t > | Shuffle0123 (const Vec256< uint32_t > v)
HWY_API Vec256< int32_t > | Shuffle0123 (const Vec256< int32_t > v)
HWY_API Vec256< float > | Shuffle0123 (const Vec256< float > v)
template<typename T , typename TI , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Indices256< T > | IndicesFromVec (Full256< T >, Vec256< TI > vec)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec256< T > | TableLookupLanes (Vec256< T > v, Indices256< T > idx)
HWY_API Vec256< float > | TableLookupLanes (const Vec256< float > v, const Indices256< float > idx)
HWY_API Vec256< double > | TableLookupLanes (const Vec256< double > v, const Indices256< double > idx)
HWY_API Vec256< float > | SwapAdjacentBlocks (Vec256< float > v)
HWY_API Vec256< double > | SwapAdjacentBlocks (Vec256< double > v)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec256< T > | Reverse (Full256< T > d, const Vec256< T > v)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec256< T > | Reverse2 (Full256< T > d, const Vec256< T > v)
HWY_API Vec256< uint8_t > | InterleaveLower (const Vec256< uint8_t > a, const Vec256< uint8_t > b)
HWY_API Vec256< uint16_t > | InterleaveLower (const Vec256< uint16_t > a, const Vec256< uint16_t > b)
HWY_API Vec256< uint32_t > | InterleaveLower (const Vec256< uint32_t > a, const Vec256< uint32_t > b)
HWY_API Vec256< uint64_t > | InterleaveLower (const Vec256< uint64_t > a, const Vec256< uint64_t > b)
HWY_API Vec256< int8_t > | InterleaveLower (const Vec256< int8_t > a, const Vec256< int8_t > b)
HWY_API Vec256< int16_t > | InterleaveLower (const Vec256< int16_t > a, const Vec256< int16_t > b)
HWY_API Vec256< int32_t > | InterleaveLower (const Vec256< int32_t > a, const Vec256< int32_t > b)
HWY_API Vec256< int64_t > | InterleaveLower (const Vec256< int64_t > a, const Vec256< int64_t > b)
HWY_API Vec256< float > | InterleaveLower (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | InterleaveLower (const Vec256< double > a, const Vec256< double > b)
template<typename T , typename TW = MakeWide<T>>
HWY_API Vec256< TW > | ZipLower (Vec256< T > a, Vec256< T > b)
template<typename T , typename TW = MakeWide<T>>
HWY_API Vec256< TW > | ZipLower (Full256< TW > dw, Vec256< T > a, Vec256< T > b)
template<typename T , typename TW = MakeWide<T>>
HWY_API Vec256< TW > | ZipUpper (Full256< TW > dw, Vec256< T > a, Vec256< T > b)
HWY_API Vec256< float > | ConcatLowerLower (Full256< float > d, const Vec256< float > hi, const Vec256< float > lo)
HWY_API Vec256< double > | ConcatLowerLower (Full256< double > d, const Vec256< double > hi, const Vec256< double > lo)
HWY_API Vec256< float > | ConcatLowerUpper (Full256< float >, const Vec256< float > hi, const Vec256< float > lo)
HWY_API Vec256< double > | ConcatLowerUpper (Full256< double >, const Vec256< double > hi, const Vec256< double > lo)
HWY_API Vec256< float > | ConcatUpperLower (Full256< float >, const Vec256< float > hi, const Vec256< float > lo)
HWY_API Vec256< double > | ConcatUpperLower (Full256< double >, const Vec256< double > hi, const Vec256< double > lo)
HWY_API Vec256< float > | ConcatUpperUpper (Full256< float >, const Vec256< float > hi, const Vec256< float > lo)
HWY_API Vec256< double > | ConcatUpperUpper (Full256< double >, const Vec256< double > hi, const Vec256< double > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec256< T > | ConcatOdd (Full256< T > d, Vec256< T > hi, Vec256< T > lo)
HWY_API Vec256< float > | ConcatOdd (Full256< float > d, Vec256< float > hi, Vec256< float > lo)
HWY_API Vec256< double > | ConcatOdd (Full256< double > d, Vec256< double > hi, Vec256< double > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec256< T > | ConcatEven (Full256< T > d, Vec256< T > hi, Vec256< T > lo)
HWY_API Vec256< float > | ConcatEven (Full256< float > d, Vec256< float > hi, Vec256< float > lo)
HWY_API Vec256< double > | ConcatEven (Full256< double > d, Vec256< double > hi, Vec256< double > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec256< T > | DupEven (Vec256< T > v)
HWY_API Vec256< float > | DupEven (Vec256< float > v)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec256< T > | DupOdd (Vec256< T > v)
HWY_API Vec256< float > | DupOdd (Vec256< float > v)
HWY_API Vec256< float > | OddEven (const Vec256< float > a, const Vec256< float > b)
HWY_API Vec256< double > | OddEven (const Vec256< double > a, const Vec256< double > b)
template<typename T >
Vec256< T > | OddEvenBlocks (Vec256< T > odd, Vec256< T > even)
HWY_API Vec256< float > | OddEvenBlocks (Vec256< float > odd, Vec256< float > even)
HWY_API Vec256< double > | OddEvenBlocks (Vec256< double > odd, Vec256< double > even)
HWY_API Vec256< uint16_t > | operator>> (Vec256< uint16_t > v, Vec256< uint16_t > bits)
HWY_API Vec256< uint32_t > | operator>> (Vec256< uint32_t > v, Vec256< uint32_t > bits)
HWY_API Vec256< uint64_t > | operator>> (Vec256< uint64_t > v, Vec256< uint64_t > bits)
HWY_API Vec256< int16_t > | operator>> (Vec256< int16_t > v, Vec256< int16_t > bits)
HWY_API Vec256< int32_t > | operator>> (Vec256< int32_t > v, Vec256< int32_t > bits)
HWY_API Vec256< int64_t > | operator>> (Vec256< int64_t > v, Vec256< int64_t > bits)
HWY_API Vec256< int32_t > | ReorderWidenMulAccumulate (Full256< int32_t >, Vec256< int16_t > a, Vec256< int16_t > b, const Vec256< int32_t > sum0, Vec256< int32_t > &)
HWY_API Vec256< int32_t > | RearrangeToOddPlusEven (const Vec256< int32_t > sum0, Vec256< int32_t >)
HWY_API Vec256< double > | PromoteTo (Full256< double >, const Vec128< float, 4 > v)
HWY_API Vec256< double > | PromoteTo (Full256< double >, const Vec128< int32_t, 4 > v)
HWY_API Vec256< uint16_t > | PromoteTo (Full256< uint16_t >, Vec128< uint8_t > v)
HWY_API Vec256< uint32_t > | PromoteTo (Full256< uint32_t >, Vec128< uint8_t, 8 > v)
HWY_API Vec256< int16_t > | PromoteTo (Full256< int16_t >, Vec128< uint8_t > v)
HWY_API Vec256< int32_t > | PromoteTo (Full256< int32_t >, Vec128< uint8_t, 8 > v)
HWY_API Vec256< uint32_t > | PromoteTo (Full256< uint32_t >, Vec128< uint16_t > v)
HWY_API Vec256< int32_t > | PromoteTo (Full256< int32_t >, Vec128< uint16_t > v)
HWY_API Vec256< uint64_t > | PromoteTo (Full256< uint64_t >, Vec128< uint32_t > v)
HWY_API Vec256< int16_t > | PromoteTo (Full256< int16_t >, Vec128< int8_t > v)
HWY_API Vec256< int32_t > | PromoteTo (Full256< int32_t >, Vec128< int8_t, 8 > v)
HWY_API Vec256< int32_t > | PromoteTo (Full256< int32_t >, Vec128< int16_t > v)
HWY_API Vec256< int64_t > | PromoteTo (Full256< int64_t >, Vec128< int32_t > v)
HWY_API Vec128< float > | DemoteTo (Full128< float >, const Vec256< double > v)
HWY_API Vec128< uint8_t, 4 > | TruncateTo (Simd< uint8_t, 4, 0 >, const Vec256< uint64_t > v)
HWY_API Vec128< uint16_t, 4 > | TruncateTo (Simd< uint16_t, 4, 0 >, const Vec256< uint64_t > v)
HWY_API Vec128< uint32_t > | TruncateTo (Simd< uint32_t, 4, 0 >, const Vec256< uint64_t > v)
HWY_API Vec128< uint8_t, 8 > | TruncateTo (Simd< uint8_t, 8, 0 >, const Vec256< uint32_t > v)
HWY_API Vec128< uint16_t > | TruncateTo (Simd< uint16_t, 8, 0 >, const Vec256< uint32_t > v)
HWY_API Vec128< uint8_t > | TruncateTo (Simd< uint8_t, 16, 0 >, const Vec256< uint16_t > v)
HWY_API Vec256< float > | ConvertTo (Full256< float >, const Vec256< int32_t > v)
HWY_API Vec256< double > | ConvertTo (Full256< double > dd, const Vec256< int64_t > v)
HWY_API Vec256< float > | ConvertTo (HWY_MAYBE_UNUSED Full256< float > df, const Vec256< uint32_t > v)
HWY_API Vec256< double > | ConvertTo (HWY_MAYBE_UNUSED Full256< double > dd, const Vec256< uint64_t > v)
HWY_API Vec256< int32_t > | ConvertTo (Full256< int32_t > d, const Vec256< float > v)
HWY_API Vec256< int64_t > | ConvertTo (Full256< int64_t > di, const Vec256< double > v)
HWY_API Vec256< float > | PromoteTo (Full256< float > df32, const Vec128< float16_t > v)
HWY_API Vec256< float > | PromoteTo (Full256< float > df32, const Vec128< bfloat16_t > v)
HWY_API Vec256< uint8_t > | AESRound (Vec256< uint8_t > state, Vec256< uint8_t > round_key)
HWY_API Vec256< uint8_t > | AESLastRound (Vec256< uint8_t > state, Vec256< uint8_t > round_key)
HWY_API Vec256< uint64_t > | CLMulLower (Vec256< uint64_t > a, Vec256< uint64_t > b)
HWY_API Vec256< uint64_t > | CLMulUpper (Vec256< uint64_t > a, Vec256< uint64_t > b)
template<typename T , typename T2 >
HWY_API Vec256< T > | Iota (const Full256< T > d, const T2 first)
template<typename T >
HWY_API Mask256< T > | LoadMaskBits (const Full256< T >, const uint8_t *HWY_RESTRICT bits)
template<typename T >
HWY_API size_t | StoreMaskBits (const Full256< T >, const Mask256< T > mask, uint8_t *bits)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec256< T > | Compress (Vec256< T > v, Mask256< T > mask)
HWY_API Vec256< float > | Compress (Vec256< float > v, Mask256< float > mask)
template<typename T , HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec256< T > | CompressNot (Vec256< T > v, Mask256< T > mask)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API size_t | CompressStore (Vec256< T > v, Mask256< T > mask, Full256< T >, T *HWY_RESTRICT unaligned)
HWY_API size_t | CompressStore (Vec256< float > v, Mask256< float > mask, Full256< float >, float *HWY_RESTRICT unaligned)
HWY_API size_t | CompressStore (Vec256< double > v, Mask256< double > mask, Full256< double >, double *HWY_RESTRICT unaligned)
template<typename T , HWY_IF_NOT_LANE_SIZE(T, 1) >
HWY_API size_t | CompressBitsStore (Vec256< T > v, const uint8_t *HWY_RESTRICT bits, Full256< T > d, T *HWY_RESTRICT unaligned)
template<typename T , typename FromT >
HWY_API Vec512< T > | BitCast (Full512< T > d, Vec512< FromT > v)
template<typename T >
HWY_API Vec512< T > | Zero (Full512< T >)
HWY_API Vec512< float > | Zero (Full512< float >)
HWY_API Vec512< double > | Zero (Full512< double >)
HWY_API Vec512< uint8_t > | Set (Full512< uint8_t >, const uint8_t t)
HWY_API Vec512< uint16_t > | Set (Full512< uint16_t >, const uint16_t t)
HWY_API Vec512< uint32_t > | Set (Full512< uint32_t >, const uint32_t t)
HWY_API Vec512< uint64_t > | Set (Full512< uint64_t >, const uint64_t t)
HWY_API Vec512< int8_t > | Set (Full512< int8_t >, const int8_t t)
HWY_API Vec512< int16_t > | Set (Full512< int16_t >, const int16_t t)
HWY_API Vec512< int32_t > | Set (Full512< int32_t >, const int32_t t)
HWY_API Vec512< int64_t > | Set (Full512< int64_t >, const int64_t t)
HWY_API Vec512< float > | Set (Full512< float >, const float t)
HWY_API Vec512< double > | Set (Full512< double >, const double t)
template<typename T >
HWY_API Vec512< T > | Undefined (Full512< T >)
HWY_API Vec512< float > | Undefined (Full512< float >)
HWY_API Vec512< double > | Undefined (Full512< double >)
template<typename T >
HWY_API Vec512< T > | Not (const Vec512< T > v)
template<typename T >
HWY_API Vec512< T > | And (const Vec512< T > a, const Vec512< T > b)
HWY_API Vec512< float > | And (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | And (const Vec512< double > a, const Vec512< double > b)
template<typename T >
HWY_API Vec512< T > | AndNot (const Vec512< T > not_mask, const Vec512< T > mask)
HWY_API Vec512< float > | AndNot (const Vec512< float > not_mask, const Vec512< float > mask)
HWY_API Vec512< double > | AndNot (const Vec512< double > not_mask, const Vec512< double > mask)
template<typename T >
HWY_API Vec512< T > | Or (const Vec512< T > a, const Vec512< T > b)
HWY_API Vec512< float > | Or (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | Or (const Vec512< double > a, const Vec512< double > b)
template<typename T >
HWY_API Vec512< T > | Xor (const Vec512< T > a, const Vec512< T > b)
HWY_API Vec512< float > | Xor (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | Xor (const Vec512< double > a, const Vec512< double > b)
template<typename T >
HWY_API Vec512< T > | Xor3 (Vec512< T > x1, Vec512< T > x2, Vec512< T > x3)
template<typename T >
HWY_API Vec512< T > | Or3 (Vec512< T > o1, Vec512< T > o2, Vec512< T > o3)
template<typename T >
HWY_API Vec512< T > | OrAnd (Vec512< T > o, Vec512< T > a1, Vec512< T > a2)
template<typename T >
HWY_API Vec512< T > | IfVecThenElse (Vec512< T > mask, Vec512< T > yes, Vec512< T > no)
template<typename T >
HWY_API Vec512< T > | operator& (const Vec512< T > a, const Vec512< T > b)
template<typename T >
HWY_API Vec512< T > | operator| (const Vec512< T > a, const Vec512< T > b)
template<typename T >
HWY_API Vec512< T > | operator^ (const Vec512< T > a, const Vec512< T > b)
template<typename T >
HWY_API Vec512< T > | PopulationCount (Vec512< T > v)
template<typename T >
HWY_API Vec512< T > | CopySign (const Vec512< T > magn, const Vec512< T > sign)
template<typename T >
HWY_API Vec512< T > | CopySignToAbs (const Vec512< T > abs, const Vec512< T > sign)
template<typename T >
HWY_API Mask512< T > | FirstN (const Full512< T >, size_t n)
template<typename T >
HWY_API Vec512< T > | IfThenElse (const Mask512< T > mask, const Vec512< T > yes, const Vec512< T > no)
HWY_API Vec512< float > | IfThenElse (const Mask512< float > mask, const Vec512< float > yes, const Vec512< float > no)
HWY_API Vec512< double > | IfThenElse (const Mask512< double > mask, const Vec512< double > yes, const Vec512< double > no)
template<typename T >
HWY_API Vec512< T > | IfThenElseZero (const Mask512< T > mask, const Vec512< T > yes)
HWY_API Vec512< float > | IfThenElseZero (const Mask512< float > mask, const Vec512< float > yes)
HWY_API Vec512< double > | IfThenElseZero (const Mask512< double > mask, const Vec512< double > yes)
template<typename T >
HWY_API Vec512< T > | IfThenZeroElse (const Mask512< T > mask, const Vec512< T > no)
HWY_API Vec512< float > | IfThenZeroElse (const Mask512< float > mask, const Vec512< float > no)
HWY_API Vec512< double > | IfThenZeroElse (const Mask512< double > mask, const Vec512< double > no)
template<typename T >
HWY_API Vec512< T > | IfNegativeThenElse (Vec512< T > v, Vec512< T > yes, Vec512< T > no)
template<typename T , HWY_IF_FLOAT(T) >
HWY_API Vec512< T > | ZeroIfNegative (const Vec512< T > v)
HWY_API Vec512< uint8_t > | operator+ (const Vec512< uint8_t > a, const Vec512< uint8_t > b)
HWY_API Vec512< uint16_t > | operator+ (const Vec512< uint16_t > a, const Vec512< uint16_t > b)
HWY_API Vec512< uint32_t > | operator+ (const Vec512< uint32_t > a, const Vec512< uint32_t > b)
HWY_API Vec512< uint64_t > | operator+ (const Vec512< uint64_t > a, const Vec512< uint64_t > b)
HWY_API Vec512< int8_t > | operator+ (const Vec512< int8_t > a, const Vec512< int8_t > b)
HWY_API Vec512< int16_t > | operator+ (const Vec512< int16_t > a, const Vec512< int16_t > b)
HWY_API Vec512< int32_t > | operator+ (const Vec512< int32_t > a, const Vec512< int32_t > b)
HWY_API Vec512< int64_t > | operator+ (const Vec512< int64_t > a, const Vec512< int64_t > b)
HWY_API Vec512< float > | operator+ (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | operator+ (const Vec512< double > a, const Vec512< double > b)
HWY_API Vec512< uint8_t > | operator- (const Vec512< uint8_t > a, const Vec512< uint8_t > b)
HWY_API Vec512< uint16_t > | operator- (const Vec512< uint16_t > a, const Vec512< uint16_t > b)
HWY_API Vec512< uint32_t > | operator- (const Vec512< uint32_t > a, const Vec512< uint32_t > b)
HWY_API Vec512< uint64_t > | operator- (const Vec512< uint64_t > a, const Vec512< uint64_t > b)
HWY_API Vec512< int8_t > | operator- (const Vec512< int8_t > a, const Vec512< int8_t > b)
HWY_API Vec512< int16_t > | operator- (const Vec512< int16_t > a, const Vec512< int16_t > b)
HWY_API Vec512< int32_t > | operator- (const Vec512< int32_t > a, const Vec512< int32_t > b)
HWY_API Vec512< int64_t > | operator- (const Vec512< int64_t > a, const Vec512< int64_t > b)
HWY_API Vec512< float > | operator- (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | operator- (const Vec512< double > a, const Vec512< double > b)
HWY_API Vec512< uint64_t > | SumsOf8 (const Vec512< uint8_t > v)
HWY_API Vec512< uint8_t > | SaturatedAdd (const Vec512< uint8_t > a, const Vec512< uint8_t > b)
HWY_API Vec512< uint16_t > | SaturatedAdd (const Vec512< uint16_t > a, const Vec512< uint16_t > b)
HWY_API Vec512< int8_t > | SaturatedAdd (const Vec512< int8_t > a, const Vec512< int8_t > b)
HWY_API Vec512< int16_t > | SaturatedAdd (const Vec512< int16_t > a, const Vec512< int16_t > b)
HWY_API Vec512< uint8_t > | SaturatedSub (const Vec512< uint8_t > a, const Vec512< uint8_t > b)
HWY_API Vec512< uint16_t > | SaturatedSub (const Vec512< uint16_t > a, const Vec512< uint16_t > b)
HWY_API Vec512< int8_t > | SaturatedSub (const Vec512< int8_t > a, const Vec512< int8_t > b)
HWY_API Vec512< int16_t > | SaturatedSub (const Vec512< int16_t > a, const Vec512< int16_t > b)
HWY_API Vec512< uint8_t > | AverageRound (const Vec512< uint8_t > a, const Vec512< uint8_t > b)
HWY_API Vec512< uint16_t > | AverageRound (const Vec512< uint16_t > a, const Vec512< uint16_t > b)
HWY_API Vec512< int8_t > | Abs (const Vec512< int8_t > v)
HWY_API Vec512< int16_t > | Abs (const Vec512< int16_t > v)
HWY_API Vec512< int32_t > | Abs (const Vec512< int32_t > v)
HWY_API Vec512< int64_t > | Abs (const Vec512< int64_t > v)
HWY_API Vec512< float > | Abs (const Vec512< float > v)
HWY_API Vec512< double > | Abs (const Vec512< double > v)
template<int kBits>
HWY_API Vec512< uint16_t > | ShiftLeft (const Vec512< uint16_t > v)
template<int kBits>
HWY_API Vec512< uint32_t > | ShiftLeft (const Vec512< uint32_t > v)
template<int kBits>
HWY_API Vec512< uint64_t > | ShiftLeft (const Vec512< uint64_t > v)
template<int kBits>
HWY_API Vec512< int16_t > | ShiftLeft (const Vec512< int16_t > v)
template<int kBits>
HWY_API Vec512< int32_t > | ShiftLeft (const Vec512< int32_t > v)
template<int kBits>
HWY_API Vec512< int64_t > | ShiftLeft (const Vec512< int64_t > v)
template<int kBits, typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec512< T > | ShiftLeft (const Vec512< T > v)
template<int kBits>
HWY_API Vec512< uint16_t > | ShiftRight (const Vec512< uint16_t > v)
template<int kBits>
HWY_API Vec512< uint32_t > | ShiftRight (const Vec512< uint32_t > v)
template<int kBits>
HWY_API Vec512< uint64_t > | ShiftRight (const Vec512< uint64_t > v)
template<int kBits>
HWY_API Vec512< uint8_t > | ShiftRight (const Vec512< uint8_t > v)
template<int kBits>
HWY_API Vec512< int16_t > | ShiftRight (const Vec512< int16_t > v)
template<int kBits>
HWY_API Vec512< int32_t > | ShiftRight (const Vec512< int32_t > v)
template<int kBits>
HWY_API Vec512< int64_t > | ShiftRight (const Vec512< int64_t > v)
template<int kBits>
HWY_API Vec512< int8_t > | ShiftRight (const Vec512< int8_t > v)
template<int kBits>
HWY_API Vec512< uint32_t > | RotateRight (const Vec512< uint32_t > v)
template<int kBits>
HWY_API Vec512< uint64_t > | RotateRight (const Vec512< uint64_t > v)
HWY_API Vec512< uint16_t > | ShiftLeftSame (const Vec512< uint16_t > v, const int bits)
HWY_API Vec512< uint32_t > | ShiftLeftSame (const Vec512< uint32_t > v, const int bits)
HWY_API Vec512< uint64_t > | ShiftLeftSame (const Vec512< uint64_t > v, const int bits)
HWY_API Vec512< int16_t > | ShiftLeftSame (const Vec512< int16_t > v, const int bits)
HWY_API Vec512< int32_t > | ShiftLeftSame (const Vec512< int32_t > v, const int bits)
HWY_API Vec512< int64_t > | ShiftLeftSame (const Vec512< int64_t > v, const int bits)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec512< T > | ShiftLeftSame (const Vec512< T > v, const int bits)
HWY_API Vec512< uint16_t > | ShiftRightSame (const Vec512< uint16_t > v, const int bits)
HWY_API Vec512< uint32_t > | ShiftRightSame (const Vec512< uint32_t > v, const int bits)
HWY_API Vec512< uint64_t > | ShiftRightSame (const Vec512< uint64_t > v, const int bits)
HWY_API Vec512< uint8_t > | ShiftRightSame (Vec512< uint8_t > v, const int bits)
HWY_API Vec512< int16_t > | ShiftRightSame (const Vec512< int16_t > v, const int bits)
HWY_API Vec512< int32_t > | ShiftRightSame (const Vec512< int32_t > v, const int bits)
HWY_API Vec512< int64_t > | ShiftRightSame (const Vec512< int64_t > v, const int bits)
HWY_API Vec512< int8_t > | ShiftRightSame (Vec512< int8_t > v, const int bits)
HWY_API Vec512< uint16_t > | operator<< (const Vec512< uint16_t > v, const Vec512< uint16_t > bits)
HWY_API Vec512< uint32_t > | operator<< (const Vec512< uint32_t > v, const Vec512< uint32_t > bits)
HWY_API Vec512< uint64_t > | operator<< (const Vec512< uint64_t > v, const Vec512< uint64_t > bits)
template<typename T , HWY_IF_SIGNED(T) >
HWY_API Vec512< T > | operator<< (const Vec512< T > v, const Vec512< T > bits)
HWY_API Vec512< uint16_t > | operator>> (const Vec512< uint16_t > v, const Vec512< uint16_t > bits)
HWY_API Vec512< uint32_t > | operator>> (const Vec512< uint32_t > v, const Vec512< uint32_t > bits)
HWY_API Vec512< uint64_t > | operator>> (const Vec512< uint64_t > v, const Vec512< uint64_t > bits)
HWY_API Vec512< int16_t > | operator>> (const Vec512< int16_t > v, const Vec512< int16_t > bits)
HWY_API Vec512< int32_t > | operator>> (const Vec512< int32_t > v, const Vec512< int32_t > bits)
HWY_API Vec512< int64_t > | operator>> (const Vec512< int64_t > v, const Vec512< int64_t > bits)
HWY_API Vec512< uint8_t > | Min (const Vec512< uint8_t > a, const Vec512< uint8_t > b)
HWY_API Vec512< uint16_t > | Min (const Vec512< uint16_t > a, const Vec512< uint16_t > b)
HWY_API Vec512< uint32_t > | Min (const Vec512< uint32_t > a, const Vec512< uint32_t > b)
HWY_API Vec512< uint64_t > | Min (const Vec512< uint64_t > a, const Vec512< uint64_t > b)
HWY_API Vec512< int8_t > | Min (const Vec512< int8_t > a, const Vec512< int8_t > b)
HWY_API Vec512< int16_t > | Min (const Vec512< int16_t > a, const Vec512< int16_t > b)
HWY_API Vec512< int32_t > | Min (const Vec512< int32_t > a, const Vec512< int32_t > b)
HWY_API Vec512< int64_t > | Min (const Vec512< int64_t > a, const Vec512< int64_t > b)
HWY_API Vec512< float > | Min (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | Min (const Vec512< double > a, const Vec512< double > b)
HWY_API Vec512< uint8_t > | Max (const Vec512< uint8_t > a, const Vec512< uint8_t > b)
HWY_API Vec512< uint16_t > | Max (const Vec512< uint16_t > a, const Vec512< uint16_t > b)
HWY_API Vec512< uint32_t > | Max (const Vec512< uint32_t > a, const Vec512< uint32_t > b)
HWY_API Vec512< uint64_t > | Max (const Vec512< uint64_t > a, const Vec512< uint64_t > b)
HWY_API Vec512< int8_t > | Max (const Vec512< int8_t > a, const Vec512< int8_t > b)
HWY_API Vec512< int16_t > | Max (const Vec512< int16_t > a, const Vec512< int16_t > b)
HWY_API Vec512< int32_t > | Max (const Vec512< int32_t > a, const Vec512< int32_t > b)
HWY_API Vec512< int64_t > | Max (const Vec512< int64_t > a, const Vec512< int64_t > b)
HWY_API Vec512< float > | Max (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | Max (const Vec512< double > a, const Vec512< double > b)
HWY_API Vec512< uint16_t > | operator* (Vec512< uint16_t > a, Vec512< uint16_t > b)
HWY_API Vec512< uint32_t > | operator* (Vec512< uint32_t > a, Vec512< uint32_t > b)
HWY_API Vec512< uint64_t > | operator* (Vec512< uint64_t > a, Vec512< uint64_t > b)
HWY_API Vec256< uint64_t > | operator* (Vec256< uint64_t > a, Vec256< uint64_t > b)
HWY_API Vec128< uint64_t > | operator* (Vec128< uint64_t > a, Vec128< uint64_t > b)
HWY_API Vec512< int16_t > | operator* (Vec512< int16_t > a, Vec512< int16_t > b)
HWY_API Vec512< int32_t > | operator* (Vec512< int32_t > a, Vec512< int32_t > b)
HWY_API Vec512< int64_t > | operator* (Vec512< int64_t > a, Vec512< int64_t > b)
HWY_API Vec256< int64_t > | operator* (Vec256< int64_t > a, Vec256< int64_t > b)
HWY_API Vec128< int64_t > | operator* (Vec128< int64_t > a, Vec128< int64_t > b)
HWY_API Vec512< uint16_t > | MulHigh (Vec512< uint16_t > a, Vec512< uint16_t > b)
HWY_API Vec512< int16_t > | MulHigh (Vec512< int16_t > a, Vec512< int16_t > b)
HWY_API Vec512< int16_t > | MulFixedPoint15 (Vec512< int16_t > a, Vec512< int16_t > b)
HWY_API Vec512< int64_t > | MulEven (Vec512< int32_t > a, Vec512< int32_t > b)
HWY_API Vec512< uint64_t > | MulEven (Vec512< uint32_t > a, Vec512< uint32_t > b)
template<typename T , HWY_IF_FLOAT(T) >
HWY_API Vec512< T > | Neg (const Vec512< T > v)
HWY_API Vec512< float > | operator* (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | operator* (const Vec512< double > a, const Vec512< double > b)
HWY_API Vec512< float > | operator/ (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | operator/ (const Vec512< double > a, const Vec512< double > b)
HWY_API Vec512< float > | ApproximateReciprocal (const Vec512< float > v)
HWY_API Vec512< float > | AbsDiff (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< float > | MulAdd (const Vec512< float > mul, const Vec512< float > x, const Vec512< float > add)
HWY_API Vec512< double > | MulAdd (const Vec512< double > mul, const Vec512< double > x, const Vec512< double > add)
HWY_API Vec512< float > | NegMulAdd (const Vec512< float > mul, const Vec512< float > x, const Vec512< float > add)
HWY_API Vec512< double > | NegMulAdd (const Vec512< double > mul, const Vec512< double > x, const Vec512< double > add)
HWY_API Vec512< float > | MulSub (const Vec512< float > mul, const Vec512< float > x, const Vec512< float > sub)
HWY_API Vec512< double > | MulSub (const Vec512< double > mul, const Vec512< double > x, const Vec512< double > sub)
HWY_API Vec512< float > | NegMulSub (const Vec512< float > mul, const Vec512< float > x, const Vec512< float > sub)
HWY_API Vec512< double > | NegMulSub (const Vec512< double > mul, const Vec512< double > x, const Vec512< double > sub)
HWY_API Vec512< float > | Sqrt (const Vec512< float > v)
HWY_API Vec512< double > | Sqrt (const Vec512< double > v)
HWY_API Vec512< float > | ApproximateReciprocalSqrt (const Vec512< float > v)
HWY_API Vec512< float > | Round (const Vec512< float > v)
HWY_API Vec512< double > | Round (const Vec512< double > v)
HWY_API Vec512< float > | Trunc (const Vec512< float > v)
HWY_API Vec512< double > | Trunc (const Vec512< double > v)
HWY_API Vec512< float > | Ceil (const Vec512< float > v)
HWY_API Vec512< double > | Ceil (const Vec512< double > v)
HWY_API Vec512< float > | Floor (const Vec512< float > v)
HWY_API Vec512< double > | Floor (const Vec512< double > v)
template<typename TFrom , typename TTo >
HWY_API Mask512< TTo > | RebindMask (Full512< TTo >, Mask512< TFrom > m)
template<typename T >
HWY_API Mask512< T > | TestBit (const Vec512< T > v, const Vec512< T > bit)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Mask512< T > | operator== (Vec512< T > a, Vec512< T > b)
HWY_API Mask512< float > | operator== (Vec512< float > a, Vec512< float > b)
HWY_API Mask512< double > | operator== (Vec512< double > a, Vec512< double > b)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Mask512< T > | operator!= (Vec512< T > a, Vec512< T > b)
HWY_API Mask512< float > | operator!= (Vec512< float > a, Vec512< float > b)
HWY_API Mask512< double > | operator!= (Vec512< double > a, Vec512< double > b)
HWY_API Mask512< uint8_t > | operator> (Vec512< uint8_t > a, Vec512< uint8_t > b)
HWY_API Mask512< uint16_t > | operator> (Vec512< uint16_t > a, Vec512< uint16_t > b)
HWY_API Mask512< uint32_t > | operator> (Vec512< uint32_t > a, Vec512< uint32_t > b)
HWY_API Mask512< uint64_t > | operator> (Vec512< uint64_t > a, Vec512< uint64_t > b)
HWY_API Mask512< int8_t > | operator> (Vec512< int8_t > a, Vec512< int8_t > b)
HWY_API Mask512< int16_t > | operator> (Vec512< int16_t > a, Vec512< int16_t > b)
HWY_API Mask512< int32_t > | operator> (Vec512< int32_t > a, Vec512< int32_t > b)
HWY_API Mask512< int64_t > | operator> (Vec512< int64_t > a, Vec512< int64_t > b)
HWY_API Mask512< float > | operator> (Vec512< float > a, Vec512< float > b)
HWY_API Mask512< double > | operator> (Vec512< double > a, Vec512< double > b)
HWY_API Mask512< float > | operator>= (Vec512< float > a, Vec512< float > b)
HWY_API Mask512< double > | operator>= (Vec512< double > a, Vec512< double > b)
template<typename T >
HWY_API Mask512< T > | operator< (Vec512< T > a, Vec512< T > b)
template<typename T >
HWY_API Mask512< T > | operator<= (Vec512< T > a, Vec512< T > b)
template<typename T >
HWY_API Mask512< T > | MaskFromVec (const Vec512< T > v)
HWY_API Mask512< float > | MaskFromVec (const Vec512< float > v)
HWY_API Mask512< double > | MaskFromVec (const Vec512< double > v)
HWY_API Vec512< uint8_t > | VecFromMask (const Mask512< uint8_t > v)
HWY_API Vec512< int8_t > | VecFromMask (const Mask512< int8_t > v)
HWY_API Vec512< uint16_t > | VecFromMask (const Mask512< uint16_t > v)
HWY_API Vec512< int16_t > | VecFromMask (const Mask512< int16_t > v)
HWY_API Vec512< uint32_t > | VecFromMask (const Mask512< uint32_t > v)
HWY_API Vec512< int32_t > | VecFromMask (const Mask512< int32_t > v)
HWY_API Vec512< float > | VecFromMask (const Mask512< float > v)
HWY_API Vec512< uint64_t > | VecFromMask (const Mask512< uint64_t > v)
HWY_API Vec512< int64_t > | VecFromMask (const Mask512< int64_t > v)
HWY_API Vec512< double > | VecFromMask (const Mask512< double > v)
template<typename T >
HWY_API Vec512< T > | VecFromMask (Full512< T >, const Mask512< T > v)
template<typename T >
HWY_API Mask512< T > | Not (const Mask512< T > m)
template<typename T >
HWY_API Mask512< T > | And (const Mask512< T > a, Mask512< T > b)
template<typename T >
HWY_API Mask512< T > | AndNot (const Mask512< T > a, Mask512< T > b)
template<typename T >
HWY_API Mask512< T > | Or (const Mask512< T > a, Mask512< T > b)
template<typename T >
HWY_API Mask512< T > | Xor (const Mask512< T > a, Mask512< T > b)
template<typename T >
HWY_API Mask512< T > | ExclusiveNeither (const Mask512< T > a, Mask512< T > b)
HWY_API Vec512< int8_t > | BroadcastSignBit (const Vec512< int8_t > v)
HWY_API Vec512< int16_t > | BroadcastSignBit (const Vec512< int16_t > v)
HWY_API Vec512< int32_t > | BroadcastSignBit (const Vec512< int32_t > v)
HWY_API Vec512< int64_t > | BroadcastSignBit (const Vec512< int64_t > v)
HWY_API Mask512< float > | IsNaN (const Vec512< float > v)
HWY_API Mask512< double > | IsNaN (const Vec512< double > v)
HWY_API Mask512< float > | IsInf (const Vec512< float > v)
HWY_API Mask512< double > | IsInf (const Vec512< double > v)
HWY_API Mask512< float > | IsFinite (const Vec512< float > v)
HWY_API Mask512< double > | IsFinite (const Vec512< double > v)
template<typename T >
HWY_API Vec512< T > | Load (Full512< T >, const T *HWY_RESTRICT aligned)
HWY_API Vec512< float > | Load (Full512< float >, const float *HWY_RESTRICT aligned)
HWY_API Vec512< double > | Load (Full512< double >, const double *HWY_RESTRICT aligned)
template<typename T >
HWY_API Vec512< T > | LoadU (Full512< T >, const T *HWY_RESTRICT p)
HWY_API Vec512< float > | LoadU (Full512< float >, const float *HWY_RESTRICT p)
HWY_API Vec512< double > | LoadU (Full512< double >, const double *HWY_RESTRICT p)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec512< T > | MaskedLoad (Mask512< T > m, Full512< T >, const T *HWY_RESTRICT p)
HWY_API Vec512< float > | MaskedLoad (Mask512< float > m, Full512< float >, const float *HWY_RESTRICT p)
HWY_API Vec512< double > | MaskedLoad (Mask512< double > m, Full512< double >, const double *HWY_RESTRICT p)
template<typename T >
HWY_API Vec512< T > | LoadDup128 (Full512< T >, const T *const HWY_RESTRICT p)
HWY_API Vec512< float > | LoadDup128 (Full512< float >, const float *const HWY_RESTRICT p)
HWY_API Vec512< double > | LoadDup128 (Full512< double >, const double *const HWY_RESTRICT p)
template<typename T >
HWY_API void | Store (const Vec512< T > v, Full512< T >, T *HWY_RESTRICT aligned)
HWY_API void | Store (const Vec512< float > v, Full512< float >, float *HWY_RESTRICT aligned)
HWY_API void | Store (const Vec512< double > v, Full512< double >, double *HWY_RESTRICT aligned)
template<typename T >
HWY_API void | StoreU (const Vec512< T > v, Full512< T >, T *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec512< float > v, Full512< float >, float *HWY_RESTRICT p)
HWY_API void | StoreU (const Vec512< double > v, Full512< double >, double *HWY_RESTRICT p)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API void | BlendedStore (Vec512< T > v, Mask512< T > m, Full512< T >, T *HWY_RESTRICT p)
HWY_API void | BlendedStore (Vec512< float > v, Mask512< float > m, Full512< float >, float *HWY_RESTRICT p)
HWY_API void | BlendedStore (Vec512< double > v, Mask512< double > m, Full512< double >, double *HWY_RESTRICT p)
template<typename T >
HWY_API void | Stream (const Vec512< T > v, Full512< T >, T *HWY_RESTRICT aligned)
HWY_API void | Stream (const Vec512< float > v, Full512< float >, float *HWY_RESTRICT aligned)
HWY_API void | Stream (const Vec512< double > v, Full512< double >, double *HWY_RESTRICT aligned)
template<typename T , typename Offset >
HWY_API void | ScatterOffset (Vec512< T > v, Full512< T > d, T *HWY_RESTRICT base, const Vec512< Offset > offset)
template<typename T , typename Index >
HWY_API void | ScatterIndex (Vec512< T > v, Full512< T > d, T *HWY_RESTRICT base, const Vec512< Index > index)
HWY_API void | ScatterOffset (Vec512< float > v, Full512< float >, float *HWY_RESTRICT base, const Vec512< int32_t > offset)
HWY_API void | ScatterIndex (Vec512< float > v, Full512< float >, float *HWY_RESTRICT base, const Vec512< int32_t > index)
HWY_API void | ScatterOffset (Vec512< double > v, Full512< double >, double *HWY_RESTRICT base, const Vec512< int64_t > offset)
HWY_API void | ScatterIndex (Vec512< double > v, Full512< double >, double *HWY_RESTRICT base, const Vec512< int64_t > index)
template<typename T , typename Offset >
HWY_API Vec512< T > | GatherOffset (Full512< T > d, const T *HWY_RESTRICT base, const Vec512< Offset > offset)
template<typename T , typename Index >
HWY_API Vec512< T > | GatherIndex (Full512< T > d, const T *HWY_RESTRICT base, const Vec512< Index > index)
HWY_API Vec512< float > | GatherOffset (Full512< float >, const float *HWY_RESTRICT base, const Vec512< int32_t > offset)
HWY_API Vec512< float > | GatherIndex (Full512< float >, const float *HWY_RESTRICT base, const Vec512< int32_t > index)
HWY_API Vec512< double > | GatherOffset (Full512< double >, const double *HWY_RESTRICT base, const Vec512< int64_t > offset)
HWY_API Vec512< double > | GatherIndex (Full512< double >, const double *HWY_RESTRICT base, const Vec512< int64_t > index)
template<typename T >
HWY_API Vec256< T > | LowerHalf (Full256< T >, Vec512< T > v)
HWY_API Vec256< float > | LowerHalf (Full256< float >, Vec512< float > v)
HWY_API Vec256< double > | LowerHalf (Full256< double >, Vec512< double > v)
template<typename T >
HWY_API Vec256< T > | LowerHalf (Vec512< T > v)
template<typename T >
HWY_API Vec256< T > | UpperHalf (Full256< T >, Vec512< T > v)
HWY_API Vec256< float > | UpperHalf (Full256< float >, Vec512< float > v)
HWY_API Vec256< double > | UpperHalf (Full256< double >, Vec512< double > v)
template<typename T >
HWY_API T | ExtractLane (const Vec512< T > v, size_t i)
template<typename T >
HWY_API Vec512< T > | InsertLane (const Vec512< T > v, size_t i, T t)
template<typename T >
HWY_API T | GetLane (const Vec512< T > v)
template<typename T >
HWY_API Vec512< T > | ZeroExtendVector (Full512< T >, Vec256< T > lo)
HWY_API Vec512< float > | ZeroExtendVector (Full512< float >, Vec256< float > lo)
HWY_API Vec512< double > | ZeroExtendVector (Full512< double >, Vec256< double > lo)
template<typename T >
HWY_API Vec512< T > | Combine (Full512< T > d, Vec256< T > hi, Vec256< T > lo)
HWY_API Vec512< float > | Combine (Full512< float > d, Vec256< float > hi, Vec256< float > lo)
HWY_API Vec512< double > | Combine (Full512< double > d, Vec256< double > hi, Vec256< double > lo)
template<int kBytes, typename T >
HWY_API Vec512< T > | ShiftLeftBytes (Full512< T >, const Vec512< T > v)
template<int kBytes, typename T >
HWY_API Vec512< T > | ShiftLeftBytes (const Vec512< T > v)
template<int kLanes, typename T >
HWY_API Vec512< T > | ShiftLeftLanes (Full512< T > d, const Vec512< T > v)
template<int kLanes, typename T >
HWY_API Vec512< T > | ShiftLeftLanes (const Vec512< T > v)
template<int kBytes, typename T >
HWY_API Vec512< T > | ShiftRightBytes (Full512< T >, const Vec512< T > v)
template<int kLanes, typename T >
HWY_API Vec512< T > | ShiftRightLanes (Full512< T > d, const Vec512< T > v)
template<int kBytes, typename T , class V = Vec512<T>>
HWY_API V | CombineShiftRightBytes (Full512< T > d, V hi, V lo)
template<int kLane>
HWY_API Vec512< uint16_t > | Broadcast (const Vec512< uint16_t > v)
template<int kLane>
HWY_API Vec512< uint32_t > | Broadcast (const Vec512< uint32_t > v)
template<int kLane>
HWY_API Vec512< uint64_t > | Broadcast (const Vec512< uint64_t > v)
template<int kLane>
HWY_API Vec512< int16_t > | Broadcast (const Vec512< int16_t > v)
template<int kLane>
HWY_API Vec512< int32_t > | Broadcast (const Vec512< int32_t > v)
template<int kLane>
HWY_API Vec512< int64_t > | Broadcast (const Vec512< int64_t > v)
template<int kLane>
HWY_API Vec512< float > | Broadcast (const Vec512< float > v)
template<int kLane>
HWY_API Vec512< double > | Broadcast (const Vec512< double > v)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec512< T > | Shuffle2301 (const Vec512< T > v)
HWY_API Vec512< float > | Shuffle2301 (const Vec512< float > v)
HWY_API Vec512< uint32_t > | Shuffle1032 (const Vec512< uint32_t > v)
HWY_API Vec512< int32_t > | Shuffle1032 (const Vec512< int32_t > v)
HWY_API Vec512< float > | Shuffle1032 (const Vec512< float > v)
HWY_API Vec512< uint64_t > | Shuffle01 (const Vec512< uint64_t > v)
HWY_API Vec512< int64_t > | Shuffle01 (const Vec512< int64_t > v)
HWY_API Vec512< double > | Shuffle01 (const Vec512< double > v)
HWY_API Vec512< uint32_t > | Shuffle0321 (const Vec512< uint32_t > v)
HWY_API Vec512< int32_t > | Shuffle0321 (const Vec512< int32_t > v)
HWY_API Vec512< float > | Shuffle0321 (const Vec512< float > v)
HWY_API Vec512< uint32_t > | Shuffle2103 (const Vec512< uint32_t > v)
HWY_API Vec512< int32_t > | Shuffle2103 (const Vec512< int32_t > v)
HWY_API Vec512< float > | Shuffle2103 (const Vec512< float > v)
HWY_API Vec512< uint32_t > | Shuffle0123 (const Vec512< uint32_t > v)
HWY_API Vec512< int32_t > | Shuffle0123 (const Vec512< int32_t > v)
HWY_API Vec512< float > | Shuffle0123 (const Vec512< float > v)
template<typename T , typename TI >
HWY_API Indices512< T > | IndicesFromVec (Full512< T >, Vec512< TI > vec)
template<typename T , typename TI >
HWY_API Indices512< T > | SetTableIndices (const Full512< T > d, const TI *idx)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec512< T > | TableLookupLanes (Vec512< T > v, Indices512< T > idx)
HWY_API Vec512< float > | TableLookupLanes (Vec512< float > v, Indices512< float > idx)
HWY_API Vec512< double > | TableLookupLanes (Vec512< double > v, Indices512< double > idx)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec512< T > | Reverse (Full512< T > d, const Vec512< T > v)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec512< T > | Reverse2 (Full512< T > d, const Vec512< T > v)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec512< T > | Reverse4 (Full512< T > d, const Vec512< T > v)
HWY_API Vec512< double > | Reverse4 (Full512< double >, Vec512< double > v)
template<typename T , HWY_IF_LANE_SIZE(T, 2) >
HWY_API Vec512< T > | Reverse8 (Full512< T > d, const Vec512< T > v)
HWY_API Vec512< uint8_t > | InterleaveLower (const Vec512< uint8_t > a, const Vec512< uint8_t > b)
HWY_API Vec512< uint16_t > | InterleaveLower (const Vec512< uint16_t > a, const Vec512< uint16_t > b)
HWY_API Vec512< uint32_t > | InterleaveLower (const Vec512< uint32_t > a, const Vec512< uint32_t > b)
HWY_API Vec512< uint64_t > | InterleaveLower (const Vec512< uint64_t > a, const Vec512< uint64_t > b)
HWY_API Vec512< int8_t > | InterleaveLower (const Vec512< int8_t > a, const Vec512< int8_t > b)
HWY_API Vec512< int16_t > | InterleaveLower (const Vec512< int16_t > a, const Vec512< int16_t > b)
HWY_API Vec512< int32_t > | InterleaveLower (const Vec512< int32_t > a, const Vec512< int32_t > b)
HWY_API Vec512< int64_t > | InterleaveLower (const Vec512< int64_t > a, const Vec512< int64_t > b)
HWY_API Vec512< float > | InterleaveLower (const Vec512< float > a, const Vec512< float > b)
HWY_API Vec512< double > | InterleaveLower (const Vec512< double > a, const Vec512< double > b)
template<typename T , class V = Vec512<T>>
HWY_API V | InterleaveUpper (Full512< T >, V a, V b)
template<typename T , typename TW = MakeWide<T>>
HWY_API Vec512< TW > | ZipLower (Vec512< T > a, Vec512< T > b)
template<typename T , typename TW = MakeWide<T>>
HWY_API Vec512< TW > | ZipLower (Full512< TW >, Vec512< T > a, Vec512< T > b)
template<typename T , typename TW = MakeWide<T>>
HWY_API Vec512< TW > | ZipUpper (Full512< TW > d, Vec512< T > a, Vec512< T > b)
template<typename T >
HWY_API Vec512< T > | ConcatLowerLower (Full512< T >, const Vec512< T > hi, const Vec512< T > lo)
HWY_API Vec512< float > | ConcatLowerLower (Full512< float >, const Vec512< float > hi, const Vec512< float > lo)
HWY_API Vec512< double > | ConcatLowerLower (Full512< double >, const Vec512< double > hi, const Vec512< double > lo)
template<typename T >
HWY_API Vec512< T > | ConcatUpperUpper (Full512< T >, const Vec512< T > hi, const Vec512< T > lo)
HWY_API Vec512< float > | ConcatUpperUpper (Full512< float >, const Vec512< float > hi, const Vec512< float > lo)
HWY_API Vec512< double > | ConcatUpperUpper (Full512< double >, const Vec512< double > hi, const Vec512< double > lo)
template<typename T >
HWY_API Vec512< T > | ConcatLowerUpper (Full512< T >, const Vec512< T > hi, const Vec512< T > lo)
HWY_API Vec512< float > | ConcatLowerUpper (Full512< float >, const Vec512< float > hi, const Vec512< float > lo)
HWY_API Vec512< double > | ConcatLowerUpper (Full512< double >, const Vec512< double > hi, const Vec512< double > lo)
template<typename T >
HWY_API Vec512< T > | ConcatUpperLower (Full512< T >, const Vec512< T > hi, const Vec512< T > lo)
HWY_API Vec512< float > | ConcatUpperLower (Full512< float >, const Vec512< float > hi, const Vec512< float > lo)
HWY_API Vec512< double > | ConcatUpperLower (Full512< double >, const Vec512< double > hi, const Vec512< double > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec512< T > | ConcatOdd (Full512< T > d, Vec512< T > hi, Vec512< T > lo)
HWY_API Vec512< float > | ConcatOdd (Full512< float > d, Vec512< float > hi, Vec512< float > lo)
HWY_API Vec512< double > | ConcatOdd (Full512< double > d, Vec512< double > hi, Vec512< double > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 1) >
HWY_API Vec512< T > | ConcatEven (Full512< T > d, Vec512< T > hi, Vec512< T > lo)
HWY_API Vec512< float > | ConcatEven (Full512< float > d, Vec512< float > hi, Vec512< float > lo)
HWY_API Vec512< double > | ConcatEven (Full512< double > d, Vec512< double > hi, Vec512< double > lo)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec512< T > | DupEven (Vec512< T > v)
HWY_API Vec512< float > | DupEven (Vec512< float > v)
template<typename T , HWY_IF_LANE_SIZE(T, 4) >
HWY_API Vec512< T > | DupOdd (Vec512< T > v)
HWY_API Vec512< float > | DupOdd (Vec512< float > v)
template<typename T >
HWY_API Vec512< T > | OddEven (const Vec512< T > a, const Vec512< T > b)
template<typename T >
HWY_API Vec512< T > | OddEvenBlocks (Vec512< T > odd, Vec512< T > even)
HWY_API Vec512< float > | OddEvenBlocks (Vec512< float > odd, Vec512< float > even)
HWY_API Vec512< double > | OddEvenBlocks (Vec512< double > odd, Vec512< double > even)
template<typename T >
HWY_API Vec512< T > | SwapAdjacentBlocks (Vec512< T > v)
HWY_API Vec512< float > | SwapAdjacentBlocks (Vec512< float > v)
HWY_API Vec512< double > | SwapAdjacentBlocks (Vec512< double > v)
template<typename T >
HWY_API Vec512< T > | ReverseBlocks (Full512< T >, Vec512< T > v)
HWY_API Vec512< float > | ReverseBlocks (Full512< float >, Vec512< float > v)
HWY_API Vec512< double > | ReverseBlocks (Full512< double >, Vec512< double > v)
template<typename T , typename TI >
HWY_API Vec512< TI > | TableLookupBytes (Vec512< T > bytes, Vec512< TI > indices)
template<typename T , typename TI , size_t NI>
HWY_API Vec128< TI, NI > | TableLookupBytes (Vec512< T > bytes, Vec128< TI, NI > from)
template<typename T , typename TI >
HWY_API Vec256< TI > | TableLookupBytes (Vec512< T > bytes, Vec256< TI > from)
template<typename T , size_t N, typename TI >
HWY_API Vec512< TI > | TableLookupBytes (Vec128< T, N > bytes, Vec512< TI > from)
template<typename T , typename TI >
HWY_API Vec512< TI > | TableLookupBytes (Vec256< T > bytes, Vec512< TI > from)
HWY_API Vec512< uint16_t > | PromoteTo (Full512< uint16_t >, Vec256< uint8_t > v)
HWY_API Vec512< uint32_t > | PromoteTo (Full512< uint32_t >, Vec128< uint8_t > v)
HWY_API Vec512< int16_t > | PromoteTo (Full512< int16_t >, Vec256< uint8_t > v)
HWY_API Vec512< int32_t > | PromoteTo (Full512< int32_t >, Vec128< uint8_t > v)
HWY_API Vec512< uint32_t > | PromoteTo (Full512< uint32_t >, Vec256< uint16_t > v)
HWY_API Vec512< int32_t > | PromoteTo (Full512< int32_t >, Vec256< uint16_t > v)
HWY_API Vec512< uint64_t > | PromoteTo (Full512< uint64_t >, Vec256< uint32_t > v)
HWY_API Vec512< int16_t > | PromoteTo (Full512< int16_t >, Vec256< int8_t > v)
HWY_API Vec512< int32_t > | PromoteTo (Full512< int32_t >, Vec128< int8_t > v)
HWY_API Vec512< int32_t > | PromoteTo (Full512< int32_t >, Vec256< int16_t > v)
HWY_API Vec512< int64_t > | PromoteTo (Full512< int64_t >, Vec256< int32_t > v)
HWY_API Vec512< float > | PromoteTo (Full512< float >, const Vec256< float16_t > v)
HWY_API Vec512< float > | PromoteTo (Full512< float > df32, const Vec256< bfloat16_t > v)
HWY_API Vec512< double > | PromoteTo (Full512< double >, Vec256< float > v)
HWY_API Vec512< double > | PromoteTo (Full512< double >, Vec256< int32_t > v)
HWY_API Vec256< uint16_t > | DemoteTo (Full256< uint16_t >, const Vec512< int32_t > v)
HWY_API Vec256< int16_t > | DemoteTo (Full256< int16_t >, const Vec512< int32_t > v)
HWY_API Vec128< uint8_t, 16 > | DemoteTo (Full128< uint8_t >, const Vec512< int32_t > v)
HWY_API Vec256< uint8_t > | DemoteTo (Full256< uint8_t >, const Vec512< int16_t > v)
HWY_API Vec128< int8_t, 16 > | DemoteTo (Full128< int8_t >, const Vec512< int32_t > v)
HWY_API Vec256< int8_t > | DemoteTo (Full256< int8_t >, const Vec512< int16_t > v)
HWY_API Vec256< float16_t > | DemoteTo (Full256< float16_t >, const Vec512< float > v)
HWY_API Vec256< bfloat16_t > | DemoteTo (Full256< bfloat16_t > dbf16, const Vec512< float > v)
HWY_API Vec512< bfloat16_t > | ReorderDemote2To (Full512< bfloat16_t > dbf16, Vec512< float > a, Vec512< float > b)
HWY_API Vec512< int16_t > | ReorderDemote2To (Full512< int16_t >, Vec512< int32_t > a, Vec512< int32_t > b)
HWY_API Vec256< float > | DemoteTo (Full256< float >, const Vec512< double > v)
HWY_API Vec256< int32_t > | DemoteTo (Full256< int32_t >, const Vec512< double > v)
HWY_API Vec128< uint8_t, 16 > | U8FromU32 (const Vec512< uint32_t > v)
HWY_API Vec128< uint8_t, 8 > | TruncateTo (Simd< uint8_t, 8, 0 > d, const Vec512< uint64_t > v)
HWY_API Vec128< uint16_t, 8 > | TruncateTo (Simd< uint16_t, 8, 0 >, const Vec512< uint64_t > v)
HWY_API Vec256< uint32_t > | TruncateTo (Simd< uint32_t, 8, 0 >, const Vec512< uint64_t > v)
HWY_API Vec128< uint8_t, 16 > | TruncateTo (Simd< uint8_t, 16, 0 >, const Vec512< uint32_t > v)
HWY_API Vec256< uint16_t > | TruncateTo (Simd< uint16_t, 16, 0 >, const Vec512< uint32_t > v)
HWY_API Vec256< uint8_t > | TruncateTo (Simd< uint8_t, 32, 0 >, const Vec512< uint16_t > v)
HWY_API Vec512< float > | ConvertTo (Full512< float >, const Vec512< int32_t > v)
HWY_API Vec512< double > | ConvertTo (Full512< double >, const Vec512< int64_t > v)
HWY_API Vec512< float > | ConvertTo (Full512< float >, const Vec512< uint32_t > v)
HWY_API Vec512< double > | ConvertTo (Full512< double >, const Vec512< uint64_t > v)
HWY_API Vec512< int32_t > | ConvertTo (Full512< int32_t > d, const Vec512< float > v)
HWY_API Vec512< int64_t > | ConvertTo (Full512< int64_t > di, const Vec512< double > v)
HWY_API Vec512< int32_t > | NearestInt (const Vec512< float > v)
HWY_API Vec512< uint8_t > | AESRound (Vec512< uint8_t > state, Vec512< uint8_t > round_key)
HWY_API Vec512< uint8_t > | AESLastRound (Vec512< uint8_t > state, Vec512< uint8_t > round_key)
HWY_API Vec512< uint64_t > | CLMulLower (Vec512< uint64_t > va, Vec512< uint64_t > vb)
HWY_API Vec512< uint64_t > | CLMulUpper (Vec512< uint64_t > va, Vec512< uint64_t > vb)
template<typename T , typename T2 >
Vec512< T > | Iota (const Full512< T > d, const T2 first)
template<typename T >
HWY_API bool | AllFalse (const Full512< T >, const Mask512< T > mask)
template<typename T >
HWY_API bool | AllTrue (const Full512< T >, const Mask512< T > mask)
template<typename T >
HWY_API Mask512< T > | LoadMaskBits (const Full512< T >, const uint8_t *HWY_RESTRICT bits)
template<typename T >
HWY_API size_t | StoreMaskBits (const Full512< T >, const Mask512< T > mask, uint8_t *bits)
template<typename T >
HWY_API size_t | CountTrue (const Full512< T >, const Mask512< T > mask)
template<typename T , HWY_IF_NOT_LANE_SIZE(T, 1) >
HWY_API size_t | FindKnownFirstTrue (const Full512< T >, const Mask512< T > mask)
template<typename T >
HWY_API intptr_t | FindFirstTrue (const Full512< T > d, const Mask512< T > mask)
template<class V , class M , HWY_IF_LANE_SIZE_ONE_OF_V(V, 0x6) >
HWY_API V | Compress (V v, const M mask)
template<typename T , HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec512< T > | Compress (Vec512< T > v, Mask512< T > mask)
template<class V , class M , HWY_IF_NOT_LANE_SIZE_V(V, 8) >
HWY_API V | CompressNot (V v, const M mask)
template<typename T , HWY_IF_LANE_SIZE(T, 8) >
HWY_API Vec512< T > | CompressNot (Vec512< T > v, Mask512< T > mask)
template<class V , class M , hwy::EnableIf<(sizeof(V) > 16)> * = nullptr>
HWY_API V | CompressBlocksNot (V v, M mask)
template<class V >
HWY_API V | CompressBits (V v, const uint8_t *HWY_RESTRICT bits)
template<class V , class D , HWY_IF_LANE_SIZE_ONE_OF_V(V, 0x6) >
HWY_API size_t | CompressStore (V v, MFromD< D > mask, D d, TFromD< D > *HWY_RESTRICT unaligned)
HWY_API size_t | CompressStore (Vec512< float > v, Mask512< float > mask, Full512< float >, float *HWY_RESTRICT unaligned)
HWY_API size_t | CompressStore (Vec512< double > v, Mask512< double > mask, Full512< double >, double *HWY_RESTRICT unaligned)
template<class D , typename T = TFromD<D>>
HWY_API size_t | CompressBlendedStore (VFromD< D > v, MFromD< D > m, D d, T *HWY_RESTRICT unaligned)
template<class D >
HWY_API size_t | CompressBitsStore (VFromD< D > v, const uint8_t *HWY_RESTRICT bits, D d, TFromD< D > *HWY_RESTRICT unaligned)
HWY_INLINE Vec512< uint64_t > | MulEven (const Vec512< uint64_t > a, const Vec512< uint64_t > b)
HWY_INLINE Vec512< uint64_t > | MulOdd (const Vec512< uint64_t > a, const Vec512< uint64_t > b)
HWY_API Vec512< int32_t > | ReorderWidenMulAccumulate (Full512< int32_t >, Vec512< int16_t > a, Vec512< int16_t > b, const Vec512< int32_t > sum0, Vec512< int32_t > &)
HWY_API Vec512< int32_t > | RearrangeToOddPlusEven (const Vec512< int32_t > sum0, Vec512< int32_t >)
HWY_API Vec512< int32_t > | SumOfLanes (Full512< int32_t > d, Vec512< int32_t > v)
HWY_API Vec512< int64_t > | SumOfLanes (Full512< int64_t > d, Vec512< int64_t > v)
HWY_API Vec512< uint32_t > | SumOfLanes (Full512< uint32_t > d, Vec512< uint32_t > v)
HWY_API Vec512< uint64_t > | SumOfLanes (Full512< uint64_t > d, Vec512< uint64_t > v)
HWY_API Vec512< float > | SumOfLanes (Full512< float > d, Vec512< float > v)
HWY_API Vec512< double > | SumOfLanes (Full512< double > d, Vec512< double > v)
HWY_API Vec512< uint16_t > | SumOfLanes (Full512< uint16_t > d, Vec512< uint16_t > v)
HWY_API Vec512< int16_t > | SumOfLanes (Full512< int16_t > d, Vec512< int16_t > v)
HWY_API Vec512< int32_t > | MinOfLanes (Full512< int32_t > d, Vec512< int32_t > v)
HWY_API Vec512< int64_t > | MinOfLanes (Full512< int64_t > d, Vec512< int64_t > v)
HWY_API Vec512< uint32_t > | MinOfLanes (Full512< uint32_t > d, Vec512< uint32_t > v)
HWY_API Vec512< uint64_t > | MinOfLanes (Full512< uint64_t > d, Vec512< uint64_t > v)
HWY_API Vec512< float > | MinOfLanes (Full512< float > d, Vec512< float > v)
HWY_API Vec512< double > | MinOfLanes (Full512< double > d, Vec512< double > v)
HWY_API Vec512< uint16_t > | MinOfLanes (Full512< uint16_t > d, Vec512< uint16_t > v)
HWY_API Vec512< int16_t > | MinOfLanes (Full512< int16_t > d, Vec512< int16_t > v)
HWY_API Vec512< int32_t > | MaxOfLanes (Full512< int32_t > d, Vec512< int32_t > v)
HWY_API Vec512< int64_t > | MaxOfLanes (Full512< int64_t > d, Vec512< int64_t > v)
HWY_API Vec512< uint32_t > | MaxOfLanes (Full512< uint32_t > d, Vec512< uint32_t > v)
HWY_API Vec512< uint64_t > | MaxOfLanes (Full512< uint64_t > d, Vec512< uint64_t > v)
HWY_API Vec512< float > | MaxOfLanes (Full512< float > d, Vec512< float > v)
HWY_API Vec512< double > | MaxOfLanes (Full512< double > d, Vec512< double > v)
HWY_API Vec512< uint16_t > | MaxOfLanes (Full512< uint16_t > d, Vec512< uint16_t > v)
HWY_API Vec512< int16_t > | MaxOfLanes (Full512< int16_t > d, Vec512< int16_t > v)
template<class D , class V = VFromD<D>>
void | Print (const D d, const char *caption, VecArg< V > v, size_t lane_u=0, size_t max_lanes=7)
template<class D , typename T = TFromD<D>, class V = Vec<D>>
HWY_INLINE void | AssertVecEqual (D d, const T *expected, VecArg< V > actual, const char *filename, const int line)
template<class D , typename T = TFromD<D>, class V = Vec<D>>
HWY_INLINE void | AssertVecEqual (D d, VecArg< V > expected, VecArg< V > actual, const char *filename, int line)
template<class D >
HWY_NOINLINE void | AssertMaskEqual (D d, VecArg< Mask< D > > a, VecArg< Mask< D > > b, const char *filename, int line)
template<class D >
HWY_INLINE Mask< D > | MaskTrue (const D d)
template<class D >
HWY_INLINE Mask< D > | MaskFalse (const D d)
template<class Func >
void | ForSignedTypes (const Func &func)
template<class Func >
void | ForUnsignedTypes (const Func &func)
template<class Func >
void | ForIntegerTypes (const Func &func)
template<class Func >
void | ForFloatTypes (const Func &func)
template<class Func >
void | ForAllTypes (const Func &func)
template<class Func >
void | ForUI8 (const Func &func)
template<class Func >
void | ForUI16 (const Func &func)
template<class Func >
void | ForUIF16 (const Func &func)
template<class Func >
void | ForUI32 (const Func &func)
template<class Func >
void | ForUIF32 (const Func &func)
template<class Func >
void | ForUI64 (const Func &func)
template<class Func >
void | ForUIF64 (const Func &func)
template<class Func >
void | ForUI3264 (const Func &func)
template<class Func >
void | ForUIF3264 (const Func &func)
template<class Func >
void | ForUI163264 (const Func &func)
template<class Func >
void | ForUIF163264 (const Func &func)
constexpr size_t | AdjustedReps (size_t max_reps)
constexpr size_t | AdjustedLog2Reps (size_t max_pow2)

## Variables

| N
| d
const vfloat64m1_t | v

## Typedef Documentation

## CappedTag

template<typename T , size_t kLimit>

using hwy::HWY_NAMESPACE::CappedTag = typedef typename detail::CappedTagChecker<T, kLimit>::type

## DFromV

template<class V >

using hwy::HWY_NAMESPACE::DFromV = typedef Simd<typename V::PrivateT, V::kPrivateN, 0>

## FixedTag

template<typename T , size_t kNumLanes>

using hwy::HWY_NAMESPACE::FixedTag = typedef typename detail::FixedTagChecker<T, kNumLanes>::type

## ForGE128Vectors

template<class Test >

using hwy::HWY_NAMESPACE::ForGE128Vectors = typedef ForGEVectors<128, Test>

## Full128

template<typename T >

using hwy::HWY_NAMESPACE::Full128 = typedef Simd<T, 16 / sizeof(T), 0>

## Full16

template<typename T >

using hwy::HWY_NAMESPACE::Full16 = typedef Simd<T, 2 / sizeof(T), 0>

## Full256

template<typename T >

using hwy::HWY_NAMESPACE::Full256 = typedef Simd<T, 32 / sizeof(T), 0>

## Full32

template<typename T >

using hwy::HWY_NAMESPACE::Full32 = typedef Simd<T, 4 / sizeof(T), 0>

## Full512

template<typename T >

using hwy::HWY_NAMESPACE::Full512 = typedef Simd<T, 64 / sizeof(T), 0>

## Full64

template<typename T >

using hwy::HWY_NAMESPACE::Full64 = typedef Simd<T, 8 / sizeof(T), 0>

## GatherIndex64

using hwy::HWY_NAMESPACE::GatherIndex64 = typedef long long int

## Half

template<class D >

using hwy::HWY_NAMESPACE::Half = typedef typename D::Half

## LaneType

template<class V >

using hwy::HWY_NAMESPACE::LaneType = typedef decltype(GetLane(V()))

## Mask

template<class D >

using hwy::HWY_NAMESPACE::Mask = typedef decltype(MaskFromVec(Zero(D())))

## Mask64

template<typename T >

using hwy::HWY_NAMESPACE::Mask64 = typedef Mask128<T, 8 / sizeof(T)>

## MFromD

template<class D >

using hwy::HWY_NAMESPACE::MFromD = typedef decltype(FirstN(D(), 0))

## Rebind

template<class T , class D >

using hwy::HWY_NAMESPACE::Rebind = typedef typename D::template Rebind<T>

## RebindToFloat

template<class D >

using hwy::HWY_NAMESPACE::RebindToFloat = typedef Rebind<MakeFloat<TFromD<D> >, D>

## RebindToSigned

template<class D >

using hwy::HWY_NAMESPACE::RebindToSigned = typedef Rebind<MakeSigned<TFromD<D> >, D>

## RebindToUnsigned

template<class D >

using hwy::HWY_NAMESPACE::RebindToUnsigned = typedef Rebind<MakeUnsigned<TFromD<D> >, D>

## Repartition

template<class T , class D >

using hwy::HWY_NAMESPACE::Repartition = typedef typename D::template Repartition<T>

## RepartitionToNarrow

template<class D >

using hwy::HWY_NAMESPACE::RepartitionToNarrow = typedef Repartition<MakeNarrow<TFromD<D> >, D>

## RepartitionToWide

template<class D >

using hwy::HWY_NAMESPACE::RepartitionToWide = typedef Repartition<MakeWide<TFromD<D> >, D>

## ScalableTag

template<typename T , int kPow2 = 0>

using hwy::HWY_NAMESPACE::ScalableTag = typedef typename detail::ScalableTagChecker<T, kPow2>::type

## Sisd

template<typename T >

using hwy::HWY_NAMESPACE::Sisd = typedef Simd<T, 1, 0>

## SortTag

template<typename T >

using hwy::HWY_NAMESPACE::SortTag = typedef ScalableTag<T, -1>

## TFromD

template<class D >

using hwy::HWY_NAMESPACE::TFromD = typedef typename D::T

## TFromV

template<class V >

using hwy::HWY_NAMESPACE::TFromV = typedef typename V::PrivateT

## Twice

template<class D >

using hwy::HWY_NAMESPACE::Twice = typedef typename D::Twice

## Vec

template<class D >

using hwy::HWY_NAMESPACE::Vec = typedef decltype(Zero(D()))

## Vec16

template<typename T >

using hwy::HWY_NAMESPACE::Vec16 = typedef Vec128<T, 2 / sizeof(T)>

## Vec32

template<typename T >

using hwy::HWY_NAMESPACE::Vec32 = typedef Vec128<T, 4 / sizeof(T)>

## Vec64

template<typename T >

using hwy::HWY_NAMESPACE::Vec64 = typedef Vec128<T, 8 / sizeof(T)>

## VecArg

template<class V >

using hwy::HWY_NAMESPACE::VecArg = typedef V

## VFromD

template<class D >

using hwy::HWY_NAMESPACE::VFromD = typedef decltype(Zero(D()))

## Function Documentation

## Abs() [1/33]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< double, N > | v | ) |

References BitCast(), and v.

## Abs() [2/33]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< float > | v | ) |

References Abs(), and v.

## Abs() [3/33]

template<size_t N, HWY_IF_LE64(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< float, N > | v | ) |

References Abs(), and v.

## Abs() [4/33]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< float, N > | v | ) |

References v.

## Abs() [5/33]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int16_t > | v | ) |

References Abs(), and v.

## Abs() [6/33]

template<size_t N, HWY_IF_LE64(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int16_t, N > | v | ) |

References Abs(), and v.

## Abs() [7/33]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int16_t, N > | v | ) |

References v.

## Abs() [8/33]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int32_t > | v | ) |

References Abs(), and v.

## Abs() [9/33]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int32_t, N > | v | ) |

References Abs(), and v.

## Abs() [10/33]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int32_t, N > | v | ) |

References v.

## Abs() [11/33]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int64_t > | v | ) |

References Abs(), BroadcastSignBit(), IfThenElse(), MaskFromVec(), v, and Zero().

## Abs() [12/33]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int64_t, N > | v | ) |

References v.

## Abs() [13/33]

HWY_API Vec128< int8_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int8_t > | v | ) |

References Abs(), and v.

Referenced by Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), AbsDiff(), AbsDiff(), AbsDiff(), AbsDiff(), ConvertTo(), Cos(), DemoteTo(), DemoteTo(), Expm1(), NearestInt(), Round(), Round(), Round(), Sin(), Trunc(), Trunc(), and hwy::HWY_NAMESPACE::detail::UseInt().

## Abs() [14/33]

template<size_t N, HWY_IF_LE64(int8_t, N) >

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int8_t, N > | v | ) |

References Abs(), and v.

## Abs() [15/33]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::Abs | ( | const Vec128< int8_t, N > | v | ) |

References v.

## Abs() [16/33]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Abs | ( | const Vec1< T > | a | ) |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## Abs() [17/33]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Abs | ( | const Vec256< double > | v | ) |

References BitCast(), and v.

## Abs() [18/33]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Abs | ( | const Vec256< float > | v | ) |

References BitCast(), and v.

## Abs() [19/33]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec256< int16_t > | v | ) |

References v.

## Abs() [20/33]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec256< int32_t > | v | ) |

References v.

## Abs() [21/33]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec256< int64_t > | v | ) |

References BroadcastSignBit(), IfThenElse(), MaskFromVec(), v, and Zero().

## Abs() [22/33]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec256< int8_t > | v | ) |

References v, and Zero().

## Abs() [23/33]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Abs | ( | const Vec512< double > | v | ) |

References v.

## Abs() [24/33]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Abs | ( | const Vec512< float > | v | ) |

References v.

## Abs() [25/33]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec512< int16_t > | v | ) |

References v.

## Abs() [26/33]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec512< int32_t > | v | ) |

References v.

## Abs() [27/33]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec512< int64_t > | v | ) |

References v.

## Abs() [28/33]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec512< int8_t > | v | ) |

References v, and Zero().

## Abs() [29/33]

HWY_API Vec64< int64_t > hwy::HWY_NAMESPACE::Abs | ( | const Vec64< int64_t > | v | ) |

References Abs(), BroadcastSignBit(), IfThenElse(), MaskFromVec(), v, and Zero().

## Abs() [30/33]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Abs | ( | Vec128< T, N > | a | ) |

References hwy::HWY_NAMESPACE::detail::Abs().

## Abs() [31/33]

HWY_API Vec1< double > hwy::HWY_NAMESPACE::Abs | ( | Vec1< double > | a | ) |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## Abs() [32/33]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::Abs | ( | Vec1< float > | a | ) |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## Abs() [33/33]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Abs | ( | Vec256< T > | v | ) |

References Abs(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## AbsDiff() [1/6]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::AbsDiff | ( | const Vec128< float > | a,
|  | const Vec128< float > | b
| ) |  |

References AbsDiff(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by AbsDiff(), and AbsDiff().

## AbsDiff() [2/6]

template<size_t N, HWY_IF_LE64(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::AbsDiff | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References AbsDiff(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## AbsDiff() [3/6]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::AbsDiff | ( | const Vec1< float > | a,
|  | const Vec1< float > | b
| ) |  |

References Abs().

## AbsDiff() [4/6]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::AbsDiff | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References Abs().

## AbsDiff() [5/6]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::AbsDiff | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References Abs().

## AbsDiff() [6/6]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::AbsDiff | ( | Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References Abs().

## Acos()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Acos | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::acos(x).

Valid Lane Types: float32, float64 Max Error: ULP = 2 Valid Range: [-1, +1]

Returns
  arc cosine of 'x'

References And(), d, Ge(), IfThenElse(), NegMulAdd(), Or(), Set(), SignBit(), Sqrt(), Xor(), and Zero().

Referenced by CallAcos().

## Acosh()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Acosh | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::acosh(x).

Valid Lane Types: float32, float64 Max Error: ULP = 3 Valid Range: float32[1, +FLT_MAX], float64[1, +DBL_MAX]

Returns
  hyperbolic arc cosine of 'x'

References d, Gt(), IfThenElse(), IfThenElseZero(), IfThenZeroElse(), hwy::HWY_NAMESPACE::impl::Log(), MulAdd(), MulSub(), Set(), and Sqrt().

Referenced by CallAcosh().

## AdjustedLog2Reps()

constexpr size_t hwy::HWY_NAMESPACE::AdjustedLog2Reps | ( | size_t | max_pow2 | ) |

constexpr

References HWY_MIN.

## AdjustedReps()

constexpr size_t hwy::HWY_NAMESPACE::AdjustedReps | ( | size_t | max_reps | ) |

constexpr

References HWY_MAX.

## AESLastRound() [1/2]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::AESLastRound | ( | Vec256< uint8_t > | state,
|  | Vec256< uint8_t > | round_key
| ) |  |

References AESLastRound(), Combine(), d, LowerHalf(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and UpperHalf().

Referenced by AESLastRound(), and AESLastRound().

## AESLastRound() [2/2]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::AESLastRound | ( | Vec512< uint8_t > | state,
|  | Vec512< uint8_t > | round_key
| ) |  |

References AESLastRound(), Combine(), d, LowerHalf(), hwy::HWY_NAMESPACE::Vec512< T >::raw, and UpperHalf().

## AESRound() [1/2]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::AESRound | ( | Vec256< uint8_t > | state,
|  | Vec256< uint8_t > | round_key
| ) |  |

References AESRound(), Combine(), d, LowerHalf(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and UpperHalf().

Referenced by AESRound(), and AESRound().

## AESRound() [2/2]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::AESRound | ( | Vec512< uint8_t > | state,
|  | Vec512< uint8_t > | round_key
| ) |  |

References AESRound(), Combine(), d, LowerHalf(), hwy::HWY_NAMESPACE::Vec512< T >::raw, and UpperHalf().

## AllFalse() [1/8]

template<typename T >

HWY_API bool hwy::HWY_NAMESPACE::AllFalse | ( | const Full128< T > | d,
|  | const Mask128< T > | m
| ) |  |

References BitCast(), d, hwy::HWY_NAMESPACE::Mask128< T, N >::raw, and VecFromMask().

## AllFalse() [2/8]

template<typename T >

HWY_API bool hwy::HWY_NAMESPACE::AllFalse | ( | const Full256< T > | d,
|  | const Mask256< T > | m
| ) |  |

References AllFalse(), d, hwy::HWY_NAMESPACE::Mask256< T >::m0, and hwy::HWY_NAMESPACE::Mask256< T >::m1.

## AllFalse() [3/8]

template<typename T >

HWY_API bool hwy::HWY_NAMESPACE::AllFalse | ( | const Full512< T > | ,
|  | const Mask512< T > | mask
| ) |  |

References AllFalse().

## AllFalse() [4/8]

template<typename T , size_t N>

HWY_API bool hwy::HWY_NAMESPACE::AllFalse | ( | const Simd< T, N, 0 > | d,
|  | const Mask128< T, N > | m
| ) |  |

References AllFalse(), and d.

Referenced by AllFalse(), AllFalse(), AllFalse(), hwy::HWY_NAMESPACE::detail::AllFalse(), hwy::HWY_NAMESPACE::detail::AllFalse(), hwy::HWY_NAMESPACE::detail::AllFalse(), hwy::HWY_NAMESPACE::detail::AllFalse(), hwy::HWY_NAMESPACE::detail::AllFalse(), hwy::HWY_NAMESPACE::detail::AllFalse(), hwy::HWY_NAMESPACE::detail::AllFalse(), hwy::HWY_NAMESPACE::detail::AllFalse(), AllFalse(), AssertMaskEqual(), FindFirstTrue(), IndicesFromVec(), IndicesFromVec(), and IndicesFromVec().

## AllFalse() [5/8]

template<class D >

HWY_API bool hwy::HWY_NAMESPACE::AllFalse | ( | D | d,
|  | MFromD< D > | m
| ) |  |

References d, and FindFirstTrue().

## AllFalse() [6/8]

template<class D >

HWY_API bool hwy::HWY_NAMESPACE::AllFalse | ( | D | d,
|  | svbool_t | m
| ) |  |

References d, and hwy::HWY_NAMESPACE::detail::MakeMask().

## AllFalse() [7/8]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API bool hwy::HWY_NAMESPACE::AllFalse | ( | Simd< T, N, 0 > | ,
|  | const Mask128< T, N > | m
| ) |  |

References AllFalse(), AndNot(), and hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## AllFalse() [8/8]

template<typename T >

HWY_API bool hwy::HWY_NAMESPACE::AllFalse | ( | Sisd< T > | ,
|  | const Mask1< T > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits.

## AllTrue() [1/8]

template<typename T >

HWY_API bool hwy::HWY_NAMESPACE::AllTrue | ( | const Full128< T > | d,
|  | const Mask128< T > | m
| ) |  |

References AllTrue(), and d.

Referenced by AllTrue(), AllTrue(), AllTrue(), AllTrue(), hwy::HWY_NAMESPACE::detail::AllTrue(), hwy::HWY_NAMESPACE::detail::AllTrue(), hwy::HWY_NAMESPACE::detail::AllTrue(), hwy::HWY_NAMESPACE::detail::AllTrue(), hwy::HWY_NAMESPACE::detail::AllTrue(), hwy::HWY_NAMESPACE::detail::AllTrue(), hwy::HWY_NAMESPACE::detail::AllTrue(), hwy::HWY_NAMESPACE::detail::AllTrue(), AssertMaskEqual(), CompressBlocksNot(), Find(), FindIf(), IndicesFromVec(), IndicesFromVec(), IndicesFromVec(), IndicesFromVec(), and StoreMaskBits().

## AllTrue() [2/8]

template<typename T >

HWY_API bool hwy::HWY_NAMESPACE::AllTrue | ( | const Full256< T > | d,
|  | const Mask256< T > | m
| ) |  |

References AllTrue(), d, hwy::HWY_NAMESPACE::Mask256< T >::m0, and hwy::HWY_NAMESPACE::Mask256< T >::m1.

## AllTrue() [3/8]

template<typename T >

HWY_API bool hwy::HWY_NAMESPACE::AllTrue | ( | const Full512< T > | ,
|  | const Mask512< T > | mask
| ) |  |

References AllTrue().

## AllTrue() [4/8]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API bool hwy::HWY_NAMESPACE::AllTrue | ( | const Simd< T, N, 0 > | d,
|  | const Mask128< T, N > | m
| ) |  |

References AllTrue(), d, and N.

## AllTrue() [5/8]

template<typename T , size_t N>

HWY_API bool hwy::HWY_NAMESPACE::AllTrue | ( | const Simd< T, N, 0 > | ,
|  | const Mask128< T > | m
| ) |  |

References hwy::HWY_NAMESPACE::detail::AllTrue().

## AllTrue() [6/8]

template<class D >

HWY_API bool hwy::HWY_NAMESPACE::AllTrue | ( | D | d,
|  | svbool_t | m
| ) |  |

References CountTrue(), d, and Lanes().

## AllTrue() [7/8]

template<typename T , size_t N>

HWY_API bool hwy::HWY_NAMESPACE::AllTrue | ( | Simd< T, N, 0 > | ,
|  | const Mask128< T, N > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, and N.

## AllTrue() [8/8]

template<typename T >

HWY_API bool hwy::HWY_NAMESPACE::AllTrue | ( | Sisd< T > | ,
|  | const Mask1< T > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits.

## And() [1/17]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::And | ( | const Mask128< T, N > | a,
|  | Mask128< T, N > | b
| ) |  |

References And(), d, MaskFromVec(), and VecFromMask().

## And() [2/17]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::And | ( | const Mask1< T > | a,
|  | Mask1< T > | b
| ) |  |

References And(), d, MaskFromVec(), and VecFromMask().

## And() [3/17]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::And | ( | const Mask256< T > | a,
|  | Mask256< T > | b
| ) |  |

References And(), d, MaskFromVec(), and VecFromMask().

## And() [4/17]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::And | ( | const Mask512< T > | a,
|  | Mask512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::And().

## And() [5/17]

template<class V , HWY_IF_FLOAT_V(V) >

HWY_API V hwy::HWY_NAMESPACE::And | ( | const V | a,
|  | const V | b
| ) |  |

References And(), and BitCast().

## And() [6/17]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::And | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## And() [7/17]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::And | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## And() [8/17]

template<typename T , size_t N, HWY_IF_FLOAT(T) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::And | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References BitCast(), and d.

Referenced by Acos(), And(), And(), And(), And(), And(), AndNot(), AndNot(), Asin(), Asinh(), Atan(), Atanh(), ConcatEven(), ConcatEven(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), CopyIf(), CopySign(), CopySign(), CopySign(), CopySign(), CopySignToAbs(), CopySignToAbs(), CopySignToAbs(), CopySignToAbs(), Eq128(), Eq128(), Eq128(), Exp(), Expm1(), Find(), FindIf(), hwy::HWY_NAMESPACE::impl::Log(), MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), operator&(), operator&(), operator&(), operator&(), operator>(), OrAnd(), OrAnd(), OrAnd(), OrAnd(), hwy::HWY_NAMESPACE::Pack16< 9 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Pack(), PopulationCount(), RandomValues(), RandomValues(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), Sinh(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::SinSignFromQuadrant(), SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), SumsOf8(), Tanh(), TestBit(), TestBit(), hwy::HWY_NAMESPACE::Pack16< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Unpack(), and hwy::HWY_NAMESPACE::Pack8< 7 >::Unpack().

## And() [9/17]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::And | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References BitCast(), d, and N.

## And() [10/17]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::And | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References BitCast().

## And() [11/17]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::And | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## And() [12/17]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::And | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## And() [13/17]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::And | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## And() [14/17]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::And | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## And() [15/17]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::And | ( | const Vec512< T > | a,
|  | const Vec512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## And() [16/17]

HWY_API svbool_t hwy::HWY_NAMESPACE::And | ( | svbool_t | a,
|  | svbool_t | b
| ) |  |

## And() [17/17]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::And | ( | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References And(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## AndNot() [1/18]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::AndNot | ( | const Mask128< T, N > | a,
|  | Mask128< T, N > | b
| ) |  |

References AndNot(), d, MaskFromVec(), and VecFromMask().

## AndNot() [2/18]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::AndNot | ( | const Mask1< T > | a,
|  | Mask1< T > | b
| ) |  |

References AndNot(), d, MaskFromVec(), and VecFromMask().

## AndNot() [3/18]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::AndNot | ( | const Mask256< T > | a,
|  | Mask256< T > | b
| ) |  |

References AndNot(), d, MaskFromVec(), and VecFromMask().

## AndNot() [4/18]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::AndNot | ( | const Mask512< T > | a,
|  | Mask512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::AndNot().

## AndNot() [5/18]

template<class V , HWY_IF_FLOAT_V(V) >

HWY_API V hwy::HWY_NAMESPACE::AndNot | ( | const V | a,
|  | const V | b
| ) |  |

References AndNot(), and BitCast().

## AndNot() [6/18]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::AndNot | ( | const V | not_a,
|  | const V | b
| ) |  |

References And(), and Not().

## AndNot() [7/18]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::AndNot | ( | const Vec128< double, N > | not_mask,
|  | const Vec128< double, N > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## AndNot() [8/18]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::AndNot | ( | const Vec128< float, N > | not_mask,
|  | const Vec128< float, N > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## AndNot() [9/18]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::AndNot | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References And(), and Not().

## AndNot() [10/18]

template<typename T , size_t N, HWY_IF_NOT_FLOAT(T) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::AndNot | ( | const Vec128< T, N > | not_mask,
|  | const Vec128< T, N > | mask
| ) |  |

References AndNot().

Referenced by AllFalse(), AndNot(), AndNot(), AndNot(), AndNot(), AndNot(), AndNot(), Compress(), Compress(), CompressBlocksNot(), CompressNot(), CompressNot(), CopySign(), CopySign(), CopySign(), CopySign(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::CosSignFromQuadrant(), ExclusiveNeither(), ExclusiveNeither(), ExclusiveNeither(), IfThenZeroElse(), IfThenZeroElse(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Unpack(), and hwy::HWY_NAMESPACE::Pack8< 7 >::Unpack().

## AndNot() [11/18]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::AndNot | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References BitCast().

## AndNot() [12/18]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::AndNot | ( | const Vec256< double > | not_mask,
|  | const Vec256< double > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## AndNot() [13/18]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::AndNot | ( | const Vec256< float > | not_mask,
|  | const Vec256< float > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## AndNot() [14/18]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::AndNot | ( | const Vec512< double > | not_mask,
|  | const Vec512< double > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## AndNot() [15/18]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::AndNot | ( | const Vec512< float > | not_mask,
|  | const Vec512< float > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## AndNot() [16/18]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::AndNot | ( | const Vec512< T > | not_mask,
|  | const Vec512< T > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## AndNot() [17/18]

HWY_API svbool_t hwy::HWY_NAMESPACE::AndNot | ( | svbool_t | a,
|  | svbool_t | b
| ) |  |

## AndNot() [18/18]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::AndNot | ( | Vec256< T > | not_mask,
|  | Vec256< T > | mask
| ) |  |

References AndNot(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## ApproximateReciprocal() [1/6]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::ApproximateReciprocal | ( | const Vec128< float > | v | ) |

References v.

Referenced by ApproximateReciprocal(), and operator/().

## ApproximateReciprocal() [2/6]

HWY_API Vec128< float, 1 > hwy::HWY_NAMESPACE::ApproximateReciprocal | ( | const Vec128< float, 1 > | v | ) |

References v.

## ApproximateReciprocal() [3/6]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::ApproximateReciprocal | ( | const Vec128< float, N > | v | ) |

References ApproximateReciprocal(), and v.

## ApproximateReciprocal() [4/6]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::ApproximateReciprocal | ( | const Vec1< float > | v | ) |

References v.

## ApproximateReciprocal() [5/6]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ApproximateReciprocal | ( | const Vec256< float > | v | ) |

References Set(), and v.

## ApproximateReciprocal() [6/6]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ApproximateReciprocal | ( | const Vec512< float > | v | ) |

References v.

## ApproximateReciprocalSqrt() [1/6]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::ApproximateReciprocalSqrt | ( | const Vec128< float > | v | ) |

References ApproximateReciprocalSqrt(), and v.

Referenced by ApproximateReciprocalSqrt(), ApproximateReciprocalSqrt(), and Sqrt().

## ApproximateReciprocalSqrt() [2/6]

HWY_API Vec128< float, 1 > hwy::HWY_NAMESPACE::ApproximateReciprocalSqrt | ( | const Vec128< float, 1 > | v | ) |

References v.

## ApproximateReciprocalSqrt() [3/6]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::ApproximateReciprocalSqrt | ( | const Vec128< float, N > | v | ) |

References ApproximateReciprocalSqrt(), and v.

## ApproximateReciprocalSqrt() [4/6]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::ApproximateReciprocalSqrt | ( | const Vec1< float > | v | ) |

References hwy::CopySameSize(), hwy::HWY_NAMESPACE::Vec1< T >::raw, and v.

## ApproximateReciprocalSqrt() [5/6]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ApproximateReciprocalSqrt | ( | const Vec256< float > | v | ) |

References Set(), Sqrt(), and v.

## ApproximateReciprocalSqrt() [6/6]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ApproximateReciprocalSqrt | ( | const Vec512< float > | v | ) |

References v.

## Asin()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Asin | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::asin(x).

Valid Lane Types: float32, float64 Max Error: ULP = 2 Valid Range: [-1, +1]

Returns
  arc sine of 'x'

References And(), d, IfThenElse(), MulAdd(), NegMulAdd(), Or(), Set(), SignBit(), Sqrt(), and Xor().

Referenced by CallAsin().

## Asinh()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Asinh | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::asinh(x).

Valid Lane Types: float32, float64 Max Error: ULP = 3 Valid Range: float32[-FLT_MAX, +FLT_MAX], float64[-DBL_MAX, +DBL_MAX]

Returns
  hyperbolic arc sine of 'x'

References And(), d, Gt(), IfThenElse(), IfThenElseZero(), IfThenZeroElse(), hwy::HWY_NAMESPACE::impl::Log(), MulAdd(), Or(), Set(), SignBit(), Sqrt(), and Xor().

Referenced by CallAsinh().

## AssertMaskEqual()

template<class D >

HWY_NOINLINE void hwy::HWY_NAMESPACE::AssertMaskEqual | ( | D | d,
|  | VecArg< Mask< D > > | a,
|  | VecArg< Mask< D > > | b,
|  | const char * | filename,
|  | int | line
| ) |  |

References AllFalse(), AllTrue(), hwy::AssertEqual(), AssertVecEqual(), CountTrue(), d, HWY_MAX, HWY_TARGET, Lanes(), hwy::line, Load(), N, Print(), StoreMaskBits(), hwy::TargetName(), and VecFromMask().

## AssertVecEqual() [1/2]

template<class D , typename T = TFromD<D>, class V = Vec<D>>

HWY_INLINE void hwy::HWY_NAMESPACE::AssertVecEqual | ( | D | d,
|  | const T * | expected,
|  | VecArg< V > | actual,
|  | const char * | filename,
|  | const int | line
| ) |  |

References hwy::detail::AssertArrayEqual(), d, HWY_TARGET, Lanes(), hwy::line, N, Store(), and hwy::TargetName().

Referenced by AssertMaskEqual(), and AssertVecEqual().

## AssertVecEqual() [2/2]

template<class D , typename T = TFromD<D>, class V = Vec<D>>

HWY_INLINE void hwy::HWY_NAMESPACE::AssertVecEqual | ( | D | d,
|  | VecArg< V > | expected,
|  | VecArg< V > | actual,
|  | const char * | filename,
|  | int | line
| ) |  |

References AssertVecEqual(), d, Lanes(), hwy::line, and Store().

## Atan()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Atan | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::atan(x).

Valid Lane Types: float32, float64 Max Error: ULP = 3 Valid Range: float32[-FLT_MAX, +FLT_MAX], float64[-DBL_MAX, +DBL_MAX]

Returns
  arc tangent of 'x'

References And(), d, Gt(), IfThenElse(), Or(), Set(), SignBit(), and Xor().

Referenced by CallAtan().

## Atanh()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Atanh | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::atanh(x).

Valid Lane Types: float32, float64 Max Error: ULP = 3 Valid Range: (-1, +1)

Returns
  hyperbolic arc tangent of 'x'

References And(), d, Log1p(), Set(), SignBit(), and Xor().

Referenced by CallAtanh().

## AverageRound() [1/10]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::AverageRound | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## AverageRound() [2/10]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::AverageRound | ( | const Vec128< uint8_t, N > | a,
|  | const Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## AverageRound() [3/10]

HWY_API Vec1< uint16_t > hwy::HWY_NAMESPACE::AverageRound | ( | const Vec1< uint16_t > | a,
|  | const Vec1< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## AverageRound() [4/10]

HWY_API Vec1< uint8_t > hwy::HWY_NAMESPACE::AverageRound | ( | const Vec1< uint8_t > | a,
|  | const Vec1< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## AverageRound() [5/10]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::AverageRound | ( | const Vec256< uint16_t > | a,
|  | const Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## AverageRound() [6/10]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::AverageRound | ( | const Vec256< uint8_t > | a,
|  | const Vec256< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## AverageRound() [7/10]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::AverageRound | ( | const Vec512< uint16_t > | a,
|  | const Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## AverageRound() [8/10]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::AverageRound | ( | const Vec512< uint8_t > | a,
|  | const Vec512< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## AverageRound() [9/10]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::AverageRound | ( | Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by AverageRound().

## AverageRound() [10/10]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::AverageRound | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References AverageRound(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## BitCast() [1/6]

template<class D , class FromV >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::BitCast | ( | D | d,
|  | FromV | v
| ) |  |

References hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastToByte(), d, and v.

## BitCast() [2/6]

template<typename T , typename FromT >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::BitCast | ( | Full256< T > | d,
|  | Vec256< FromT > | v
| ) |  |

References BitCast(), d, v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## BitCast() [3/6]

template<typename T , typename FromT >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::BitCast | ( | Full512< T > | d,
|  | Vec512< FromT > | v
| ) |  |

References hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastToByte(), d, and v.

## BitCast() [4/6]

template<typename T , size_t N, typename FromT >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::BitCast | ( | Simd< T, N, 0 > | d,
|  | Vec128< FromT, N *sizeof(T)/sizeof(FromT)> | v
| ) |  |

References BitCast(), d, and v.

Referenced by Abs(), Abs(), Abs(), AllFalse(), And(), And(), And(), AndNot(), AndNot(), BitCast(), BitCast(), hwy::HWY_NAMESPACE::detail::BitCastToUnsigned(), hwy::HWY_NAMESPACE::detail::BitsFromBool(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), BlendedStore(), BroadcastSignBit(), Combine(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), Compress(), Compress(), hwy::HWY_NAMESPACE::detail::Compress(), CompressBlendedStore(), hwy::HWY_NAMESPACE::detail::CompressNot(), CompressStore(), hwy::HWY_NAMESPACE::Dot::Compute(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatLowerLower(), ConcatLowerLower(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatUpperLower(), ConcatUpperLower(), ConcatUpperUpper(), ConcatUpperUpper(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), CopySign(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::CosSignFromQuadrant(), hwy::HWY_NAMESPACE::detail::CountTrue(), hwy::HWY_NAMESPACE::detail::CountTrue(), hwy::HWY_NAMESPACE::detail::CountTrue(), hwy::HWY_NAMESPACE::detail::CountTrue(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::FirstNPerBlock(), hwy::HWY_NAMESPACE::detail::FixConversionOverflow(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfVecThenElse(), IfVecThenElse(), IndicesFromVec(), IndicesFromVec(), Inf(), InterleaveLower(), InterleaveUpper(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), LoadInterleaved3(), LoadInterleaved4(), LoadMaskBits(), LoadU(), LoadU(), hwy::HWY_NAMESPACE::impl::Log(), hwy::HWY_NAMESPACE::impl::LogImpl< float >::Log2p1NoSubnormal(), LowerHalf(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), Max(), Max(), MaxOfLanes(), MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxU(), Min(), Min(), MinOfLanes(), MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinU(), MulEven(), MulEven(), MulFixedPoint15(), MulOdd(), NaN(), hwy::HWY_NAMESPACE::detail::NibblesFromMask(), Not(), Not(), Not(), Not(), Not(), OddEven(), OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), operator*(), operator<<(), operator<<(), operator>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), Or(), Or(), Or(), Or3(), OrAnd(), hwy::HWY_NAMESPACE::Pack8< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Pack(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), PopulationCount(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::Pow2I(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), RandomValues(), RandomValues(), RearrangeToOddPlusEven(), RebindMask(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), hwy::HWY_NAMESPACE::detail::ReorderWidenMulAccumulateBF16(), Reverse(), Reverse(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse4(), Reverse4(), Reverse4(), Reverse8(), ReverseBlocks(), hwy::HWY_NAMESPACE::detail::ScalarMaskedStore(), hwy::HWY_NAMESPACE::detail::Set64(), hwy::HWY_NAMESPACE::detail::Set64(), ShiftLeft(), ShiftLeft(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftSame(), ShiftLeftSame(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRightBytes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), Shuffle01(), Shuffle0321(), Shuffle1032(), hwy::HWY_NAMESPACE::detail::Shuffle1230(), Shuffle2103(), hwy::HWY_NAMESPACE::detail::Shuffle2301(), hwy::HWY_NAMESPACE::detail::Shuffle3012(), SignBit(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::SinSignFromQuadrant(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved4(), StoreInterleaved4(), StoreU(), StoreU(), SumOfLanes(), SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), SumsOf8(), SumsOf8(), SumsOf8(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytesOr0(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), U8FromU32(), U8FromU32(), hwy::HWY_NAMESPACE::Pack16< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Unpack(), UpperHalf(), UpperHalf(), UpperHalf(), VecFromMask(), VecFromMask(), Xor(), Xor(), Xor(), Xor3(), Xor3(), Zero(), hwy::HWY_NAMESPACE::detail::ZeroExtendVector(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), ZipUpper(), ZipUpper(), ZipUpper(), and ZipUpper().

## BitCast() [5/6]

template<typename T , size_t N, typename FromT , size_t FromN>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::BitCast | ( | Simd< T, N, 0 > | ,
|  | Vec128< FromT, FromN > | v
| ) |  |

References hwy::CopySameSize(), and v.

## BitCast() [6/6]

template<typename T , typename FromT >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::BitCast | ( | Sisd< T > | ,
|  | Vec1< FromT > | v
| ) |  |

References v.

## BlendedStore() [1/12]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | const Vec1< T > | v,
|  | Mask1< T > | m,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits, d, StoreU(), and v.

## BlendedStore() [2/12]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec128< double, N > | v,
|  | Mask128< double, N > | m,
|  | Simd< double, N, 0 > | ,
|  | double *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::raw, and v.

## BlendedStore() [3/12]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec128< float, N > | v,
|  | Mask128< float, N > | m,
|  | Simd< float, N, 0 > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::raw, and v.

## BlendedStore() [4/12]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec128< T, N > | v,
|  | Mask128< T, N > | m,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | p
| ) |  |

References BitCast(), BlendedStore(), d, IfThenElse(), LoadU(), RebindMask(), StoreU(), and v.

Referenced by BlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), Generate(), Replace(), ReplaceIf(), SafeCopyN(), SafeFillN(), Transform(), Transform1(), and Transform2().

## BlendedStore() [5/12]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec128< T, N > | v,
|  | Mask128< T, N > | m,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::raw, and v.

## BlendedStore() [6/12]

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec256< double > | v,
|  | Mask256< double > | m,
|  | Full256< double > | ,
|  | double *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## BlendedStore() [7/12]

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec256< float > | v,
|  | Mask256< float > | m,
|  | Full256< float > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## BlendedStore() [8/12]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec256< T > | v,
|  | Mask256< T > | m,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | p
| ) |  |

References d, IfThenElse(), LoadU(), StoreU(), and v.

## BlendedStore() [9/12]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec256< T > | v,
|  | Mask256< T > | m,
|  | Full256< T > | ,
|  | T *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## BlendedStore() [10/12]

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec512< double > | v,
|  | Mask512< double > | m,
|  | Full512< double > | ,
|  | double *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask512< T >::raw, and v.

## BlendedStore() [11/12]

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec512< float > | v,
|  | Mask512< float > | m,
|  | Full512< float > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask512< T >::raw, and v.

## BlendedStore() [12/12]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API void hwy::HWY_NAMESPACE::BlendedStore | ( | Vec512< T > | v,
|  | Mask512< T > | m,
|  | Full512< T > | ,
|  | T *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask512< T >::raw, and v.

## Broadcast() [1/43]

template<int kLane, class V >

HWY_API V hwy::HWY_NAMESPACE::Broadcast | ( | const V | v | ) |

References d, Iota(), hwy::HWY_NAMESPACE::detail::LanesPerBlock(), hwy::HWY_NAMESPACE::detail::OffsetsOf128BitBlocks(), TableLookupLanes(), and v.

## Broadcast() [2/43]

template<int kLane, size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< double, N > | v | ) |

References N, and v.

## Broadcast() [3/43]

template<int kLane>

HWY_API Vec128< float > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< float > | v | ) |

References Broadcast(), and v.

## Broadcast() [4/43]

template<int kLane, size_t N, HWY_IF_LE64(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< float, N > | v | ) |

References Broadcast(), N, and v.

## Broadcast() [5/43]

template<int kLane, size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< float, N > | v | ) |

References N, and v.

## Broadcast() [6/43]

template<int kLane>

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< int16_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [7/43]

template<int kLane, size_t N, HWY_IF_LE64(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< int16_t, N > | v | ) |

References Broadcast(), N, and v.

## Broadcast() [8/43]

template<int kLane, size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< int16_t, N > | v | ) |

References N, and v.

## Broadcast() [9/43]

template<int kLane>

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< int32_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [10/43]

template<int kLane, size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< int32_t, N > | v | ) |

References Broadcast(), N, and v.

## Broadcast() [11/43]

template<int kLane, size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< int32_t, N > | v | ) |

References N, and v.

## Broadcast() [12/43]

template<int kLane>

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< int64_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [13/43]

template<int kLane, size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< int64_t, N > | v | ) |

References N, and v.

## Broadcast() [14/43]

template<int kLane, typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< T, N > | v | ) |

References N, and v.

## Broadcast() [15/43]

template<int kLane>

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< uint16_t > | v | ) |

References Broadcast(), and v.

Referenced by Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), and Broadcast().

## Broadcast() [16/43]

template<int kLane, size_t N, HWY_IF_LE64(uint16_t, N) >

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< uint16_t, N > | v | ) |

References Broadcast(), N, and v.

## Broadcast() [17/43]

template<int kLane, size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< uint16_t, N > | v | ) |

References N, and v.

## Broadcast() [18/43]

template<int kLane>

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< uint32_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [19/43]

template<int kLane, size_t N, HWY_IF_LE64(uint32_t, N) >

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< uint32_t, N > | v | ) |

References Broadcast(), N, and v.

## Broadcast() [20/43]

template<int kLane, size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< uint32_t, N > | v | ) |

References N, and v.

## Broadcast() [21/43]

template<int kLane>

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< uint64_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [22/43]

template<int kLane, size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec128< uint64_t, N > | v | ) |

References N, and v.

## Broadcast() [23/43]

template<int kLane, typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec1< T > | v | ) |

References v.

## Broadcast() [24/43]

template<int kLane>

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec256< double > | v | ) |

References Broadcast(), and v.

## Broadcast() [25/43]

template<int kLane>

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec256< int16_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [26/43]

template<int kLane>

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec256< int32_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [27/43]

template<int kLane>

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec256< int64_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [28/43]

template<int kLane, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec256< T > | v | ) |

References v, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Broadcast() [29/43]

template<int kLane>

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec256< uint16_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [30/43]

template<int kLane>

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec256< uint32_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [31/43]

template<int kLane>

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec256< uint64_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [32/43]

template<int kLane>

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec512< double > | v | ) |

References Broadcast(), and v.

## Broadcast() [33/43]

template<int kLane>

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec512< float > | v | ) |

References Broadcast(), and v.

## Broadcast() [34/43]

template<int kLane>

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec512< int16_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [35/43]

template<int kLane>

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec512< int32_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [36/43]

template<int kLane>

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec512< int64_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [37/43]

template<int kLane>

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec512< uint16_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [38/43]

template<int kLane>

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec512< uint32_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [39/43]

template<int kLane>

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec512< uint64_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [40/43]

template<int kLane>

HWY_API Vec64< int64_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec64< int64_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [41/43]

template<int kLane>

HWY_API Vec64< uint64_t > hwy::HWY_NAMESPACE::Broadcast | ( | const Vec64< uint64_t > | v | ) |

References Broadcast(), and v.

## Broadcast() [42/43]

template<int kLane, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Broadcast | ( | Vec128< T, N > | v | ) |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Broadcast() [43/43]

template<int kLane>

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Broadcast | ( | Vec256< float > | v | ) |

References Broadcast(), and v.

## BroadcastSignBit() [1/17]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const V | v | ) |

References ShiftRight(), and v.

## BroadcastSignBit() [2/17]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec128< int16_t, N > | v | ) |

References v.

## BroadcastSignBit() [3/17]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec128< int32_t, N > | v | ) |

References v.

## BroadcastSignBit() [4/17]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec128< int64_t, N > | v | ) |

References BitCast(), d, v, VecFromMask(), and Zero().

## BroadcastSignBit() [5/17]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec128< int8_t, N > | v | ) |

References d, v, VecFromMask(), and Zero().

## BroadcastSignBit() [6/17]

template<typename T , size_t N, HWY_IF_SIGNED(T) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec128< T, N > | v | ) |

References BroadcastSignBit(), ShiftRight(), and v.

Referenced by Abs(), Abs(), Abs(), BroadcastSignBit(), ConvertTo(), ConvertTo(), hwy::HWY_NAMESPACE::detail::FixConversionOverflow(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), Max(), Min(), operator<<(), operator>>(), ShiftRight(), ShiftRight(), ShiftRightSame(), and ShiftRightSame().

## BroadcastSignBit() [7/17]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec1< T > | v | ) |

References hwy::HWY_NAMESPACE::Vec1< T >::raw, and v.

## BroadcastSignBit() [8/17]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec256< int16_t > | v | ) |

References v.

## BroadcastSignBit() [9/17]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec256< int32_t > | v | ) |

References v.

## BroadcastSignBit() [10/17]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec256< int64_t > | v | ) |

References v, VecFromMask(), and Zero().

## BroadcastSignBit() [11/17]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec256< int8_t > | v | ) |

References d, v, VecFromMask(), and Zero().

## BroadcastSignBit() [12/17]

template<typename T , HWY_IF_NOT_LANE_SIZE(T, 1) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec256< T > | v | ) |

References ShiftRight(), and v.

## BroadcastSignBit() [13/17]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec512< int16_t > | v | ) |

References v.

## BroadcastSignBit() [14/17]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec512< int32_t > | v | ) |

References v.

## BroadcastSignBit() [15/17]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec512< int64_t > | v | ) |

References v.

## BroadcastSignBit() [16/17]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | const Vec512< int8_t > | v | ) |

References v, VecFromMask(), and Zero().

## BroadcastSignBit() [17/17]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::BroadcastSignBit | ( | Vec128< T, N > | v | ) |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## CallAcos()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallAcos | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References Acos(), and d.

## CallAcosh()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallAcosh | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References Acosh(), and d.

## CallAsin()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallAsin | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References Asin(), and d.

## CallAsinh()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallAsinh | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References Asinh(), and d.

## CallAtan()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallAtan | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References Atan(), and d.

## CallAtanh()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallAtanh | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References Atanh(), and d.

## CallCos()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallCos | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References Cos(), and d.

## CallExp()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallExp | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References d, and Exp().

## CallExpm1()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallExpm1 | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References d, and Expm1().

## CallHeapSort()

template<class Order , typename KeyType , HWY_IF_NOT_LANE_SIZE(KeyType, 16) >

void hwy::HWY_NAMESPACE::CallHeapSort | ( | KeyType *HWY_RESTRICT | keys,
|  | const size_t | num_keys
| ) |  |

References hwy::HWY_NAMESPACE::detail::HeapSort().

## CallLog()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallLog | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References d, and Log().

## CallLog10()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallLog10 | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References d, and Log10().

## CallLog1p()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallLog1p | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References d, and Log1p().

## CallLog2()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallLog2 | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References d, and Log2().

## CallSin()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallSin | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References d, and Sin().

## CallSinh()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallSinh | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References d, and Sinh().

## CallTanh()

template<class D , class V >

HWY_NOINLINE V hwy::HWY_NAMESPACE::CallTanh | ( | const D | d,
|  | VecArg< V > | x
| ) |  |

References d, and Tanh().

## Ceil() [1/10]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Ceil | ( | const V | v | ) |

References Round(), and v.

## Ceil() [2/10]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Ceil | ( | const Vec128< float, N > | v | ) |

References Ceil(), ConvertTo(), IfThenElse(), RebindMask(), v, and VecFromMask().

Referenced by Ceil(), and Ceil().

## Ceil() [3/10]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Ceil | ( | const Vec128< T, N > | v | ) |

References ConvertTo(), IfThenElse(), RebindMask(), hwy::HWY_NAMESPACE::detail::UseInt(), v, and VecFromMask().

## Ceil() [4/10]

HWY_API Vec1< double > hwy::HWY_NAMESPACE::Ceil | ( | const Vec1< double > | v | ) |

References v.

## Ceil() [5/10]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::Ceil | ( | const Vec1< float > | v | ) |

References v.

## Ceil() [6/10]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Ceil | ( | const Vec256< double > | v | ) |

References v.

## Ceil() [7/10]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Ceil | ( | const Vec512< double > | v | ) |

References v.

## Ceil() [8/10]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Ceil | ( | const Vec512< float > | v | ) |

References v.

## Ceil() [9/10]

template<typename Float , size_t N>

Vec128< Float, N > hwy::HWY_NAMESPACE::Ceil | ( | Vec128< Float, N > | v | ) |

References hwy::CopySameSize(), N, and v.

## Ceil() [10/10]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Ceil | ( | Vec256< float > | v | ) |

References Ceil(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Ceiling()

template<typename Float , typename Bits , int kMantissaBits, int kExponentBits, class V >

V hwy::HWY_NAMESPACE::Ceiling | ( | const V | v | ) |

References hwy::CopySameSize(), and v.

## Clamp()

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Clamp | ( | const V | v,
|  | const V | lo,
|  | const V | hi
| ) |  |

References Max(), Min(), and v.

Referenced by grk::HWY_NAMESPACE::DecompressDcShiftIrrev::transform(), grk::HWY_NAMESPACE::DecompressDcShiftRev::transform(), grk::HWY_NAMESPACE::DecompressRev::transform(), and grk::HWY_NAMESPACE::DecompressIrrev::transform().

## CLMulLower() [1/2]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::CLMulLower | ( | Vec256< uint64_t > | a,
|  | Vec256< uint64_t > | b
| ) |  |

References CLMulLower(), Combine(), d, LowerHalf(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and UpperHalf().

Referenced by CLMulLower(), and CLMulLower().

## CLMulLower() [2/2]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::CLMulLower | ( | Vec512< uint64_t > | va,
|  | Vec512< uint64_t > | vb
| ) |  |

References CLMulLower(), d, Load(), hwy::HWY_NAMESPACE::Vec512< T >::raw, and Store().

## CLMulUpper() [1/2]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::CLMulUpper | ( | Vec256< uint64_t > | a,
|  | Vec256< uint64_t > | b
| ) |  |

References CLMulUpper(), Combine(), d, LowerHalf(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and UpperHalf().

Referenced by CLMulUpper(), and CLMulUpper().

## CLMulUpper() [2/2]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::CLMulUpper | ( | Vec512< uint64_t > | va,
|  | Vec512< uint64_t > | vb
| ) |  |

References CLMulUpper(), d, Load(), hwy::HWY_NAMESPACE::Vec512< T >::raw, and Store().

## Combine() [1/19]

template<class D , class V2 >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::Combine | ( | const D | d,
|  | const V2 | hi,
|  | const V2 | lo
| ) |  |

References ConcatLowerLower(), and d.

## Combine() [2/19]

template<class D2 , class V >

HWY_API VFromD< D2 > hwy::HWY_NAMESPACE::Combine | ( | D2 | d2,
|  | const V | hi,
|  | const V | lo
| ) |  |

References Lanes().

## Combine() [3/19]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::Combine | ( | Full128< float > | ,
|  | Vec64< float > | hi,
|  | Vec64< float > | lo
| ) |  |

References Combine(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Combine() [4/19]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::Combine | ( | Full128< int16_t > | ,
|  | Vec64< int16_t > | hi,
|  | Vec64< int16_t > | lo
| ) |  |

References Combine(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Combine() [5/19]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::Combine | ( | Full128< int32_t > | ,
|  | Vec64< int32_t > | hi,
|  | Vec64< int32_t > | lo
| ) |  |

References Combine(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Combine() [6/19]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::Combine | ( | Full128< int64_t > | ,
|  | Vec64< int64_t > | hi,
|  | Vec64< int64_t > | lo
| ) |  |

References Combine(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Combine() [7/19]

HWY_API Vec128< int8_t > hwy::HWY_NAMESPACE::Combine | ( | Full128< int8_t > | ,
|  | Vec64< int8_t > | hi,
|  | Vec64< int8_t > | lo
| ) |  |

References Combine(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Combine() [8/19]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::Combine | ( | Full128< uint16_t > | ,
|  | Vec64< uint16_t > | hi,
|  | Vec64< uint16_t > | lo
| ) |  |

References Combine(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Combine() [9/19]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::Combine | ( | Full128< uint32_t > | ,
|  | Vec64< uint32_t > | hi,
|  | Vec64< uint32_t > | lo
| ) |  |

References Combine(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Combine() [10/19]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::Combine | ( | Full128< uint64_t > | ,
|  | Vec64< uint64_t > | hi,
|  | Vec64< uint64_t > | lo
| ) |  |

References Combine(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Combine() [11/19]

HWY_API Vec128< uint8_t > hwy::HWY_NAMESPACE::Combine | ( | Full128< uint8_t > | ,
|  | Vec64< uint8_t > | hi,
|  | Vec64< uint8_t > | lo
| ) |  |

References Combine(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by AESLastRound(), AESLastRound(), AESRound(), AESRound(), CLMulLower(), CLMulUpper(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), ConcatUpperLower(), DemoteTo(), DemoteTo(), DemoteTo(), MaxOfLanes(), MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), hwy::HWY_NAMESPACE::detail::Shuffle1230(), hwy::HWY_NAMESPACE::detail::Shuffle2301(), hwy::HWY_NAMESPACE::detail::Shuffle3012(), SumOfLanes(), TableLookupBytes(), TableLookupBytes(), ZeroExtendVector(), ZeroExtendVector(), ZeroExtendVector(), and ZeroExtendVector().

## Combine() [12/19]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Combine | ( | Full256< double > | d,
|  | Vec128< double > | hi,
|  | Vec128< double > | lo
| ) |  |

References Combine(), d, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and ZeroExtendVector().

## Combine() [13/19]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Combine | ( | Full256< float > | d,
|  | Vec128< float > | hi,
|  | Vec128< float > | lo
| ) |  |

References Combine(), d, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and ZeroExtendVector().

## Combine() [14/19]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Combine | ( | Full256< T > | d,
|  | Vec128< T > | hi,
|  | Vec128< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Combine() [15/19]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Combine | ( | Full512< double > | d,
|  | Vec256< double > | hi,
|  | Vec256< double > | lo
| ) |  |

References Combine(), d, hwy::HWY_NAMESPACE::Vec256< T >::raw, and ZeroExtendVector().

## Combine() [16/19]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Combine | ( | Full512< float > | d,
|  | Vec256< float > | hi,
|  | Vec256< float > | lo
| ) |  |

References Combine(), d, hwy::HWY_NAMESPACE::Vec256< T >::raw, and ZeroExtendVector().

## Combine() [17/19]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Combine | ( | Full512< T > | d,
|  | Vec256< T > | hi,
|  | Vec256< T > | lo
| ) |  |

References Combine(), d, hwy::HWY_NAMESPACE::Vec256< T >::raw, and ZeroExtendVector().

## Combine() [18/19]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Combine | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N/2 > | hi,
|  | Vec128< T, N/2 > | lo
| ) |  |

References BitCast(), Combine(), d, InterleaveLower(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Combine() [19/19]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Combine | ( | Simd< T, N, 0 > | ,
|  | Vec128< T, N/2 > | hi_half,
|  | Vec128< T, N/2 > | lo_half
| ) |  |

References hwy::CopyBytes(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## CombineShiftRightBytes() [1/9]

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
| ) |  |

References BitCast(), d, FirstN(), hwy::HWY_NAMESPACE::detail::FirstNPerBlock(), and IfThenElse().

## CombineShiftRightBytes() [2/9]

template<int kBytes, typename T , class V128 = Vec128<T>>

HWY_API V128 hwy::HWY_NAMESPACE::CombineShiftRightBytes | ( | Full128< T > | d,
|  | V128 | hi,
|  | V128 | lo
| ) |  |

References BitCast(), CombineShiftRightBytes(), and d.

Referenced by CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), ConcatLowerUpper(), and hwy::HWY_NAMESPACE::detail::ShiftLeftBytesT< kBytes >::operator()().

## CombineShiftRightBytes() [3/9]

template<int kBytes, typename T , class V = Vec128<T>>

HWY_API V hwy::HWY_NAMESPACE::CombineShiftRightBytes | ( | Full128< T > | d,
|  | V | hi,
|  | V | lo
| ) |  |

## CombineShiftRightBytes() [4/9]

template<int kBytes, typename T , class V = Vec256<T>>

HWY_API V hwy::HWY_NAMESPACE::CombineShiftRightBytes | ( | Full256< T > | d,
|  | V | hi,
|  | V | lo
| ) |  |

References d.

## CombineShiftRightBytes() [5/9]

template<int kBytes, typename T , class V = Vec512<T>>

HWY_API V hwy::HWY_NAMESPACE::CombineShiftRightBytes | ( | Full512< T > | d,
|  | V | hi,
|  | V | lo
| ) |  |

References BitCast(), CombineShiftRightBytes(), and d.

## CombineShiftRightBytes() [6/9]

template<int kBytes, typename T >

HWY_API Vec64< T > hwy::HWY_NAMESPACE::CombineShiftRightBytes | ( | Full64< T > | d,
|  | Vec64< T > | hi,
|  | Vec64< T > | lo
| ) |  |

References BitCast(), CombineShiftRightBytes(), and d.

## CombineShiftRightBytes() [7/9]

template<int kBytes, typename T , size_t N, HWY_IF_LE64(T, N) , class V = Vec128<T, N>>

HWY_API V hwy::HWY_NAMESPACE::CombineShiftRightBytes | ( | Simd< T, N, 0 > | d,
|  | V | hi,
|  | V | lo
| ) |  |

References BitCast(), CombineShiftRightBytes(), d, N, and ShiftLeftBytes().

## CombineShiftRightBytes() [8/9]

template<int kBytes, typename T , size_t N, HWY_IF_LE32(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::CombineShiftRightBytes | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References BitCast(), CombineShiftRightBytes(), d, N, and ShiftLeftBytes().

## CombineShiftRightBytes() [9/9]

template<int kBytes, typename T , size_t N, class V = Vec128<T, N>>

HWY_API V hwy::HWY_NAMESPACE::CombineShiftRightBytes | ( | Simd< T, N, 0 > | ,
|  | V | hi,
|  | V | lo
| ) |  |

References hwy::CopyBytes(), HWY_RESTRICT, and N.

## CombineShiftRightLanes()

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
| ) |  |

References d, and IfThenElse().

## Compress() [1/14]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Compress | ( | const Vec256< T > | v,
|  | const Mask256< T > | mask
| ) |  |

References CompressStore(), d, Load(), and v.

## Compress() [2/14]

HWY_API svfloat16_t hwy::HWY_NAMESPACE::Compress | ( | svfloat16_t | v,
|  | svbool_t | mask16
| ) |  |

References BitCast(), Compress(), and v.

## Compress() [3/14]

template<class V , class M , typename T = TFromV<V>, HWY_IF_LANE_SIZE(T, 1) >

HWY_API V hwy::HWY_NAMESPACE::Compress | ( | V | v,
|  | const M | mask
| ) |  |

References CompressStore(), d, HWY_ALIGN, Load(), MaxLanes(), and v.

## Compress() [4/14]

template<class V , class M , HWY_IF_LANE_SIZE_ONE_OF_V(V, 0x6) >

HWY_API V hwy::HWY_NAMESPACE::Compress | ( | V | v,
|  | const M | mask
| ) |  |

References BitCast(), d, RebindMask(), and v.

## Compress() [5/14]

template<class V , HWY_IF_LANE_SIZE_V(V, 8) >

HWY_API V hwy::HWY_NAMESPACE::Compress | ( | V | v,
|  | svbool_t | mask
| ) |  |

References d, Iota(), Set(), SetTableIndices(), TableLookupLanes(), and v.

## Compress() [6/14]

template<size_t N, HWY_IF_GE64(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Compress | ( | Vec128< float, N > | v,
|  | Mask128< float, N > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::raw, and v.

## Compress() [7/14]

template<typename T , HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Compress | ( | Vec128< T > | v,
|  | Mask128< T > | mask
| ) |  |

References AndNot(), d, DupEven(), DupOdd(), IfVecThenElse(), Shuffle01(), v, and VecFromMask().

## Compress() [8/14]

template<typename T >

HWY_API Vec128< T, 1 > hwy::HWY_NAMESPACE::Compress | ( | Vec128< T, 1 > | v,
|  | Mask128< T, 1 > |
| ) |  |

References v.

Referenced by Compress(), CompressBits(), CompressBits(), CompressBits(), CompressBitsStore(), CompressBitsStore(), CompressBlendedStore(), CompressBlendedStore(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressStore(), CompressStore(), and CompressStore().

## Compress() [9/14]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Compress | ( | Vec128< T, N > | v,
|  | const Mask128< T, N > | mask
| ) |  |

References AndNot(), d, DupEven(), DupOdd(), IfVecThenElse(), Shuffle01(), v, and VecFromMask().

## Compress() [10/14]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Compress | ( | Vec128< T, N > | v,
|  | const Mask128< T, N > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, HWY_DASSERT, N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Compress() [11/14]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Compress | ( | Vec1< T > | v,
|  | const Mask1< T > |
| ) |  |

References v.

## Compress() [12/14]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Compress | ( | Vec256< float > | v,
|  | Mask256< float > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## Compress() [13/14]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Compress | ( | Vec256< T > | v,
|  | Mask256< T > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## Compress() [14/14]

template<typename T , HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Compress | ( | Vec512< T > | v,
|  | Mask512< T > | mask
| ) |  |

References d, Load(), hwy::HWY_NAMESPACE::Mask512< T >::raw, Set(), TableLookupLanes(), and v.

## CompressBits() [1/8]

template<class V , class D = DFromV<V>, HWY_IF_NOT_LANE_SIZE_D(D, 1) >

HWY_INLINE V hwy::HWY_NAMESPACE::CompressBits | ( | V | v,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References Compress(), LoadMaskBits(), and v.

## CompressBits() [2/8]

template<class V , typename T = TFromV<V>, HWY_IF_LANE_SIZE(T, 1) >

HWY_API V hwy::HWY_NAMESPACE::CompressBits | ( | V | v,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References CompressBitsStore(), d, HWY_ALIGN, Load(), MaxLanes(), and v.

## CompressBits() [3/8]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::CompressBits | ( | V | v,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References CompressBits(), and v.

## CompressBits() [4/8]

template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >

HWY_INLINE Vec128< T, N > hwy::HWY_NAMESPACE::CompressBits | ( | Vec128< T, N > | v,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References CompressBits(), N, and v.

Referenced by CompressBits(), and CompressBits().

## CompressBits() [5/8]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::CompressBits | ( | Vec128< T, N > | v,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References Compress(), LoadMaskBits(), and v.

## CompressBits() [6/8]

template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::CompressBits | ( | Vec128< T, N > | v,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References hwy::HWY_NAMESPACE::detail::Compress(), N, and v.

## CompressBits() [7/8]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::CompressBits | ( | Vec1< T > | v,
|  | const uint8_t * | HWY_RESTRICT
| ) |  |

References v.

## CompressBits() [8/8]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::CompressBits | ( | Vec256< T > | v,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References Compress(), LoadMaskBits(), and v.

## CompressBitsStore() [1/8]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBitsStore | ( | const Vec256< T > | v,
|  | const uint8_t *HWY_RESTRICT | bits,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), d, LoadMaskBits(), and v.

## CompressBitsStore() [2/8]

template<class V , class D , typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBitsStore | ( | V | v,
|  | const uint8_t *HWY_RESTRICT | bits,
|  | D | d,
|  | T * | unaligned
| ) |  |

References d, HWY_ALIGN, HWY_MIN, HWY_RESTRICT, Lanes(), Load(), LoadU(), MaxLanes(), hwy::PopCount(), Store(), StoreU(), TableLookupBytes(), and v.

## CompressBitsStore() [3/8]

template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBitsStore | ( | Vec128< T, N > | v,
|  | const uint8_t *HWY_RESTRICT | bits,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References CompressBitsStore(), d, N, hwy::PopCount(), StoreU(), and v.

Referenced by CompressBits(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), and CompressStore().

## CompressBitsStore() [4/8]

template<typename T , size_t N>

HWY_API size_t hwy::HWY_NAMESPACE::CompressBitsStore | ( | Vec128< T, N > | v,
|  | const uint8_t *HWY_RESTRICT | bits,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References Compress(), CountTrue(), d, LoadMaskBits(), StoreU(), and v.

## CompressBitsStore() [5/8]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBitsStore | ( | Vec1< T > | v,
|  | const uint8_t *HWY_RESTRICT | bits,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References Compress(), CountTrue(), d, LoadMaskBits(), StoreU(), and v.

## CompressBitsStore() [6/8]

template<typename T , HWY_IF_NOT_LANE_SIZE(T, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBitsStore | ( | Vec256< T > | v,
|  | const uint8_t *HWY_RESTRICT | bits,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References CompressBitsStore(), CompressStore(), d, and v.

## CompressBitsStore() [7/8]

template<class D , HWY_IF_NOT_LANE_SIZE_D(D, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBitsStore | ( | VFromD< D > | v,
|  | const uint8_t *HWY_RESTRICT | bits,
|  | D | d,
|  | TFromD< D > *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), d, LoadMaskBits(), and v.

## CompressBitsStore() [8/8]

template<class D >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBitsStore | ( | VFromD< D > | v,
|  | const uint8_t *HWY_RESTRICT | bits,
|  | D | d,
|  | TFromD< D > *HWY_RESTRICT | unaligned
| ) |  |

References CompressBitsStore(), CompressStore(), d, and v.

## CompressBlendedStore() [1/8]

template<class V , class M , class D >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBlendedStore | ( | const V | v,
|  | const M | mask,
|  | const D | d,
|  | TFromD< D > *HWY_RESTRICT | unaligned
| ) |  |

References Compress(), CountTrue(), d, and v.

## CompressBlendedStore() [2/8]

template<class V , class D , HWY_IF_NOT_LANE_SIZE_D(D, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBlendedStore | ( | const V | v,
|  | const svbool_t | mask,
|  | const D | d,
|  | TFromD< D > *HWY_RESTRICT | unaligned
| ) |  |

References BlendedStore(), Compress(), CountTrue(), d, FirstN(), and v.

## CompressBlendedStore() [3/8]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBlendedStore | ( | const Vec256< T > | v,
|  | const Mask256< T > | m,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References CompressBlendedStore(), d, hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, and v.

## CompressBlendedStore() [4/8]

template<class V , class M , class D , typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBlendedStore | ( | V | v,
|  | M | mask,
|  | D | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BlendedStore(), CompressStore(), d, FirstN(), HWY_ALIGN, Load(), MaxLanes(), and v.

## CompressBlendedStore() [5/8]

template<typename T , size_t N>

HWY_API size_t hwy::HWY_NAMESPACE::CompressBlendedStore | ( | Vec128< T, N > | v,
|  | const Mask128< T, N > | mask,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), d, and v.

## CompressBlendedStore() [6/8]

template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBlendedStore | ( | Vec128< T, N > | v,
|  | Mask128< T, N > | m,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BitCast(), BlendedStore(), CompressBlendedStore(), d, FirstN(), hwy::PopCount(), RebindMask(), and v.

Referenced by CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), and CopyIf().

## CompressBlendedStore() [7/8]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CompressBlendedStore | ( | Vec1< T > | v,
|  | const Mask1< T > | mask,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits, d, StoreU(), and v.

## CompressBlendedStore() [8/8]

template<class D , typename T = TFromD<D>>

HWY_API size_t hwy::HWY_NAMESPACE::CompressBlendedStore | ( | VFromD< D > | v,
|  | MFromD< D > | m,
|  | D | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BlendedStore(), CompressBlendedStore(), CompressStore(), d, FirstN(), HWY_AVX3_DL, HWY_TARGET, and v.

## CompressBlocksNot() [1/5]

HWY_API svuint64_t hwy::HWY_NAMESPACE::CompressBlocksNot | ( | svuint64_t | v,
|  | svbool_t | mask
| ) |  |

References CompressNot(), d, SetTableIndices(), TableLookupLanes(), and v.

## CompressBlocksNot() [2/5]

template<class V , class M >

HWY_API V hwy::HWY_NAMESPACE::CompressBlocksNot | ( | V | v,
|  | const M | mask
| ) |  |

References CompressNot(), and v.

## CompressBlocksNot() [3/5]

template<class V , class M , hwy::EnableIf<(sizeof(V) > 16)> * = nullptr>

HWY_API V hwy::HWY_NAMESPACE::CompressBlocksNot | ( | V | v,
|  | M | mask
| ) |  |

References CompressBlocksNot(), and v.

## CompressBlocksNot() [4/5]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::CompressBlocksNot | ( | Vec128< uint64_t > | v,
|  | Mask128< uint64_t > |
| ) |  |

References CompressBlocksNot(), and v.

Referenced by CompressBlocksNot(), and CompressBlocksNot().

## CompressBlocksNot() [5/5]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::CompressBlocksNot | ( | Vec256< uint64_t > | v,
|  | Mask256< uint64_t > | mask
| ) |  |

References AllTrue(), AndNot(), hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, SwapAdjacentBlocks(), and v.

## CompressNot() [1/13]

template<class V , class M >

HWY_API V hwy::HWY_NAMESPACE::CompressNot | ( | V | v,
|  | const M | mask
| ) |  |

References Compress(), Not(), and v.

## CompressNot() [2/13]

template<class V , class M , HWY_IF_NOT_LANE_SIZE_V(V, 8) >

HWY_API V hwy::HWY_NAMESPACE::CompressNot | ( | V | v,
|  | const M | mask
| ) |  |

References Not(), and v.

## CompressNot() [3/13]

template<class V , typename T = TFromV<V>, HWY_IF_LANE_SIZE_ONE_OF(T, 0x14) >

HWY_API V hwy::HWY_NAMESPACE::CompressNot | ( | V | v,
|  | const svbool_t | mask
| ) |  |

References Compress(), Not(), and v.

## CompressNot() [4/13]

template<class V , class M , typename T = TFromV<V>, HWY_IF_LANE_SIZE(T, 1) >

HWY_API V hwy::HWY_NAMESPACE::CompressNot | ( | V | v,
|  | M | mask
| ) |  |

References Compress(), Not(), and v.

## CompressNot() [5/13]

template<class V , HWY_IF_LANE_SIZE_V(V, 8) >

HWY_API V hwy::HWY_NAMESPACE::CompressNot | ( | V | v,
|  | svbool_t | mask
| ) |  |

References AndNot(), Compress(), d, Iota(), Not(), Set(), SetTableIndices(), TableLookupLanes(), and v.

## CompressNot() [6/13]

template<typename T , HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::CompressNot | ( | Vec128< T > | v,
|  | Mask128< T > | mask
| ) |  |

References AndNot(), d, DupEven(), DupOdd(), IfVecThenElse(), Shuffle01(), v, and VecFromMask().

## CompressNot() [7/13]

template<typename T >

HWY_API Vec128< T, 1 > hwy::HWY_NAMESPACE::CompressNot | ( | Vec128< T, 1 > | v,
|  | Mask128< T, 1 > |
| ) |  |

References v.

Referenced by CompressBlocksNot(), and CompressBlocksNot().

## CompressNot() [8/13]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::CompressNot | ( | Vec128< T, N > | v,
|  | const Mask128< T, N > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, HWY_DASSERT, N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## CompressNot() [9/13]

template<typename T , size_t N, HWY_IF_LANE_SIZE_ONE_OF(T, 0x14) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::CompressNot | ( | Vec128< T, N > | v,
|  | Mask128< T, N > | mask
| ) |  |

References N, Not(), and v.

## CompressNot() [10/13]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::CompressNot | ( | Vec1< T > | v,
|  | const Mask1< T > |
| ) |  |

References v.

## CompressNot() [11/13]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::CompressNot | ( | Vec256< T > | v,
|  | const Mask256< T > | mask
| ) |  |

References Compress(), Not(), and v.

## CompressNot() [12/13]

template<typename T , HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::CompressNot | ( | Vec256< T > | v,
|  | Mask256< T > | mask
| ) |  |

References d, Load(), hwy::HWY_NAMESPACE::Mask256< T >::raw, Set(), TableLookupLanes(), and v.

## CompressNot() [13/13]

template<typename T , HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::CompressNot | ( | Vec512< T > | v,
|  | Mask512< T > | mask
| ) |  |

References d, Load(), hwy::HWY_NAMESPACE::Mask512< T >::raw, Set(), TableLookupLanes(), and v.

## CompressStore() [1/15]

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
| ) |  |

References Compress(), CountTrue(), d, StoreU(), and v.

## CompressStore() [2/15]

template<class V , class D , HWY_IF_NOT_LANE_SIZE_D(D, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | const V | v,
|  | const svbool_t | mask,
|  | const D | d,
|  | TFromD< D > *HWY_RESTRICT | unaligned
| ) |  |

References Compress(), CountTrue(), d, StoreU(), and v.

## CompressStore() [3/15]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | const Vec256< T > | v,
|  | const Mask256< T > | mask,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), d, hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, and v.

## CompressStore() [4/15]

template<class V , class M , class D , typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | V | v,
|  | M | mask,
|  | D | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References CompressBitsStore(), d, HWY_MAX, MaxLanes(), StoreMaskBits(), and v.

## CompressStore() [5/15]

template<class V , class D , HWY_IF_LANE_SIZE_ONE_OF_V(V, 0x6) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | V | v,
|  | MFromD< D > | mask,
|  | D | d,
|  | TFromD< D > *HWY_RESTRICT | unaligned
| ) |  |

References BitCast(), CompressStore(), d, HWY_RESTRICT, RebindMask(), and v.

## CompressStore() [6/15]

template<size_t N, HWY_IF_LE128(double, N) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec128< double, N > | v,
|  | Mask128< double, N > | mask,
|  | Simd< double, N, 0 > | ,
|  | double *HWY_RESTRICT | unaligned
| ) |  |

References hwy::HWY_NAMESPACE::detail::MaybeUnpoison(), N, hwy::PopCount(), hwy::HWY_NAMESPACE::Mask128< T, N >::raw, and v.

## CompressStore() [7/15]

template<size_t N, HWY_IF_LE128(float, N) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec128< float, N > | v,
|  | Mask128< float, N > | mask,
|  | Simd< float, N, 0 > | ,
|  | float *HWY_RESTRICT | unaligned
| ) |  |

References hwy::HWY_NAMESPACE::detail::MaybeUnpoison(), N, hwy::PopCount(), hwy::HWY_NAMESPACE::Mask128< T, N >::raw, and v.

## CompressStore() [8/15]

template<typename T , size_t N, HWY_IF_NOT_LANE_SIZE(T, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec128< T, N > | v,
|  | const Mask128< T, N > | mask,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), d, hwy::PopCount(), StoreU(), and v.

Referenced by Compress(), Compress(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), and CompressStore().

## CompressStore() [9/15]

template<typename T , size_t N>

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec128< T, N > | v,
|  | const Mask128< T, N > | mask,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, N, and v.

## CompressStore() [10/15]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec1< T > | v,
|  | const Mask1< T > | mask,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References Compress(), CountTrue(), d, StoreU(), and v.

## CompressStore() [11/15]

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec256< double > | v,
|  | Mask256< double > | mask,
|  | Full256< double > | ,
|  | double *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), hwy::PopCount(), hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## CompressStore() [12/15]

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec256< float > | v,
|  | Mask256< float > | mask,
|  | Full256< float > | ,
|  | float *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), hwy::PopCount(), hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## CompressStore() [13/15]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec256< T > | v,
|  | Mask256< T > | mask,
|  | Full256< T > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), hwy::PopCount(), hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## CompressStore() [14/15]

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec512< double > | v,
|  | Mask512< double > | mask,
|  | Full512< double > | ,
|  | double *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), hwy::PopCount(), hwy::HWY_NAMESPACE::Mask512< T >::raw, and v.

## CompressStore() [15/15]

HWY_API size_t hwy::HWY_NAMESPACE::CompressStore | ( | Vec512< float > | v,
|  | Mask512< float > | mask,
|  | Full512< float > | ,
|  | float *HWY_RESTRICT | unaligned
| ) |  |

References CompressStore(), hwy::PopCount(), hwy::HWY_NAMESPACE::Mask512< T >::raw, and v.

## ConcatEven() [1/19]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::ConcatEven | ( | D | d,
|  | const V | hi,
|  | const V | lo
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::Iota0(), Lanes(), and TableLookupLanes().

## ConcatEven() [2/19]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::ConcatEven | ( | D | d,
|  | VFromD< D > | hi,
|  | VFromD< D > | lo
| ) |  |

References d, FirstN(), and Lanes().

## ConcatEven() [3/19]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::ConcatEven | ( | Full128< float > | ,
|  | Vec128< float > | hi,
|  | Vec128< float > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatEven() [4/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::ConcatEven | ( | Full128< T > | d,
|  | Vec128< T > | hi,
|  | Vec128< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatEven() [5/19]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::ConcatEven | ( | Full256< double > | d,
|  | Vec256< double > | hi,
|  | Vec256< double > | lo
| ) |  |

References ConcatEven(), d, Load(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatEven() [6/19]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ConcatEven | ( | Full256< float > | d,
|  | Vec256< float > | hi,
|  | Vec256< float > | lo
| ) |  |

References BitCast(), ConcatEven(), d, Load(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatEven() [7/19]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ConcatEven | ( | Full256< T > | d,
|  | const Vec256< T > | hi,
|  | const Vec256< T > | lo
| ) |  |

References ConcatEven(), d, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## ConcatEven() [8/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ConcatEven | ( | Full256< T > | d,
|  | Vec256< T > | hi,
|  | Vec256< T > | lo
| ) |  |

References And(), BitCast(), ConcatEven(), d, Load(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and Set().

## ConcatEven() [9/19]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ConcatEven | ( | Full512< double > | d,
|  | Vec512< double > | hi,
|  | Vec512< double > | lo
| ) |  |

References ConcatEven(), d, Load(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatEven() [10/19]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ConcatEven | ( | Full512< float > | d,
|  | Vec512< float > | hi,
|  | Vec512< float > | lo
| ) |  |

References ConcatEven(), d, Load(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatEven() [11/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ConcatEven | ( | Full512< T > | d,
|  | Vec512< T > | hi,
|  | Vec512< T > | lo
| ) |  |

References And(), BitCast(), ConcatEven(), d, Load(), hwy::HWY_NAMESPACE::Vec512< T >::raw, Set(), SetTableIndices(), and TableLookupLanes().

## ConcatEven() [12/19]

template<typename T >

HWY_API Vec128< T, 2 > hwy::HWY_NAMESPACE::ConcatEven | ( | Simd< T, 2, 0 > | d,
|  | Vec128< T, 2 > | hi,
|  | Vec128< T, 2 > | lo
| ) |  |

References ConcatEven(), d, and InterleaveLower().

## ConcatEven() [13/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T, 4 > hwy::HWY_NAMESPACE::ConcatEven | ( | Simd< T, 4, 0 > | d,
|  | Vec128< T, 4 > | hi,
|  | Vec128< T, 4 > | lo
| ) |  |

References BitCast(), ConcatEven(), d, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatEven() [14/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec32< T > hwy::HWY_NAMESPACE::ConcatEven | ( | Simd< T, 4, 0 > | d,
|  | Vec32< T > | hi,
|  | Vec32< T > | lo
| ) |  |

References BitCast(), d, InterleaveLower(), Load(), and TableLookupBytes().

## ConcatEven() [15/19]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec64< T > hwy::HWY_NAMESPACE::ConcatEven | ( | Simd< T, 4, 0 > | d,
|  | Vec64< T > | hi,
|  | Vec64< T > | lo
| ) |  |

References BitCast(), d, InterleaveLower(), Load(), and TableLookupBytes().

## ConcatEven() [16/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec64< T > hwy::HWY_NAMESPACE::ConcatEven | ( | Simd< T, 8, 0 > | d,
|  | Vec64< T > | hi,
|  | Vec64< T > | lo
| ) |  |

References BitCast(), d, InterleaveLower(), Load(), and TableLookupBytes().

## ConcatEven() [17/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T, 8 > hwy::HWY_NAMESPACE::ConcatEven | ( | Simd< T, 8, 0 > | ,
|  | Vec128< T, 8 > | hi,
|  | Vec128< T, 8 > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatEven() [18/19]

template<typename T , size_t N, hwy::EnableIf< N !=2 &&sizeof(T) *N > = 8>

N hwy::HWY_NAMESPACE::ConcatEven | ( | Simd< T, N, 0 > | ,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References ConcatEven().

Referenced by ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatOdd(), LoadInterleaved2(), MulEven(), MulEven(), MulEven(), MulEven(), TruncateTo(), TruncateTo(), and TruncateTo().

## ConcatEven() [19/19]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatEven | ( | Simd< T, N, 0 > | ,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatLowerLower() [1/10]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::ConcatLowerLower | ( | const D | d,
|  | const V | hi,
|  | const V | lo
| ) |  |

References BitCast(), d, InterleaveLower(), hwy::HWY_NAMESPACE::detail::IsFull(), and hwy::HWY_NAMESPACE::detail::MaskLowerHalf().

## ConcatLowerLower() [2/10]

template<typename T , size_t N, HWY_IF_GE64(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatLowerLower | ( | const Simd< T, N, 0 > | d,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References BitCast(), ConcatLowerLower(), d, InterleaveLower(), and N.

Referenced by Combine(), ConcatLowerLower(), ConcatLowerLower(), ConcatLowerLower(), ConcatLowerLower(), ConcatLowerLower(), ConcatLowerLower(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), and hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4().

## ConcatLowerLower() [3/10]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::ConcatLowerLower | ( | Full128< T > | d,
|  | const Vec128< T > | hi,
|  | const Vec128< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatLowerLower() [4/10]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::ConcatLowerLower | ( | Full256< double > | d,
|  | const Vec256< double > | hi,
|  | const Vec256< double > | lo
| ) |  |

References ConcatLowerLower(), d, LowerHalf(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatLowerLower() [5/10]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ConcatLowerLower | ( | Full256< float > | d,
|  | const Vec256< float > | hi,
|  | const Vec256< float > | lo
| ) |  |

References ConcatLowerLower(), d, LowerHalf(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatLowerLower() [6/10]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ConcatLowerLower | ( | Full256< T > | d,
|  | const Vec256< T > | hi,
|  | const Vec256< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## ConcatLowerLower() [7/10]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ConcatLowerLower | ( | Full512< double > | ,
|  | const Vec512< double > | hi,
|  | const Vec512< double > | lo
| ) |  |

References ConcatLowerLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatLowerLower() [8/10]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ConcatLowerLower | ( | Full512< float > | ,
|  | const Vec512< float > | hi,
|  | const Vec512< float > | lo
| ) |  |

References ConcatLowerLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatLowerLower() [9/10]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ConcatLowerLower | ( | Full512< T > | ,
|  | const Vec512< T > | hi,
|  | const Vec512< T > | lo
| ) |  |

References ConcatLowerLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatLowerLower() [10/10]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatLowerLower | ( | Simd< T, N, 0 > | ,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References hwy::CopyBytes(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatLowerUpper() [1/10]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | const D | d,
|  | const V | hi,
|  | const V | lo
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::IsFull(), Lanes(), and hwy::HWY_NAMESPACE::detail::MaskUpperHalf().

## ConcatLowerUpper() [2/10]

template<typename T , size_t N, HWY_IF_GE64(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | const Simd< T, N, 0 > | d,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References CombineShiftRightBytes(), ConcatLowerUpper(), d, and N.

Referenced by ConcatLowerUpper(), ConcatLowerUpper(), ConcatLowerUpper(), ConcatLowerUpper(), ConcatLowerUpper(), ConcatLowerUpper(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), and SwapAdjacentBlocks().

## ConcatLowerUpper() [3/10]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | Full128< T > | d,
|  | const Vec128< T > | hi,
|  | const Vec128< T > | lo
| ) |  |

References d.

## ConcatLowerUpper() [4/10]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | Full256< double > | ,
|  | const Vec256< double > | hi,
|  | const Vec256< double > | lo
| ) |  |

References ConcatLowerUpper(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatLowerUpper() [5/10]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | Full256< float > | ,
|  | const Vec256< float > | hi,
|  | const Vec256< float > | lo
| ) |  |

References ConcatLowerUpper(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatLowerUpper() [6/10]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | Full256< T > | ,
|  | const Vec256< T > | hi,
|  | const Vec256< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## ConcatLowerUpper() [7/10]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | Full512< double > | ,
|  | const Vec512< double > | hi,
|  | const Vec512< double > | lo
| ) |  |

References ConcatLowerUpper(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatLowerUpper() [8/10]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | Full512< float > | ,
|  | const Vec512< float > | hi,
|  | const Vec512< float > | lo
| ) |  |

References ConcatLowerUpper(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatLowerUpper() [9/10]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | Full512< T > | ,
|  | const Vec512< T > | hi,
|  | const Vec512< T > | lo
| ) |  |

References ConcatLowerUpper(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatLowerUpper() [10/10]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatLowerUpper | ( | Simd< T, N, 0 > | ,
|  | const Vec128< T, N > | hi,
|  | const Vec128< T, N > | lo
| ) |  |

References hwy::CopyBytes(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatOdd() [1/19]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::ConcatOdd | ( | D | d,
|  | const V | hi,
|  | const V | lo
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::Iota0(), Lanes(), and TableLookupLanes().

## ConcatOdd() [2/19]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::ConcatOdd | ( | D | d,
|  | VFromD< D > | hi,
|  | VFromD< D > | lo
| ) |  |

References d, FirstN(), and Lanes().

## ConcatOdd() [3/19]

template<size_t N>

HWY_API Vec128< float > hwy::HWY_NAMESPACE::ConcatOdd | ( | Full128< float > | ,
|  | Vec128< float > | hi,
|  | Vec128< float > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatOdd() [4/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::ConcatOdd | ( | Full128< T > | d,
|  | Vec128< T > | hi,
|  | Vec128< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatOdd() [5/19]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::ConcatOdd | ( | Full256< double > | d,
|  | Vec256< double > | hi,
|  | Vec256< double > | lo
| ) |  |

References ConcatOdd(), d, Load(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatOdd() [6/19]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ConcatOdd | ( | Full256< float > | d,
|  | Vec256< float > | hi,
|  | Vec256< float > | lo
| ) |  |

References BitCast(), ConcatOdd(), d, Load(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatOdd() [7/19]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ConcatOdd | ( | Full256< T > | d,
|  | const Vec256< T > | hi,
|  | const Vec256< T > | lo
| ) |  |

References ConcatOdd(), d, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## ConcatOdd() [8/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ConcatOdd | ( | Full256< T > | d,
|  | Vec256< T > | hi,
|  | Vec256< T > | lo
| ) |  |

References BitCast(), ConcatOdd(), d, Load(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatOdd() [9/19]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ConcatOdd | ( | Full512< double > | d,
|  | Vec512< double > | hi,
|  | Vec512< double > | lo
| ) |  |

References ConcatOdd(), d, Load(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatOdd() [10/19]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ConcatOdd | ( | Full512< float > | d,
|  | Vec512< float > | hi,
|  | Vec512< float > | lo
| ) |  |

References ConcatOdd(), d, Load(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatOdd() [11/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ConcatOdd | ( | Full512< T > | d,
|  | Vec512< T > | hi,
|  | Vec512< T > | lo
| ) |  |

References BitCast(), ConcatOdd(), d, Load(), hwy::HWY_NAMESPACE::Vec512< T >::raw, SetTableIndices(), and TableLookupLanes().

## ConcatOdd() [12/19]

template<typename T >

HWY_API Vec128< T, 2 > hwy::HWY_NAMESPACE::ConcatOdd | ( | Simd< T, 2, 0 > | d,
|  | Vec128< T, 2 > | hi,
|  | Vec128< T, 2 > | lo
| ) |  |

References ConcatOdd(), and d.

## ConcatOdd() [13/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T, 4 > hwy::HWY_NAMESPACE::ConcatOdd | ( | Simd< T, 4, 0 > | d,
|  | Vec128< T, 4 > | hi,
|  | Vec128< T, 4 > | lo
| ) |  |

References BitCast(), ConcatEven(), ConcatOdd(), d, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatOdd() [14/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec32< T > hwy::HWY_NAMESPACE::ConcatOdd | ( | Simd< T, 4, 0 > | d,
|  | Vec32< T > | hi,
|  | Vec32< T > | lo
| ) |  |

References BitCast(), d, InterleaveLower(), Load(), and TableLookupBytes().

## ConcatOdd() [15/19]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec64< T > hwy::HWY_NAMESPACE::ConcatOdd | ( | Simd< T, 4, 0 > | d,
|  | Vec64< T > | hi,
|  | Vec64< T > | lo
| ) |  |

References BitCast(), d, InterleaveLower(), Load(), and TableLookupBytes().

## ConcatOdd() [16/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec64< T > hwy::HWY_NAMESPACE::ConcatOdd | ( | Simd< T, 8, 0 > | d,
|  | Vec64< T > | hi,
|  | Vec64< T > | lo
| ) |  |

References BitCast(), d, InterleaveLower(), Load(), and TableLookupBytes().

## ConcatOdd() [17/19]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T, 8 > hwy::HWY_NAMESPACE::ConcatOdd | ( | Simd< T, 8, 0 > | ,
|  | Vec128< T, 8 > | hi,
|  | Vec128< T, 8 > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatOdd() [18/19]

template<typename T , size_t N, hwy::EnableIf< N !=2 &&sizeof(T) *N > = 8>

N hwy::HWY_NAMESPACE::ConcatOdd | ( | Simd< T, N, 0 > | ,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

Referenced by ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), LoadInterleaved2(), and ReorderDemote2To().

## ConcatOdd() [19/19]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatOdd | ( | Simd< T, N, 0 > | ,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatUpperLower() [1/12]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::ConcatUpperLower | ( | const D | d,
|  | const V | hi,
|  | const V | lo
| ) |  |

References d, IfThenElse(), and hwy::HWY_NAMESPACE::detail::MaskLowerHalf().

## ConcatUpperLower() [2/12]

HWY_API Vec128< double > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Full128< double > | ,
|  | Vec128< double > | hi,
|  | Vec128< double > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatUpperLower() [3/12]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Full128< float > | d,
|  | Vec128< float > | hi,
|  | Vec128< float > | lo
| ) |  |

References BitCast(), d, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatUpperLower() [4/12]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Full128< T > | d,
|  | Vec128< T > | hi,
|  | Vec128< T > | lo
| ) |  |

References BitCast(), and d.

## ConcatUpperLower() [5/12]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Full256< double > | ,
|  | const Vec256< double > | hi,
|  | const Vec256< double > | lo
| ) |  |

References ConcatUpperLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatUpperLower() [6/12]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Full256< float > | ,
|  | const Vec256< float > | hi,
|  | const Vec256< float > | lo
| ) |  |

References ConcatUpperLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatUpperLower() [7/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Full256< T > | ,
|  | const Vec256< T > | hi,
|  | const Vec256< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## ConcatUpperLower() [8/12]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Full512< double > | ,
|  | const Vec512< double > | hi,
|  | const Vec512< double > | lo
| ) |  |

References ConcatUpperLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatUpperLower() [9/12]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Full512< float > | ,
|  | const Vec512< float > | hi,
|  | const Vec512< float > | lo
| ) |  |

References ConcatUpperLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatUpperLower() [10/12]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Full512< T > | ,
|  | const Vec512< T > | hi,
|  | const Vec512< T > | lo
| ) |  |

References ConcatUpperLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatUpperLower() [11/12]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References ConcatUpperLower(), d, FirstN(), IfThenElse(), and Lanes().

Referenced by ConcatUpperLower(), ConcatUpperLower(), ConcatUpperLower(), ConcatUpperLower(), ConcatUpperLower(), ConcatUpperLower(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), OddEvenBlocks(), hwy::HWY_NAMESPACE::detail::Shl(), and hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3().

## ConcatUpperLower() [12/12]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatUpperLower | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References Combine(), d, LowerHalf(), and UpperHalf().

## ConcatUpperUpper() [1/10]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | const D | d,
|  | const V | hi,
|  | const V | lo
| ) |  |

References BitCast(), d, IfThenElse(), InterleaveUpper(), hwy::HWY_NAMESPACE::detail::IsFull(), and hwy::HWY_NAMESPACE::detail::MaskUpperHalf().

## ConcatUpperUpper() [2/10]

template<typename T , size_t N, HWY_IF_GE64(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | const Simd< T, N, 0 > | d,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References BitCast(), ConcatUpperUpper(), d, and N.

Referenced by ConcatUpperUpper(), ConcatUpperUpper(), ConcatUpperUpper(), ConcatUpperUpper(), ConcatUpperUpper(), ConcatUpperUpper(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), and hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4().

## ConcatUpperUpper() [3/10]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | Full128< T > | d,
|  | const Vec128< T > | hi,
|  | const Vec128< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConcatUpperUpper() [4/10]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | Full256< double > | ,
|  | const Vec256< double > | hi,
|  | const Vec256< double > | lo
| ) |  |

References ConcatUpperUpper(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatUpperUpper() [5/10]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | Full256< float > | ,
|  | const Vec256< float > | hi,
|  | const Vec256< float > | lo
| ) |  |

References ConcatUpperUpper(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## ConcatUpperUpper() [6/10]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | Full256< T > | ,
|  | const Vec256< T > | hi,
|  | const Vec256< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## ConcatUpperUpper() [7/10]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | Full512< double > | ,
|  | const Vec512< double > | hi,
|  | const Vec512< double > | lo
| ) |  |

References ConcatUpperUpper(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatUpperUpper() [8/10]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | Full512< float > | ,
|  | const Vec512< float > | hi,
|  | const Vec512< float > | lo
| ) |  |

References ConcatUpperUpper(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatUpperUpper() [9/10]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | Full512< T > | ,
|  | const Vec512< T > | hi,
|  | const Vec512< T > | lo
| ) |  |

References ConcatUpperUpper(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## ConcatUpperUpper() [10/10]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ConcatUpperUpper | ( | Simd< T, N, 0 > | ,
|  | Vec128< T, N > | hi,
|  | Vec128< T, N > | lo
| ) |  |

References hwy::CopyBytes(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ConvertTo() [1/29]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::ConvertTo | ( | Full128< float > | ,
|  | const Vec128< int32_t > | v
| ) |  |

References v.

Referenced by Ceil(), Ceil(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::CosReduce(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::ExpReduce(), Floor(), Floor(), Iota(), hwy::HWY_NAMESPACE::impl::Log(), NearestInt(), NearestInt(), NearestInt(), PromoteTo(), PromoteTo(), Round(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::SinReduce(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::ToInt32(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::ToInt32(), grk::HWY_NAMESPACE::CompressIrrev::transform(), Trunc(), and Trunc().

## ConvertTo() [2/29]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::ConvertTo | ( | Full128< float > | ,
|  | const Vec128< uint32_t > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [3/29]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::ConvertTo | ( | Full128< int32_t > | ,
|  | const Vec128< float > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [4/29]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::ConvertTo | ( | Full128< int64_t > | di,
|  | const Vec128< double > | v
| ) |  |

References BitCast(), BroadcastSignBit(), hwy::HWY_NAMESPACE::detail::FixConversionOverflow(), IfThenElse(), Max(), Set(), UpperHalf(), v, and Zero().

## ConvertTo() [5/29]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::ConvertTo | ( | Full256< double > | dd,
|  | const Vec256< int64_t > | v
| ) |  |

References BitCast(), ConvertTo(), OddEven(), Set(), and v.

## ConvertTo() [6/29]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ConvertTo | ( | Full256< float > | ,
|  | const Vec256< int32_t > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [7/29]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::ConvertTo | ( | Full256< int32_t > | d,
|  | const Vec256< float > | v
| ) |  |

References ConvertTo(), d, and v.

## ConvertTo() [8/29]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::ConvertTo | ( | Full256< int64_t > | di,
|  | const Vec256< double > | v
| ) |  |

References BitCast(), BroadcastSignBit(), ConvertTo(), IfThenElse(), Max(), Set(), v, and Zero().

## ConvertTo() [9/29]

template<typename TTo , typename TFrom >

HWY_API Vec256< TTo > hwy::HWY_NAMESPACE::ConvertTo | ( | Full256< TTo > | d,
|  | const Vec256< TFrom > | v
| ) |  |

References ConvertTo(), d, v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## ConvertTo() [10/29]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ConvertTo | ( | Full512< double > | ,
|  | const Vec512< int64_t > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [11/29]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ConvertTo | ( | Full512< double > | ,
|  | const Vec512< uint64_t > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [12/29]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ConvertTo | ( | Full512< float > | ,
|  | const Vec512< int32_t > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [13/29]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ConvertTo | ( | Full512< float > | ,
|  | const Vec512< uint32_t > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [14/29]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::ConvertTo | ( | Full512< int32_t > | d,
|  | const Vec512< float > | v
| ) |  |

References ConvertTo(), d, and v.

## ConvertTo() [15/29]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::ConvertTo | ( | Full512< int64_t > | di,
|  | const Vec512< double > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [16/29]

HWY_API Vec64< int64_t > hwy::HWY_NAMESPACE::ConvertTo | ( | Full64< int64_t > | di,
|  | const Vec64< double > | v
| ) |  |

References ConvertTo(), hwy::HWY_NAMESPACE::detail::FixConversionOverflow(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## ConvertTo() [17/29]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::ConvertTo | ( | HWY_MAYBE_UNUSED Full256< double > | dd,
|  | const Vec256< uint64_t > | v
| ) |  |

References And(), BitCast(), ConvertTo(), HWY_ATTR, MulAdd(), Or(), Set(), and v.

## ConvertTo() [18/29]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ConvertTo | ( | HWY_MAYBE_UNUSED Full256< float > | df,
|  | const Vec256< uint32_t > | v
| ) |  |

References And(), BitCast(), ConvertTo(), MulAdd(), Set(), and v.

## ConvertTo() [19/29]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::ConvertTo | ( | HWY_MAYBE_UNUSED Simd< double, N, 0 > | dd,
|  | const Vec128< uint64_t, N > | v
| ) |  |

References And(), BitCast(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), HWY_ATTR, MulAdd(), Or(), Set(), and v.

## ConvertTo() [20/29]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::ConvertTo | ( | HWY_MAYBE_UNUSED Simd< float, N, 0 > | df,
|  | const Vec128< uint32_t, N > | v
| ) |  |

References And(), BitCast(), ConvertTo(), MulAdd(), Set(), and v.

## ConvertTo() [21/29]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::ConvertTo | ( | Simd< double, N, 0 > | dd,
|  | const Vec128< int64_t, N > | v
| ) |  |

References BitCast(), OddEven(), Set(), and v.

## ConvertTo() [22/29]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::ConvertTo | ( | Simd< float, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [23/29]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::ConvertTo | ( | Simd< float, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References v.

## ConvertTo() [24/29]

template<size_t N, HWY_IF_LE64(uint32_t, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::ConvertTo | ( | Simd< float, N, 0 > | ,
|  | const Vec128< uint32_t, N > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [25/29]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::ConvertTo | ( | Simd< float, N, 0 > | ,
|  | const Vec128< uint32_t, N > | v
| ) |  |

References v.

## ConvertTo() [26/29]

template<size_t N, HWY_IF_LE64(float, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::ConvertTo | ( | Simd< int32_t, N, 0 > | ,
|  | const Vec128< float, N > | v
| ) |  |

References ConvertTo(), and v.

## ConvertTo() [27/29]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::ConvertTo | ( | Simd< int32_t, N, 0 > | di,
|  | const Vec128< float, N > | v
| ) |  |

References v.

## ConvertTo() [28/29]

template<typename FromT , typename ToT , size_t N>

HWY_API Vec128< ToT, N > hwy::HWY_NAMESPACE::ConvertTo | ( | Simd< ToT, N, 0 > | d,
|  | Vec128< FromT, N > | from
| ) |  |

References hwy::HWY_NAMESPACE::detail::ConvertTo(), and d.

## ConvertTo() [29/29]

template<typename FromT , typename ToT , HWY_IF_FLOAT(FromT) >

HWY_API Vec1< ToT > hwy::HWY_NAMESPACE::ConvertTo | ( | Sisd< ToT > | ,
|  | Vec1< FromT > | from
| ) |  |

References Abs(), IsInf(), hwy::HWY_NAMESPACE::Vec1< T >::raw, and hwy::HWY_NAMESPACE::detail::SignBit().

## Copy()

template<class D , typename T = TFromD<D>>

void hwy::HWY_NAMESPACE::Copy | ( | D | d,
|  | const T *HWY_RESTRICT | from,
|  | size_t | count,
|  | T *HWY_RESTRICT | to
| ) |  |

References d, HWY_DASSERT, HWY_UNLIKELY, Lanes(), LoadU(), N, SafeCopyN(), StoreU(), and v.

## CopyIf()

template<class D , class Func , typename T = TFromD<D>>

T * hwy::HWY_NAMESPACE::CopyIf | ( | D | d,
|  | const T *HWY_RESTRICT | from,
|  | size_t | count,
|  | T *HWY_RESTRICT | to,
|  | const Func & | func
| ) |  |

References And(), CompressBlendedStore(), CountTrue(), d, FirstN(), HWY_DASSERT, HWY_RESTRICT, HWY_UNLIKELY, Lanes(), LoadU(), MaskedLoad(), N, Not(), StoreU(), and v.

## CopySign() [1/5]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::CopySign | ( | const V | magn,
|  | const V | sign
| ) |  |

References And(), AndNot(), Or(), and SignBit().

## CopySign() [2/5]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::CopySign | ( | const Vec128< T, N > | magn,
|  | const Vec128< T, N > | sign
| ) |  |

References And(), AndNot(), CopySign(), Or(), and SignBit().

Referenced by CopySign(), CopySignToAbs(), Round(), and Trunc().

## CopySign() [3/5]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::CopySign | ( | const Vec1< T > | magn,
|  | const Vec1< T > | sign
| ) |  |

References And(), AndNot(), Or(), and SignBit().

## CopySign() [4/5]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::CopySign | ( | const Vec256< T > | magn,
|  | const Vec256< T > | sign
| ) |  |

References And(), AndNot(), Or(), and SignBit().

## CopySign() [5/5]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::CopySign | ( | const Vec512< T > | magn,
|  | const Vec512< T > | sign
| ) |  |

References BitCast(), d, SignBit(), and Zero().

## CopySignToAbs() [1/5]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::CopySignToAbs | ( | const V | abs,
|  | const V | sign
| ) |  |

References And(), Or(), and SignBit().

## CopySignToAbs() [2/5]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::CopySignToAbs | ( | const Vec128< T, N > | abs,
|  | const Vec128< T, N > | sign
| ) |  |

References And(), CopySignToAbs(), Or(), and SignBit().

Referenced by CopySignToAbs(), Round(), Round(), and Trunc().

## CopySignToAbs() [3/5]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::CopySignToAbs | ( | const Vec1< T > | abs,
|  | const Vec1< T > | sign
| ) |  |

References And(), Or(), and SignBit().

## CopySignToAbs() [4/5]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::CopySignToAbs | ( | const Vec256< T > | abs,
|  | const Vec256< T > | sign
| ) |  |

References And(), Or(), and SignBit().

## CopySignToAbs() [5/5]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::CopySignToAbs | ( | const Vec512< T > | abs,
|  | const Vec512< T > | sign
| ) |  |

References CopySign().

## Cos()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Cos | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::cos(x).

Valid Lane Types: float32, float64 Max Error: ULP = 3 Valid Range: [-39000, +39000]

Returns
  cosine of 'x'

References Abs(), d, Set(), Xor(), and Zero().

Referenced by CallCos().

## CountTrue() [1/7]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CountTrue | ( | const Full256< T > | d,
|  | const Mask256< T > | m
| ) |  |

References CountTrue(), d, hwy::HWY_NAMESPACE::Mask256< T >::m0, and hwy::HWY_NAMESPACE::Mask256< T >::m1.

## CountTrue() [2/7]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CountTrue | ( | const Full512< T > | ,
|  | const Mask512< T > | mask
| ) |  |

References hwy::PopCount(), and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## CountTrue() [3/7]

template<typename T , size_t N>

HWY_API size_t hwy::HWY_NAMESPACE::CountTrue | ( | const Simd< T, N, 0 > | ,
|  | const Mask128< T > | m
| ) |  |

References hwy::HWY_NAMESPACE::detail::CountTrue().

## CountTrue() [4/7]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CountTrue | ( | Full128< T > | ,
|  | const Mask128< T > | mask
| ) |  |

Referenced by AllTrue(), AssertMaskEqual(), CompressBitsStore(), CompressBitsStore(), CompressBlendedStore(), CompressBlendedStore(), CompressStore(), CompressStore(), CompressStore(), CopyIf(), CountTrue(), FindFirstTrue(), and FindKnownFirstTrue().

## CountTrue() [5/7]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API size_t hwy::HWY_NAMESPACE::CountTrue | ( | Simd< T, N, 0 > | d,
|  | const Mask128< T, N > | mask
| ) |  |

References d, and hwy::PopCount().

## CountTrue() [6/7]

template<typename T , size_t N>

HWY_API size_t hwy::HWY_NAMESPACE::CountTrue | ( | Simd< T, N, 0 > | ,
|  | const Mask128< T, N > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, and N.

## CountTrue() [7/7]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::CountTrue | ( | Sisd< T > | ,
|  | const Mask1< T > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits.

## DemoteTo() [1/75]

HWY_API Vec128< bfloat16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< bfloat16_t > | dbf16,
|  | const Vec256< float > | v
| ) |  |

References Combine(), DemoteTo(), and v.

## DemoteTo() [2/75]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< float > | ,
|  | const Vec256< double > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [3/75]

HWY_API Vec128< float16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< float16_t > | d16,
|  | const Vec256< float > | v
| ) |  |

References Combine(), DemoteTo(), and v.

## DemoteTo() [4/75]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< int16_t > | ,
|  | const Vec256< int32_t > | v
| ) |  |

References v.

## DemoteTo() [5/75]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< int32_t > | di,
|  | const Vec256< double > | v
| ) |  |

References Combine(), and v.

## DemoteTo() [6/75]

HWY_API Vec128< int8_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< int8_t > | ,
|  | const Vec256< int16_t > | v
| ) |  |

References v.

## DemoteTo() [7/75]

HWY_API Vec128< int8_t, 16 > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< int8_t > | ,
|  | const Vec512< int32_t > | v
| ) |  |

References DemoteTo(), LoadDup128(), LowerHalf(), and v.

## DemoteTo() [8/75]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< uint16_t > | ,
|  | const Vec256< int32_t > | v
| ) |  |

References v.

## DemoteTo() [9/75]

HWY_API Vec128< uint8_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< uint8_t > | ,
|  | const Vec256< int16_t > | v
| ) |  |

References v.

## DemoteTo() [10/75]

HWY_API Vec128< uint8_t, 16 > hwy::HWY_NAMESPACE::DemoteTo | ( | Full128< uint8_t > | ,
|  | const Vec512< int32_t > | v
| ) |  |

References DemoteTo(), LoadDup128(), LowerHalf(), and v.

## DemoteTo() [11/75]

HWY_API Vec256< bfloat16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full256< bfloat16_t > | dbf16,
|  | const Vec512< float > | v
| ) |  |

References BitCast(), DemoteTo(), and v.

## DemoteTo() [12/75]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::DemoteTo | ( | Full256< float > | ,
|  | const Vec512< double > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [13/75]

HWY_API Vec256< float16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full256< float16_t > | ,
|  | const Vec512< float > | v
| ) |  |

References DemoteTo(), HWY_DIAGNOSTICS, HWY_DIAGNOSTICS_OFF, and v.

## DemoteTo() [14/75]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full256< int16_t > | ,
|  | const Vec512< int32_t > | v
| ) |  |

References DemoteTo(), Load(), LowerHalf(), and v.

## DemoteTo() [15/75]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full256< int32_t > | ,
|  | const Vec512< double > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [16/75]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full256< int8_t > | ,
|  | const Vec512< int16_t > | v
| ) |  |

References DemoteTo(), Load(), LowerHalf(), and v.

## DemoteTo() [17/75]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full256< uint16_t > | ,
|  | const Vec512< int32_t > | v
| ) |  |

References DemoteTo(), Load(), LowerHalf(), and v.

## DemoteTo() [18/75]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full256< uint8_t > | ,
|  | const Vec512< int16_t > | v
| ) |  |

References DemoteTo(), Load(), LowerHalf(), and v.

## DemoteTo() [19/75]

HWY_API Vec32< int8_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full32< int8_t > | ,
|  | const Vec128< int32_t > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [20/75]

HWY_API Vec32< uint8_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full32< uint8_t > | ,
|  | const Vec128< int32_t > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [21/75]

HWY_API Vec64< int16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full64< int16_t > | ,
|  | const Vec128< int32_t > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [22/75]

HWY_API Vec64< int8_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full64< int8_t > | ,
|  | const Vec128< int16_t > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [23/75]

HWY_API Vec128< int8_t, 8 > hwy::HWY_NAMESPACE::DemoteTo | ( | Full64< int8_t > | ,
|  | const Vec256< int32_t > | v
| ) |  |

References v.

## DemoteTo() [24/75]

HWY_API Vec64< uint16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full64< uint16_t > | ,
|  | const Vec128< int32_t > | v
| ) |  |

References DemoteTo(), and v.

Referenced by DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), U8FromU32(), U8FromU32(), and U8FromU32().

## DemoteTo() [25/75]

HWY_API Vec64< uint8_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Full64< uint8_t > | ,
|  | const Vec128< int16_t > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [26/75]

HWY_API Vec128< uint8_t, 8 > hwy::HWY_NAMESPACE::DemoteTo | ( | Full64< uint8_t > | ,
|  | const Vec256< int32_t > | v
| ) |  |

References v.

## DemoteTo() [27/75]

template<size_t N>

HWY_API Vec128< bfloat16_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< bfloat16_t, N, 0 > | dbf16,
|  | const Vec128< float, N > | v
| ) |  |

References BitCast(), DemoteTo(), and v.

## DemoteTo() [28/75]

template<size_t N, int kPow2>

HWY_API VFromD< Simd< uint16_t, N, kPow2 > > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< bfloat16_t, N, kPow2 > | d,
|  | VFromD< Simd< float, N, kPow2+1 > > | v
| ) |  |

References BitCast(), d, and v.

## DemoteTo() [29/75]

template<size_t N, int kPow2>

HWY_API svuint16_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< bfloat16_t, N, kPow2 > | ,
|  | svfloat32_t | v
| ) |  |

References BitCast(), and v.

## DemoteTo() [30/75]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< float, N, 0 > | ,
|  | Vec128< double, N > | from
| ) |  |

References hwy::HighestValue< float >(), hwy::LowestValue< float >(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## DemoteTo() [31/75]

template<size_t N>

HWY_API Vec128< float16_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< float16_t, N, 0 > | df16,
|  | const Vec128< float, N > | v
| ) |  |

References BitCast(), DemoteTo(), IfThenElse(), IfThenZeroElse(), Min(), RebindMask(), Set(), and v.

## DemoteTo() [32/75]

template<size_t N, int kPow2>

HWY_API svfloat16_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< float16_t, N, kPow2 > | d,
|  | const svfloat32_t | v
| ) |  |

References d, and v.

## DemoteTo() [33/75]

template<size_t N, int kPow2>

HWY_API svfloat32_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< float32_t, N, kPow2 > | d,
|  | const svfloat64_t | v
| ) |  |

References d, and v.

## DemoteTo() [34/75]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int16_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [35/75]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int16_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References v.

## DemoteTo() [36/75]

template<size_t N, int kPow2>

HWY_API svint16_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int16_t, N, kPow2 > | dn,
|  | const svint32_t | v
| ) |  |

References BitCast(), and v.

## DemoteTo() [37/75]

template<size_t N>

HWY_API vint32mf2_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int32_t, N, -1 > | d,
|  | const vfloat64m1_t | v
| ) |  |

References d, Lanes(), and v.

## DemoteTo() [38/75]

template<size_t N>

HWY_API vint32m1_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int32_t, N, 0 > | d,
|  | const vfloat64m2_t | v
| ) |  |

References d, Lanes(), and v.

## DemoteTo() [39/75]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int32_t, N, 0 > | ,
|  | Vec128< double, N > | from
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## DemoteTo() [40/75]

template<size_t N>

HWY_API vint32m2_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int32_t, N, 1 > | d,
|  | const vfloat64m4_t | v
| ) |  |

References d, Lanes(), and v.

## DemoteTo() [41/75]

template<size_t N>

HWY_API vint32m4_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int32_t, N, 2 > | d,
|  | const vfloat64m8_t | v
| ) |  |

References d, Lanes(), and v.

## DemoteTo() [42/75]

template<size_t N, int kPow2>

HWY_API svint32_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int32_t, N, kPow2 > | d,
|  | const svfloat64_t | v
| ) |  |

References d, and v.

## DemoteTo() [43/75]

template<size_t N>

HWY_API vint8mf2_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, -1 > | d,
|  | const vint32m2_t | v
| ) |  |

References d, DemoteTo(), and v.

## DemoteTo() [44/75]

template<size_t N>

HWY_API vint8mf4_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, -2 > | d,
|  | const vint32m1_t | v
| ) |  |

References d, DemoteTo(), and v.

## DemoteTo() [45/75]

template<size_t N>

HWY_API vint8mf8_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, -3 > | d,
|  | const vint32mf2_t | v
| ) |  |

References d, DemoteTo(), and v.

## DemoteTo() [46/75]

template<size_t N>

HWY_API vint8m1_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, 0 > | d,
|  | const vint32m4_t | v
| ) |  |

References d, DemoteTo(), and v.

## DemoteTo() [47/75]

template<size_t N, HWY_IF_LE64(int16_t, N) >

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, 0 > | ,
|  | const Vec128< int16_t, N > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [48/75]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, 0 > | ,
|  | const Vec128< int16_t, N > | v
| ) |  |

References v.

## DemoteTo() [49/75]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, 0 > | ,
|  | const Vec128< int32_t > | v
| ) |  |

References DemoteTo(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## DemoteTo() [50/75]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [51/75]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References v.

## DemoteTo() [52/75]

template<size_t N>

HWY_API vint8m2_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, 1 > | d,
|  | const vint32m8_t | v
| ) |  |

References d, DemoteTo(), and v.

## DemoteTo() [53/75]

template<size_t N, int kPow2>

HWY_API svint8_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, kPow2 > | dn,
|  | const svint16_t | v
| ) |  |

References BitCast(), and v.

## DemoteTo() [54/75]

template<size_t N, int kPow2>

HWY_API svint8_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< int8_t, N, kPow2 > | dn,
|  | const svint32_t | v
| ) |  |

References BitCast(), and v.

## DemoteTo() [55/75]

template<typename FromT , typename ToT , size_t N>

HWY_API Vec128< ToT, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< ToT, N, 0 > | ,
|  | Vec128< FromT, N > | from
| ) |  |

References HWY_MAX, HWY_MIN, N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## DemoteTo() [56/75]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint16_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [57/75]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint16_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References v.

## DemoteTo() [58/75]

template<size_t N, int kPow2>

HWY_API svuint16_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint16_t, N, kPow2 > | dn,
|  | const svint32_t | v
| ) |  |

References BitCast(), and v.

## DemoteTo() [59/75]

template<size_t N>

HWY_API vuint8mf2_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, -1 > | d,
|  | const vint32m2_t | v
| ) |  |

References d, DemoteTo(), Lanes(), and v.

## DemoteTo() [60/75]

template<size_t N>

HWY_API vuint8mf4_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, -2 > | d,
|  | const vint32m1_t | v
| ) |  |

References d, DemoteTo(), Lanes(), and v.

## DemoteTo() [61/75]

template<size_t N>

HWY_API vuint8mf8_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, -3 > | d,
|  | const vint32mf2_t | v
| ) |  |

References d, DemoteTo(), Lanes(), and v.

## DemoteTo() [62/75]

template<size_t N>

HWY_API vuint8m1_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, 0 > | d,
|  | const vint32m4_t | v
| ) |  |

References d, DemoteTo(), Lanes(), and v.

## DemoteTo() [63/75]

template<size_t N, HWY_IF_LE64(int16_t, N) >

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< int16_t, N > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [64/75]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< int16_t, N > | v
| ) |  |

References v.

## DemoteTo() [65/75]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< int32_t > | v
| ) |  |

References DemoteTo(), N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## DemoteTo() [66/75]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References DemoteTo(), and v.

## DemoteTo() [67/75]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References v.

## DemoteTo() [68/75]

template<size_t N>

HWY_API vuint8m2_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, 1 > | d,
|  | const vint32m8_t | v
| ) |  |

References d, DemoteTo(), Lanes(), and v.

## DemoteTo() [69/75]

template<size_t N, int kPow2>

HWY_API svuint8_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, kPow2 > | dn,
|  | const svint16_t | v
| ) |  |

References BitCast(), and v.

## DemoteTo() [70/75]

template<size_t N, int kPow2>

HWY_API svuint8_t hwy::HWY_NAMESPACE::DemoteTo | ( | Simd< uint8_t, N, kPow2 > | dn,
|  | const svint32_t | v
| ) |  |

References BitCast(), and v.

## DemoteTo() [71/75]

HWY_API Vec1< bfloat16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Sisd< bfloat16_t > | d,
|  | const Vec1< float > | v
| ) |  |

References hwy::BF16FromF32(), d, Set(), and v.

## DemoteTo() [72/75]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::DemoteTo | ( | Sisd< float > | ,
|  | Vec1< double > | from
| ) |  |

References Abs(), hwy::HighestValue< float >(), IsInf(), hwy::LowestValue< float >(), hwy::HWY_NAMESPACE::Vec1< T >::raw, and hwy::HWY_NAMESPACE::detail::SignBit().

## DemoteTo() [73/75]

HWY_API Vec1< float16_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Sisd< float16_t > | ,
|  | const Vec1< float > | v
| ) |  |

References hwy::CopySameSize(), HWY_DASSERT, HWY_MIN, hwy::HWY_NAMESPACE::Vec1< T >::raw, and v.

## DemoteTo() [74/75]

HWY_API Vec1< int32_t > hwy::HWY_NAMESPACE::DemoteTo | ( | Sisd< int32_t > | ,
|  | Vec1< double > | from
| ) |  |

References Abs(), IsInf(), hwy::HWY_NAMESPACE::Vec1< T >::raw, and hwy::HWY_NAMESPACE::detail::SignBit().

## DemoteTo() [75/75]

template<typename FromT , typename ToT >

HWY_API Vec1< ToT > hwy::HWY_NAMESPACE::DemoteTo | ( | Sisd< ToT > | ,
|  | Vec1< FromT > | from
| ) |  |

References HWY_MAX, HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## DupEven() [1/10]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::DupEven | ( | const V | v | ) |

References v.

## DupEven() [2/10]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::DupEven | ( | Vec128< float, N > | v | ) |

References v.

## DupEven() [3/10]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::DupEven | ( | Vec128< T, N > | v | ) |

References DupEven(), and v.

Referenced by Compress(), Compress(), CompressNot(), DupEven(), DupEven(), DupEven(), DupEven(), DupEven(), hwy::HWY_NAMESPACE::detail::Eq128Vec(), Lt128(), hwy::HWY_NAMESPACE::detail::Lt128Vec(), and hwy::HWY_NAMESPACE::detail::Ne128Vec().

## DupEven() [4/10]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::DupEven | ( | Vec128< T, N > | v | ) |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## DupEven() [5/10]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::DupEven | ( | Vec1< T > | v | ) |

References v.

## DupEven() [6/10]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::DupEven | ( | Vec256< float > | v | ) |

References DupEven(), and v.

## DupEven() [7/10]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::DupEven | ( | Vec256< T > | v | ) |

References DupEven(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## DupEven() [8/10]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::DupEven | ( | Vec256< T > | v | ) |

References DupEven(), and v.

## DupEven() [9/10]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::DupEven | ( | Vec512< float > | v | ) |

References DupEven(), and v.

## DupEven() [10/10]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::DupEven | ( | Vec512< T > | v | ) |

References DupEven(), and v.

## DupOdd() [1/9]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::DupOdd | ( | const V | v | ) |

References v.

## DupOdd() [2/9]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::DupOdd | ( | Vec128< float, N > | v | ) |

References v.

## DupOdd() [3/9]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::DupOdd | ( | Vec128< T, N > | v | ) |

References DupOdd(), and v.

Referenced by Compress(), Compress(), CompressNot(), DupOdd(), DupOdd(), DupOdd(), DupOdd(), DupOdd(), hwy::HWY_NAMESPACE::detail::Eq128Vec(), Lt128(), hwy::HWY_NAMESPACE::detail::Lt128Vec(), and hwy::HWY_NAMESPACE::detail::Ne128Vec().

## DupOdd() [4/9]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::DupOdd | ( | Vec128< T, N > | v | ) |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## DupOdd() [5/9]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::DupOdd | ( | Vec256< float > | v | ) |

References DupOdd(), and v.

## DupOdd() [6/9]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::DupOdd | ( | Vec256< T > | v | ) |

References DupOdd(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## DupOdd() [7/9]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::DupOdd | ( | Vec256< T > | v | ) |

References DupOdd(), and v.

## DupOdd() [8/9]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::DupOdd | ( | Vec512< float > | v | ) |

References DupOdd(), and v.

## DupOdd() [9/9]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::DupOdd | ( | Vec512< T > | v | ) |

References DupOdd(), and v.

## Eq128() [1/6]

template<class D >

HWY_INLINE svbool_t hwy::HWY_NAMESPACE::Eq128 | ( | D | d,
|  | const svuint64_t | a,
|  | const svuint64_t | b
| ) |  |

References And(), d, hwy::HWY_NAMESPACE::detail::Eq128Vec(), and MaskFromVec().

## Eq128() [2/6]

template<class D , class V = VFromD<D>>

HWY_API MFromD< D > hwy::HWY_NAMESPACE::Eq128 | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::Eq128Vec(), and MaskFromVec().

## Eq128() [3/6]

template<class D >

HWY_INLINE MFromD< D > hwy::HWY_NAMESPACE::Eq128 | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References And(), d, MaskFromVec(), Reverse2(), and VecFromMask().

## Eq128() [4/6]

template<typename T >

HWY_INLINE Mask256< T > hwy::HWY_NAMESPACE::Eq128 | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, Eq128(), hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Eq128() [5/6]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_INLINE Mask128< T, N > hwy::HWY_NAMESPACE::Eq128 | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N > | a,
|  | Vec128< T, N > | b
| ) |  |

References And(), d, Eq128(), MaskFromVec(), Reverse2(), and VecFromMask().

Referenced by Eq128(), and Eq128().

## Eq128() [6/6]

HWY_API Mask128< uint64_t > hwy::HWY_NAMESPACE::Eq128 | ( | Simd< uint64_t, 2, 0 > | ,
|  | Vec128< uint64_t > | a,
|  | const Vec128< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Eq128Upper() [1/6]

template<class D , class V = VFromD<D>>

HWY_API MFromD< D > hwy::HWY_NAMESPACE::Eq128Upper | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::Eq128UpperVec(), and MaskFromVec().

## Eq128Upper() [2/6]

template<class D >

HWY_INLINE MFromD< D > hwy::HWY_NAMESPACE::Eq128Upper | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References d, MaskFromVec(), OddEven(), and VecFromMask().

## Eq128Upper() [3/6]

template<class D >

HWY_INLINE svbool_t hwy::HWY_NAMESPACE::Eq128Upper | ( | D | d,
|  | svuint64_t | a,
|  | svuint64_t | b
| ) |  |

References d.

## Eq128Upper() [4/6]

template<typename T >

HWY_INLINE Mask256< T > hwy::HWY_NAMESPACE::Eq128Upper | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, Eq128Upper(), hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Eq128Upper() [5/6]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_INLINE Mask128< T, N > hwy::HWY_NAMESPACE::Eq128Upper | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N > | a,
|  | Vec128< T, N > | b
| ) |  |

References d, Eq128Upper(), MaskFromVec(), and VecFromMask().

Referenced by Eq128Upper(), and Eq128Upper().

## Eq128Upper() [6/6]

HWY_API Mask128< uint64_t > hwy::HWY_NAMESPACE::Eq128Upper | ( | Simd< uint64_t, 2, 0 > | ,
|  | Vec128< uint64_t > | a,
|  | const Vec128< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ExclusiveNeither() [1/5]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::ExclusiveNeither | ( | const Mask128< T, N > | a,
|  | Mask128< T, N > | b
| ) |  |

References AndNot(), d, ExclusiveNeither(), MaskFromVec(), Not(), and VecFromMask().

Referenced by ExclusiveNeither().

## ExclusiveNeither() [2/5]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::ExclusiveNeither | ( | const Mask1< T > | a,
|  | Mask1< T > | b
| ) |  |

References AndNot(), d, MaskFromVec(), Not(), and VecFromMask().

## ExclusiveNeither() [3/5]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::ExclusiveNeither | ( | const Mask256< T > | a,
|  | Mask256< T > | b
| ) |  |

References AndNot(), d, MaskFromVec(), Not(), and VecFromMask().

## ExclusiveNeither() [4/5]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::ExclusiveNeither | ( | const Mask512< T > | a,
|  | Mask512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::ExclusiveNeither().

## ExclusiveNeither() [5/5]

HWY_API svbool_t hwy::HWY_NAMESPACE::ExclusiveNeither | ( | svbool_t | a,
|  | svbool_t | b
| ) |  |

References HWY_SVE_PTRUE.

## Exp()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Exp | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::exp(x).

Valid Lane Types: float32, float64 Max Error: ULP = 1 Valid Range: float32[-FLT_MAX, +104], float64[-DBL_MAX, +706]

Returns
  e^x

References And(), d, Ge(), IfThenElseZero(), MulAdd(), Or(), and Set().

Referenced by CallExp().

## Expm1()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Expm1 | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::expm1(x).

Valid Lane Types: float32, float64 Max Error: ULP = 4 Valid Range: float32[-FLT_MAX, +104], float64[-DBL_MAX, +706]

Returns
  e^x - 1

References Abs(), And(), d, IfThenElse(), MulAdd(), Or(), and Set().

Referenced by CallExpm1(), Sinh(), and Tanh().

## ExtractLane() [1/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::ExtractLane | ( | const Vec128< T, 1 > | v,
|  | size_t | i
| ) |  |

References ExtractLane(), HWY_DASSERT, and v.

Referenced by ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), and ExtractLane().

## ExtractLane() [2/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::ExtractLane | ( | const Vec128< T, 16 > | v,
|  | size_t | i
| ) |  |

References ExtractLane(), Store(), and v.

## ExtractLane() [3/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::ExtractLane | ( | const Vec128< T, 2 > | v,
|  | size_t | i
| ) |  |

References ExtractLane(), Store(), and v.

## ExtractLane() [4/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::ExtractLane | ( | const Vec128< T, 4 > | v,
|  | size_t | i
| ) |  |

References ExtractLane(), Store(), and v.

## ExtractLane() [5/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::ExtractLane | ( | const Vec128< T, 8 > | v,
|  | size_t | i
| ) |  |

References ExtractLane(), Store(), and v.

## ExtractLane() [6/10]

template<typename T , size_t N>

HWY_API T hwy::HWY_NAMESPACE::ExtractLane | ( | const Vec128< T, N > | v,
|  | size_t | i
| ) |  |

References v.

## ExtractLane() [7/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::ExtractLane | ( | const Vec1< T > | v,
|  | size_t | i
| ) |  |

References HWY_DASSERT, and v.

## ExtractLane() [8/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::ExtractLane | ( | const Vec256< T > | v,
|  | size_t | i
| ) |  |

References Store(), and v.

## ExtractLane() [9/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::ExtractLane | ( | const Vec512< T > | v,
|  | size_t | i
| ) |  |

References d, ExtractLane(), HWY_DASSERT, Lanes(), Store(), and v.

## ExtractLane() [10/10]

template<class V >

HWY_API TFromV< V > hwy::HWY_NAMESPACE::ExtractLane | ( | V | v,
|  | size_t | i
| ) |  |

References FirstN(), and v.

## Fill()

template<class D , typename T = TFromD<D>>

void hwy::HWY_NAMESPACE::Fill | ( | D | d,
|  | T | value,
|  | size_t | count,
|  | T *HWY_RESTRICT | to
| ) |  |

References d, HWY_DASSERT, HWY_UNLIKELY, Lanes(), N, SafeFillN(), Set(), StoreU(), and v.

## Find()

template<class D , typename T = TFromD<D>>

size_t hwy::HWY_NAMESPACE::Find | ( | D | d,
|  | T | value,
|  | const T *HWY_RESTRICT | in,
|  | size_t | count
| ) |  |

References AllTrue(), And(), d, FindFirstTrue(), FirstN(), GetLane(), HWY_DASSERT, Lanes(), LoadU(), MaskedLoad(), N, Set(), and v.

## FindFirstTrue() [1/5]

template<typename T >

HWY_API intptr_t hwy::HWY_NAMESPACE::FindFirstTrue | ( | const Full256< T > | d,
|  | const Mask256< T > | mask
| ) |  |

References d, FindFirstTrue(), hwy::HWY_NAMESPACE::Mask256< T >::m0, and hwy::HWY_NAMESPACE::Mask256< T >::m1.

## FindFirstTrue() [2/5]

template<typename T >

HWY_API intptr_t hwy::HWY_NAMESPACE::FindFirstTrue | ( | const Full512< T > | d,
|  | const Mask512< T > | mask
| ) |  |

References d, FindFirstTrue(), FindKnownFirstTrue(), and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## FindFirstTrue() [3/5]

template<typename T , size_t N>

HWY_API intptr_t hwy::HWY_NAMESPACE::FindFirstTrue | ( | const Simd< T, N, 0 > | d,
|  | const Mask128< T, N > | mask
| ) |  |

References d, FindFirstTrue(), and hwy::Num0BitsBelowLS1Bit_Nonzero64().

Referenced by AllFalse(), Find(), FindFirstTrue(), FindFirstTrue(), FindFirstTrue(), FindIf(), and FindKnownFirstTrue().

## FindFirstTrue() [4/5]

template<class D >

HWY_API intptr_t hwy::HWY_NAMESPACE::FindFirstTrue | ( | D | d,
|  | svbool_t | m
| ) |  |

References AllFalse(), CountTrue(), d, and hwy::HWY_NAMESPACE::detail::MakeMask().

## FindFirstTrue() [5/5]

template<typename T >

HWY_API intptr_t hwy::HWY_NAMESPACE::FindFirstTrue | ( | Sisd< T > | ,
|  | const Mask1< T > | mask
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits.

## FindIf()

template<class D , class Func , typename T = TFromD<D>>

size_t hwy::HWY_NAMESPACE::FindIf | ( | D | d,
|  | const T *HWY_RESTRICT | in,
|  | size_t | count,
|  | const Func & | func
| ) |  |

References AllTrue(), And(), d, FindFirstTrue(), FirstN(), HWY_DASSERT, Lanes(), LoadU(), MaskedLoad(), N, and v.

## FindKnownFirstTrue() [1/5]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::FindKnownFirstTrue | ( | const Full256< T > | d,
|  | const Mask256< T > | mask
| ) |  |

References d, FindFirstTrue(), FindKnownFirstTrue(), hwy::HWY_NAMESPACE::Mask256< T >::m0, and hwy::HWY_NAMESPACE::Mask256< T >::m1.

## FindKnownFirstTrue() [2/5]

template<typename T , HWY_IF_NOT_LANE_SIZE(T, 1) >

HWY_API size_t hwy::HWY_NAMESPACE::FindKnownFirstTrue | ( | const Full512< T > | ,
|  | const Mask512< T > | mask
| ) |  |

References FindKnownFirstTrue(), hwy::Num0BitsBelowLS1Bit_Nonzero32(), and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## FindKnownFirstTrue() [3/5]

template<typename T , size_t N>

HWY_API size_t hwy::HWY_NAMESPACE::FindKnownFirstTrue | ( | const Simd< T, N, 0 > | d,
|  | const Mask128< T, N > | mask
| ) |  |

References d, FindKnownFirstTrue(), and hwy::Num0BitsBelowLS1Bit_Nonzero64().

Referenced by FindFirstTrue(), FindKnownFirstTrue(), FindKnownFirstTrue(), and FindKnownFirstTrue().

## FindKnownFirstTrue() [4/5]

template<class D >

HWY_API size_t hwy::HWY_NAMESPACE::FindKnownFirstTrue | ( | D | d,
|  | svbool_t | m
| ) |  |

References CountTrue(), d, and hwy::HWY_NAMESPACE::detail::MakeMask().

## FindKnownFirstTrue() [5/5]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::FindKnownFirstTrue | ( | Sisd< T > | ,
|  | const Mask1< T > |
| ) |  |

## FirstN() [1/5]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::FirstN | ( | const Full256< T > | d,
|  | size_t | num
| ) |  |

References d, Iota(), RebindMask(), and Set().

## FirstN() [2/5]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::FirstN | ( | const Full512< T > | ,
|  | size_t | n
| ) |  |

References hwy::HWY_NAMESPACE::Mask512< T >::raw.

## FirstN() [3/5]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::FirstN | ( | const Simd< T, N, 0 > | d,
|  | size_t | num
| ) |  |

References d, FirstN(), Iota(), RebindMask(), and Set().

Referenced by CombineShiftRightBytes(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), ConcatEven(), ConcatOdd(), ConcatUpperLower(), CopyIf(), ExtractLane(), Find(), FindIf(), FirstN(), Generate(), hwy::HWY_NAMESPACE::detail::MakeMask(), MaskTrue(), hwy::HWY_NAMESPACE::detail::ShiftRightBytesT< kBytes >::operator()(), Replace(), ReplaceIf(), Reverse(), SafeCopyN(), SafeFillN(), ShiftLeftLanes(), ShiftRightLanes(), StoreMaskBits(), Transform(), Transform1(), Transform2(), and ZeroExtendVector().

## FirstN() [4/5]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::FirstN | ( | const Simd< T, N, 0 > | d,
|  | size_t | num
| ) |  |

References d, Iota(), RebindMask(), and Set().

## FirstN() [5/5]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::FirstN | ( | Sisd< T > | ,
|  | size_t | n
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::FromBool().

## Floor() [1/11]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Floor | ( | const V | v | ) |

References Round(), and v.

## Floor() [2/11]

template<typename Float , typename Bits , int kMantissaBits, int kExponentBits, class V >

V hwy::HWY_NAMESPACE::Floor | ( | const V | v | ) |

References hwy::CopySameSize(), and v.

## Floor() [3/11]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Floor | ( | const Vec128< float, N > | v | ) |

References ConvertTo(), Floor(), IfThenElse(), RebindMask(), v, and VecFromMask().

Referenced by Floor(), and Floor().

## Floor() [4/11]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Floor | ( | const Vec128< T, N > | v | ) |

References ConvertTo(), IfThenElse(), RebindMask(), hwy::HWY_NAMESPACE::detail::UseInt(), v, and VecFromMask().

## Floor() [5/11]

HWY_API Vec1< double > hwy::HWY_NAMESPACE::Floor | ( | const Vec1< double > | v | ) |

References v.

## Floor() [6/11]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::Floor | ( | const Vec1< float > | v | ) |

References v.

## Floor() [7/11]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Floor | ( | const Vec256< double > | v | ) |

References v.

## Floor() [8/11]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Floor | ( | const Vec512< double > | v | ) |

References v.

## Floor() [9/11]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Floor | ( | const Vec512< float > | v | ) |

References v.

## Floor() [10/11]

template<typename Float , size_t N>

Vec128< Float, N > hwy::HWY_NAMESPACE::Floor | ( | Vec128< Float, N > | v | ) |

References hwy::CopySameSize(), N, and v.

## Floor() [11/11]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Floor | ( | Vec256< float > | v | ) |

References Floor(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## ForAllTypes()

template<class Func >

void hwy::HWY_NAMESPACE::ForAllTypes | ( | const Func & | func | ) |

References ForFloatTypes(), and ForIntegerTypes().

## ForFloatTypes()

template<class Func >

void hwy::HWY_NAMESPACE::ForFloatTypes | ( | const Func & | func | ) |

Referenced by ForAllTypes().

## ForIntegerTypes()

template<class Func >

void hwy::HWY_NAMESPACE::ForIntegerTypes | ( | const Func & | func | ) |

References ForSignedTypes(), and ForUnsignedTypes().

Referenced by ForAllTypes().

## ForSignedTypes()

template<class Func >

void hwy::HWY_NAMESPACE::ForSignedTypes | ( | const Func & | func | ) |

Referenced by ForIntegerTypes().

## ForUI16()

template<class Func >

void hwy::HWY_NAMESPACE::ForUI16 | ( | const Func & | func | ) |

Referenced by ForUI163264(), and ForUIF16().

## ForUI163264()

template<class Func >

void hwy::HWY_NAMESPACE::ForUI163264 | ( | const Func & | func | ) |

References ForUI16(), and ForUI3264().

## ForUI32()

template<class Func >

void hwy::HWY_NAMESPACE::ForUI32 | ( | const Func & | func | ) |

Referenced by ForUI3264(), and ForUIF32().

## ForUI3264()

template<class Func >

void hwy::HWY_NAMESPACE::ForUI3264 | ( | const Func & | func | ) |

References ForUI32(), and ForUI64().

Referenced by ForUI163264().

## ForUI64()

template<class Func >

void hwy::HWY_NAMESPACE::ForUI64 | ( | const Func & | func | ) |

Referenced by ForUI3264(), and ForUIF64().

## ForUI8()

template<class Func >

void hwy::HWY_NAMESPACE::ForUI8 | ( | const Func & | func | ) |

## ForUIF16()

template<class Func >

void hwy::HWY_NAMESPACE::ForUIF16 | ( | const Func & | func | ) |

References ForUI16().

Referenced by ForUIF163264().

## ForUIF163264()

template<class Func >

void hwy::HWY_NAMESPACE::ForUIF163264 | ( | const Func & | func | ) |

References ForUIF16(), and ForUIF3264().

## ForUIF32()

template<class Func >

void hwy::HWY_NAMESPACE::ForUIF32 | ( | const Func & | func | ) |

References ForUI32().

Referenced by ForUIF3264().

## ForUIF3264()

template<class Func >

void hwy::HWY_NAMESPACE::ForUIF3264 | ( | const Func & | func | ) |

References ForUIF32(), and ForUIF64().

Referenced by ForUIF163264().

## ForUIF64()

template<class Func >

void hwy::HWY_NAMESPACE::ForUIF64 | ( | const Func & | func | ) |

References ForUI64().

Referenced by ForUIF3264().

## ForUnsignedTypes()

template<class Func >

void hwy::HWY_NAMESPACE::ForUnsignedTypes | ( | const Func & | func | ) |

Referenced by ForIntegerTypes().

## GatherIndex() [1/9]

template<typename T , typename Index >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::GatherIndex | ( | const Full256< T > | d,
|  | const T *HWY_RESTRICT | base,
|  | const Vec256< Index > | index
| ) |  |

References d, Load(), N, and Store().

## GatherIndex() [2/9]

template<typename T , size_t N, typename Index >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::GatherIndex | ( | const Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | base,
|  | const Vec128< Index, N > | index
| ) |  |

References d, GatherIndex(), Load(), N, and Store().

Referenced by GatherIndex(), GatherIndex(), GatherIndex(), GatherIndex(), GatherIndex(), GatherIndex(), hwy::HWY_NAMESPACE::detail::GatherIndex(), hwy::HWY_NAMESPACE::detail::GatherIndex(), hwy::HWY_NAMESPACE::detail::GatherIndex(), and hwy::HWY_NAMESPACE::detail::GatherIndex().

## GatherIndex() [3/9]

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
| ) |  |

References d, and GatherOffset().

## GatherIndex() [4/9]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::GatherIndex | ( | Full256< double > | ,
|  | const double *HWY_RESTRICT | base,
|  | const Vec256< int64_t > | index
| ) |  |

References GatherIndex(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## GatherIndex() [5/9]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::GatherIndex | ( | Full256< float > | ,
|  | const float *HWY_RESTRICT | base,
|  | const Vec256< int32_t > | index
| ) |  |

References GatherIndex(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## GatherIndex() [6/9]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::GatherIndex | ( | Full512< double > | ,
|  | const double *HWY_RESTRICT | base,
|  | const Vec512< int64_t > | index
| ) |  |

References GatherIndex(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## GatherIndex() [7/9]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::GatherIndex | ( | Full512< float > | ,
|  | const float *HWY_RESTRICT | base,
|  | const Vec512< int32_t > | index
| ) |  |

References GatherIndex(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## GatherIndex() [8/9]

template<typename T , typename Index >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::GatherIndex | ( | Full512< T > | d,
|  | const T *HWY_RESTRICT | base,
|  | const Vec512< Index > | index
| ) |  |

References d, and GatherIndex().

## GatherIndex() [9/9]

template<typename T , typename Index >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::GatherIndex | ( | Sisd< T > | d,
|  | const T *HWY_RESTRICT | base,
|  | const Vec1< Index > | index
| ) |  |

References d, Load(), and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## GatherOffset() [1/9]

template<typename T , typename Offset >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::GatherOffset | ( | const Full256< T > | d,
|  | const T *HWY_RESTRICT | base,
|  | const Vec256< Offset > | offset
| ) |  |

References d, Load(), N, and Store().

## GatherOffset() [2/9]

template<typename T , size_t N, typename Offset >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::GatherOffset | ( | const Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | base,
|  | const Vec128< Offset, N > | offset
| ) |  |

References d, GatherOffset(), Load(), N, and Store().

Referenced by GatherIndex(), GatherOffset(), GatherOffset(), GatherOffset(), GatherOffset(), GatherOffset(), GatherOffset(), hwy::HWY_NAMESPACE::detail::GatherOffset(), hwy::HWY_NAMESPACE::detail::GatherOffset(), hwy::HWY_NAMESPACE::detail::GatherOffset(), and hwy::HWY_NAMESPACE::detail::GatherOffset().

## GatherOffset() [3/9]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::GatherOffset | ( | Full256< double > | ,
|  | const double *HWY_RESTRICT | base,
|  | const Vec256< int64_t > | offset
| ) |  |

References GatherOffset(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## GatherOffset() [4/9]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::GatherOffset | ( | Full256< float > | ,
|  | const float *HWY_RESTRICT | base,
|  | const Vec256< int32_t > | offset
| ) |  |

References GatherOffset(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## GatherOffset() [5/9]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::GatherOffset | ( | Full512< double > | ,
|  | const double *HWY_RESTRICT | base,
|  | const Vec512< int64_t > | offset
| ) |  |

References GatherOffset(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## GatherOffset() [6/9]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::GatherOffset | ( | Full512< float > | ,
|  | const float *HWY_RESTRICT | base,
|  | const Vec512< int32_t > | offset
| ) |  |

References GatherOffset(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## GatherOffset() [7/9]

template<typename T , typename Offset >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::GatherOffset | ( | Full512< T > | d,
|  | const T *HWY_RESTRICT | base,
|  | const Vec512< Offset > | offset
| ) |  |

References d, and GatherOffset().

## GatherOffset() [8/9]

template<typename T , size_t N, typename Offset >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::GatherOffset | ( | Simd< T, N, 0 > | ,
|  | const T * | base,
|  | const Vec128< Offset, N > | offset
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## GatherOffset() [9/9]

template<typename T , typename Offset >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::GatherOffset | ( | Sisd< T > | d,
|  | const T * | base,
|  | const Vec1< Offset > | offset
| ) |  |

References d, Load(), and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## Ge() [1/2]

template<class V >

HWY_API svbool_t hwy::HWY_NAMESPACE::Ge | ( | const V | a,
|  | const V | b
| ) |  |

Referenced by Acos(), and Exp().

## Ge() [2/2]

template<class V >

HWY_API auto hwy::HWY_NAMESPACE::Ge | ( | const V | a,
|  | const V | b
| ) |  | -> decltype(Le(a, b))

## Generate()

template<class D , class Func , typename T = TFromD<D>>

void hwy::HWY_NAMESPACE::Generate | ( | D | d,
|  | T *HWY_RESTRICT | out,
|  | size_t | count,
|  | const Func & | func
| ) |  |

References BlendedStore(), d, FirstN(), HWY_DASSERT, HWY_UNLIKELY, Iota(), Lanes(), N, Set(), and StoreU().

## GenerateInput()

template<typename T >

InputStats< T > hwy::HWY_NAMESPACE::GenerateInput | ( | const Dist | dist,
|  | T * | v,
|  | size_t | num
| ) |  |

References d, hwy::HWY_NAMESPACE::Xorshift128Plus::GenerateSeeds(), Lanes(), Load(), MaskForDist(), N, hwy::InputStats< T >::Notify(), RandomValues(), StoreU(), and v.

## GetLane() [1/10]

template<class V >

HWY_API TFromV< V > hwy::HWY_NAMESPACE::GetLane | ( | const V | v | ) |

References GetLane(), and v.

Referenced by hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::detail::ExtractLane(), hwy::HWY_NAMESPACE::detail::ExtractLane(), Find(), GetLane(), GetLane(), GetLane(), MulEven(), hwy::HWY_NAMESPACE::detail::NibblesFromMask(), operator*(), RandomValues(), StoreU(), StoreU(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), and hwy::HWY_NAMESPACE::detail::SumOfLanes().

## GetLane() [2/10]

template<size_t N>

HWY_API double hwy::HWY_NAMESPACE::GetLane | ( | const Vec128< double, N > | v | ) |

References v.

## GetLane() [3/10]

template<size_t N>

HWY_API float hwy::HWY_NAMESPACE::GetLane | ( | const Vec128< float, N > | v | ) |

References v.

## GetLane() [4/10]

template<size_t N>

HWY_API int64_t hwy::HWY_NAMESPACE::GetLane | ( | const Vec128< int64_t, N > | v | ) |

References Store(), and v.

## GetLane() [5/10]

template<typename T , size_t N>

HWY_API T hwy::HWY_NAMESPACE::GetLane | ( | const Vec128< T, N > | v | ) |

References v.

## GetLane() [6/10]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >

HWY_API T hwy::HWY_NAMESPACE::GetLane | ( | const Vec128< T, N > | v | ) |

References v.

## GetLane() [7/10]

template<size_t N>

HWY_API uint64_t hwy::HWY_NAMESPACE::GetLane | ( | const Vec128< uint64_t, N > | v | ) |

References Store(), and v.

## GetLane() [8/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::GetLane | ( | const Vec1< T > | v | ) |

References hwy::HWY_NAMESPACE::Vec1< T >::raw, and v.

## GetLane() [9/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::GetLane | ( | const Vec256< T > | v | ) |

References GetLane(), LowerHalf(), and v.

## GetLane() [10/10]

template<typename T >

HWY_API T hwy::HWY_NAMESPACE::GetLane | ( | const Vec512< T > | v | ) |

References GetLane(), LowerHalf(), and v.

## Gt() [1/2]

template<class V >

HWY_API svbool_t hwy::HWY_NAMESPACE::Gt | ( | const V | a,
|  | const V | b
| ) |  |

Referenced by Acosh(), Asinh(), Atan(), and Tanh().

## Gt() [2/2]

template<class V >

HWY_API auto hwy::HWY_NAMESPACE::Gt | ( | const V | a,
|  | const V | b
| ) |  | -> decltype(Lt(a, b))

## HWY_RVV_FOREACH_F64()

hwy::HWY_NAMESPACE::HWY_RVV_FOREACH_F64 | ( | HWY_RVV_DEMOTE_F | ,
|  | DemoteTo | ,
|  | vfncvt_rod_f_f_w_f | ,
|  | _DEMOTE_VIRT |
| ) |  |

## IfNegativeThenElse() [1/9]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::IfNegativeThenElse | ( | const Vec128< int8_t, N > | v,
|  | const Vec128< int8_t, N > | yes,
|  | const Vec128< int8_t, N > | no
| ) |  |

References IfThenElse(), MaskFromVec(), and v.

## IfNegativeThenElse() [2/9]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::IfNegativeThenElse | ( | V | v,
|  | V | yes,
|  | V | no
| ) |  |

References BitCast(), BroadcastSignBit(), d, IfThenElse(), MaskFromVec(), and v.

## IfNegativeThenElse() [3/9]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::IfNegativeThenElse | ( | Vec128< T, N > | v,
|  | Vec128< T, N > | yes,
|  | Vec128< T, N > | no
| ) |  |

References BitCast(), BroadcastSignBit(), d, IfNegativeThenElse(), IfThenElse(), MaskFromVec(), and v.

Referenced by IfNegativeThenElse(), and IfNegativeThenElse().

## IfNegativeThenElse() [4/9]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::IfNegativeThenElse | ( | Vec128< T, N > | v,
|  | Vec128< T, N > | yes,
|  | Vec128< T, N > | no
| ) |  |

References BitCast(), BroadcastSignBit(), d, IfThenElse(), MaskFromVec(), and v.

## IfNegativeThenElse() [5/9]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::IfNegativeThenElse | ( | Vec1< T > | v,
|  | Vec1< T > | yes,
|  | Vec1< T > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw, and v.

## IfNegativeThenElse() [6/9]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::IfNegativeThenElse | ( | Vec256< int8_t > | v,
|  | Vec256< int8_t > | yes,
|  | Vec256< int8_t > | no
| ) |  |

References IfThenElse(), MaskFromVec(), and v.

## IfNegativeThenElse() [7/9]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::IfNegativeThenElse | ( | Vec256< T > | v,
|  | Vec256< T > | yes,
|  | Vec256< T > | no
| ) |  |

References IfNegativeThenElse(), v, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## IfNegativeThenElse() [8/9]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::IfNegativeThenElse | ( | Vec256< T > | v,
|  | Vec256< T > | yes,
|  | Vec256< T > | no
| ) |  |

References BitCast(), BroadcastSignBit(), d, IfThenElse(), MaskFromVec(), and v.

## IfNegativeThenElse() [9/9]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::IfNegativeThenElse | ( | Vec512< T > | v,
|  | Vec512< T > | yes,
|  | Vec512< T > | no
| ) |  |

References IfThenElse(), MaskFromVec(), and v.

## IfThenElse() [1/10]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::IfThenElse | ( | const Mask128< T, N > | mask,
|  | const Vec128< T, N > | yes,
|  | const Vec128< T, N > | no
| ) |  |

References IfVecThenElse(), and VecFromMask().

Referenced by Abs(), Abs(), Abs(), Acos(), Acosh(), Asin(), Asinh(), Atan(), BlendedStore(), BlendedStore(), Ceil(), Ceil(), CombineShiftRightBytes(), CombineShiftRightLanes(), ConcatUpperLower(), ConcatUpperLower(), ConcatUpperUpper(), ConvertTo(), ConvertTo(), DemoteTo(), Expm1(), Floor(), Floor(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfThenElse(), IfThenElseZero(), IfThenElseZero(), IfThenZeroElse(), IfVecThenElse(), IfVecThenElse(), IfVecThenElse(), IfVecThenElse(), InsertLane(), InterleaveUpper(), hwy::HWY_NAMESPACE::impl::Log(), Log1p(), Lt128(), Max(), Max(), Max(), Max(), Max128(), Max128(), Max128(), Max128Upper(), Max128Upper(), Max128Upper(), Min(), Min(), Min(), Min(), Min128(), Min128(), Min128(), Min128Upper(), Min128Upper(), Min128Upper(), OddEven(), OddEven(), OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), OddEvenBlocks(), operator<<(), operator>>(), operator>>(), operator>>(), operator>>(), PromoteTo(), PromoteTo(), Replace(), ReplaceIf(), Round(), Round(), ShiftLeftLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), Tanh(), Trunc(), Trunc(), and ZeroIfNegative().

## IfThenElse() [2/10]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::IfThenElse | ( | const Mask1< T > | mask,
|  | const Vec1< T > | yes,
|  | const Vec1< T > | no
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits.

## IfThenElse() [3/10]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::IfThenElse | ( | const Mask512< double > | mask,
|  | const Vec512< double > | yes,
|  | const Vec512< double > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## IfThenElse() [4/10]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::IfThenElse | ( | const Mask512< float > | mask,
|  | const Vec512< float > | yes,
|  | const Vec512< float > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## IfThenElse() [5/10]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::IfThenElse | ( | const Mask512< T > | mask,
|  | const Vec512< T > | yes,
|  | const Vec512< T > | no
| ) |  |

References hwy::HWY_NAMESPACE::detail::IfThenElse().

## IfThenElse() [6/10]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::IfThenElse | ( | Mask128< double, N > | mask,
|  | Vec128< double, N > | yes,
|  | Vec128< double, N > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## IfThenElse() [7/10]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::IfThenElse | ( | Mask128< float, N > | mask,
|  | Vec128< float, N > | yes,
|  | Vec128< float, N > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## IfThenElse() [8/10]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::IfThenElse | ( | Mask256< double > | mask,
|  | Vec256< double > | yes,
|  | Vec256< double > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and hwy::HWY_NAMESPACE::Mask256< T >::raw.

## IfThenElse() [9/10]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::IfThenElse | ( | Mask256< float > | mask,
|  | Vec256< float > | yes,
|  | Vec256< float > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and hwy::HWY_NAMESPACE::Mask256< T >::raw.

## IfThenElse() [10/10]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::IfThenElse | ( | Mask256< T > | mask,
|  | Vec256< T > | yes,
|  | Vec256< T > | no
| ) |  |

References IfThenElse(), hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## IfThenElseZero() [1/12]

template<class M , class V >

HWY_API V hwy::HWY_NAMESPACE::IfThenElseZero | ( | const M | mask,
|  | const V | yes
| ) |  |

References IfThenElse(), and Zero().

## IfThenElseZero() [2/12]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::IfThenElseZero | ( | const Mask128< T, N > | mask,
|  | const Vec128< T, N > | yes
| ) |  |

References IfThenElseZero(), and VecFromMask().

Referenced by Acosh(), Asinh(), hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), Exp(), IfThenElseZero(), hwy::HWY_NAMESPACE::impl::Log(), MaskedLoad(), MaskedLoad(), MaskedLoad(), hwy::HWY_NAMESPACE::detail::ShiftRightBytesT< kBytes >::operator()(), ShiftRightLanes(), ShiftRightLanes(), VecFromMask(), and ZeroExtendVector().

## IfThenElseZero() [3/12]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::IfThenElseZero | ( | const Mask1< T > | mask,
|  | const Vec1< T > | yes
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits.

## IfThenElseZero() [4/12]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::IfThenElseZero | ( | const Mask512< double > | mask,
|  | const Vec512< double > | yes
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## IfThenElseZero() [5/12]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::IfThenElseZero | ( | const Mask512< float > | mask,
|  | const Vec512< float > | yes
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## IfThenElseZero() [6/12]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::IfThenElseZero | ( | const Mask512< T > | mask,
|  | const Vec512< T > | yes
| ) |  |

References hwy::HWY_NAMESPACE::detail::IfThenElseZero().

## IfThenElseZero() [7/12]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::IfThenElseZero | ( | const svbool_t | mask,
|  | const V | yes
| ) |  |

References IfThenElse(), and Zero().

## IfThenElseZero() [8/12]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::IfThenElseZero | ( | Mask128< double, N > | mask,
|  | Vec128< double, N > | yes
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## IfThenElseZero() [9/12]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::IfThenElseZero | ( | Mask128< float, N > | mask,
|  | Vec128< float, N > | yes
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## IfThenElseZero() [10/12]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::IfThenElseZero | ( | Mask256< double > | mask,
|  | Vec256< double > | yes
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and hwy::HWY_NAMESPACE::Mask256< T >::raw.

## IfThenElseZero() [11/12]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::IfThenElseZero | ( | Mask256< float > | mask,
|  | Vec256< float > | yes
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and hwy::HWY_NAMESPACE::Mask256< T >::raw.

## IfThenElseZero() [12/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::IfThenElseZero | ( | Mask256< T > | mask,
|  | Vec256< T > | yes
| ) |  |

References VecFromMask().

## IfThenZeroElse() [1/11]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | const Mask128< T, N > | mask,
|  | const Vec128< T, N > | no
| ) |  |

References AndNot(), IfThenZeroElse(), and VecFromMask().

Referenced by Acosh(), Asinh(), hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), DemoteTo(), IfThenZeroElse(), Log1p(), Sqrt(), TableLookupBytesOr0(), ZeroIfNegative(), ZeroIfNegative(), ZeroIfNegative(), and ZeroIfNegative().

## IfThenZeroElse() [2/11]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | const Mask1< T > | mask,
|  | const Vec1< T > | no
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits.

## IfThenZeroElse() [3/11]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | const Mask512< double > | mask,
|  | const Vec512< double > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## IfThenZeroElse() [4/11]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | const Mask512< float > | mask,
|  | const Vec512< float > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## IfThenZeroElse() [5/11]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | const Mask512< T > | mask,
|  | const Vec512< T > | no
| ) |  |

References hwy::HWY_NAMESPACE::detail::IfThenZeroElse().

## IfThenZeroElse() [6/11]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::IfThenZeroElse | ( | const svbool_t | mask,
|  | const V | no
| ) |  |

References IfThenElse(), and Zero().

## IfThenZeroElse() [7/11]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | Mask128< double, N > | mask,
|  | Vec128< double, N > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## IfThenZeroElse() [8/11]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | Mask128< float, N > | mask,
|  | Vec128< float, N > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## IfThenZeroElse() [9/11]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | Mask256< double > | mask,
|  | Vec256< double > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and hwy::HWY_NAMESPACE::Mask256< T >::raw.

## IfThenZeroElse() [10/11]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | Mask256< float > | mask,
|  | Vec256< float > | no
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and hwy::HWY_NAMESPACE::Mask256< T >::raw.

## IfThenZeroElse() [11/11]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::IfThenZeroElse | ( | Mask256< T > | mask,
|  | Vec256< T > | no
| ) |  |

References AndNot(), and VecFromMask().

## IfVecThenElse() [1/6]

template<class V , HWY_IF_FLOAT_V(V) >

HWY_API V hwy::HWY_NAMESPACE::IfVecThenElse | ( | const V | mask,
|  | const V | yes,
|  | const V | no
| ) |  |

References BitCast(), d, and IfVecThenElse().

## IfVecThenElse() [2/6]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::IfVecThenElse | ( | const V | mask,
|  | const V | yes,
|  | const V | no
| ) |  |

References IfThenElse(), and MaskFromVec().

## IfVecThenElse() [3/6]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::IfVecThenElse | ( | Vec128< T, N > | mask,
|  | Vec128< T, N > | yes,
|  | Vec128< T, N > | no
| ) |  |

References IfThenElse(), IfVecThenElse(), and MaskFromVec().

Referenced by Compress(), Compress(), CompressNot(), hwy::HWY_NAMESPACE::detail::FixConversionOverflow(), IfThenElse(), IfVecThenElse(), IfVecThenElse(), Max128(), and Min128().

## IfVecThenElse() [4/6]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::IfVecThenElse | ( | Vec1< T > | mask,
|  | Vec1< T > | yes,
|  | Vec1< T > | no
| ) |  |

References IfThenElse(), and MaskFromVec().

## IfVecThenElse() [5/6]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::IfVecThenElse | ( | Vec256< T > | mask,
|  | Vec256< T > | yes,
|  | Vec256< T > | no
| ) |  |

References IfThenElse(), and MaskFromVec().

## IfVecThenElse() [6/6]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::IfVecThenElse | ( | Vec512< T > | mask,
|  | Vec512< T > | yes,
|  | Vec512< T > | no
| ) |  |

References BitCast(), and d.

## IndicesFromVec() [1/8]

template<class D , class VI >

HWY_API VFromD< RebindToUnsigned< D > > hwy::HWY_NAMESPACE::IndicesFromVec | ( | D | d,
|  | VI | vec
| ) |  |

References AllTrue(), BitCast(), d, HWY_DASSERT, and Lanes().

## IndicesFromVec() [2/8]

template<typename T , typename TI >

HWY_API Indices256< T > hwy::HWY_NAMESPACE::IndicesFromVec | ( | Full256< T > | ,
|  | Vec256< TI > | vec
| ) |  |

References hwy::HWY_NAMESPACE::Indices256< T >::i0, hwy::HWY_NAMESPACE::Indices256< T >::i1, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## IndicesFromVec() [3/8]

template<typename T , typename TI , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Indices256< T > hwy::HWY_NAMESPACE::IndicesFromVec | ( | Full256< T > | d,
|  | Vec256< TI > | vec
| ) |  |

References AllFalse(), AllTrue(), HWY_DASSERT, IndicesFromVec(), hwy::HWY_NAMESPACE::Vec256< T >::raw, Set(), and Zero().

## IndicesFromVec() [4/8]

template<typename T , typename TI >

HWY_API Indices512< T > hwy::HWY_NAMESPACE::IndicesFromVec | ( | Full512< T > | ,
|  | Vec512< TI > | vec
| ) |  |

References AllFalse(), AllTrue(), HWY_DASSERT, IndicesFromVec(), hwy::HWY_NAMESPACE::Vec512< T >::raw, Set(), and Zero().

## IndicesFromVec() [5/8]

template<typename T , size_t N, typename TI , HWY_IF_LE128(T, N) >

HWY_API Indices128< T, N > hwy::HWY_NAMESPACE::IndicesFromVec | ( | Simd< T, N, 0 > | d,
|  | Vec128< TI, N > | vec
| ) |  |

References AllFalse(), AllTrue(), BitCast(), d, HWY_DASSERT, IndicesFromVec(), Load(), N, Set(), TableLookupBytes(), and Zero().

Referenced by IndicesFromVec(), IndicesFromVec(), IndicesFromVec(), SetTableIndices(), SetTableIndices(), SetTableIndices(), SetTableIndices(), SetTableIndices(), and TableLookupLanes().

## IndicesFromVec() [6/8]

template<typename T , size_t N, typename TI , HWY_IF_LE128(T, N) , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Indices128< T, N > hwy::HWY_NAMESPACE::IndicesFromVec | ( | Simd< T, N, 0 > | d,
|  | Vec128< TI, N > | vec
| ) |  |

References AllFalse(), AllTrue(), BitCast(), d, HWY_DASSERT, Load(), N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), TableLookupBytes(), and Zero().

## IndicesFromVec() [7/8]

template<typename T , size_t N, typename TI >

HWY_API Indices128< T, N > hwy::HWY_NAMESPACE::IndicesFromVec | ( | Simd< T, N, 0 > | ,
|  | Vec128< TI, N > | vec
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## IndicesFromVec() [8/8]

template<typename T , typename TI >

HWY_API Indices1< T > hwy::HWY_NAMESPACE::IndicesFromVec | ( | Sisd< T > | ,
|  | Vec1< TI > | vec
| ) |  |

References HWY_DASSERT, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## Inf()

template<class D >

HWY_API Vec< D > hwy::HWY_NAMESPACE::Inf | ( | D | d | ) |

References BitCast(), d, and Set().

## InsertLane() [1/11]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::InsertLane | ( | const V | v,
|  | size_t | i,
|  | TFromV< V > | t
| ) |  |

References d, IfThenElse(), Iota(), RebindMask(), Set(), and v.

## InsertLane() [2/11]

template<class V , HWY_IF_NOT_LANE_SIZE_V(V, 1) >

HWY_API V hwy::HWY_NAMESPACE::InsertLane | ( | const V | v,
|  | size_t | i,
|  | TFromV< V > | t
| ) |  |

References d, IfThenElse(), hwy::HWY_NAMESPACE::detail::Iota0(), RebindMask(), Set(), and v.

## InsertLane() [3/11]

template<typename T >

HWY_API Vec128< T, 1 > hwy::HWY_NAMESPACE::InsertLane | ( | const Vec128< T, 1 > | v,
|  | size_t | i,
|  | T | t
| ) |  |

References HWY_DASSERT, InsertLane(), Set(), and v.

Referenced by InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), and InsertLane().

## InsertLane() [4/11]

template<typename T >

HWY_API Vec128< T, 16 > hwy::HWY_NAMESPACE::InsertLane | ( | const Vec128< T, 16 > | v,
|  | size_t | i,
|  | T | t
| ) |  |

References d, InsertLane(), Load(), Store(), and v.

## InsertLane() [5/11]

template<typename T >

HWY_API Vec128< T, 2 > hwy::HWY_NAMESPACE::InsertLane | ( | const Vec128< T, 2 > | v,
|  | size_t | i,
|  | T | t
| ) |  |

References d, InsertLane(), Load(), Store(), and v.

## InsertLane() [6/11]

template<typename T >

HWY_API Vec128< T, 4 > hwy::HWY_NAMESPACE::InsertLane | ( | const Vec128< T, 4 > | v,
|  | size_t | i,
|  | T | t
| ) |  |

References d, InsertLane(), Load(), Store(), and v.

## InsertLane() [7/11]

template<typename T >

HWY_API Vec128< T, 8 > hwy::HWY_NAMESPACE::InsertLane | ( | const Vec128< T, 8 > | v,
|  | size_t | i,
|  | T | t
| ) |  |

References d, InsertLane(), Load(), Store(), and v.

## InsertLane() [8/11]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::InsertLane | ( | const Vec256< T > | v,
|  | size_t | i,
|  | T | t
| ) |  |

References d, Load(), Store(), and v.

## InsertLane() [9/11]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::InsertLane | ( | const Vec512< T > | v,
|  | size_t | i,
|  | T | t
| ) |  |

References d, HWY_DASSERT, InsertLane(), Lanes(), Load(), Store(), and v.

## InsertLane() [10/11]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::InsertLane | ( | Vec128< T, N > | v,
|  | size_t | i,
|  | T | t
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## InsertLane() [11/11]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::InsertLane | ( | Vec1< T > | v,
|  | size_t | i,
|  | T | t
| ) |  |

References HWY_DASSERT, and v.

## InterleaveLower() [1/50]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::InterleaveLower | ( | const V | a,
|  | const V | b
| ) |  |

References InterleaveLower().

## InterleaveLower() [2/50]

template<size_t N, HWY_IF_LE128(double, N) >

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [3/50]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< float > | a,
|  | const Vec128< float > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [4/50]

template<size_t N, HWY_IF_LE64(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [5/50]

template<size_t N, HWY_IF_LE128(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [6/50]

template<size_t N, HWY_IF_LE128(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [7/50]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< int64_t > | a,
|  | const Vec128< int64_t > | b
| ) |  |

References InterleaveLower(), and Shuffle01().

## InterleaveLower() [8/50]

template<size_t N, HWY_IF_LE128(int64_t, N) >

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< int64_t, N > | a,
|  | const Vec128< int64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [9/50]

template<size_t N, HWY_IF_LE128(int8_t, N) >

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< int8_t, N > | a,
|  | const Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [10/50]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [11/50]

template<size_t N, HWY_IF_LE128(uint16_t, N) >

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [12/50]

template<size_t N, HWY_IF_LE128(uint32_t, N) >

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [13/50]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< uint64_t > | a,
|  | const Vec128< uint64_t > | b
| ) |  |

References InterleaveLower(), and Shuffle01().

Referenced by Combine(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatLowerLower(), ConcatLowerLower(), ConcatOdd(), ConcatOdd(), ConcatOdd(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), InterleaveLower(), LoadInterleaved4(), MulEven(), ReorderDemote2To(), ReorderDemote2To(), StoreInterleaved2(), StoreInterleaved4(), StoreInterleaved4(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), and ZipLower().

## InterleaveLower() [14/50]

template<size_t N, HWY_IF_LE128(uint64_t, N) >

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< uint64_t, N > | a,
|  | const Vec128< uint64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [15/50]

template<size_t N, HWY_IF_LE128(uint8_t, N) >

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec128< uint8_t, N > | a,
|  | const Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [16/50]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [17/50]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [18/50]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< int16_t > | a,
|  | const Vec256< int16_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [19/50]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< int32_t > | a,
|  | const Vec256< int32_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [20/50]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< int64_t > | a,
|  | const Vec256< int64_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [21/50]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< int8_t > | a,
|  | const Vec256< int8_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [22/50]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< uint16_t > | a,
|  | const Vec256< uint16_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [23/50]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< uint32_t > | a,
|  | const Vec256< uint32_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [24/50]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< uint64_t > | a,
|  | const Vec256< uint64_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [25/50]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec256< uint8_t > | a,
|  | const Vec256< uint8_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## InterleaveLower() [26/50]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [27/50]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [28/50]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< int16_t > | a,
|  | const Vec512< int16_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [29/50]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< int32_t > | a,
|  | const Vec512< int32_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [30/50]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< int64_t > | a,
|  | const Vec512< int64_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [31/50]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< int8_t > | a,
|  | const Vec512< int8_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [32/50]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< uint16_t > | a,
|  | const Vec512< uint16_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [33/50]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< uint32_t > | a,
|  | const Vec512< uint32_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [34/50]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< uint64_t > | a,
|  | const Vec512< uint64_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [35/50]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::InterleaveLower | ( | const Vec512< uint8_t > | a,
|  | const Vec512< uint8_t > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## InterleaveLower() [36/50]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::InterleaveLower | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References BitCast(), and d.

## InterleaveLower() [37/50]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::InterleaveLower | ( | DFromV< V > | ,
|  | V | a,
|  | V | b
| ) |  |

References InterleaveLower().

## InterleaveLower() [38/50]

template<typename T , size_t N, class V = Vec128<T, N>>

HWY_API V hwy::HWY_NAMESPACE::InterleaveLower | ( | Simd< T, N, 0 > | ,
|  | V | a,
|  | V | b
| ) |  |

References InterleaveLower().

## InterleaveLower() [39/50]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< double, N > | a,
|  | Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [40/50]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< float, N > | a,
|  | Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [41/50]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< int16_t, N > | a,
|  | Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [42/50]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< int32_t, N > | a,
|  | Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [43/50]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< int64_t, N > | a,
|  | Vec128< int64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [44/50]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< int8_t, N > | a,
|  | Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [45/50]

template<typename T , size_t N, HWY_IF_LE32(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< T, N > | a,
|  | Vec128< T, N > | b
| ) |  |

References InterleaveLower(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [46/50]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< uint16_t, N > | a,
|  | Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [47/50]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< uint32_t, N > | a,
|  | Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [48/50]

template<size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< uint64_t, N > | a,
|  | Vec128< uint64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [49/50]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec128< uint8_t, N > | a,
|  | Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveLower() [50/50]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::InterleaveLower | ( | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References InterleaveLower(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## InterleaveUpper() [1/7]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::InterleaveUpper | ( | const D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, IfThenElse(), hwy::HWY_NAMESPACE::detail::Iota0(), hwy::HWY_NAMESPACE::detail::LanesPerBlock(), hwy::HWY_NAMESPACE::detail::OffsetsOf128BitBlocks(), and TableLookupLanes().

## InterleaveUpper() [2/7]

template<class D , class V = VFromD<D>, hwy::EnableIf< detail::IsFull(D())> * = nullptr>

HWY_API V hwy::HWY_NAMESPACE::InterleaveUpper | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References BitCast(), and d.

## InterleaveUpper() [3/7]

template<typename T , class V = Vec128<T>>

HWY_API V hwy::HWY_NAMESPACE::InterleaveUpper | ( | Full128< T > | ,
|  | V | a,
|  | V | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::InterleaveUpper().

## InterleaveUpper() [4/7]

template<typename T , class V = Vec256<T>>

HWY_API V hwy::HWY_NAMESPACE::InterleaveUpper | ( | Full256< T > | d,
|  | V | a,
|  | V | b
| ) |  |

References d, InterleaveUpper(), and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## InterleaveUpper() [5/7]

template<typename T , class V = Vec512<T>>

HWY_API V hwy::HWY_NAMESPACE::InterleaveUpper | ( | Full512< T > | ,
|  | V | a,
|  | V | b
| ) |  |

## InterleaveUpper() [6/7]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::InterleaveUpper | ( | Simd< T, N, 0 > | ,
|  | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## InterleaveUpper() [7/7]

template<typename T , size_t N, HWY_IF_GE64(T, N) , class V = Vec128<T, N>>

HWY_API V hwy::HWY_NAMESPACE::InterleaveUpper | ( | Simd< T, N, 0 > | d,
|  | V | a,
|  | V | b
| ) |  |

Referenced by ConcatUpperUpper(), InterleaveUpper(), LoadInterleaved4(), StoreInterleaved2(), StoreInterleaved4(), StoreInterleaved4(), ZipUpper(), and ZipUpper().

## Iota() [1/9]

template<class D , HWY_IF_FLOAT_D(D) >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::Iota | ( | const D | d,
|  | TFromD< D > | first
| ) |  |

References ConvertTo(), d, and Iota().

## Iota() [2/9]

template<typename T , typename T2 >

Vec256< T > hwy::HWY_NAMESPACE::Iota | ( | const Full256< T > | d,
|  | const T2 | first
| ) |  |

References hwy::AddWithWraparound(), d, Iota(), Lanes(), and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Iota() [3/9]

template<typename T , typename T2 >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Iota | ( | const Full256< T > | d,
|  | const T2 | first
| ) |  |

References hwy::AddWithWraparound(), d, HWY_ALIGN, Iota(), and Load().

## Iota() [4/9]

template<typename T , typename T2 >

Vec512< T > hwy::HWY_NAMESPACE::Iota | ( | const Full512< T > | d,
|  | const T2 | first
| ) |  |

References hwy::AddWithWraparound(), d, HWY_ALIGN, Iota(), and Load().

## Iota() [5/9]

template<typename T , size_t N, typename T2 >

Vec128< T, N > hwy::HWY_NAMESPACE::Iota | ( | const Simd< T, N, 0 > | d,
|  | const T2 | first
| ) |  |

References hwy::AddWithWraparound(), d, HWY_ALIGN, Iota(), and Load().

Referenced by Broadcast(), Compress(), CompressNot(), FirstN(), FirstN(), Generate(), InsertLane(), Iota(), Iota(), Iota(), Iota(), LoadMaskBits(), OddEvenBlocks(), Reverse4(), Reverse8(), SwapAdjacentBlocks(), TableLookupBytes(), TableLookupLanes(), and TableLookupLanes().

## Iota() [6/9]

template<typename T , size_t N, typename T2 , HWY_IF_LE128(T, N) >

Vec128< T, N > hwy::HWY_NAMESPACE::Iota | ( | const Simd< T, N, 0 > | d,
|  | const T2 | first
| ) |  |

References hwy::AddWithWraparound(), d, HWY_ALIGN, and Load().

## Iota() [7/9]

template<typename T , size_t N, typename T2 , HWY_IF_LE128(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Iota | ( | const Simd< T, N, 0 > | d,
|  | const T2 | first
| ) |  |

References hwy::AddWithWraparound(), d, HWY_ALIGN, and Load().

## Iota() [8/9]

template<typename T , size_t N, typename T2 >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Iota | ( | const Simd< T, N, 0 > | ,
|  | T2 | first
| ) |  |

References hwy::AddWithWraparound(), N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Iota() [9/9]

template<typename T , typename T2 >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Iota | ( | const Sisd< T > | ,
|  | const T2 | first
| ) |  |

## IsFinite() [1/13]

template<class V >

HWY_API svbool_t hwy::HWY_NAMESPACE::IsFinite | ( | const V | v | ) |

References BitCast(), d, RebindMask(), ShiftRight(), and v.

## IsFinite() [2/13]

template<class V , class D = DFromV<V>>

HWY_API MFromD< D > hwy::HWY_NAMESPACE::IsFinite | ( | const V | v | ) |

References BitCast(), d, RebindMask(), ShiftRight(), and v.

## IsFinite() [3/13]

template<size_t N>

HWY_API Mask128< double, N > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec128< double, N > | v | ) |

References Not(), and v.

## IsFinite() [4/13]

template<size_t N>

HWY_API Mask128< float, N > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec128< float, N > | v | ) |

References Not(), and v.

## IsFinite() [5/13]

template<typename T , size_t N, HWY_IF_FLOAT(T) >

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec128< T, N > | v | ) |

References BitCast(), d, IsFinite(), RebindMask(), Set(), ShiftRight(), and v.

Referenced by IsFinite().

## IsFinite() [6/13]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec128< T, N > | v | ) |

References BitCast(), d, RebindMask(), Set(), ShiftRight(), and v.

## IsFinite() [7/13]

HWY_API Mask1< double > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec1< double > | v | ) |

References BitCast(), hwy::HWY_NAMESPACE::Mask1< T >::FromBool(), hwy::HWY_NAMESPACE::Vec1< T >::raw, and v.

## IsFinite() [8/13]

HWY_API Mask1< float > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec1< float > | v | ) |

References BitCast(), hwy::HWY_NAMESPACE::Mask1< T >::FromBool(), hwy::HWY_NAMESPACE::Vec1< T >::raw, and v.

## IsFinite() [9/13]

HWY_API Mask256< double > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec256< double > | v | ) |

References Not(), and v.

## IsFinite() [10/13]

HWY_API Mask256< float > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec256< float > | v | ) |

References Not(), and v.

## IsFinite() [11/13]

template<typename T , HWY_IF_FLOAT(T) >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec256< T > | v | ) |

References BitCast(), d, RebindMask(), Set(), ShiftRight(), and v.

## IsFinite() [12/13]

HWY_API Mask512< double > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec512< double > | v | ) |

References Not(), and v.

## IsFinite() [13/13]

HWY_API Mask512< float > hwy::HWY_NAMESPACE::IsFinite | ( | const Vec512< float > | v | ) |

References Not(), and v.

## IsInf() [1/13]

template<class V >

HWY_API svbool_t hwy::HWY_NAMESPACE::IsInf | ( | const V | v | ) |

References BitCast(), d, RebindMask(), and v.

## IsInf() [2/13]

template<class V , class D = DFromV<V>>

HWY_API MFromD< D > hwy::HWY_NAMESPACE::IsInf | ( | const V | v | ) |

References BitCast(), d, RebindMask(), and v.

## IsInf() [3/13]

template<size_t N>

HWY_API Mask128< double, N > hwy::HWY_NAMESPACE::IsInf | ( | const Vec128< double, N > | v | ) |

References v.

## IsInf() [4/13]

template<size_t N>

HWY_API Mask128< float, N > hwy::HWY_NAMESPACE::IsInf | ( | const Vec128< float, N > | v | ) |

References v.

## IsInf() [5/13]

template<typename T , size_t N, HWY_IF_FLOAT(T) >

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::IsInf | ( | const Vec128< T, N > | v | ) |

References BitCast(), d, IsInf(), RebindMask(), Set(), and v.

Referenced by ConvertTo(), DemoteTo(), DemoteTo(), and IsInf().

## IsInf() [6/13]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::IsInf | ( | const Vec128< T, N > | v | ) |

References BitCast(), d, RebindMask(), Set(), and v.

## IsInf() [7/13]

HWY_API Mask1< double > hwy::HWY_NAMESPACE::IsInf | ( | const Vec1< double > | v | ) |

References BitCast(), d, RebindMask(), Set(), and v.

## IsInf() [8/13]

HWY_API Mask1< float > hwy::HWY_NAMESPACE::IsInf | ( | const Vec1< float > | v | ) |

References BitCast(), d, RebindMask(), Set(), and v.

## IsInf() [9/13]

HWY_API Mask256< double > hwy::HWY_NAMESPACE::IsInf | ( | const Vec256< double > | v | ) |

References v.

## IsInf() [10/13]

HWY_API Mask256< float > hwy::HWY_NAMESPACE::IsInf | ( | const Vec256< float > | v | ) |

References v.

## IsInf() [11/13]

template<typename T , HWY_IF_FLOAT(T) >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::IsInf | ( | const Vec256< T > | v | ) |

References BitCast(), d, RebindMask(), Set(), and v.

## IsInf() [12/13]

HWY_API Mask512< double > hwy::HWY_NAMESPACE::IsInf | ( | const Vec512< double > | v | ) |

References v.

## IsInf() [13/13]

HWY_API Mask512< float > hwy::HWY_NAMESPACE::IsInf | ( | const Vec512< float > | v | ) |

References v.

## IsNaN() [1/11]

template<class V >

HWY_API svbool_t hwy::HWY_NAMESPACE::IsNaN | ( | const V | v | ) |

References v.

## IsNaN() [2/11]

template<class V >

HWY_API MFromD< DFromV< V > > hwy::HWY_NAMESPACE::IsNaN | ( | const V | v | ) |

References v.

## IsNaN() [3/11]

template<size_t N>

HWY_API Mask128< double, N > hwy::HWY_NAMESPACE::IsNaN | ( | const Vec128< double, N > | v | ) |

References v.

## IsNaN() [4/11]

template<size_t N>

HWY_API Mask128< float, N > hwy::HWY_NAMESPACE::IsNaN | ( | const Vec128< float, N > | v | ) |

References v.

## IsNaN() [5/11]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::IsNaN | ( | const Vec128< T, N > | v | ) |

References IsNaN(), and v.

Referenced by IsNaN().

## IsNaN() [6/11]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::IsNaN | ( | const Vec1< T > | v | ) |

References hwy::CopySameSize(), hwy::HWY_NAMESPACE::Mask1< T >::FromBool(), and v.

## IsNaN() [7/11]

HWY_API Mask256< double > hwy::HWY_NAMESPACE::IsNaN | ( | const Vec256< double > | v | ) |

References v.

## IsNaN() [8/11]

HWY_API Mask256< float > hwy::HWY_NAMESPACE::IsNaN | ( | const Vec256< float > | v | ) |

References v.

## IsNaN() [9/11]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::IsNaN | ( | const Vec256< T > | v | ) |

References v.

## IsNaN() [10/11]

HWY_API Mask512< double > hwy::HWY_NAMESPACE::IsNaN | ( | const Vec512< double > | v | ) |

References v.

## IsNaN() [11/11]

HWY_API Mask512< float > hwy::HWY_NAMESPACE::IsNaN | ( | const Vec512< float > | v | ) |

References v.

## Lanes() [1/3]

template<size_t N, int kPow2>

HWY_API size_t hwy::HWY_NAMESPACE::Lanes | ( | Simd< bfloat16_t, N, kPow2 > |  | ) |

References Lanes().

## Lanes() [2/3]

template<typename T , size_t N, int kPow2>

HWY_API constexpr size_t hwy::HWY_NAMESPACE::Lanes | ( | Simd< T, N, kPow2 > |  | ) |

constexpr

References HWY_MIN, N, and hwy::HWY_NAMESPACE::detail::ScaleByPower().

Referenced by AllTrue(), AssertMaskEqual(), AssertVecEqual(), AssertVecEqual(), Combine(), CompressBitsStore(), hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), ConcatEven(), ConcatEven(), ConcatLowerUpper(), ConcatOdd(), ConcatOdd(), ConcatUpperLower(), Copy(), CopyIf(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), hwy::HWY_NAMESPACE::detail::ForeachCappedR< T, kMul, kMinArg, Test >::Do(), ExtractLane(), Fill(), Find(), FindIf(), Generate(), GenerateInput(), hwy::HWY_NAMESPACE::Xorshift128Plus::GenerateSeeds(), grk::HWY_NAMESPACE::hwy_decompress_v_final_memcpy_53(), grk::HWY_NAMESPACE::hwy_decompress_v_parity_even_mcols_53(), grk::HWY_NAMESPACE::hwy_decompress_v_parity_odd_mcols_53(), grk::HWY_NAMESPACE::hwy_num_lanes(), IndicesFromVec(), InsertLane(), Iota(), Lanes(), hwy::HWY_NAMESPACE::detail::LanesPerBlock(), Load(), hwy::HWY_NAMESPACE::detail::MakeMask(), hwy::HWY_NAMESPACE::detail::MaskLowerHalf(), MaskTrue(), skeleton::HWY_NAMESPACE::MulAddLoop(), hwy::HWY_NAMESPACE::ForExtendableVectors< Test, kPow2 >::operator()(), hwy::HWY_NAMESPACE::ForPromoteVectors< Test, kPow2 >::operator()(), hwy::HWY_NAMESPACE::Pack16< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 8 >::Pack(), Print(), Replace(), ReplaceIf(), Reverse(), Reverse(), Sort(), Store(), StoreMaskBits(), TableLookupBytes(), Transform(), grk::HWY_NAMESPACE::DecompressDcShiftIrrev::transform(), grk::HWY_NAMESPACE::DecompressDcShiftRev::transform(), grk::HWY_NAMESPACE::DecompressRev::transform(), grk::HWY_NAMESPACE::DecompressIrrev::transform(), grk::HWY_NAMESPACE::CompressRev::transform(), grk::HWY_NAMESPACE::CompressIrrev::transform(), Transform1(), Transform2(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), hwy::HWY_NAMESPACE::Pack16< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 8 >::Unpack(), UpperHalf(), and UpperHalf().

## Lanes() [3/3]

template<typename T , size_t N, int kPow2>

HWY_INLINE HWY_MAYBE_UNUSED size_t hwy::HWY_NAMESPACE::Lanes | ( | Simd< T, N, kPow2 > |  | ) |

References N.

## Load() [1/18]

HWY_API Vec128< double > hwy::HWY_NAMESPACE::Load | ( | Full128< double > | ,
|  | const double *HWY_RESTRICT | aligned
| ) |  |

## Load() [2/18]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::Load | ( | Full128< float > | ,
|  | const float *HWY_RESTRICT | aligned
| ) |  |

## Load() [3/18]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Load | ( | Full128< T > | ,
|  | const T *HWY_RESTRICT | aligned
| ) |  |

## Load() [4/18]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Load | ( | Full256< double > | ,
|  | const double *HWY_RESTRICT | aligned
| ) |  |

## Load() [5/18]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Load | ( | Full256< float > | ,
|  | const float *HWY_RESTRICT | aligned
| ) |  |

## Load() [6/18]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Load | ( | Full256< T > | d,
|  | const T *HWY_RESTRICT | aligned
| ) |  |

References d, Lanes(), Load(), and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Load() [7/18]

HWY_API Vec128< float, 1 > hwy::HWY_NAMESPACE::Load | ( | Full32< float > | ,
|  | const float *HWY_RESTRICT | p
| ) |  |

References v.

## Load() [8/18]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Load | ( | Full512< double > | ,
|  | const double *HWY_RESTRICT | aligned
| ) |  |

## Load() [9/18]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Load | ( | Full512< float > | ,
|  | const float *HWY_RESTRICT | aligned
| ) |  |

## Load() [10/18]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Load | ( | Full512< T > | ,
|  | const T *HWY_RESTRICT | aligned
| ) |  |

## Load() [11/18]

HWY_API Vec64< double > hwy::HWY_NAMESPACE::Load | ( | Full64< double > | ,
|  | const double *HWY_RESTRICT | p
| ) |  |

References v.

## Load() [12/18]

HWY_API Vec128< float, 2 > hwy::HWY_NAMESPACE::Load | ( | Full64< float > | ,
|  | const float *HWY_RESTRICT | p
| ) |  |

References v.

## Load() [13/18]

template<typename T >

HWY_API Vec64< T > hwy::HWY_NAMESPACE::Load | ( | Full64< T > | ,
|  | const T *HWY_RESTRICT | p
| ) |  |

References v.

## Load() [14/18]

template<size_t N, int kPow2>

HWY_API svuint16_t hwy::HWY_NAMESPACE::Load | ( | Simd< bfloat16_t, N, kPow2 > | d,
|  | const bfloat16_t *HWY_RESTRICT | p
| ) |  |

References d, HWY_RESTRICT, and Load().

## Load() [15/18]

template<size_t N, int kPow2>

HWY_API VFromD< Simd< uint16_t, N, kPow2 > > hwy::HWY_NAMESPACE::Load | ( | Simd< bfloat16_t, N, kPow2 > | d,
|  | const bfloat16_t *HWY_RESTRICT | p
| ) |  |

References d, HWY_RESTRICT, and Load().

## Load() [16/18]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Load | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | p
| ) |  |

References d, Load(), and LoadU().

Referenced by AssertMaskEqual(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), CLMulLower(), CLMulUpper(), Compress(), Compress(), Compress(), CompressBits(), CompressBitsStore(), CompressBlendedStore(), CompressNot(), CompressNot(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), GatherIndex(), GatherIndex(), GatherIndex(), GatherOffset(), GatherOffset(), GatherOffset(), GenerateInput(), grk::HWY_NAMESPACE::hwy_decompress_v_final_memcpy_53(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), IndicesFromVec(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), Iota(), Iota(), Iota(), Load(), Load(), Load(), hwy::HWY_NAMESPACE::detail::Load8Bytes(), LoadDup128(), LoadDup128(), LoadDup128(), LoadInterleaved2(), LoadInterleaved3(), LoadInterleaved4(), hwy::HWY_NAMESPACE::detail::LoadMaskBits(), LoadU(), LoadU(), LoadU(), LoadU(), hwy::HWY_NAMESPACE::detail::LookupAndConcatHalves(), hwy::HWY_NAMESPACE::detail::LookupAndConcatQuarters(), MaskedLoad(), MaskedLoad(), MaskedLoad(), skeleton::HWY_NAMESPACE::MulAddLoop(), OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), Reverse(), Reverse4(), Reverse8(), hwy::HWY_NAMESPACE::detail::Shuffle1230(), hwy::HWY_NAMESPACE::detail::Shuffle2301(), hwy::HWY_NAMESPACE::detail::Shuffle3012(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), grk::HWY_NAMESPACE::DecompressDcShiftIrrev::transform(), grk::HWY_NAMESPACE::DecompressDcShiftRev::transform(), grk::HWY_NAMESPACE::DecompressRev::transform(), grk::HWY_NAMESPACE::DecompressIrrev::transform(), grk::HWY_NAMESPACE::CompressRev::transform(), grk::HWY_NAMESPACE::CompressIrrev::transform(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), and TruncateTo().

## Load() [17/18]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Load | ( | Simd< T, N, 0 > | ,
|  | const T *HWY_RESTRICT | p
| ) |  |

References v.

## Load() [18/18]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Load | ( | Sisd< T > | ,
|  | const T *HWY_RESTRICT | aligned
| ) |  |

References hwy::CopySameSize().

## LoadDup128() [1/9]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::LoadDup128 | ( | Full256< double > | ,
|  | const double *const HWY_RESTRICT | p
| ) |  |

References LoadU(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## LoadDup128() [2/9]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::LoadDup128 | ( | Full256< float > | ,
|  | const float *const HWY_RESTRICT | p
| ) |  |

References LoadU(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## LoadDup128() [3/9]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::LoadDup128 | ( | Full256< T > | d,
|  | const T *HWY_RESTRICT | p
| ) |  |

References d, Load(), and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## LoadDup128() [4/9]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::LoadDup128 | ( | Full512< double > | ,
|  | const double *const HWY_RESTRICT | p
| ) |  |

## LoadDup128() [5/9]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::LoadDup128 | ( | Full512< float > | ,
|  | const float *const HWY_RESTRICT | p
| ) |  |

## LoadDup128() [6/9]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::LoadDup128 | ( | Full512< T > | ,
|  | const T *const HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadDup128() [7/9]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::LoadDup128 | ( | Simd< T, N, 0 > | d,
|  | const T *const HWY_RESTRICT | p
| ) |  |

References d, LoadDup128(), and LoadU().

Referenced by DemoteTo(), DemoteTo(), LoadDup128(), LoadInterleaved3(), hwy::HWY_NAMESPACE::detail::LoadMaskBits(), hwy::HWY_NAMESPACE::detail::OddEven(), PopulationCount(), StoreInterleaved3(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), and U8FromU32().

## LoadDup128() [8/9]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::LoadDup128 | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | aligned
| ) |  |

References d, and Load().

## LoadDup128() [9/9]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::LoadDup128 | ( | Sisd< T > | d,
|  | const T *HWY_RESTRICT | aligned
| ) |  |

References d, and Load().

## LoadInterleaved2() [1/5]

template<typename T , class V >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved2 | ( | Simd< T, 1, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | V & | v0,
|  | V & | v1
| ) |  |

References d, and LoadU().

## LoadInterleaved2() [2/5]

template<typename T , size_t N, class V >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved2 | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | V & | v0,
|  | V & | v1
| ) |  |

References ConcatEven(), ConcatOdd(), d, LoadU(), and N.

## LoadInterleaved2() [3/5]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved2 | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | Vec128< T, N > & | v0,
|  | Vec128< T, N > & | v1
| ) |  |

References d, Load(), and N.

## LoadInterleaved2() [4/5]

template<typename T , size_t N, HWY_IF_LOAD_INT(T, N) >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved2 | ( | Simd< T, N, 0 > | ,
|  | const T *HWY_RESTRICT | unaligned,
|  | Vec128< T, N > & | v0,
|  | Vec128< T, N > & | v1
| ) |  |

References LoadInterleaved2().

Referenced by LoadInterleaved2().

## LoadInterleaved2() [5/5]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved2 | ( | Sisd< T > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | Vec1< T > & | v0,
|  | Vec1< T > & | v1
| ) |  |

References d, and LoadU().

## LoadInterleaved3() [1/6]

template<typename T , class V >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved3 | ( | Simd< T, 1, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | V & | v0,
|  | V & | v1,
|  | V & | v2
| ) |  |

References d, and LoadU().

## LoadInterleaved3() [2/6]

template<typename T , size_t N, class V , HWY_IF_LANES_PER_BLOCK(T, N, 16) >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved3 | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | V & | v0,
|  | V & | v1,
|  | V & | v2
| ) |  |

References BitCast(), d, LoadDup128(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), TableLookupBytesOr0(), and Xor3().

## LoadInterleaved3() [3/6]

template<typename T , size_t N, class V , HWY_IF_LANE_SIZE(T, 1) , HWY_IF_LANES_PER_BLOCK(T, N, 8) >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved3 | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | V & | v0,
|  | V & | v1,
|  | V & | v2
| ) |  |

References BitCast(), d, LoadDup128(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), TableLookupBytesOr0(), and Xor3().

## LoadInterleaved3() [4/6]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved3 | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | Vec128< T, N > & | v0,
|  | Vec128< T, N > & | v1,
|  | Vec128< T, N > & | v2
| ) |  |

References d, Load(), and N.

## LoadInterleaved3() [5/6]

template<typename T , size_t N, HWY_IF_LOAD_INT(T, N) >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved3 | ( | Simd< T, N, 0 > | ,
|  | const T *HWY_RESTRICT | unaligned,
|  | Vec128< T, N > & | v0,
|  | Vec128< T, N > & | v1,
|  | Vec128< T, N > & | v2
| ) |  |

References LoadInterleaved3().

Referenced by LoadInterleaved3().

## LoadInterleaved3() [6/6]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved3 | ( | Sisd< T > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | Vec1< T > & | v0,
|  | Vec1< T > & | v1,
|  | Vec1< T > & | v2
| ) |  |

References d, and LoadU().

## LoadInterleaved4() [1/5]

template<typename T , class V >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved4 | ( | Simd< T, 1, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | V & | v0,
|  | V & | v1,
|  | V & | v2,
|  | V & | v3
| ) |  |

References d, and LoadU().

## LoadInterleaved4() [2/5]

template<typename T , size_t N, class V , HWY_IF_LANES_PER_BLOCK(T, N, 16) >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved4 | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | V & | v0,
|  | V & | v1,
|  | V & | v2,
|  | V & | v3
| ) |  |

References BitCast(), d, InterleaveLower(), InterleaveUpper(), and hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4().

## LoadInterleaved4() [3/5]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved4 | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | Vec128< T, N > & | v0,
|  | Vec128< T, N > & | v1,
|  | Vec128< T, N > & | v2,
|  | Vec128< T, N > & | v3
| ) |  |

References d, Load(), and N.

## LoadInterleaved4() [4/5]

template<typename T , size_t N, HWY_IF_LOAD_INT(T, N) >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved4 | ( | Simd< T, N, 0 > | ,
|  | const T *HWY_RESTRICT | unaligned,
|  | Vec128< T, N > & | v0,
|  | Vec128< T, N > & | v1,
|  | Vec128< T, N > & | v2,
|  | Vec128< T, N > & | v3
| ) |  |

References LoadInterleaved4().

Referenced by LoadInterleaved4().

## LoadInterleaved4() [5/5]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::LoadInterleaved4 | ( | Sisd< T > | d,
|  | const T *HWY_RESTRICT | unaligned,
|  | Vec1< T > & | v0,
|  | Vec1< T > & | v1,
|  | Vec1< T > & | v2,
|  | Vec1< T > & | v3
| ) |  |

References d, and LoadU().

## LoadMaskBits() [1/7]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::LoadMaskBits | ( | const Full256< T > | ,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References N.

## LoadMaskBits() [2/7]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::LoadMaskBits | ( | const Full512< T > | ,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References hwy::CopyBytes(), and hwy::HWY_NAMESPACE::Mask512< T >::raw.

## LoadMaskBits() [3/7]

template<class D , HWY_IF_LANE_SIZE_D(D, 1) >

HWY_INLINE svbool_t hwy::HWY_NAMESPACE::LoadMaskBits | ( | D | d,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References BitCast(), d, Iota(), and TestBit().

## LoadMaskBits() [4/7]

template<typename T , HWY_IF_LANE_SIZE_ONE_OF(T, 0x110) >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::LoadMaskBits | ( | Full256< T > | d,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References d, LoadMaskBits(), and hwy::HWY_NAMESPACE::Mask256< T >::m0.

## LoadMaskBits() [5/7]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::LoadMaskBits | ( | Simd< T, N, 0 > | d,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References hwy::CopyBytes(), d, and N.

Referenced by CompressBits(), CompressBits(), CompressBits(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), and LoadMaskBits().

## LoadMaskBits() [6/7]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::LoadMaskBits | ( | Simd< T, N, 0 > | ,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), and N.

## LoadMaskBits() [7/7]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::LoadMaskBits | ( | Sisd< T > | ,
|  | const uint8_t *HWY_RESTRICT | bits
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::FromBool().

## LoadU() [1/41]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::LoadU | ( | D | d,
|  | const TFromD< D > *HWY_RESTRICT | p
| ) |  |

References d, and Load().

## LoadU() [2/41]

HWY_API Vec128< double > hwy::HWY_NAMESPACE::LoadU | ( | Full128< double > | ,
|  | const double *HWY_RESTRICT | p
| ) |  |

## LoadU() [3/41]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::LoadU | ( | Full128< float > | ,
|  | const float *HWY_RESTRICT | unaligned
| ) |  |

References LoadU().

## LoadU() [4/41]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::LoadU | ( | Full128< int16_t > | ,
|  | const int16_t *HWY_RESTRICT | unaligned
| ) |  |

References LoadU().

## LoadU() [5/41]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::LoadU | ( | Full128< int32_t > | ,
|  | const int32_t *HWY_RESTRICT | unaligned
| ) |  |

References LoadU().

## LoadU() [6/41]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::LoadU | ( | Full128< int64_t > | ,
|  | const int64_t *HWY_RESTRICT | unaligned
| ) |  |

References LoadU().

## LoadU() [7/41]

HWY_API Vec128< int8_t > hwy::HWY_NAMESPACE::LoadU | ( | Full128< int8_t > | ,
|  | const int8_t *HWY_RESTRICT | unaligned
| ) |  |

References LoadU().

## LoadU() [8/41]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::LoadU | ( | Full128< T > | ,
|  | const T *HWY_RESTRICT | p
| ) |  |

## LoadU() [9/41]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::LoadU | ( | Full128< uint16_t > | ,
|  | const uint16_t *HWY_RESTRICT | unaligned
| ) |  |

References LoadU().

## LoadU() [10/41]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::LoadU | ( | Full128< uint32_t > | ,
|  | const uint32_t *HWY_RESTRICT | unaligned
| ) |  |

References LoadU().

## LoadU() [11/41]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::LoadU | ( | Full128< uint64_t > | ,
|  | const uint64_t *HWY_RESTRICT | unaligned
| ) |  |

References LoadU().

## LoadU() [12/41]

HWY_API Vec128< uint8_t > hwy::HWY_NAMESPACE::LoadU | ( | Full128< uint8_t > | ,
|  | const uint8_t *HWY_RESTRICT | unaligned
| ) |  |

References LoadU().

Referenced by BlendedStore(), BlendedStore(), CompressBitsStore(), hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), Copy(), CopyIf(), Find(), FindIf(), grk::HWY_NAMESPACE::hwy_decompress_v_parity_even_mcols_53(), grk::HWY_NAMESPACE::hwy_decompress_v_parity_odd_mcols_53(), Load(), LoadDup128(), LoadDup128(), LoadDup128(), LoadDup128(), LoadInterleaved2(), LoadInterleaved2(), LoadInterleaved2(), LoadInterleaved3(), LoadInterleaved3(), LoadInterleaved4(), LoadInterleaved4(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), hwy::HWY_NAMESPACE::Pack16< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 8 >::Pack(), Replace(), ReplaceIf(), SetTableIndices(), SetTableIndices(), SetTableIndices(), SetTableIndices(), SetTableIndices(), Transform(), Transform1(), Transform2(), hwy::HWY_NAMESPACE::Pack16< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Unpack(), and hwy::HWY_NAMESPACE::Pack8< 8 >::Unpack().

## LoadU() [13/41]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::LoadU | ( | Full256< double > | ,
|  | const double *HWY_RESTRICT | p
| ) |  |

## LoadU() [14/41]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::LoadU | ( | Full256< float > | ,
|  | const float *HWY_RESTRICT | p
| ) |  |

## LoadU() [15/41]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::LoadU | ( | Full256< T > | d,
|  | const T *HWY_RESTRICT | p
| ) |  |

References d, and Load().

## LoadU() [16/41]

HWY_API Vec32< float > hwy::HWY_NAMESPACE::LoadU | ( | Full32< float > | ,
|  | const float *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [17/41]

HWY_API Vec32< int32_t > hwy::HWY_NAMESPACE::LoadU | ( | Full32< int32_t > | ,
|  | const int32_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [18/41]

template<typename T , HWY_IF_LANE_SIZE_ONE_OF(T, 0x6) >

HWY_API Vec32< T > hwy::HWY_NAMESPACE::LoadU | ( | Full32< T > | d,
|  | const T *HWY_RESTRICT | p
| ) |  |

References BitCast(), d, and LoadU().

## LoadU() [19/41]

HWY_API Vec32< uint32_t > hwy::HWY_NAMESPACE::LoadU | ( | Full32< uint32_t > | ,
|  | const uint32_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [20/41]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::LoadU | ( | Full512< double > | ,
|  | const double *HWY_RESTRICT | p
| ) |  |

## LoadU() [21/41]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::LoadU | ( | Full512< float > | ,
|  | const float *HWY_RESTRICT | p
| ) |  |

## LoadU() [22/41]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::LoadU | ( | Full512< T > | ,
|  | const T *HWY_RESTRICT | p
| ) |  |

## LoadU() [23/41]

HWY_API Vec64< float > hwy::HWY_NAMESPACE::LoadU | ( | Full64< float > | ,
|  | const float *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [24/41]

HWY_API Vec64< int16_t > hwy::HWY_NAMESPACE::LoadU | ( | Full64< int16_t > | ,
|  | const int16_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [25/41]

HWY_API Vec64< int32_t > hwy::HWY_NAMESPACE::LoadU | ( | Full64< int32_t > | ,
|  | const int32_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [26/41]

HWY_API Vec64< int64_t > hwy::HWY_NAMESPACE::LoadU | ( | Full64< int64_t > | ,
|  | const int64_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [27/41]

HWY_API Vec64< int8_t > hwy::HWY_NAMESPACE::LoadU | ( | Full64< int8_t > | ,
|  | const int8_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [28/41]

HWY_API Vec64< uint16_t > hwy::HWY_NAMESPACE::LoadU | ( | Full64< uint16_t > | ,
|  | const uint16_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [29/41]

HWY_API Vec64< uint32_t > hwy::HWY_NAMESPACE::LoadU | ( | Full64< uint32_t > | ,
|  | const uint32_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [30/41]

HWY_API Vec64< uint64_t > hwy::HWY_NAMESPACE::LoadU | ( | Full64< uint64_t > | ,
|  | const uint64_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [31/41]

HWY_API Vec64< uint8_t > hwy::HWY_NAMESPACE::LoadU | ( | Full64< uint8_t > | ,
|  | const uint8_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [32/41]

template<size_t N>

HWY_API Vec128< bfloat16_t, N > hwy::HWY_NAMESPACE::LoadU | ( | Simd< bfloat16_t, N, 0 > | d,
|  | const bfloat16_t *HWY_RESTRICT | p
| ) |  |

References d, and LoadU().

## LoadU() [33/41]

template<size_t N>

HWY_API Vec128< float16_t, N > hwy::HWY_NAMESPACE::LoadU | ( | Simd< float16_t, N, 0 > | d,
|  | const float16_t *HWY_RESTRICT | p
| ) |  |

References d, and LoadU().

## LoadU() [34/41]

HWY_API Vec128< int16_t, 1 > hwy::HWY_NAMESPACE::LoadU | ( | Simd< int16_t, 1, 0 > | ,
|  | const int16_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [35/41]

HWY_API Vec128< int8_t, 1 > hwy::HWY_NAMESPACE::LoadU | ( | Simd< int8_t, 1, 0 > | ,
|  | const int8_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [36/41]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T, 2 > hwy::HWY_NAMESPACE::LoadU | ( | Simd< T, 2, 0 > | d,
|  | const T *HWY_RESTRICT | p
| ) |  |

References BitCast(), d, and LoadU().

## LoadU() [37/41]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::LoadU | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | p
| ) |  |

References d, and Load().

## LoadU() [38/41]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::LoadU | ( | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | p
| ) |  |

References d, and Load().

## LoadU() [39/41]

HWY_API Vec128< uint16_t, 1 > hwy::HWY_NAMESPACE::LoadU | ( | Simd< uint16_t, 1, 0 > | ,
|  | const uint16_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [40/41]

HWY_API Vec128< uint8_t, 1 > hwy::HWY_NAMESPACE::LoadU | ( | Simd< uint8_t, 1, 0 > | ,
|  | const uint8_t *HWY_RESTRICT | p
| ) |  |

References LoadU().

## LoadU() [41/41]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::LoadU | ( | Sisd< T > | d,
|  | const T *HWY_RESTRICT | p
| ) |  |

References d, and Load().

## Log()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Log | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::log(x).

Valid Lane Types: float32, float64 Max Error: ULP = 4 Valid Range: float32(0, +FLT_MAX], float64(0, +DBL_MAX]

Returns
  natural logarithm of 'x'

References d, and hwy::HWY_NAMESPACE::impl::Log().

Referenced by CallLog(), Log10(), and Log2().

## Log10()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Log10 | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::log10(x).

Valid Lane Types: float32, float64 Max Error: ULP = 2 Valid Range: float32(0, +FLT_MAX], float64(0, +DBL_MAX]

Returns
  base 10 logarithm of 'x'

References d, Log(), and Set().

Referenced by CallLog10().

## Log1p()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Log1p | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::log1p(x).

Valid Lane Types: float32, float64 Max Error: ULP = 2 Valid Range: float32[0, +FLT_MAX], float64[0, +DBL_MAX]

Returns
  log(1 + x)

References d, IfThenElse(), IfThenZeroElse(), and Set().

Referenced by Atanh(), and CallLog1p().

## Log2()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Log2 | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::log2(x).

Valid Lane Types: float32, float64 Max Error: ULP = 2 Valid Range: float32(0, +FLT_MAX], float64(0, +DBL_MAX]

Returns
  base 2 logarithm of 'x'

References d, Log(), and Set().

Referenced by CallLog2().

## LowerHalf() [1/28]

template<class DH , class V , hwy::EnableIf<!detail::IsSupportedLMUL(DH())> * = nullptr>

HWY_API V hwy::HWY_NAMESPACE::LowerHalf | ( | const DH | ,
|  | const V | v
| ) |  |

References v.

## LowerHalf() [2/28]

template<class DH , hwy::EnableIf< detail::IsSupportedLMUL(DH())> * = nullptr>

HWY_API VFromD< DH > hwy::HWY_NAMESPACE::LowerHalf | ( | const DH | ,
|  | const VFromD< Twice< DH > > | v
| ) |  |

References v.

## LowerHalf() [3/28]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::LowerHalf | ( | const V | v | ) |

References v.

## LowerHalf() [4/28]

template<class V >

HWY_API VFromD< Half< DFromV< V > > > hwy::HWY_NAMESPACE::LowerHalf | ( | const V | v | ) |

References LowerHalf(), and v.

## LowerHalf() [5/28]

HWY_API Vec64< bfloat16_t > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< bfloat16_t > | v | ) |

References BitCast(), LowerHalf(), and v.

## LowerHalf() [6/28]

HWY_API Vec64< float > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< float > | v | ) |

References LowerHalf(), and v.

## LowerHalf() [7/28]

HWY_API Vec64< int16_t > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< int16_t > | v | ) |

References LowerHalf(), and v.

## LowerHalf() [8/28]

HWY_API Vec64< int32_t > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< int32_t > | v | ) |

References LowerHalf(), and v.

## LowerHalf() [9/28]

HWY_API Vec64< int64_t > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< int64_t > | v | ) |

References LowerHalf(), and v.

## LowerHalf() [10/28]

HWY_API Vec64< int8_t > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< int8_t > | v | ) |

References LowerHalf(), and v.

## LowerHalf() [11/28]

template<typename T , size_t N, HWY_IF_LE64(uint8_t, N) >

HWY_API Vec128< T, N/2 > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< T, N > | v | ) |

References LowerHalf(), N, and v.

Referenced by AESLastRound(), AESLastRound(), AESRound(), AESRound(), CLMulLower(), CLMulUpper(), ConcatLowerLower(), ConcatLowerLower(), ConcatUpperLower(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), GetLane(), GetLane(), hwy::HWY_NAMESPACE::detail::LookupAndConcatQuarters(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), PromoteTo(), PromoteTo(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), hwy::HWY_NAMESPACE::detail::ReorderWidenMulAccumulateI16(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), U8FromU32(), and UpperHalf().

## LowerHalf() [12/28]

HWY_API Vec64< uint16_t > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< uint16_t > | v | ) |

References LowerHalf(), and v.

## LowerHalf() [13/28]

HWY_API Vec64< uint32_t > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< uint32_t > | v | ) |

References LowerHalf(), and v.

## LowerHalf() [14/28]

HWY_API Vec64< uint64_t > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< uint64_t > | v | ) |

References LowerHalf(), and v.

## LowerHalf() [15/28]

HWY_API Vec64< uint8_t > hwy::HWY_NAMESPACE::LowerHalf | ( | const Vec128< uint8_t > | v | ) |

References LowerHalf(), and v.

## LowerHalf() [16/28]

template<class D2 , class V >

HWY_API V hwy::HWY_NAMESPACE::LowerHalf | ( | D2 | ,
|  | const V | v
| ) |  |

References v.

## LowerHalf() [17/28]

HWY_API Vec128< double > hwy::HWY_NAMESPACE::LowerHalf | ( | Full128< double > | ,
|  | Vec256< double > | v
| ) |  |

References LowerHalf(), and v.

## LowerHalf() [18/28]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::LowerHalf | ( | Full128< float > | ,
|  | Vec256< float > | v
| ) |  |

References LowerHalf(), and v.

## LowerHalf() [19/28]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::LowerHalf | ( | Full128< T > | ,
|  | Vec256< T > | v
| ) |  |

References v.

## LowerHalf() [20/28]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::LowerHalf | ( | Full256< double > | ,
|  | Vec512< double > | v
| ) |  |

References LowerHalf(), and v.

## LowerHalf() [21/28]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::LowerHalf | ( | Full256< float > | ,
|  | Vec512< float > | v
| ) |  |

References LowerHalf(), and v.

## LowerHalf() [22/28]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::LowerHalf | ( | Full256< T > | ,
|  | Vec512< T > | v
| ) |  |

References LowerHalf(), and v.

## LowerHalf() [23/28]

template<typename T , size_t N>

HWY_API Vec128< T, N/2 > hwy::HWY_NAMESPACE::LowerHalf | ( | Simd< T, N/2, 0 > | ,
|  | Vec128< T, N > | v
| ) |  |

References LowerHalf(), N, and v.

## LowerHalf() [24/28]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::LowerHalf | ( | Sisd< T > | ,
|  | Vec1< T > | v
| ) |  |

References v.

## LowerHalf() [25/28]

template<typename T , size_t N>

HWY_API Vec128< T, N/2 > hwy::HWY_NAMESPACE::LowerHalf | ( | Vec128< T, N > | v | ) |

References hwy::CopyBytes(), N, and v.

## LowerHalf() [26/28]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::LowerHalf | ( | Vec1< T > | v | ) |

References v.

## LowerHalf() [27/28]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::LowerHalf | ( | Vec256< T > | v | ) |

References v.

## LowerHalf() [28/28]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::LowerHalf | ( | Vec512< T > | v | ) |

References LowerHalf(), and v.

## Lt128() [1/6]

template<class D >

HWY_INLINE svbool_t hwy::HWY_NAMESPACE::Lt128 | ( | D | d,
|  | const svuint64_t | a,
|  | const svuint64_t | b
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::Lt128Vec(), and MaskFromVec().

## Lt128() [2/6]

template<class D , class V = VFromD<D>>

HWY_API MFromD< D > hwy::HWY_NAMESPACE::Lt128 | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::Lt128Vec(), and MaskFromVec().

## Lt128() [3/6]

template<class D >

HWY_INLINE MFromD< D > hwy::HWY_NAMESPACE::Lt128 | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References d, MaskFromVec(), OddEven(), OrAnd(), and VecFromMask().

## Lt128() [4/6]

template<typename T >

HWY_INLINE Mask256< T > hwy::HWY_NAMESPACE::Lt128 | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, Lt128(), hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Lt128() [5/6]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_INLINE Mask128< T, N > hwy::HWY_NAMESPACE::Lt128 | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N > | a,
|  | Vec128< T, N > | b
| ) |  |

References d, DupEven(), DupOdd(), IfThenElse(), Lt128(), MaskFromVec(), and VecFromMask().

Referenced by Lt128(), Lt128(), Max128(), Max128(), Max128(), Min128(), Min128(), and Min128().

## Lt128() [6/6]

HWY_API Mask128< uint64_t > hwy::HWY_NAMESPACE::Lt128 | ( | Simd< uint64_t, 2, 0 > | ,
|  | Vec128< uint64_t > | a,
|  | const Vec128< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Lt128Upper() [1/6]

template<class D , class V = VFromD<D>>

HWY_API MFromD< D > hwy::HWY_NAMESPACE::Lt128Upper | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::Lt128UpperVec(), and MaskFromVec().

## Lt128Upper() [2/6]

template<class D >

HWY_INLINE MFromD< D > hwy::HWY_NAMESPACE::Lt128Upper | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References d, MaskFromVec(), OddEven(), and VecFromMask().

## Lt128Upper() [3/6]

template<class D >

HWY_INLINE svbool_t hwy::HWY_NAMESPACE::Lt128Upper | ( | D | d,
|  | svuint64_t | a,
|  | svuint64_t | b
| ) |  |

References d.

## Lt128Upper() [4/6]

template<typename T >

HWY_INLINE Mask256< T > hwy::HWY_NAMESPACE::Lt128Upper | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, Lt128Upper(), hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Lt128Upper() [5/6]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_INLINE Mask128< T, N > hwy::HWY_NAMESPACE::Lt128Upper | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N > | a,
|  | Vec128< T, N > | b
| ) |  |

References d, Lt128Upper(), MaskFromVec(), and VecFromMask().

Referenced by Lt128Upper(), Lt128Upper(), Max128Upper(), Max128Upper(), Max128Upper(), Min128Upper(), Min128Upper(), and Min128Upper().

## Lt128Upper() [6/6]

HWY_API Mask128< uint64_t > hwy::HWY_NAMESPACE::Lt128Upper | ( | Simd< uint64_t, 2, 0 > | ,
|  | Vec128< uint64_t > | a,
|  | const Vec128< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MaskedLoad() [1/12]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask128< double, N > | m,
|  | Simd< double, N, 0 > | ,
|  | const double *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## MaskedLoad() [2/12]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask128< float, N > | m,
|  | Simd< float, N, 0 > | ,
|  | const float *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## MaskedLoad() [3/12]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask128< T, N > | m,
|  | Simd< T, N, 0 > | d,
|  | const T *HWY_RESTRICT | aligned
| ) |  |

References d, IfThenElseZero(), Load(), and MaskedLoad().

Referenced by CopyIf(), Find(), FindIf(), MaskedLoad(), Replace(), ReplaceIf(), SafeCopyN(), Transform(), Transform1(), and Transform2().

## MaskedLoad() [4/12]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask128< T, N > | m,
|  | Simd< T, N, 0 > | ,
|  | const T *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## MaskedLoad() [5/12]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask1< T > | m,
|  | Sisd< T > | d,
|  | const T *HWY_RESTRICT | aligned
| ) |  |

References d, IfThenElseZero(), and Load().

## MaskedLoad() [6/12]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask256< double > | m,
|  | Full256< double > | ,
|  | const double *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::raw.

## MaskedLoad() [7/12]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask256< float > | m,
|  | Full256< float > | ,
|  | const float *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::raw.

## MaskedLoad() [8/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask256< T > | m,
|  | Full256< T > | d,
|  | const T *HWY_RESTRICT | aligned
| ) |  |

References d, IfThenElseZero(), and Load().

## MaskedLoad() [9/12]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask256< T > | m,
|  | Full256< T > | ,
|  | const T *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::raw.

## MaskedLoad() [10/12]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask512< double > | m,
|  | Full512< double > | ,
|  | const double *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask512< T >::raw.

## MaskedLoad() [11/12]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask512< float > | m,
|  | Full512< float > | ,
|  | const float *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask512< T >::raw.

## MaskedLoad() [12/12]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::MaskedLoad | ( | Mask512< T > | m,
|  | Full512< T > | ,
|  | const T *HWY_RESTRICT | p
| ) |  |

References hwy::HWY_NAMESPACE::Mask512< T >::raw.

## MaskFalse()

template<class D >

HWY_INLINE Mask< D > hwy::HWY_NAMESPACE::MaskFalse | ( | const D | d | ) |

References d, RebindMask(), and Zero().

## MaskForDist()

template<class DU64 >

Vec< DU64 > hwy::HWY_NAMESPACE::MaskForDist | ( | DU64 | du64,
|  | const Dist | dist,
|  | size_t | sizeof_t
| ) |  |

References HWY_ABORT, hwy::kUniform16, hwy::kUniform8, Set(), and Zero().

Referenced by GenerateInput().

## MaskFromVec() [1/12]

template<class V >

HWY_API svbool_t hwy::HWY_NAMESPACE::MaskFromVec | ( | const V | v | ) |

References v.

## MaskFromVec() [2/12]

template<class V >

HWY_API auto hwy::HWY_NAMESPACE::MaskFromVec | ( | const V | v | ) | -> decltype(Eq(v, v))

References v.

## MaskFromVec() [3/12]

template<size_t N>

HWY_API Mask128< double, N > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec128< double, N > | v | ) |

References BitCast(), MaskFromVec(), hwy::HWY_NAMESPACE::Mask128< T, N >::raw, and v.

## MaskFromVec() [4/12]

template<size_t N>

HWY_API Mask128< float, N > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec128< float, N > | v | ) |

References BitCast(), MaskFromVec(), hwy::HWY_NAMESPACE::Mask128< T, N >::raw, and v.

## MaskFromVec() [5/12]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec128< T, N > | v | ) |

References BitCast(), MaskFromVec(), N, and v.

Referenced by Abs(), Abs(), Abs(), And(), And(), And(), AndNot(), AndNot(), AndNot(), Eq128(), Eq128(), Eq128(), Eq128(), Eq128Upper(), Eq128Upper(), Eq128Upper(), ExclusiveNeither(), ExclusiveNeither(), ExclusiveNeither(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfVecThenElse(), IfVecThenElse(), IfVecThenElse(), IfVecThenElse(), Lt128(), Lt128(), Lt128(), Lt128(), Lt128Upper(), Lt128Upper(), Lt128Upper(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), Max(), Min(), Ne128(), Ne128(), Ne128(), Ne128(), Ne128Upper(), Ne128Upper(), Ne128Upper(), hwy::HWY_NAMESPACE::detail::NibblesFromMask(), Not(), Not(), Not(), OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), operator<<(), operator>(), operator>>(), Or(), Or(), Or(), RebindMask(), TableLookupLanes(), TableLookupLanes(), Xor(), Xor(), Xor(), ZeroIfNegative(), and ZeroIfNegative().

## MaskFromVec() [6/12]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec1< T > | v | ) |

References hwy::CopySameSize(), and v.

## MaskFromVec() [7/12]

HWY_API Mask256< double > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec256< double > | v | ) |

References BitCast(), MaskFromVec(), hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## MaskFromVec() [8/12]

HWY_API Mask256< float > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec256< float > | v | ) |

References BitCast(), MaskFromVec(), hwy::HWY_NAMESPACE::Mask256< T >::raw, and v.

## MaskFromVec() [9/12]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec256< T > | v | ) |

References hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, MaskFromVec(), and v.

## MaskFromVec() [10/12]

HWY_API Mask512< double > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec512< double > | v | ) |

References BitCast(), MaskFromVec(), hwy::HWY_NAMESPACE::Mask512< T >::raw, and v.

## MaskFromVec() [11/12]

HWY_API Mask512< float > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec512< float > | v | ) |

References BitCast(), MaskFromVec(), hwy::HWY_NAMESPACE::Mask512< T >::raw, and v.

## MaskFromVec() [12/12]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::MaskFromVec | ( | const Vec512< T > | v | ) |

References hwy::HWY_NAMESPACE::detail::MaskFromVec(), and v.

## MaskTrue()

template<class D >

HWY_INLINE Mask< D > hwy::HWY_NAMESPACE::MaskTrue | ( | const D | d | ) |

References d, FirstN(), and Lanes().

## Max() [1/33]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Max | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Max() [2/33]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::Max | ( | const Vec128< int64_t, N > | a,
|  | const Vec128< int64_t, N > | b
| ) |  |

References BroadcastSignBit(), IfThenElse(), and MaskFromVec().

## Max() [3/33]

template<size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::Max | ( | const Vec128< uint64_t, N > | a,
|  | const Vec128< uint64_t, N > | b
| ) |  |

References BitCast(), and IfThenElse().

Referenced by Clamp(), ConvertTo(), ConvertTo(), Max(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), and ZeroIfNegative().

## Max() [4/33]

template<typename T , HWY_IF_NOT_FLOAT(T) >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Max | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References HWY_MAX, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## Max() [5/33]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Max | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Max() [6/33]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Max | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Max() [7/33]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::Max | ( | const Vec256< int16_t > | a,
|  | const Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Max() [8/33]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::Max | ( | const Vec256< int32_t > | a,
|  | const Vec256< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Max() [9/33]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::Max | ( | const Vec256< int64_t > | a,
|  | const Vec256< int64_t > | b
| ) |  |

References IfThenElse(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Max() [10/33]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::Max | ( | const Vec256< int8_t > | a,
|  | const Vec256< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Max() [11/33]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::Max | ( | const Vec256< uint16_t > | a,
|  | const Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Max() [12/33]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::Max | ( | const Vec256< uint32_t > | a,
|  | const Vec256< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Max() [13/33]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::Max | ( | const Vec256< uint64_t > | a,
|  | const Vec256< uint64_t > | b
| ) |  |

References BitCast(), IfThenElse(), hwy::HWY_NAMESPACE::Vec256< T >::raw, RebindMask(), and Set().

## Max() [14/33]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::Max | ( | const Vec256< uint8_t > | a,
|  | const Vec256< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Max() [15/33]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Max | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [16/33]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Max | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [17/33]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::Max | ( | const Vec512< int16_t > | a,
|  | const Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [18/33]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::Max | ( | const Vec512< int32_t > | a,
|  | const Vec512< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [19/33]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::Max | ( | const Vec512< int64_t > | a,
|  | const Vec512< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [20/33]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::Max | ( | const Vec512< int8_t > | a,
|  | const Vec512< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [21/33]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::Max | ( | const Vec512< uint16_t > | a,
|  | const Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [22/33]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::Max | ( | const Vec512< uint32_t > | a,
|  | const Vec512< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [23/33]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::Max | ( | const Vec512< uint64_t > | a,
|  | const Vec512< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [24/33]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::Max | ( | const Vec512< uint8_t > | a,
|  | const Vec512< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Max() [25/33]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Max | ( | Vec128< float, N > | a,
|  | Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Max() [26/33]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::Max | ( | Vec128< int16_t, N > | a,
|  | Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Max() [27/33]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::Max | ( | Vec128< int32_t, N > | a,
|  | Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Max() [28/33]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::Max | ( | Vec128< int8_t, N > | a,
|  | Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Max() [29/33]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Max | ( | Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::Max().

## Max() [30/33]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::Max | ( | Vec128< uint16_t, N > | a,
|  | Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Max() [31/33]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::Max | ( | Vec128< uint32_t, N > | a,
|  | Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Max() [32/33]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::Max | ( | Vec128< uint8_t, N > | a,
|  | Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Max() [33/33]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Max | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References Max(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Max128() [1/4]

template<class D >

HWY_INLINE svuint64_t hwy::HWY_NAMESPACE::Max128 | ( | D | d,
|  | const svuint64_t | a,
|  | const svuint64_t | b
| ) |  |

References d, IfThenElse(), IfVecThenElse(), Lt128(), and hwy::HWY_NAMESPACE::detail::Lt128Vec().

## Max128() [2/4]

template<class D , class V = VFromD<D>>

HWY_API V hwy::HWY_NAMESPACE::Max128 | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, IfThenElse(), and Lt128().

## Max128() [3/4]

template<class D >

HWY_INLINE VFromD< D > hwy::HWY_NAMESPACE::Max128 | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References d, IfThenElse(), Lt128(), and Max128().

Referenced by Max128(), and Max128().

## Max128() [4/4]

template<typename T >

HWY_INLINE Vec256< T > hwy::HWY_NAMESPACE::Max128 | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, Max128(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Max128Upper() [1/4]

template<class D >

HWY_INLINE svuint64_t hwy::HWY_NAMESPACE::Max128Upper | ( | D | d,
|  | const svuint64_t | a,
|  | const svuint64_t | b
| ) |  |

References d, IfThenElse(), and Lt128Upper().

## Max128Upper() [2/4]

template<class D , class V = VFromD<D>>

HWY_API V hwy::HWY_NAMESPACE::Max128Upper | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, IfThenElse(), and Lt128Upper().

## Max128Upper() [3/4]

template<class D >

HWY_INLINE VFromD< D > hwy::HWY_NAMESPACE::Max128Upper | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References d, IfThenElse(), Lt128Upper(), and Max128Upper().

Referenced by Max128Upper(), and Max128Upper().

## Max128Upper() [4/4]

template<typename T >

HWY_INLINE Vec256< T > hwy::HWY_NAMESPACE::Max128Upper | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, Max128Upper(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## MaxLanes()

template<class D >

HWY_INLINE HWY_MAYBE_UNUSED constexpr size_t hwy::HWY_NAMESPACE::MaxLanes | ( | D |  | ) |

constexpr

Referenced by Compress(), CompressBits(), CompressBitsStore(), CompressBlendedStore(), CompressStore(), and TableLookupBytes().

## MaxOfLanes() [1/13]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::MaxOfLanes | ( | D | d,
|  | const VFromD< D > | v
| ) |  |

References d, Set(), and v.

## MaxOfLanes() [2/13]

template<class D , class V >

V hwy::HWY_NAMESPACE::MaxOfLanes | ( | D | d,
|  | V | v
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::MakeMask(), Set(), and v.

## MaxOfLanes() [3/13]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References Combine(), d, Max(), MaxOfLanes(), and v.

## MaxOfLanes() [4/13]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Full512< double > | d,
|  | Vec512< double > | v
| ) |  |

References d, Set(), and v.

## MaxOfLanes() [5/13]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Full512< float > | d,
|  | Vec512< float > | v
| ) |  |

References d, Set(), and v.

## MaxOfLanes() [6/13]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Full512< int16_t > | d,
|  | Vec512< int16_t > | v
| ) |  |

References BitCast(), d, Max(), OddEven(), and v.

## MaxOfLanes() [7/13]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Full512< int32_t > | d,
|  | Vec512< int32_t > | v
| ) |  |

References d, Set(), and v.

## MaxOfLanes() [8/13]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Full512< int64_t > | d,
|  | Vec512< int64_t > | v
| ) |  |

References d, Set(), and v.

## MaxOfLanes() [9/13]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Full512< uint16_t > | d,
|  | Vec512< uint16_t > | v
| ) |  |

References And(), BitCast(), d, Max(), OddEven(), Set(), and v.

## MaxOfLanes() [10/13]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Full512< uint32_t > | d,
|  | Vec512< uint32_t > | v
| ) |  |

References d, Set(), and v.

## MaxOfLanes() [11/13]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Full512< uint64_t > | d,
|  | Vec512< uint64_t > | v
| ) |  |

References d, Set(), and v.

## MaxOfLanes() [12/13]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References v.

Referenced by MaxOfLanes().

## MaxOfLanes() [13/13]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::MaxOfLanes | ( | Sisd< T > | ,
|  | const Vec1< T > | v
| ) |  |

References v.

## Min() [1/33]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Min | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Min() [2/33]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::Min | ( | const Vec128< int64_t, N > | a,
|  | const Vec128< int64_t, N > | b
| ) |  |

References BroadcastSignBit(), IfThenElse(), and MaskFromVec().

## Min() [3/33]

template<size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::Min | ( | const Vec128< uint64_t, N > | a,
|  | const Vec128< uint64_t, N > | b
| ) |  |

References BitCast(), and IfThenElse().

Referenced by Clamp(), DemoteTo(), Min(), MinOfLanes(), MinOfLanes(), MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), and hwy::HWY_NAMESPACE::detail::MinOfLanes().

## Min() [4/33]

template<typename T , HWY_IF_NOT_FLOAT(T) >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Min | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## Min() [5/33]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Min | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Min() [6/33]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Min | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Min() [7/33]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::Min | ( | const Vec256< int16_t > | a,
|  | const Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Min() [8/33]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::Min | ( | const Vec256< int32_t > | a,
|  | const Vec256< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Min() [9/33]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::Min | ( | const Vec256< int64_t > | a,
|  | const Vec256< int64_t > | b
| ) |  |

References IfThenElse(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Min() [10/33]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::Min | ( | const Vec256< int8_t > | a,
|  | const Vec256< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Min() [11/33]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::Min | ( | const Vec256< uint16_t > | a,
|  | const Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Min() [12/33]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::Min | ( | const Vec256< uint32_t > | a,
|  | const Vec256< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Min() [13/33]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::Min | ( | const Vec256< uint64_t > | a,
|  | const Vec256< uint64_t > | b
| ) |  |

References BitCast(), IfThenElse(), hwy::HWY_NAMESPACE::Vec256< T >::raw, RebindMask(), and Set().

## Min() [14/33]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::Min | ( | const Vec256< uint8_t > | a,
|  | const Vec256< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Min() [15/33]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Min | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [16/33]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Min | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [17/33]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::Min | ( | const Vec512< int16_t > | a,
|  | const Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [18/33]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::Min | ( | const Vec512< int32_t > | a,
|  | const Vec512< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [19/33]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::Min | ( | const Vec512< int64_t > | a,
|  | const Vec512< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [20/33]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::Min | ( | const Vec512< int8_t > | a,
|  | const Vec512< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [21/33]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::Min | ( | const Vec512< uint16_t > | a,
|  | const Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [22/33]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::Min | ( | const Vec512< uint32_t > | a,
|  | const Vec512< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [23/33]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::Min | ( | const Vec512< uint64_t > | a,
|  | const Vec512< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [24/33]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::Min | ( | const Vec512< uint8_t > | a,
|  | const Vec512< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Min() [25/33]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Min | ( | Vec128< float, N > | a,
|  | Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Min() [26/33]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::Min | ( | Vec128< int16_t, N > | a,
|  | Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Min() [27/33]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::Min | ( | Vec128< int32_t, N > | a,
|  | Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Min() [28/33]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::Min | ( | Vec128< int8_t, N > | a,
|  | Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Min() [29/33]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Min | ( | Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::Min().

## Min() [30/33]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::Min | ( | Vec128< uint16_t, N > | a,
|  | Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Min() [31/33]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::Min | ( | Vec128< uint32_t, N > | a,
|  | Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Min() [32/33]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::Min | ( | Vec128< uint8_t, N > | a,
|  | Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Min() [33/33]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Min | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References Min(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Min128() [1/4]

template<class D >

HWY_INLINE svuint64_t hwy::HWY_NAMESPACE::Min128 | ( | D | d,
|  | const svuint64_t | a,
|  | const svuint64_t | b
| ) |  |

References d, IfThenElse(), IfVecThenElse(), Lt128(), and hwy::HWY_NAMESPACE::detail::Lt128Vec().

## Min128() [2/4]

template<class D , class V = VFromD<D>>

HWY_API V hwy::HWY_NAMESPACE::Min128 | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, IfThenElse(), and Lt128().

## Min128() [3/4]

template<class D >

HWY_INLINE VFromD< D > hwy::HWY_NAMESPACE::Min128 | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References d, IfThenElse(), Lt128(), and Min128().

Referenced by Min128(), and Min128().

## Min128() [4/4]

template<typename T >

HWY_INLINE Vec256< T > hwy::HWY_NAMESPACE::Min128 | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, Min128(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Min128Upper() [1/4]

template<class D >

HWY_INLINE svuint64_t hwy::HWY_NAMESPACE::Min128Upper | ( | D | d,
|  | const svuint64_t | a,
|  | const svuint64_t | b
| ) |  |

References d, IfThenElse(), and Lt128Upper().

## Min128Upper() [2/4]

template<class D , class V = VFromD<D>>

HWY_API V hwy::HWY_NAMESPACE::Min128Upper | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, IfThenElse(), and Lt128Upper().

## Min128Upper() [3/4]

template<class D >

HWY_INLINE VFromD< D > hwy::HWY_NAMESPACE::Min128Upper | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References d, IfThenElse(), Lt128Upper(), and Min128Upper().

Referenced by Min128Upper(), and Min128Upper().

## Min128Upper() [4/4]

template<typename T >

HWY_INLINE Vec256< T > hwy::HWY_NAMESPACE::Min128Upper | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, Min128Upper(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## MinOfLanes() [1/13]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::MinOfLanes | ( | D | d,
|  | const VFromD< D > | v
| ) |  |

References d, Set(), and v.

## MinOfLanes() [2/13]

template<class D , class V >

V hwy::HWY_NAMESPACE::MinOfLanes | ( | D | d,
|  | V | v
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::MakeMask(), Set(), and v.

## MinOfLanes() [3/13]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::MinOfLanes | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References Combine(), d, Min(), MinOfLanes(), and v.

## MinOfLanes() [4/13]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::MinOfLanes | ( | Full512< double > | d,
|  | Vec512< double > | v
| ) |  |

References d, Set(), and v.

## MinOfLanes() [5/13]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::MinOfLanes | ( | Full512< float > | d,
|  | Vec512< float > | v
| ) |  |

References d, Set(), and v.

## MinOfLanes() [6/13]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::MinOfLanes | ( | Full512< int16_t > | d,
|  | Vec512< int16_t > | v
| ) |  |

References BitCast(), d, Min(), OddEven(), and v.

## MinOfLanes() [7/13]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::MinOfLanes | ( | Full512< int32_t > | d,
|  | Vec512< int32_t > | v
| ) |  |

References d, Set(), and v.

## MinOfLanes() [8/13]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::MinOfLanes | ( | Full512< int64_t > | d,
|  | Vec512< int64_t > | v
| ) |  |

References d, Set(), and v.

## MinOfLanes() [9/13]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::MinOfLanes | ( | Full512< uint16_t > | d,
|  | Vec512< uint16_t > | v
| ) |  |

References And(), BitCast(), d, Min(), OddEven(), Set(), and v.

## MinOfLanes() [10/13]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::MinOfLanes | ( | Full512< uint32_t > | d,
|  | Vec512< uint32_t > | v
| ) |  |

References d, Set(), and v.

## MinOfLanes() [11/13]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::MinOfLanes | ( | Full512< uint64_t > | d,
|  | Vec512< uint64_t > | v
| ) |  |

References d, Set(), and v.

## MinOfLanes() [12/13]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::MinOfLanes | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References v.

Referenced by MinOfLanes().

## MinOfLanes() [13/13]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::MinOfLanes | ( | Sisd< T > | ,
|  | const Vec1< T > | v
| ) |  |

References v.

## MLenFromD()

template<typename T , size_t N, int kPow2>

constexpr size_t hwy::HWY_NAMESPACE::MLenFromD | ( | Simd< T, N, kPow2 > |  | ) |

constexpr

References HWY_MIN, and hwy::HWY_NAMESPACE::detail::ScaleByPower().

## MulAdd() [1/8]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::MulAdd | ( | const Vec128< double, N > | mul,
|  | const Vec128< double, N > | x,
|  | const Vec128< double, N > | add
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulAdd() [2/8]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::MulAdd | ( | const Vec128< float, N > | mul,
|  | const Vec128< float, N > | x,
|  | const Vec128< float, N > | add
| ) |  |

References MulAdd().

Referenced by Acosh(), Asin(), Asinh(), hwy::HWY_NAMESPACE::impl::AtanImpl< float >::AtanPoly(), hwy::HWY_NAMESPACE::Dot::Compute(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::CosReduce(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), hwy::HWY_NAMESPACE::impl::Estrin(), Exp(), Expm1(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::ExpPoly(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::ExpReduce(), hwy::HWY_NAMESPACE::impl::LogImpl< float >::LogPoly(), MulAdd(), skeleton::HWY_NAMESPACE::MulAddLoop(), MulSub(), NegMulSub(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::Poly(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), hwy::HWY_NAMESPACE::detail::ReorderWidenMulAccumulateBF16(), Sin(), and hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::SinReduce().

## MulAdd() [3/8]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::MulAdd | ( | const Vec1< T > | mul,
|  | const Vec1< T > | x,
|  | const Vec1< T > | add
| ) |  |

## MulAdd() [4/8]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::MulAdd | ( | const Vec256< double > | mul,
|  | const Vec256< double > | x,
|  | const Vec256< double > | add
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## MulAdd() [5/8]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::MulAdd | ( | const Vec256< float > | mul,
|  | const Vec256< float > | x,
|  | const Vec256< float > | add
| ) |  |

## MulAdd() [6/8]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::MulAdd | ( | const Vec512< double > | mul,
|  | const Vec512< double > | x,
|  | const Vec512< double > | add
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## MulAdd() [7/8]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::MulAdd | ( | const Vec512< float > | mul,
|  | const Vec512< float > | x,
|  | const Vec512< float > | add
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## MulAdd() [8/8]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::MulAdd | ( | Vec128< T, N > | mul,
|  | const Vec128< T, N > | x,
|  | const Vec128< T, N > | add
| ) |  |

## MulEven() [1/18]

HWY_API svuint64_t hwy::HWY_NAMESPACE::MulEven | ( | const svuint64_t | a,
|  | const svuint64_t | b
| ) |  |

References MulHigh().

## MulEven() [2/18]

template<class V , class DW = RepartitionToWide<DFromV<V>>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::MulEven | ( | const V | a,
|  | const V | b
| ) |  |

References BitCast(), and MulHigh().

## MulEven() [3/18]

template<class V , HWY_IF_LANE_SIZE_V(V, 4) , class D = DFromV<V>, class DW = RepartitionToWide<D>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::MulEven | ( | const V | a,
|  | const V | b
| ) |  |

References BitCast(), and OddEven().

## MulEven() [4/18]

template<class V , HWY_IF_LANE_SIZE_V(V, 8) >

HWY_INLINE V hwy::HWY_NAMESPACE::MulEven | ( | const V | a,
|  | const V | b
| ) |  |

References OddEven().

## MulEven() [5/18]

template<size_t N>

HWY_API Vec128< int64_t,(N+1)/2 > hwy::HWY_NAMESPACE::MulEven | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References ConcatEven(), d, MulEven(), and N.

## MulEven() [6/18]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int64_t,(N+1)/2 > hwy::HWY_NAMESPACE::MulEven | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References GetLane(), N, and Set().

## MulEven() [7/18]

template<size_t N>

HWY_API Vec128< uint64_t,(N+1)/2 > hwy::HWY_NAMESPACE::MulEven | ( | const Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References ConcatEven(), d, MulEven(), and N.

## MulEven() [8/18]

HWY_API Vec1< int64_t > hwy::HWY_NAMESPACE::MulEven | ( | const Vec1< int32_t > | a,
|  | const Vec1< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## MulEven() [9/18]

HWY_API Vec1< uint64_t > hwy::HWY_NAMESPACE::MulEven | ( | const Vec1< uint32_t > | a,
|  | const Vec1< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## MulEven() [10/18]

HWY_INLINE Vec512< uint64_t > hwy::HWY_NAMESPACE::MulEven | ( | const Vec512< uint64_t > | a,
|  | const Vec512< uint64_t > | b
| ) |  |

References BitCast(), InterleaveLower(), MulEven(), Set(), and Shuffle2301().

## MulEven() [11/18]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::MulEven | ( | Vec128< int32_t > | a,
|  | Vec128< int32_t > | b
| ) |  |

References ConcatEven(), d, and MulEven().

Referenced by MulEven(), MulEven(), MulEven(), MulEven(), MulEven(), MulEven(), MulEven(), MulEven(), MulEven(), MulOdd(), operator*(), and operator>>().

## MulEven() [12/18]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::MulEven | ( | Vec128< uint32_t > | a,
|  | Vec128< uint32_t > | b
| ) |  |

References ConcatEven(), d, and MulEven().

## MulEven() [13/18]

HWY_INLINE Vec128< uint64_t > hwy::HWY_NAMESPACE::MulEven | ( | Vec128< uint64_t > | a,
|  | Vec128< uint64_t > | b
| ) |  |

References hwy::Mul128(), MulEven(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulEven() [14/18]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::MulEven | ( | Vec256< int32_t > | a,
|  | const Vec256< int32_t > | b
| ) |  |

References MulEven(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## MulEven() [15/18]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::MulEven | ( | Vec256< uint32_t > | a,
|  | const Vec256< uint32_t > | b
| ) |  |

References MulEven(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## MulEven() [16/18]

HWY_INLINE Vec256< uint64_t > hwy::HWY_NAMESPACE::MulEven | ( | Vec256< uint64_t > | a,
|  | const Vec256< uint64_t > | b
| ) |  |

References MulEven(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## MulEven() [17/18]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::MulEven | ( | Vec512< int32_t > | a,
|  | Vec512< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## MulEven() [18/18]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::MulEven | ( | Vec512< uint32_t > | a,
|  | Vec512< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## MulFixedPoint15() [1/8]

HWY_API svint16_t hwy::HWY_NAMESPACE::MulFixedPoint15 | ( | svint16_t | a,
|  | svint16_t | b
| ) |  |

References BitCast(), d, and MulHigh().

## MulFixedPoint15() [2/8]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::MulFixedPoint15 | ( | Vec128< int16_t > | a,
|  | Vec128< int16_t > | b
| ) |  |

References MulFixedPoint15(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by MulFixedPoint15(), MulFixedPoint15(), and MulFixedPoint15().

## MulFixedPoint15() [3/8]

template<size_t N, HWY_IF_LE64(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::MulFixedPoint15 | ( | Vec128< int16_t, N > | a,
|  | Vec128< int16_t, N > | b
| ) |  |

References MulFixedPoint15(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulFixedPoint15() [4/8]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::MulFixedPoint15 | ( | Vec128< int16_t, N > | a,
|  | Vec128< int16_t, N > | b
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulFixedPoint15() [5/8]

HWY_API Vec1< int16_t > hwy::HWY_NAMESPACE::MulFixedPoint15 | ( | Vec1< int16_t > | a,
|  | Vec1< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## MulFixedPoint15() [6/8]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::MulFixedPoint15 | ( | Vec256< int16_t > | a,
|  | Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## MulFixedPoint15() [7/8]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::MulFixedPoint15 | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References MulFixedPoint15(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## MulFixedPoint15() [8/8]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::MulFixedPoint15 | ( | Vec512< int16_t > | a,
|  | Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## MulHigh() [1/13]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::MulHigh | ( | const Vec128< int16_t > | a,
|  | const Vec128< int16_t > | b
| ) |  |

References MulHigh(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by MulEven(), MulEven(), MulFixedPoint15(), MulHigh(), MulHigh(), MulHigh(), MulHigh(), MulHigh(), MulOdd(), operator>>(), and operator>>().

## MulHigh() [2/13]

template<size_t N, HWY_IF_LE64(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::MulHigh | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References MulHigh(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulHigh() [3/13]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::MulHigh | ( | const Vec128< uint16_t > | a,
|  | const Vec128< uint16_t > | b
| ) |  |

References MulHigh(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulHigh() [4/13]

template<size_t N, HWY_IF_LE64(uint16_t, N) >

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::MulHigh | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References MulHigh(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulHigh() [5/13]

HWY_API Vec1< int16_t > hwy::HWY_NAMESPACE::MulHigh | ( | const Vec1< int16_t > | a,
|  | const Vec1< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## MulHigh() [6/13]

HWY_API Vec1< uint16_t > hwy::HWY_NAMESPACE::MulHigh | ( | const Vec1< uint16_t > | a,
|  | const Vec1< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## MulHigh() [7/13]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::MulHigh | ( | Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulHigh() [8/13]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::MulHigh | ( | Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulHigh() [9/13]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::MulHigh | ( | Vec256< int16_t > | a,
|  | Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## MulHigh() [10/13]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::MulHigh | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References MulHigh(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## MulHigh() [11/13]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::MulHigh | ( | Vec256< uint16_t > | a,
|  | Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## MulHigh() [12/13]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::MulHigh | ( | Vec512< int16_t > | a,
|  | Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## MulHigh() [13/13]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::MulHigh | ( | Vec512< uint16_t > | a,
|  | Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## MulOdd() [1/7]

HWY_API svuint64_t hwy::HWY_NAMESPACE::MulOdd | ( | const svuint64_t | a,
|  | const svuint64_t | b
| ) |  |

References MulHigh().

## MulOdd() [2/7]

template<class V , HWY_IF_LANE_SIZE_V(V, 8) >

HWY_INLINE V hwy::HWY_NAMESPACE::MulOdd | ( | const V | a,
|  | const V | b
| ) |  |

References OddEven().

## MulOdd() [3/7]

template<size_t N>

HWY_API Vec128< int64_t,(N+1)/2 > hwy::HWY_NAMESPACE::MulOdd | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulOdd() [4/7]

HWY_INLINE Vec512< uint64_t > hwy::HWY_NAMESPACE::MulOdd | ( | const Vec512< uint64_t > | a,
|  | const Vec512< uint64_t > | b
| ) |  |

References BitCast(), MulEven(), MulOdd(), Set(), and Shuffle2301().

## MulOdd() [5/7]

template<size_t N>

HWY_API Vec128< uint64_t,(N+1)/2 > hwy::HWY_NAMESPACE::MulOdd | ( | Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulOdd() [6/7]

HWY_INLINE Vec128< uint64_t > hwy::HWY_NAMESPACE::MulOdd | ( | Vec128< uint64_t > | a,
|  | Vec128< uint64_t > | b
| ) |  |

References hwy::Mul128(), MulOdd(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by MulOdd(), MulOdd(), and MulOdd().

## MulOdd() [7/7]

HWY_INLINE Vec256< uint64_t > hwy::HWY_NAMESPACE::MulOdd | ( | Vec256< uint64_t > | a,
|  | const Vec256< uint64_t > | b
| ) |  |

References MulOdd(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## MulSub() [1/8]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::MulSub | ( | const Vec128< double, N > | mul,
|  | const Vec128< double, N > | x,
|  | const Vec128< double, N > | sub
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## MulSub() [2/8]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::MulSub | ( | const Vec128< float, N > | mul,
|  | const Vec128< float, N > | x,
|  | const Vec128< float, N > | sub
| ) |  |

References MulAdd(), MulSub(), and Neg().

Referenced by Acosh(), hwy::HWY_NAMESPACE::impl::Log(), and MulSub().

## MulSub() [3/8]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::MulSub | ( | const Vec1< T > | mul,
|  | const Vec1< T > | x,
|  | const Vec1< T > | sub
| ) |  |

## MulSub() [4/8]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::MulSub | ( | const Vec256< double > | mul,
|  | const Vec256< double > | x,
|  | const Vec256< double > | sub
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## MulSub() [5/8]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::MulSub | ( | const Vec256< float > | mul,
|  | const Vec256< float > | x,
|  | const Vec256< float > | sub
| ) |  |

## MulSub() [6/8]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::MulSub | ( | const Vec512< double > | mul,
|  | const Vec512< double > | x,
|  | const Vec512< double > | sub
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## MulSub() [7/8]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::MulSub | ( | const Vec512< float > | mul,
|  | const Vec512< float > | x,
|  | const Vec512< float > | sub
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## MulSub() [8/8]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::MulSub | ( | Vec128< T, N > | mul,
|  | const Vec128< T, N > | x,
|  | const Vec128< T, N > | sub
| ) |  |

## NaN()

template<class D >

HWY_API Vec< D > hwy::HWY_NAMESPACE::NaN | ( | D | d | ) |

References BitCast(), d, hwy::LimitsMax(), and Set().

## Ne128() [1/6]

template<class D >

HWY_INLINE svbool_t hwy::HWY_NAMESPACE::Ne128 | ( | D | d,
|  | const svuint64_t | a,
|  | const svuint64_t | b
| ) |  |

References d, MaskFromVec(), hwy::HWY_NAMESPACE::detail::Ne128Vec(), and Or().

## Ne128() [2/6]

template<class D , class V = VFromD<D>>

HWY_API MFromD< D > hwy::HWY_NAMESPACE::Ne128 | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, MaskFromVec(), and hwy::HWY_NAMESPACE::detail::Ne128Vec().

## Ne128() [3/6]

template<class D >

HWY_INLINE MFromD< D > hwy::HWY_NAMESPACE::Ne128 | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References d, MaskFromVec(), Or(), Reverse2(), and VecFromMask().

## Ne128() [4/6]

template<typename T >

HWY_INLINE Mask256< T > hwy::HWY_NAMESPACE::Ne128 | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, hwy::HWY_NAMESPACE::Mask256< T >::m0, Ne128(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Ne128() [5/6]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_INLINE Mask128< T, N > hwy::HWY_NAMESPACE::Ne128 | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N > | a,
|  | Vec128< T, N > | b
| ) |  |

References d, MaskFromVec(), Ne128(), Or(), Reverse2(), and VecFromMask().

Referenced by Ne128(), and Ne128().

## Ne128() [6/6]

HWY_API Mask128< uint64_t > hwy::HWY_NAMESPACE::Ne128 | ( | Simd< uint64_t, 2, 0 > | ,
|  | Vec128< uint64_t > | a,
|  | const Vec128< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Ne128Upper() [1/6]

template<class D , class V = VFromD<D>>

HWY_API MFromD< D > hwy::HWY_NAMESPACE::Ne128Upper | ( | D | d,
|  | const V | a,
|  | const V | b
| ) |  |

References d, MaskFromVec(), and hwy::HWY_NAMESPACE::detail::Ne128UpperVec().

## Ne128Upper() [2/6]

template<class D >

HWY_INLINE MFromD< D > hwy::HWY_NAMESPACE::Ne128Upper | ( | D | d,
|  | const VFromD< D > | a,
|  | const VFromD< D > | b
| ) |  |

References d, MaskFromVec(), OddEven(), and VecFromMask().

## Ne128Upper() [3/6]

template<class D >

HWY_INLINE svbool_t hwy::HWY_NAMESPACE::Ne128Upper | ( | D | d,
|  | svuint64_t | a,
|  | svuint64_t | b
| ) |  |

References d.

## Ne128Upper() [4/6]

template<typename T >

HWY_INLINE Mask256< T > hwy::HWY_NAMESPACE::Ne128Upper | ( | Full256< T > | d,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References d, hwy::HWY_NAMESPACE::Mask256< T >::m0, Ne128Upper(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Ne128Upper() [5/6]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_INLINE Mask128< T, N > hwy::HWY_NAMESPACE::Ne128Upper | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N > | a,
|  | Vec128< T, N > | b
| ) |  |

References d, MaskFromVec(), Ne128Upper(), and VecFromMask().

Referenced by Ne128Upper(), and Ne128Upper().

## Ne128Upper() [6/6]

HWY_API Mask128< uint64_t > hwy::HWY_NAMESPACE::Ne128Upper | ( | Simd< uint64_t, 2, 0 > | ,
|  | Vec128< uint64_t > | a,
|  | const Vec128< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## NearestInt() [1/5]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::NearestInt | ( | const Vec128< float, N > | v | ) |

References ConvertTo(), NearestInt(), Round(), and v.

Referenced by NearestInt(), NearestInt(), Round(), grk::HWY_NAMESPACE::DecompressDcShiftIrrev::transform(), and grk::HWY_NAMESPACE::DecompressIrrev::transform().

## NearestInt() [2/5]

HWY_API Vec1< int32_t > hwy::HWY_NAMESPACE::NearestInt | ( | const Vec1< float > | v | ) |

References Abs(), hwy::HWY_NAMESPACE::detail::Abs(), hwy::HWY_NAMESPACE::Vec1< T >::raw, hwy::HWY_NAMESPACE::detail::SignBit(), and v.

## NearestInt() [3/5]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::NearestInt | ( | const Vec256< float > | v | ) |

References ConvertTo(), Round(), and v.

## NearestInt() [4/5]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::NearestInt | ( | const Vec512< float > | v | ) |

References NearestInt(), and v.

## NearestInt() [5/5]

template<class VF , class DI = RebindToSigned<DFromV<VF>>>

HWY_API VFromD< DI > hwy::HWY_NAMESPACE::NearestInt | ( | VF | v | ) |

References ConvertTo(), Round(), and v.

## Neg() [1/12]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::Neg | ( | const Vec128< int16_t, N > | v | ) |

References v.

## Neg() [2/12]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::Neg | ( | const Vec128< int32_t, N > | v | ) |

References v.

## Neg() [3/12]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::Neg | ( | const Vec128< int64_t > | v | ) |

References Neg(), v, and Zero().

## Neg() [4/12]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::Neg | ( | const Vec128< int64_t, N > | v | ) |

References v.

## Neg() [5/12]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::Neg | ( | const Vec128< int8_t, N > | v | ) |

References v.

## Neg() [6/12]

template<typename T , size_t N, HWY_IF_FLOAT(T) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Neg | ( | const Vec128< T, N > | v | ) |

References SignBit(), v, and Xor().

## Neg() [7/12]

template<typename T , size_t N>

HWY_INLINE Vec128< T, N > hwy::HWY_NAMESPACE::Neg | ( | const Vec128< T, N > | v | ) |

References hwy::HWY_NAMESPACE::detail::Neg(), and v.

## Neg() [8/12]

template<typename T , HWY_IF_FLOAT(T) >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Neg | ( | const Vec1< T > | v | ) |

References SignBit(), v, and Xor().

## Neg() [9/12]

template<typename T , HWY_IF_FLOAT(T) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Neg | ( | const Vec512< T > | v | ) |

References SignBit(), v, and Xor().

## Neg() [10/12]

HWY_API Vec64< int64_t > hwy::HWY_NAMESPACE::Neg | ( | const Vec64< int64_t > | v | ) |

References v, and Zero().

Referenced by MulSub(), Neg(), Neg(), NegMulSub(), NegMulSub(), NegMulSub(), NegMulSub(), NegMulSub(), NegMulSub(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), and operator>>().

## Neg() [11/12]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Neg | ( | Vec128< T, N > | v | ) |

References hwy::HWY_NAMESPACE::detail::Neg(), and v.

## Neg() [12/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Neg | ( | Vec256< T > | v | ) |

References Neg(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## NegMulAdd() [1/8]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::NegMulAdd | ( | const Vec128< double, N > | mul,
|  | const Vec128< double, N > | x,
|  | const Vec128< double, N > | add
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## NegMulAdd() [2/8]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::NegMulAdd | ( | const Vec128< float, N > | mul,
|  | const Vec128< float, N > | x,
|  | const Vec128< float, N > | add
| ) |  |

References NegMulAdd().

Referenced by Acos(), Asin(), and NegMulAdd().

## NegMulAdd() [3/8]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::NegMulAdd | ( | const Vec1< T > | mul,
|  | const Vec1< T > | x,
|  | const Vec1< T > | add
| ) |  |

## NegMulAdd() [4/8]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::NegMulAdd | ( | const Vec256< double > | mul,
|  | const Vec256< double > | x,
|  | const Vec256< double > | add
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## NegMulAdd() [5/8]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::NegMulAdd | ( | const Vec256< float > | mul,
|  | const Vec256< float > | x,
|  | const Vec256< float > | add
| ) |  |

## NegMulAdd() [6/8]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::NegMulAdd | ( | const Vec512< double > | mul,
|  | const Vec512< double > | x,
|  | const Vec512< double > | add
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## NegMulAdd() [7/8]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::NegMulAdd | ( | const Vec512< float > | mul,
|  | const Vec512< float > | x,
|  | const Vec512< float > | add
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## NegMulAdd() [8/8]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::NegMulAdd | ( | Vec128< T, N > | mul,
|  | const Vec128< T, N > | x,
|  | const Vec128< T, N > | add
| ) |  |

## NegMulSub() [1/8]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::NegMulSub | ( | const Vec128< double, N > | mul,
|  | const Vec128< double, N > | x,
|  | const Vec128< double, N > | sub
| ) |  |

References Neg(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## NegMulSub() [2/8]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::NegMulSub | ( | const Vec128< float, N > | mul,
|  | const Vec128< float, N > | x,
|  | const Vec128< float, N > | sub
| ) |  |

References MulAdd(), Neg(), and NegMulSub().

Referenced by NegMulSub().

## NegMulSub() [3/8]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::NegMulSub | ( | const Vec1< T > | mul,
|  | const Vec1< T > | x,
|  | const Vec1< T > | sub
| ) |  |

References Neg().

## NegMulSub() [4/8]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::NegMulSub | ( | const Vec256< double > | mul,
|  | const Vec256< double > | x,
|  | const Vec256< double > | sub
| ) |  |

References Neg(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## NegMulSub() [5/8]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::NegMulSub | ( | const Vec256< float > | mul,
|  | const Vec256< float > | x,
|  | const Vec256< float > | sub
| ) |  |

References Neg().

## NegMulSub() [6/8]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::NegMulSub | ( | const Vec512< double > | mul,
|  | const Vec512< double > | x,
|  | const Vec512< double > | sub
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## NegMulSub() [7/8]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::NegMulSub | ( | const Vec512< float > | mul,
|  | const Vec512< float > | x,
|  | const Vec512< float > | sub
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## NegMulSub() [8/8]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::NegMulSub | ( | Vec128< T, N > | mul,
|  | const Vec128< T, N > | x,
|  | const Vec128< T, N > | sub
| ) |  |

References Neg().

## Not() [1/12]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::Not | ( | const Mask128< T, N > | m | ) |

References MaskFromVec(), Not(), and VecFromMask().

## Not() [2/12]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::Not | ( | const Mask1< T > | m | ) |

References MaskFromVec(), Not(), and VecFromMask().

## Not() [3/12]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::Not | ( | const Mask256< T > | m | ) |

References MaskFromVec(), Not(), and VecFromMask().

## Not() [4/12]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::Not | ( | const Mask512< T > | m | ) |

References hwy::HWY_NAMESPACE::detail::Not().

## Not() [5/12]

template<class V , HWY_IF_FLOAT_V(V) >

HWY_API V hwy::HWY_NAMESPACE::Not | ( | const V | v | ) |

References BitCast(), Not(), and v.

## Not() [6/12]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Not | ( | const Vec128< T > | v | ) |

References BitCast(), d, Not(), and v.

Referenced by AndNot(), AndNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CopyIf(), ExclusiveNeither(), ExclusiveNeither(), ExclusiveNeither(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), Not(), Not(), Not(), Not(), Not(), Not(), and Not().

## Not() [7/12]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Not | ( | const Vec128< T, N > | v | ) |

References BitCast(), d, Not(), v, and Zero().

## Not() [8/12]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Not | ( | const Vec128< T, N > | v | ) |

References BitCast(), d, N, and v.

## Not() [9/12]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Not | ( | const Vec1< T > | v | ) |

References BitCast(), and v.

## Not() [10/12]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Not | ( | const Vec512< T > | v | ) |

References BitCast(), hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## Not() [11/12]

HWY_API svbool_t hwy::HWY_NAMESPACE::Not | ( | svbool_t | m | ) |

References HWY_SVE_PTRUE.

## Not() [12/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Not | ( | Vec256< T > | v | ) |

References Not(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## OddEven() [1/10]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::OddEven | ( | const V | a,
|  | const V | b
| ) |  |

References IfThenElse(), and hwy::HWY_NAMESPACE::detail::Iota0().

## OddEven() [2/10]

template<class V , HWY_IF_FLOAT_V(V) >

HWY_API V hwy::HWY_NAMESPACE::OddEven | ( | const V | odd,
|  | const V | even
| ) |  |

References BitCast(), d, and OddEven().

## OddEven() [3/10]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::OddEven | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## OddEven() [4/10]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::OddEven | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References BitCast(), d, IfThenElse(), Load(), MaskFromVec(), and OddEven().

Referenced by ConvertTo(), ConvertTo(), Eq128Upper(), Lt128(), Lt128Upper(), MaxOfLanes(), MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), MinOfLanes(), MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), MulEven(), MulOdd(), Ne128Upper(), OddEven(), OddEven(), OddEven(), OddEven(), OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), OddEven(), operator>>(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), Reverse2(), SumOfLanes(), SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), and hwy::HWY_NAMESPACE::detail::SumOfLanes().

## OddEven() [5/10]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >

HWY_INLINE Vec128< T, N > hwy::HWY_NAMESPACE::OddEven | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References BitCast(), d, IfThenElse(), Load(), and MaskFromVec().

## OddEven() [6/10]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::OddEven | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References OddEven(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## OddEven() [7/10]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::OddEven | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References OddEven(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## OddEven() [8/10]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::OddEven | ( | const Vec512< T > | a,
|  | const Vec512< T > | b
| ) |  |

References IfThenElse(), and OddEven().

## OddEven() [9/10]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::OddEven | ( | Vec1< T > | ,
|  | Vec1< T > | even
| ) |  |

## OddEven() [10/10]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::OddEven | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References OddEven(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## OddEvenBlocks() [1/10]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::OddEvenBlocks | ( | const V | odd,
|  | const V | even
| ) |  |

References hwy::CeilLog2(), ConcatUpperLower(), d, IfThenElse(), and Iota().

## OddEvenBlocks() [2/10]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::OddEvenBlocks | ( | Vec128< T, N > | ,
|  | Vec128< T, N > | even
| ) |  |

References OddEvenBlocks().

Referenced by OddEvenBlocks(), OddEvenBlocks(), OddEvenBlocks(), OddEvenBlocks(), OddEvenBlocks(), OddEvenBlocks(), and OddEvenBlocks().

## OddEvenBlocks() [3/10]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::OddEvenBlocks | ( | Vec1< T > | ,
|  | Vec1< T > | even
| ) |  |

## OddEvenBlocks() [4/10]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::OddEvenBlocks | ( | Vec256< double > | odd,
|  | Vec256< double > | even
| ) |  |

References OddEvenBlocks(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## OddEvenBlocks() [5/10]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::OddEvenBlocks | ( | Vec256< float > | odd,
|  | Vec256< float > | even
| ) |  |

References OddEvenBlocks(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## OddEvenBlocks() [6/10]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::OddEvenBlocks | ( | Vec256< T > | odd,
|  | Vec256< T > | even
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0.

## OddEvenBlocks() [7/10]

template<typename T >

Vec256< T > hwy::HWY_NAMESPACE::OddEvenBlocks | ( | Vec256< T > | odd,
|  | Vec256< T > | even
| ) |  |

References OddEvenBlocks(), and hwy::HWY_NAMESPACE::Vec256< T >::raw.

## OddEvenBlocks() [8/10]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::OddEvenBlocks | ( | Vec512< double > | odd,
|  | Vec512< double > | even
| ) |  |

References OddEvenBlocks(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## OddEvenBlocks() [9/10]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::OddEvenBlocks | ( | Vec512< float > | odd,
|  | Vec512< float > | even
| ) |  |

References OddEvenBlocks(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## OddEvenBlocks() [10/10]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::OddEvenBlocks | ( | Vec512< T > | odd,
|  | Vec512< T > | even
| ) |  |

References OddEvenBlocks(), and hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator!=() [1/20]

template<size_t N>

HWY_API Mask128< float, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [2/20]

template<size_t N>

HWY_API Mask128< int16_t, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [3/20]

template<size_t N>

HWY_API Mask128< int32_t, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [4/20]

template<size_t N>

HWY_API Mask128< int64_t, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< int64_t, N > | a,
|  | const Vec128< int64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [5/20]

template<size_t N>

HWY_API Mask128< int8_t, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< int8_t, N > | a,
|  | const Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [6/20]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by operator!=().

## operator!=() [7/20]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [8/20]

template<size_t N>

HWY_API Mask128< uint16_t, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [9/20]

template<size_t N>

HWY_API Mask128< uint32_t, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [10/20]

template<size_t N>

HWY_API Mask128< uint64_t, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< uint64_t, N > | a,
|  | const Vec128< uint64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [11/20]

template<size_t N>

HWY_API Mask128< uint8_t, N > hwy::HWY_NAMESPACE::operator!= | ( | const Vec128< uint8_t, N > | a,
|  | const Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [12/20]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::operator!= | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::FromBool(), and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator!=() [13/20]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::operator!= | ( | const Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator!=() [14/20]

template<size_t N>

HWY_API Mask128< double, N > hwy::HWY_NAMESPACE::operator!= | ( | Vec128< double, N > | a,
|  | Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator!=() [15/20]

HWY_API Mask256< double > hwy::HWY_NAMESPACE::operator!= | ( | Vec256< double > | a,
|  | Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator!=() [16/20]

HWY_API Mask256< float > hwy::HWY_NAMESPACE::operator!= | ( | Vec256< float > | a,
|  | Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator!=() [17/20]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::operator!= | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, operator!=(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator!=() [18/20]

HWY_API Mask512< double > hwy::HWY_NAMESPACE::operator!= | ( | Vec512< double > | a,
|  | Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator!=() [19/20]

HWY_API Mask512< float > hwy::HWY_NAMESPACE::operator!= | ( | Vec512< float > | a,
|  | Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator!=() [20/20]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::operator!= | ( | Vec512< T > | a,
|  | Vec512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator&() [1/4]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator& | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References And(), and operator&().

Referenced by operator&().

## operator&() [2/4]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::operator& | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References And().

## operator&() [3/4]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::operator& | ( | const Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References And().

## operator&() [4/4]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::operator& | ( | const Vec512< T > | a,
|  | const Vec512< T > | b
| ) |  |

References And().

## operator*() [1/39]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [2/39]

HWY_API Vec128< float, 1 > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< float, 1 > | a,
|  | const Vec128< float, 1 > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [3/39]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< int16_t > | a,
|  | const Vec128< int16_t > | b
| ) |  |

References operator*(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [4/39]

template<size_t N, HWY_IF_LE64(uint16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References operator*(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [5/39]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [6/39]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< int32_t > | a,
|  | const Vec128< int32_t > | b
| ) |  |

References operator*(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [7/39]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References operator*(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [8/39]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [9/39]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< uint16_t > | a,
|  | const Vec128< uint16_t > | b
| ) |  |

References operator*(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by operator*(), operator*(), operator*(), operator*(), operator*(), operator*(), operator*(), and operator*().

## operator*() [10/39]

template<size_t N, HWY_IF_LE64(uint16_t, N) >

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References operator*(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [11/39]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [12/39]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< uint32_t > | a,
|  | const Vec128< uint32_t > | b
| ) |  |

References operator*(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [13/39]

template<size_t N, HWY_IF_LE64(uint32_t, N) >

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References operator*(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [14/39]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::operator* | ( | const Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [15/39]

template<typename T , HWY_IF_FLOAT(T) >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::operator* | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator*() [16/39]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::operator* | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator*() [17/39]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::operator* | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator*() [18/39]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::operator* | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator*() [19/39]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::operator* | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator*() [20/39]

HWY_API Vec64< double > hwy::HWY_NAMESPACE::operator* | ( | const Vec64< double > | a,
|  | const Vec64< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [21/39]

template<class V , class D = DFromV<V>, HWY_IF_LANE_SIZE_D(D, 8) , HWY_IF_LT128_D(D) , HWY_IF_FLOAT_D(D) >

HWY_API V hwy::HWY_NAMESPACE::operator* | ( | V | x,
|  | V | y
| ) |  |

References GetLane(), and Set().

## operator*() [22/39]

template<class V , class D64 = DFromV<V>, typename T = LaneType<V>, HWY_IF_LANE_SIZE(T, 8) , HWY_IF_UNSIGNED(T) , HWY_IF_GE128_D(D64) >

HWY_API V hwy::HWY_NAMESPACE::operator* | ( | V | x,
|  | V | y
| ) |  |

References BitCast(), and MulEven().

## operator*() [23/39]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::operator* | ( | Vec128< float, N > | a,
|  | Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [24/39]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::operator* | ( | Vec128< int64_t > | a,
|  | Vec128< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [25/39]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator* | ( | Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::Mul().

## operator*() [26/39]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::operator* | ( | Vec128< uint64_t > | a,
|  | Vec128< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator*() [27/39]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::operator* | ( | Vec256< int16_t > | a,
|  | Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator*() [28/39]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::operator* | ( | Vec256< int32_t > | a,
|  | Vec256< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator*() [29/39]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::operator* | ( | Vec256< int64_t > | a,
|  | Vec256< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator*() [30/39]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::operator* | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator*() [31/39]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::operator* | ( | Vec256< uint16_t > | a,
|  | Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator*() [32/39]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::operator* | ( | Vec256< uint32_t > | a,
|  | Vec256< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator*() [33/39]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::operator* | ( | Vec256< uint64_t > | a,
|  | Vec256< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator*() [34/39]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::operator* | ( | Vec512< int16_t > | a,
|  | Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator*() [35/39]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::operator* | ( | Vec512< int32_t > | a,
|  | Vec512< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator*() [36/39]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::operator* | ( | Vec512< int64_t > | a,
|  | Vec512< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator*() [37/39]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::operator* | ( | Vec512< uint16_t > | a,
|  | Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator*() [38/39]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::operator* | ( | Vec512< uint32_t > | a,
|  | Vec512< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator*() [39/39]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::operator* | ( | Vec512< uint64_t > | a,
|  | Vec512< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [1/35]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [2/35]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [3/35]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [4/35]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [5/35]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< int64_t, N > | a,
|  | const Vec128< int64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [6/35]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< int8_t, N > | a,
|  | const Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [7/35]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [8/35]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [9/35]

template<size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< uint64_t, N > | a,
|  | const Vec128< uint64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [10/35]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::operator+ | ( | const Vec128< uint8_t, N > | a,
|  | const Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator+() [11/35]

HWY_API Vec1< double > hwy::HWY_NAMESPACE::operator+ | ( | const Vec1< double > | a,
|  | const Vec1< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator+() [12/35]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::operator+ | ( | const Vec1< float > | a,
|  | const Vec1< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator+() [13/35]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [14/35]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [15/35]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< int16_t > | a,
|  | const Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [16/35]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< int32_t > | a,
|  | const Vec256< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [17/35]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< int64_t > | a,
|  | const Vec256< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [18/35]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< int8_t > | a,
|  | const Vec256< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [19/35]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< uint16_t > | a,
|  | const Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [20/35]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< uint32_t > | a,
|  | const Vec256< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [21/35]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< uint64_t > | a,
|  | const Vec256< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [22/35]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec256< uint8_t > | a,
|  | const Vec256< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator+() [23/35]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [24/35]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [25/35]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< int16_t > | a,
|  | const Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [26/35]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< int32_t > | a,
|  | const Vec512< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [27/35]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< int64_t > | a,
|  | const Vec512< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [28/35]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< int8_t > | a,
|  | const Vec512< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [29/35]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< uint16_t > | a,
|  | const Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [30/35]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< uint32_t > | a,
|  | const Vec512< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [31/35]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< uint64_t > | a,
|  | const Vec512< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [32/35]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::operator+ | ( | const Vec512< uint8_t > | a,
|  | const Vec512< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator+() [33/35]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator+ | ( | Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::Add().

## operator+() [34/35]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::operator+ | ( | Vec1< T > | a,
|  | Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator+() [35/35]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::operator+ | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator-() [1/35]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::operator- | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [2/35]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::operator- | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [3/35]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::operator- | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [4/35]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::operator- | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [5/35]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::operator- | ( | const Vec128< int64_t, N > | a,
|  | const Vec128< int64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [6/35]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::operator- | ( | const Vec128< int8_t, N > | a,
|  | const Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [7/35]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::operator- | ( | const Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [8/35]

template<size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::operator- | ( | const Vec128< uint64_t, N > | a,
|  | const Vec128< uint64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [9/35]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::operator- | ( | const Vec128< uint8_t, N > | a,
|  | const Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [10/35]

HWY_API Vec1< double > hwy::HWY_NAMESPACE::operator- | ( | const Vec1< double > | a,
|  | const Vec1< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator-() [11/35]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::operator- | ( | const Vec1< float > | a,
|  | const Vec1< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator-() [12/35]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [13/35]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [14/35]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< int16_t > | a,
|  | const Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [15/35]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< int32_t > | a,
|  | const Vec256< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [16/35]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< int64_t > | a,
|  | const Vec256< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [17/35]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< int8_t > | a,
|  | const Vec256< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [18/35]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< uint16_t > | a,
|  | const Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [19/35]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< uint32_t > | a,
|  | const Vec256< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [20/35]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< uint64_t > | a,
|  | const Vec256< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [21/35]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec256< uint8_t > | a,
|  | const Vec256< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator-() [22/35]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [23/35]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [24/35]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< int16_t > | a,
|  | const Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [25/35]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< int32_t > | a,
|  | const Vec512< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [26/35]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< int64_t > | a,
|  | const Vec512< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [27/35]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< int8_t > | a,
|  | const Vec512< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [28/35]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< uint16_t > | a,
|  | const Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [29/35]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< uint32_t > | a,
|  | const Vec512< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [30/35]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< uint64_t > | a,
|  | const Vec512< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [31/35]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::operator- | ( | const Vec512< uint8_t > | a,
|  | const Vec512< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator-() [32/35]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator- | ( | Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::Sub().

## operator-() [33/35]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::operator- | ( | Vec128< uint16_t, N > | a,
|  | Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator-() [34/35]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::operator- | ( | Vec1< T > | a,
|  | Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator-() [35/35]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::operator- | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator/() [1/11]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::operator/ | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator/() [2/11]

HWY_API Vec128< float, 1 > hwy::HWY_NAMESPACE::operator/ | ( | const Vec128< float, 1 > | a,
|  | const Vec128< float, 1 > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator/() [3/11]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::operator/ | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References ApproximateReciprocal(), and operator/().

Referenced by operator/().

## operator/() [4/11]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::operator/ | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator/() [5/11]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::operator/ | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator/() [6/11]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::operator/ | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator/() [7/11]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::operator/ | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator/() [8/11]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::operator/ | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator/() [9/11]

HWY_API Vec64< double > hwy::HWY_NAMESPACE::operator/ | ( | const Vec64< double > | a,
|  | const Vec64< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator/() [10/11]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator/ | ( | Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator/() [11/11]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::operator/ | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator<() [1/4]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::operator< | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by operator<(), and operator>().

## operator<() [2/4]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::operator< | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::FromBool(), and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator<() [3/4]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::operator< | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, operator<(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator<() [4/4]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::operator< | ( | Vec512< T > | a,
|  | Vec512< T > | b
| ) |  |

## operator<<() [1/24]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< int16_t > | v,
|  | const Vec128< int16_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [2/24]

template<size_t N, HWY_IF_LE64(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< int16_t, N > | v,
|  | const Vec128< int16_t, N > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [3/24]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< int32_t > | v,
|  | const Vec128< int32_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [4/24]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< int32_t, N > | v,
|  | const Vec128< int32_t, N > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [5/24]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< int64_t > | v,
|  | const Vec128< int64_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [6/24]

HWY_API Vec128< int8_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< int8_t > | v,
|  | const Vec128< int8_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [7/24]

template<size_t N, HWY_IF_LE64(int8_t, N) >

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< int8_t, N > | v,
|  | const Vec128< int8_t, N > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [8/24]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< uint16_t > | v,
|  | const Vec128< uint16_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [9/24]

template<size_t N, HWY_IF_LE64(uint16_t, N) >

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< uint16_t, N > | v,
|  | const Vec128< uint16_t, N > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [10/24]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< uint32_t > | v,
|  | const Vec128< uint32_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [11/24]

template<size_t N, HWY_IF_LE64(uint32_t, N) >

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< uint32_t, N > | v,
|  | const Vec128< uint32_t, N > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [12/24]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< uint64_t > | v,
|  | const Vec128< uint64_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [13/24]

HWY_API Vec128< uint8_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< uint8_t > | v,
|  | const Vec128< uint8_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

Referenced by operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), and operator<<().

## operator<<() [14/24]

template<size_t N, HWY_IF_LE64(uint8_t, N) >

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::operator<< | ( | const Vec128< uint8_t, N > | v,
|  | const Vec128< uint8_t, N > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [15/24]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::operator<< | ( | const Vec1< T > | v,
|  | const Vec1< T > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw, ShiftLeftSame(), and v.

## operator<<() [16/24]

template<typename T , HWY_IF_SIGNED(T) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::operator<< | ( | const Vec512< T > | v,
|  | const Vec512< T > | bits
| ) |  |

References BitCast(), and v.

## operator<<() [17/24]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec512< uint16_t > | v,
|  | const Vec512< uint16_t > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## operator<<() [18/24]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec512< uint32_t > | v,
|  | const Vec512< uint32_t > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## operator<<() [19/24]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec512< uint64_t > | v,
|  | const Vec512< uint64_t > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## operator<<() [20/24]

HWY_API Vec64< int64_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec64< int64_t > | v,
|  | const Vec64< int64_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [21/24]

HWY_API Vec64< uint64_t > hwy::HWY_NAMESPACE::operator<< | ( | const Vec64< uint64_t > | v,
|  | const Vec64< uint64_t > | bits
| ) |  |

References operator<<(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [22/24]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator<< | ( | Vec128< T, N > | v,
|  | const Vec128< T, N > | bits
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator<<() [23/24]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator<< | ( | Vec128< T, N > | v,
|  | const Vec128< T, N > | bits
| ) |  |

References BitCast(), BroadcastSignBit(), d, IfThenElse(), MaskFromVec(), RebindMask(), and v.

## operator<<() [24/24]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::operator<< | ( | Vec256< T > | v,
|  | const Vec256< T > | bits
| ) |  |

References operator<<(), v, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator<=() [1/5]

template<size_t N>

HWY_API Mask128< float, N > hwy::HWY_NAMESPACE::operator<= | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator<=() [2/5]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::operator<= | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by operator<=(), and operator>=().

## operator<=() [3/5]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::operator<= | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::FromBool(), and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator<=() [4/5]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::operator<= | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, operator<=(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator<=() [5/5]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::operator<= | ( | Vec512< T > | a,
|  | Vec512< T > | b
| ) |  |

## operator==() [1/20]

template<size_t N>

HWY_API Mask128< float, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [2/20]

template<size_t N>

HWY_API Mask128< int32_t, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [3/20]

template<size_t N>

HWY_API Mask128< int64_t, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< int64_t, N > | a,
|  | const Vec128< int64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [4/20]

template<size_t N>

HWY_API Mask128< int8_t, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< int8_t, N > | a,
|  | const Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [5/20]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::bits, hwy::HWY_NAMESPACE::Mask128< T, N >::FromBool(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by operator==().

## operator==() [6/20]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [7/20]

template<size_t N>

HWY_API Mask128< uint16_t, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [8/20]

template<size_t N>

HWY_API Mask128< uint32_t, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [9/20]

template<size_t N>

HWY_API Mask128< uint64_t, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< uint64_t, N > | a,
|  | const Vec128< uint64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [10/20]

template<size_t N>

HWY_API Mask128< uint8_t, N > hwy::HWY_NAMESPACE::operator== | ( | const Vec128< uint8_t, N > | a,
|  | const Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [11/20]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::operator== | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::FromBool(), and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator==() [12/20]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::operator== | ( | const Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator==() [13/20]

template<size_t N>

HWY_API Mask128< double, N > hwy::HWY_NAMESPACE::operator== | ( | Vec128< double, N > | a,
|  | Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [14/20]

template<size_t N>

HWY_API Mask128< int16_t, N > hwy::HWY_NAMESPACE::operator== | ( | Vec128< int16_t, N > | a,
|  | Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator==() [15/20]

HWY_API Mask256< double > hwy::HWY_NAMESPACE::operator== | ( | Vec256< double > | a,
|  | Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator==() [16/20]

HWY_API Mask256< float > hwy::HWY_NAMESPACE::operator== | ( | Vec256< float > | a,
|  | Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator==() [17/20]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::operator== | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, operator==(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator==() [18/20]

HWY_API Mask512< double > hwy::HWY_NAMESPACE::operator== | ( | Vec512< double > | a,
|  | Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator==() [19/20]

HWY_API Mask512< float > hwy::HWY_NAMESPACE::operator== | ( | Vec512< float > | a,
|  | Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator==() [20/20]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::operator== | ( | Vec512< T > | a,
|  | Vec512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [1/33]

template<size_t N>

HWY_API Mask128< float, N > hwy::HWY_NAMESPACE::operator> | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>() [2/33]

template<size_t N>

HWY_API Mask128< int16_t, N > hwy::HWY_NAMESPACE::operator> | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>() [3/33]

template<size_t N>

HWY_API Mask128< int32_t, N > hwy::HWY_NAMESPACE::operator> | ( | const Vec128< int32_t, N > | a,
|  | const Vec128< int32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>() [4/33]

template<size_t N>

HWY_API Mask128< int64_t, N > hwy::HWY_NAMESPACE::operator> | ( | const Vec128< int64_t, N > | a,
|  | const Vec128< int64_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>() [5/33]

template<size_t N>

HWY_API Mask128< int8_t, N > hwy::HWY_NAMESPACE::operator> | ( | const Vec128< int8_t, N > | a,
|  | const Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>() [6/33]

template<size_t N>

HWY_API Mask128< uint16_t, N > hwy::HWY_NAMESPACE::operator> | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>() [7/33]

template<size_t N>

HWY_API Mask128< uint32_t, N > hwy::HWY_NAMESPACE::operator> | ( | const Vec128< uint32_t, N > | a,
|  | const Vec128< uint32_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>() [8/33]

template<size_t N>

HWY_API Mask128< uint64_t, N > hwy::HWY_NAMESPACE::operator> | ( | const Vec128< uint64_t, N > | a,
|  | const Vec128< uint64_t, N > | b
| ) |  |

References And(), BitCast(), d, MaskFromVec(), and Or().

## operator>() [9/33]

template<size_t N>

HWY_API Mask128< uint8_t, N > hwy::HWY_NAMESPACE::operator> | ( | const Vec128< uint8_t, N > | a,
|  | const Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>() [10/33]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::operator> | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::FromBool(), and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator>() [11/33]

HWY_API Mask256< uint16_t > hwy::HWY_NAMESPACE::operator> | ( | const Vec256< uint16_t > | a,
|  | const Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [12/33]

HWY_API Mask256< uint32_t > hwy::HWY_NAMESPACE::operator> | ( | const Vec256< uint32_t > | a,
|  | const Vec256< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [13/33]

HWY_API Mask256< uint64_t > hwy::HWY_NAMESPACE::operator> | ( | const Vec256< uint64_t > | a,
|  | const Vec256< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [14/33]

template<size_t N>

HWY_API Mask128< double, N > hwy::HWY_NAMESPACE::operator> | ( | Vec128< double, N > | a,
|  | Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>() [15/33]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::operator> | ( | Vec128< T, N > | a,
|  | Vec128< T, N > | b
| ) |  |

References operator<(), and operator>().

Referenced by operator>(), and operator>().

## operator>() [16/33]

HWY_API Mask256< double > hwy::HWY_NAMESPACE::operator> | ( | Vec256< double > | a,
|  | Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [17/33]

HWY_API Mask256< float > hwy::HWY_NAMESPACE::operator> | ( | Vec256< float > | a,
|  | Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [18/33]

HWY_API Mask256< int16_t > hwy::HWY_NAMESPACE::operator> | ( | Vec256< int16_t > | a,
|  | Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [19/33]

HWY_API Mask256< int32_t > hwy::HWY_NAMESPACE::operator> | ( | Vec256< int32_t > | a,
|  | Vec256< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [20/33]

HWY_API Mask256< int64_t > hwy::HWY_NAMESPACE::operator> | ( | Vec256< int64_t > | a,
|  | Vec256< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [21/33]

HWY_API Mask256< int8_t > hwy::HWY_NAMESPACE::operator> | ( | Vec256< int8_t > | a,
|  | Vec256< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [22/33]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::operator> | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, operator>(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator>() [23/33]

HWY_API Mask256< uint8_t > hwy::HWY_NAMESPACE::operator> | ( | Vec256< uint8_t > | a,
|  | Vec256< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>() [24/33]

HWY_API Mask512< double > hwy::HWY_NAMESPACE::operator> | ( | Vec512< double > | a,
|  | Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [25/33]

HWY_API Mask512< float > hwy::HWY_NAMESPACE::operator> | ( | Vec512< float > | a,
|  | Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [26/33]

HWY_API Mask512< int16_t > hwy::HWY_NAMESPACE::operator> | ( | Vec512< int16_t > | a,
|  | Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [27/33]

HWY_API Mask512< int32_t > hwy::HWY_NAMESPACE::operator> | ( | Vec512< int32_t > | a,
|  | Vec512< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [28/33]

HWY_API Mask512< int64_t > hwy::HWY_NAMESPACE::operator> | ( | Vec512< int64_t > | a,
|  | Vec512< int64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [29/33]

HWY_API Mask512< int8_t > hwy::HWY_NAMESPACE::operator> | ( | Vec512< int8_t > | a,
|  | Vec512< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [30/33]

HWY_API Mask512< uint16_t > hwy::HWY_NAMESPACE::operator> | ( | Vec512< uint16_t > | a,
|  | Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [31/33]

HWY_API Mask512< uint32_t > hwy::HWY_NAMESPACE::operator> | ( | Vec512< uint32_t > | a,
|  | Vec512< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [32/33]

HWY_API Mask512< uint64_t > hwy::HWY_NAMESPACE::operator> | ( | Vec512< uint64_t > | a,
|  | Vec512< uint64_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>() [33/33]

HWY_API Mask512< uint8_t > hwy::HWY_NAMESPACE::operator> | ( | Vec512< uint8_t > | a,
|  | Vec512< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>=() [1/9]

template<size_t N>

HWY_API Mask128< float, N > hwy::HWY_NAMESPACE::operator>= | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>=() [2/9]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::operator>= | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::FromBool(), and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## operator>=() [3/9]

template<size_t N>

HWY_API Mask128< double, N > hwy::HWY_NAMESPACE::operator>= | ( | Vec128< double, N > | a,
|  | Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>=() [4/9]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::operator>= | ( | Vec128< T, N > | a,
|  | Vec128< T, N > | b
| ) |  |

References operator<=(), and operator>=().

Referenced by operator>=(), and operator>=().

## operator>=() [5/9]

HWY_API Mask256< double > hwy::HWY_NAMESPACE::operator>= | ( | Vec256< double > | a,
|  | Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>=() [6/9]

HWY_API Mask256< float > hwy::HWY_NAMESPACE::operator>= | ( | Vec256< float > | a,
|  | Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## operator>=() [7/9]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::operator>= | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, operator>=(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator>=() [8/9]

HWY_API Mask512< double > hwy::HWY_NAMESPACE::operator>= | ( | Vec512< double > | a,
|  | Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>=() [9/9]

HWY_API Mask512< float > hwy::HWY_NAMESPACE::operator>= | ( | Vec512< float > | a,
|  | Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## operator>>() [1/41]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int16_t > | v,
|  | const Vec128< int16_t > | bits
| ) |  |

References Neg(), operator>>(), and v.

## operator>>() [2/41]

HWY_API Vec128< int16_t, 1 > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int16_t, 1 > | v,
|  | const Vec128< int16_t, 1 > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator>>() [3/41]

template<size_t N, HWY_IF_LE64(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int16_t, N > | v,
|  | const Vec128< int16_t, N > | bits
| ) |  |

References Neg(), operator>>(), and v.

## operator>>() [4/41]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int16_t, N > | v,
|  | const Vec128< int16_t, N > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator>>() [5/41]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int32_t > | v,
|  | const Vec128< int32_t > | bits
| ) |  |

References Neg(), operator>>(), and v.

## operator>>() [6/41]

HWY_API Vec128< int32_t, 1 > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int32_t, 1 > | v,
|  | const Vec128< int32_t, 1 > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator>>() [7/41]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int32_t, N > | v,
|  | const Vec128< int32_t, N > | bits
| ) |  |

References Neg(), operator>>(), and v.

## operator>>() [8/41]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int32_t, N > | v,
|  | const Vec128< int32_t, N > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator>>() [9/41]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int64_t > | v,
|  | const Vec128< int64_t > | bits
| ) |  |

References Neg(), operator>>(), and v.

## operator>>() [10/41]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int64_t, N > | v,
|  | const Vec128< int64_t, N > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator>>() [11/41]

HWY_API Vec128< int8_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int8_t > | v,
|  | const Vec128< int8_t > | bits
| ) |  |

References Neg(), operator>>(), and v.

## operator>>() [12/41]

template<size_t N, HWY_IF_LE64(int8_t, N) >

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< int8_t, N > | v,
|  | const Vec128< int8_t, N > | bits
| ) |  |

References Neg(), operator>>(), and v.

## operator>>() [13/41]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint16_t > | v,
|  | const Vec128< uint16_t > | bits
| ) |  |

References BitCast(), Neg(), operator>>(), and v.

## operator>>() [14/41]

HWY_API Vec128< uint16_t, 1 > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint16_t, 1 > | in,
|  | const Vec128< uint16_t, 1 > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>>() [15/41]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint16_t, N > | in,
|  | const Vec128< uint16_t, N > | bits
| ) |  |

References d, IfThenElse(), MulHigh(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), and Zero().

## operator>>() [16/41]

template<size_t N, HWY_IF_LE64(uint16_t, N) >

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint16_t, N > | v,
|  | const Vec128< uint16_t, N > | bits
| ) |  |

References BitCast(), Neg(), operator>>(), and v.

## operator>>() [17/41]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint32_t > | v,
|  | const Vec128< uint32_t > | bits
| ) |  |

References BitCast(), Neg(), operator>>(), and v.

## operator>>() [18/41]

HWY_API Vec128< uint32_t, 1 > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint32_t, 1 > | in,
|  | const Vec128< uint32_t, 1 > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## operator>>() [19/41]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint32_t, N > | in,
|  | const Vec128< uint32_t, N > | bits
| ) |  |

References BitCast(), IfThenElse(), MulEven(), OddEven(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), and Zero().

## operator>>() [20/41]

template<size_t N, HWY_IF_LE64(uint32_t, N) >

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint32_t, N > | v,
|  | const Vec128< uint32_t, N > | bits
| ) |  |

References BitCast(), Neg(), operator>>(), and v.

## operator>>() [21/41]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint64_t > | v,
|  | const Vec128< uint64_t > | bits
| ) |  |

References BitCast(), Neg(), operator>>(), and v.

## operator>>() [22/41]

HWY_API Vec128< uint8_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint8_t > | v,
|  | const Vec128< uint8_t > | bits
| ) |  |

References BitCast(), Neg(), operator>>(), and v.

Referenced by operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), and operator>>().

## operator>>() [23/41]

template<size_t N, HWY_IF_LE64(uint8_t, N) >

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::operator>> | ( | const Vec128< uint8_t, N > | v,
|  | const Vec128< uint8_t, N > | bits
| ) |  |

References BitCast(), Neg(), operator>>(), and v.

## operator>>() [24/41]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::operator>> | ( | const Vec1< T > | v,
|  | const Vec1< T > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw, ShiftRightSame(), and v.

## operator>>() [25/41]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec512< int16_t > | v,
|  | const Vec512< int16_t > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## operator>>() [26/41]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec512< int32_t > | v,
|  | const Vec512< int32_t > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## operator>>() [27/41]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec512< int64_t > | v,
|  | const Vec512< int64_t > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## operator>>() [28/41]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec512< uint16_t > | v,
|  | const Vec512< uint16_t > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## operator>>() [29/41]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec512< uint32_t > | v,
|  | const Vec512< uint32_t > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## operator>>() [30/41]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec512< uint64_t > | v,
|  | const Vec512< uint64_t > | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and v.

## operator>>() [31/41]

HWY_API Vec64< int64_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec64< int64_t > | v,
|  | const Vec64< int64_t > | bits
| ) |  |

References Neg(), operator>>(), and v.

## operator>>() [32/41]

HWY_API Vec64< uint64_t > hwy::HWY_NAMESPACE::operator>> | ( | const Vec64< uint64_t > | v,
|  | const Vec64< uint64_t > | bits
| ) |  |

References BitCast(), Neg(), operator>>(), and v.

## operator>>() [33/41]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator>> | ( | Vec128< T, N > | v,
|  | const Vec128< T, N > | bits
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## operator>>() [34/41]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator>> | ( | Vec128< T, N > | v,
|  | const Vec128< T, N > | bits
| ) |  |

References BitCast(), BroadcastSignBit(), d, IfThenElse(), MaskFromVec(), RebindMask(), and v.

## operator>>() [35/41]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::operator>> | ( | Vec256< int16_t > | v,
|  | Vec256< int16_t > | bits
| ) |  |

References operator>>(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and v.

## operator>>() [36/41]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::operator>> | ( | Vec256< int32_t > | v,
|  | Vec256< int32_t > | bits
| ) |  |

References operator>>(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and v.

## operator>>() [37/41]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::operator>> | ( | Vec256< int64_t > | v,
|  | Vec256< int64_t > | bits
| ) |  |

References operator>>(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and v.

## operator>>() [38/41]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::operator>> | ( | Vec256< T > | v,
|  | const Vec256< T > | bits
| ) |  |

References operator>>(), v, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## operator>>() [39/41]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::operator>> | ( | Vec256< uint16_t > | v,
|  | Vec256< uint16_t > | bits
| ) |  |

References d, IfThenElse(), MulHigh(), operator>>(), hwy::HWY_NAMESPACE::Vec256< T >::raw, Set(), v, and Zero().

## operator>>() [40/41]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::operator>> | ( | Vec256< uint32_t > | v,
|  | Vec256< uint32_t > | bits
| ) |  |

References operator>>(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and v.

## operator>>() [41/41]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::operator>> | ( | Vec256< uint64_t > | v,
|  | Vec256< uint64_t > | bits
| ) |  |

References operator>>(), hwy::HWY_NAMESPACE::Vec256< T >::raw, and v.

## operator^() [1/4]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator^ | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References operator^(), and Xor().

Referenced by operator^().

## operator^() [2/4]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::operator^ | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References Xor().

## operator^() [3/4]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::operator^ | ( | const Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References Xor().

## operator^() [4/4]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::operator^ | ( | const Vec512< T > | a,
|  | const Vec512< T > | b
| ) |  |

References Xor().

## operator|() [1/4]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::operator| | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References operator|(), and Or().

Referenced by operator|().

## operator|() [2/4]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::operator| | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References Or().

## operator|() [3/4]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::operator| | ( | const Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References Or().

## operator|() [4/4]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::operator| | ( | const Vec512< T > | a,
|  | const Vec512< T > | b
| ) |  |

References Or().

## Or() [1/17]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::Or | ( | const Mask128< T, N > | a,
|  | Mask128< T, N > | b
| ) |  |

References d, MaskFromVec(), Or(), and VecFromMask().

## Or() [2/17]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::Or | ( | const Mask1< T > | a,
|  | Mask1< T > | b
| ) |  |

References d, MaskFromVec(), Or(), and VecFromMask().

## Or() [3/17]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::Or | ( | const Mask256< T > | a,
|  | Mask256< T > | b
| ) |  |

References d, MaskFromVec(), Or(), and VecFromMask().

## Or() [4/17]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::Or | ( | const Mask512< T > | a,
|  | Mask512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::Or().

## Or() [5/17]

template<class V , HWY_IF_FLOAT_V(V) >

HWY_API V hwy::HWY_NAMESPACE::Or | ( | const V | a,
|  | const V | b
| ) |  |

References BitCast(), and Or().

## Or() [6/17]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Or | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Or() [7/17]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Or | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Or() [8/17]

template<typename T , size_t N, HWY_IF_FLOAT(T) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Or | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References BitCast(), and d.

Referenced by Acos(), Asin(), Asinh(), Atan(), ConvertTo(), ConvertTo(), CopySign(), CopySign(), CopySign(), CopySign(), CopySignToAbs(), CopySignToAbs(), CopySignToAbs(), CopySignToAbs(), Exp(), Expm1(), hwy::HWY_NAMESPACE::impl::Log(), Ne128(), Ne128(), Ne128(), hwy::HWY_NAMESPACE::detail::RotateRight< kBits >::operator()(), operator>(), operator|(), operator|(), operator|(), operator|(), Or(), Or(), Or(), Or(), Or(), Or3(), Or3(), Or3(), Or3(), OrAnd(), OrAnd(), OrAnd(), OrAnd(), hwy::HWY_NAMESPACE::Pack16< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Pack(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), and hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack().

## Or() [9/17]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Or | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References BitCast(), d, and N.

## Or() [10/17]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Or | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References BitCast().

## Or() [11/17]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Or | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Or() [12/17]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Or | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Or() [13/17]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Or | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Or() [14/17]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Or | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Or() [15/17]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Or | ( | const Vec512< T > | a,
|  | const Vec512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Or() [16/17]

HWY_API svbool_t hwy::HWY_NAMESPACE::Or | ( | svbool_t | a,
|  | svbool_t | b
| ) |  |

## Or() [17/17]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Or | ( | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References Or(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Or3() [1/5]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Or3 | ( | V | o1,
|  | V | o2,
|  | V | o3
| ) |  |

References Or().

## Or3() [2/5]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Or3 | ( | Vec128< T, N > | o1,
|  | Vec128< T, N > | o2,
|  | Vec128< T, N > | o3
| ) |  |

References Or(), and Or3().

Referenced by Or3().

## Or3() [3/5]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Or3 | ( | Vec1< T > | o1,
|  | Vec1< T > | o2,
|  | Vec1< T > | o3
| ) |  |

References Or().

## Or3() [4/5]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Or3 | ( | Vec256< T > | o1,
|  | Vec256< T > | o2,
|  | Vec256< T > | o3
| ) |  |

References Or().

## Or3() [5/5]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Or3 | ( | Vec512< T > | o1,
|  | Vec512< T > | o2,
|  | Vec512< T > | o3
| ) |  |

References BitCast(), and d.

## OrAnd() [1/5]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::OrAnd | ( | const V | o,
|  | const V | a1,
|  | const V | a2
| ) |  |

References And(), and Or().

## OrAnd() [2/5]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::OrAnd | ( | const Vec1< T > | o,
|  | const Vec1< T > | a1,
|  | const Vec1< T > | a2
| ) |  |

References And(), and Or().

## OrAnd() [3/5]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::OrAnd | ( | Vec128< T, N > | o,
|  | Vec128< T, N > | a1,
|  | Vec128< T, N > | a2
| ) |  |

References And(), Or(), and OrAnd().

Referenced by Lt128(), OrAnd(), hwy::HWY_NAMESPACE::Pack16< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Pack(), RandomValues(), hwy::HWY_NAMESPACE::Pack16< 9 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), and hwy::HWY_NAMESPACE::Pack8< 5 >::Unpack().

## OrAnd() [4/5]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::OrAnd | ( | Vec256< T > | o,
|  | Vec256< T > | a1,
|  | Vec256< T > | a2
| ) |  |

References And(), and Or().

## OrAnd() [5/5]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::OrAnd | ( | Vec512< T > | o,
|  | Vec512< T > | a1,
|  | Vec512< T > | a2
| ) |  |

References BitCast(), and d.

## PopulationCount() [1/7]

template<typename V , class D = DFromV<V>, HWY_IF_LANE_SIZE_D(D, 1) , HWY_IF_GE128_D(D) , HWY_IF_POW2_GE(D, HWY_MIN_POW2_FOR_128) >

HWY_API V hwy::HWY_NAMESPACE::PopulationCount | ( | V | v | ) |

References And(), d, HWY_ALIGN, LoadDup128(), Set(), TableLookupBytes(), and v.

## PopulationCount() [2/7]

template<typename V , class D = DFromV<V>, HWY_IF_LANE_SIZE_D(D, 2) >

HWY_API V hwy::HWY_NAMESPACE::PopulationCount | ( | V | v | ) |

References And(), BitCast(), d, PopulationCount(), Set(), and v.

## PopulationCount() [3/7]

template<typename T , size_t N, HWY_IF_NOT_FLOAT(T) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::PopulationCount | ( | Vec128< T, N > | v | ) |

References v.

Referenced by PopulationCount().

## PopulationCount() [4/7]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::PopulationCount | ( | Vec128< T, N > | v | ) |

References hwy::HWY_NAMESPACE::detail::PopulationCount(), and v.

## PopulationCount() [5/7]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::PopulationCount | ( | Vec1< T > | v | ) |

References hwy::PopCount(), and v.

## PopulationCount() [6/7]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::PopulationCount | ( | Vec256< T > | v | ) |

References hwy::HWY_NAMESPACE::detail::PopulationCount(), and v.

## PopulationCount() [7/7]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::PopulationCount | ( | Vec512< T > | v | ) |

References hwy::HWY_NAMESPACE::detail::PopulationCount(), and v.

## Pow2()

template<class D >

HWY_INLINE HWY_MAYBE_UNUSED constexpr int hwy::HWY_NAMESPACE::Pow2 | ( | D |  | ) |

constexpr

Referenced by hwy::HWY_NAMESPACE::detail::IsSupportedLMUL(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), and TableLookupBytes().

## Print()

template<class D , class V = VFromD<D>>

void hwy::HWY_NAMESPACE::Print | ( | const D | d,
|  | const char * | caption,
|  | VecArg< V > | v,
|  | size_t | lane_u = `0`,
|  | size_t | max_lanes = `7`
| ) |  |

References d, Lanes(), N, hwy::detail::PrintArray(), Store(), and v.

Referenced by AssertMaskEqual(), and hwy::HWY_NAMESPACE::detail::MaybePrintVector().

## PromoteTo() [1/90]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< int16_t > | d,
|  | const Vec64< uint8_t > | v
| ) |  |

References BitCast(), d, PromoteTo(), and v.

## PromoteTo() [2/90]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< int16_t > | ,
|  | const Vec64< int8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [3/90]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< int32_t > | d,
|  | const Vec32< uint8_t > | v
| ) |  |

References BitCast(), d, PromoteTo(), and v.

## PromoteTo() [4/90]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< int32_t > | d,
|  | const Vec64< uint16_t > | v
| ) |  |

References BitCast(), d, PromoteTo(), and v.

## PromoteTo() [5/90]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< int32_t > | ,
|  | const Vec32< int8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [6/90]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< int32_t > | ,
|  | const Vec64< int16_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [7/90]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< int64_t > | ,
|  | const Vec64< int32_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [8/90]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< uint16_t > | ,
|  | const Vec64< uint8_t > | v
| ) |  |

References PromoteTo(), and v.

Referenced by hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), and hwy::HWY_NAMESPACE::detail::PromoteUpperTo().

## PromoteTo() [9/90]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< uint32_t > | ,
|  | const Vec32< uint8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [10/90]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< uint32_t > | ,
|  | const Vec64< uint16_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [11/90]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full128< uint64_t > | ,
|  | const Vec64< uint32_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [12/90]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< double > | ,
|  | const Vec128< float, 4 > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [13/90]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< double > | ,
|  | const Vec128< int32_t, 4 > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [14/90]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< float > | df32,
|  | const Vec128< bfloat16_t > | v
| ) |  |

References BitCast(), PromoteTo(), and v.

## PromoteTo() [15/90]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< float > | df32,
|  | const Vec128< float16_t > | v
| ) |  |

References BitCast(), ConvertTo(), IfThenElse(), PromoteTo(), Set(), ShiftLeft(), v, and Zero().

## PromoteTo() [16/90]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< int16_t > | ,
|  | Vec128< int8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [17/90]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< int16_t > | ,
|  | Vec128< uint8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [18/90]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< int32_t > | ,
|  | Vec128< int16_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [19/90]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< int32_t > | ,
|  | Vec128< int8_t, 8 > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [20/90]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< int32_t > | ,
|  | Vec128< uint16_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [21/90]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< int32_t > | ,
|  | Vec128< uint8_t, 8 > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [22/90]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< int64_t > | ,
|  | Vec128< int32_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [23/90]

template<typename T , typename TN >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< T > | d,
|  | const Vec128< TN > | v
| ) |  |

References d, LowerHalf(), PromoteTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## PromoteTo() [24/90]

template<typename TW , typename TN >

HWY_API Vec256< TW > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< TW > | d,
|  | const Vec64< TN > | v
| ) |  |

References d, LowerHalf(), PromoteTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), v, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## PromoteTo() [25/90]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< uint16_t > | ,
|  | Vec128< uint8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [26/90]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< uint32_t > | ,
|  | Vec128< uint16_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [27/90]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< uint32_t > | ,
|  | Vec128< uint8_t, 8 > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [28/90]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full256< uint64_t > | ,
|  | Vec128< uint32_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [29/90]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< double > | ,
|  | Vec256< float > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [30/90]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< double > | ,
|  | Vec256< int32_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [31/90]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< float > | df32,
|  | const Vec256< bfloat16_t > | v
| ) |  |

References BitCast(), PromoteTo(), and v.

## PromoteTo() [32/90]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< float > | ,
|  | const Vec256< float16_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [33/90]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< int16_t > | ,
|  | Vec256< int8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [34/90]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< int16_t > | ,
|  | Vec256< uint8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [35/90]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< int32_t > | ,
|  | Vec128< int8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [36/90]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< int32_t > | ,
|  | Vec128< uint8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [37/90]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< int32_t > | ,
|  | Vec256< int16_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [38/90]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< int32_t > | ,
|  | Vec256< uint16_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [39/90]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< int64_t > | ,
|  | Vec256< int32_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [40/90]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< uint16_t > | ,
|  | Vec256< uint8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [41/90]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< uint32_t > | ,
|  | Vec128< uint8_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [42/90]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< uint32_t > | ,
|  | Vec256< uint16_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [43/90]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::PromoteTo | ( | Full512< uint64_t > | ,
|  | Vec256< uint32_t > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [44/90]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< double, N, 0 > | ,
|  | const Vec128< float, N > | v
| ) |  |

References v.

## PromoteTo() [45/90]

template<size_t N, HWY_IF_LE128(double, N) >

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< double, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References v.

## PromoteTo() [46/90]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< double, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References v.

## PromoteTo() [47/90]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float, N, 0 > | df32,
|  | const Vec128< bfloat16_t, N > | v
| ) |  |

References BitCast(), PromoteTo(), and v.

## PromoteTo() [48/90]

template<size_t N, HWY_IF_LE128(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float, N, 0 > | df32,
|  | const Vec128< bfloat16_t, N > | v
| ) |  |

References BitCast(), PromoteTo(), and v.

## PromoteTo() [49/90]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float, N, 0 > | df32,
|  | const Vec128< float16_t, N > | v
| ) |  |

References BitCast(), ConvertTo(), IfThenElse(), PromoteTo(), Set(), ShiftLeft(), v, and Zero().

## PromoteTo() [50/90]

template<size_t N, HWY_IF_LE128(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float, N, 0 > | df32,
|  | const Vec128< float16_t, N > | v
| ) |  |

References BitCast(), ConvertTo(), IfThenElse(), PromoteTo(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), ShiftLeft(), v, and Zero().

## PromoteTo() [51/90]

template<size_t N>

HWY_INLINE_F16 Vec128< float, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float, N, 0 > | df32,
|  | const Vec128< float16_t, N > | v
| ) |  |

References BitCast(), ConvertTo(), IfThenElse(), PromoteTo(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), ShiftLeft(), v, and Zero().

## PromoteTo() [52/90]

template<size_t N, int kPow2>

HWY_API auto hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float32_t, N, kPow2 > | d,
|  | VFromD< Rebind< bfloat16_t, decltype(d)> > | v
| ) |  | -> VFromD<decltype(d)>

References BitCast(), d, PromoteTo(), and v.

## PromoteTo() [53/90]

template<size_t N, int kPow2>

HWY_API svfloat32_t hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float32_t, N, kPow2 > | df32,
|  | const svuint16_t | v
| ) |  |

References BitCast(), and v.

## PromoteTo() [54/90]

template<size_t N, int kPow2>

HWY_API svfloat32_t hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float32_t, N, kPow2 > | ,
|  | const svfloat16_t | v
| ) |  |

References v.

## PromoteTo() [55/90]

template<size_t N, int kPow2>

HWY_API svfloat64_t hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float64_t, N, kPow2 > | ,
|  | const svfloat32_t | v
| ) |  |

References v.

## PromoteTo() [56/90]

template<size_t N, int kPow2>

HWY_API svfloat64_t hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< float64_t, N, kPow2 > | ,
|  | const svint32_t | v
| ) |  |

References v.

## PromoteTo() [57/90]

template<size_t N, HWY_IF_LE64(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int16_t, N, 0 > | d,
|  | const Vec128< uint8_t, N > | v
| ) |  |

References BitCast(), d, PromoteTo(), and v.

## PromoteTo() [58/90]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int16_t, N, 0 > | di,
|  | const Vec128< uint8_t, N > | v
| ) |  |

References BitCast(), PromoteTo(), and v.

## PromoteTo() [59/90]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int16_t, N, 0 > | ,
|  | const Vec128< int8_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [60/90]

template<size_t N, HWY_IF_LE128(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int16_t, N, 0 > | ,
|  | const Vec128< int8_t, N > | v
| ) |  |

References v.

## PromoteTo() [61/90]

template<size_t N, int kPow2>

HWY_API auto hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int16_t, N, kPow2 > | d,
|  | VFromD< Rebind< uint8_t, decltype(d)> > | v
| ) |  | -> VFromD<decltype(d)>

References BitCast(), d, PromoteTo(), and v.

## PromoteTo() [62/90]

template<size_t N, int kPow2>

HWY_API svint16_t hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int16_t, N, kPow2 > | dto,
|  | svuint8_t | vfrom
| ) |  |

References BitCast(), and PromoteTo().

## PromoteTo() [63/90]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, 0 > | di,
|  | const Vec128< uint16_t, N > | v
| ) |  |

References BitCast(), PromoteTo(), and v.

## PromoteTo() [64/90]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, 0 > | di,
|  | const Vec128< uint8_t, N > | v
| ) |  |

References BitCast(), PromoteTo(), and v.

## PromoteTo() [65/90]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, 0 > | ,
|  | const Vec128< int16_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [66/90]

template<size_t N, HWY_IF_LE128(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, 0 > | ,
|  | const Vec128< int16_t, N > | v
| ) |  |

References v.

## PromoteTo() [67/90]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, 0 > | ,
|  | const Vec128< int8_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [68/90]

template<size_t N, HWY_IF_LE128(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, 0 > | ,
|  | const Vec128< int8_t, N > | v
| ) |  |

References v.

## PromoteTo() [69/90]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, 0 > | ,
|  | const Vec128< uint16_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [70/90]

template<size_t N, HWY_IF_LE64(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, 0 > | ,
|  | const Vec128< uint8_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [71/90]

template<size_t N, int kPow2>

HWY_API auto hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, kPow2 > | d,
|  | VFromD< Rebind< uint16_t, decltype(d)> > | v
| ) |  | -> VFromD<decltype(d)>

References BitCast(), d, PromoteTo(), and v.

## PromoteTo() [72/90]

template<size_t N, int kPow2>

HWY_API auto hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, kPow2 > | d,
|  | VFromD< Rebind< uint8_t, decltype(d)> > | v
| ) |  | -> VFromD<decltype(d)>

References BitCast(), d, PromoteTo(), and v.

## PromoteTo() [73/90]

template<size_t N, int kPow2>

HWY_API svint32_t hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, kPow2 > | dto,
|  | svint8_t | vfrom
| ) |  |

References PromoteTo().

## PromoteTo() [74/90]

template<size_t N, int kPow2>

HWY_API svint32_t hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, kPow2 > | dto,
|  | svuint16_t | vfrom
| ) |  |

References BitCast(), and PromoteTo().

## PromoteTo() [75/90]

template<size_t N, int kPow2>

HWY_API svint32_t hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int32_t, N, kPow2 > | dto,
|  | svuint8_t | vfrom
| ) |  |

References BitCast(), and PromoteTo().

## PromoteTo() [76/90]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int64_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [77/90]

template<size_t N, HWY_IF_LE128(int64_t, N) >

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< int64_t, N, 0 > | ,
|  | const Vec128< int32_t, N > | v
| ) |  |

References v.

## PromoteTo() [78/90]

template<typename FromT , typename ToT , size_t N>

HWY_API Vec128< ToT, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< ToT, N, 0 > | ,
|  | Vec128< FromT, N > | from
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## PromoteTo() [79/90]

template<size_t N, HWY_IF_LE64(uint16_t, N) >

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< uint16_t, N, 0 > | ,
|  | const Vec128< uint8_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [80/90]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< uint16_t, N, 0 > | ,
|  | const Vec128< uint8_t, N > | v
| ) |  |

References v.

## PromoteTo() [81/90]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< uint32_t, N, 0 > | ,
|  | const Vec128< uint16_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [82/90]

template<size_t N, HWY_IF_LE128(uint32_t, N) >

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< uint32_t, N, 0 > | ,
|  | const Vec128< uint16_t, N > | v
| ) |  |

References v.

## PromoteTo() [83/90]

template<size_t N, HWY_IF_LE64(uint32_t, N) >

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< uint32_t, N, 0 > | ,
|  | const Vec128< uint8_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [84/90]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< uint32_t, N, 0 > | ,
|  | const Vec128< uint8_t, N > | v
| ) |  |

References v.

## PromoteTo() [85/90]

template<size_t N, int kPow2>

HWY_API svuint32_t hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< uint32_t, N, kPow2 > | dto,
|  | svuint8_t | vfrom
| ) |  |

References PromoteTo().

## PromoteTo() [86/90]

template<size_t N, HWY_IF_LE64(uint64_t, N) >

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< uint64_t, N, 0 > | ,
|  | const Vec128< uint32_t, N > | v
| ) |  |

References PromoteTo(), and v.

## PromoteTo() [87/90]

template<size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::PromoteTo | ( | Simd< uint64_t, N, 0 > | ,
|  | const Vec128< uint32_t, N > | v
| ) |  |

References v.

## PromoteTo() [88/90]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::PromoteTo | ( | Sisd< float > | d,
|  | const Vec1< bfloat16_t > | v
| ) |  |

References d, hwy::F32FromBF16(), Set(), and v.

## PromoteTo() [89/90]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::PromoteTo | ( | Sisd< float > | ,
|  | const Vec1< float16_t > | v
| ) |  |

References hwy::CopySameSize(), and v.

## PromoteTo() [90/90]

template<typename FromT , typename ToT >

HWY_API Vec1< ToT > hwy::HWY_NAMESPACE::PromoteTo | ( | Sisd< ToT > | ,
|  | Vec1< FromT > | from
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## RandomValues() [1/2]

template<class D , class VU64 , HWY_IF_NOT_FLOAT_D(D) >

Vec< D > hwy::HWY_NAMESPACE::RandomValues | ( | D | d,
|  | VU64 & | s0,
|  | VU64 & | s1,
|  | const VU64 | mask
| ) |  |

References And(), BitCast(), d, and hwy::HWY_NAMESPACE::Xorshift128Plus::RandomBits().

Referenced by GenerateInput().

## RandomValues() [2/2]

template<class DF , class VU64 , HWY_IF_FLOAT_D(DF) >

Vec< DF > hwy::HWY_NAMESPACE::RandomValues | ( | DF | df,
|  | VU64 & | s0,
|  | VU64 & | s1,
|  | const VU64 | mask
| ) |  |

References And(), BitCast(), GetLane(), OrAnd(), hwy::HWY_NAMESPACE::Xorshift128Plus::RandomBits(), and Set().

## RearrangeToOddPlusEven() [1/12]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const Vec128< float, N > | sum0,
|  | const Vec128< float, N > | sum1
| ) |  |

References RearrangeToOddPlusEven().

Referenced by RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), and RearrangeToOddPlusEven().

## RearrangeToOddPlusEven() [2/12]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const Vec128< int32_t > | sum0,
|  | const Vec128< int32_t > | sum1
| ) |  |

References Combine(), d, LowerHalf(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, RearrangeToOddPlusEven(), and UpperHalf().

## RearrangeToOddPlusEven() [3/12]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const Vec128< int32_t, N > | sum0,
|  | const Vec128< int32_t, N > |
| ) |  |

## RearrangeToOddPlusEven() [4/12]

template<typename TW >

HWY_API Vec1< TW > hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const Vec1< TW > | sum0,
|  | Vec1< TW > |
| ) |  |

## RearrangeToOddPlusEven() [5/12]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const Vec256< int32_t > | sum0,
|  | Vec256< int32_t > |
| ) |  |

References RearrangeToOddPlusEven().

## RearrangeToOddPlusEven() [6/12]

HWY_API Vec32< int32_t > hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const Vec32< int32_t > | sum0,
|  | const Vec32< int32_t > | sum1
| ) |  |

References RearrangeToOddPlusEven().

## RearrangeToOddPlusEven() [7/12]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const Vec512< int32_t > | sum0,
|  | Vec512< int32_t > |
| ) |  |

References RearrangeToOddPlusEven().

## RearrangeToOddPlusEven() [8/12]

HWY_API Vec64< int32_t > hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const Vec64< int32_t > | sum0,
|  | const Vec64< int32_t > | sum1
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and RearrangeToOddPlusEven().

## RearrangeToOddPlusEven() [9/12]

template<class VW >

HWY_API VW hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const VW | sum0,
|  | const VW | sum1
| ) |  |

## RearrangeToOddPlusEven() [10/12]

template<class VW , HWY_IF_SIGNED_V(VW) >

HWY_API VW hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | const VW | sum0,
|  | const VW | sum1
| ) |  |

References BitCast(), Combine(), and TruncateTo().

## RearrangeToOddPlusEven() [11/12]

template<typename TW >

HWY_API Vec256< TW > hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | Vec256< TW > | sum0,
|  | Vec256< TW > | sum1
| ) |  |

References RearrangeToOddPlusEven(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## RearrangeToOddPlusEven() [12/12]

HWY_API vint32m8_t hwy::HWY_NAMESPACE::RearrangeToOddPlusEven | ( | vint32m8_t | sum0,
|  | vint32m8_t | sum1
| ) |  |

References Combine(), d, LowerHalf(), RearrangeToOddPlusEven(), and UpperHalf().

## RebindMask() [1/7]

template<class D , typename MFrom >

HWY_API svbool_t hwy::HWY_NAMESPACE::RebindMask | ( | const D | ,
|  | const MFrom | mask
| ) |  |

## RebindMask() [2/7]

template<class D , typename MFrom >

HWY_API MFromD< D > hwy::HWY_NAMESPACE::RebindMask | ( | const D | ,
|  | const MFrom | mask
| ) |  |

## RebindMask() [3/7]

template<typename TFrom , typename TTo >

HWY_API Mask256< TTo > hwy::HWY_NAMESPACE::RebindMask | ( | Full256< TTo > | ,
|  | Mask256< TFrom > | m
| ) |  |

References hwy::HWY_NAMESPACE::Mask256< T >::m0, and hwy::HWY_NAMESPACE::Mask256< T >::m1.

## RebindMask() [4/7]

template<typename TFrom , typename TTo >

HWY_API Mask512< TTo > hwy::HWY_NAMESPACE::RebindMask | ( | Full512< TTo > | ,
|  | Mask512< TFrom > | m
| ) |  |

References hwy::HWY_NAMESPACE::Mask512< T >::raw.

## RebindMask() [5/7]

template<typename TFrom , typename TTo , size_t N>

HWY_API Mask128< TTo, N > hwy::HWY_NAMESPACE::RebindMask | ( | Simd< TTo, N, 0 > | dto,
|  | Mask128< TFrom, N > | m
| ) |  |

References BitCast(), MaskFromVec(), RebindMask(), and VecFromMask().

Referenced by BlendedStore(), Ceil(), Ceil(), Compress(), CompressBlendedStore(), CompressStore(), hwy::HWY_NAMESPACE::detail::CountTrue(), DemoteTo(), FirstN(), FirstN(), Floor(), Floor(), InsertLane(), IsFinite(), IsFinite(), IsFinite(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), hwy::HWY_NAMESPACE::detail::LoadMaskBits(), MaskFalse(), Max(), hwy::HWY_NAMESPACE::detail::MaxU(), Min(), hwy::HWY_NAMESPACE::detail::MinU(), operator<<(), operator>>(), RebindMask(), TableLookupLanes(), TableLookupLanes(), and TableLookupLanes().

## RebindMask() [6/7]

template<typename TFrom , size_t NFrom, typename TTo , size_t NTo>

HWY_API Mask128< TTo, NTo > hwy::HWY_NAMESPACE::RebindMask | ( | Simd< TTo, NTo, 0 > | ,
|  | Mask128< TFrom, NFrom > | m
| ) |  |

References hwy::HWY_NAMESPACE::Mask128< T, N >::raw.

## RebindMask() [7/7]

template<typename TFrom , typename TTo >

HWY_API Mask1< TTo > hwy::HWY_NAMESPACE::RebindMask | ( | Sisd< TTo > | ,
|  | Mask1< TFrom > | m
| ) |  |

References hwy::HWY_NAMESPACE::Mask1< T >::bits.

## ReorderDemote2To() [1/16]

HWY_API Vec128< int16_t > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Full128< int16_t > | d16,
|  | Vec128< int32_t > | a,
|  | Vec128< int32_t > | b
| ) |  |

References Combine(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and ReorderDemote2To().

## ReorderDemote2To() [2/16]

HWY_API Vec256< bfloat16_t > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Full256< bfloat16_t > | dbf16,
|  | Vec256< float > | a,
|  | Vec256< float > | b
| ) |  |

References BitCast(), and ConcatOdd().

## ReorderDemote2To() [3/16]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Full256< int16_t > | d16,
|  | Vec256< int32_t > | a,
|  | Vec256< int32_t > | b
| ) |  |

References DemoteTo(), and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## ReorderDemote2To() [4/16]

HWY_API Vec32< int16_t > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Full32< int16_t > | ,
|  | Vec32< int32_t > | a,
|  | Vec32< int32_t > | b
| ) |  |

References Combine(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and ReorderDemote2To().

## ReorderDemote2To() [5/16]

HWY_API Vec512< bfloat16_t > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Full512< bfloat16_t > | dbf16,
|  | Vec512< float > | a,
|  | Vec512< float > | b
| ) |  |

References BitCast(), OddEven(), and ReorderDemote2To().

## ReorderDemote2To() [6/16]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Full512< int16_t > | ,
|  | Vec512< int32_t > | a,
|  | Vec512< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and ReorderDemote2To().

## ReorderDemote2To() [7/16]

HWY_API Vec64< int16_t > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Full64< int16_t > | ,
|  | Vec64< int32_t > | a,
|  | Vec64< int32_t > | b
| ) |  |

References Combine(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and ReorderDemote2To().

## ReorderDemote2To() [8/16]

template<size_t N>

HWY_API Vec128< bfloat16_t, 2 *N > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Simd< bfloat16_t, 2 *N, 0 > | dbf16,
|  | Vec128< float, N > | a,
|  | Vec128< float, N > | b
| ) |  |

References BitCast(), OddEven(), and ReorderDemote2To().

Referenced by ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), ReorderDemote2To(), and ReorderDemote2To().

## ReorderDemote2To() [9/16]

template<size_t N, int kPow2>

HWY_API svuint16_t hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Simd< bfloat16_t, N, kPow2 > | dbf16,
|  | svfloat32_t | a,
|  | svfloat32_t | b
| ) |  |

References BitCast(), and OddEven().

## ReorderDemote2To() [10/16]

template<size_t N, int kPow2>

HWY_API VFromD< Simd< uint16_t, N, kPow2 > > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Simd< bfloat16_t, N, kPow2 > | dbf16,
|  | VFromD< RepartitionToWide< decltype(dbf16)> > | a,
|  | VFromD< RepartitionToWide< decltype(dbf16)> > | b
| ) |  |

References BitCast(), and OddEven().

## ReorderDemote2To() [11/16]

template<size_t N>

HWY_API Vec128< int16_t, 2 *N > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Simd< int16_t, 2 *N, 0 > | ,
|  | Vec128< int32_t, N > | a,
|  | Vec128< int32_t, N > | b
| ) |  |

References HWY_MAX, HWY_MIN, N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ReorderDemote2To() [12/16]

HWY_API Vec128< int16_t, 2 > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Simd< int16_t, 2, 0 > | dn,
|  | Vec128< int32_t, 1 > | a,
|  | Vec128< int32_t, 1 > | b
| ) |  |

References DemoteTo(), InterleaveLower(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ReorderDemote2To() [13/16]

HWY_API Vec128< int16_t, 4 > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Simd< int16_t, 4, 0 > | dn,
|  | Vec128< int32_t, 2 > | a,
|  | Vec128< int32_t, 2 > | b
| ) |  |

References DemoteTo(), InterleaveLower(), and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ReorderDemote2To() [14/16]

template<size_t N, class V32 = VFromD<RepartitionToWide<Simd<int16_t, N, 3>>>>

HWY_API VFromD< Simd< int16_t, N, 3 > > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Simd< int16_t, N, 3 > | d16,
|  | V32 | a,
|  | V32 | b
| ) |  |

References Combine(), and DemoteTo().

## ReorderDemote2To() [15/16]

template<size_t N, int kPow2>

HWY_API svint16_t hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Simd< int16_t, N, kPow2 > | d16,
|  | svint32_t | a,
|  | svint32_t | b
| ) |  |

References BitCast().

## ReorderDemote2To() [16/16]

template<size_t N, int kPow2, hwy::EnableIf<(kPow2< 3)> * = nullptr, class D32 = RepartitionToWide<Simd<int16_t, N, kPow2>>>

HWY_API VFromD< Simd< int16_t, N, kPow2 > > hwy::HWY_NAMESPACE::ReorderDemote2To | ( | Simd< int16_t, N, kPow2 > | d16,
|  | VFromD< D32 > | a,
|  | VFromD< D32 > | b
| ) |  |

## ReorderWidenMulAccumulate() [1/15]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Full128< int32_t > | ,
|  | Vec128< int16_t > | a,
|  | Vec128< int16_t > | b,
|  | const Vec128< int32_t > | sum0,
|  | Vec128< int32_t > & | sum1
| ) |  |

References LowerHalf(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, ReorderWidenMulAccumulate(), and UpperHalf().

## ReorderWidenMulAccumulate() [2/15]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Full256< int32_t > | ,
|  | Vec256< int16_t > | a,
|  | Vec256< int16_t > | b,
|  | const Vec256< int32_t > | sum0,
|  | Vec256< int32_t > & |
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and ReorderWidenMulAccumulate().

## ReorderWidenMulAccumulate() [3/15]

template<typename TN , typename TW >

HWY_API Vec256< TW > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Full256< TW > | d,
|  | Vec256< TN > | a,
|  | Vec256< TN > | b,
|  | Vec256< TW > | sum0,
|  | Vec256< TW > & | sum1
| ) |  |

References d, ReorderWidenMulAccumulate(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## ReorderWidenMulAccumulate() [4/15]

HWY_API Vec32< int32_t > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Full32< int32_t > | d32,
|  | Vec32< int16_t > | a,
|  | Vec32< int16_t > | b,
|  | const Vec32< int32_t > | sum0,
|  | Vec32< int32_t > & | sum1
| ) |  |

References LowerHalf(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, ReorderWidenMulAccumulate(), and UpperHalf().

## ReorderWidenMulAccumulate() [5/15]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Full512< int32_t > | ,
|  | Vec512< int16_t > | a,
|  | Vec512< int16_t > | b,
|  | const Vec512< int32_t > | sum0,
|  | Vec512< int32_t > & |
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and ReorderWidenMulAccumulate().

## ReorderWidenMulAccumulate() [6/15]

HWY_API Vec64< int32_t > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Full64< int32_t > | d32,
|  | Vec64< int16_t > | a,
|  | Vec64< int16_t > | b,
|  | const Vec64< int32_t > | sum0,
|  | Vec64< int32_t > & | sum1
| ) |  |

References LowerHalf(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, ReorderWidenMulAccumulate(), and UpperHalf().

## ReorderWidenMulAccumulate() [7/15]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Simd< float, N, 0 > | df32,
|  | Vec128< bfloat16_t, 2 *N > | a,
|  | Vec128< bfloat16_t, 2 *N > | b,
|  | const Vec128< float, N > | sum0,
|  | Vec128< float, N > & | sum1
| ) |  |

References And(), BitCast(), MulAdd(), ReorderWidenMulAccumulate(), and Set().

Referenced by hwy::HWY_NAMESPACE::Dot::Compute(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), and ReorderWidenMulAccumulate().

## ReorderWidenMulAccumulate() [8/15]

template<class V , size_t N, class D16 = Simd<bfloat16_t, 2 * N, 0>>

HWY_API V hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Simd< float, N, 0 > | df32,
|  | VFromD< D16 > | a,
|  | VFromD< D16 > | b,
|  | const V | sum0,
|  | V & | sum1
| ) |  |

References And(), BitCast(), MulAdd(), and Set().

## ReorderWidenMulAccumulate() [9/15]

template<size_t N, int kPow2, class VN , class VW >

HWY_API VW hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Simd< float, N, kPow2 > | d32,
|  | VN | a,
|  | VN | b,
|  | const VW | sum0,
|  | VW & | sum1
| ) |  |

References hwy::HWY_NAMESPACE::detail::ReorderWidenMulAccumulateBF16().

## ReorderWidenMulAccumulate() [10/15]

template<size_t N, int kPow2>

HWY_API svfloat32_t hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Simd< float, N, kPow2 > | df32,
|  | svuint16_t | a,
|  | svuint16_t | b,
|  | const svfloat32_t | sum0,
|  | svfloat32_t & | sum1
| ) |  |

References And(), BitCast(), MulAdd(), and Set().

## ReorderWidenMulAccumulate() [11/15]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Simd< int32_t, N, 0 > | d32,
|  | Vec128< int16_t, 2 *N > | a,
|  | Vec128< int16_t, 2 *N > | b,
|  | const Vec128< int32_t, N > | sum0,
|  | Vec128< int32_t, N > & | sum1
| ) |  |

References BitCast().

## ReorderWidenMulAccumulate() [12/15]

template<size_t N, int kPow2>

HWY_API svint32_t hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Simd< int32_t, N, kPow2 > | d32,
|  | svint16_t | a,
|  | svint16_t | b,
|  | const svint32_t | sum0,
|  | svint32_t & | sum1
| ) |  |

References BitCast().

## ReorderWidenMulAccumulate() [13/15]

template<size_t N, int kPow2, class VN , class VW >

HWY_API VW hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Simd< int32_t, N, kPow2 > | d32,
|  | VN | a,
|  | VN | b,
|  | const VW | sum0,
|  | VW & | sum1
| ) |  |

References hwy::HWY_NAMESPACE::detail::ReorderWidenMulAccumulateI16().

## ReorderWidenMulAccumulate() [14/15]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Sisd< float > | ,
|  | Vec1< bfloat16_t > | a,
|  | Vec1< bfloat16_t > | b,
|  | const Vec1< float > | sum0,
|  | Vec1< float > & |
| ) |  |

References hwy::F32FromBF16(), MulAdd(), and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## ReorderWidenMulAccumulate() [15/15]

HWY_API Vec1< int32_t > hwy::HWY_NAMESPACE::ReorderWidenMulAccumulate | ( | Sisd< int32_t > | ,
|  | Vec1< int16_t > | a,
|  | Vec1< int16_t > | b,
|  | const Vec1< int32_t > | sum0,
|  | Vec1< int32_t > & |
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## Replace()

template<class D , typename T = TFromD<D>>

void hwy::HWY_NAMESPACE::Replace | ( | D | d,
|  | T *HWY_RESTRICT | inout,
|  | size_t | count,
|  | T | new_t,
|  | T | old_t
| ) |  |

References BlendedStore(), d, FirstN(), HWY_DASSERT, HWY_UNLIKELY, IfThenElse(), Lanes(), LoadU(), MaskedLoad(), N, Set(), StoreU(), and v.

## ReplaceIf()

template<class D , class Func , typename T = TFromD<D>>

void hwy::HWY_NAMESPACE::ReplaceIf | ( | D | d,
|  | T *HWY_RESTRICT | inout,
|  | size_t | count,
|  | T | new_t,
|  | const Func & | func
| ) |  |

References BlendedStore(), d, FirstN(), HWY_DASSERT, HWY_UNLIKELY, IfThenElse(), Lanes(), LoadU(), MaskedLoad(), N, Set(), StoreU(), and v.

## Reverse() [1/12]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::Reverse | ( | D | d,
|  | V | v
| ) |  |

References hwy::HWY_NAMESPACE::detail::AllHardwareLanes(), d, FirstN(), HWY_SVE_IS_POW2, hwy::HWY_NAMESPACE::detail::IsFull(), Lanes(), and v.

## Reverse() [2/12]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::Reverse | ( | D | ,
|  | VFromD< D > | v
| ) |  |

References hwy::HWY_NAMESPACE::detail::Iota0(), Lanes(), N, TableLookupLanes(), and v.

## Reverse() [3/12]

template<typename T , HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Reverse | ( | Full128< T > | ,
|  | const Vec128< T > | v
| ) |  |

References Reverse(), Shuffle01(), and v.

## Reverse() [4/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Reverse | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References d, Reverse(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## Reverse() [5/12]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Reverse | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References d, Reverse(), SetTableIndices(), TableLookupLanes(), and v.

## Reverse() [6/12]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Reverse | ( | Full512< T > | d,
|  | const Vec512< T > | v
| ) |  |

References BitCast(), d, Load(), hwy::HWY_NAMESPACE::Vec512< T >::raw, Reverse(), and v.

## Reverse() [7/12]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec128< T, 2 > hwy::HWY_NAMESPACE::Reverse | ( | Full64< T > | ,
|  | const Vec128< T, 2 > | v
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Shuffle2301(), and v.

## Reverse() [8/12]

template<typename T >

HWY_API Vec128< T, 1 > hwy::HWY_NAMESPACE::Reverse | ( | Simd< T, 1, 0 > | ,
|  | const Vec128< T, 1 > | v
| ) |  |

References Reverse(), and v.

Referenced by Reverse(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse8(), and ReverseBlocks().

## Reverse() [9/12]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec128< T, 2 > hwy::HWY_NAMESPACE::Reverse | ( | Simd< T, 2, 0 > | ,
|  | const Vec128< T, 2 > | v
| ) |  |

References Reverse(), Shuffle2301(), and v.

## Reverse() [10/12]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References BitCast(), d, Reverse(), and v.

## Reverse() [11/12]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse | ( | Simd< T, N, 0 > | ,
|  | const Vec128< T, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Reverse() [12/12]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Reverse | ( | Sisd< T > | ,
|  | const Vec1< T > | v
| ) |  |

References v.

## Reverse2() [1/12]

template<class D , HWY_IF_LANE_SIZE_D(D, 2) >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::Reverse2 | ( | D | d,
|  | const VFromD< D > | v
| ) |  |

References BitCast(), d, and v.

## Reverse2() [2/12]

template<class D , HWY_IF_LANE_SIZE_D(D, 2) , HWY_RVV_IF_POW2_IN(D, -1, 3) >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::Reverse2 | ( | D | d,
|  | const VFromD< D > | v
| ) |  |

References BitCast(), d, and v.

## Reverse2() [3/12]

template<class D , class V = VFromD<D>, HWY_IF_LANE_SIZE_D(D, 8) >

HWY_API V hwy::HWY_NAMESPACE::Reverse2 | ( | D | ,
|  | const V | v
| ) |  |

References OddEven(), and v.

## Reverse2() [4/12]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Reverse2 | ( | Full128< T > | d,
|  | const Vec128< T > | v
| ) |  |

References BitCast(), d, Reverse2(), and v.

## Reverse2() [5/12]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Reverse2 | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References BitCast(), d, Reverse2(), and v.

## Reverse2() [6/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Reverse2 | ( | Full256< T > | d,
|  | Vec256< T > | v
| ) |  |

References d, Reverse2(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Reverse2() [7/12]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Reverse2 | ( | Full512< T > | d,
|  | const Vec512< T > | v
| ) |  |

References BitCast(), d, Reverse2(), and v.

## Reverse2() [8/12]

template<typename T >

HWY_API Vec128< T, 1 > hwy::HWY_NAMESPACE::Reverse2 | ( | Simd< T, 1, 0 > | ,
|  | const Vec128< T, 1 > | v
| ) |  |

References v.

## Reverse2() [9/12]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) , HWY_IF_LE64(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse2 | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References BitCast(), d, Reverse2(), and v.

Referenced by Eq128(), Eq128(), hwy::HWY_NAMESPACE::detail::Eq128Vec(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), Ne128(), Ne128(), hwy::HWY_NAMESPACE::detail::Ne128Vec(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse4(), Shuffle2301(), Shuffle2301(), and hwy::HWY_NAMESPACE::detail::SumOfLanes().

## Reverse2() [10/12]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse2 | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References Reverse2(), Shuffle01(), and v.

## Reverse2() [11/12]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse2 | ( | Simd< T, N, 0 > | ,
|  | const Vec128< T, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Reverse2() [12/12]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Reverse2 | ( | Sisd< T > | ,
|  | const Vec1< T > | v
| ) |  |

References v.

## Reverse4() [1/9]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::Reverse4 | ( | D | d,
|  | const VFromD< D > | v
| ) |  |

References d, HWY_SVE_256, HWY_TARGET, Iota(), hwy::HWY_NAMESPACE::detail::IsFull(), TableLookupLanes(), and v.

## Reverse4() [2/9]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Reverse4 | ( | Full128< T > | d,
|  | const Vec128< T > | v
| ) |  |

References BitCast(), d, Reverse4(), and v.

## Reverse4() [3/9]

template<typename T , HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Reverse4 | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References d, Reverse2(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Reverse4() [4/9]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Reverse4 | ( | Full512< double > | ,
|  | Vec512< double > | v
| ) |  |

References Reverse4(), and v.

## Reverse4() [5/9]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Reverse4 | ( | Full512< T > | d,
|  | const Vec512< T > | v
| ) |  |

References BitCast(), d, Load(), hwy::HWY_NAMESPACE::Vec512< T >::raw, Reverse4(), and v.

## Reverse4() [6/9]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) , HWY_IF_LE64(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse4 | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References BitCast(), d, Reverse4(), and v.

Referenced by Reverse4(), Reverse4(), Reverse4(), Reverse4(), and Reverse4().

## Reverse4() [7/9]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse4 | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References Reverse4(), Shuffle0123(), and v.

## Reverse4() [8/9]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse4 | ( | Simd< T, N, 0 > | ,
|  | const Vec128< T, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Reverse4() [9/9]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Reverse4 | ( | Sisd< T > | ,
|  | const Vec1< T > | v
| ) |  |

References v.

## Reverse8() [1/6]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::Reverse8 | ( | D | d,
|  | const VFromD< D > | v
| ) |  |

References d, Iota(), TableLookupLanes(), and v.

## Reverse8() [2/6]

template<typename T , HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Reverse8 | ( | Full256< T > | d,
|  | Vec256< T > | v
| ) |  |

References HWY_ASSERT.

## Reverse8() [3/6]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Reverse8 | ( | Full512< T > | d,
|  | const Vec512< T > | v
| ) |  |

References BitCast(), d, Load(), hwy::HWY_NAMESPACE::Vec512< T >::raw, Reverse8(), and v.

## Reverse8() [4/6]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 2) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse8 | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References d, Reverse(), Reverse8(), and v.

Referenced by Reverse8(), and Reverse8().

## Reverse8() [5/6]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Reverse8 | ( | Simd< T, N, 0 > | ,
|  | const Vec128< T, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Reverse8() [6/6]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Reverse8 | ( | Sisd< T > | ,
|  | const Vec1< T > | v
| ) |  |

References v.

## ReverseBlocks() [1/8]

template<class D , class V = VFromD<D>>

HWY_API V hwy::HWY_NAMESPACE::ReverseBlocks | ( | D | d,
|  | V | v
| ) |  |

References BitCast(), d, hwy::HWY_NAMESPACE::detail::IsFull(), Reverse(), Shuffle01(), SwapAdjacentBlocks(), and v.

## ReverseBlocks() [2/8]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::ReverseBlocks | ( | Full128< T > | ,
|  | const Vec128< T > | v
| ) |  |

References ReverseBlocks(), and v.

Referenced by ReverseBlocks(), ReverseBlocks(), ReverseBlocks(), and ReverseBlocks().

## ReverseBlocks() [3/8]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ReverseBlocks | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References SwapAdjacentBlocks(), and v.

## ReverseBlocks() [4/8]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ReverseBlocks | ( | Full512< double > | ,
|  | Vec512< double > | v
| ) |  |

References ReverseBlocks(), and v.

## ReverseBlocks() [5/8]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ReverseBlocks | ( | Full512< float > | ,
|  | Vec512< float > | v
| ) |  |

References ReverseBlocks(), and v.

## ReverseBlocks() [6/8]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ReverseBlocks | ( | Full512< T > | ,
|  | Vec512< T > | v
| ) |  |

References ReverseBlocks(), and v.

## ReverseBlocks() [7/8]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ReverseBlocks | ( | Simd< T, N, 0 > | ,
|  | const Vec128< T, N > | v
| ) |  |

References v.

## ReverseBlocks() [8/8]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::ReverseBlocks | ( | Sisd< T > | ,
|  | const Vec1< T > | v
| ) |  |

References v.

## RotateRight() [1/10]

template<int kBits, class V >

HWY_API V hwy::HWY_NAMESPACE::RotateRight | ( | const V | v | ) |

References Or(), and v.

## RotateRight() [2/10]

template<int kBits, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::RotateRight | ( | const Vec128< T, N > | v | ) |

References v.

## RotateRight() [3/10]

template<int kBits, size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::RotateRight | ( | const Vec128< uint32_t, N > | v | ) |

References HWY_MIN, Or(), RotateRight(), ShiftLeft(), and v.

Referenced by RotateRight(), and RotateRight().

## RotateRight() [4/10]

template<int kBits, size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::RotateRight | ( | const Vec128< uint64_t, N > | v | ) |

References HWY_MIN, Or(), RotateRight(), ShiftLeft(), and v.

## RotateRight() [5/10]

template<int kBits, typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::RotateRight | ( | const Vec1< T > | v | ) |

References v.

## RotateRight() [6/10]

template<int kBits, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::RotateRight | ( | const Vec256< T > | v | ) |

References Or(), and v.

## RotateRight() [7/10]

template<int kBits>

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::RotateRight | ( | const Vec256< uint32_t > | v | ) |

References HWY_MIN, Or(), ShiftLeft(), and v.

## RotateRight() [8/10]

template<int kBits>

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::RotateRight | ( | const Vec256< uint64_t > | v | ) |

References HWY_MIN, Or(), ShiftLeft(), and v.

## RotateRight() [9/10]

template<int kBits>

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::RotateRight | ( | const Vec512< uint32_t > | v | ) |

References v.

## RotateRight() [10/10]

template<int kBits>

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::RotateRight | ( | const Vec512< uint64_t > | v | ) |

References v.

## Round() [1/8]

template<class V >

decltype(MaskFromVec(v)) HWY_API V hwy::HWY_NAMESPACE::Round | ( | const V | v | ) |

References ConvertTo(), CopySign(), IfThenElse(), NearestInt(), hwy::HWY_NAMESPACE::detail::UseInt(), and v.

## Round() [2/8]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Round | ( | const Vec128< float, N > | v | ) |

References Abs(), CopySignToAbs(), IfThenElse(), Round(), Set(), and v.

Referenced by Ceil(), Floor(), NearestInt(), NearestInt(), NearestInt(), Round(), and Round().

## Round() [3/8]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Round | ( | const Vec1< T > | v | ) |

References Abs(), hwy::HWY_NAMESPACE::detail::Abs(), CopySignToAbs(), hwy::HWY_NAMESPACE::Vec1< T >::raw, and v.

## Round() [4/8]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Round | ( | const Vec256< double > | v | ) |

References v.

## Round() [5/8]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Round | ( | const Vec512< double > | v | ) |

References v.

## Round() [6/8]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Round | ( | const Vec512< float > | v | ) |

References v.

## Round() [7/8]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Round | ( | Vec128< T, N > | v | ) |

References Abs(), N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Round() [8/8]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Round | ( | Vec256< float > | v | ) |

References Round(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Run()

template<class Order , typename KeyType >

void hwy::HWY_NAMESPACE::Run | ( | Algo | algo,
|  | KeyType *HWY_RESTRICT | inout,
|  | size_t | num,
|  | SharedState & | shared,
|  | size_t | thread
| ) |  |

References HWY_ABORT, HWY_TARGET, hwy::kHeap, hwy::kStd, hwy::kVQSort, hwy::TargetName(), and hwy::HWY_NAMESPACE::SharedState::tls.

## SafeCopyN()

template<class D , typename T = TFromD<D>>

HWY_API void hwy::HWY_NAMESPACE::SafeCopyN | ( | const size_t | num,
|  | D | d,
|  | const T *HWY_RESTRICT | from,
|  | T *HWY_RESTRICT | to
| ) |  |

References BlendedStore(), d, FirstN(), and MaskedLoad().

Referenced by Copy().

## SafeFillN()

template<class D , typename T = TFromD<D>>

HWY_API void hwy::HWY_NAMESPACE::SafeFillN | ( | const size_t | num,
|  | const T | value,
|  | D | d,
|  | T *HWY_RESTRICT | to
| ) |  |

References BlendedStore(), d, FirstN(), and Set().

Referenced by Fill().

## SaturatedAdd() [1/18]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## SaturatedAdd() [2/18]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec128< int8_t, N > | a,
|  | const Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## SaturatedAdd() [3/18]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## SaturatedAdd() [4/18]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec128< uint8_t, N > | a,
|  | const Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## SaturatedAdd() [5/18]

HWY_API Vec1< int16_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec1< int16_t > | a,
|  | const Vec1< int16_t > | b
| ) |  |

References HWY_MAX, HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## SaturatedAdd() [6/18]

HWY_API Vec1< int8_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec1< int8_t > | a,
|  | const Vec1< int8_t > | b
| ) |  |

References HWY_MAX, HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## SaturatedAdd() [7/18]

HWY_API Vec1< uint16_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec1< uint16_t > | a,
|  | const Vec1< uint16_t > | b
| ) |  |

References HWY_MAX, HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## SaturatedAdd() [8/18]

HWY_API Vec1< uint8_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec1< uint8_t > | a,
|  | const Vec1< uint8_t > | b
| ) |  |

References HWY_MAX, HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## SaturatedAdd() [9/18]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec256< int16_t > | a,
|  | const Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## SaturatedAdd() [10/18]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec256< int8_t > | a,
|  | const Vec256< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## SaturatedAdd() [11/18]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec256< uint16_t > | a,
|  | const Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## SaturatedAdd() [12/18]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec256< uint8_t > | a,
|  | const Vec256< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## SaturatedAdd() [13/18]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec512< int16_t > | a,
|  | const Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## SaturatedAdd() [14/18]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec512< int8_t > | a,
|  | const Vec512< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## SaturatedAdd() [15/18]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec512< uint16_t > | a,
|  | const Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## SaturatedAdd() [16/18]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::SaturatedAdd | ( | const Vec512< uint8_t > | a,
|  | const Vec512< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## SaturatedAdd() [17/18]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::SaturatedAdd | ( | Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References HWY_MAX, HWY_MIN, N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by SaturatedAdd().

## SaturatedAdd() [18/18]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::SaturatedAdd | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References SaturatedAdd(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## SaturatedSub() [1/18]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec128< int16_t, N > | a,
|  | const Vec128< int16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## SaturatedSub() [2/18]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec128< int8_t, N > | a,
|  | const Vec128< int8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## SaturatedSub() [3/18]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec128< uint16_t, N > | a,
|  | const Vec128< uint16_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## SaturatedSub() [4/18]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec128< uint8_t, N > | a,
|  | const Vec128< uint8_t, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## SaturatedSub() [5/18]

HWY_API Vec1< int16_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec1< int16_t > | a,
|  | const Vec1< int16_t > | b
| ) |  |

References HWY_MAX, HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## SaturatedSub() [6/18]

HWY_API Vec1< int8_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec1< int8_t > | a,
|  | const Vec1< int8_t > | b
| ) |  |

References HWY_MAX, HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## SaturatedSub() [7/18]

HWY_API Vec1< uint16_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec1< uint16_t > | a,
|  | const Vec1< uint16_t > | b
| ) |  |

References HWY_MAX, HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## SaturatedSub() [8/18]

HWY_API Vec1< uint8_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec1< uint8_t > | a,
|  | const Vec1< uint8_t > | b
| ) |  |

References HWY_MAX, HWY_MIN, and hwy::HWY_NAMESPACE::Vec1< T >::raw.

## SaturatedSub() [9/18]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec256< int16_t > | a,
|  | const Vec256< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## SaturatedSub() [10/18]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec256< int8_t > | a,
|  | const Vec256< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## SaturatedSub() [11/18]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec256< uint16_t > | a,
|  | const Vec256< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## SaturatedSub() [12/18]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec256< uint8_t > | a,
|  | const Vec256< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## SaturatedSub() [13/18]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec512< int16_t > | a,
|  | const Vec512< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## SaturatedSub() [14/18]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec512< int8_t > | a,
|  | const Vec512< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## SaturatedSub() [15/18]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec512< uint16_t > | a,
|  | const Vec512< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## SaturatedSub() [16/18]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::SaturatedSub | ( | const Vec512< uint8_t > | a,
|  | const Vec512< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## SaturatedSub() [17/18]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::SaturatedSub | ( | Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References HWY_MAX, HWY_MIN, N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

Referenced by SaturatedSub().

## SaturatedSub() [18/18]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::SaturatedSub | ( | Vec256< T > | a,
|  | const Vec256< T > | b
| ) |  |

References SaturatedSub(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## ScatterIndex() [1/12]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec128< double, N > | v,
|  | Simd< double, N, 0 > | ,
|  | double *HWY_RESTRICT | base,
|  | const Vec128< int64_t, N > | index
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## ScatterIndex() [2/12]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec128< float, N > | v,
|  | Simd< float, N, 0 > | ,
|  | float *HWY_RESTRICT | base,
|  | const Vec128< int32_t, N > | index
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## ScatterIndex() [3/12]

template<typename T , size_t N, typename Index , HWY_IF_LE128(T, N) >

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec128< T, N > | v,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | base,
|  | const Vec128< Index, N > | index
| ) |  |

References d, N, ScatterIndex(), Store(), and v.

Referenced by ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), and ScatterIndex().

## ScatterIndex() [4/12]

template<typename T , size_t N, typename Index >

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec128< T, N > | v,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | base,
|  | const Vec128< Index, N > | index
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## ScatterIndex() [5/12]

template<typename T , typename Index >

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec1< T > | v,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | base,
|  | const Vec1< Index > | index
| ) |  |

References d, hwy::HWY_NAMESPACE::Vec1< T >::raw, Store(), and v.

## ScatterIndex() [6/12]

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec256< double > | v,
|  | Full256< double > | ,
|  | double *HWY_RESTRICT | base,
|  | const Vec256< int64_t > | index
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, ScatterIndex(), and v.

## ScatterIndex() [7/12]

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec256< float > | v,
|  | Full256< float > | ,
|  | float *HWY_RESTRICT | base,
|  | const Vec256< int32_t > | index
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, ScatterIndex(), and v.

## ScatterIndex() [8/12]

template<typename T , typename Index >

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec256< T > | v,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | base,
|  | const Vec256< Index > | index
| ) |  |

References d, N, Store(), and v.

## ScatterIndex() [9/12]

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec512< double > | v,
|  | Full512< double > | ,
|  | double *HWY_RESTRICT | base,
|  | const Vec512< int64_t > | index
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, ScatterIndex(), and v.

## ScatterIndex() [10/12]

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec512< float > | v,
|  | Full512< float > | ,
|  | float *HWY_RESTRICT | base,
|  | const Vec512< int32_t > | index
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, ScatterIndex(), and v.

## ScatterIndex() [11/12]

template<typename T , typename Index >

HWY_API void hwy::HWY_NAMESPACE::ScatterIndex | ( | Vec512< T > | v,
|  | Full512< T > | d,
|  | T *HWY_RESTRICT | base,
|  | const Vec512< Index > | index
| ) |  |

References d, ScatterIndex(), and v.

## ScatterIndex() [12/12]

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
| ) |  |

References d, ScatterOffset(), and v.

## ScatterOffset() [1/12]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec128< double, N > | v,
|  | Simd< double, N, 0 > | ,
|  | double *HWY_RESTRICT | base,
|  | const Vec128< int64_t, N > | offset
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## ScatterOffset() [2/12]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec128< float, N > | v,
|  | Simd< float, N, 0 > | ,
|  | float *HWY_RESTRICT | base,
|  | const Vec128< int32_t, N > | offset
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## ScatterOffset() [3/12]

template<typename T , size_t N, typename Offset , HWY_IF_LE128(T, N) >

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec128< T, N > | v,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | base,
|  | const Vec128< Offset, N > | offset
| ) |  |

References d, N, ScatterOffset(), Store(), and v.

Referenced by ScatterIndex(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), and ScatterOffset().

## ScatterOffset() [4/12]

template<typename T , size_t N, typename Offset >

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec128< T, N > | v,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | base,
|  | const Vec128< Offset, N > | offset
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::ScatterOffset(), and v.

## ScatterOffset() [5/12]

template<typename T , size_t N, typename Offset >

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec128< T, N > | v,
|  | Simd< T, N, 0 > | ,
|  | T * | base,
|  | const Vec128< Offset, N > | offset
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## ScatterOffset() [6/12]

template<typename T , typename Offset >

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec1< T > | v,
|  | Sisd< T > | d,
|  | T * | base,
|  | const Vec1< Offset > | offset
| ) |  |

References d, hwy::HWY_NAMESPACE::Vec1< T >::raw, Store(), and v.

## ScatterOffset() [7/12]

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec256< double > | v,
|  | Full256< double > | ,
|  | double *HWY_RESTRICT | base,
|  | const Vec256< int64_t > | offset
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, ScatterOffset(), and v.

## ScatterOffset() [8/12]

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec256< float > | v,
|  | Full256< float > | ,
|  | float *HWY_RESTRICT | base,
|  | const Vec256< int32_t > | offset
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, ScatterOffset(), and v.

## ScatterOffset() [9/12]

template<typename T , typename Offset >

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec256< T > | v,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | base,
|  | const Vec256< Offset > | offset
| ) |  |

References d, N, Store(), and v.

## ScatterOffset() [10/12]

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec512< double > | v,
|  | Full512< double > | ,
|  | double *HWY_RESTRICT | base,
|  | const Vec512< int64_t > | offset
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, ScatterOffset(), and v.

## ScatterOffset() [11/12]

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec512< float > | v,
|  | Full512< float > | ,
|  | float *HWY_RESTRICT | base,
|  | const Vec512< int32_t > | offset
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, ScatterOffset(), and v.

## ScatterOffset() [12/12]

template<typename T , typename Offset >

HWY_API void hwy::HWY_NAMESPACE::ScatterOffset | ( | Vec512< T > | v,
|  | Full512< T > | d,
|  | T *HWY_RESTRICT | base,
|  | const Vec512< Offset > | offset
| ) |  |

References d, ScatterOffset(), and v.

## Set() [1/35]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Set | ( | Full256< double > | ,
|  | const double | t
| ) |  |

## Set() [2/35]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Set | ( | Full256< float > | ,
|  | const float | t
| ) |  |

## Set() [3/35]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::Set | ( | Full256< int16_t > | ,
|  | const int16_t | t
| ) |  |

## Set() [4/35]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::Set | ( | Full256< int32_t > | ,
|  | const int32_t | t
| ) |  |

## Set() [5/35]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::Set | ( | Full256< int64_t > | ,
|  | const int64_t | t
| ) |  |

## Set() [6/35]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::Set | ( | Full256< int8_t > | ,
|  | const int8_t | t
| ) |  |

## Set() [7/35]

template<typename T , typename T2 >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Set | ( | Full256< T > | d,
|  | const T2 | t
| ) |  |

References d, Set(), and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Set() [8/35]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::Set | ( | Full256< uint16_t > | ,
|  | const uint16_t | t
| ) |  |

## Set() [9/35]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::Set | ( | Full256< uint32_t > | ,
|  | const uint32_t | t
| ) |  |

## Set() [10/35]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::Set | ( | Full256< uint64_t > | ,
|  | const uint64_t | t
| ) |  |

## Set() [11/35]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::Set | ( | Full256< uint8_t > | ,
|  | const uint8_t | t
| ) |  |

## Set() [12/35]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Set | ( | Full512< double > | ,
|  | const double | t
| ) |  |

## Set() [13/35]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Set | ( | Full512< float > | ,
|  | const float | t
| ) |  |

## Set() [14/35]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::Set | ( | Full512< int16_t > | ,
|  | const int16_t | t
| ) |  |

## Set() [15/35]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::Set | ( | Full512< int32_t > | ,
|  | const int32_t | t
| ) |  |

## Set() [16/35]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::Set | ( | Full512< int64_t > | ,
|  | const int64_t | t
| ) |  |

## Set() [17/35]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::Set | ( | Full512< int8_t > | ,
|  | const int8_t | t
| ) |  |

## Set() [18/35]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::Set | ( | Full512< uint16_t > | ,
|  | const uint16_t | t
| ) |  |

## Set() [19/35]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::Set | ( | Full512< uint32_t > | ,
|  | const uint32_t | t
| ) |  |

## Set() [20/35]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::Set | ( | Full512< uint64_t > | ,
|  | const uint64_t | t
| ) |  |

## Set() [21/35]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::Set | ( | Full512< uint8_t > | ,
|  | const uint8_t | t
| ) |  |

## Set() [22/35]

template<size_t N, int kPow2>

svuint16_t hwy::HWY_NAMESPACE::Set | ( | Simd< bfloat16_t, N, kPow2 > | d,
|  | bfloat16_t | arg
| ) |  |

References hwy::bfloat16_t::bits, d, and Set().

Referenced by Acos(), Acosh(), ApproximateReciprocal(), ApproximateReciprocalSqrt(), Asin(), Asinh(), hwy::HWY_NAMESPACE::impl::AsinImpl< float >::AsinPoly(), Atan(), Atanh(), hwy::HWY_NAMESPACE::impl::AtanImpl< float >::AtanPoly(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::ClampF64ToI32Max(), Compress(), Compress(), CompressNot(), CompressNot(), CompressNot(), ConcatEven(), ConcatEven(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), Cos(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::CosReduce(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::CosSignFromQuadrant(), DemoteTo(), DemoteTo(), Exp(), Expm1(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::ExpPoly(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::ExpReduce(), Fill(), Find(), FirstN(), FirstN(), Generate(), grk::HWY_NAMESPACE::hwy_decompress_v_parity_even_mcols_53(), grk::HWY_NAMESPACE::hwy_decompress_v_parity_odd_mcols_53(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), IndicesFromVec(), IndicesFromVec(), IndicesFromVec(), Inf(), InsertLane(), hwy::HWY_NAMESPACE::detail::InsertLane(), hwy::HWY_NAMESPACE::detail::InsertLane(), InsertLane(), IsFinite(), IsFinite(), IsInf(), IsInf(), IsInf(), IsInf(), hwy::HWY_NAMESPACE::impl::Log(), Log10(), Log1p(), Log2(), hwy::HWY_NAMESPACE::impl::LogImpl< float >::Log2p1NoSubnormal(), hwy::HWY_NAMESPACE::impl::LogImpl< float >::LogPoly(), MaskForDist(), Max(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxU(), Min(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinU(), MulEven(), MulEven(), MulOdd(), NaN(), operator*(), operator>>(), operator>>(), operator>>(), hwy::HWY_NAMESPACE::Pack16< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Pack(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::Poly(), PopulationCount(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::Pow2I(), PromoteTo(), PromoteTo(), PromoteTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), RandomValues(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), hwy::HWY_NAMESPACE::detail::ReorderWidenMulAccumulateBF16(), Replace(), ReplaceIf(), Round(), SafeFillN(), Set(), Set(), hwy::HWY_NAMESPACE::detail::TraitsLane< Order >::SetKey(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), SignBit(), Sin(), Sinh(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::SinReduce(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::SinSignFromQuadrant(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), SumsOf8(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), Tanh(), grk::HWY_NAMESPACE::DecompressDcShiftIrrev::transform(), grk::HWY_NAMESPACE::DecompressDcShiftRev::transform(), grk::HWY_NAMESPACE::DecompressRev::transform(), grk::HWY_NAMESPACE::DecompressIrrev::transform(), grk::HWY_NAMESPACE::CompressRev::transform(), grk::HWY_NAMESPACE::CompressIrrev::transform(), hwy::HWY_NAMESPACE::Pack16< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Unpack(), hwy::HWY_NAMESPACE::detail::UseInt(), hwy::HWY_NAMESPACE::detail::UseInt(), VecFromMask(), Zero(), and Zero().

## Set() [23/35]

template<size_t N, int kPow2>

decltype(Set(Simd< uint16_t, N, kPow2 >(), 0)) hwy::HWY_NAMESPACE::Set | ( | Simd< bfloat16_t, N, kPow2 > | d,
|  | bfloat16_t | arg
| ) |  |

References hwy::bfloat16_t::bits, d, and Set().

## Set() [24/35]

template<size_t N, HWY_IF_LE128(double, N) >

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Set | ( | Simd< double, N, 0 > | ,
|  | const double | t
| ) |  |

## Set() [25/35]

template<size_t N, HWY_IF_LE128(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Set | ( | Simd< float, N, 0 > | ,
|  | const float | t
| ) |  |

## Set() [26/35]

template<size_t N, HWY_IF_LE128(int16_t, N) >

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::Set | ( | Simd< int16_t, N, 0 > | ,
|  | const int16_t | t
| ) |  |

## Set() [27/35]

template<size_t N, HWY_IF_LE128(int32_t, N) >

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::Set | ( | Simd< int32_t, N, 0 > | ,
|  | const int32_t | t
| ) |  |

## Set() [28/35]

template<size_t N, HWY_IF_LE128(int64_t, N) >

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::Set | ( | Simd< int64_t, N, 0 > | ,
|  | const int64_t | t
| ) |  |

## Set() [29/35]

template<size_t N, HWY_IF_LE128(int8_t, N) >

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::Set | ( | Simd< int8_t, N, 0 > | ,
|  | const int8_t | t
| ) |  |

## Set() [30/35]

template<typename T , size_t N, typename T2 >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Set | ( | Simd< T, N, 0 > | ,
|  | const T2 | t
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Set() [31/35]

template<size_t N, HWY_IF_LE128(uint16_t, N) >

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::Set | ( | Simd< uint16_t, N, 0 > | ,
|  | const uint16_t | t
| ) |  |

## Set() [32/35]

template<size_t N, HWY_IF_LE128(uint32_t, N) >

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::Set | ( | Simd< uint32_t, N, 0 > | ,
|  | const uint32_t | t
| ) |  |

## Set() [33/35]

template<size_t N, HWY_IF_LE128(uint64_t, N) >

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::Set | ( | Simd< uint64_t, N, 0 > | ,
|  | const uint64_t | t
| ) |  |

## Set() [34/35]

template<size_t N, HWY_IF_LE128(uint8_t, N) >

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::Set | ( | Simd< uint8_t, N, 0 > | ,
|  | const uint8_t | t
| ) |  |

## Set() [35/35]

template<typename T , typename T2 >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Set | ( | Sisd< T > | ,
|  | const T2 | t
| ) |  |

## SetTableIndices() [1/6]

template<typename T , typename TI >

HWY_API Indices512< T > hwy::HWY_NAMESPACE::SetTableIndices | ( | const Full512< T > | d,
|  | const TI * | idx
| ) |  |

References d, IndicesFromVec(), LoadU(), and SetTableIndices().

## SetTableIndices() [2/6]

template<class D , typename TI >

HWY_API VFromD< RebindToUnsigned< D > > hwy::HWY_NAMESPACE::SetTableIndices | ( | D | d,
|  | const TI * | idx
| ) |  |

References d, IndicesFromVec(), and LoadU().

## SetTableIndices() [3/6]

template<typename T , typename TI >

HWY_API Indices256< T > hwy::HWY_NAMESPACE::SetTableIndices | ( | Full256< T > | d,
|  | const TI * | idx
| ) |  |

References d, IndicesFromVec(), and LoadU().

## SetTableIndices() [4/6]

template<typename T , size_t N, typename TI , HWY_IF_LE128(T, N) >

HWY_API Indices128< T, N > hwy::HWY_NAMESPACE::SetTableIndices | ( | Simd< T, N, 0 > | d,
|  | const TI * | idx
| ) |  |

References d, IndicesFromVec(), LoadU(), and SetTableIndices().

Referenced by Compress(), CompressBlocksNot(), CompressNot(), ConcatEven(), ConcatOdd(), Reverse(), SetTableIndices(), SetTableIndices(), and TruncateTo().

## SetTableIndices() [5/6]

template<typename T , size_t N, typename TI >

HWY_API Indices128< T, N > hwy::HWY_NAMESPACE::SetTableIndices | ( | Simd< T, N, 0 > | d,
|  | const TI * | idx
| ) |  |

References d, IndicesFromVec(), and LoadU().

## SetTableIndices() [6/6]

template<typename T , typename TI >

HWY_API Indices1< T > hwy::HWY_NAMESPACE::SetTableIndices | ( | Sisd< T > | d,
|  | const TI * | idx
| ) |  |

References d, IndicesFromVec(), and LoadU().

## ShiftLeft() [1/24]

template<int kBits, size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec128< int16_t, N > | v | ) |

References v.

## ShiftLeft() [2/24]

template<int kBits, size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec128< int32_t, N > | v | ) |

References v.

## ShiftLeft() [3/24]

template<int kBits, size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec128< int64_t, N > | v | ) |

References v.

## ShiftLeft() [4/24]

template<int kBits, typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec128< T, N > | v | ) |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), and v.

## ShiftLeft() [5/24]

template<int kBits, size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec128< uint16_t, N > | v | ) |

References v.

## ShiftLeft() [6/24]

template<int kBits, size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec128< uint32_t, N > | v | ) |

References v.

## ShiftLeft() [7/24]

template<int kBits, size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec128< uint64_t, N > | v | ) |

References v.

## ShiftLeft() [8/24]

template<int kBits, typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec1< T > | v | ) |

References v.

## ShiftLeft() [9/24]

template<int kBits>

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec256< int16_t > | v | ) |

References v.

## ShiftLeft() [10/24]

template<int kBits>

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec256< int32_t > | v | ) |

References v.

## ShiftLeft() [11/24]

template<int kBits>

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec256< int64_t > | v | ) |

References v.

## ShiftLeft() [12/24]

template<int kBits, typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec256< T > | v | ) |

References BitCast(), Set(), and v.

## ShiftLeft() [13/24]

template<int kBits>

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec256< uint16_t > | v | ) |

References v.

## ShiftLeft() [14/24]

template<int kBits>

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec256< uint32_t > | v | ) |

References v.

## ShiftLeft() [15/24]

template<int kBits>

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec256< uint64_t > | v | ) |

References v.

## ShiftLeft() [16/24]

template<int kBits>

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec512< int16_t > | v | ) |

References v.

## ShiftLeft() [17/24]

template<int kBits>

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec512< int32_t > | v | ) |

References v.

## ShiftLeft() [18/24]

template<int kBits>

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec512< int64_t > | v | ) |

References v.

## ShiftLeft() [19/24]

template<int kBits, typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec512< T > | v | ) |

References BitCast(), Set(), and v.

## ShiftLeft() [20/24]

template<int kBits>

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec512< uint16_t > | v | ) |

References v.

## ShiftLeft() [21/24]

template<int kBits>

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec512< uint32_t > | v | ) |

References v.

## ShiftLeft() [22/24]

template<int kBits>

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::ShiftLeft | ( | const Vec512< uint64_t > | v | ) |

References v.

## ShiftLeft() [23/24]

template<int kBits, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftLeft | ( | Vec128< T, N > | v | ) |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

Referenced by hwy::HWY_NAMESPACE::detail::RotateRight< kBits >::operator()(), hwy::HWY_NAMESPACE::detail::RotateRight< kBits >::operator()(), PromoteTo(), PromoteTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), and ShiftRight().

## ShiftLeft() [24/24]

template<int kBits, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftLeft | ( | Vec256< T > | v | ) |

References v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## ShiftLeftBytes() [1/9]

template<int kBytes, class D , class V = VFromD<D>>

HWY_API V hwy::HWY_NAMESPACE::ShiftLeftBytes | ( | const D | d,
|  | const V | v
| ) |  |

References BitCast(), d, and v.

## ShiftLeftBytes() [2/9]

template<int kBytes, class V >

HWY_API V hwy::HWY_NAMESPACE::ShiftLeftBytes | ( | const V | v | ) |

References v.

## ShiftLeftBytes() [3/9]

template<int kBytes, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftLeftBytes | ( | const Vec128< T, N > | v | ) |

References ShiftLeftBytes(), and v.

## ShiftLeftBytes() [4/9]

template<int kBytes, typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ShiftLeftBytes | ( | const Vec512< T > | v | ) |

References ShiftLeftBytes(), and v.

## ShiftLeftBytes() [5/9]

template<int kBytes, class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::ShiftLeftBytes | ( | D | d,
|  | const VFromD< D > | v
| ) |  |

References BitCast(), d, and v.

## ShiftLeftBytes() [6/9]

template<int kBytes, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftLeftBytes | ( | Full256< T > | d,
|  | Vec256< T > | v
| ) |  |

References d, v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## ShiftLeftBytes() [7/9]

template<int kBytes, typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ShiftLeftBytes | ( | Full512< T > | ,
|  | const Vec512< T > | v
| ) |  |

References ShiftLeftBytes(), and v.

## ShiftLeftBytes() [8/9]

template<int kBytes, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftLeftBytes | ( | Simd< T, N, 0 > | ,
|  | Vec128< T, N > | v
| ) |  |

References N, ShiftLeftBytes(), and v.

Referenced by CombineShiftRightBytes(), CombineShiftRightBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftLanes(), ShiftLeftLanes(), and ShiftLeftLanes().

## ShiftLeftBytes() [9/9]

template<int kBytes, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftLeftBytes | ( | Vec256< T > | v | ) |

References v.

## ShiftLeftLanes() [1/8]

template<size_t kLanes, class V >

HWY_API V hwy::HWY_NAMESPACE::ShiftLeftLanes | ( | const V | v | ) |

References v.

## ShiftLeftLanes() [2/8]

template<int kLanes, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftLeftLanes | ( | const Vec128< T, N > | v | ) |

References ShiftLeftLanes(), and v.

## ShiftLeftLanes() [3/8]

template<int kLanes, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftLeftLanes | ( | const Vec256< T > | v | ) |

References v.

## ShiftLeftLanes() [4/8]

template<int kLanes, typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ShiftLeftLanes | ( | const Vec512< T > | v | ) |

References ShiftLeftLanes(), and v.

## ShiftLeftLanes() [5/8]

template<size_t kLanes, class D , class V = VFromD<D>>

HWY_API V hwy::HWY_NAMESPACE::ShiftLeftLanes | ( | D | d,
|  | const V | v
| ) |  |

References d, FirstN(), IfThenElse(), v, and Zero().

## ShiftLeftLanes() [6/8]

template<int kLanes, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftLeftLanes | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References BitCast(), d, ShiftLeftBytes(), and v.

## ShiftLeftLanes() [7/8]

template<int kLanes, typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ShiftLeftLanes | ( | Full512< T > | d,
|  | const Vec512< T > | v
| ) |  |

References BitCast(), d, ShiftLeftBytes(), ShiftLeftLanes(), and v.

## ShiftLeftLanes() [8/8]

template<int kLanes, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftLeftLanes | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References BitCast(), d, ShiftLeftBytes(), ShiftLeftLanes(), and v.

Referenced by ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), and ShiftLeftLanes().

## ShiftLeftSame() [1/24]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec128< int16_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [2/24]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec128< int32_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [3/24]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec128< int64_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [4/24]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec128< T, N > | v,
|  | const int | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), ShiftLeftSame(), and v.

## ShiftLeftSame() [5/24]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec128< T, N > | v,
|  | int | bits
| ) |  |

References ShiftLeftSame().

Referenced by operator<<(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), and ShiftRightSame().

## ShiftLeftSame() [6/24]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec128< uint16_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [7/24]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec128< uint32_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [8/24]

template<size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec128< uint64_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [9/24]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec1< T > | v,
|  | int | bits
| ) |  |

References v.

## ShiftLeftSame() [10/24]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec256< int16_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [11/24]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec256< int32_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [12/24]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec256< int64_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [13/24]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec256< T > | v,
|  | const int | bits
| ) |  |

References BitCast(), Set(), ShiftLeftSame(), and v.

## ShiftLeftSame() [14/24]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec256< uint16_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [15/24]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec256< uint32_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [16/24]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec256< uint64_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [17/24]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec512< int16_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [18/24]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec512< int32_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [19/24]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec512< int64_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [20/24]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec512< T > | v,
|  | const int | bits
| ) |  |

References BitCast(), Set(), ShiftLeftSame(), and v.

## ShiftLeftSame() [21/24]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec512< uint16_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [22/24]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec512< uint32_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [23/24]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | const Vec512< uint64_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftLeftSame() [24/24]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftLeftSame | ( | Vec256< T > | v,
|  | const int | bits
| ) |  |

References ShiftLeftSame(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## ShiftRight() [1/27]

template<int kBits, size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec128< int16_t, N > | v | ) |

References v.

## ShiftRight() [2/27]

template<int kBits, size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec128< int32_t, N > | v | ) |

References v.

## ShiftRight() [3/27]

template<int kBits, size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec128< int64_t, N > | v | ) |

References v.

## ShiftRight() [4/27]

template<int kBits, size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec128< int8_t, N > | v | ) |

References BitCast(), Set(), and v.

## ShiftRight() [5/27]

template<int kBits, size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec128< uint16_t, N > | v | ) |

References v.

## ShiftRight() [6/27]

template<int kBits, size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec128< uint32_t, N > | v | ) |

References v.

## ShiftRight() [7/27]

template<int kBits, size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec128< uint64_t, N > | v | ) |

References v.

## ShiftRight() [8/27]

template<int kBits, size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec128< uint8_t, N > | v | ) |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), and v.

## ShiftRight() [9/27]

template<int kBits, typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec1< T > | v | ) |

References BitCast(), BroadcastSignBit(), and v.

## ShiftRight() [10/27]

template<int kBits>

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec256< int16_t > | v | ) |

References v.

## ShiftRight() [11/27]

template<int kBits>

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec256< int32_t > | v | ) |

References v.

## ShiftRight() [12/27]

template<int kBits>

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec256< int64_t > | v | ) |

References BitCast(), BroadcastSignBit(), ShiftLeft(), and v.

## ShiftRight() [13/27]

template<int kBits>

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec256< int8_t > | v | ) |

References BitCast(), Set(), and v.

## ShiftRight() [14/27]

template<int kBits>

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec256< uint16_t > | v | ) |

References v.

## ShiftRight() [15/27]

template<int kBits>

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec256< uint32_t > | v | ) |

References v.

## ShiftRight() [16/27]

template<int kBits>

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec256< uint64_t > | v | ) |

References v.

## ShiftRight() [17/27]

template<int kBits>

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec256< uint8_t > | v | ) |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, Set(), and v.

## ShiftRight() [18/27]

template<int kBits>

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec512< int16_t > | v | ) |

References v.

## ShiftRight() [19/27]

template<int kBits>

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec512< int32_t > | v | ) |

References v.

## ShiftRight() [20/27]

template<int kBits>

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec512< int64_t > | v | ) |

References v.

## ShiftRight() [21/27]

template<int kBits>

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec512< int8_t > | v | ) |

References BitCast(), Set(), and v.

## ShiftRight() [22/27]

template<int kBits>

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec512< uint16_t > | v | ) |

References v.

## ShiftRight() [23/27]

template<int kBits>

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec512< uint32_t > | v | ) |

References v.

## ShiftRight() [24/27]

template<int kBits>

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec512< uint64_t > | v | ) |

References v.

## ShiftRight() [25/27]

template<int kBits>

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::ShiftRight | ( | const Vec512< uint8_t > | v | ) |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, Set(), and v.

## ShiftRight() [26/27]

template<int kBits, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftRight | ( | Vec128< T, N > | v | ) |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

Referenced by BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), IsFinite(), IsFinite(), and IsFinite().

## ShiftRight() [27/27]

template<int kBits, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftRight | ( | Vec256< T > | v | ) |

References v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## ShiftRightBytes() [1/4]

template<int kBytes, class D , class V = VFromD<D>>

HWY_API V hwy::HWY_NAMESPACE::ShiftRightBytes | ( | const D | d,
|  | const V | v
| ) |  |

References BitCast(), d, and v.

## ShiftRightBytes() [2/4]

template<int kBytes, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftRightBytes | ( | Full256< T > | d,
|  | Vec256< T > | v
| ) |  |

References d, v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## ShiftRightBytes() [3/4]

template<int kBytes, typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ShiftRightBytes | ( | Full512< T > | ,
|  | const Vec512< T > | v
| ) |  |

References ShiftRightBytes(), and v.

## ShiftRightBytes() [4/4]

template<int kBytes, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftRightBytes | ( | Simd< T, N, 0 > | ,
|  | Vec128< T, N > | v
| ) |  |

References N, ShiftRightBytes(), and v.

Referenced by ShiftRightBytes(), ShiftRightBytes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightLanes(), and UpperHalf().

## ShiftRightLanes() [1/5]

template<size_t kLanes, typename T , size_t N, int kPow2, class V = VFromD<Simd<T, N, kPow2>>>

HWY_API V hwy::HWY_NAMESPACE::ShiftRightLanes | ( | const Simd< T, N, kPow2 > | d,
|  | V | v
| ) |  |

References BitCast(), d, FirstN(), IfThenElseZero(), hwy::HWY_NAMESPACE::detail::Iota0(), hwy::HWY_NAMESPACE::detail::LanesPerBlock(), N, and v.

## ShiftRightLanes() [2/5]

template<size_t kLanes, class D , class V = VFromD<D>>

HWY_API V hwy::HWY_NAMESPACE::ShiftRightLanes | ( | D | d,
|  | V | v
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::FirstNPerBlock(), IfThenElseZero(), hwy::HWY_NAMESPACE::detail::IsFull(), hwy::HWY_NAMESPACE::detail::LanesPerBlock(), hwy::HWY_NAMESPACE::detail::MakeMask(), v, and Zero().

## ShiftRightLanes() [3/5]

template<int kLanes, typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftRightLanes | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References BitCast(), d, ShiftRightBytes(), and v.

## ShiftRightLanes() [4/5]

template<int kLanes, typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ShiftRightLanes | ( | Full512< T > | d,
|  | const Vec512< T > | v
| ) |  |

References BitCast(), d, ShiftRightBytes(), ShiftRightLanes(), and v.

## ShiftRightLanes() [5/5]

template<int kLanes, typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftRightLanes | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References BitCast(), d, ShiftRightBytes(), ShiftRightLanes(), and v.

Referenced by ShiftRightLanes(), and ShiftRightLanes().

## ShiftRightSame() [1/27]

template<size_t N>

HWY_API Vec128< int16_t, N > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec128< int16_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [2/27]

template<size_t N>

HWY_API Vec128< int32_t, N > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec128< int32_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [3/27]

template<size_t N>

HWY_API Vec128< int64_t, N > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec128< int64_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [4/27]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec128< T, N > | v,
|  | int | bits
| ) |  |

References Set(), ShiftRightSame(), and v.

Referenced by operator>>(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), and ShiftRightSame().

## ShiftRightSame() [5/27]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec128< uint16_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [6/27]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec128< uint32_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [7/27]

template<size_t N>

HWY_API Vec128< uint64_t, N > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec128< uint64_t, N > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [8/27]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec1< T > | v,
|  | int | bits
| ) |  |

References BitCast(), BroadcastSignBit(), and v.

## ShiftRightSame() [9/27]

HWY_API Vec256< int16_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec256< int16_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [10/27]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec256< int32_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [11/27]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec256< int64_t > | v,
|  | const int | bits
| ) |  |

References BitCast(), BroadcastSignBit(), ShiftLeftSame(), ShiftRightSame(), and v.

## ShiftRightSame() [12/27]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec256< uint16_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [13/27]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec256< uint32_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [14/27]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec256< uint64_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [15/27]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec512< int16_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [16/27]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec512< int32_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [17/27]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec512< int64_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [18/27]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec512< uint16_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [19/27]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec512< uint32_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [20/27]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | const Vec512< uint64_t > | v,
|  | const int | bits
| ) |  |

References v.

## ShiftRightSame() [21/27]

template<size_t N>

HWY_API Vec128< int8_t, N > hwy::HWY_NAMESPACE::ShiftRightSame | ( | Vec128< int8_t, N > | v,
|  | const int | bits
| ) |  |

References BitCast(), Set(), ShiftRightSame(), and v.

## ShiftRightSame() [22/27]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::ShiftRightSame | ( | Vec128< uint8_t, N > | v,
|  | const int | bits
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), ShiftRightSame(), and v.

## ShiftRightSame() [23/27]

HWY_API Vec256< int8_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | Vec256< int8_t > | v,
|  | const int | bits
| ) |  |

References BitCast(), Set(), ShiftRightSame(), and v.

## ShiftRightSame() [24/27]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ShiftRightSame | ( | Vec256< T > | v,
|  | const int | bits
| ) |  |

References ShiftRightSame(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## ShiftRightSame() [25/27]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | Vec256< uint8_t > | v,
|  | const int | bits
| ) |  |

References BitCast(), Set(), ShiftRightSame(), and v.

## ShiftRightSame() [26/27]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | Vec512< int8_t > | v,
|  | const int | bits
| ) |  |

References BitCast(), Set(), ShiftRightSame(), and v.

## ShiftRightSame() [27/27]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::ShiftRightSame | ( | Vec512< uint8_t > | v,
|  | const int | bits
| ) |  |

References BitCast(), Set(), ShiftRightSame(), and v.

## Shuffle01() [1/12]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Shuffle01 | ( | const V | v | ) |

References BitCast(), d, and v.

## Shuffle01() [2/12]

HWY_API Vec128< double > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec128< double > | v | ) |

References v.

## Shuffle01() [3/12]

HWY_API Vec128< int64_t > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec128< int64_t > | v | ) |

References v.

## Shuffle01() [4/12]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec128< T > | v | ) |

References Shuffle01(), and v.

Referenced by Compress(), Compress(), CompressNot(), InterleaveLower(), InterleaveLower(), hwy::HWY_NAMESPACE::detail::InterleaveUpper(), hwy::HWY_NAMESPACE::detail::InterleaveUpper(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), Reverse(), Reverse2(), ReverseBlocks(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), TableLookupLanes(), and TableLookupLanes().

## Shuffle01() [5/12]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec128< uint64_t > | v | ) |

References v.

## Shuffle01() [6/12]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec256< double > | v | ) |

References Shuffle01(), and v.

## Shuffle01() [7/12]

HWY_API Vec256< int64_t > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec256< int64_t > | v | ) |

References Shuffle01(), and v.

## Shuffle01() [8/12]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec256< uint64_t > | v | ) |

References Shuffle01(), and v.

## Shuffle01() [9/12]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec512< double > | v | ) |

References Shuffle01(), and v.

## Shuffle01() [10/12]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec512< int64_t > | v | ) |

References Shuffle01(), and v.

## Shuffle01() [11/12]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::Shuffle01 | ( | const Vec512< uint64_t > | v | ) |

References Shuffle01(), and v.

## Shuffle01() [12/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Shuffle01 | ( | Vec256< T > | v | ) |

References Shuffle01(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Shuffle0123() [1/12]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Shuffle0123 | ( | const V | v | ) |

References Shuffle1032(), Shuffle2301(), and v.

## Shuffle0123() [2/12]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec128< float > | v | ) |

References v.

## Shuffle0123() [3/12]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec128< int32_t > | v | ) |

References v.

## Shuffle0123() [4/12]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec128< T > | v | ) |

References Shuffle0123(), Shuffle1032(), Shuffle2301(), and v.

Referenced by Reverse4(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), and Shuffle0123().

## Shuffle0123() [5/12]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec128< uint32_t > | v | ) |

References v.

## Shuffle0123() [6/12]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec256< float > | v | ) |

References Shuffle0123(), and v.

## Shuffle0123() [7/12]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec256< int32_t > | v | ) |

References Shuffle0123(), and v.

## Shuffle0123() [8/12]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec256< uint32_t > | v | ) |

References Shuffle0123(), and v.

## Shuffle0123() [9/12]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec512< float > | v | ) |

References Shuffle0123(), and v.

## Shuffle0123() [10/12]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec512< int32_t > | v | ) |

References Shuffle0123(), and v.

## Shuffle0123() [11/12]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::Shuffle0123 | ( | const Vec512< uint32_t > | v | ) |

References Shuffle0123(), and v.

## Shuffle0123() [12/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Shuffle0123 | ( | Vec256< T > | v | ) |

References Shuffle0123(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Shuffle0321() [1/12]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Shuffle0321 | ( | const V | v | ) |

References BitCast(), d, and v.

## Shuffle0321() [2/12]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec128< float > | v | ) |

References v.

## Shuffle0321() [3/12]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec128< int32_t > | v | ) |

References v.

## Shuffle0321() [4/12]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec128< T > | v | ) |

References Shuffle0321(), and v.

Referenced by hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), and hwy::HWY_NAMESPACE::detail::SumOfLanes().

## Shuffle0321() [5/12]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec128< uint32_t > | v | ) |

References v.

## Shuffle0321() [6/12]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec256< float > | v | ) |

References Shuffle0321(), and v.

## Shuffle0321() [7/12]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec256< int32_t > | v | ) |

References Shuffle0321(), and v.

## Shuffle0321() [8/12]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec256< uint32_t > | v | ) |

References Shuffle0321(), and v.

## Shuffle0321() [9/12]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec512< float > | v | ) |

References Shuffle0321(), and v.

## Shuffle0321() [10/12]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec512< int32_t > | v | ) |

References Shuffle0321(), and v.

## Shuffle0321() [11/12]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::Shuffle0321 | ( | const Vec512< uint32_t > | v | ) |

References Shuffle0321(), and v.

## Shuffle0321() [12/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Shuffle0321 | ( | Vec256< T > | v | ) |

References Shuffle0321(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Shuffle1032() [1/12]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Shuffle1032 | ( | const V | v | ) |

References BitCast(), d, and v.

## Shuffle1032() [2/12]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec128< float > | v | ) |

References v.

## Shuffle1032() [3/12]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec128< int32_t > | v | ) |

References v.

## Shuffle1032() [4/12]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec128< T > | v | ) |

References Shuffle1032(), and v.

Referenced by hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), Shuffle0123(), Shuffle0123(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), and hwy::HWY_NAMESPACE::detail::SumOfLanes().

## Shuffle1032() [5/12]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec128< uint32_t > | v | ) |

References v.

## Shuffle1032() [6/12]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec256< float > | v | ) |

References Shuffle1032(), and v.

## Shuffle1032() [7/12]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec256< int32_t > | v | ) |

References Shuffle1032(), and v.

## Shuffle1032() [8/12]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec256< uint32_t > | v | ) |

References Shuffle1032(), and v.

## Shuffle1032() [9/12]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec512< float > | v | ) |

References Shuffle1032(), and v.

## Shuffle1032() [10/12]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec512< int32_t > | v | ) |

References Shuffle1032(), and v.

## Shuffle1032() [11/12]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::Shuffle1032 | ( | const Vec512< uint32_t > | v | ) |

References Shuffle1032(), and v.

## Shuffle1032() [12/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Shuffle1032 | ( | Vec256< T > | v | ) |

References Shuffle1032(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Shuffle2103() [1/12]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Shuffle2103 | ( | const V | v | ) |

References BitCast(), d, and v.

## Shuffle2103() [2/12]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec128< float > | v | ) |

References v.

## Shuffle2103() [3/12]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec128< int32_t > | v | ) |

References v.

## Shuffle2103() [4/12]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec128< T > | v | ) |

References Shuffle2103(), and v.

Referenced by Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), and Shuffle2103().

## Shuffle2103() [5/12]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec128< uint32_t > | v | ) |

References v.

## Shuffle2103() [6/12]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec256< float > | v | ) |

References Shuffle2103(), and v.

## Shuffle2103() [7/12]

HWY_API Vec256< int32_t > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec256< int32_t > | v | ) |

References Shuffle2103(), and v.

## Shuffle2103() [8/12]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec256< uint32_t > | v | ) |

References Shuffle2103(), and v.

## Shuffle2103() [9/12]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec512< float > | v | ) |

References Shuffle2103(), and v.

## Shuffle2103() [10/12]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec512< int32_t > | v | ) |

References Shuffle2103(), and v.

## Shuffle2103() [11/12]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::Shuffle2103 | ( | const Vec512< uint32_t > | v | ) |

References Shuffle2103(), and v.

## Shuffle2103() [12/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Shuffle2103 | ( | Vec256< T > | v | ) |

References Shuffle2103(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Shuffle2301() [1/14]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Shuffle2301 | ( | const V | v | ) |

References d, Reverse2(), and v.

## Shuffle2301() [2/14]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec128< float > | v | ) |

References Shuffle2301(), and v.

## Shuffle2301() [3/14]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec128< float, N > | v | ) |

References N, and v.

## Shuffle2301() [4/14]

HWY_API Vec128< int32_t > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec128< int32_t > | v | ) |

References Shuffle2301(), and v.

## Shuffle2301() [5/14]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec128< T, N > | v | ) |

References N, Reverse2(), and v.

## Shuffle2301() [6/14]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec128< uint32_t > | v | ) |

References Shuffle2301(), and v.

## Shuffle2301() [7/14]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec256< float > | v | ) |

References Shuffle2301(), and v.

## Shuffle2301() [8/14]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec256< T > | v | ) |

References Shuffle2301(), and v.

## Shuffle2301() [9/14]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec512< float > | v | ) |

References Shuffle2301(), and v.

## Shuffle2301() [10/14]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec512< T > | v | ) |

References Shuffle2301(), and v.

## Shuffle2301() [11/14]

HWY_API Vec64< float > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec64< float > | v | ) |

References Shuffle2301(), and v.

## Shuffle2301() [12/14]

HWY_API Vec64< int32_t > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec64< int32_t > | v | ) |

References Shuffle2301(), and v.

## Shuffle2301() [13/14]

HWY_API Vec64< uint32_t > hwy::HWY_NAMESPACE::Shuffle2301 | ( | const Vec64< uint32_t > | v | ) |

References Shuffle2301(), and v.

Referenced by hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), MulEven(), MulOdd(), Reverse(), Reverse(), Shuffle0123(), Shuffle0123(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), hwy::HWY_NAMESPACE::detail::Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), and hwy::HWY_NAMESPACE::detail::SumOfLanes().

## Shuffle2301() [14/14]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Shuffle2301 | ( | Vec256< T > | v | ) |

References Shuffle2301(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## SignBit()

template<class D >

HWY_API Vec< D > hwy::HWY_NAMESPACE::SignBit | ( | D | d | ) |

References BitCast(), d, Set(), and hwy::SignMask().

Referenced by Acos(), Asin(), Asinh(), Atan(), Atanh(), CopySign(), CopySign(), CopySign(), CopySign(), CopySign(), CopySignToAbs(), CopySignToAbs(), CopySignToAbs(), CopySignToAbs(), Neg(), Neg(), Neg(), hwy::HWY_NAMESPACE::detail::Neg(), Sinh(), and Tanh().

## Sin()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Sin | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::sin(x).

Valid Lane Types: float32, float64 Max Error: ULP = 3 Valid Range: [-39000, +39000]

Returns
  sine of 'x'

References Abs(), d, MulAdd(), Set(), Xor(), and Zero().

Referenced by CallSin().

## Sinh()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Sinh | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::sinh(x).

Valid Lane Types: float32, float64 Max Error: ULP = 4 Valid Range: float32[-88.7228, +88.7228], float64[-709, +709]

Returns
  hyperbolic sine of 'x'

References And(), d, Expm1(), Set(), SignBit(), and Xor().

Referenced by CallSinh().

## Sort()

template<class D , class Traits , typename T >

void hwy::HWY_NAMESPACE::Sort | ( | D | d,
|  | Traits | st,
|  | T *HWY_RESTRICT | keys,
|  | size_t | num,
|  | T *HWY_RESTRICT | buf
| ) |  |

References hwy::CeilLog2(), d, hwy::HWY_NAMESPACE::detail::HeapSort(), HWY_ALIGN, HWY_LANES, HWY_UNLIKELY, Lanes(), Sort(), and VQSORT_PRINT.

Referenced by Sort().

## Sqrt() [1/12]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec128< double, N > | v | ) |

References v.

## Sqrt() [2/12]

HWY_API Vec128< float, 1 > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec128< float, 1 > | v | ) |

References v.

## Sqrt() [3/12]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec128< float, N > | v | ) |

References ApproximateReciprocalSqrt(), IfThenZeroElse(), Sqrt(), v, and Zero().

Referenced by Acos(), Acosh(), ApproximateReciprocalSqrt(), Asin(), Asinh(), Sqrt(), and Sqrt().

## Sqrt() [4/12]

HWY_API Vec1< double > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec1< double > | v | ) |

References v.

## Sqrt() [5/12]

HWY_API Vec1< float > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec1< float > | v | ) |

References v.

## Sqrt() [6/12]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec256< double > | v | ) |

References v.

## Sqrt() [7/12]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec256< float > | v | ) |

References v.

## Sqrt() [8/12]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec512< double > | v | ) |

References v.

## Sqrt() [9/12]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec512< float > | v | ) |

References v.

## Sqrt() [10/12]

HWY_API Vec64< double > hwy::HWY_NAMESPACE::Sqrt | ( | const Vec64< double > | v | ) |

References v.

## Sqrt() [11/12]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Sqrt | ( | Vec128< T, N > | v | ) |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Sqrt() [12/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Sqrt | ( | Vec256< T > | v | ) |

References Sqrt(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Store() [1/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec128< double > | v,
|  | Full128< double > | ,
|  | double *HWY_RESTRICT | aligned
| ) |  |

References v.

## Store() [2/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec128< float > | v,
|  | Full128< float > | ,
|  | float *HWY_RESTRICT | aligned
| ) |  |

References v.

## Store() [3/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec128< float, 1 > | v,
|  | Full32< float > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References v.

## Store() [4/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec128< float, 1 > | v,
|  | Simd< float, 1, 0 > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References v.

## Store() [5/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec128< float, 2 > | v,
|  | Full64< float > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References v.

## Store() [6/19]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec1< T > | v,
|  | Sisd< T > | ,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References hwy::CopySameSize(), and v.

## Store() [7/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec256< double > | v,
|  | Full256< double > | ,
|  | double *HWY_RESTRICT | aligned
| ) |  |

References v.

## Store() [8/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec256< float > | v,
|  | Full256< float > | ,
|  | float *HWY_RESTRICT | aligned
| ) |  |

References v.

## Store() [9/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec512< double > | v,
|  | Full512< double > | ,
|  | double *HWY_RESTRICT | aligned
| ) |  |

References v.

## Store() [10/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec512< float > | v,
|  | Full512< float > | ,
|  | float *HWY_RESTRICT | aligned
| ) |  |

References v.

## Store() [11/19]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec512< T > | v,
|  | Full512< T > | ,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References v.

## Store() [12/19]

HWY_API void hwy::HWY_NAMESPACE::Store | ( | const Vec64< double > | v,
|  | Full64< double > | ,
|  | double *HWY_RESTRICT | p
| ) |  |

References v.

## Store() [13/19]

template<size_t N, int kPow2>

HWY_API void hwy::HWY_NAMESPACE::Store | ( | svuint16_t | v,
|  | Simd< bfloat16_t, N, kPow2 > | d,
|  | bfloat16_t *HWY_RESTRICT | p
| ) |  |

References d, HWY_RESTRICT, Store(), and v.

## Store() [14/19]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::Store | ( | Vec128< T > | v,
|  | Full128< T > | ,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References v.

## Store() [15/19]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::Store | ( | Vec128< T, N > | v,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References d, N, Store(), StoreU(), and v.

Referenced by AssertVecEqual(), AssertVecEqual(), CLMulLower(), CLMulUpper(), CompressBitsStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), GatherIndex(), GatherIndex(), GatherOffset(), GatherOffset(), GetLane(), GetLane(), grk::HWY_NAMESPACE::hwy_decompress_v_parity_even_mcols_53(), grk::HWY_NAMESPACE::hwy_decompress_v_parity_odd_mcols_53(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), skeleton::HWY_NAMESPACE::MulAddLoop(), Print(), hwy::HWY_NAMESPACE::detail::ScalarMaskedStore(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterOffset(), ScatterOffset(), ScatterOffset(), Store(), Store(), Store(), Store(), StoreU(), StoreU(), StoreU(), StoreU(), Stream(), Stream(), Stream(), Stream(), grk::HWY_NAMESPACE::DecompressDcShiftIrrev::transform(), grk::HWY_NAMESPACE::DecompressDcShiftRev::transform(), grk::HWY_NAMESPACE::DecompressRev::transform(), grk::HWY_NAMESPACE::DecompressIrrev::transform(), grk::HWY_NAMESPACE::CompressRev::transform(), and grk::HWY_NAMESPACE::CompressIrrev::transform().

## Store() [16/19]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API void hwy::HWY_NAMESPACE::Store | ( | Vec128< T, N > | v,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | p
| ) |  |

References v.

## Store() [17/19]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::Store | ( | Vec256< T > | v,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References d, Lanes(), Store(), and v.

## Store() [18/19]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::Store | ( | Vec64< T > | v,
|  | Full64< T > | ,
|  | T *HWY_RESTRICT | p
| ) |  |

References v.

## Store() [19/19]

template<size_t N, int kPow2>

HWY_API void hwy::HWY_NAMESPACE::Store | ( | VFromD< Simd< uint16_t, N, kPow2 > > | v,
|  | Simd< bfloat16_t, N, kPow2 > | d,
|  | bfloat16_t *HWY_RESTRICT | p
| ) |  |

References d, HWY_RESTRICT, Store(), and v.

## StoreInterleaved2() [1/4]

template<typename T , size_t N, class V , HWY_IF_GE128(T, N) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved2 | ( | const V | v0,
|  | const V | v1,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References d, InterleaveLower(), InterleaveUpper(), and hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2().

## StoreInterleaved2() [2/4]

template<typename T , size_t N, HWY_IF_STORE_INT(T, N) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved2 | ( | const Vec128< T, N > | v0,
|  | const Vec128< T, N > | v1,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and StoreInterleaved2().

Referenced by StoreInterleaved2().

## StoreInterleaved2() [3/4]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved2 | ( | const Vec128< T, N > | v0,
|  | const Vec128< T, N > | v1,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## StoreInterleaved2() [4/4]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved2 | ( | const Vec1< T > | v0,
|  | const Vec1< T > | v1,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References d, and StoreU().

## StoreInterleaved3() [1/9]

template<class V , typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved3 | ( | const V | part0,
|  | const V | part1,
|  | const V | part2,
|  | Full64< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BitCast(), d, Load(), N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), StoreU(), and TableLookupBytesOr0().

## StoreInterleaved3() [2/9]

template<typename T , size_t N, class V , HWY_IF_LANE_SIZE(T, 1) , HWY_IF_GE128(T, N) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved3 | ( | const V | v0,
|  | const V | v1,
|  | const V | v2,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BitCast(), d, LoadDup128(), Set(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), and TableLookupBytesOr0().

## StoreInterleaved3() [3/9]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved3 | ( | const Vec128< T, 1 > | v0,
|  | const Vec128< T, 1 > | v1,
|  | const Vec128< T, 1 > | v2,
|  | Simd< T, 1, 0 > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References d, and StoreU().

## StoreInterleaved3() [4/9]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved3 | ( | const Vec128< T, 2 > | part0,
|  | const Vec128< T, 2 > | part1,
|  | const Vec128< T, 2 > | part2,
|  | Simd< T, 2, 0 > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BitCast(), Load(), N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, StoreU(), and TableLookupBytesOr0().

## StoreInterleaved3() [5/9]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) , HWY_IF_LE32(T, N) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved3 | ( | const Vec128< T, N > | part0,
|  | const Vec128< T, N > | part1,
|  | const Vec128< T, N > | part2,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BitCast(), Load(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, StoreU(), and TableLookupBytesOr0().

## StoreInterleaved3() [6/9]

template<typename T , size_t N, HWY_IF_STORE_INT(T, N) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved3 | ( | const Vec128< T, N > | v0,
|  | const Vec128< T, N > | v1,
|  | const Vec128< T, N > | v2,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and StoreInterleaved3().

Referenced by StoreInterleaved3().

## StoreInterleaved3() [7/9]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved3 | ( | const Vec128< T, N > | v0,
|  | const Vec128< T, N > | v1,
|  | const Vec128< T, N > | v2,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## StoreInterleaved3() [8/9]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved3 | ( | const Vec1< T > | v0,
|  | const Vec1< T > | v1,
|  | const Vec1< T > | v2,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References d, and StoreU().

## StoreInterleaved3() [9/9]

template<typename T , HWY_IF_LANE_SIZE(T, 2) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved3 | ( | const Vec64< T > | part0,
|  | const Vec64< T > | part1,
|  | const Vec64< T > | part2,
|  | Full64< T > | dh,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BitCast(), d, Load(), N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, Set(), StoreU(), and TableLookupBytesOr0().

## StoreInterleaved4() [1/5]

template<typename T , size_t N, class V , HWY_IF_NOT_LANE_SIZE(T, 8) , HWY_IF_GE128(T, N) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved4 | ( | const V | v0,
|  | const V | v1,
|  | const V | v2,
|  | const V | v3,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BitCast(), d, InterleaveLower(), InterleaveUpper(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), ZipLower(), and ZipUpper().

## StoreInterleaved4() [2/5]

template<typename T , size_t N, HWY_IF_STORE_INT(T, N) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved4 | ( | const Vec128< T, N > | v0,
|  | const Vec128< T, N > | v1,
|  | const Vec128< T, N > | v2,
|  | const Vec128< T, N > | v3,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and StoreInterleaved4().

Referenced by StoreInterleaved4().

## StoreInterleaved4() [3/5]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved4 | ( | const Vec128< T, N > | v0,
|  | const Vec128< T, N > | v1,
|  | const Vec128< T, N > | v2,
|  | const Vec128< T, N > | v3,
|  | Simd< T, N, 0 > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## StoreInterleaved4() [4/5]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved4 | ( | const Vec1< T > | v0,
|  | const Vec1< T > | v1,
|  | const Vec1< T > | v2,
|  | const Vec1< T > | v3,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References d, and StoreU().

## StoreInterleaved4() [5/5]

template<typename T , HWY_IF_NOT_LANE_SIZE(T, 8) >

HWY_API void hwy::HWY_NAMESPACE::StoreInterleaved4 | ( | const Vec64< T > | part0,
|  | const Vec64< T > | part1,
|  | const Vec64< T > | part2,
|  | const Vec64< T > | part3,
|  | Full64< T > | ,
|  | T *HWY_RESTRICT | unaligned
| ) |  |

References BitCast(), InterleaveLower(), InterleaveUpper(), N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, StoreU(), and ZipLower().

## StoreMaskBits() [1/6]

template<typename T , HWY_IF_LANE_SIZE_ONE_OF(T, 0x110) >

HWY_API size_t hwy::HWY_NAMESPACE::StoreMaskBits | ( | const Full256< T > | d,
|  | const Mask256< T > | mask,
|  | uint8_t * | bits
| ) |  |

References d, hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, and StoreMaskBits().

## StoreMaskBits() [2/6]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::StoreMaskBits | ( | const Full256< T > | ,
|  | const Mask256< T > | mask,
|  | uint8_t * | bits
| ) |  |

References N, hwy::HWY_NAMESPACE::Mask256< T >::raw, and StoreMaskBits().

## StoreMaskBits() [3/6]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::StoreMaskBits | ( | const Full512< T > | ,
|  | const Mask512< T > | mask,
|  | uint8_t * | bits
| ) |  |

References hwy::HWY_NAMESPACE::Mask512< T >::raw, and StoreMaskBits().

## StoreMaskBits() [4/6]

template<class D >

HWY_API size_t hwy::HWY_NAMESPACE::StoreMaskBits | ( | D | d,
|  | svbool_t | m,
|  | uint8_t * | bits
| ) |  |

References hwy::HWY_NAMESPACE::detail::BitsFromBool(), hwy::HWY_NAMESPACE::detail::BoolFromMask(), d, FirstN(), and Lanes().

## StoreMaskBits() [5/6]

template<typename T , size_t N>

HWY_API size_t hwy::HWY_NAMESPACE::StoreMaskBits | ( | Simd< T, N, 0 > | ,
|  | const Mask128< T, N > | mask,
|  | uint8_t * | bits
| ) |  |

References N, and StoreMaskBits().

Referenced by AssertMaskEqual(), CompressStore(), StoreMaskBits(), StoreMaskBits(), StoreMaskBits(), and StoreMaskBits().

## StoreMaskBits() [6/6]

template<typename T >

HWY_API size_t hwy::HWY_NAMESPACE::StoreMaskBits | ( | Sisd< T > | d,
|  | const Mask1< T > | mask,
|  | uint8_t * | bits
| ) |  |

References AllTrue(), and d.

## StoreU() [1/41]

template<class V , class D >

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const V | v,
|  | D | d,
|  | TFromD< D > *HWY_RESTRICT | p
| ) |  |

References d, Store(), and v.

## StoreU() [2/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< double > | v,
|  | Full128< double > | ,
|  | double *HWY_RESTRICT | p
| ) |  |

References v.

## StoreU() [3/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< float > | v,
|  | Full128< float > | ,
|  | float *HWY_RESTRICT | unaligned
| ) |  |

References StoreU(), and v.

## StoreU() [4/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< int16_t > | v,
|  | Full128< int16_t > | ,
|  | int16_t *HWY_RESTRICT | unaligned
| ) |  |

References StoreU(), and v.

## StoreU() [5/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< int16_t, 1 > | v,
|  | Simd< int16_t, 1, 0 > | ,
|  | int16_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [6/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< int32_t > | v,
|  | Full128< int32_t > | ,
|  | int32_t *HWY_RESTRICT | unaligned
| ) |  |

References StoreU(), and v.

## StoreU() [7/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< int64_t > | v,
|  | Full128< int64_t > | ,
|  | int64_t *HWY_RESTRICT | unaligned
| ) |  |

References StoreU(), and v.

## StoreU() [8/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< int8_t > | v,
|  | Full128< int8_t > | ,
|  | int8_t *HWY_RESTRICT | unaligned
| ) |  |

References StoreU(), and v.

## StoreU() [9/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< int8_t, 1 > | v,
|  | Simd< int8_t, 1, 0 > | ,
|  | int8_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [10/41]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< T, 2 > | v,
|  | Simd< T, 2, 0 > | d,
|  | T *HWY_RESTRICT | p
| ) |  |

References BitCast(), d, GetLane(), StoreU(), and v.

## StoreU() [11/41]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< T, N > | v,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | p
| ) |  |

References d, Store(), and v.

## StoreU() [12/41]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< T, N > | v,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | p
| ) |  |

References d, Store(), and v.

## StoreU() [13/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< uint16_t > | v,
|  | Full128< uint16_t > | ,
|  | uint16_t *HWY_RESTRICT | unaligned
| ) |  |

References StoreU(), and v.

## StoreU() [14/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< uint16_t, 1 > | v,
|  | Simd< uint16_t, 1, 0 > | ,
|  | uint16_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [15/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< uint32_t > | v,
|  | Full128< uint32_t > | ,
|  | uint32_t *HWY_RESTRICT | unaligned
| ) |  |

References StoreU(), and v.

## StoreU() [16/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< uint64_t > | v,
|  | Full128< uint64_t > | ,
|  | uint64_t *HWY_RESTRICT | unaligned
| ) |  |

References StoreU(), and v.

## StoreU() [17/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< uint8_t > | v,
|  | Full128< uint8_t > | ,
|  | uint8_t *HWY_RESTRICT | unaligned
| ) |  |

References StoreU(), and v.

Referenced by BlendedStore(), BlendedStore(), BlendedStore(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBlendedStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), Copy(), CopyIf(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), Fill(), Generate(), GenerateInput(), grk::HWY_NAMESPACE::hwy_decompress_v_final_memcpy_53(), hwy::HWY_NAMESPACE::Pack16< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 8 >::Pack(), Replace(), ReplaceIf(), Store(), StoreInterleaved2(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved4(), StoreInterleaved4(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), Transform(), Transform1(), Transform2(), hwy::HWY_NAMESPACE::Pack16< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Unpack(), and hwy::HWY_NAMESPACE::Pack8< 8 >::Unpack().

## StoreU() [18/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec128< uint8_t, 1 > | v,
|  | Simd< uint8_t, 1, 0 > | ,
|  | uint8_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [19/41]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec1< T > | v,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | p
| ) |  |

References d, Store(), and v.

## StoreU() [20/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec256< double > | v,
|  | Full256< double > | ,
|  | double *HWY_RESTRICT | p
| ) |  |

References v.

## StoreU() [21/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec256< float > | v,
|  | Full256< float > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References v.

## StoreU() [22/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec32< float > | v,
|  | Full32< float > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [23/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec32< int32_t > | v,
|  | Full32< int32_t > | ,
|  | int32_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [24/41]

template<typename T , HWY_IF_LANE_SIZE_ONE_OF(T, 0x6) >

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec32< T > | v,
|  | Full32< T > | d,
|  | T *HWY_RESTRICT | p
| ) |  |

References BitCast(), d, GetLane(), StoreU(), and v.

## StoreU() [25/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec32< uint32_t > | v,
|  | Full32< uint32_t > | ,
|  | uint32_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [26/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec512< double > | v,
|  | Full512< double > | ,
|  | double *HWY_RESTRICT | p
| ) |  |

References v.

## StoreU() [27/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec512< float > | v,
|  | Full512< float > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References v.

## StoreU() [28/41]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec512< T > | v,
|  | Full512< T > | ,
|  | T *HWY_RESTRICT | p
| ) |  |

References v.

## StoreU() [29/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec64< float > | v,
|  | Full64< float > | ,
|  | float *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [30/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec64< int16_t > | v,
|  | Full64< int16_t > | ,
|  | int16_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [31/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec64< int32_t > | v,
|  | Full64< int32_t > | ,
|  | int32_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [32/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec64< int64_t > | v,
|  | Full64< int64_t > | ,
|  | int64_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [33/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec64< int8_t > | v,
|  | Full64< int8_t > | ,
|  | int8_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [34/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec64< uint16_t > | v,
|  | Full64< uint16_t > | ,
|  | uint16_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [35/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec64< uint32_t > | v,
|  | Full64< uint32_t > | ,
|  | uint32_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [36/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec64< uint64_t > | v,
|  | Full64< uint64_t > | ,
|  | uint64_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [37/41]

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | const Vec64< uint8_t > | v,
|  | Full64< uint8_t > | ,
|  | uint8_t *HWY_RESTRICT | p
| ) |  |

References StoreU(), and v.

## StoreU() [38/41]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | Vec128< bfloat16_t, N > | v,
|  | Simd< bfloat16_t, N, 0 > | d,
|  | bfloat16_t *HWY_RESTRICT | p
| ) |  |

References d, StoreU(), and v.

## StoreU() [39/41]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | Vec128< float16_t, N > | v,
|  | Simd< float16_t, N, 0 > | d,
|  | float16_t *HWY_RESTRICT | p
| ) |  |

References d, StoreU(), and v.

## StoreU() [40/41]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | Vec128< T > | v,
|  | Full128< T > | ,
|  | T *HWY_RESTRICT | p
| ) |  |

References v.

## StoreU() [41/41]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::StoreU | ( | Vec256< T > | v,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | p
| ) |  |

References d, Store(), and v.

## Stream() [1/11]

template<class V , class D , typename T >

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const V | v,
|  | D | d,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References d, Store(), and v.

## Stream() [2/11]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const Vec128< double, N > | v,
|  | Simd< double, N, 0 > | ,
|  | double *HWY_RESTRICT | aligned
| ) |  |

References v.

## Stream() [3/11]

template<size_t N>

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const Vec128< float, N > | v,
|  | Simd< float, N, 0 > | ,
|  | float *HWY_RESTRICT | aligned
| ) |  |

References v.

## Stream() [4/11]

template<typename T , size_t N>

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const Vec128< T, N > | v,
|  | Simd< T, N, 0 > | d,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References d, Store(), Stream(), and v.

Referenced by Stream().

## Stream() [5/11]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const Vec1< T > | v,
|  | Sisd< T > | d,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References d, Store(), and v.

## Stream() [6/11]

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const Vec256< double > | v,
|  | Full256< double > | ,
|  | double *HWY_RESTRICT | aligned
| ) |  |

References v.

## Stream() [7/11]

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const Vec256< float > | v,
|  | Full256< float > | ,
|  | float *HWY_RESTRICT | aligned
| ) |  |

References v.

## Stream() [8/11]

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const Vec512< double > | v,
|  | Full512< double > | ,
|  | double *HWY_RESTRICT | aligned
| ) |  |

References v.

## Stream() [9/11]

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const Vec512< float > | v,
|  | Full512< float > | ,
|  | float *HWY_RESTRICT | aligned
| ) |  |

References v.

## Stream() [10/11]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | const Vec512< T > | v,
|  | Full512< T > | ,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References v.

## Stream() [11/11]

template<typename T >

HWY_API void hwy::HWY_NAMESPACE::Stream | ( | Vec256< T > | v,
|  | Full256< T > | d,
|  | T *HWY_RESTRICT | aligned
| ) |  |

References d, Store(), and v.

## SumOfLanes() [1/13]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::SumOfLanes | ( | D | d,
|  | const VFromD< D > | v
| ) |  |

References d, v, and Zero().

## SumOfLanes() [2/13]

template<class D , class V >

V hwy::HWY_NAMESPACE::SumOfLanes | ( | D | d,
|  | V | v
| ) |  |

References d, hwy::HWY_NAMESPACE::detail::MakeMask(), Set(), and v.

## SumOfLanes() [3/13]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::SumOfLanes | ( | Full256< T > | d,
|  | const Vec256< T > | v
| ) |  |

References Combine(), d, SumOfLanes(), and v.

## SumOfLanes() [4/13]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::SumOfLanes | ( | Full512< double > | d,
|  | Vec512< double > | v
| ) |  |

References d, Set(), and v.

## SumOfLanes() [5/13]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::SumOfLanes | ( | Full512< float > | d,
|  | Vec512< float > | v
| ) |  |

References d, Set(), and v.

## SumOfLanes() [6/13]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::SumOfLanes | ( | Full512< int16_t > | d,
|  | Vec512< int16_t > | v
| ) |  |

References BitCast(), d, OddEven(), and v.

## SumOfLanes() [7/13]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::SumOfLanes | ( | Full512< int32_t > | d,
|  | Vec512< int32_t > | v
| ) |  |

References d, Set(), and v.

## SumOfLanes() [8/13]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::SumOfLanes | ( | Full512< int64_t > | d,
|  | Vec512< int64_t > | v
| ) |  |

References d, Set(), and v.

## SumOfLanes() [9/13]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::SumOfLanes | ( | Full512< uint16_t > | d,
|  | Vec512< uint16_t > | v
| ) |  |

References And(), BitCast(), d, OddEven(), Set(), and v.

## SumOfLanes() [10/13]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::SumOfLanes | ( | Full512< uint32_t > | d,
|  | Vec512< uint32_t > | v
| ) |  |

References d, Set(), and v.

## SumOfLanes() [11/13]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::SumOfLanes | ( | Full512< uint64_t > | d,
|  | Vec512< uint64_t > | v
| ) |  |

References d, Set(), and v.

## SumOfLanes() [12/13]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::SumOfLanes | ( | Simd< T, N, 0 > | d,
|  | const Vec128< T, N > | v
| ) |  |

References v.

Referenced by hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), and SumOfLanes().

## SumOfLanes() [13/13]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::SumOfLanes | ( | Sisd< T > | ,
|  | const Vec1< T > | v
| ) |  |

References v.

## SumsOf8() [1/9]

HWY_API svuint64_t hwy::HWY_NAMESPACE::SumsOf8 | ( | const svuint8_t | v | ) |

References BitCast(), v, and Zero().

## SumsOf8() [2/9]

HWY_API Vec128< uint64_t > hwy::HWY_NAMESPACE::SumsOf8 | ( | const Vec128< uint8_t > | v | ) |

References v.

Referenced by hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), SumsOf8(), and SumsOf8().

## SumsOf8() [3/9]

template<size_t N>

HWY_API Vec128< uint64_t,(N+7)/8 > hwy::HWY_NAMESPACE::SumsOf8 | ( | const Vec128< uint8_t, N > | v | ) |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## SumsOf8() [4/9]

template<size_t N>

HWY_API Vec128< uint64_t, N/8 > hwy::HWY_NAMESPACE::SumsOf8 | ( | const Vec128< uint8_t, N > | v | ) |

References And(), BitCast(), Set(), and v.

## SumsOf8() [5/9]

HWY_API Vec1< uint64_t > hwy::HWY_NAMESPACE::SumsOf8 | ( | const Vec1< uint8_t > | v | ) |

References v.

## SumsOf8() [6/9]

HWY_API Vec256< uint64_t > hwy::HWY_NAMESPACE::SumsOf8 | ( | const Vec256< uint8_t > | v | ) |

References SumsOf8(), v, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## SumsOf8() [7/9]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::SumsOf8 | ( | const Vec512< uint8_t > | v | ) |

References v.

## SumsOf8() [8/9]

HWY_API Vec64< uint64_t > hwy::HWY_NAMESPACE::SumsOf8 | ( | const Vec64< uint8_t > | v | ) |

References SumsOf8(), and v.

## SumsOf8() [9/9]

template<class VU8 >

HWY_API VFromD< Repartition< uint64_t, DFromV< VU8 > > > hwy::HWY_NAMESPACE::SumsOf8 | ( | const VU8 | v | ) |

References BitCast(), and v.

## SwapAdjacentBlocks() [1/9]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::SwapAdjacentBlocks | ( | const V | v | ) |

References ConcatLowerUpper(), d, Iota(), hwy::HWY_NAMESPACE::detail::LanesPerBlock(), TableLookupLanes(), and v.

## SwapAdjacentBlocks() [2/9]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::SwapAdjacentBlocks | ( | Vec128< T, N > | v | ) |

References SwapAdjacentBlocks(), and v.

Referenced by CompressBlocksNot(), ReverseBlocks(), ReverseBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), and SwapAdjacentBlocks().

## SwapAdjacentBlocks() [3/9]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::SwapAdjacentBlocks | ( | Vec1< T > | v | ) |

References v.

## SwapAdjacentBlocks() [4/9]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::SwapAdjacentBlocks | ( | Vec256< double > | v | ) |

References SwapAdjacentBlocks(), and v.

## SwapAdjacentBlocks() [5/9]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::SwapAdjacentBlocks | ( | Vec256< float > | v | ) |

References SwapAdjacentBlocks(), and v.

## SwapAdjacentBlocks() [6/9]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::SwapAdjacentBlocks | ( | Vec256< T > | v | ) |

References v, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## SwapAdjacentBlocks() [7/9]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::SwapAdjacentBlocks | ( | Vec512< double > | v | ) |

References SwapAdjacentBlocks(), and v.

## SwapAdjacentBlocks() [8/9]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::SwapAdjacentBlocks | ( | Vec512< float > | v | ) |

References SwapAdjacentBlocks(), and v.

## SwapAdjacentBlocks() [9/9]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::SwapAdjacentBlocks | ( | Vec512< T > | v | ) |

References SwapAdjacentBlocks(), and v.

## TableLookupBytes() [1/16]

template<class V , class VI >

HWY_API VI hwy::HWY_NAMESPACE::TableLookupBytes | ( | const V | v,
|  | const VI | idx
| ) |  |

References BitCast(), d, Iota(), hwy::HWY_NAMESPACE::detail::OffsetsOf128BitBlocks(), TableLookupLanes(), and v.

## TableLookupBytes() [2/16]

template<typename T , typename TI >

HWY_API Vec128< TI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | const Vec128< T > | bytes,
|  | const Vec128< TI > | from
| ) |  |

References BitCast(), d, and TableLookupBytes().

Referenced by hwy::HWY_NAMESPACE::detail::Compress(), CompressBitsStore(), hwy::HWY_NAMESPACE::detail::CompressNot(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatOdd(), ConcatOdd(), ConcatOdd(), IndicesFromVec(), hwy::HWY_NAMESPACE::detail::LoadMaskBits(), hwy::HWY_NAMESPACE::detail::LookupAndConcatHalves(), hwy::HWY_NAMESPACE::detail::LookupAndConcatQuarters(), PopulationCount(), hwy::HWY_NAMESPACE::detail::Shuffle1230(), hwy::HWY_NAMESPACE::detail::Shuffle2301(), hwy::HWY_NAMESPACE::detail::Shuffle3012(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytesOr0(), TableLookupBytesOr0(), TableLookupBytesOr0(), TableLookupLanes(), TableLookupLanes(), TruncateTo(), TruncateTo(), TruncateTo(), and U8FromU32().

## TableLookupBytes() [3/16]

template<typename T , typename TI , size_t NI, HWY_IF_LE64(TI, NI) >

HWY_API Vec128< TI, NI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | const Vec128< T > | bytes,
|  | const Vec128< TI, NI > | from
| ) |  |

References Combine(), LowerHalf(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and TableLookupBytes().

## TableLookupBytes() [4/16]

template<typename T , size_t N, typename TI , HWY_IF_LE64(T, N) >

HWY_API Vec128< TI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | const Vec128< T, N > | bytes,
|  | const Vec128< TI > | from
| ) |  |

References Combine(), and TableLookupBytes().

## TableLookupBytes() [5/16]

template<typename T , size_t N, typename TI >

HWY_API Vec256< TI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | const Vec128< T, N > | bytes,
|  | const Vec256< TI > | from
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TableLookupBytes(), and ZeroExtendVector().

## TableLookupBytes() [6/16]

template<typename T , size_t N, typename TI , size_t NI>

HWY_API Vec128< TI, NI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | const Vec128< T, N > | v,
|  | const Vec128< TI, NI > | indices
| ) |  |

References HWY_RESTRICT, N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## TableLookupBytes() [7/16]

template<typename T , typename TI >

HWY_API Vec1< TI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | const Vec1< T > | in,
|  | const Vec1< TI > | indices
| ) |  |

## TableLookupBytes() [8/16]

template<typename T , typename TI , size_t NI>

HWY_API Vec128< TI, NI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | const Vec256< T > | bytes,
|  | const Vec128< TI, NI > | from
| ) |  |

References LowerHalf(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TableLookupBytes(), and ZeroExtendVector().

## TableLookupBytes() [9/16]

template<typename T , typename TI >

HWY_API Vec256< TI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | const Vec256< T > | bytes,
|  | Vec256< TI > | from
| ) |  |

References TableLookupBytes(), hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## TableLookupBytes() [10/16]

template<class VT , class VI >

HWY_API VI hwy::HWY_NAMESPACE::TableLookupBytes | ( | const VT | vt,
|  | const VI | vi
| ) |  |

References BitCast(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), HWY_MAX, hwy::HWY_NAMESPACE::detail::Iota0(), Lanes(), MaxLanes(), hwy::HWY_NAMESPACE::detail::OffsetsOf128BitBlocks(), Pow2(), and TableLookupLanes().

## TableLookupBytes() [11/16]

template<typename T , size_t N, typename TI , size_t NI, HWY_IF_LE64(T, N) , HWY_IF_LE64(TI, NI) >

HWY_API VFromD< Repartition< T, Simd< TI, NI, 0 > > > hwy::HWY_NAMESPACE::TableLookupBytes | ( | Vec128< T, N > | bytes,
|  | Vec128< TI, NI > | from
| ) |  |

References BitCast(), d, and TableLookupBytes().

## TableLookupBytes() [12/16]

template<typename T , size_t N, typename TI >

HWY_API Vec512< TI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | Vec128< T, N > | bytes,
|  | Vec512< TI > | from
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TableLookupBytes(), and ZeroExtendVector().

## TableLookupBytes() [13/16]

template<typename T , typename TI >

HWY_API Vec512< TI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | Vec256< T > | bytes,
|  | Vec512< TI > | from
| ) |  |

References TableLookupBytes(), and ZeroExtendVector().

## TableLookupBytes() [14/16]

template<typename T , typename TI , size_t NI>

HWY_API Vec128< TI, NI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | Vec512< T > | bytes,
|  | Vec128< TI, NI > | from
| ) |  |

References LowerHalf(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TableLookupBytes(), and ZeroExtendVector().

## TableLookupBytes() [15/16]

template<typename T , typename TI >

HWY_API Vec256< TI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | Vec512< T > | bytes,
|  | Vec256< TI > | from
| ) |  |

References LowerHalf(), TableLookupBytes(), and ZeroExtendVector().

## TableLookupBytes() [16/16]

template<typename T , typename TI >

HWY_API Vec512< TI > hwy::HWY_NAMESPACE::TableLookupBytes | ( | Vec512< T > | bytes,
|  | Vec512< TI > | indices
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw, and TableLookupBytes().

## TableLookupBytesOr0() [1/4]

template<class V , class VI >

HWY_API VI hwy::HWY_NAMESPACE::TableLookupBytesOr0 | ( | const V | bytes,
|  | const VI | from
| ) |  |

References TableLookupBytes(), and TableLookupBytesOr0().

Referenced by LoadInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), and TableLookupBytesOr0().

## TableLookupBytesOr0() [2/4]

template<typename T , size_t N, typename TI , size_t NI>

HWY_API Vec128< TI, NI > hwy::HWY_NAMESPACE::TableLookupBytesOr0 | ( | const Vec128< T, N > | v,
|  | const Vec128< TI, NI > | indices
| ) |  |

References TableLookupBytes(), and v.

## TableLookupBytesOr0() [3/4]

template<typename T , typename TI >

HWY_API Vec1< TI > hwy::HWY_NAMESPACE::TableLookupBytesOr0 | ( | const Vec1< T > | in,
|  | const Vec1< TI > | indices
| ) |  |

## TableLookupBytesOr0() [4/4]

template<class VT , class VI >

HWY_API VI hwy::HWY_NAMESPACE::TableLookupBytesOr0 | ( | const VT | vt,
|  | const VI | idx
| ) |  |

References BitCast(), IfThenZeroElse(), and TableLookupBytes().

## TableLookupLanes() [1/14]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::TableLookupLanes | ( | const Vec1< T > | v,
|  | const Indices1< T > |
| ) |  |

References v.

## TableLookupLanes() [2/14]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::TableLookupLanes | ( | const Vec256< double > | v,
|  | const Indices256< double > | idx
| ) |  |

References BitCast(), hwy::HWY_NAMESPACE::Indices256< T >::raw, TableLookupLanes(), and v.

## TableLookupLanes() [3/14]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::TableLookupLanes | ( | const Vec256< float > | v,
|  | const Indices256< float > | idx
| ) |  |

References hwy::HWY_NAMESPACE::Indices256< T >::raw, TableLookupLanes(), and v.

## TableLookupLanes() [4/14]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::TableLookupLanes | ( | const Vec256< T > | v,
|  | Indices256< T > | idx
| ) |  |

References hwy::HWY_NAMESPACE::Indices256< T >::i0, hwy::HWY_NAMESPACE::Indices256< T >::i1, IfThenElse(), IndicesFromVec(), RebindMask(), Set(), TableLookupLanes(), v, hwy::HWY_NAMESPACE::Vec256< T >::v0, and hwy::HWY_NAMESPACE::Vec256< T >::v1.

## TableLookupLanes() [5/14]

HWY_API Vec128< double > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec128< double > | v,
|  | Indices128< double > | idx
| ) |  |

References d, IfThenElse(), Iota(), MaskFromVec(), hwy::HWY_NAMESPACE::Indices128< T, N >::raw, RebindMask(), Set(), Shuffle01(), and v.

## TableLookupLanes() [6/14]

template<size_t N, HWY_IF_GE64(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec128< float, N > | v,
|  | Indices128< float, N > | idx
| ) |  |

References BitCast(), hwy::HWY_NAMESPACE::Indices128< T, N >::raw, TableLookupBytes(), and v.

## TableLookupLanes() [7/14]

template<typename T , HWY_IF_LANE_SIZE(T, 8) >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec128< T > | v,
|  | Indices128< T > | idx
| ) |  |

References BitCast(), d, IfThenElse(), Iota(), MaskFromVec(), hwy::HWY_NAMESPACE::Indices128< T, N >::raw, RebindMask(), Set(), Shuffle01(), and v.

## TableLookupLanes() [8/14]

template<typename T >

HWY_API Vec128< T, 1 > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec128< T, 1 > | v,
|  | Indices128< T, 1 > |
| ) |  |

References v.

## TableLookupLanes() [9/14]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec128< T, N > | v,
|  | Indices128< T, N > | idx
| ) |  |

References BitCast(), d, hwy::HWY_NAMESPACE::Indices128< T, N >::raw, TableLookupBytes(), TableLookupLanes(), and v.

Referenced by Broadcast(), Compress(), Compress(), CompressBlocksNot(), CompressNot(), CompressNot(), CompressNot(), ConcatEven(), ConcatEven(), ConcatOdd(), ConcatOdd(), InterleaveUpper(), Reverse(), Reverse(), Reverse4(), Reverse8(), SwapAdjacentBlocks(), TableLookupBytes(), TableLookupBytes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), and TruncateTo().

## TableLookupLanes() [10/14]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec128< T, N > | v,
|  | Indices128< T, N > | idx
| ) |  |

References BitCast(), d, hwy::HWY_NAMESPACE::Indices128< T, N >::raw, TableLookupBytes(), and v.

## TableLookupLanes() [11/14]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec256< T > | v,
|  | Indices256< T > | idx
| ) |  |

References hwy::HWY_NAMESPACE::Indices256< T >::raw, TableLookupLanes(), and v.

## TableLookupLanes() [12/14]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec512< double > | v,
|  | Indices512< double > | idx
| ) |  |

References hwy::HWY_NAMESPACE::Indices512< T >::raw, TableLookupLanes(), and v.

## TableLookupLanes() [13/14]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec512< float > | v,
|  | Indices512< float > | idx
| ) |  |

References hwy::HWY_NAMESPACE::Indices512< T >::raw, TableLookupLanes(), and v.

## TableLookupLanes() [14/14]

template<typename T , HWY_IF_LANE_SIZE(T, 4) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::TableLookupLanes | ( | Vec512< T > | v,
|  | Indices512< T > | idx
| ) |  |

References hwy::HWY_NAMESPACE::Indices512< T >::raw, TableLookupLanes(), and v.

## TableLookupLanesOr0()

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::TableLookupLanesOr0 | ( | Vec256< T > | v,
|  | Indices256< T > | idx
| ) |  |

References TableLookupLanesOr0(), and v.

Referenced by TableLookupLanesOr0().

## Tanh()

template<class D , class V >

HWY_INLINE V hwy::HWY_NAMESPACE::Tanh | ( | const D | d,
|  | V | x
| ) |  |

Highway SIMD version of std::tanh(x).

Valid Lane Types: float32, float64 Max Error: ULP = 4 Valid Range: float32[-FLT_MAX, +FLT_MAX], float64[-DBL_MAX, +DBL_MAX]

Returns
  hyperbolic tangent of 'x'

References And(), d, Expm1(), Gt(), IfThenElse(), Set(), SignBit(), and Xor().

Referenced by CallTanh().

## TestBit() [1/8]

template<class V >

HWY_API svbool_t hwy::HWY_NAMESPACE::TestBit | ( | const V | a,
|  | const V | bit
| ) |  |

References And().

## TestBit() [2/8]

template<class V >

HWY_API auto hwy::HWY_NAMESPACE::TestBit | ( | const V | a,
|  | const V | bit
| ) |  | -> decltype(Eq(a, bit))

References And().

## TestBit() [3/8]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::TestBit | ( | const Vec128< T, N > | v,
|  | const Vec128< T, N > | bit
| ) |  |

References v.

## TestBit() [4/8]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::TestBit | ( | const Vec1< T > | v,
|  | const Vec1< T > | bit
| ) |  |

References v.

## TestBit() [5/8]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::TestBit | ( | const Vec512< T > | v,
|  | const Vec512< T > | bit
| ) |  |

References hwy::HWY_NAMESPACE::detail::TestBit(), and v.

## TestBit() [6/8]

template<size_t N>

HWY_API Mask128< int64_t, N > hwy::HWY_NAMESPACE::TestBit | ( | Vec128< int64_t, N > | v,
|  | Vec128< int64_t, N > | bit
| ) |  |

References TestBit(), and v.

## TestBit() [7/8]

template<size_t N>

HWY_API Mask128< uint64_t, N > hwy::HWY_NAMESPACE::TestBit | ( | Vec128< uint64_t, N > | v,
|  | Vec128< uint64_t, N > | bit
| ) |  |

References TestBit(), and v.

Referenced by LoadMaskBits(), hwy::HWY_NAMESPACE::detail::LoadMaskBits(), TestBit(), and TestBit().

## TestBit() [8/8]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::TestBit | ( | Vec256< T > | v,
|  | Vec256< T > | bit
| ) |  |

References v.

## Transform()

template<class D , class Func , typename T = TFromD<D>>

void hwy::HWY_NAMESPACE::Transform | ( | D | d,
|  | T *HWY_RESTRICT | inout,
|  | size_t | count,
|  | const Func & | func
| ) |  |

References BlendedStore(), d, FirstN(), HWY_DASSERT, HWY_UNLIKELY, Lanes(), LoadU(), MaskedLoad(), N, StoreU(), and v.

## Transform1()

template<class D , class Func , typename T = TFromD<D>>

void hwy::HWY_NAMESPACE::Transform1 | ( | D | d,
|  | T *HWY_RESTRICT | inout,
|  | size_t | count,
|  | const T *HWY_RESTRICT | in1,
|  | const Func & | func
| ) |  |

References BlendedStore(), d, FirstN(), HWY_DASSERT, HWY_UNLIKELY, Lanes(), LoadU(), MaskedLoad(), N, StoreU(), and v.

## Transform2()

template<class D , class Func , typename T = TFromD<D>>

void hwy::HWY_NAMESPACE::Transform2 | ( | D | d,
|  | T *HWY_RESTRICT | inout,
|  | size_t | count,
|  | const T *HWY_RESTRICT | in1,
|  | const T *HWY_RESTRICT | in2,
|  | const Func & | func
| ) |  |

References BlendedStore(), d, FirstN(), HWY_DASSERT, HWY_UNLIKELY, Lanes(), LoadU(), MaskedLoad(), N, StoreU(), and v.

## Trunc() [1/8]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Trunc | ( | const V | v | ) |

References ConvertTo(), CopySign(), IfThenElse(), hwy::HWY_NAMESPACE::detail::UseInt(), and v.

## Trunc() [2/8]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Trunc | ( | const Vec128< float, N > | v | ) |

References ConvertTo(), IfThenElse(), Trunc(), and v.

Referenced by hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), Trunc(), and Trunc().

## Trunc() [3/8]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Trunc | ( | const Vec1< T > | v | ) |

References Abs(), CopySignToAbs(), and v.

## Trunc() [4/8]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Trunc | ( | const Vec256< double > | v | ) |

References v.

## Trunc() [5/8]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Trunc | ( | const Vec512< double > | v | ) |

References v.

## Trunc() [6/8]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Trunc | ( | const Vec512< float > | v | ) |

References v.

## Trunc() [7/8]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Trunc | ( | Vec128< T, N > | v | ) |

References Abs(), N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## Trunc() [8/8]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Trunc | ( | Vec256< float > | v | ) |

References Trunc(), v, and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## TruncateTo() [1/75]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Full128< uint16_t > | ,
|  | const Vec256< uint32_t > | v
| ) |  |

References v.

## TruncateTo() [2/75]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Full128< uint32_t > | ,
|  | const Vec256< uint64_t > | v
| ) |  |

References v.

## TruncateTo() [3/75]

HWY_API Vec128< uint8_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Full128< uint8_t > | ,
|  | const Vec256< uint16_t > | v
| ) |  |

References v.

## TruncateTo() [4/75]

HWY_API Vec16< uint8_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Full16< uint8_t > | ,
|  | const Vec128< uint64_t > | v
| ) |  |

References BitCast(), ConcatEven(), d, LowerHalf(), and v.

## TruncateTo() [5/75]

HWY_API Vec32< uint16_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Full32< uint16_t > | ,
|  | const Vec128< uint64_t > | v
| ) |  |

References BitCast(), ConcatEven(), d, LowerHalf(), and v.

## TruncateTo() [6/75]

HWY_API Vec32< uint8_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Full32< uint8_t > | ,
|  | const Vec256< uint64_t > | v
| ) |  |

References v.

## TruncateTo() [7/75]

HWY_API Vec64< uint16_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Full64< uint16_t > | ,
|  | const Vec256< uint64_t > | v
| ) |  |

References v.

## TruncateTo() [8/75]

HWY_API Vec64< uint32_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Full64< uint32_t > | ,
|  | const Vec128< uint64_t > | v
| ) |  |

References BitCast(), ConcatEven(), d, LowerHalf(), and v.

## TruncateTo() [9/75]

HWY_API Vec64< uint8_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Full64< uint8_t > | ,
|  | const Vec256< uint32_t > | v
| ) |  |

References v.

## TruncateTo() [10/75]

template<typename From , typename To , HWY_IF_UNSIGNED(From) , HWY_IF_UNSIGNED(To) , hwy::EnableIf<(sizeof(To)< sizeof(From))> * = nullptr>

HWY_API Vec128< To, 1 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< To, 1, 0 > | ,
|  | const Vec128< From, 1 > | v
| ) |  |

References BitCast(), d, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TruncateTo(), and v.

Referenced by hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), RearrangeToOddPlusEven(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), and TruncateTo().

## TruncateTo() [11/75]

template<typename From , typename To , hwy::EnableIf<(sizeof(To)< sizeof(From))> * = nullptr>

HWY_API Vec128< To, 1 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< To, 1, 0 > | ,
|  | const Vec128< From, 1 > | v
| ) |  |

References BitCast(), d, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## TruncateTo() [12/75]

HWY_API Vec256< uint16_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, 16, 0 > | ,
|  | const Vec512< uint32_t > | v
| ) |  |

References Load(), LowerHalf(), TruncateTo(), and v.

## TruncateTo() [13/75]

HWY_API Vec128< uint16_t, 2 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, 2, 0 > | ,
|  | const Vec128< uint64_t, 2 > | v
| ) |  |

References BitCast(), d, LowerHalf(), TruncateTo(), and v.

## TruncateTo() [14/75]

HWY_API Vec128< uint16_t, 4 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, 4, 0 > | ,
|  | const Vec256< uint64_t > | v
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TruncateTo(), and v.

## TruncateTo() [15/75]

HWY_API Vec128< uint16_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, 8, 0 > | ,
|  | const Vec256< uint32_t > | v
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TruncateTo(), and v.

## TruncateTo() [16/75]

HWY_API Vec128< uint16_t, 8 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, 8, 0 > | ,
|  | const Vec512< uint64_t > | v
| ) |  |

References LoadDup128(), LowerHalf(), TruncateTo(), and v.

## TruncateTo() [17/75]

template<size_t N>

HWY_API vuint16mf2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, -1 > | d,
|  | const VFromD< Simd< uint32_t, N, 0 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [18/75]

template<size_t N>

HWY_API vuint16mf2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, -1 > | d,
|  | const VFromD< Simd< uint64_t, N, 1 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [19/75]

template<size_t N>

HWY_API vuint16mf4_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, -2 > | d,
|  | const VFromD< Simd< uint32_t, N, -1 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [20/75]

template<size_t N>

HWY_API vuint16mf4_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, -2 > | d,
|  | const VFromD< Simd< uint64_t, N, 0 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [21/75]

template<size_t N>

HWY_API vuint16m1_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, 0 > | d,
|  | const VFromD< Simd< uint32_t, N, 1 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [22/75]

template<size_t N>

HWY_API vuint16m1_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, 0 > | d,
|  | const VFromD< Simd< uint64_t, N, 2 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [23/75]

template<size_t N, hwy::EnableIf< N > = 2>

N hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, 0 > | ,
|  | const Vec128< uint32_t, N > | v
| ) |  |

References BitCast(), d, LowerHalf(), TruncateTo(), and v.

## TruncateTo() [24/75]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, 0 > | ,
|  | const Vec128< uint32_t, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## TruncateTo() [25/75]

template<size_t N>

HWY_API Vec128< uint16_t, N > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, 0 > | ,
|  | const Vec128< uint64_t, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## TruncateTo() [26/75]

template<size_t N>

HWY_API vuint16m2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, 1 > | d,
|  | const VFromD< Simd< uint32_t, N, 2 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [27/75]

template<size_t N>

HWY_API vuint16m2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, 1 > | d,
|  | const VFromD< Simd< uint64_t, N, 3 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [28/75]

template<size_t N>

HWY_API vuint16m4_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, 2 > | d,
|  | const VFromD< Simd< uint32_t, N, 3 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [29/75]

template<size_t N, int kPow2>

HWY_API svuint16_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, kPow2 > | ,
|  | const svuint32_t | v
| ) |  |

References BitCast(), d, and v.

## TruncateTo() [30/75]

template<size_t N, int kPow2>

HWY_API svuint16_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint16_t, N, kPow2 > | ,
|  | const svuint64_t | v
| ) |  |

References BitCast(), d, and v.

## TruncateTo() [31/75]

HWY_API Vec128< uint32_t, 2 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint32_t, 2, 0 > | ,
|  | const Vec128< uint64_t, 2 > | v
| ) |  |

References BitCast(), d, LowerHalf(), TruncateTo(), and v.

## TruncateTo() [32/75]

HWY_API Vec128< uint32_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint32_t, 4, 0 > | ,
|  | const Vec256< uint64_t > | v
| ) |  |

References BitCast(), LowerHalf(), hwy::HWY_NAMESPACE::Vec256< T >::raw, SetTableIndices(), TableLookupLanes(), TruncateTo(), and v.

## TruncateTo() [33/75]

HWY_API Vec256< uint32_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint32_t, 8, 0 > | ,
|  | const Vec512< uint64_t > | v
| ) |  |

References Load(), LowerHalf(), TruncateTo(), and v.

## TruncateTo() [34/75]

template<size_t N>

HWY_API vuint32mf2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint32_t, N, -1 > | d,
|  | const VFromD< Simd< uint64_t, N, 0 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [35/75]

template<size_t N>

HWY_API vuint32m1_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint32_t, N, 0 > | d,
|  | const VFromD< Simd< uint64_t, N, 1 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [36/75]

template<size_t N>

HWY_API Vec128< uint32_t, N > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint32_t, N, 0 > | ,
|  | const Vec128< uint64_t, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## TruncateTo() [37/75]

template<size_t N>

HWY_API vuint32m2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint32_t, N, 1 > | d,
|  | const VFromD< Simd< uint64_t, N, 2 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [38/75]

template<size_t N>

HWY_API vuint32m4_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint32_t, N, 2 > | d,
|  | const VFromD< Simd< uint64_t, N, 3 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [39/75]

template<size_t N, int kPow2>

HWY_API svuint32_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint32_t, N, kPow2 > | ,
|  | const svuint64_t | v
| ) |  |

References BitCast(), d, and v.

## TruncateTo() [40/75]

HWY_API Vec128< uint8_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, 16, 0 > | ,
|  | const Vec256< uint16_t > | v
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TruncateTo(), and v.

## TruncateTo() [41/75]

HWY_API Vec128< uint8_t, 16 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, 16, 0 > | ,
|  | const Vec512< uint32_t > | v
| ) |  |

References LoadDup128(), LowerHalf(), TableLookupBytes(), TruncateTo(), and v.

## TruncateTo() [42/75]

HWY_API Vec128< uint8_t, 2 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, 2, 0 > | ,
|  | const Vec128< uint64_t, 2 > | v
| ) |  |

References BitCast(), d, LowerHalf(), TruncateTo(), and v.

## TruncateTo() [43/75]

HWY_API Vec256< uint8_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, 32, 0 > | ,
|  | const Vec512< uint16_t > | v
| ) |  |

References Load(), LoadDup128(), LowerHalf(), TableLookupBytes(), TruncateTo(), and v.

## TruncateTo() [44/75]

HWY_API Vec128< uint8_t, 4 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, 4, 0 > | ,
|  | const Vec256< uint64_t > | v
| ) |  |

References Load(), LowerHalf(), hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TableLookupBytes(), TruncateTo(), UpperHalf(), and v.

## TruncateTo() [45/75]

HWY_API Vec128< uint8_t, 8 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, 8, 0 > | d,
|  | const Vec512< uint64_t > | v
| ) |  |

References d, Load(), LoadDup128(), LowerHalf(), TruncateTo(), and v.

## TruncateTo() [46/75]

HWY_API Vec128< uint8_t, 8 > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, 8, 0 > | ,
|  | const Vec256< uint32_t > | v
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, TruncateTo(), and v.

## TruncateTo() [47/75]

template<size_t N>

HWY_API vuint8mf2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, -1 > | d,
|  | const VFromD< Simd< uint16_t, N, 0 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [48/75]

template<size_t N>

HWY_API vuint8mf2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, -1 > | d,
|  | const VFromD< Simd< uint32_t, N, 1 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [49/75]

template<size_t N>

HWY_API vuint8mf2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, -1 > | d,
|  | const VFromD< Simd< uint64_t, N, 2 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [50/75]

template<size_t N>

HWY_API vuint8mf4_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, -2 > | d,
|  | const VFromD< Simd< uint16_t, N, -1 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [51/75]

template<size_t N>

HWY_API vuint8mf4_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, -2 > | d,
|  | const VFromD< Simd< uint32_t, N, 0 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [52/75]

template<size_t N>

HWY_API vuint8mf4_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, -2 > | d,
|  | const VFromD< Simd< uint64_t, N, 1 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [53/75]

template<size_t N>

HWY_API vuint8mf8_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, -3 > | d,
|  | const VFromD< Simd< uint16_t, N, -2 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [54/75]

template<size_t N>

HWY_API vuint8mf8_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, -3 > | d,
|  | const VFromD< Simd< uint32_t, N, -1 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [55/75]

template<size_t N>

HWY_API vuint8mf8_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, -3 > | d,
|  | const VFromD< Simd< uint64_t, N, 0 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [56/75]

template<size_t N>

HWY_API vuint8m1_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 0 > | d,
|  | const VFromD< Simd< uint16_t, N, 1 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [57/75]

template<size_t N>

HWY_API vuint8m1_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 0 > | d,
|  | const VFromD< Simd< uint32_t, N, 2 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [58/75]

template<size_t N>

HWY_API vuint8m1_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 0 > | d,
|  | const VFromD< Simd< uint64_t, N, 3 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [59/75]

template<size_t N, hwy::EnableIf< N > = 2>

N hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< uint16_t, N > | v
| ) |  |

References BitCast(), d, LowerHalf(), TruncateTo(), and v.

## TruncateTo() [60/75]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< uint16_t, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## TruncateTo() [61/75]

template<size_t N, hwy::EnableIf< N > = 2>

N hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< uint32_t, N > | v
| ) |  |

References BitCast(), d, LowerHalf(), TruncateTo(), and v.

## TruncateTo() [62/75]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< uint32_t, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## TruncateTo() [63/75]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 0 > | ,
|  | const Vec128< uint64_t, N > | v
| ) |  |

References N, hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and v.

## TruncateTo() [64/75]

template<size_t N>

HWY_API vuint8m2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 1 > | d,
|  | const VFromD< Simd< uint16_t, N, 2 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [65/75]

template<size_t N>

HWY_API vuint8m2_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 1 > | d,
|  | const VFromD< Simd< uint32_t, N, 3 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [66/75]

template<size_t N>

HWY_API vuint8m4_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, 2 > | d,
|  | const VFromD< Simd< uint16_t, N, 3 > > | v
| ) |  |

References d, Lanes(), and v.

## TruncateTo() [67/75]

template<size_t N, int kPow2>

HWY_API svuint8_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, kPow2 > | ,
|  | const svuint16_t | v
| ) |  |

References BitCast(), d, and v.

## TruncateTo() [68/75]

template<size_t N, int kPow2>

HWY_API svuint8_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, kPow2 > | ,
|  | const svuint32_t | v
| ) |  |

References BitCast(), d, and v.

## TruncateTo() [69/75]

template<size_t N, int kPow2>

HWY_API svuint8_t hwy::HWY_NAMESPACE::TruncateTo | ( | Simd< uint8_t, N, kPow2 > | ,
|  | const svuint64_t | v
| ) |  |

References BitCast(), d, and v.

## TruncateTo() [70/75]

HWY_API Vec1< uint16_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Sisd< uint16_t > | ,
|  | const Vec1< uint32_t > | v
| ) |  |

References v.

## TruncateTo() [71/75]

HWY_API Vec1< uint16_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Sisd< uint16_t > | ,
|  | const Vec1< uint64_t > | v
| ) |  |

References v.

## TruncateTo() [72/75]

HWY_API Vec1< uint32_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Sisd< uint32_t > | ,
|  | const Vec1< uint64_t > | v
| ) |  |

References v.

## TruncateTo() [73/75]

HWY_API Vec1< uint8_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Sisd< uint8_t > | ,
|  | const Vec1< uint16_t > | v
| ) |  |

References v.

## TruncateTo() [74/75]

HWY_API Vec1< uint8_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Sisd< uint8_t > | ,
|  | const Vec1< uint32_t > | v
| ) |  |

References v.

## TruncateTo() [75/75]

HWY_API Vec1< uint8_t > hwy::HWY_NAMESPACE::TruncateTo | ( | Sisd< uint8_t > | ,
|  | const Vec1< uint64_t > | v
| ) |  |

References v.

## U8FromU32() [1/12]

HWY_API svuint8_t hwy::HWY_NAMESPACE::U8FromU32 | ( | const svuint32_t | v | ) |

References BitCast(), and v.

## U8FromU32() [2/12]

HWY_API Vec32< uint8_t > hwy::HWY_NAMESPACE::U8FromU32 | ( | const Vec128< uint32_t > | v | ) |

References U8FromU32(), and v.

Referenced by U8FromU32(), U8FromU32(), and U8FromU32().

## U8FromU32() [3/12]

template<size_t N, HWY_IF_LE64(uint32_t, N) >

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::U8FromU32 | ( | const Vec128< uint32_t, N > | v | ) |

References U8FromU32(), and v.

## U8FromU32() [4/12]

template<size_t N>

HWY_API Vec128< uint8_t, N > hwy::HWY_NAMESPACE::U8FromU32 | ( | const Vec128< uint32_t, N > | v | ) |

References DemoteTo(), and v.

## U8FromU32() [5/12]

HWY_API Vec1< uint8_t > hwy::HWY_NAMESPACE::U8FromU32 | ( | const Vec1< uint32_t > | v | ) |

References DemoteTo(), and v.

## U8FromU32() [6/12]

HWY_API Vec128< uint8_t, 8 > hwy::HWY_NAMESPACE::U8FromU32 | ( | const Vec256< uint32_t > | v | ) |

References BitCast(), DemoteTo(), and v.

## U8FromU32() [7/12]

HWY_API Vec128< uint8_t, 16 > hwy::HWY_NAMESPACE::U8FromU32 | ( | const Vec512< uint32_t > | v | ) |

References LoadDup128(), LowerHalf(), TableLookupBytes(), U8FromU32(), and v.

## U8FromU32() [8/12]

HWY_API vuint8mf4_t hwy::HWY_NAMESPACE::U8FromU32 | ( | const vuint32m1_t | v | ) |

References Lanes(), and v.

## U8FromU32() [9/12]

HWY_API vuint8mf2_t hwy::HWY_NAMESPACE::U8FromU32 | ( | const vuint32m2_t | v | ) |

References Lanes(), and v.

## U8FromU32() [10/12]

HWY_API vuint8m1_t hwy::HWY_NAMESPACE::U8FromU32 | ( | const vuint32m4_t | v | ) |

References Lanes(), and v.

## U8FromU32() [11/12]

HWY_API vuint8m2_t hwy::HWY_NAMESPACE::U8FromU32 | ( | const vuint32m8_t | v | ) |

References Lanes(), and v.

## U8FromU32() [12/12]

HWY_API vuint8mf8_t hwy::HWY_NAMESPACE::U8FromU32 | ( | const vuint32mf2_t | v | ) |

References Lanes(), and v.

## Undefined() [1/12]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::Undefined | ( | D | d | ) |

References d, and Zero().

## Undefined() [2/12]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Undefined | ( | Full256< double > |  | ) |

## Undefined() [3/12]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Undefined | ( | Full256< float > |  | ) |

## Undefined() [4/12]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Undefined | ( | Full256< T > | d | ) |

References d, Undefined(), and hwy::HWY_NAMESPACE::Vec256< T >::v0.

## Undefined() [5/12]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Undefined | ( | Full512< double > |  | ) |

## Undefined() [6/12]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Undefined | ( | Full512< float > |  | ) |

## Undefined() [7/12]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Undefined | ( | Full512< T > |  | ) |

## Undefined() [8/12]

template<size_t N, HWY_IF_LE128(double, N) >

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Undefined | ( | Simd< double, N, 0 > |  | ) |

## Undefined() [9/12]

template<size_t N, HWY_IF_LE128(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Undefined | ( | Simd< float, N, 0 > |  | ) |

## Undefined() [10/12]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Undefined | ( | Simd< T, N, 0 > | d | ) |

References d, and Zero().

## Undefined() [11/12]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Undefined | ( | Simd< T, N, 0 > | d | ) |

References N, and Undefined().

Referenced by Undefined(), and Undefined().

## Undefined() [12/12]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Undefined | ( | Sisd< T > | d | ) |

References d, and Zero().

## UpperHalf() [1/23]

template<class DH >

HWY_API VFromD< DH > hwy::HWY_NAMESPACE::UpperHalf | ( | const DH | d2,
|  | const VFromD< Twice< DH > > | v
| ) |  |

References Lanes(), LowerHalf(), and v.

## UpperHalf() [2/23]

template<class DH , class V >

HWY_API V hwy::HWY_NAMESPACE::UpperHalf | ( | const DH | dh,
|  | const V | v
| ) |  |

References BitCast(), d, Lanes(), hwy::HWY_NAMESPACE::detail::MaskUpperHalf(), and v.

## UpperHalf() [3/23]

HWY_API Vec128< double > hwy::HWY_NAMESPACE::UpperHalf | ( | Full128< double > | ,
|  | Vec256< double > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [4/23]

HWY_API Vec128< float > hwy::HWY_NAMESPACE::UpperHalf | ( | Full128< float > | ,
|  | Vec256< float > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [5/23]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::UpperHalf | ( | Full128< T > | ,
|  | const Vec256< T > | v
| ) |  |

References v.

## UpperHalf() [6/23]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::UpperHalf | ( | Full256< double > | ,
|  | Vec512< double > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [7/23]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::UpperHalf | ( | Full256< float > | ,
|  | Vec512< float > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [8/23]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::UpperHalf | ( | Full256< T > | ,
|  | Vec512< T > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [9/23]

HWY_API Vec64< bfloat16_t > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< bfloat16_t > | dbh,
|  | const Vec128< bfloat16_t > | v
| ) |  |

References BitCast(), UpperHalf(), and v.

## UpperHalf() [10/23]

HWY_API Vec64< double > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< double > | ,
|  | Vec128< double > | v
| ) |  |

References v.

## UpperHalf() [11/23]

HWY_API Vec128< float, 2 > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< float > | ,
|  | const Vec128< float > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [12/23]

HWY_API Vec64< int16_t > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< int16_t > | ,
|  | const Vec128< int16_t > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [13/23]

HWY_API Vec64< int32_t > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< int32_t > | ,
|  | const Vec128< int32_t > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [14/23]

HWY_API Vec64< int64_t > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< int64_t > | ,
|  | const Vec128< int64_t > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [15/23]

HWY_API Vec64< int8_t > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< int8_t > | ,
|  | const Vec128< int8_t > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [16/23]

template<typename T >

HWY_API Vec64< T > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< T > | ,
|  | const Vec128< T > | v
| ) |  |

References v.

## UpperHalf() [17/23]

HWY_API Vec64< uint16_t > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< uint16_t > | ,
|  | const Vec128< uint16_t > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [18/23]

HWY_API Vec64< uint32_t > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< uint32_t > | ,
|  | const Vec128< uint32_t > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [19/23]

HWY_API Vec64< uint64_t > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< uint64_t > | ,
|  | const Vec128< uint64_t > | v
| ) |  |

References UpperHalf(), and v.

## UpperHalf() [20/23]

HWY_API Vec64< uint8_t > hwy::HWY_NAMESPACE::UpperHalf | ( | Full64< uint8_t > | ,
|  | const Vec128< uint8_t > | v
| ) |  |

References UpperHalf(), and v.

Referenced by AESLastRound(), AESLastRound(), AESRound(), AESRound(), CLMulLower(), CLMulUpper(), ConcatUpperLower(), ConvertTo(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::ExtractLane(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), ReorderWidenMulAccumulate(), hwy::HWY_NAMESPACE::detail::ReorderWidenMulAccumulateI16(), TruncateTo(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), and UpperHalf().

## UpperHalf() [21/23]

template<typename T >

HWY_API Vec64< T > hwy::HWY_NAMESPACE::UpperHalf | ( | Half< Full128< T > > | ,
|  | Vec128< T > | v
| ) |  |

References v.

## UpperHalf() [22/23]

template<typename T , size_t N, HWY_IF_LE64(T, N) >

HWY_API Vec128< T,(N+1)/2 > hwy::HWY_NAMESPACE::UpperHalf | ( | Half< Simd< T, N, 0 > > | ,
|  | Vec128< T, N > | v
| ) |  |

References BitCast(), d, N, ShiftRightBytes(), UpperHalf(), and v.

## UpperHalf() [23/23]

template<typename T , size_t N>

HWY_API Vec128< T, N/2 > hwy::HWY_NAMESPACE::UpperHalf | ( | Simd< T, N/2, 0 > | ,
|  | Vec128< T, N > | v
| ) |  |

References hwy::CopyBytes(), N, and v.

## VecFromMask() [1/25]

template<class D , HWY_IF_NOT_FLOAT_D(D) >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::VecFromMask | ( | const D | d,
|  | MFromD< D > | mask
| ) |  |

References d, and Zero().

## VecFromMask() [2/25]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::VecFromMask | ( | const D | d,
|  | svbool_t | mask
| ) |  |

References BitCast(), d, IfThenElseZero(), and Set().

## VecFromMask() [3/25]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask128< double, N > | v | ) |

References v.

## VecFromMask() [4/25]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask128< float, N > | v | ) |

References v.

## VecFromMask() [5/25]

template<typename T , size_t N>

Vec128< T, N > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask128< T, N > | mask | ) |

References hwy::CopySameSize(), and v.

## VecFromMask() [6/25]

template<typename T , size_t N, HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask128< T, N > | v | ) |

References v.

## VecFromMask() [7/25]

template<typename T >

Vec1< T > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask1< T > | mask | ) |

References hwy::CopySameSize(), and v.

## VecFromMask() [8/25]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask256< double > | v | ) |

References v.

## VecFromMask() [9/25]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask256< float > | v | ) |

References v.

## VecFromMask() [10/25]

template<typename T , HWY_IF_LANE_SIZE(T, 1) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask256< T > | v | ) |

References v.

## VecFromMask() [11/25]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< double > | v | ) |

References v.

## VecFromMask() [12/25]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< float > | v | ) |

References v.

## VecFromMask() [13/25]

HWY_API Vec512< int16_t > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< int16_t > | v | ) |

References v.

## VecFromMask() [14/25]

HWY_API Vec512< int32_t > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< int32_t > | v | ) |

References v.

## VecFromMask() [15/25]

HWY_API Vec512< int64_t > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< int64_t > | v | ) |

References v.

## VecFromMask() [16/25]

HWY_API Vec512< int8_t > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< int8_t > | v | ) |

References v.

## VecFromMask() [17/25]

HWY_API Vec512< uint16_t > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< uint16_t > | v | ) |

References v.

## VecFromMask() [18/25]

HWY_API Vec512< uint32_t > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< uint32_t > | v | ) |

References v.

## VecFromMask() [19/25]

HWY_API Vec512< uint64_t > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< uint64_t > | v | ) |

References v.

## VecFromMask() [20/25]

HWY_API Vec512< uint8_t > hwy::HWY_NAMESPACE::VecFromMask | ( | const Mask512< uint8_t > | v | ) |

References v.

## VecFromMask() [21/25]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::VecFromMask | ( | Full256< T > | d,
|  | Mask256< T > | m
| ) |  |

References d, hwy::HWY_NAMESPACE::Mask256< T >::m0, hwy::HWY_NAMESPACE::Mask256< T >::m1, v, hwy::HWY_NAMESPACE::Vec256< T >::v0, and VecFromMask().

## VecFromMask() [22/25]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::VecFromMask | ( | Full512< T > | ,
|  | const Mask512< T > | v
| ) |  |

References v, and VecFromMask().

## VecFromMask() [23/25]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::VecFromMask | ( | Simd< T, N, 0 > | d,
|  | const Mask128< T, N > | v
| ) |  |

References BitCast(), d, N, v, and VecFromMask().

Referenced by AllFalse(), And(), And(), And(), AndNot(), AndNot(), AndNot(), AssertMaskEqual(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), Ceil(), Ceil(), Compress(), Compress(), CompressNot(), hwy::HWY_NAMESPACE::detail::CountTrue(), hwy::HWY_NAMESPACE::detail::CountTrue(), hwy::HWY_NAMESPACE::detail::CountTrue(), hwy::HWY_NAMESPACE::detail::CountTrue(), Eq128(), Eq128(), Eq128Upper(), Eq128Upper(), hwy::HWY_NAMESPACE::detail::Eq128UpperVec(), hwy::HWY_NAMESPACE::detail::Eq128Vec(), hwy::HWY_NAMESPACE::detail::Eq128Vec(), ExclusiveNeither(), ExclusiveNeither(), ExclusiveNeither(), Floor(), Floor(), IfThenElse(), IfThenElseZero(), IfThenElseZero(), IfThenZeroElse(), IfThenZeroElse(), Lt128(), Lt128(), Lt128Upper(), Lt128Upper(), hwy::HWY_NAMESPACE::detail::Lt128UpperVec(), hwy::HWY_NAMESPACE::detail::Lt128Vec(), hwy::HWY_NAMESPACE::detail::Lt128Vec(), Ne128(), Ne128(), Ne128Upper(), Ne128Upper(), hwy::HWY_NAMESPACE::detail::Ne128UpperVec(), hwy::HWY_NAMESPACE::detail::Ne128Vec(), hwy::HWY_NAMESPACE::detail::Ne128Vec(), hwy::HWY_NAMESPACE::detail::NibblesFromMask(), hwy::HWY_NAMESPACE::detail::NibblesFromMask(), Not(), Not(), Not(), Or(), Or(), Or(), RebindMask(), hwy::HWY_NAMESPACE::detail::ScalarMaskedStore(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), Xor(), Xor(), and Xor().

## VecFromMask() [24/25]

template<typename T , size_t N>

Vec128< T, N > hwy::HWY_NAMESPACE::VecFromMask | ( | Simd< T, N, 0 > | ,
|  | const Mask128< T, N > | mask
| ) |  |

References VecFromMask().

## VecFromMask() [25/25]

template<typename T >

Vec1< T > hwy::HWY_NAMESPACE::VecFromMask | ( | Sisd< T > | ,
|  | const Mask1< T > | mask
| ) |  |

References hwy::CopySameSize(), and v.

## VerifySort()

template<class Traits , typename LaneType >

bool hwy::HWY_NAMESPACE::VerifySort | ( | Traits | st,
|  | const InputStats< LaneType > & | input_stats,
|  | const LaneType * | out,
|  | size_t | num_lanes,
|  | const char * | caller
| ) |  |

References HWY_ABORT, HWY_ASSERT, and hwy::InputStats< T >::Notify().

## Xor() [1/17]

template<typename T , size_t N>

HWY_API Mask128< T, N > hwy::HWY_NAMESPACE::Xor | ( | const Mask128< T, N > | a,
|  | Mask128< T, N > | b
| ) |  |

References d, MaskFromVec(), VecFromMask(), and Xor().

## Xor() [2/17]

template<typename T >

HWY_API Mask1< T > hwy::HWY_NAMESPACE::Xor | ( | const Mask1< T > | a,
|  | Mask1< T > | b
| ) |  |

References d, MaskFromVec(), VecFromMask(), and Xor().

## Xor() [3/17]

template<typename T >

HWY_API Mask256< T > hwy::HWY_NAMESPACE::Xor | ( | const Mask256< T > | a,
|  | Mask256< T > | b
| ) |  |

References d, MaskFromVec(), VecFromMask(), and Xor().

## Xor() [4/17]

template<typename T >

HWY_API Mask512< T > hwy::HWY_NAMESPACE::Xor | ( | const Mask512< T > | a,
|  | Mask512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::detail::Xor().

## Xor() [5/17]

template<class V , HWY_IF_FLOAT_V(V) >

HWY_API V hwy::HWY_NAMESPACE::Xor | ( | const V | a,
|  | const V | b
| ) |  |

References BitCast(), and Xor().

## Xor() [6/17]

template<size_t N>

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Xor | ( | const Vec128< double, N > | a,
|  | const Vec128< double, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Xor() [7/17]

template<size_t N>

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Xor | ( | const Vec128< float, N > | a,
|  | const Vec128< float, N > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## Xor() [8/17]

template<typename T , size_t N, HWY_IF_FLOAT(T) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Xor | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References BitCast(), and d.

Referenced by Acos(), Asin(), Asinh(), Atan(), Atanh(), Cos(), Neg(), Neg(), Neg(), hwy::HWY_NAMESPACE::detail::Neg(), operator^(), operator^(), operator^(), operator^(), hwy::HWY_NAMESPACE::Xorshift128Plus::RandomBits(), Sin(), Sinh(), Tanh(), Xor(), Xor(), Xor(), Xor(), Xor(), Xor3(), Xor3(), Xor3(), Xor3(), and ZeroExtendVector().

## Xor() [9/17]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Xor | ( | const Vec128< T, N > | a,
|  | const Vec128< T, N > | b
| ) |  |

References BitCast(), d, and N.

## Xor() [10/17]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Xor | ( | const Vec1< T > | a,
|  | const Vec1< T > | b
| ) |  |

References BitCast().

## Xor() [11/17]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Xor | ( | const Vec256< double > | a,
|  | const Vec256< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Xor() [12/17]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Xor | ( | const Vec256< float > | a,
|  | const Vec256< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw.

## Xor() [13/17]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Xor | ( | const Vec512< double > | a,
|  | const Vec512< double > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Xor() [14/17]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Xor | ( | const Vec512< float > | a,
|  | const Vec512< float > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Xor() [15/17]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Xor | ( | const Vec512< T > | a,
|  | const Vec512< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec512< T >::raw.

## Xor() [16/17]

HWY_API svbool_t hwy::HWY_NAMESPACE::Xor | ( | svbool_t | a,
|  | svbool_t | b
| ) |  |

## Xor() [17/17]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Xor | ( | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::v0, hwy::HWY_NAMESPACE::Vec256< T >::v1, and Xor().

## Xor3() [1/6]

template<class V , HWY_IF_FLOAT_V(V) >

HWY_API V hwy::HWY_NAMESPACE::Xor3 | ( | const V | x1,
|  | const V | x2,
|  | const V | x3
| ) |  |

References BitCast(), and Xor3().

## Xor3() [2/6]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::Xor3 | ( | V | x1,
|  | V | x2,
|  | V | x3
| ) |  |

References Xor().

## Xor3() [3/6]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Xor3 | ( | Vec128< T, N > | x1,
|  | Vec128< T, N > | x2,
|  | Vec128< T, N > | x3
| ) |  |

References Xor(), and Xor3().

Referenced by LoadInterleaved3(), hwy::HWY_NAMESPACE::Pack16< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack8< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack8< 7 >::Unpack(), Xor3(), and Xor3().

## Xor3() [4/6]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Xor3 | ( | Vec1< T > | x1,
|  | Vec1< T > | x2,
|  | Vec1< T > | x3
| ) |  |

References Xor().

## Xor3() [5/6]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Xor3 | ( | Vec256< T > | x1,
|  | Vec256< T > | x2,
|  | Vec256< T > | x3
| ) |  |

References Xor().

## Xor3() [6/6]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Xor3 | ( | Vec512< T > | x1,
|  | Vec512< T > | x2,
|  | Vec512< T > | x3
| ) |  |

References BitCast(), and d.

## Zero() [1/14]

template<class D >

VFromD< D > hwy::HWY_NAMESPACE::Zero | ( | D | d | ) |

References BitCast(), d, and Set().

## Zero() [2/14]

template<class D >

HWY_API VFromD< D > hwy::HWY_NAMESPACE::Zero | ( | D | d | ) |

References BitCast(), d, and Set().

## Zero() [3/14]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::Zero | ( | Full256< double > |  | ) |

## Zero() [4/14]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::Zero | ( | Full256< float > |  | ) |

## Zero() [5/14]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::Zero | ( | Full256< T > | d | ) |

References d, hwy::HWY_NAMESPACE::Vec256< T >::v0, and Zero().

## Zero() [6/14]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::Zero | ( | Full512< double > |  | ) |

## Zero() [7/14]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::Zero | ( | Full512< float > |  | ) |

## Zero() [8/14]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::Zero | ( | Full512< T > |  | ) |

## Zero() [9/14]

template<size_t N>

HWY_API Vec128< bfloat16_t, N > hwy::HWY_NAMESPACE::Zero | ( | Simd< bfloat16_t, N, 0 > |  | ) |

References Zero().

## Zero() [10/14]

template<size_t N, HWY_IF_LE128(double, N) >

HWY_API Vec128< double, N > hwy::HWY_NAMESPACE::Zero | ( | Simd< double, N, 0 > |  | ) |

## Zero() [11/14]

template<size_t N, HWY_IF_LE128(float, N) >

HWY_API Vec128< float, N > hwy::HWY_NAMESPACE::Zero | ( | Simd< float, N, 0 > |  | ) |

## Zero() [12/14]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Zero | ( | Simd< T, N, 0 > | d | ) |

References d, Set(), and Zero().

Referenced by Abs(), Abs(), Abs(), Abs(), Abs(), Acos(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), ConvertTo(), ConvertTo(), CopySign(), Cos(), IfThenElseZero(), IfThenElseZero(), IfThenZeroElse(), IndicesFromVec(), IndicesFromVec(), IndicesFromVec(), hwy::HWY_NAMESPACE::impl::Log(), MaskFalse(), MaskForDist(), Neg(), Neg(), hwy::HWY_NAMESPACE::detail::Neg(), hwy::HWY_NAMESPACE::detail::Neg(), hwy::HWY_NAMESPACE::detail::Neg(), Not(), hwy::HWY_NAMESPACE::detail::ShiftLeftBytesT< kBytes >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftLeftBytesT< kBytes >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftLeftBytesT< 0xFF >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftRightBytesT< 0xFF >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftRightBytesT< kBytes >::operator()(), operator>>(), operator>>(), operator>>(), PromoteTo(), PromoteTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), ShiftLeftLanes(), ShiftRightLanes(), Sin(), Sqrt(), SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), SumsOf8(), Undefined(), Undefined(), Undefined(), VecFromMask(), Zero(), Zero(), Zero(), ZeroExtendVector(), ZeroExtendVector(), ZeroExtendVector(), ZeroIfNegative(), and ZeroIfNegative().

## Zero() [13/14]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::Zero | ( | Simd< T, N, 0 > |  | ) |

## Zero() [14/14]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::Zero | ( | Sisd< T > |  | ) |

## ZeroExtendVector() [1/11]

template<class D , class V >

HWY_API V hwy::HWY_NAMESPACE::ZeroExtendVector | ( | const D | d,
|  | const V | lo
| ) |  |

References Combine(), d, and Zero().

## ZeroExtendVector() [2/11]

template<class D2 , class V >

HWY_API VFromD< D2 > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | D2 | d2,
|  | const V | lo
| ) |  |

References Combine(), and Xor().

## ZeroExtendVector() [3/11]

template<typename T >

HWY_API Vec128< T > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | Full128< T > | d,
|  | Vec64< T > | lo
| ) |  |

References d, and hwy::HWY_NAMESPACE::detail::ZeroExtendVector().

## ZeroExtendVector() [4/11]

HWY_API Vec256< double > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | Full256< double > | ,
|  | Vec128< double > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and ZeroExtendVector().

## ZeroExtendVector() [5/11]

HWY_API Vec256< float > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | Full256< float > | ,
|  | Vec128< float > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec128< T, N >::raw, and ZeroExtendVector().

## ZeroExtendVector() [6/11]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | Full256< T > | d,
|  | Vec128< T > | lo
| ) |  |

References Combine(), d, and Zero().

## ZeroExtendVector() [7/11]

HWY_API Vec512< double > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | Full512< double > | ,
|  | Vec256< double > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and ZeroExtendVector().

## ZeroExtendVector() [8/11]

HWY_API Vec512< float > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | Full512< float > | ,
|  | Vec256< float > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and ZeroExtendVector().

## ZeroExtendVector() [9/11]

template<typename T >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | Full512< T > | ,
|  | Vec256< T > | lo
| ) |  |

References hwy::HWY_NAMESPACE::Vec256< T >::raw, and ZeroExtendVector().

## ZeroExtendVector() [10/11]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N/2 > | lo
| ) |  |

References Combine(), d, Zero(), and ZeroExtendVector().

Referenced by Combine(), Combine(), Combine(), Combine(), Combine(), hwy::HWY_NAMESPACE::detail::NibblesFromMask(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), ZeroExtendVector(), ZeroExtendVector(), ZeroExtendVector(), ZeroExtendVector(), ZeroExtendVector(), and ZeroExtendVector().

## ZeroExtendVector() [11/11]

template<typename T , size_t N, HWY_IF_LE128(T, N) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ZeroExtendVector | ( | Simd< T, N, 0 > | d,
|  | Vec128< T, N/2 > | lo
| ) |  |

References d, FirstN(), IfThenElseZero(), N, and hwy::HWY_NAMESPACE::Vec128< T, N >::raw.

## ZeroIfNegative() [1/7]

template<class V >

HWY_API V hwy::HWY_NAMESPACE::ZeroIfNegative | ( | const V | v | ) |

References IfThenZeroElse(), and v.

## ZeroIfNegative() [2/7]

template<typename T >

HWY_API Vec1< T > hwy::HWY_NAMESPACE::ZeroIfNegative | ( | const Vec1< T > | v | ) |

References hwy::HWY_NAMESPACE::Vec1< T >::raw, and v.

## ZeroIfNegative() [3/7]

template<typename T >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ZeroIfNegative | ( | const Vec256< T > | v | ) |

References IfThenZeroElse(), MaskFromVec(), and v.

## ZeroIfNegative() [4/7]

template<typename T , HWY_IF_FLOAT(T) >

HWY_API Vec512< T > hwy::HWY_NAMESPACE::ZeroIfNegative | ( | const Vec512< T > | v | ) |

References IfThenZeroElse(), MaskFromVec(), and v.

## ZeroIfNegative() [5/7]

template<typename T , size_t N>

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ZeroIfNegative | ( | Vec128< T, N > | v | ) |

References Max(), v, Zero(), and ZeroIfNegative().

Referenced by ZeroIfNegative().

## ZeroIfNegative() [6/7]

template<typename T , size_t N, HWY_IF_FLOAT(T) >

HWY_API Vec128< T, N > hwy::HWY_NAMESPACE::ZeroIfNegative | ( | Vec128< T, N > | v | ) |

References d, IfThenElse(), v, and Zero().

## ZeroIfNegative() [7/7]

template<typename T , HWY_IF_FLOAT(T) >

HWY_API Vec256< T > hwy::HWY_NAMESPACE::ZeroIfNegative | ( | Vec256< T > | v | ) |

References IfThenZeroElse(), v, and Zero().

## ZipLower() [1/17]

template<class V , class D = DFromV<V>, class DW = RepartitionToWide<D>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::ZipLower | ( | const V | a,
|  | const V | b
| ) |  |

References BitCast(), and InterleaveLower().

## ZipLower() [2/17]

HWY_API Vec1< int32_t > hwy::HWY_NAMESPACE::ZipLower | ( | const Vec1< int16_t > | a,
|  | const Vec1< int16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## ZipLower() [3/17]

HWY_API Vec1< int64_t > hwy::HWY_NAMESPACE::ZipLower | ( | const Vec1< int32_t > | a,
|  | const Vec1< int32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## ZipLower() [4/17]

HWY_API Vec1< int16_t > hwy::HWY_NAMESPACE::ZipLower | ( | const Vec1< int8_t > | a,
|  | const Vec1< int8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## ZipLower() [5/17]

HWY_API Vec1< uint32_t > hwy::HWY_NAMESPACE::ZipLower | ( | const Vec1< uint16_t > | a,
|  | const Vec1< uint16_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## ZipLower() [6/17]

HWY_API Vec1< uint64_t > hwy::HWY_NAMESPACE::ZipLower | ( | const Vec1< uint32_t > | a,
|  | const Vec1< uint32_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## ZipLower() [7/17]

HWY_API Vec1< uint16_t > hwy::HWY_NAMESPACE::ZipLower | ( | const Vec1< uint8_t > | a,
|  | const Vec1< uint8_t > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## ZipLower() [8/17]

template<class V , class D = DFromV<V>, class DW = RepartitionToWide<D>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::ZipLower | ( | DW | dw,
|  | V | a,
|  | V | b
| ) |  |

References BitCast(), InterleaveLower(), and ZipLower().

## ZipLower() [9/17]

template<class V , class DW = RepartitionToWide<DFromV<V>>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::ZipLower | ( | DW | dw,
|  | V | a,
|  | V | b
| ) |  |

References BitCast(), InterleaveLower(), and hwy::IsSame().

## ZipLower() [10/17]

template<typename T , class D = Full256<T>, class DW = RepartitionToWide<D>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::ZipLower | ( | DW | dw,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References BitCast(), and InterleaveLower().

## ZipLower() [11/17]

template<typename T , typename TW = MakeWide<T>>

HWY_API Vec256< TW > hwy::HWY_NAMESPACE::ZipLower | ( | Full256< TW > | dw,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References BitCast(), InterleaveLower(), and ZipLower().

## ZipLower() [12/17]

template<typename T , typename TW = MakeWide<T>>

HWY_API Vec512< TW > hwy::HWY_NAMESPACE::ZipLower | ( | Full512< TW > | ,
|  | Vec512< T > | a,
|  | Vec512< T > | b
| ) |  |

References BitCast(), InterleaveLower(), and ZipLower().

## ZipLower() [13/17]

template<typename T , typename TW = MakeWide<T>, class VW = Vec1<TW>>

HWY_API VW hwy::HWY_NAMESPACE::ZipLower | ( | Sisd< TW > | ,
|  | Vec1< T > | a,
|  | Vec1< T > | b
| ) |  |

References hwy::HWY_NAMESPACE::Vec1< T >::raw.

## ZipLower() [14/17]

template<class V , class DW = RepartitionToWide<DFromV<V>>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::ZipLower | ( | V | a,
|  | V | b
| ) |  |

References BitCast(), InterleaveLower(), and ZipLower().

Referenced by hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), StoreInterleaved4(), StoreInterleaved4(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), ZipLower(), and ZipLower().

## ZipLower() [15/17]

template<typename T , class DW = RepartitionToWide<Full256<T>>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::ZipLower | ( | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References BitCast(), and InterleaveLower().

## ZipLower() [16/17]

template<typename T , typename TW = MakeWide<T>>

HWY_API Vec256< TW > hwy::HWY_NAMESPACE::ZipLower | ( | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References BitCast(), InterleaveLower(), and ZipLower().

## ZipLower() [17/17]

template<typename T , typename TW = MakeWide<T>>

HWY_API Vec512< TW > hwy::HWY_NAMESPACE::ZipLower | ( | Vec512< T > | a,
|  | Vec512< T > | b
| ) |  |

References BitCast(), InterleaveLower(), and ZipLower().

## ZipUpper() [1/5]

template<class V , class D = DFromV<V>, class DW = RepartitionToWide<D>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::ZipUpper | ( | DW | dw,
|  | V | a,
|  | V | b
| ) |  |

References BitCast(), and ZipUpper().

Referenced by StoreInterleaved4(), ZipUpper(), ZipUpper(), and ZipUpper().

## ZipUpper() [2/5]

template<class V , class DW = RepartitionToWide<DFromV<V>>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::ZipUpper | ( | DW | dw,
|  | V | a,
|  | V | b
| ) |  |

References BitCast(), InterleaveUpper(), and hwy::IsSame().

## ZipUpper() [3/5]

template<typename T , class D = Full256<T>, class DW = RepartitionToWide<D>>

HWY_API VFromD< DW > hwy::HWY_NAMESPACE::ZipUpper | ( | DW | dw,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References BitCast(), and InterleaveUpper().

## ZipUpper() [4/5]

template<typename T , typename TW = MakeWide<T>>

HWY_API Vec256< TW > hwy::HWY_NAMESPACE::ZipUpper | ( | Full256< TW > | dw,
|  | Vec256< T > | a,
|  | Vec256< T > | b
| ) |  |

References BitCast(), and ZipUpper().

## ZipUpper() [5/5]

template<typename T , typename TW = MakeWide<T>>

HWY_API Vec512< TW > hwy::HWY_NAMESPACE::ZipUpper | ( | Full512< TW > | d,
|  | Vec512< T > | a,
|  | Vec512< T > | b
| ) |  |

References BitCast(), d, and ZipUpper().

## Variable Documentation

## d

hwy::HWY_NAMESPACE::d

Referenced by Acos(), Acosh(), AESLastRound(), AESLastRound(), AESRound(), AESRound(), AllFalse(), AllFalse(), AllFalse(), AllFalse(), AllFalse(), AllTrue(), AllTrue(), AllTrue(), AllTrue(), And(), And(), And(), And(), AndNot(), AndNot(), AndNot(), Asin(), Asinh(), hwy::HWY_NAMESPACE::impl::AsinImpl< float >::AsinPoly(), AssertMaskEqual(), AssertVecEqual(), AssertVecEqual(), Atan(), Atanh(), hwy::HWY_NAMESPACE::impl::AtanImpl< float >::AtanPoly(), BitCast(), BitCast(), BitCast(), BitCast(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), hwy::HWY_NAMESPACE::detail::BitsFromMask(), BlendedStore(), BlendedStore(), BlendedStore(), Broadcast(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), CallAcos(), CallAcosh(), CallAsin(), CallAsinh(), CallAtan(), CallAtanh(), CallCos(), CallExp(), CallExpm1(), CallLog(), CallLog10(), CallLog1p(), CallLog2(), CallSin(), CallSinh(), CallTanh(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ClampF64ToI32Max(), CLMulLower(), CLMulLower(), CLMulUpper(), CLMulUpper(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), Combine(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightLanes(), Compress(), Compress(), Compress(), Compress(), Compress(), Compress(), CompressBits(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlocksNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatEven(), ConcatLowerLower(), ConcatLowerLower(), ConcatLowerLower(), ConcatLowerLower(), ConcatLowerUpper(), ConcatLowerUpper(), ConcatLowerUpper(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatOdd(), ConcatUpperLower(), ConcatUpperLower(), ConcatUpperLower(), ConcatUpperLower(), ConcatUpperUpper(), ConcatUpperUpper(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), Copy(), CopyIf(), CopySign(), Cos(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::CosReduce(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::CosSignFromQuadrant(), CountTrue(), CountTrue(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), hwy::HWY_NAMESPACE::detail::ForeachCappedR< T, kMul, kMinArg, Test >::Do(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), Eq128(), Eq128(), Eq128(), Eq128(), Eq128(), Eq128Upper(), Eq128Upper(), Eq128Upper(), Eq128Upper(), Eq128Upper(), hwy::HWY_NAMESPACE::detail::Eq128UpperVec(), hwy::HWY_NAMESPACE::detail::Eq128Vec(), hwy::HWY_NAMESPACE::detail::Eq128Vec(), ExclusiveNeither(), ExclusiveNeither(), ExclusiveNeither(), Exp(), Expm1(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::ExpPoly(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::ExpReduce(), ExtractLane(), Fill(), Find(), FindFirstTrue(), FindFirstTrue(), FindFirstTrue(), FindFirstTrue(), FindIf(), FindKnownFirstTrue(), FindKnownFirstTrue(), FindKnownFirstTrue(), FirstN(), FirstN(), GatherIndex(), GatherIndex(), GatherIndex(), GatherIndex(), GatherIndex(), GatherOffset(), GatherOffset(), GatherOffset(), GatherOffset(), Generate(), GenerateInput(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), hwy::HWY_NAMESPACE::detail::IdxFromNotBits(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfVecThenElse(), IfVecThenElse(), IndicesFromVec(), IndicesFromVec(), Inf(), InsertLane(), hwy::HWY_NAMESPACE::detail::InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), InterleaveLower(), InterleaveUpper(), InterleaveUpper(), InterleaveUpper(), Iota(), Iota(), Iota(), Iota(), IsFinite(), IsFinite(), IsFinite(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), hwy::HWY_NAMESPACE::detail::IsSupportedLMUL(), hwy::HWY_NAMESPACE::detail::LanesPerBlock(), Load(), Load(), Load(), hwy::HWY_NAMESPACE::detail::Load8Bytes(), LoadDup128(), LoadDup128(), LoadDup128(), LoadDup128(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::LoadExpShortRange(), LoadInterleaved2(), LoadInterleaved2(), LoadInterleaved2(), LoadInterleaved2(), LoadInterleaved3(), LoadInterleaved3(), LoadInterleaved3(), LoadInterleaved3(), LoadInterleaved4(), LoadInterleaved4(), LoadInterleaved4(), LoadInterleaved4(), LoadMaskBits(), LoadMaskBits(), LoadMaskBits(), hwy::HWY_NAMESPACE::detail::LoadMaskBits(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), LoadU(), hwy::HWY_NAMESPACE::impl::Log(), Log(), Log10(), Log1p(), Log2(), hwy::HWY_NAMESPACE::impl::LogImpl< float >::LogPoly(), Lt128(), Lt128(), Lt128(), Lt128(), Lt128(), Lt128Upper(), Lt128Upper(), Lt128Upper(), Lt128Upper(), Lt128Upper(), hwy::HWY_NAMESPACE::detail::Lt128UpperVec(), hwy::HWY_NAMESPACE::detail::Lt128Vec(), hwy::HWY_NAMESPACE::detail::Lt128Vec(), hwy::HWY_NAMESPACE::detail::MakeMask(), MaskedLoad(), MaskedLoad(), MaskedLoad(), MaskFalse(), hwy::HWY_NAMESPACE::detail::MaskLowerHalf(), MaskTrue(), hwy::HWY_NAMESPACE::detail::MaskUpperHalf(), Max128(), Max128(), Max128(), Max128(), Max128Upper(), Max128Upper(), Max128Upper(), Max128Upper(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxU(), hwy::HWY_NAMESPACE::detail::MaybePrintVector(), Min128(), Min128(), Min128(), Min128(), Min128Upper(), Min128Upper(), Min128Upper(), Min128Upper(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinU(), MulEven(), MulEven(), MulEven(), MulEven(), MulFixedPoint15(), NaN(), Ne128(), Ne128(), Ne128(), Ne128(), Ne128(), Ne128Upper(), Ne128Upper(), Ne128Upper(), Ne128Upper(), Ne128Upper(), hwy::HWY_NAMESPACE::detail::Ne128UpperVec(), hwy::HWY_NAMESPACE::detail::Ne128Vec(), hwy::HWY_NAMESPACE::detail::Ne128Vec(), hwy::HWY_NAMESPACE::detail::NibblesFromMask(), hwy::HWY_NAMESPACE::detail::NibblesFromMask(), Not(), Not(), OddEven(), OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), hwy::HWY_NAMESPACE::detail::OddEven(), OddEvenBlocks(), hwy::HWY_NAMESPACE::detail::OffsetsOf128BitBlocks(), hwy::HWY_NAMESPACE::detail::ShiftLeftBytesT< kBytes >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftRightBytesT< kBytes >::operator()(), operator<<(), operator>(), operator>>(), operator>>(), operator>>(), Or(), Or(), Or(), Or(), Or3(), OrAnd(), hwy::HWY_NAMESPACE::Pack16< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Pack(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::Poly(), PopulationCount(), hwy::HWY_NAMESPACE::impl::ExpImpl< float >::Pow2I(), Print(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), RandomValues(), RearrangeToOddPlusEven(), RearrangeToOddPlusEven(), ReorderWidenMulAccumulate(), Replace(), ReplaceIf(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse4(), Reverse4(), Reverse4(), Reverse4(), Reverse4(), Reverse8(), Reverse8(), Reverse8(), ReverseBlocks(), SafeCopyN(), SafeFillN(), hwy::HWY_NAMESPACE::detail::ScalarMaskedStore(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), Set(), Set(), hwy::HWY_NAMESPACE::detail::Set64(), hwy::HWY_NAMESPACE::detail::TraitsLane< Order >::SetKey(), SetTableIndices(), SetTableIndices(), SetTableIndices(), SetTableIndices(), SetTableIndices(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftRightBytes(), ShiftRightBytes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightLanes(), Shuffle01(), Shuffle0321(), Shuffle1032(), hwy::HWY_NAMESPACE::detail::Shuffle1230(), Shuffle2103(), Shuffle2301(), hwy::HWY_NAMESPACE::detail::Shuffle2301(), hwy::HWY_NAMESPACE::detail::Shuffle3012(), hwy::HWY_NAMESPACE::detail::SiftDown(), SignBit(), Sin(), Sinh(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::SinReduce(), hwy::HWY_NAMESPACE::impl::CosSinImpl< float >::SinSignFromQuadrant(), Sort(), Store(), Store(), Store(), Store(), StoreInterleaved2(), StoreInterleaved2(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved4(), StoreInterleaved4(), StoreMaskBits(), StoreMaskBits(), StoreMaskBits(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), Stream(), Stream(), Stream(), Stream(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), SwapAdjacentBlocks(), TableLookupBytes(), TableLookupBytes(), TableLookupBytes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), Tanh(), Transform(), Transform1(), Transform2(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), Undefined(), Undefined(), Undefined(), Undefined(), hwy::HWY_NAMESPACE::Pack16< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Unpack(), UpperHalf(), UpperHalf(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), Xor(), Xor(), Xor(), Xor(), Xor3(), Zero(), Zero(), Zero(), ZeroExtendVector(), ZeroExtendVector(), ZeroExtendVector(), hwy::HWY_NAMESPACE::detail::ZeroExtendVector(), ZeroExtendVector(), ZeroIfNegative(), and ZipUpper().

## N

hwy::HWY_NAMESPACE::N

Referenced by hwy::HWY_NAMESPACE::detail::Abs(), hwy::HWY_NAMESPACE::detail::Abs(), hwy::HWY_NAMESPACE::detail::Add(), hwy::HWY_NAMESPACE::detail::Add(), AllTrue(), AllTrue(), And(), AssertMaskEqual(), AssertVecEqual(), AverageRound(), hwy::HWY_NAMESPACE::detail::BitCastToByte(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), BroadcastSignBit(), hwy::HWY_NAMESPACE::detail::BytesAbove(), Ceil(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), Combine(), Combine(), CombineShiftRightBytes(), CombineShiftRightBytes(), CombineShiftRightBytes(), Compress(), CompressBits(), CompressBitsStore(), CompressNot(), CompressNot(), CompressStore(), CompressStore(), CompressStore(), hwy::HWY_NAMESPACE::Dot::Compute(), hwy::HWY_NAMESPACE::Dot::Compute(), ConcatEven(), ConcatLowerLower(), ConcatLowerLower(), ConcatLowerUpper(), ConcatLowerUpper(), ConcatOdd(), ConcatUpperUpper(), ConcatUpperUpper(), hwy::HWY_NAMESPACE::detail::ConvertTo(), hwy::HWY_NAMESPACE::detail::ConvertTo(), Copy(), CopyIf(), CountTrue(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DupEven(), DupOdd(), Fill(), Find(), FindIf(), Floor(), GatherIndex(), GatherIndex(), GatherOffset(), GatherOffset(), GatherOffset(), Generate(), GenerateInput(), IndicesFromVec(), hwy::HWY_NAMESPACE::detail::InsertLane(), hwy::HWY_NAMESPACE::detail::InsertLane(), InterleaveLower(), InterleaveUpper(), Iota(), hwy::HWY_NAMESPACE::detail::IsFull(), Lanes(), hwy::HWY_NAMESPACE::detail::LanesPerBlock(), hwy::HWY_NAMESPACE::detail::LanesPerBlock(), LoadInterleaved2(), LoadInterleaved2(), LoadInterleaved3(), LoadInterleaved4(), LoadMaskBits(), LoadMaskBits(), LoadMaskBits(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::LoadTransposedBlocks4(), LowerHalf(), LowerHalf(), LowerHalf(), MaskFromVec(), hwy::HWY_NAMESPACE::detail::Max(), hwy::HWY_NAMESPACE::detail::Max(), hwy::HWY_NAMESPACE::detail::Min(), hwy::HWY_NAMESPACE::detail::Min(), hwy::HWY_NAMESPACE::detail::Mul(), hwy::HWY_NAMESPACE::detail::Mul(), hwy::HWY_NAMESPACE::detail::Mul(), MulEven(), MulEven(), MulFixedPoint15(), MulHigh(), MulHigh(), MulOdd(), MulOdd(), hwy::HWY_NAMESPACE::Simd< Lane, N, kPow2 >::NewN(), hwy::HWY_NAMESPACE::detail::NibblesFromMask(), Not(), hwy::HWY_NAMESPACE::detail::OnlyActive(), operator!=(), hwy::HWY_NAMESPACE::detail::ShiftRightBytesT< kBytes >::operator()(), operator/(), operator<(), operator<<(), operator<=(), operator==(), operator>>(), Or(), hwy::HWY_NAMESPACE::Pack16< 1 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Pack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Pack(), Print(), PromoteTo(), ReorderDemote2To(), Replace(), ReplaceIf(), Reverse(), Reverse(), Reverse2(), Reverse4(), Reverse8(), Round(), SaturatedAdd(), SaturatedSub(), hwy::HWY_NAMESPACE::detail::ScalarMaskedStore(), hwy::HWY_NAMESPACE::detail::ScaleByPower(), hwy::HWY_NAMESPACE::detail::ScatterIndex(), hwy::HWY_NAMESPACE::detail::ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), hwy::HWY_NAMESPACE::detail::ScatterOffset(), hwy::HWY_NAMESPACE::detail::ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), Set(), ShiftLeft(), ShiftLeftBytes(), ShiftRight(), ShiftRightBytes(), ShiftRightLanes(), hwy::HWY_NAMESPACE::detail::Shuffle1230(), Shuffle2301(), hwy::HWY_NAMESPACE::detail::Shuffle2301(), Shuffle2301(), hwy::HWY_NAMESPACE::detail::Shuffle3012(), Sqrt(), Store(), StoreInterleaved2(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved3(), StoreInterleaved4(), StoreInterleaved4(), StoreMaskBits(), StoreMaskBits(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks2(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks3(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::StoreTransposedBlocks4(), hwy::HWY_NAMESPACE::detail::Sub(), hwy::HWY_NAMESPACE::detail::Sub(), SumsOf8(), TableLookupBytes(), Transform(), Transform1(), Transform2(), Trunc(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), Undefined(), hwy::HWY_NAMESPACE::Pack16< 1 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 2 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 3 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 4 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 5 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 6 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 7 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 8 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 9 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 10 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 11 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 12 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 13 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 14 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 15 >::Unpack(), hwy::HWY_NAMESPACE::Pack16< 16 >::Unpack(), UpperHalf(), UpperHalf(), VecFromMask(), Xor(), and ZeroExtendVector().

## v

const vfloat64m1_t hwy::HWY_NAMESPACE::v

Initial value:
{
return vfncvt_rtz_x_f_w_i32mf2(v, Lanes(d))
hwy::HWY_NAMESPACE::Lanes
HWY_API constexpr size_t Lanes(Simd< T, N, kPow2 >)
Definition arm_sve-inl.h:243

Referenced by Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), Abs(), hwy::HWY_NAMESPACE::detail::Abs(), Abs(), ApproximateReciprocal(), ApproximateReciprocal(), ApproximateReciprocal(), ApproximateReciprocal(), ApproximateReciprocal(), ApproximateReciprocal(), ApproximateReciprocalSqrt(), ApproximateReciprocalSqrt(), ApproximateReciprocalSqrt(), ApproximateReciprocalSqrt(), ApproximateReciprocalSqrt(), ApproximateReciprocalSqrt(), BitCast(), BitCast(), BitCast(), BitCast(), BitCast(), BitCast(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastFromByte(), hwy::HWY_NAMESPACE::detail::BitCastToByte(), hwy::HWY_NAMESPACE::detail::BitCastToByte(), hwy::HWY_NAMESPACE::detail::BitCastToByte(), hwy::HWY_NAMESPACE::detail::BitCastToByte(), hwy::HWY_NAMESPACE::detail::BitCastToByte(), hwy::HWY_NAMESPACE::detail::BitCastToByte(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToInteger(), hwy::HWY_NAMESPACE::detail::BitCastToUnsigned(), BlendedStore(), BlendedStore(), BlendedStore(), BlendedStore(), BlendedStore(), BlendedStore(), BlendedStore(), BlendedStore(), BlendedStore(), BlendedStore(), BlendedStore(), BlendedStore(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), Broadcast(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), BroadcastSignBit(), Ceil(), Ceil(), Ceil(), Ceil(), Ceil(), Ceil(), Ceil(), Ceil(), Ceil(), Ceil(), Ceiling(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), hwy::HWY_NAMESPACE::detail::ChangeLMUL(), Clamp(), hwy::HWY_NAMESPACE::detail::ClampF64ToI32Max(), Compress(), Compress(), Compress(), Compress(), Compress(), Compress(), Compress(), Compress(), hwy::HWY_NAMESPACE::detail::Compress(), Compress(), Compress(), Compress(), Compress(), CompressBits(), CompressBits(), CompressBits(), CompressBits(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBitsStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlendedStore(), CompressBlocksNot(), CompressBlocksNot(), CompressBlocksNot(), CompressBlocksNot(), CompressBlocksNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), hwy::HWY_NAMESPACE::detail::CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressNot(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), CompressStore(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), ConvertTo(), Copy(), CopyIf(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DemoteTo(), DupEven(), DupEven(), DupEven(), DupEven(), DupEven(), DupEven(), DupEven(), DupEven(), DupOdd(), DupOdd(), DupOdd(), DupOdd(), DupOdd(), DupOdd(), DupOdd(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompress(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::EmuCompressStore(), hwy::HWY_NAMESPACE::detail::ExtractLane(), hwy::HWY_NAMESPACE::detail::ExtractLane(), hwy::HWY_NAMESPACE::detail::ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), hwy::HWY_NAMESPACE::detail::ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), ExtractLane(), Fill(), Find(), FindIf(), Floor(), Floor(), Floor(), Floor(), Floor(), Floor(), Floor(), Floor(), Floor(), Floor(), GatherOffset(), GenerateInput(), GetLane(), GetLane(), GetLane(), GetLane(), GetLane(), GetLane(), GetLane(), GetLane(), GetLane(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), IfNegativeThenElse(), InsertLane(), hwy::HWY_NAMESPACE::detail::InsertLane(), hwy::HWY_NAMESPACE::detail::InsertLane(), hwy::HWY_NAMESPACE::detail::InsertLane(), hwy::HWY_NAMESPACE::detail::InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), hwy::HWY_NAMESPACE::detail::InsertLane(), InsertLane(), InsertLane(), InsertLane(), InsertLane(), Iota(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsFinite(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), IsInf(), IsNaN(), IsNaN(), IsNaN(), IsNaN(), IsNaN(), IsNaN(), IsNaN(), IsNaN(), IsNaN(), IsNaN(), Load(), Load(), Load(), Load(), Load(), hwy::HWY_NAMESPACE::detail::LookupAndConcatHalves(), hwy::HWY_NAMESPACE::detail::LookupAndConcatQuarters(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), LowerHalf(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), hwy::HWY_NAMESPACE::detail::MaskFromVec(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaxOfLanes(), MaxOfLanes(), MaxOfLanes(), hwy::HWY_NAMESPACE::detail::MaybePrintVector(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), hwy::HWY_NAMESPACE::detail::MinOfLanes(), MinOfLanes(), MinOfLanes(), hwy::HWY_NAMESPACE::detail::NativeCompress(), hwy::HWY_NAMESPACE::detail::NativeCompress(), hwy::HWY_NAMESPACE::detail::NativeCompress(), hwy::HWY_NAMESPACE::detail::NativeCompress(), hwy::HWY_NAMESPACE::detail::NativeCompress(), hwy::HWY_NAMESPACE::detail::NativeCompress(), hwy::HWY_NAMESPACE::detail::NativeCompress(), hwy::HWY_NAMESPACE::detail::NativeCompress(), hwy::HWY_NAMESPACE::detail::NativeCompress(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), hwy::HWY_NAMESPACE::detail::NativeCompressStore(), NearestInt(), NearestInt(), NearestInt(), NearestInt(), NearestInt(), Neg(), Neg(), Neg(), Neg(), Neg(), Neg(), Neg(), Neg(), Neg(), hwy::HWY_NAMESPACE::detail::Neg(), hwy::HWY_NAMESPACE::detail::Neg(), hwy::HWY_NAMESPACE::detail::Neg(), hwy::HWY_NAMESPACE::detail::Neg(), hwy::HWY_NAMESPACE::detail::Neg(), hwy::HWY_NAMESPACE::detail::Neg(), Neg(), Neg(), Not(), Not(), Not(), Not(), Not(), Not(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger128< T >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger128< float >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger128< double >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger256< T >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger256< float >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger256< double >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger512< T >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger512< float >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger512< double >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger128< T >::operator()(), hwy::HWY_NAMESPACE::detail::BitCastFromInteger128< float >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftLeftBytesT< kBytes >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftLeftBytesT< kBytes >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftLeftBytesT< 0 >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftRightBytesT< 0 >::operator()(), hwy::HWY_NAMESPACE::detail::RotateRight< kBits >::operator()(), hwy::HWY_NAMESPACE::detail::RotateRight< 0 >::operator()(), hwy::HWY_NAMESPACE::detail::RotateRight< kBits >::operator()(), hwy::HWY_NAMESPACE::detail::RotateRight< 0 >::operator()(), hwy::HWY_NAMESPACE::detail::ShiftRightBytesT< kBytes >::operator()(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator<<(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), operator>>(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), hwy::HWY_NAMESPACE::detail::PopulationCount(), PopulationCount(), PopulationCount(), PopulationCount(), PopulationCount(), PopulationCount(), Print(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), PromoteTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), hwy::HWY_NAMESPACE::detail::PromoteUpperTo(), Replace(), ReplaceIf(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse2(), Reverse4(), Reverse4(), Reverse4(), Reverse4(), Reverse4(), Reverse4(), Reverse4(), Reverse4(), Reverse8(), Reverse8(), Reverse8(), Reverse8(), Reverse8(), ReverseBlocks(), ReverseBlocks(), ReverseBlocks(), ReverseBlocks(), ReverseBlocks(), ReverseBlocks(), ReverseBlocks(), ReverseBlocks(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), RotateRight(), Round(), Round(), Round(), Round(), Round(), Round(), Round(), Round(), hwy::HWY_NAMESPACE::detail::SaturateI(), hwy::HWY_NAMESPACE::detail::SaturateU(), hwy::HWY_NAMESPACE::detail::ScalarMaskedStore(), hwy::HWY_NAMESPACE::detail::ScatterIndex(), hwy::HWY_NAMESPACE::detail::ScatterIndex(), hwy::HWY_NAMESPACE::detail::ScatterIndex(), hwy::HWY_NAMESPACE::detail::ScatterIndex(), hwy::HWY_NAMESPACE::detail::ScatterIndex(), hwy::HWY_NAMESPACE::detail::ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), ScatterIndex(), hwy::HWY_NAMESPACE::detail::ScatterOffset(), hwy::HWY_NAMESPACE::detail::ScatterOffset(), hwy::HWY_NAMESPACE::detail::ScatterOffset(), hwy::HWY_NAMESPACE::detail::ScatterOffset(), hwy::HWY_NAMESPACE::detail::ScatterOffset(), hwy::HWY_NAMESPACE::detail::ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), ScatterOffset(), Set(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeft(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftBytes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftLanes(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftLeftSame(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRight(), ShiftRightBytes(), ShiftRightBytes(), ShiftRightBytes(), ShiftRightBytes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightLanes(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), ShiftRightSame(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::Shl(), hwy::HWY_NAMESPACE::detail::ShrBytes(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle01(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0123(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle0321(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle1032(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2103(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Shuffle2301(), Sqrt(), Sqrt(), Sqrt(), Sqrt(), Sqrt(), Sqrt(), Sqrt(), Sqrt(), Sqrt(), Sqrt(), Sqrt(), Sqrt(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), Store(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), StoreU(), Stream(), Stream(), Stream(), Stream(), Stream(), Stream(), Stream(), Stream(), Stream(), Stream(), Stream(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), hwy::HWY_NAMESPACE::detail::SumOfLanes(), SumOfLanes(), SumOfLanes(), SumsOf8(), SumsOf8(), SumsOf8(), SumsOf8(), SumsOf8(), SumsOf8(), SumsOf8(), SumsOf8(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), SwapAdjacentBlocks(), TableLookupBytes(), TableLookupBytes(), TableLookupBytesOr0(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanes(), TableLookupLanesOr0(), TestBit(), TestBit(), TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), hwy::HWY_NAMESPACE::detail::TestBit(), TestBit(), TestBit(), TestBit(), Transform(), grk::HWY_NAMESPACE::DecompressRev::transform(), grk::HWY_NAMESPACE::CompressRev::transform(), grk::HWY_NAMESPACE::CompressIrrev::transform(), Transform1(), Transform2(), Trunc(), Trunc(), Trunc(), Trunc(), Trunc(), Trunc(), Trunc(), Trunc(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), TruncateTo(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), U8FromU32(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), UpperHalf(), hwy::HWY_NAMESPACE::detail::UseInt(), hwy::HWY_NAMESPACE::detail::UseInt(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), VecFromMask(), ZeroIfNegative(), ZeroIfNegative(), ZeroIfNegative(), ZeroIfNegative(), ZeroIfNegative(), and ZeroIfNegative().