reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
33029 assert(RootMask.size() > 0 && (RootMask.size() > 1 || RootMask[0] == 0) && 33029 assert(RootMask.size() > 0 && (RootMask.size() > 1 || RootMask[0] == 0) && 33029 assert(RootMask.size() > 0 && (RootMask.size() > 1 || RootMask[0] == 0) && 33087 assert(((RootMask.size() > OpMask.size() && 33088 RootMask.size() % OpMask.size() == 0) || 33089 (OpMask.size() > RootMask.size() && 33090 OpMask.size() % RootMask.size() == 0) || 33091 OpMask.size() == RootMask.size()) && 33097 assert(isPowerOf2_32(RootMask.size()) && "Non-power-of-2 shuffle mask sizes"); 33099 unsigned RootMaskSizeLog2 = countTrailingZeros(RootMask.size()); 33102 unsigned MaskWidth = std::max<unsigned>(OpMask.size(), RootMask.size()); 33104 unsigned OpRatio = std::max<unsigned>(1, RootMask.size() >> OpMaskSizeLog2); 33122 if (RootMask[RootIdx] < 0) { 33124 Mask[i] = RootMask[RootIdx]; 33130 ? RootMask[RootIdx] 33131 : (RootMask[RootIdx] << RootRatioLog2) + (i & (RootRatio - 1));