Skip to content

Commit ec4e64f

Browse files
committed
[simd.syn] Compactify presentation of gather/scatter functions
1 parent e7e5b69 commit ec4e64f

File tree

1 file changed

+19
-34
lines changed

1 file changed

+19
-34
lines changed

source/numerics.tex

Lines changed: 19 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -16655,60 +16655,45 @@
1665516655
const typename M::value_type& fill_value);
1665616656

1665716657
template<@\exposconcept{simd-vec-type}@ V>
16658-
constexpr V expand(const V& v, const typename V::mask_type& selector,
16659-
const V& original = {});
16658+
constexpr V expand(const V& v, const typename V::mask_type& selector, const V& original = {});
1666016659
template<@\exposconcept{simd-mask-type}@ M>
1666116660
constexpr M expand(const M& v, const type_identity_t<M>& selector,
1666216661
const M& original = {});
1666316662

1666416663
// \ref{simd.permute.memory}, permute to and from memory
16665-
template<class V = @\seebelow@,
16666-
ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
16664+
template<class V = @\seebelow@, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1666716665
requires ranges::@\libconcept{sized_range}@<R>
16668-
constexpr V
16669-
unchecked_gather_from(R&& in,
16670-
const I& indices, flags<Flags...> f = {});
16671-
template<class V = @\seebelow@,
16672-
ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
16666+
constexpr V unchecked_gather_from(R&& in, const I& indices, flags<Flags...> f = {});
16667+
template<class V = @\seebelow@, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1667316668
requires ranges::@\libconcept{sized_range}@<R>
16674-
constexpr V
16675-
unchecked_gather_from(R&& in, const typename I::mask_type& mask,
16676-
const I& indices, flags<Flags...> f = {});
16669+
constexpr V unchecked_gather_from(R&& in, const typename I::mask_type& mask,
16670+
const I& indices, flags<Flags...> f = {});
1667716671

16678-
template<class V = @\seebelow@,
16679-
ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
16672+
template<class V = @\seebelow@, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1668016673
requires ranges::@\libconcept{sized_range}@<R>
16681-
constexpr V
16682-
partial_gather_from(R&& in,
16683-
const I& indices, flags<Flags...> f = {});
16684-
template<class V = @\seebelow@,
16685-
ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
16674+
constexpr V partial_gather_from(R&& in, const I& indices, flags<Flags...> f = {});
16675+
template<class V = @\seebelow@, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1668616676
requires ranges::@\libconcept{sized_range}@<R>
16687-
constexpr V
16688-
partial_gather_from(R&& in, const typename I::mask_type& mask,
16689-
const I& indices, flags<Flags...> f = {});
16677+
constexpr V partial_gather_from(R&& in, const typename I::mask_type& mask,
16678+
const I& indices, flags<Flags...> f = {});
1669016679

1669116680
template<@\exposconcept{simd-vec-type}@ V, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1669216681
requires ranges::@\libconcept{sized_range}@<R>
16693-
constexpr void
16694-
unchecked_scatter_to(const V& v, R&& out,
16695-
const I& indices, flags<Flags...> f = {});
16682+
constexpr void unchecked_scatter_to(const V& v, R&& out,
16683+
const I& indices, flags<Flags...> f = {});
1669616684
template<@\exposconcept{simd-vec-type}@ V, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1669716685
requires ranges::@\libconcept{sized_range}@<R>
16698-
constexpr void
16699-
unchecked_scatter_to(const V& v, R&& out, const typename I::mask_type& mask,
16700-
const I& indices, flags<Flags...> f = {});
16686+
constexpr void unchecked_scatter_to(const V& v, R&& out, const typename I::mask_type& mask,
16687+
const I& indices, flags<Flags...> f = {});
1670116688

1670216689
template<@\exposconcept{simd-vec-type}@ V, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1670316690
requires ranges::@\libconcept{sized_range}@<R>
16704-
constexpr void
16705-
partial_scatter_to(const V& v, R&& out,
16706-
const I& indices, flags<Flags...> f = {});
16691+
constexpr void partial_scatter_to(const V& v, R&& out,
16692+
const I& indices, flags<Flags...> f = {});
1670716693
template<@\exposconcept{simd-vec-type}@ V, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1670816694
requires ranges::@\libconcept{sized_range}@<R>
16709-
constexpr void
16710-
partial_scatter_to(const V& v, R&& out, const typename I::mask_type& mask,
16711-
const I& indices, flags<Flags...> f = {});
16695+
constexpr void partial_scatter_to(const V& v, R&& out, const typename I::mask_type& mask,
16696+
const I& indices, flags<Flags...> f = {});
1671216697

1671316698
// \ref{simd.creation}, \tcode{basic_vec} and \tcode{basic_mask} creation
1671416699
template<class T, class Abi>

0 commit comments

Comments
 (0)