@@ -16652,33 +16652,33 @@
1665216652
1665316653 template<@\exposid{simd-size-type}@ N = @\seebelow@, @\exposconcept{simd-vec-type}@ V, class IdxMap>
1665416654 constexpr resize_t<N, V> permute(const V& v, IdxMap&& idxmap);
16655- template<@\exposid{simd-size-type}@ N = @\seebelow@, @\exposconcept{simd-mask-type}@ M , class IdxMap>
16656- constexpr resize_t<N, M > permute(const M & v, IdxMap&& idxmap);
16655+ template<@\exposid{simd-size-type}@ N = @\seebelow@, @\exposconcept{simd-mask-type}@ V , class IdxMap>
16656+ constexpr resize_t<N, V > permute(const V & v, IdxMap&& idxmap);
1665716657
1665816658 // \ref{simd.permute.dynamic}, permute by dynamic index
1665916659 template<@\exposconcept{simd-vec-type}@ V, @\exposconcept{simd-integral}@ I>
1666016660 constexpr resize_t<I::size(), V> permute(const V& v, const I& indices);
16661- template<@\exposconcept{simd-mask-type}@ M , @\exposconcept{simd-integral}@ I>
16662- constexpr resize_t<I::size(), M > permute(const M & v, const I& indices);
16661+ template<@\exposconcept{simd-mask-type}@ V , @\exposconcept{simd-integral}@ I>
16662+ constexpr resize_t<I::size(), V > permute(const V & v, const I& indices);
1666316663
1666416664 // \ref{simd.permute.mask}, permute by active mask bits
1666516665 template<@\exposconcept{simd-vec-type}@ V>
1666616666 constexpr V compress(const V& v, const typename V::mask_type& selector);
16667- template<@\exposconcept{simd-mask-type}@ M >
16668- constexpr M compress(const M & v, const type_identity_t<M >& selector);
16667+ template<@\exposconcept{simd-mask-type}@ V >
16668+ constexpr V compress(const V & v, const type_identity_t<V >& selector);
1666916669 template<@\exposconcept{simd-vec-type}@ V>
1667016670 constexpr V compress(const V& v, const typename V::mask_type& selector,
1667116671 const typename V::value_type& fill_value);
16672- template<@\exposconcept{simd-mask-type}@ M >
16673- constexpr M compress(const M & v, const type_identity_t<M >& selector,
16672+ template<@\exposconcept{simd-mask-type}@ V >
16673+ constexpr V compress(const V & v, const type_identity_t<V >& selector,
1667416674 const typename M::value_type& fill_value);
1667516675
1667616676 template<@\exposconcept{simd-vec-type}@ V>
1667716677 constexpr V expand(const V& v, const typename V::mask_type& selector,
1667816678 const V& original = {});
16679- template<@\exposconcept{simd-mask-type}@ M >
16680- constexpr M expand(const M & v, const type_identity_t<M >& selector,
16681- const M & original = {});
16679+ template<@\exposconcept{simd-mask-type}@ V >
16680+ constexpr V expand(const V & v, const type_identity_t<V >& selector,
16681+ const V & original = {});
1668216682
1668316683 // \ref{simd.permute.memory}, permute to and from memory
1668416684 template<class V = @\seebelow@, ranges::@\libconcept{contiguous_range}@ R, @\exposconcept{simd-integral}@ I, class... Flags>
1877718777\begin{itemdecl}
1877818778template<@\exposid{simd-size-type}@ N = @\seebelow@, @\exposconcept{simd-vec-type}@ V, class IdxMap>
1877918779 constexpr resize_t<N, V> permute(const V& v, IdxMap&& idxmap);
18780- template<@\exposid{simd-size-type}@ N = @\seebelow@, @\exposconcept{simd-mask-type}@ M , class IdxMap>
18781- constexpr resize_t<N, M > permute(const M & v, IdxMap&& idxmap);
18780+ template<@\exposid{simd-size-type}@ N = @\seebelow@, @\exposconcept{simd-mask-type}@ V , class IdxMap>
18781+ constexpr resize_t<N, V > permute(const V & v, IdxMap&& idxmap);
1878218782\end{itemdecl}
1878318783
1878418784\begin{itemdescr}
1883618836\begin{itemdecl}
1883718837template<@\exposconcept{simd-vec-type}@ V, @\exposconcept{simd-integral}@ I>
1883818838 constexpr resize_t<I::size(), V> permute(const V& v, const I& indices);
18839- template<@\exposconcept{simd-mask-type}@ M , @\exposconcept{simd-integral}@ I>
18840- constexpr resize_t<I::size(), M > permute(const M & v, const I& indices);
18839+ template<@\exposconcept{simd-mask-type}@ V , @\exposconcept{simd-integral}@ I>
18840+ constexpr resize_t<I::size(), V > permute(const V & v, const I& indices);
1884118841\end{itemdecl}
1884218842
1884318843\begin{itemdescr}
1885818858\begin{itemdecl}
1885918859template<@\exposconcept{simd-vec-type}@ V>
1886018860 constexpr V compress(const V& v, const typename V::mask_type& selector);
18861- template<@\exposconcept{simd-mask-type}@ M >
18862- constexpr M compress(const M & v, const type_identity_t<M >& selector);
18861+ template<@\exposconcept{simd-mask-type}@ V >
18862+ constexpr V compress(const V & v, const type_identity_t<V >& selector);
1886318863\end{itemdecl}
1886418864
1886518865\begin{itemdescr}
1889118891template<@\exposconcept{simd-vec-type}@ V>
1889218892 constexpr V compress(const V& v, const typename V::mask_type& selector,
1889318893 const typename V::value_type& fill_value);
18894- template<@\exposconcept{simd-mask-type}@ M >
18895- constexpr M compress(const M & v, const type_identity_t<M >& selector,
18894+ template<@\exposconcept{simd-mask-type}@ V >
18895+ constexpr V compress(const V & v, const type_identity_t<V >& selector,
1889618896 const typename M::value_type& fill_value);
1889718897\end{itemdecl}
1889818898
1892018920\begin{itemdecl}
1892118921template<@\exposconcept{simd-vec-type}@ V>
1892218922 constexpr V expand(const V& v, const typename V::mask_type& selector, const V& original = {});
18923- template<@\exposconcept{simd-mask-type}@ M >
18924- constexpr M expand(const M & v, const type_identity_t<M >& selector, const M & original = {});
18923+ template<@\exposconcept{simd-mask-type}@ V >
18924+ constexpr V expand(const V & v, const type_identity_t<V >& selector, const V & original = {});
1892518925\end{itemdecl}
1892618926
1892718927\begin{itemdescr}
0 commit comments