reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
763 for (unsigned I = 0, E = Mask.size(); I != E; ++I) { 764 int M = Mask[I]; 776 size_t H = Mask.size()/2; 777 return ShuffleMask(Mask.take_front(H)); 780 size_t H = Mask.size()/2; 781 return ShuffleMask(Mask.take_back(H)); 786 for (int M : Mask) 1058 int VecLen = SM.Mask.size(); 1063 for (int I = 0, E = M.Mask.size(); I != E; ++I) { 1064 if (M.Mask[I] >= 0 && M.Mask[I]-I != M.MinSrc) 1064 if (M.Mask[I] >= 0 && M.Mask[I]-I != M.MinSrc) 1078 memcpy(NewMask.data(), SM.Mask.data(), sizeof(int)*VecLen); 1083 int M = SM.Mask[I]; 1113 int M = SM.Mask[I]; 1128 int M = SM.Mask[I]; 1153 for (int M : SM.Mask) { 1183 int VecLen = SM.Mask.size(); 1185 int M = SM.Mask[I]; 1221 unsigned VecLen = SM.Mask.size(); 1224 assert(all_of(SM.Mask, [this](int M) { return M == -1 || M < int(HwLen); })); 1226 if (isIdentity(SM.Mask)) 1228 if (isUndef(SM.Mask)) 1240 if (isUndef(SM.Mask)) 1247 int VecLen = SM.Mask.size(); 1254 splitMask(SM.Mask, MaskL, MaskR); 1271 int VecLen = SM.Mask.size(); 1273 if (isIdentity(SM.Mask)) 1275 if (isUndef(SM.Mask)) 1308 if (isUndef(SM.Mask)) 1311 int VecLen = SM.Mask.size(); 1318 splitMask(SM.Mask, MaskL, MaskR); 1504 int VecLen = SM.Mask.size(); 1505 std::pair<int,unsigned> Strip = findStrip(SM.Mask, 1, VecLen); 1526 int NextInMask = SM.Mask[Strip.second]; 1537 if (SM.Mask[I] != 4*I) 1540 if (SM.Mask[I+N/4] != 2 + 4*I) 1543 if (SM.Mask[I+N/2] != N + 4*I) 1546 if (SM.Mask[I+3*N/4] != N+2 + 4*I) 1561 auto S = findStrip(SM.Mask.drop_front(I), 1, N-I); 1591 auto S = findStrip(SM.Mask.drop_front(I), 1, N-I); 1628 int VecLen = SM.Mask.size(); 1631 std::pair<int,unsigned> Strip = findStrip(SM.Mask, 1, VecLen); 1650 auto S = findStrip(SM.Mask.drop_front(I), 1, N-I); 1658 auto S = findStrip(SM.Mask.drop_front(I), 0, N-I); 1678 int VecLen = SM.Mask.size(); 1687 if (!isPermutation(SM.Mask)) 1788 unsigned X = XorPow2(SM.Mask, I); 1793 if (XorPow2(SM.Mask.slice(J, I), I) != X) 1952 int VecLen = SM.Mask.size(); 1954 for (int M : SM.Mask) { 1960 ForwardDeltaNetwork FN(SM.Mask); 1968 ReverseDeltaNetwork RN(SM.Mask); 1976 BenesNetwork BN(SM.Mask);