Lines Matching defs:skvx
11 // skvx::Vec<N,T> are SIMD vectors of N T's, a v1.5 successor to SkNx<N,T>.
18 // with across translation units. skvx::Vec<N,T> always has N*sizeof(T) size
54 namespace skvx {
550 // skvx::Vec<4,float> rgba = {R,G,B,A};
571 Fn&& fn, const Args&... args) -> skvx::Vec<sizeof...(I), decltype(fn(args[0]...))> {
817 skvx::Vec<1,T>& a,
818 skvx::Vec<1,T>& b,
819 skvx::Vec<1,T>& c,
820 skvx::Vec<1,T>& d) {
827 skvx::Vec<N,T>& a,
828 skvx::Vec<N,T>& b,
829 skvx::Vec<N,T>& c,
830 skvx::Vec<N,T>& d) {
838 skvx::Vec<N,T>& a, \
839 skvx::Vec<N,T>& b, \
840 skvx::Vec<N,T>& c, \
841 skvx::Vec<N,T>& d) { \
843 a = skvx::bit_pun<skvx::Vec<N,T>>(mat.val[0]); \
844 b = skvx::bit_pun<skvx::Vec<N,T>>(mat.val[1]); \
845 c = skvx::bit_pun<skvx::Vec<N,T>>(mat.val[2]); \
846 d = skvx::bit_pun<skvx::Vec<N,T>>(mat.val[3]); \
869 using skvx::bit_pun;
887 SIT void strided_load2(const T* v, skvx::Vec<1,T>& a, skvx::Vec<1,T>& b) {
891 SINT void strided_load2(const T* v, skvx::Vec<N,T>& a, skvx::Vec<N,T>& b) {
898 SI void strided_load2(const T* v, skvx::Vec<N,T>& a, skvx::Vec<N,T>& b) { \
900 a = skvx::bit_pun<skvx::Vec<N,T>>(mat.val[0]); \
901 b = skvx::bit_pun<skvx::Vec<N,T>>(mat.val[1]); \
921 } // namespace skvx