1626716267template<class T> using @\exposidnc{native-abi} = \seebelownc@; // \expos
1626816268template<class T, @\exposidnc{simd-size-type}@ N> using @\exposidnc{deduce-abi-t} = \seebelownc@; // \expos
1626916269
16270- // \ref{simd.flags}, Load and store flags
16270+ // \ref{simd.flags}, load and store flags
1627116271struct @\exposidnc{convert-flag}@; // \expos
1627216272struct @\exposidnc{aligned-flag}@; // \expos
1627316273template<size_t N> struct @\exposidnc{overaligned-flag}@; // \expos
1652316523 template<class T, @\exposid{simd-size-type}@ N = @\exposid{simd-size-v}@<T, @\exposid{native-abi}@<T>>>
1652416524 using @\libmember{vec}{simd}@ = basic_vec<T, @\exposid{deduce-abi-t}@<T, N>>;
1652516525
16526- // \ref{simd.reductions}, \tcode{basic_vec} reductions
16526+ // \ref{simd.reductions}, reductions
1652716527 template<class T, class Abi, class BinaryOperation = plus<>>
1652816528 constexpr T reduce(const basic_vec<T, Abi>&, BinaryOperation = {});
1652916529 template<class T, class Abi, class BinaryOperation = plus<>>
1654216542 constexpr T reduce_max(const basic_vec<T, Abi>&,
1654316543 const typename basic_vec<T, Abi>::mask_type&) noexcept;
1654416544
16545- // \ref{simd.loadstore}, \tcode{basic_vec} load and store functions
16545+ // \ref{simd.loadstore}, load and store functions
1654616546 template<class V = @\seebelow@, ranges::@\libconcept{contiguous_range}@ R, class... Flags>
1654716547 requires ranges::@\libconcept{sized_range}@<R>
1654816548 constexpr V unchecked_load(R&& r, flags<Flags...> f = {});
1663216632 constexpr void partial_store(const basic_vec<T, Abi>& v, I first, S last,
1663316633 const typename basic_vec<T, Abi>::mask_type& mask, flags<Flags...> f = {});
1663416634
16635- // \ref{simd.permute.static}, permute by static index generator
16635+ // \ref{simd.permute.static}, static permute
1663616636 static constexpr @\exposid{simd-size-type}@ @\libmember{zero_element}{simd}@ = @\impdefx{value of \tcode{simd::zero_element}}@;
1663716637 static constexpr @\exposid{simd-size-type}@ @\libmember{uninit_element}{simd}@ = @\impdefx{value of \tcode{simd::uninit_element}}@;
1663816638
@@ -16641,13 +16641,13 @@
1664116641 template<@\exposid{simd-size-type}@ N = @\seebelow@, @\exposconcept{simd-mask-type}@ M, class IdxMap>
1664216642 constexpr resize_t<N, M> permute(const M& v, IdxMap&& idxmap);
1664316643
16644- // \ref{simd.permute.dynamic}, permute by dynamic index
16644+ // \ref{simd.permute.dynamic}, dynamic permute
1664516645 template<@\exposconcept{simd-vec-type}@ V, @\exposconcept{simd-integral}@ I>
1664616646 constexpr resize_t<I::size(), V> permute(const V& v, const I& indices);
1664716647 template<@\exposconcept{simd-mask-type}@ M, @\exposconcept{simd-integral}@ I>
1664816648 constexpr resize_t<I::size(), M> permute(const M& v, const I& indices);
1664916649
16650- // \ref{simd.permute.mask}, permute by active mask bits
16650+ // \ref{simd.permute.mask}, mask permute
1665116651 template<@\exposconcept{simd-vec-type}@ V>
1665216652 constexpr V compress(const V& v, const typename V::mask_type& selector);
1665316653 template<@\exposconcept{simd-mask-type}@ M>
1666616666 constexpr M expand(const M& v, const type_identity_t<M>& selector,
1666716667 const M& original = {});
1666816668
16669- // \ref{simd.permute.memory}, permute to and from memory
16669+ // \ref{simd.permute.memory}, memory permute
1667016670 template<class V = @\seebelow@, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1667116671 requires ranges::@\libconcept{sized_range}@<R>
1667216672 constexpr V unchecked_gather_from(R&& in, const I& indices, flags<Flags...> f = {});
1670116701 constexpr void partial_scatter_to(const V& v, R&& out, const typename I::mask_type& mask,
1670216702 const I& indices, flags<Flags...> f = {});
1670316703
16704- // \ref{simd.creation}, \tcode{basic_vec} and \tcode{basic_mask} creation
16704+ // \ref{simd.creation}, creation
1670516705 template<class T, class Abi>
1670616706 constexpr auto chunk(const basic_vec<typename T::value_type, Abi>& x) noexcept;
1670716707 template<class T, class Abi>
1694616946 constexpr rebind_t<make_signed_t<typename V::value_type>, V>
1694716947 popcount(const V& v) noexcept;
1694816948
16949- // \ref{simd.complex.math}, \tcode{vec} complex math
16949+ // \ref{simd.complex.math}, complex math
1695016950 template<@\exposconcept{simd-complex}@ V>
1695116951 constexpr rebind_t<@\exposid{simd-complex-value-type<V>}@, V> real(const V&) noexcept;
1695216952
1699216992 template<class T, @\exposid{simd-size-type}@ N = @\exposid{simd-size-v}@<T, @\exposid{native-abi}@<T>>>
1699316993 using @\libmember{mask}{simd}@ = basic_mask<sizeof(T), @\exposid{deduce-abi-t}@<T, N>>;
1699416994
16995- // \ref{simd.mask.reductions}, \tcode{basic_mask} reductions
16995+ // \ref{simd.mask.reductions}, reductions
1699616996 template<size_t Bytes, class Abi>
1699716997 constexpr bool all_of(const basic_mask<Bytes, Abi>&) noexcept;
1699816998 template<size_t Bytes, class Abi>
0 commit comments