Lines Matching refs:Factor

152 static bool isDeInterleaveMaskOfFactor(ArrayRef<int> Mask, unsigned Factor,  in isDeInterleaveMaskOfFactor()  argument
155 for (Index = 0; Index < Factor; Index++) { in isDeInterleaveMaskOfFactor()
161 if (Mask[i] >= 0 && static_cast<unsigned>(Mask[i]) != Index + i * Factor) in isDeInterleaveMaskOfFactor()
176 static bool isDeInterleaveMask(ArrayRef<int> Mask, unsigned &Factor, in isDeInterleaveMask() argument
183 for (Factor = 2; Factor <= MaxFactor; Factor++) { in isDeInterleaveMask()
185 if (Mask.size() * Factor > NumLoadElements) in isDeInterleaveMask()
187 if (isDeInterleaveMaskOfFactor(Mask, Factor, Index)) in isDeInterleaveMask()
205 static bool isReInterleaveMask(ArrayRef<int> Mask, unsigned &Factor, in isReInterleaveMask() argument
212 for (Factor = 2; Factor <= MaxFactor; Factor++) { in isReInterleaveMask()
213 if (NumElts % Factor) in isReInterleaveMask()
216 unsigned LaneLen = NumElts / Factor; in isReInterleaveMask()
224 for (; I < Factor; I++) { in isReInterleaveMask()
231 unsigned Lane = J * Factor + I; in isReInterleaveMask()
232 unsigned NextLane = Lane + Factor; in isReInterleaveMask()
267 } else if (Mask[(LaneLen - 1) * Factor + I] >= 0) { in isReInterleaveMask()
269 StartMask = Mask[(LaneLen - 1) * Factor + I] - J; in isReInterleaveMask()
284 if (I == Factor) in isReInterleaveMask()
331 unsigned Factor, Index; in lowerInterleavedLoad() local
337 if (!isDeInterleaveMask(FirstSVI->getShuffleMask(), Factor, Index, MaxFactor, in lowerInterleavedLoad()
351 if (!isDeInterleaveMaskOfFactor(Shuffle->getShuffleMask(), Factor, in lowerInterleavedLoad()
361 if (!isDeInterleaveMaskOfFactor(Shuffle->getShuffleMask(), Factor, in lowerInterleavedLoad()
384 if (!TLI->lowerInterleavedLoad(LI, Shuffles, Indices, Factor)) { in lowerInterleavedLoad()
502 unsigned Factor; in lowerInterleavedStore() local
505 if (!isReInterleaveMask(SVI->getShuffleMask(), Factor, MaxFactor, OpNumElts)) in lowerInterleavedStore()
511 if (!TLI->lowerInterleavedStore(SI, SVI, Factor)) in lowerInterleavedStore()