19 #ifndef HIGHWAY_HWY_CONTRIB_SORT_SHARED_INL_H_
20 #define HIGHWAY_HWY_CONTRIB_SORT_SHARED_INL_H_
32 static constexpr
size_t kMaxCols = 8;
86 return sizeof(T) * BufNum<T>(vector_size /
sizeof(T));
95 #if defined(HIGHWAY_HWY_CONTRIB_SORT_SHARED_TOGGLE) == \
96 defined(HWY_TARGET_TOGGLE)
97 #ifdef HIGHWAY_HWY_CONTRIB_SORT_SHARED_TOGGLE
98 #undef HIGHWAY_HWY_CONTRIB_SORT_SHARED_TOGGLE
100 #define HIGHWAY_HWY_CONTRIB_SORT_SHARED_TOGGLE
109 #if HWY_TARGET == HWY_RVV
111 template <
typename T>
114 template <
typename T>
#define HWY_MAX(a, b)
Definition: base.h:128
#define HWY_MIN(a, b)
Definition: base.h:127
#define HWY_INLINE
Definition: base.h:64
typename detail::ScalableTagChecker< T, kPow2 >::type ScalableTag
Definition: ops/shared-inl.h:162
N
Definition: rvv-inl.h:1656
ScalableTag< T, -1 > SortTag
Definition: contrib/sort/shared-inl.h:112
Definition: aligned_allocator.h:27
#define HWY_NAMESPACE
Definition: set_macros-inl.h:80
Definition: contrib/sort/shared-inl.h:28
static constexpr HWY_INLINE size_t BufBytes(size_t vector_size)
Definition: contrib/sort/shared-inl.h:85
static constexpr size_t kMaxCols
Definition: contrib/sort/shared-inl.h:34
static constexpr HWY_INLINE size_t PartitionBufNum(size_t N)
Definition: contrib/sort/shared-inl.h:56
static constexpr HWY_INLINE size_t BufNum(size_t N)
Definition: contrib/sort/shared-inl.h:78
static constexpr HWY_INLINE size_t PivotBufNum(size_t sizeof_t, size_t N)
Definition: contrib/sort/shared-inl.h:72
static constexpr size_t kMaxRows
Definition: contrib/sort/shared-inl.h:43
static constexpr HWY_INLINE size_t BaseCaseNum(size_t N)
Definition: contrib/sort/shared-inl.h:45
static constexpr size_t kMaxRowsLog2
Definition: contrib/sort/shared-inl.h:42
static constexpr size_t kPartitionUnroll
Definition: contrib/sort/shared-inl.h:54
static constexpr HWY_INLINE size_t LanesPerChunk(size_t sizeof_t, size_t N)
Definition: contrib/sort/shared-inl.h:68